audit.js 14 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419
  1. 'use strict';
  2. /**
  3. *
  4. *
  5. * @author Mai
  6. * @date
  7. * @version
  8. */
  9. // 台账审批流程
  10. const ledger = (function() {
  11. const status = {
  12. uncheck: 1, // 待上报
  13. checking: 2, // 待审批|审批中
  14. checked: 3, // 审批通过
  15. checkNo: 4, // 审批退回
  16. };
  17. const statusString = [];
  18. statusString[status.uncheck] = '';
  19. statusString[status.checking] = '审批中';
  20. statusString[status.checked] = '审批完成';
  21. statusString[status.checkNo] = '审批退回';
  22. const statusClass = [];
  23. statusClass[status.uncheck] = '';
  24. statusClass[status.checking] = '';
  25. statusClass[status.checked] = 'text-success';
  26. statusClass[status.checkNo] = 'text-warning';
  27. // 标段概况页
  28. // 描述文本
  29. const auditString = [];
  30. auditString[status.uncheck] = '';
  31. auditString[status.checking] = '审批中';
  32. auditString[status.checked] = '审批通过';
  33. auditString[status.checkNo] = '审批退回';
  34. // 文字样式
  35. const auditStringClass = [];
  36. auditStringClass[status.uncheck] = '';
  37. auditStringClass[status.checking] = 'text-warning';
  38. auditStringClass[status.checked] = 'text-success';
  39. auditStringClass[status.checkNo] = 'text-warning';
  40. return { status, statusString, statusClass, auditString, auditStringClass };
  41. })();
  42. // 台账修订 审批流程
  43. const revise = (function() {
  44. const status = {
  45. uncheck: 1, // 待上报
  46. checking: 2, // 待审批|审批中
  47. checked: 3, // 审批通过
  48. checkNo: 4, // 审批退回
  49. };
  50. const statusString = [];
  51. statusString[status.uncheck] = '草稿';
  52. statusString[status.checking] = '审批中';
  53. statusString[status.checked] = '审批通过';
  54. statusString[status.checkNo] = '审批退回';
  55. const statusClass = [];
  56. statusClass[status.uncheck] = '';
  57. statusClass[status.checking] = '';
  58. statusClass[status.checked] = 'text-success';
  59. statusClass[status.checkNo] = 'text-warning';
  60. // 标段概况页
  61. // 描述文本
  62. const auditString = [];
  63. auditString[status.uncheck] = '';
  64. auditString[status.checking] = '审批中';
  65. auditString[status.checked] = '审批通过';
  66. auditString[status.checkNo] = '审批退回';
  67. // 文字样式
  68. const auditStringClass = [];
  69. auditStringClass[status.uncheck] = '';
  70. auditStringClass[status.checking] = 'text-warning';
  71. auditStringClass[status.checked] = 'text-success';
  72. auditStringClass[status.checkNo] = 'text-warning';
  73. // 描述文本
  74. const auditProgress = [];
  75. auditProgress[status.uncheck] = '草稿';
  76. auditProgress[status.checking] = '审批中';
  77. auditProgress[status.checked] = '审批通过';
  78. auditProgress[status.checkNo] = '审批退回';
  79. // 样式
  80. const auditProgressClass = [];
  81. auditProgressClass[status.uncheck] = '';
  82. auditProgressClass[status.checking] = 'text-warning';
  83. auditProgressClass[status.checked] = 'text-success';
  84. auditProgressClass[status.checkNo] = 'text-warning';
  85. return { status, statusString, statusClass, auditString, auditStringClass, auditProgress, auditProgressClass };
  86. })();
  87. // 期审批流程
  88. const stage = (function() {
  89. // 流程状态
  90. const status = {
  91. uncheck: 1, // 待上报
  92. checking: 2, // 待审批|审批中
  93. checked: 3, // 审批通过
  94. checkNo: 4, // 审批退回原报
  95. checkNoPre: 5, // 审批退回上一人
  96. checkAgain: 6, // 重新审批 // 该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  97. };
  98. // 流程状态提示
  99. const statusString = [];
  100. statusString[status.uncheck] = '待上报';
  101. statusString[status.checking] = '审批中';
  102. statusString[status.checked] = '审批通过';
  103. statusString[status.checkNo] = '审批退回';
  104. statusString[status.checkNoPre] = '审批退回';
  105. statusString[status.checkAgain] = '重新审批';
  106. // 流程状态样式
  107. const statusClass = [];
  108. statusClass[status.uncheck] = '';
  109. statusClass[status.checking] = '';
  110. statusClass[status.checked] = 'text-success';
  111. statusClass[status.checkNo] = 'text-warning';
  112. statusClass[status.checkNoPre] = 'text-warning';
  113. statusClass[status.checkAgain] = 'text-warning';
  114. /**
  115. * 期列表,审批状态一列
  116. */
  117. // 按钮
  118. const statusButton = [];
  119. statusButton[status.uncheck] = '待上报';
  120. statusButton[status.checking] = '审批';
  121. statusButton[status.checked] = '';
  122. statusButton[status.checkNo] = '重新上报';
  123. statusButton[status.checkNoPre] = '重新审批';
  124. statusButton[status.checkAgain] = '重新审批';
  125. // 按钮样式
  126. const statusButtonClass = [];
  127. statusButtonClass[status.uncheck] = 'btn-primary';
  128. statusButtonClass[status.checking] = 'btn-success';
  129. statusButtonClass[status.checked] = '';
  130. statusButtonClass[status.checkNo] = 'btn-warning';
  131. statusButtonClass[status.checkNoPre] = 'btn-warning';
  132. statusButtonClass[status.checkAgain] = 'btn-warning';
  133. // 描述文本
  134. const auditString = [];
  135. auditString[status.uncheck] = '';
  136. auditString[status.checking] = '审批中';
  137. auditString[status.checked] = '审批通过';
  138. auditString[status.checkNo] = '审批退回';
  139. auditString[status.checkNoPre] = '审批退回';
  140. auditString[status.checkAgain] = '重新审批';
  141. // 文字样式
  142. const auditStringClass = [];
  143. auditStringClass[status.uncheck] = '';
  144. auditStringClass[status.checking] = 'text-warning';
  145. auditStringClass[status.checked] = 'text-success';
  146. auditStringClass[status.checkNo] = 'text-warning';
  147. auditStringClass[status.checkNoPre] = 'text-warning';
  148. auditStringClass[status.checkAgain] = 'text-warning';
  149. /* ------------------------------------------------------- */
  150. /**
  151. * 期列表,审批进度一列
  152. */
  153. // 描述文本
  154. const auditProgress = [];
  155. auditProgress[status.uncheck] = '待上报';
  156. auditProgress[status.checking] = '审批中';
  157. auditProgress[status.checked] = '审批通过';
  158. auditProgress[status.checkNo] = '审批退回';
  159. auditProgress[status.checkNoPre] = '审批退回';
  160. auditProgress[status.checkAgain] = '重新审批';
  161. // 样式
  162. const auditProgressClass = [];
  163. auditProgressClass[status.uncheck] = '';
  164. auditProgressClass[status.checking] = 'text-warning';
  165. auditProgressClass[status.checked] = 'text-success';
  166. auditProgressClass[status.checkNo] = 'text-warning';
  167. auditProgressClass[status.checkNoPre] = 'text-warning';
  168. auditProgressClass[status.checkAgain] = 'text-warning';
  169. /* ------------------------------------------------------- */
  170. const backType = {
  171. org: 1,
  172. pre: 2,
  173. };
  174. return {
  175. status,
  176. statusString,
  177. statusClass,
  178. statusButton,
  179. statusButtonClass,
  180. auditString,
  181. auditStringClass,
  182. auditProgress,
  183. auditProgressClass,
  184. backType,
  185. timesLen: 100,
  186. };
  187. })();
  188. // 变更令状态
  189. const status = {
  190. uncheck: 1, // 待上报
  191. checking: 2, // 审批中
  192. checked: 3, // 审批完成
  193. // checkNo: 4, // 审批终止
  194. back: 5, // 重新上报
  195. backnew: 6, // 退回
  196. };
  197. const statusButton = [];
  198. statusButton[status.uncheck] = '上报';
  199. statusButton[status.checking] = '审批';
  200. statusButton[status.checked] = '';
  201. // statusButton[status.checkNo] = '';
  202. statusButton[status.back] = '重新上报';
  203. statusButton[status.backnew] = '审批';
  204. const statusButtonClass = [];
  205. statusButtonClass[status.uncheck] = 'btn-primary';
  206. statusButtonClass[status.checking] = 'btn-success';
  207. statusButtonClass[status.checked] = '';
  208. // statusButtonClass[status.checkNo] = '';
  209. statusButtonClass[status.back] = 'btn-warning';
  210. statusButtonClass[status.backnew] = 'btn-success';
  211. const statusString = [];
  212. statusString[status.uncheck] = '';
  213. statusString[status.checking] = '审批中';
  214. statusString[status.checked] = '审批通过';
  215. // statusString[status.checkNo] = '终止';
  216. statusString[status.back] = '审批退回';
  217. statusString[status.backnew] = '审批退回';
  218. const statusClass = [];
  219. statusClass[status.uncheck] = '';
  220. statusClass[status.checking] = 'text-warning';
  221. statusClass[status.checked] = 'text-success';
  222. // statusClass[status.checkNo] = 'text-danger';
  223. statusClass[status.back] = 'text-warning';
  224. statusClass[status.backnew] = 'text-warning';
  225. /* ------------------------------------------------------- */
  226. // 变更令审批人状态
  227. const auditStatus = {
  228. uncheck: 1, // 待审批
  229. checking: 2, // 审批中或者原报人待上报
  230. checked: 3, // 审批通过或者原报人上报完成
  231. // checkNo: 4, // 审批终止
  232. back: 5, // 退回到原报人重新上报
  233. backnew: 6, // 退回到上一个审批人
  234. checkAgain: 7, // 重新审批
  235. };
  236. const auditStatusString = [];
  237. auditStatusString[auditStatus.uncheck] = '待上报';
  238. auditStatusString[auditStatus.checking] = '审批中';
  239. auditStatusString[auditStatus.checked] = '审批通过';
  240. // auditStatusString[auditStatus.checkNo] = '审批终止';
  241. auditStatusString[auditStatus.back] = '退回';
  242. auditStatusString[auditStatus.backnew] = '审批退回';
  243. auditStatusString[auditStatus.checkAgain] = '重新审批';
  244. const auditStatusClass = [];
  245. auditStatusClass[auditStatus.uncheck] = '';
  246. auditStatusClass[auditStatus.checking] = 'text-warning';
  247. auditStatusClass[auditStatus.checked] = 'text-success';
  248. // auditStatusClass[auditStatus.checkNo] = 'text-danger';
  249. auditStatusClass[auditStatus.back] = 'text-warning';
  250. auditStatusClass[auditStatus.backnew] = 'text-warning';
  251. auditStatusClass[auditStatus.checkAgain] = 'text-warning';
  252. /* ------------------------------------------------------- */
  253. const filter = {
  254. status: {
  255. pending: 1,
  256. uncheck: 5,
  257. checking: 2,
  258. checked: 3,
  259. // checkNo: 4,
  260. },
  261. statusString: [],
  262. };
  263. filter.statusString[filter.status.pending] = '待处理';
  264. filter.statusString[filter.status.uncheck] = '待上报';
  265. filter.statusString[filter.status.checking] = '进行中';
  266. filter.statusString[filter.status.checked] = '已完成';
  267. // filter.statusString[filter.status.checkNo] = '终止';
  268. // 材料调差审批流程
  269. const material = (function() {
  270. const status = {
  271. uncheck: 1, // 待上报
  272. checking: 2, // 待审批|审批中
  273. checked: 3, // 审批通过
  274. checkNo: 4, // 审批退回原报
  275. checkNoPre: 5, // 审批退回上一人
  276. checkAgain: 6, // 终审退回 --该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  277. };
  278. // 流程状态提示
  279. const statusString = [];
  280. statusString[status.uncheck] = '待上报';
  281. statusString[status.checking] = '审批中';
  282. statusString[status.checked] = '审批通过';
  283. statusString[status.checkNo] = '审批退回';
  284. statusString[status.checkNoPre] = '审批退回';
  285. statusString[status.checkAgain] = '重新审批';
  286. // 流程状态样式
  287. const statusClass = [];
  288. statusClass[status.uncheck] = '';
  289. statusClass[status.checking] = '';
  290. statusClass[status.checked] = 'text-success';
  291. statusClass[status.checkNo] = 'text-warning';
  292. statusClass[status.checkNoPre] = 'text-warning';
  293. statusClass[status.checkAgain] = 'text-warning';
  294. // 按钮
  295. const statusButton = [];
  296. statusButton[status.uncheck] = '待上报';
  297. statusButton[status.checking] = '审批';
  298. statusButton[status.checked] = '';
  299. statusButton[status.checkNo] = '重新上报';
  300. // 按钮样式
  301. const statusButtonClass = [];
  302. statusButtonClass[status.uncheck] = 'btn-primary';
  303. statusButtonClass[status.checking] = 'btn-success';
  304. statusButtonClass[status.checked] = '';
  305. statusButtonClass[status.checkNo] = 'btn-warning';
  306. // 描述文本
  307. const auditProgress = [];
  308. auditProgress[status.uncheck] = '待上报';
  309. auditProgress[status.checking] = '审批中';
  310. auditProgress[status.checked] = '审批通过';
  311. auditProgress[status.checkNo] = '审批退回';
  312. // 样式
  313. const auditProgressClass = [];
  314. auditProgressClass[status.uncheck] = '';
  315. auditProgressClass[status.checking] = 'text-warning';
  316. auditProgressClass[status.checked] = 'text-success';
  317. auditProgressClass[status.checkNo] = 'text-warning';
  318. return { status, statusString, statusClass, statusButton, statusButtonClass, auditProgress, auditProgressClass };
  319. })();
  320. // 预付款审批流程
  321. const advance = (function() {
  322. const type = {
  323. start: 0,
  324. material: 1,
  325. };
  326. const status = {
  327. uncheck: 1, // 待上报
  328. checking: 2, // 待审批|审批中
  329. checked: 3, // 审批通过
  330. checkNo: 4, // 审批退回原报
  331. checkNoPre: 5, // 审批退回上一人
  332. };
  333. const statusString = [];
  334. statusString[status.uncheck] = '未上报';
  335. statusString[status.checking] = '审批中';
  336. statusString[status.checked] = '审批通过';
  337. statusString[status.checkNo] = '审批退回';
  338. const statusClass = [];
  339. statusClass[status.uncheck] = '';
  340. statusClass[status.checking] = 'text-warning';
  341. statusClass[status.checked] = 'text-success';
  342. statusClass[status.checkNo] = 'text-warning';
  343. // 标段概况页
  344. // 描述文本
  345. const auditString = [];
  346. auditString[status.uncheck] = '';
  347. auditString[status.checking] = '审批中';
  348. auditString[status.checked] = '审批通过';
  349. auditString[status.checkNo] = '审批退回';
  350. // 文字样式
  351. const auditStringClass = [];
  352. auditStringClass[status.uncheck] = '';
  353. auditStringClass[status.checking] = 'text-warning';
  354. auditStringClass[status.checked] = 'text-success';
  355. auditStringClass[status.checkNo] = 'text-warning';
  356. return { type, status, statusString, statusClass, auditString, auditStringClass };
  357. })();
  358. // 推送类型
  359. const pushType = {
  360. material: 1,
  361. stage: 2,
  362. change: 3,
  363. revise: 4,
  364. ledger: 5,
  365. advance: 6,
  366. };
  367. module.exports = {
  368. ledger,
  369. stage,
  370. revise,
  371. material,
  372. flow: {
  373. status,
  374. statusString,
  375. statusButton,
  376. statusButtonClass,
  377. statusClass,
  378. auditStatus,
  379. auditStatusString,
  380. auditStatusClass,
  381. },
  382. filter,
  383. pushType,
  384. advance,
  385. };