index_zkyy.html 40 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851
  1. <!DOCTYPE html>
  2. <html>
  3. <head>
  4. <meta charset="utf-8"/>
  5. <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
  6. <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1">
  7. <title>关键点位检查任务配置</title>
  8. <link rel="stylesheet" href="../../../assets/libs/layui/css/layui.css"/>
  9. <link rel="stylesheet" href="../../../assets/module/admin.css?v=312"/>
  10. <link rel="stylesheet" href="../../../assets/module/formSelects/formSelects-v4.css"/>
  11. <style>
  12. .layui-table-cell {
  13. height: auto;
  14. }
  15. </style>
  16. </head>
  17. <body>
  18. <!-- 页面加载loading -->
  19. <div class="page-loading">
  20. <div class="ball-loader">
  21. <span></span><span></span><span></span><span></span>
  22. </div>
  23. </div>
  24. <!-- 正文开始 -->
  25. <div class="layui-fluid">
  26. <div class="layui-card-header" style="background-color: #fff;padding-top: 10px;padding-bottom: 10px;">
  27. <div class="layui-inline pull-left">
  28. <h3 id="htmlHeader">关键点位检查任务配置</h3>
  29. </div>
  30. <div class="layui-inline pull-right">
  31. <button id="btnAdd" class="layui-btn icon-btn"><i class="layui-icon">&#xe654;</i>添加</button>
  32. </div>
  33. </div>
  34. <div class="layui-card">
  35. <div class="layui-card-body">
  36. <!--<form class="layui-form m-top10px m-bottom10px" lay-filter="filterForm" id="filterForm">-->
  37. <div class="layui-form toolbar" lay-filter="filterForm">
  38. <div class="layui-form-item">
  39. <div class="layui-inline layui-col-md3 text-left" style="margin-left: -40px;">
  40. <label class="layui-form-label">部门</label>
  41. <div class="layui-input-inline mr0">
  42. <input type="text" id="groupName" name="groupName" value=""
  43. placeholder="点击选择"
  44. class="layui-input" readonly>
  45. <input type="hidden" id="groupId" name="groupId">
  46. <div id="menuContent" class="menuContent">
  47. <ul id="groupTree" class="ztree" style="margin-top:0;"></ul>
  48. </div>
  49. </div>
  50. </div>
  51. <div class="layui-inline layui-col-md2 text-left m-left-20px">
  52. <label class="layui-form-label">状态</label>
  53. <div class="layui-input-block">
  54. <select name="isOpen" lay-verType="isOpen">
  55. <option value="">全部</option>
  56. <option value="0">未执行</option>
  57. <option value="1">执行中</option>
  58. </select>
  59. </div>
  60. </div>
  61. <div class="layui-inline layui-col-md2 m-left-20px">
  62. <label class="layui-form-label">岗位</label>
  63. <div class="layui-input-block">
  64. <select name="positionId" id="positionId" lay-filter="positionId" lay-search=""
  65. required></select>
  66. </div>
  67. </div>
  68. <div class="text-right">
  69. <div class="layui-inline">
  70. <label class="layui-form-label w-auto">搜索:</label>
  71. <div class="layui-input-inline mr0">
  72. <input name="keyword" id="keyword" class="layui-input" type="text" placeholder="输入关键字"/>
  73. </div>
  74. </div>
  75. <div class="layui-inline">
  76. <button class="layui-btn icon-btn" lay-filter="formSubSearch" lay-submit
  77. style="background-color: #007DDB;">
  78. <i class="layui-icon">&#xe615;</i>搜索
  79. </button>
  80. </div>
  81. </div>
  82. </div>
  83. </div>
  84. <!--</form>-->
  85. <table class="layui-table" id="datatable" lay-filter="datatable"></table>
  86. </div>
  87. </div>
  88. </div>
  89. <!--数据TPL-->
  90. <script type="text/html" id="checkModeTpl">
  91. {{# if(d.checkMode != null && d.checkMode == '1'){ }}
  92. 现场检查
  93. {{# } else { }}
  94. 基础检查
  95. {{# } }}
  96. </script>
  97. <!--状态TPL-->
  98. <script type="text/html" id="statusTpl">
  99. {{# if(d.isOpen != null && d.isOpen == '1'){ }}
  100. <span class="layui-bg-orange" style="padding: 4px 4px; font-size: 13px;">执行中</span>
  101. {{# } else { }}
  102. <span class="layui-bg-blue" style="padding: 4px 4px; font-size: 13px;">未执行</span>
  103. {{# } }}
  104. </script>
  105. <!-- 表单弹窗 -->
  106. <script type="text/html" id="modelTpl">
  107. <form id="modelForm" lay-filter="modelForm" class="layui-form model-form">
  108. <input type="hidden" id="riskCheckDefId" name="riskCheckDefId"/>
  109. <input type="hidden" name="checkType" id="checkType"/>
  110. <input type="hidden" name="checkMode" id="checkMode"/>
  111. <input type="hidden" name="filterWeek" id="filterWeek"/>
  112. <div class="layui-form-item">
  113. <label class="layui-form-label"><span class="layui-badge-dot"></span>任务名称</label>
  114. <div class="layui-input-block">
  115. <input type="text" class="layui-input" id="riskCheckDefTitle" name="riskCheckDefTitle"
  116. placeholder="请输入任务名称" maxlength="128"
  117. lay-verType="tips" lay-verify="required" required/>
  118. </div>
  119. </div>
  120. <div class="layui-form-item">
  121. <label class="layui-form-label"><span class="layui-badge-dot"></span>检查类型</label>
  122. <div class="layui-input-block">
  123. <select name="riskCheckType" id="riskCheckType" lay-verType="tips" lay-verify="required"
  124. class="layui-input-block ">
  125. </select>
  126. </div>
  127. </div>
  128. <div class="layui-form-item" id="bizCheckDefIdDiv" style="display: none">
  129. <label class="layui-form-label"><span class="layui-badge-dot"></span>检查表</label>
  130. <div class="layui-input-block">
  131. <select name="bizCheckDefId" id="bizCheckDefId" lay-verType="tips" lay-verify="required"
  132. class="layui-input-block ">
  133. </select>
  134. </div>
  135. </div>
  136. <div class="layui-form-item">
  137. <label class="layui-form-label"><span class="layui-badge-dot"></span>关键点位</label>
  138. <div class="layui-input-block">
  139. <select name="riskCheckPoint" id="riskCheckPoint" lay-verType="tips" class="layui-input-block"
  140. lay-verify="required">
  141. </select>
  142. </div>
  143. </div>
  144. <div class="layui-form-item" id="riskCheckGroupDiv" style="display: none">
  145. <label class="layui-form-label"><span class="layui-badge-dot"></span>检查部门</label>
  146. <div class="layui-input-block">
  147. <input type="text" id="riskCheckGroupName" class="layui-input" name="riskCheckGroupName" value=""
  148. placeholder="点击选择" class="form-control" readonly lay-verify="group">
  149. <input type="hidden" id="riskCheckGroup" name="riskCheckGroup" readonly>
  150. <div id="menuContent2" class="menuContent">
  151. <ul id="groupTree2" class="ztree" style="margin-top:0;"></ul>
  152. </div>
  153. </div>
  154. </div>
  155. <div class="layui-form-item">
  156. <label class="layui-form-label"><span class="layui-badge-dot"></span>检查岗位</label>
  157. <div class="layui-input-block">
  158. <select name="riskCheckPosition" id="riskCheckPosition" lay-verType="tips"
  159. lay-verify="required|Position"
  160. class="layui-input-block " lay-filter="riskCheckPosition">
  161. </select>
  162. </div>
  163. </div>
  164. <div class="layui-form-item" id="executorDiv" style="display: none">
  165. <label class="layui-form-label">检查人</label>
  166. <div class="layui-input-block">
  167. <select name="executor" id="executor" lay-verType="tips" class="layui-input-block" xm-select="executor"
  168. xm-select-search>
  169. </select>
  170. </div>
  171. </div>
  172. <div class="layui-form-item">
  173. <label class="layui-form-label"><span class="layui-badge-dot"></span>检查频率</label>
  174. <div class="layui-input-block">
  175. <div style="display: inline-block;">
  176. <input class="layui-input" id="scheduleCount" name="scheduleCount"
  177. style="width:100px;" type="number" min="1" lay-verify="required" required/>
  178. </div>
  179. <div style="display: inline-block;">&nbsp;次数/每&nbsp;</div>
  180. <div style="display: inline-block;">
  181. <select name="scheduleFrequency" id="scheduleFrequency" lay-filter="scheduleFrequency"
  182. lay-verify="required">
  183. <option value="year">年</option>
  184. <option value="half_year">半年</option>
  185. <option value="quarter">三个月</option>
  186. <option value="month">月</option>
  187. <option value="week">星期</option>
  188. <option value="day">天</option>
  189. </select>
  190. </div>
  191. </div>
  192. </div>
  193. <div class="layui-form-item">
  194. <label class="layui-form-label"><span class="layui-badge-dot"></span>开始时间</label>
  195. <div class="layui-input-block">
  196. <input type="text" name="startDate" id="startDate" autocomplete="off" lay-verify="required" required
  197. placeholder="请选择时间" class="layui-input">
  198. </div>
  199. </div>
  200. <!-- <div class="layui-form-item">-->
  201. <!-- <label class="layui-form-label">参与人员</label>-->
  202. <!-- <div class="layui-input-block">-->
  203. <!-- <select name="riskCheckParticipant" id="riskCheckParticipant" xm-select="riskCheckParticipant"-->
  204. <!-- lay-verType="tips" class="layui-input-block" xm-select-search>-->
  205. <!-- </select>-->
  206. <!-- </div>-->
  207. <!-- </div>-->
  208. <div class="layui-form-item">
  209. <label class="layui-form-label">排除任务</label>
  210. <div class="layui-input-block">
  211. <input type="checkbox" name="week[2]" value="2" lay-filter="week" title="星期一">
  212. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期一</span><i
  213. class="layui-icon layui-icon-ok"></i></div>
  214. <input type="checkbox" name="week[3]" value="3" lay-filter="week" title="星期二">
  215. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期二</span><i
  216. class="layui-icon layui-icon-ok"></i></div>
  217. <input type="checkbox" name="week[4]" value="4" lay-filter="week" title="星期三">
  218. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期三</span><i
  219. class="layui-icon layui-icon-ok"></i></div>
  220. <input type="checkbox" name="week[5]" value="5" lay-filter="week" title="星期四">
  221. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期四</span><i
  222. class="layui-icon layui-icon-ok"></i></div>
  223. <input type="checkbox" name="week[6]" value="6" lay-filter="week" title="星期五">
  224. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期五</span><i
  225. class="layui-icon layui-icon-ok"></i></div>
  226. <input type="checkbox" name="week[7]" value="7" lay-filter="week" title="星期六">
  227. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期六</span><i
  228. class="layui-icon layui-icon-ok"></i></div>
  229. <input type="checkbox" name="week[1]" value="1" lay-filter="week" title="星期日">
  230. <div class="layui-unselect layui-form-checkbox layui-form-checked"><span>星期日</span><i
  231. class="layui-icon layui-icon-ok"></i></div>
  232. <p style="margin: 5px 0 5px 0; color: red">说明:选中即表示跳过检查任务!</p>
  233. </div>
  234. </div>
  235. <div class="layui-form-item">
  236. <label class="layui-form-label">任务描述</label>
  237. <div class="layui-input-block">
  238. <textarea id="riskCheckDefDesc" name="riskCheckDefDesc"
  239. placeholder="最多输入1024个汉字"
  240. class="layui-textarea" maxlength="1000"></textarea>
  241. </div>
  242. </div>
  243. <div class="layui-form-item text-right">
  244. <button type="button" class="layui-btn" lay-filter="modelSubmit" lay-submit>保存</button>
  245. <button type="button" class="layui-btn layui-btn-primary" ew-event="closePageDialog">取消</button>
  246. </div>
  247. </form>
  248. </script>
  249. <!-- 详情弹窗 -->
  250. <script type="text/html" id="viewTpl">
  251. <div class="layui-fluid">
  252. <div class="layui-card">
  253. <div class="layui-card-body">
  254. <div class="layui-tab-item layui-show">
  255. <div class="layui-row">
  256. <table class="layui-table">
  257. <colgroup>
  258. <col width="150">
  259. <col>
  260. <thead>
  261. </thead>
  262. <tbody>
  263. <tr>
  264. <th width="150">任务名称</th>
  265. <td id="riskCheckDefTitleView"></td>
  266. </tr>
  267. <tr>
  268. <th width="150">任务类型</th>
  269. <td id="checkTypeView"></td>
  270. </tr>
  271. <tr>
  272. <th width="150">检查类型</th>
  273. <td id="riskCheckTypeView"></td>
  274. </tr>
  275. <tr>
  276. <th width="150">执行单位</th>
  277. <td id="_groupName"></td>
  278. </tr>
  279. <tr>
  280. <th width="150">执行岗位</th>
  281. <td id="riskCheckPositionView"></td>
  282. </tr>
  283. <tr>
  284. <th width="150">任务类型</th>
  285. <td id="checkCycleView"></td>
  286. </tr>
  287. <tr>
  288. <th width="150">检查频率</th>
  289. <td id="scheduleFrequencyView"></td>
  290. </tr>
  291. <tr>
  292. <th width="150">开始时间</th>
  293. <td id="startTime"></td>
  294. </tr>
  295. <tr>
  296. <th width="150">参与人员</th>
  297. <td id="riskCheckParticipantView"></td>
  298. </tr>
  299. <tr>
  300. <th width="150">排除任务(不检查)</th>
  301. <td id="_filterWeek"></td>
  302. </tr>
  303. <tr>
  304. <th width="150">描述:</th>
  305. <td id="riskCheckDefDescView"></td>
  306. </tr>
  307. </tbody>
  308. </colgroup>
  309. </table>
  310. </div>
  311. </div>
  312. </div>
  313. </div>
  314. </div>
  315. </script>
  316. <!-- js部分 -->
  317. <script type="text/javascript" src="../../../assets/libs/layui/layui.js"></script>
  318. <!--<script type="text/javascript" src="../../../assets/libs/jquery/jquery-3.2.1.min.js"></script>-->
  319. <script type="text/javascript" src="../../../assets/js/common.js?v=312"></script>
  320. <script>
  321. layui.use(['layer', 'form', 'table', 'admin', 'uParas', '_groupTree', 'util', 'laydate', 'formSelects', '_zTree'], function () {
  322. var $ = layui.jquery;
  323. var layer = layui.layer;
  324. var form = layui.form;
  325. var table = layui.table;
  326. var admin = layui.admin;
  327. var laydate = layui.laydate;
  328. var uParas = layui.uParas;
  329. var util = layui.util;
  330. var _groupTree = layui._groupTree;
  331. var formSelects = layui.formSelects;
  332. var _zTree = layui._zTree;
  333. //临时性(random)、常规性(fixed)
  334. var checkType = uParas.getUrlParam("checkType");
  335. //var checkType = "fixed";
  336. //检查方式 1,现场检查2、基础检查
  337. var checkMode = uParas.getUrlParam("checkMode");
  338. if (checkMode == '2') {
  339. $("#htmlHeader").html("基础管理类检查任务配置");
  340. } else if (checkMode == '3') {
  341. $("#htmlHeader").html("关键点位类检查任务配置");
  342. }
  343. //var checkMode = 1;
  344. //岗位
  345. var getPositionList = uParas.getSendData("/admin/common/getPositionByGroup");
  346. uParas.initSimpleSelectX("positionId", "filterForm", getPositionList, "positionTitle", "pId");
  347. form.verify({
  348. // importantPoint: function (value, item) { //value:表单的值、item:表单的DOM对象
  349. // // //校验当前岗位是否管控风险,不管控给提示信息
  350. // // var re;
  351. // // var url1 = uParas.baseUrl + '/ent/riskCtrlLevel/check/' + value;
  352. // // $.ajax({
  353. // // type: "GET",
  354. // // dataType: "json",
  355. // // url: url1,
  356. // // success: function (obj) {
  357. // // if (obj.data.length === 0) {
  358. // // re = false;
  359. // // }
  360. // // }
  361. // // });
  362. // if (!value) {
  363. // return "请选择关键点位!";
  364. // }
  365. // },
  366. group: function (value, item) { //value:表单的值、item:表单的DOM对象
  367. if (!value) {
  368. return "请选择执行部门!";
  369. }
  370. }
  371. });
  372. // 渲染表格数据
  373. var insTb = table.render({
  374. elem: '#datatable',
  375. url: uParas.baseUrl + '/ent/riskCheckedSchduleDef/queryPage',
  376. where: {"checkType": checkType, "checkMode": checkMode},
  377. page: true,
  378. height: 635,
  379. toolbar: true,
  380. title: "任务定义列表",
  381. cellMinWidth: 100,
  382. cols: [[
  383. {type: 'numbers', title: '序号'},
  384. {
  385. field: 'checkMode', sort: false, title: '任务分类', width: 150,
  386. templet: function (d) {
  387. return setCheckMode(d);
  388. }
  389. },
  390. {field: 'riskCheckDefTitle', sort: false, title: '名称'},
  391. // {field: 'checkMode', sort: false, title: '任务类型', templet: '#checkModeTpl'},
  392. {field: 'riskCheckTypeName', sort: false, title: '检查类型', width: 100},
  393. {field: 'checkDefName', sort: false, title: '安全专业检查表'},
  394. {field: 'groupName', sort: false, title: '执行单位',},
  395. {field: 'riskCheckPositionName', sort: false, title: '岗位', width: 150},
  396. {
  397. field: 'scheduleFrequency', align: 'center', sort: false, title: '检查频率', width: 100,
  398. templet: function (d) {
  399. return CycleFunction(d);
  400. }
  401. },
  402. {field: 'startDate', sort: false, title: '计划开始时间', width: 120, align: 'center'},
  403. {field: 'isOpen', sort: false, title: '状态', templet: '#statusTpl', width: 90},
  404. {
  405. align: 'right', title: '操作', width: 200, fixed: 'right', width: 150,
  406. templet: function (d) {
  407. return setOperation(d);
  408. }
  409. }
  410. ]]
  411. });
  412. /***部门*/
  413. _groupTree.init(insTb);
  414. //任务分类
  415. function setCheckMode(row) {
  416. var checkModeStr = "";
  417. var checkTypeStr = "";
  418. if (row.checkMode === 1) {
  419. checkModeStr = "现场任务";
  420. } else if (row.checkMode === 2) {
  421. checkModeStr = "基础任务";
  422. } else if (row.checkMode === 3) {
  423. checkModeStr = "关键点位任务";
  424. }
  425. if (row.checkType === "fixed") {
  426. checkTypeStr = "【常规】";
  427. } else if (row.checkType === "random") {
  428. checkTypeStr = "【临时】";
  429. }
  430. return checkTypeStr + checkModeStr;
  431. }
  432. //操作
  433. function setOperation(row) {
  434. var html = '';
  435. if (row.isOpen == 1) {
  436. //打开状态
  437. html += '<a class="layui-btn layui-btn-xs layui-btn-warm" lay-event="stop">停止</a>';
  438. } else if (row.isOpen == 0) {
  439. //关闭状态
  440. html += '<a class="layui-btn layui-btn-xs layui-btn-normal" lay-event="start">执行</a>';
  441. html += '<a class="layui-btn layui-btn-danger layui-btn-xs " lay-event="del">删除</a>';
  442. }
  443. // html += '<a class="layui-btn layui-btn-xs layui-btn-primary" lay-event="edit" >编辑</a>';
  444. html += '<a class="layui-btn layui-btn-xs bg-c-add" lay-event="detail" >详情</a>';
  445. return html;
  446. }
  447. //频率
  448. function CycleFunction(row) {
  449. if (row.checkType === 'random') {
  450. var startTime = row.startTime;
  451. var endTime = row.endTime;
  452. return startTime + ' 至 ' + endTime;
  453. } else {
  454. var arrKey = ['year', 'half_year', 'quarter', 'month', 'week', 'day'];
  455. var arrVal = ['年', '半年', '季度', '月', '星期', '天'];
  456. var i = $.inArray(row.scheduleFrequency, arrKey);
  457. if (i === -1) {
  458. return "";
  459. }
  460. return row.scheduleCount + '次/' + arrVal[i];
  461. }
  462. }
  463. // 搜索
  464. form.on('submit(formSubSearch)', function (data) {
  465. insTb.reload({where: data.field}, 'data');
  466. });
  467. // 工具条点击事件
  468. table.on('tool(datatable)', function (obj) {
  469. //debugger
  470. var data = obj.data;
  471. var layEvent = obj.event;
  472. if (layEvent == 'stop') { // 停止
  473. doStop(data);
  474. } else if (layEvent == 'start') { // 开始
  475. doStart(data);
  476. } else if (layEvent == 'del') { // 删除
  477. doDel(data);
  478. } else if (layEvent == 'detail') { // 详情
  479. detail(data);
  480. }/*else if(layEvent == 'edit'){ // 编辑
  481. doEdit(data);
  482. }*/
  483. });
  484. // 删除
  485. function doDel(data) {
  486. layer.confirm('确定要删除“' + data.riskCheckDefTitle + '”任务吗?', {
  487. skin: 'layui-layer-admin',
  488. shade: .1
  489. }
  490. , function (i) {
  491. layer.close(i);
  492. layer.load();
  493. admin.req(uParas.baseUrl + '/ent/riskCheckedSchduleDef/delete/' + data.riskCheckDefId, {}, function (res) {
  494. layer.closeAll('loading');
  495. if (res.code == 1) {
  496. layer.msg(res.msg);
  497. insTb.reload({}, 'data');
  498. } else {
  499. layer.msg(res.msg);
  500. }
  501. }, 'GET');
  502. });
  503. }
  504. // 停止
  505. function doStop(data) {
  506. layer.confirm('确定要停止“' + data.riskCheckDefTitle + '”任务吗?', {
  507. skin: 'layui-layer-admin',
  508. shade: .1
  509. }
  510. , function (i) {
  511. layer.close(i);
  512. layer.load();
  513. admin.req(uParas.baseUrl + '/ent/riskCheckedSchduleDef/stop/' + data.riskCheckDefId, {}, function (res) {
  514. layer.closeAll('loading');
  515. if (res.code == 1) {
  516. layer.msg(res.msg);
  517. insTb.reload({}, 'data');
  518. } else {
  519. layer.msg(res.msg);
  520. }
  521. }, 'GET');
  522. });
  523. }
  524. // 执行
  525. function doStart(data) {
  526. var click = false;
  527. layer.confirm('确定要执行“' + data.riskCheckDefTitle + '”任务吗?', {
  528. skin: 'layui-layer-admin',
  529. shade: .1
  530. }
  531. , function (i) {
  532. if (!click) {
  533. click = true;
  534. layer.close(i);
  535. layer.load();
  536. admin.req(uParas.baseUrl + '/ent/riskCheckedSchduleDef/start/' + data.riskCheckDefId, {}, function (res) {
  537. layer.closeAll('loading');
  538. if (res.code == 1) {
  539. layer.msg(res.msg);
  540. insTb.reload({}, 'data');
  541. } else {
  542. layer.msg(res.msg);
  543. }
  544. }, 'GET');
  545. }
  546. });
  547. }
  548. // 编辑
  549. // function doEdit(data) {
  550. // showEditModel(data);
  551. // }
  552. // 添加
  553. $('#btnAdd').click(function () {
  554. showAddModel();
  555. });
  556. //新增具体方法
  557. function showAddModel() {
  558. var title = "新增关键点位任务";
  559. admin.open({
  560. type: 1,
  561. title: title,
  562. offset: 'auto',
  563. area: '500px',
  564. content: $('#modelTpl').html(),
  565. success: function (layero, dIndex) {
  566. form.render();
  567. //检查表 检查方式 1,现场检查2、基础检查3、关键点位检查(基础检查的一种)
  568. if (checkMode == 2) {
  569. $("#bizCheckDefIdDiv").show();
  570. uParas.initSimpleSelect("bizCheckDefId", "modelForm", "/ent/bizCheckDef/findList?defType=1", "checkDefName", "checkDefId");
  571. //执行岗位
  572. uParas.initSimpleSelect("riskCheckPosition", "modelForm", "/admin/common/getPositionListByCondition?type=0", "positionTitle", "pId");
  573. } else {
  574. $("#riskCheckGroupDiv").show();
  575. $("#executorDiv").show();
  576. $("#bizCheckDefIdDiv").show();
  577. uParas.initSimpleSelect("bizCheckDefId", "modelForm", "/ent/bizCheckDef/findList?defType=1", "checkDefName", "checkDefId");
  578. var groupVal = '';//执行单位
  579. var positionVal = '';//执行岗位
  580. //执行岗位
  581. var changeGroup = {
  582. reload: function (data) {
  583. groupVal = data.where.gId;
  584. console.log("dataId......" + groupVal);
  585. //执行岗位
  586. uParas.initSimpleSelect("riskCheckPosition", "modelForm", "/admin/common/getPositionByGroup?groupId=" + groupVal, "positionTitle", "pId");
  587. //执行人员
  588. uParas.initFormSelects("executor", "/admin/common/getAccountByGroupAndPId?groupId=" + groupVal + "&positionId=", "accountRealName", "aId");
  589. form.render();
  590. }
  591. };
  592. //现场检查 选择部门,选择岗位
  593. /***执行单位*/
  594. _zTree._init('/admin/common/getGroupLists', 'gId', 'groupParent', 'groupName', 'gId', 0, "groupTree2", changeGroup, "menuContent2", "riskCheckGroupName", "riskCheckGroup");
  595. //执行岗位select监听
  596. form.on('select(riskCheckPosition)', function (data) {
  597. console.log(data.value); //得到被选中的值
  598. //岗位id
  599. positionVal = data.value;
  600. //执行人员
  601. uParas.initFormSelects("executor", "/admin/common/getAccountByGroupAndPId?groupId=" + groupVal + "&positionId=" + positionVal, "accountRealName", "aId");
  602. form.render();
  603. });
  604. }
  605. $("#checkMode").val(checkMode);
  606. $("#checkType").val(checkType);
  607. //时间选择
  608. laydate.render({
  609. elem: '#startDate',
  610. //min:new Date().getMilliseconds()/1000//设置一个默认最大值
  611. min: 0 //设置一个默认最大值
  612. });
  613. //检查类型
  614. uParas.initSimpleSelect("riskCheckType", "modelForm", "/admin/common/getCommonClassifyesByCatType?catType=4", "catName", "catId");
  615. //参与人员
  616. uParas.initFormSelects("riskCheckParticipant", "/admin/common/getAllAccount", "accountRealName", "aId");
  617. //关键点位
  618. uParas.initSimpleSelect("riskCheckPoint", "modelForm", "/ent/riskPoint/queryIsImportantPoints", "riskPointName", "riskPointId");
  619. var weeks = [];
  620. form.on('checkbox(week)', function (data) {
  621. console.log(data.elem.checked); //是否被选中,true或者false
  622. console.log(data.value); //复选框value值,也可以通过data.elem.value得到
  623. if (data.elem.checked == true) {
  624. weeks.push(data.value);
  625. } else {
  626. weeks.splice($.inArray(data.value, weeks), 1);
  627. }
  628. if (weeks.length == 7) {
  629. layer.msg("排除任务不能全选!");
  630. return false;
  631. }
  632. console.log(weeks);
  633. });
  634. var url = uParas.baseUrl + '/ent/riskCheckedSchduleDef/saveImportantPoint';
  635. //保存处理
  636. form.on('submit(modelSubmit)', function (data) {
  637. layer.load();
  638. data.field.filterWeek = weeks.toString();
  639. admin.req(url, data.field, function (resp) {
  640. layer.closeAll('loading');
  641. if (resp.code == 1) {
  642. layer.close(dIndex);
  643. layer.msg(resp.msg);
  644. insTb.reload({}, 'data');
  645. } else {
  646. layer.msg(resp.msg);
  647. }
  648. }, 'POST');
  649. return false;
  650. });
  651. }
  652. });
  653. }
  654. //修改具体方法
  655. // function showEditModel(data) {
  656. // var riskCheckDefId = data.riskCheckDefId;
  657. // admin.open({
  658. // type: 1,
  659. // title: '修改现场任务',
  660. // offset: 'auto',
  661. // area: '500px',
  662. // content: $('#modelTpl').html(),
  663. // success: function (layero, dIndex) {
  664. // //debugger
  665. // form.render();
  666. // //获取详情
  667. // var url = uParas.baseUrl + '/ent/riskCheckedSchduleDef/get/'+riskCheckDefId;
  668. // admin.req(url, null, function(resp) {
  669. // layer.closeAll('loading');
  670. // if (resp.code == 1) {
  671. // var riskCheckSchduleDef = resp.data;
  672. // form.val('modelForm', riskCheckSchduleDef); // 回显数据
  673. // //$("#checkMode").val(checkMode);
  674. // //$("#checkType").val(checkType);
  675. // //时间选择初始化
  676. // laydate.render({
  677. // elem: '#startDate',
  678. // min: 0, //设置一个默认最大值
  679. // value:riskCheckSchduleDef.startDate
  680. // });
  681. // //检查频率赋值
  682. // //var scheduleFrequency = 'week';
  683. // //var select = 'dd[lay-value=' + scheduleFrequency + ']';
  684. // //$('#scheduleFrequency').siblings("div.layui-form-select").find('dl').find(select).click()
  685. //
  686. //
  687. // //检查类型初始化赋值
  688. // uParas.initSimpleSelect("riskCheckType", "modelForm", "/admin/common/getCommonClassifyesByCatType?catType=4", "catName", "catId",riskCheckSchduleDef.riskCheckType);
  689. //
  690. // //执行岗位初始化赋值
  691. // uParas.initSimpleSelect("riskCheckPosition", "modelForm", "/admin/common/getPositionListByCondition?type=0", "positionTitle", "positionId",riskCheckSchduleDef.riskCheckPosition);
  692. //
  693. // //参与人员初始化赋值
  694. // uParas.initFormSelects("riskCheckParticipant", "/admin/common/getAllAccount", "accountRealName", "accountId",riskCheckSchduleDef.riskCheckParticipant);
  695. //
  696. // var url = uParas.baseUrl + '/ent/riskCheckedSchduleDef/save';
  697. // //保存处理
  698. // form.on('submit(modelSubmit)', function(data) {
  699. // //debugger
  700. // if (data.field.riskCheckType == -1){
  701. // //检查类型
  702. // layer.msg("请选择检查类型");
  703. // return false;
  704. // }
  705. // if (data.field.riskCheckPosition == -1){
  706. // //执行岗位
  707. // layer.msg("请选择执行岗位");
  708. // return false;
  709. // }
  710. // layer.load();
  711. // admin.req(url, data.field, function(resp) {
  712. // layer.closeAll('loading');
  713. // if (resp.code == 1) {
  714. // layer.close(dIndex);
  715. // layer.msg(resp.msg);
  716. // insTb.reload({}, 'data');
  717. // } else {
  718. // layer.msg(resp.msg);
  719. // }
  720. // },'POST');
  721. //
  722. // return false;
  723. // });
  724. // } else {
  725. // layer.msg(resp.msg);
  726. // }
  727. // },'GET');
  728. //
  729. // }
  730. // });
  731. // }
  732. //详情
  733. function detail(data) {
  734. var riskCheckDefId = data.riskCheckDefId;
  735. admin.open({
  736. type: 1,
  737. title: '检查定义详情',
  738. offset: 'auto',
  739. area: '600px',
  740. content: $('#viewTpl').html(),
  741. success: function (layero, dIndex) {
  742. var url = uParas.baseUrl + '/ent/riskCheckedSchduleDef/get/' + riskCheckDefId;
  743. admin.req(url, null, function (resp) {
  744. layer.closeAll('loading');
  745. if (resp.code == 1) {
  746. var riskCheckSchduleDef = resp.data;
  747. $("#riskCheckDefTitleView").text(riskCheckSchduleDef.riskCheckDefTitle);
  748. if (riskCheckSchduleDef.checkMode == 1) {
  749. $("#checkTypeView").text("现场检查");
  750. } else {
  751. $("#checkTypeView").text("基础检查");
  752. }
  753. $("#riskCheckTypeView").text(riskCheckSchduleDef.riskCheckTypeName);
  754. $("#startTime").text(riskCheckSchduleDef.startTime);
  755. $("#_groupName").text(riskCheckSchduleDef.groupName);
  756. $("#riskCheckPositionView").text(riskCheckSchduleDef.riskCheckPositionName);
  757. //检查星期期
  758. if (riskCheckSchduleDef.checkType == 'fixed') {
  759. $("#checkCycleView").text("常规任务");
  760. } else {
  761. $("#checkCycleView").text("临时任务");
  762. }
  763. var fw = riskCheckSchduleDef.filterWeek.split(",");
  764. if (fw.length > 0) {
  765. var _fw = [];
  766. for (let i = 0; i < fw.length; i++) {
  767. if (fw[i] == 1) {
  768. _fw.push("星期日");
  769. } else if (fw[i] == 2) {
  770. _fw.push("星期一");
  771. } else if (fw[i] == 3) {
  772. _fw.push("星期二");
  773. } else if (fw[i] == 4) {
  774. _fw.push("星期三");
  775. } else if (fw[i] == 5) {
  776. _fw.push("星期四");
  777. } else if (fw[i] == 6) {
  778. _fw.push("星期五");
  779. } else if (fw[i] == 7) {
  780. _fw.push("星期六");
  781. } else {
  782. _fw.push("暂未选择");
  783. }
  784. }
  785. //任务排除
  786. $("#_filterWeek").text(_fw.toString());
  787. }
  788. //检查频率
  789. $("#scheduleFrequencyView").text(riskCheckSchduleDef.scheduleCount + "次/" + riskCheckSchduleDef.scheduleFrequencyStr);
  790. $("#riskCheckParticipantView").text(riskCheckSchduleDef.riskCheckParticipantName);
  791. $("#riskCheckDefDescView").text(riskCheckSchduleDef.riskCheckDefDesc);
  792. } else {
  793. layer.msg(resp.msg);
  794. }
  795. }, 'GET');
  796. }
  797. });
  798. }
  799. });
  800. </script>
  801. </body>
  802. </html>