approveForm.html 8.2 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239
  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. <style>
  11. .form-btn-group{
  12. text-align: right;
  13. }
  14. </style>
  15. </head>
  16. <body>
  17. <!-- 页面加载loading -->
  18. <div class="page-loading">
  19. <div class="ball-loader">
  20. <span></span><span></span><span></span><span></span>
  21. </div>
  22. </div>
  23. <!-- 正文开始 -->
  24. <div class="layui-fluid">
  25. <div class="layui-row">
  26. <div class="grid-demo">
  27. <div class="layui-card">
  28. <div class="layui-card-header">
  29. 审核表单
  30. </div>
  31. <div class="layui-card-body">
  32. <form class="layui-form" lay-filter="formData">
  33. <div class="layui-form-item layui-form-text">
  34. <label class="layui-form-label">评审内容</label>
  35. <div class="layui-input-block">
  36. <textarea name="approvalComments" rows="6" placeholder="请输入内容" class="layui-textarea"></textarea>
  37. </div>
  38. </div>
  39. <div class="layui-form-item" id="approver">
  40. <label class="layui-form-label" id="approverName">审批人</label>
  41. <div class="layui-input-block">
  42. <select name="deptLeader" id="approverList">
  43. </select>
  44. </div>
  45. </div>
  46. <div class="layui-form-item">
  47. <div class="layui-input-block form-btn-group">
  48. <button class="layui-btn layui-btn-normal" lay-even="1" lay-submit id="agree">同&nbsp;&nbsp;意</button>
  49. <button class="layui-btn layui-btn-danger" lay-submit id="reject">拒&nbsp;&nbsp;绝</button>
  50. </div>
  51. </div>
  52. </form>
  53. </div>
  54. </div>
  55. </div>
  56. </div>
  57. </div>
  58. <!-- js部分 -->
  59. <script type="text/javascript" src="../../assets/libs/layui/layui.js"></script>
  60. <script type="text/javascript" src="../../assets/js/common.js?v=312"></script>
  61. <script>
  62. </script>
  63. <script>
  64. layui.use(['layer', 'form', 'table', 'laydate', 'util', 'upload', 'zTree', 'admin', 'uParas', 'element', 'baseCache'], function () {
  65. var $ = layui.jquery;
  66. var layer = layui.layer;
  67. var form = layui.form;
  68. var admin = layui.admin;
  69. var uParas = layui.uParas;
  70. var element = layui.element, laydate = layui.laydate;
  71. /**
  72. * @Author: NanKeYang
  73. * @Description: 用户操作必带参数
  74. * @Data: 2020/1/8 15:17
  75. */
  76. var aId = layui.baseCache.getAId();
  77. var cId = layui.baseCache.getCId();
  78. var id = uParas.getUrlParam("id");
  79. var approveFlag,reqData;
  80. /**
  81. * @Author: NanKeYang
  82. * @Description: 添加成功和拒绝参数
  83. * @Data: 2020/1/9 15:46
  84. */
  85. $('#agree').click(function () {
  86. approveFlag = 1;
  87. })
  88. $('#reject').click(function () {
  89. approveFlag = 0;
  90. })
  91. /**
  92. * @Author: NanKeYang
  93. * @Description: 提交申请
  94. * @Data: 2020/1/9 15:48
  95. */
  96. form.on('submit(formData)', function (data) {
  97. var formData = form.val("formData");
  98. if(approveFlag === 1 && formData.deptLeader.length <= 0 && reqData.taskName === '部门领导审批'){
  99. layer.msg('请选择审批人');
  100. return false
  101. }
  102. let reqFormData;
  103. if (reqData.taskName === '部门领导审批') {
  104. reqFormData = {
  105. aId: aId,
  106. cId: cId,
  107. taskId: reqData.taskId,
  108. p_B_deptLeaderApproved: approveFlag === 1 ? true : false,
  109. p_S_hr: formData.deptLeader,
  110. message: formData.approvalComments
  111. }
  112. if (approveFlag === 0) {
  113. delete reqFormData['p_S_hr'];
  114. } else {
  115. if (this.deptLeader === '') {
  116. Toast.info('请选择审批人');
  117. return false;
  118. }
  119. }
  120. } else if (reqData.taskName === '人事审批') {
  121. reqFormData = {
  122. aId: aId,
  123. cId: cId,
  124. taskId: reqData.taskId,
  125. p_B_hrApproved: approveFlag === 1 ? true : false,
  126. message: formData.approvalComments,
  127. p_S_applyUserId: reqData.createdBy + '#自己'
  128. }
  129. } else if (this.reqData.taskName === '销假') {
  130. // reqFormData = {
  131. // aId: aId,
  132. // cId: cId,
  133. // }
  134. }
  135. var load = layer.load();
  136. $.ajax({
  137. type: "post",
  138. url: uParas.baseUrl + "/3rd/flow/approve",
  139. data: reqFormData,
  140. error: function (request) {
  141. layer.close(load);
  142. layer.alert('操作失败', {
  143. icon: 2,
  144. title: "提示"
  145. });
  146. },
  147. success: function (resp) {
  148. const {code, data, msg} = resp;
  149. layer.close(load);
  150. if (code == 1) {
  151. layer.msg('操作成功', {offset: ['50%'], time: 2000}, function () {
  152. parent.layer.closeAll();
  153. });
  154. } else {
  155. layer.msg(msg);
  156. }
  157. }
  158. });
  159. return false;
  160. });
  161. $.ajax({
  162. type: "get",
  163. url: uParas.baseUrl + "/3rd/flow/getUsers",
  164. data: {
  165. aId: aId,
  166. cId: cId
  167. },
  168. error: function (request) {
  169. layer.alert('操作失败', {
  170. icon: 2,
  171. title: "提示"
  172. });
  173. },
  174. success: function (resp) {
  175. const {code, data, msg} = resp;
  176. if (code == 1) {
  177. var optionsStr = `<option value="">请选择审批人</option>`;
  178. // approverList = [];
  179. // 提交要格式 => ID#名称
  180. data.forEach(function (item, index) {
  181. optionsStr += `<option value="${item.aId + '#' + item.accountRealName}">${item.accountRealName}</option>`
  182. })
  183. $('#approverList').append(optionsStr);
  184. form.render("select");
  185. } else {
  186. layer.msg(msg);
  187. }
  188. }
  189. });
  190. $.ajax({
  191. type: "get",
  192. url: uParas.baseUrl + "/3rd/flow/queryById",
  193. data: {
  194. aId: aId,
  195. cId: cId,
  196. id: id
  197. },
  198. error: function (request) {
  199. layer.alert('操作失败', {
  200. icon: 2,
  201. title: "提示"
  202. });
  203. },
  204. success: function (resp) {
  205. const {code, data, msg} = resp;
  206. if (code == 1) {
  207. reqData = data;
  208. if(data.taskName === "部门领导审批"){
  209. $('#approverName').text("人事审批")
  210. }else if(data.taskName === "人事审批"){
  211. $('#approver').hide();
  212. }
  213. } else {
  214. layer.msg(msg);
  215. }
  216. }
  217. });
  218. });
  219. </script>
  220. </body>
  221. </html>