addHdanger.html 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379
  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/inputTags.css"/>
  10. <link rel="stylesheet" href="../../../assets/module/admin.css?v=312"/>
  11. <link rel="stylesheet" href="../../../assets/module/formSelects/formSelects-v4.css"/>
  12. <style>
  13. .note.note-danger {
  14. background-color: #f9f0f0;
  15. border-color: #e4b9c0;
  16. color: #a94442;
  17. }
  18. .note.note-danger.note-bordered {
  19. background-color: #f1dada;
  20. border-color: #dca7b0;
  21. }
  22. </style>
  23. </head>
  24. <body>
  25. <!-- 页面加载loading -->
  26. <div class="page-loading">
  27. <div class="ball-loader">
  28. <span></span><span></span><span></span><span></span>
  29. </div>
  30. </div>
  31. <!-- 正文开始 -->
  32. <form class="layui-form" lay-filter="editForm" id="editForm">
  33. <div class="layui-fluid">
  34. <div class="layui-card" style="padding-bottom :75px;">
  35. <div class="layui-card-header">
  36. 提交隐患
  37. </div>
  38. <div class="layui-card-body">
  39. <input type="hidden" class="layui-input" id="hdangerId" name="hdangerId"/>
  40. <input type="hidden" class="layui-input" id="cId" name="cId"/>
  41. <input type="hidden" class="layui-input" id="gId" name="gId"/>
  42. <input type="hidden" class="layui-input" id="riskPointId" name="riskPointId"/>
  43. <input type="hidden" class="layui-input" id="bizCheckDefId" name="bizCheckDefId"/>
  44. <input type="hidden" class="layui-input" id="scheduleId" name="scheduleId"/>
  45. <div class="layui-form-item layui-row">
  46. <div class="layui-inline layui-col-md5 p-top10px">
  47. <label class="layui-form-label"><span class="layui-badge-dot"></span> 隐患标题</label>
  48. <div class="layui-input-block">
  49. <input type="text" class="layui-input" id="hdangerTitle" name="hdangerTitle" placeholder="请输入标题" maxlength="64"
  50. lay-verType="tips" lay-verify="required" required/>
  51. </div>
  52. </div>
  53. <div class="layui-inline layui-col-md5 p-top10px">
  54. <label class="layui-form-label"><span class="layui-badge-dot"></span> 隐患类型</label>
  55. <div class="layui-input-block">
  56. <select name="hdangerCatId" id="hdangerCatId" lay-verType="tips" lay-verify="required" required class="layui-input-block ">
  57. </select>
  58. </div>
  59. </div>
  60. <div class="layui-inline layui-col-md5 p-top10px">
  61. <label class="layui-form-label"><span class="layui-badge-dot"></span> 隐患等级</label>
  62. <div class="layui-input-block">
  63. <select id="hdangerLevel" name="hdangerLevel" lay-filter="layuiForm" lay-verType="tips" lay-verify="required"
  64. class="layui-input-block ">
  65. <option value="">点击选择</option>
  66. </select>
  67. </div>
  68. </div>
  69. <div class="layui-inline layui-col-md5 p-top10px">
  70. <label class="layui-form-label"><span class="layui-badge-dot"></span> 整改期限</label>
  71. <div class="layui-input-block">
  72. <input type="text" name="hdangerRetifyDeadline" id="hdangerRetifyDeadline"
  73. lay-verType="tips" lay-verify="required" autocomplete="off" class="layui-input" readonly>
  74. </div>
  75. </div>
  76. <div class="hdanger-review">
  77. <div class="layui-inline layui-col-md5 p-top10px">
  78. <label class="layui-form-label"><span class="layui-badge-dot"></span> 评审部门</label>
  79. <div class="layui-input-block">
  80. <input type="text" id="hdangerReviewGroupName" class="layui-input" name="hdangerReviewGroupName"
  81. value=""
  82. placeholder="点击选择部门"
  83. class="form-control" readonly>
  84. <input type="hidden" id="hdangerReviewGroup" name="hdangerReviewGroup" readonly>
  85. <div id="menuContentReview" class="menuContent">
  86. <ul id="threeLevelGroupReview" class="ztree" style="margin-top:0;"></ul>
  87. </div>
  88. </div>
  89. </div>
  90. <div class="layui-inline layui-col-md5 p-top10px">
  91. <label class="layui-form-label"><span class="layui-badge-dot"></span> 评审人员</label>
  92. <div class="layui-input-block">
  93. <select id="hdangerReviewBy" name="hdangerReviewBy" lay-verType="tips" class="layui-input-block"
  94. lay-verify="required" >
  95. <option value="">点击选择人员</option>
  96. </select>
  97. </div>
  98. </div>
  99. </div>
  100. <div class="hdanger-retify">
  101. <div class="layui-inline layui-col-md5 p-top10px">
  102. <label class="layui-form-label"><span class="layui-badge-dot"></span> 整改部门</label>
  103. <div class="layui-input-block">
  104. <input type="text" id="hdangerRetifyGroupName" class="layui-input" name="hdangerRetifyGroupName"
  105. value=""
  106. placeholder="点击选择部门"
  107. class="form-control" readonly>
  108. <input type="hidden" id="hdangerRetifyGroup" name="hdangerRetifyGroup" readonly>
  109. <div id="menuContentRetify" class="menuContent">
  110. <ul id="threeLevelGroupRetify" class="ztree" style="margin-top:0;"></ul>
  111. </div>
  112. </div>
  113. </div>
  114. <div class="layui-inline layui-col-md5 p-top10px">
  115. <label class="layui-form-label "><span class="layui-badge-dot"></span> 整改人员</label>
  116. <div class="layui-input-block">
  117. <select id="hdangerRetifyBy" name="hdangerRetifyBy" class="layui-input-block"
  118. lay-filter="layuiFormRetify">
  119. <option value="">点击选择人员</option>
  120. </select>
  121. </div>
  122. </div>
  123. </div>
  124. <div class="hdanger-accepted">
  125. <div class="layui-inline layui-col-md5 p-top10px">
  126. <label class="layui-form-label"><span class="layui-badge-dot"></span> 验收部门</label>
  127. <div class="layui-input-block">
  128. <input type="text" id="hdangerAcceptedGroupName" class="layui-input" name="hdangerAcceptedGroupName"
  129. value=""
  130. placeholder="点击选择部门"
  131. class="form-control" readonly>
  132. <input type="hidden" id="hdangerAcceptedGroup" name="hdangerAcceptedGroup" readonly>
  133. <div id="menuContentAccepted" class="menuContent">
  134. <ul id="threeLevelGroupAccepted" class="ztree" style="margin-top:0;"></ul>
  135. </div>
  136. </div>
  137. </div>
  138. <div class="layui-inline layui-col-md5 p-top10px">
  139. <label class="layui-form-label"><span class="layui-badge-dot"></span> 验收人员</label>
  140. <div class="layui-input-block">
  141. <select id="hdangerAcceptedBy" name="hdangerAcceptedBy" class="layui-input-block"
  142. lay-verType="tips" lay-verify="required" >
  143. <option value="">点击选择人员</option>
  144. </select>
  145. </div>
  146. </div>
  147. </div>
  148. <div class="layui-inline layui-col-md10 p-top10px" >
  149. <label class="layui-form-label">现场描述</label>
  150. <div class="layui-input-block">
  151. <textarea class="layui-textarea" lay-verType="tips" lay-verify="required" placeholder="请输入描述"
  152. id="hdangerDesc" name="hdangerDesc" maxlength="500"></textarea>
  153. </div>
  154. </div>
  155. <!--附件-->
  156. <div class="layui-inline layui-col-md10 p-top10px">
  157. <label class="layui-form-label">现场照片</label>
  158. <div class="layui-input-block text-left">
  159. <button type="button" class="layui-btn" id="test1">
  160. <i class="layui-icon">&#xe67c;</i>上传照片
  161. </button>
  162. <span style="color: indianred;font-size: 16px;">支持图片格式:jpg / png / gif / jpeg</span>
  163. <input type="hidden" name="attachPathVal" id="attachPathVal"/>
  164. <div id="fileDiv" style="padding-top: 10px;"></div>
  165. </div>
  166. </div>
  167. </div>
  168. <div class="text-left m-left20px" style="padding-bottom: 10px;">
  169. <button type="button" class="layui-btn layui-btn-sm bg-c-add" lay-filter="formSave" lay-submit>保存至待提交</button>
  170. <button type="button" class="layui-btn layui-btn-sm bg-c-submit" lay-filter="formSubmit" lay-submit>直接提交</button>
  171. <button type="button" class="layui-btn layui-btn-sm bg-c-back" onclick="goBack()">返回</button>
  172. </div>
  173. </div>
  174. </div>
  175. </div>
  176. </form>
  177. <!-- js部分 -->
  178. <script type="text/javascript" src="../../../assets/libs/layui/layui.js"></script>
  179. <script type="text/javascript" src="../../../assets/js/common.js?v=312"></script>
  180. <script type="text/javascript" src="../../../assets/libs/jquery/jquery-3.2.1.min.js"></script>
  181. <script type="text/javascript" src="../../../assets/module/inputTags.js"></script>
  182. <script src="../../../assets/libs/wangEditor/wangEditor.js"></script>
  183. <script>
  184. layui.use(['layer', 'form', 'table', 'admin','laydate', 'zTree', 'uParas','upload','inputTags','formSelects','laytpl','_groupTree'], function () {
  185. var $ = layui.jquery;
  186. var layer = layui.layer;
  187. var form = layui.form;
  188. var admin = layui.admin;
  189. var uParas = layui.uParas;
  190. var upload = layui.upload,laytpl = layui.laytpl;
  191. var _groupTree = layui._groupTree;
  192. var laydate = layui.laydate;
  193. //子任务ID
  194. var scheduleId = uParas.getUrlParam("scheduleId");
  195. //风险点ID
  196. var riskPointId = uParas.getUrlParam("riskPointId");
  197. //检查记录编号
  198. var checkRecordNo = uParas.getUrlParam("checkRecordNo");
  199. //检查表ID
  200. var bizCheckDefId = uParas.getUrlParam("bizCheckDefId");
  201. //当前检查次数
  202. var scheduleCurrentCount = uParas.getUrlParam("scheduleCurrentCount");
  203. //总检查次数
  204. var totalCheckCount = uParas.getUrlParam("totalCheckCount");
  205. /*整改期限*/
  206. laydate.render({
  207. elem: '#hdangerRetifyDeadline',
  208. format: 'yyyy-MM-dd HH:mm:ss',
  209. type: 'datetime',
  210. min:'date',
  211. });
  212. /*检测 隐患评审流程*/
  213. admin.req(uParas.baseUrl + '/ent/hiddenDanger/checkedHdangerReview', null, function (res) {
  214. if (res.code == 1) {
  215. var isHdangerReview = res.data.isHdangerReview;
  216. if(isHdangerReview){
  217. /*评审*/
  218. $(".hdanger-review").show();
  219. $(".hdanger-retify").hide();
  220. $(".hdanger-accepted").hide();
  221. }else{
  222. /*不评审*/
  223. $(".hdanger-review").hide();
  224. $(".hdanger-retify").show();
  225. $(".hdanger-accepted").show();
  226. }
  227. }
  228. }, 'get');
  229. /*隐患等级*/
  230. uParas.initSimpleSelect("hdangerLevel", "editForm", "/admin/common/getHdangerLevelList", "keyName", "keyValue");
  231. /*隐患类型*/
  232. uParas.initSimpleSelect("hdangerCatId", "editForm", "/admin/common/getCommonClassifyesByCatType?catType=1", "catName", "catId");
  233. var groupUrl = '/admin/common/findCompanyGroupLists';
  234. /*整改部门and人员*/
  235. _groupTree.initgroupTreeAndUsers(groupUrl,"threeLevelGroupRetify","hdangerRetifyGroupName",
  236. "hdangerRetifyGroup","menuContentRetify","hdangerRetifyBy","editForm");
  237. /*评审部门and人员*/
  238. _groupTree.initgroupTreeAndUsers(groupUrl,"threeLevelGroupReview","hdangerReviewGroupName",
  239. "hdangerReviewGroup","menuContentReview","hdangerReviewBy","editForm");
  240. /*验收部门and人员*/
  241. _groupTree.initgroupTreeAndUsers(groupUrl,"threeLevelGroupAccepted","hdangerAcceptedGroupName",
  242. "hdangerAcceptedGroup","menuContentAccepted","hdangerAcceptedBy","editForm");
  243. // 提交
  244. form.on('submit(formSubmit)', function(data) {
  245. var url = uParas.baseUrl + "/ent/hiddenWorkFlow/saveHdanger";
  246. data.field.status = 1;
  247. var paths = $('input[name="attachPath"]');
  248. if(paths && paths.length > 0){
  249. var attachPathVal = [];
  250. paths.each(function () {
  251. attachPathVal.push($(this).val());
  252. });
  253. data.field.attachPathVal = attachPathVal.join(",");
  254. $("#attachPathVal").val(attachPathVal.join(","));
  255. }
  256. admin.req(url, data.field, function(res) {
  257. layer.closeAll('loading');
  258. if (res.code == 1) {
  259. //layer.msg(res.msg);
  260. location.href = "./index.html";
  261. } else {
  262. // alert();
  263. //console.log(res.msg);
  264. layer.msg(res.msg);
  265. }
  266. },'POST');
  267. return false;
  268. });
  269. // 保存至待提交
  270. form.on('submit(formSave)', function(data) {
  271. var url = uParas.baseUrl + "/ent/hiddenWorkFlow/saveHdanger";
  272. data.field.status = 0;
  273. var paths = $('input[name="attachPath"]');
  274. if(paths && paths.length > 0){
  275. var attachPathVal = [];
  276. paths.each(function () {
  277. attachPathVal.push($(this).val());
  278. });
  279. data.field.attachPathVal = attachPathVal.join(",");
  280. $("#attachPathVal").val(attachPathVal.join(","));
  281. }
  282. admin.req(url, data.field, function(res) {
  283. layer.closeAll('loading');
  284. if (res.code == 1) {
  285. //layer.msg(res.msg);
  286. location.href = "./index.html";
  287. } else {
  288. // alert();
  289. //console.log(res.msg);
  290. layer.msg(res.msg);
  291. }
  292. },'POST');
  293. return false;
  294. });
  295. // 上传实例
  296. var uploadFile = upload.render({
  297. elem: '#test1', //绑定元素
  298. url: uParas.baseUrl+'/admin/uploadFile', //上传接口
  299. accept:'file',
  300. acceptMime: 'image/jpg,image/png,image/gif,image/jpeg,image/bmp,image/tga,image/fpx,image/raw,', //(只显示 jpg 和 png 文件)
  301. size:30720,//设置文件最大可允许上传的大小,单位 KB。不支持ie8/9
  302. done: function(response){
  303. //上传完毕回调
  304. fileHtml(response.data.ext,response.data.path,response.data.oriFileName,true);
  305. }
  306. ,error: function(){
  307. //请求异常回调
  308. }
  309. });
  310. function fileHtml(ext,path,oriFileName,isNew){
  311. var Str = '';
  312. if(isNew){
  313. Str = '<span style="color: #1E9FFF;">(新)</span>';
  314. }
  315. //文件图标
  316. var icon = '';
  317. if(ext === 'bmp' || ext === 'jpg' || ext === 'jpeg' || ext === 'png' || ext === 'gif'){
  318. icon = '<img style="width: 60px;height: 80px;" src="'+path+'" alt="">';
  319. }else{
  320. icon = '<img style="width: 60px;height: 80px;" src="'+path+'" alt="">';
  321. }
  322. //文件信息置入隐藏域
  323. var html = '';
  324. html+='<div style="padding-top: 6px;padding-right: 10px;float: left;">';
  325. html+='<input type="hidden" name="attachPath" value="' + path + '"/>';
  326. html+=icon;
  327. //html+='<br><a style="color: blueviolet;margin-left: 5px;" target="_blank" href="' + path + '">' + oriFileName + '</a>';
  328. html+='<br>'+Str+'<a style="color: indianred;float: right;margin-right: 15px;" class="delete-upImg" onclick="deleteFile(this)">删除</a>';
  329. html+='</div>';
  330. $("#fileDiv").append(html);
  331. }
  332. });
  333. //删除附件
  334. function deleteFile(obj){
  335. var pDiv = $(obj).parent();
  336. pDiv.remove();
  337. }
  338. //返回
  339. function goBack() {
  340. history.back();
  341. }
  342. </script>
  343. </body>
  344. </html>