audit.js 37 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955
  1. 'use strict';
  2. /**
  3. *
  4. *
  5. * @author Mai
  6. * @date
  7. * @version
  8. */
  9. const auditType = (function () {
  10. const types = [
  11. { key: 'common', name: '个人', value: 1, short: '', long: '', class: '' },
  12. { key: 'and', name: '会签', value: 2, short: '会', long: '多人会签', class: 'primary' },
  13. { key: 'or', name: '或签', value: 3, short: '或', long: '多人或签', class: 'success' },
  14. ];
  15. const key = {};
  16. const info = [];
  17. for (const t of types) {
  18. key[t.key] = t.value;
  19. info[t.value] = t;
  20. }
  21. return { types, key, info };
  22. })();
  23. // 台账审批流程
  24. const ledger = (function() {
  25. const status = {
  26. uncheck: 1, // 待上报
  27. checking: 2, // 待审批|审批中
  28. checked: 3, // 审批通过
  29. checkNo: 4, // 审批退回
  30. checkAgain: 6, // 重新审批 // 该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  31. };
  32. const statusString = [];
  33. statusString[status.uncheck] = '';
  34. statusString[status.checking] = '审批中';
  35. statusString[status.checked] = '审批完成';
  36. statusString[status.checkNo] = '审批退回';
  37. statusString[status.checkAgain] = '重新审批';
  38. const statusClass = [];
  39. statusClass[status.uncheck] = '';
  40. statusClass[status.checking] = '';
  41. statusClass[status.checked] = 'text-success';
  42. statusClass[status.checkNo] = 'text-warning';
  43. statusClass[status.checkAgain] = 'text-warning';
  44. // 标段概况页
  45. // 描述文本
  46. const auditString = [];
  47. auditString[status.uncheck] = '';
  48. auditString[status.checking] = '审批中';
  49. auditString[status.checked] = '审批通过';
  50. auditString[status.checkNo] = '审批退回';
  51. auditString[status.checkAgain] = '重新审批';
  52. // 文字样式
  53. const auditStringClass = [];
  54. auditStringClass[status.uncheck] = '';
  55. auditStringClass[status.checking] = 'text-warning';
  56. auditStringClass[status.checked] = 'text-success';
  57. auditStringClass[status.checkNo] = 'text-warning';
  58. auditStringClass[status.checkAgain] = 'text-warning';
  59. // 金额概况
  60. const tiStatusString = [];
  61. tiStatusString[status.uncheck] = '未上报';
  62. tiStatusString[status.checking] = '审批中';
  63. tiStatusString[status.checked] = '审批通过';
  64. tiStatusString[status.checkNo] = '审批退回';
  65. tiStatusString[status.checkAgain] = '审批中';
  66. const tiStatusStringClass = [];
  67. tiStatusStringClass[status.uncheck] = '';
  68. tiStatusStringClass[status.checking] = 'text-warning';
  69. tiStatusStringClass[status.checked] = 'text-success';
  70. tiStatusStringClass[status.checkNo] = 'text-warning';
  71. tiStatusStringClass[status.checkAgain] = 'text-warning';
  72. return { status, statusString, statusClass, auditString, auditStringClass, tiStatusString, tiStatusStringClass };
  73. })();
  74. // 台账修订 审批流程
  75. const revise = (function() {
  76. const status = {
  77. uncheck: 1, // 待上报
  78. checking: 2, // 待审批|审批中
  79. checked: 3, // 审批通过
  80. checkNo: 4, // 审批退回
  81. };
  82. const statusString = [];
  83. statusString[status.uncheck] = '草稿';
  84. statusString[status.checking] = '审批中';
  85. statusString[status.checked] = '审批通过';
  86. statusString[status.checkNo] = '审批退回';
  87. const statusClass = [];
  88. statusClass[status.uncheck] = '';
  89. statusClass[status.checking] = '';
  90. statusClass[status.checked] = 'text-success';
  91. statusClass[status.checkNo] = 'text-warning';
  92. // 标段概况页
  93. // 描述文本
  94. const auditString = [];
  95. auditString[status.uncheck] = '';
  96. auditString[status.checking] = '审批中';
  97. auditString[status.checked] = '审批通过';
  98. auditString[status.checkNo] = '审批退回';
  99. // 文字样式
  100. const auditStringClass = [];
  101. auditStringClass[status.uncheck] = '';
  102. auditStringClass[status.checking] = 'text-warning';
  103. auditStringClass[status.checked] = 'text-success';
  104. auditStringClass[status.checkNo] = 'text-warning';
  105. // 描述文本
  106. const auditProgress = [];
  107. auditProgress[status.uncheck] = '草稿';
  108. auditProgress[status.checking] = '审批中';
  109. auditProgress[status.checked] = '审批通过';
  110. auditProgress[status.checkNo] = '审批退回';
  111. // 样式
  112. const auditProgressClass = [];
  113. auditProgressClass[status.uncheck] = '';
  114. auditProgressClass[status.checking] = 'text-warning';
  115. auditProgressClass[status.checked] = 'text-success';
  116. auditProgressClass[status.checkNo] = 'text-warning';
  117. return { status, statusString, statusClass, auditString, auditStringClass, auditProgress, auditProgressClass };
  118. })();
  119. // 期审批流程
  120. const stage = (function() {
  121. // 流程状态
  122. const status = {
  123. uncheck: 1, // 待上报
  124. checking: 2, // 待审批|审批中
  125. checked: 3, // 审批通过
  126. checkNo: 4, // 审批退回原报
  127. checkNoPre: 5, // 审批退回上一人
  128. checkAgain: 6, // 重新审批 // 该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  129. checkCancel: 7, // 撤回 // 该状态为上一审批人可发起,回到它到审批阶段,并同时新增一条新的审批中记录
  130. checkSkip: 8, // 跳过
  131. };
  132. // 流程状态提示
  133. const statusString = [];
  134. statusString[status.uncheck] = '待上报';
  135. statusString[status.checking] = '审批中';
  136. statusString[status.checked] = '审批通过';
  137. statusString[status.checkNo] = '审批退回';
  138. statusString[status.checkNoPre] = '审批退回';
  139. statusString[status.checkAgain] = '重新审批';
  140. statusString[status.checkCancel] = '撤回';
  141. // 流程状态样式
  142. const statusClass = [];
  143. statusClass[status.uncheck] = '';
  144. statusClass[status.checking] = '';
  145. statusClass[status.checked] = 'text-success';
  146. statusClass[status.checkNo] = 'text-warning';
  147. statusClass[status.checkNoPre] = 'text-warning';
  148. statusClass[status.checkAgain] = 'text-warning';
  149. statusClass[status.checkCancel] = 'text-warning';
  150. /**
  151. * 期列表,审批状态一列
  152. */
  153. // 按钮
  154. const statusButton = [];
  155. statusButton[status.uncheck] = '待上报';
  156. statusButton[status.checking] = '审批';
  157. statusButton[status.checked] = '';
  158. statusButton[status.checkNo] = '重新上报';
  159. statusButton[status.checkNoPre] = '重新审批';
  160. statusButton[status.checkAgain] = '重新审批';
  161. statusButton[status.checkCancel] = '撤回';
  162. // 按钮样式
  163. const statusButtonClass = [];
  164. statusButtonClass[status.uncheck] = 'btn-primary';
  165. statusButtonClass[status.checking] = 'btn-success';
  166. statusButtonClass[status.checked] = '';
  167. statusButtonClass[status.checkNo] = 'btn-warning';
  168. statusButtonClass[status.checkNoPre] = 'btn-warning';
  169. statusButtonClass[status.checkAgain] = 'btn-warning';
  170. statusButtonClass[status.checkCancel] = 'btn-warning';
  171. // 描述文本
  172. const auditString = [];
  173. auditString[status.uncheck] = '';
  174. auditString[status.checking] = '审批中';
  175. auditString[status.checked] = '审批通过';
  176. auditString[status.checkNo] = '审批退回';
  177. auditString[status.checkNoPre] = '审批退回';
  178. auditString[status.checkAgain] = '重新审批';
  179. auditString[status.checkCancel] = '撤回';
  180. auditString[status.checkSkip] = '审批通过';
  181. // 文字样式
  182. const auditStringClass = [];
  183. auditStringClass[status.uncheck] = '';
  184. auditStringClass[status.checking] = 'text-warning';
  185. auditStringClass[status.checked] = 'text-success';
  186. auditStringClass[status.checkNo] = 'text-warning';
  187. auditStringClass[status.checkNoPre] = 'text-warning';
  188. auditStringClass[status.checkAgain] = 'text-warning';
  189. auditStringClass[status.checkCancel] = 'text-warning';
  190. auditStringClass[status.checkSkip] = 'text-success';
  191. /* ------------------------------------------------------- */
  192. /**
  193. * 期列表,审批进度一列
  194. */
  195. // 描述文本
  196. const auditProgress = [];
  197. auditProgress[status.uncheck] = '待上报';
  198. auditProgress[status.checking] = '审批中';
  199. auditProgress[status.checked] = '审批通过';
  200. auditProgress[status.checkNo] = '审批退回';
  201. auditProgress[status.checkNoPre] = '审批退回';
  202. auditProgress[status.checkAgain] = '重新审批';
  203. auditProgress[status.checkCancel] = '撤回';
  204. // 样式
  205. const auditProgressClass = [];
  206. auditProgressClass[status.uncheck] = '';
  207. auditProgressClass[status.checking] = 'text-warning';
  208. auditProgressClass[status.checked] = 'text-success';
  209. auditProgressClass[status.checkNo] = 'text-warning';
  210. auditProgressClass[status.checkNoPre] = 'text-warning';
  211. auditProgressClass[status.checkAgain] = 'text-warning';
  212. auditProgressClass[status.checkCancel] = 'text-warning';
  213. /* ------------------------------------------------------- */
  214. const tiStatusString = [];
  215. tiStatusString[status.uncheck] = '待上报';
  216. tiStatusString[status.checking] = '审批中';
  217. tiStatusString[status.checked] = '审批通过';
  218. tiStatusString[status.checkNo] = '审批退回';
  219. tiStatusString[status.checkNoPre] = '审批中';
  220. tiStatusString[status.checkAgain] = '审批中';
  221. tiStatusString[status.checkCancel] = '撤回';
  222. const tiStatusStringClass = [];
  223. tiStatusStringClass[status.uncheck] = '';
  224. tiStatusStringClass[status.checking] = 'text-warning';
  225. tiStatusStringClass[status.checked] = 'text-success';
  226. tiStatusStringClass[status.checkNo] = 'text-warning';
  227. tiStatusStringClass[status.checkNoPre] = 'text-warning';
  228. tiStatusStringClass[status.checkAgain] = 'text-warning';
  229. tiStatusStringClass[status.checkCancel] = 'text-warning';
  230. const backType = {
  231. org: 1,
  232. pre: 2,
  233. };
  234. return {
  235. status, statusString, statusClass,
  236. statusButton, statusButtonClass,
  237. auditString, auditStringClass,
  238. auditProgress, auditProgressClass,
  239. backType,
  240. timesLen: 100,
  241. tiStatusString, tiStatusStringClass,
  242. };
  243. })();
  244. // 结算
  245. const settle = (function() {
  246. // 流程状态
  247. const status = {
  248. uncheck: 1, // 待上报
  249. checking: 2, // 待审批|审批中
  250. checked: 3, // 审批通过
  251. checkNo: 4, // 审批退回原报
  252. checkNoPre: 5, // 审批退回上一人
  253. checkAgain: 6, // 重新审批 // 该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  254. checkCancel: 7, // 撤回 // 该状态为上一审批人可发起,回到它到审批阶段,并同时新增一条新的审批中记录
  255. checkSkip: 8, // 跳过
  256. };
  257. // 流程状态提示
  258. const statusString = [];
  259. statusString[status.uncheck] = '待上报';
  260. statusString[status.checking] = '审批中';
  261. statusString[status.checked] = '审批通过';
  262. statusString[status.checkNo] = '审批退回';
  263. statusString[status.checkNoPre] = '审批退回';
  264. statusString[status.checkAgain] = '重新审批';
  265. statusString[status.checkCancel] = '撤回';
  266. // 流程状态样式
  267. const statusClass = [];
  268. statusClass[status.uncheck] = '';
  269. statusClass[status.checking] = '';
  270. statusClass[status.checked] = 'text-success';
  271. statusClass[status.checkNo] = 'text-warning';
  272. statusClass[status.checkNoPre] = 'text-warning';
  273. statusClass[status.checkAgain] = 'text-warning';
  274. statusClass[status.checkCancel] = 'text-warning';
  275. /**
  276. * 期列表,审批状态一列
  277. */
  278. // 按钮
  279. const statusButton = [];
  280. statusButton[status.uncheck] = '待上报';
  281. statusButton[status.checking] = '审批';
  282. statusButton[status.checked] = '';
  283. statusButton[status.checkNo] = '重新上报';
  284. statusButton[status.checkNoPre] = '重新审批';
  285. statusButton[status.checkAgain] = '重新审批';
  286. statusButton[status.checkCancel] = '撤回';
  287. // 按钮样式
  288. const statusButtonClass = [];
  289. statusButtonClass[status.uncheck] = 'btn-primary';
  290. statusButtonClass[status.checking] = 'btn-success';
  291. statusButtonClass[status.checked] = '';
  292. statusButtonClass[status.checkNo] = 'btn-warning';
  293. statusButtonClass[status.checkNoPre] = 'btn-warning';
  294. statusButtonClass[status.checkAgain] = 'btn-warning';
  295. statusButtonClass[status.checkCancel] = 'btn-warning';
  296. // 描述文本
  297. const auditString = [];
  298. auditString[status.uncheck] = '';
  299. auditString[status.checking] = '审批中';
  300. auditString[status.checked] = '审批通过';
  301. auditString[status.checkNo] = '审批退回';
  302. auditString[status.checkNoPre] = '审批退回';
  303. auditString[status.checkAgain] = '重新审批';
  304. auditString[status.checkCancel] = '撤回';
  305. auditString[status.checkSkip] = '审批通过';
  306. // 文字样式
  307. const auditStringClass = [];
  308. auditStringClass[status.uncheck] = '';
  309. auditStringClass[status.checking] = 'text-warning';
  310. auditStringClass[status.checked] = 'text-success';
  311. auditStringClass[status.checkNo] = 'text-warning';
  312. auditStringClass[status.checkNoPre] = 'text-warning';
  313. auditStringClass[status.checkAgain] = 'text-warning';
  314. auditStringClass[status.checkCancel] = 'text-warning';
  315. auditStringClass[status.checkSkip] = 'text-success';
  316. /* ------------------------------------------------------- */
  317. /**
  318. * 期列表,审批进度一列
  319. */
  320. // 描述文本
  321. const auditProgress = [];
  322. auditProgress[status.uncheck] = '待上报';
  323. auditProgress[status.checking] = '审批中';
  324. auditProgress[status.checked] = '审批通过';
  325. auditProgress[status.checkNo] = '审批退回';
  326. auditProgress[status.checkNoPre] = '审批退回';
  327. auditProgress[status.checkAgain] = '重新审批';
  328. auditProgress[status.checkCancel] = '撤回';
  329. // 样式
  330. const auditProgressClass = [];
  331. auditProgressClass[status.uncheck] = '';
  332. auditProgressClass[status.checking] = 'text-warning';
  333. auditProgressClass[status.checked] = 'text-success';
  334. auditProgressClass[status.checkNo] = 'text-warning';
  335. auditProgressClass[status.checkNoPre] = 'text-warning';
  336. auditProgressClass[status.checkAgain] = 'text-warning';
  337. auditProgressClass[status.checkCancel] = 'text-warning';
  338. /* ------------------------------------------------------- */
  339. const tiStatusString = [];
  340. tiStatusString[status.uncheck] = '待上报';
  341. tiStatusString[status.checking] = '审批中';
  342. tiStatusString[status.checked] = '审批通过';
  343. tiStatusString[status.checkNo] = '审批退回';
  344. tiStatusString[status.checkNoPre] = '审批中';
  345. tiStatusString[status.checkAgain] = '审批中';
  346. tiStatusString[status.checkCancel] = '撤回';
  347. const tiStatusStringClass = [];
  348. tiStatusStringClass[status.uncheck] = '';
  349. tiStatusStringClass[status.checking] = 'text-warning';
  350. tiStatusStringClass[status.checked] = 'text-success';
  351. tiStatusStringClass[status.checkNo] = 'text-warning';
  352. tiStatusStringClass[status.checkNoPre] = 'text-warning';
  353. tiStatusStringClass[status.checkAgain] = 'text-warning';
  354. tiStatusStringClass[status.checkCancel] = 'text-warning';
  355. const backType = {
  356. org: 1,
  357. pre: 2,
  358. };
  359. return {
  360. status, statusString, statusClass,
  361. statusButton, statusButtonClass,
  362. auditString, auditStringClass,
  363. auditProgress, auditProgressClass,
  364. backType,
  365. timesLen: 100,
  366. tiStatusString, tiStatusStringClass,
  367. };
  368. })();
  369. // 变更令状态
  370. const status = {
  371. uncheck: 1, // 待上报
  372. checking: 2, // 审批中
  373. checked: 3, // 审批完成
  374. // checkNo: 4, // 审批终止
  375. back: 5, // 重新上报
  376. backnew: 6, // 退回
  377. revise: 9, // 修订变更
  378. checkCancel: 11, // 撤回 // 该状态为上一审批人可发起,回到它到审批阶段,并同时新增一条新的审批中记录
  379. };
  380. const statusButton = [];
  381. statusButton[status.uncheck] = '上报';
  382. statusButton[status.checking] = '审批';
  383. statusButton[status.checked] = '';
  384. // statusButton[status.checkNo] = '';
  385. statusButton[status.back] = '重新上报';
  386. statusButton[status.backnew] = '审批';
  387. statusButton[status.revise] = '修订';
  388. statusButton[status.checkCancel] = '撤回';
  389. const statusButtonClass = [];
  390. statusButtonClass[status.uncheck] = 'btn-primary';
  391. statusButtonClass[status.checking] = 'btn-success';
  392. statusButtonClass[status.checked] = '';
  393. // statusButtonClass[status.checkNo] = '';
  394. statusButtonClass[status.back] = 'btn-warning';
  395. statusButtonClass[status.backnew] = 'btn-success';
  396. statusButtonClass[status.revise] = 'btn-warning';
  397. statusButtonClass[status.checkCancel] = 'btn-warning';
  398. const statusString = [];
  399. statusString[status.uncheck] = '未上报';
  400. statusString[status.checking] = '审批中';
  401. statusString[status.checked] = '审批通过';
  402. // statusString[status.checkNo] = '终止';
  403. statusString[status.back] = '审批退回';
  404. statusString[status.backnew] = '审批退回';
  405. statusString[status.revise] = '修订中';
  406. statusString[status.checkCancel] = '撤回';
  407. const statusClass = [];
  408. statusClass[status.uncheck] = '';
  409. statusClass[status.checking] = 'text-warning';
  410. statusClass[status.checked] = 'text-success';
  411. // statusClass[status.checkNo] = 'text-danger';
  412. statusClass[status.back] = 'text-warning';
  413. statusClass[status.backnew] = 'text-warning';
  414. statusClass[status.revise] = 'text-warning';
  415. statusClass[status.checkCancel] = 'text-warning';
  416. /* ------------------------------------------------------- */
  417. // 变更令审批人状态
  418. const auditStatus = {
  419. uncheck: 1, // 待审批
  420. checking: 2, // 审批中或者原报人待上报或者原报上报修订中
  421. checked: 3, // 审批通过或者原报人上报完成
  422. // checkNo: 4, // 审批终止
  423. back: 5, // 退回到原报人重新上报
  424. backnew: 6, // 退回到上一个审批人
  425. checkAgain: 7, // 重新审批
  426. revise: 9, // 修订变更
  427. cancelRevise: 10, // 撤销修订
  428. checkCancel: 11, // 撤回 // 该状态为上一审批人可发起,回到它到审批阶段,并同时新增一条新的审批中记录
  429. };
  430. const auditStatusString = [];
  431. auditStatusString[auditStatus.uncheck] = '待上报';
  432. auditStatusString[auditStatus.checking] = '审批中';
  433. auditStatusString[auditStatus.checked] = '审批通过';
  434. // auditStatusString[auditStatus.checkNo] = '审批终止';
  435. auditStatusString[auditStatus.back] = '退回';
  436. auditStatusString[auditStatus.backnew] = '审批退回';
  437. auditStatusString[auditStatus.checkAgain] = '重新审批';
  438. auditStatusString[auditStatus.revise] = '修订变更';
  439. auditStatusString[auditStatus.cancelRevise] = '撤销修订';
  440. auditStatusString[auditStatus.checkCancel] = '撤回';
  441. const auditStatusClass = [];
  442. auditStatusClass[auditStatus.uncheck] = '';
  443. auditStatusClass[auditStatus.checking] = 'text-warning';
  444. auditStatusClass[auditStatus.checked] = 'text-success';
  445. // auditStatusClass[auditStatus.checkNo] = 'text-danger';
  446. auditStatusClass[auditStatus.back] = 'text-warning';
  447. auditStatusClass[auditStatus.backnew] = 'text-warning';
  448. auditStatusClass[auditStatus.checkAgain] = 'text-warning';
  449. auditStatusClass[auditStatus.revise] = 'text-warning';
  450. auditStatusClass[auditStatus.cancelRevise] = 'text-success';
  451. auditStatusClass[auditStatus.checkCancel] = 'text-warning';
  452. /* ------------------------------------------------------- */
  453. const filter = {
  454. status: {
  455. pending: 1,
  456. uncheck: 5,
  457. checking: 2,
  458. checked: 3,
  459. // checkNo: 4,
  460. },
  461. statusString: [],
  462. };
  463. filter.statusString[filter.status.pending] = '待处理';
  464. filter.statusString[filter.status.uncheck] = '待上报';
  465. filter.statusString[filter.status.checking] = '进行中';
  466. filter.statusString[filter.status.checked] = '已完成';
  467. // filter.statusString[filter.status.checkNo] = '终止';
  468. // 材料调差审批流程
  469. const material = (function() {
  470. const status = {
  471. uncheck: 1, // 待上报
  472. checking: 2, // 待审批|审批中
  473. checked: 3, // 审批通过
  474. checkNo: 4, // 审批退回原报
  475. checkNoPre: 5, // 审批退回上一人
  476. checkAgain: 6, // 终审退回 --该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  477. };
  478. // 流程状态提示
  479. const statusString = [];
  480. statusString[status.uncheck] = '待上报';
  481. statusString[status.checking] = '审批中';
  482. statusString[status.checked] = '审批通过';
  483. statusString[status.checkNo] = '审批退回';
  484. statusString[status.checkNoPre] = '审批退回';
  485. statusString[status.checkAgain] = '重新审批';
  486. // 流程状态样式
  487. const statusClass = [];
  488. statusClass[status.uncheck] = '';
  489. statusClass[status.checking] = '';
  490. statusClass[status.checked] = 'text-success';
  491. statusClass[status.checkNo] = 'text-warning';
  492. statusClass[status.checkNoPre] = 'text-warning';
  493. statusClass[status.checkAgain] = 'text-warning';
  494. // 按钮
  495. const statusButton = [];
  496. statusButton[status.uncheck] = '待上报';
  497. statusButton[status.checking] = '审批';
  498. statusButton[status.checked] = '';
  499. statusButton[status.checkNo] = '重新上报';
  500. // 按钮样式
  501. const statusButtonClass = [];
  502. statusButtonClass[status.uncheck] = 'btn-primary';
  503. statusButtonClass[status.checking] = 'btn-success';
  504. statusButtonClass[status.checked] = '';
  505. statusButtonClass[status.checkNo] = 'btn-warning';
  506. // 描述文本
  507. const auditProgress = [];
  508. auditProgress[status.uncheck] = '待上报';
  509. auditProgress[status.checking] = '审批中';
  510. auditProgress[status.checked] = '审批通过';
  511. auditProgress[status.checkNo] = '审批退回';
  512. // 样式
  513. const auditProgressClass = [];
  514. auditProgressClass[status.uncheck] = '';
  515. auditProgressClass[status.checking] = 'text-warning';
  516. auditProgressClass[status.checked] = 'text-success';
  517. auditProgressClass[status.checkNo] = 'text-warning';
  518. return { status, statusString, statusClass, statusButton, statusButtonClass, auditProgress, auditProgressClass };
  519. })();
  520. // 预付款审批流程
  521. const advance = (function() {
  522. const type = {
  523. start: 0,
  524. material: 1,
  525. };
  526. const status = {
  527. uncheck: 1, // 待上报
  528. checking: 2, // 待审批|审批中
  529. checked: 3, // 审批通过
  530. checkNo: 4, // 审批退回原报
  531. checkNoPre: 5, // 审批退回上一人
  532. };
  533. const statusString = [];
  534. statusString[status.uncheck] = '未上报';
  535. statusString[status.checking] = '审批中';
  536. statusString[status.checked] = '审批通过';
  537. statusString[status.checkNo] = '审批退回';
  538. statusString[status.checkNoPre] = '审批退回';
  539. const statusClass = [];
  540. statusClass[status.uncheck] = '';
  541. statusClass[status.checking] = 'text-warning';
  542. statusClass[status.checked] = 'text-success';
  543. statusClass[status.checkNo] = 'text-warning';
  544. statusClass[status.checkNoPre] = 'text-warning';
  545. // 标段概况页
  546. // 描述文本
  547. const auditString = [];
  548. auditString[status.uncheck] = '';
  549. auditString[status.checking] = '审批中';
  550. auditString[status.checked] = '审批通过';
  551. auditString[status.checkNo] = '审批退回';
  552. // 文字样式
  553. const auditStringClass = [];
  554. auditStringClass[status.uncheck] = '';
  555. auditStringClass[status.checking] = 'text-warning';
  556. auditStringClass[status.checked] = 'text-success';
  557. auditStringClass[status.checkNo] = 'text-warning';
  558. return { type, status, statusString, statusClass, auditString, auditStringClass };
  559. })();
  560. // 变更立项 审批流程
  561. const changeProject = (function() {
  562. const status = {
  563. uncheck: 1, // 待上报
  564. checking: 2, // 待审批|审批中
  565. checked: 3, // 审批通过
  566. checkNo: 4, // 审批终止
  567. back: 5, // 退回到原报人重新上报
  568. checkAgain: 6, // 终审退回 --该状态仅可用于,终审退回时,修改原终审的审批状态,并同时新增一条新的终审审批中记录
  569. revise: 7, // 修订变更
  570. cancelRevise: 8, // 撤销修订
  571. checkCancel: 9, // 撤回
  572. };
  573. const statusString = [];
  574. statusString[status.uncheck] = '待上报';
  575. statusString[status.checking] = '审批中';
  576. statusString[status.checked] = '审批通过';
  577. statusString[status.checkNo] = '终止';
  578. statusString[status.back] = '审批退回';
  579. statusString[status.revise] = '修订';
  580. statusString[status.cancelRevise] = '撤销修订';
  581. statusString[status.checkCancel] = '撤回';
  582. const statusClass = [];
  583. statusClass[status.uncheck] = '';
  584. statusClass[status.checking] = 'text-warning';
  585. statusClass[status.checked] = 'text-success';
  586. statusClass[status.checkNo] = 'text-danger';
  587. statusClass[status.back] = 'text-warning';
  588. statusClass[status.revise] = 'text-warning';
  589. statusClass[status.cancelRevise] = 'text-success';
  590. statusClass[status.checkCancel] = 'text-warning';
  591. // 标段概况页
  592. // 描述文本
  593. const auditString = [];
  594. auditString[status.uncheck] = '';
  595. auditString[status.checking] = '审批中';
  596. auditString[status.checked] = '审批通过';
  597. auditString[status.checkNo] = '终止';
  598. auditString[status.back] = '审批退回';
  599. auditString[status.revise] = '修订';
  600. auditString[status.cancelRevise] = '撤销修订';
  601. auditString[status.checkCancel] = '撤回';
  602. // 文字样式
  603. const auditStringClass = [];
  604. auditStringClass[status.uncheck] = '';
  605. auditStringClass[status.checking] = 'text-warning';
  606. auditStringClass[status.checked] = 'text-success';
  607. auditStringClass[status.checkNo] = 'text-danger';
  608. auditStringClass[status.back] = 'text-warning';
  609. auditStringClass[status.revise] = 'text-warning';
  610. auditStringClass[status.cancelRevise] = 'text-success';
  611. auditStringClass[status.checkCancel] = 'text-warning';
  612. // 描述文本
  613. const auditProgress = [];
  614. auditProgress[status.uncheck] = '草稿';
  615. auditProgress[status.checking] = '审批中';
  616. auditProgress[status.checked] = '审批通过';
  617. auditProgress[status.checkNo] = '终止';
  618. auditProgress[status.back] = '审批退回';
  619. auditProgress[status.revise] = '修订中';
  620. auditProgress[status.cancelRevise] = '撤销修订';
  621. auditProgress[status.checkCancel] = '撤回';
  622. // 样式
  623. const auditProgressClass = [];
  624. auditProgressClass[status.uncheck] = '';
  625. auditProgressClass[status.checking] = 'text-warning';
  626. auditProgressClass[status.checked] = 'text-success';
  627. auditProgressClass[status.checkNo] = 'text-danger';
  628. auditProgressClass[status.back] = 'text-warning';
  629. auditProgressClass[status.revise] = 'text-warning';
  630. auditProgressClass[status.cancelRevise] = 'text-success';
  631. auditProgressClass[status.checkCancel] = 'text-warning';
  632. const filter = {
  633. status: {
  634. pending: 1,
  635. uncheck: 5,
  636. checking: 2,
  637. checked: 3,
  638. checkNo: 4,
  639. },
  640. statusString: [],
  641. };
  642. filter.statusString[filter.status.pending] = '待处理';
  643. filter.statusString[filter.status.uncheck] = '待上报';
  644. filter.statusString[filter.status.checking] = '进行中';
  645. filter.statusString[filter.status.checked] = '已通过';
  646. filter.statusString[filter.status.checkNo] = '终止';
  647. // 按钮
  648. const statusButton = [];
  649. statusButton[status.uncheck] = '上报';
  650. statusButton[status.checking] = '审批';
  651. statusButton[status.checked] = '';
  652. statusButton[status.checkNo] = '';
  653. statusButton[status.back] = '重新上报';
  654. statusButton[status.revise] = '修订';
  655. // 按钮样式
  656. const statusButtonClass = [];
  657. statusButtonClass[status.uncheck] = 'btn-primary';
  658. statusButtonClass[status.checking] = 'btn-success';
  659. statusButtonClass[status.checked] = '';
  660. statusButtonClass[status.checkNo] = '';
  661. statusButtonClass[status.back] = 'btn-warning';
  662. statusButtonClass[status.revise] = 'btn-warning';
  663. return { status, statusString, statusClass, auditString, auditStringClass, auditProgress, auditProgressClass, filter, statusButton, statusButtonClass };
  664. })();
  665. // 变更申请 审批流程
  666. const changeApply = (function() {
  667. const status = {
  668. uncheck: 1, // 待上报
  669. checking: 2, // 待审批|审批中
  670. checked: 3, // 审批通过
  671. checkNo: 4, // 退回到原报人重新上报
  672. checkAgain: 6,
  673. revise: 7, // 修订变更
  674. cancelRevise: 8, // 撤销修订
  675. checkCancel: 9, // 撤回
  676. };
  677. const statusString = [];
  678. statusString[status.uncheck] = '待上报';
  679. statusString[status.checking] = '审批中';
  680. statusString[status.checked] = '审批通过';
  681. statusString[status.checkNo] = '审批退回';
  682. statusString[status.revise] = '修订';
  683. statusString[status.cancelRevise] = '撤销修订';
  684. statusString[status.checkCancel] = '撤回';
  685. const statusClass = [];
  686. statusClass[status.uncheck] = '';
  687. statusClass[status.checking] = 'text-warning';
  688. statusClass[status.checked] = 'text-success';
  689. statusClass[status.checkNo] = 'text-warning';
  690. statusClass[status.revise] = 'text-warning';
  691. statusClass[status.cancelRevise] = 'text-success';
  692. statusClass[status.checkCancel] = 'text-warning';
  693. // 标段概况页
  694. // 描述文本
  695. const auditString = [];
  696. auditString[status.uncheck] = '';
  697. auditString[status.checking] = '审批中';
  698. auditString[status.checked] = '审批通过';
  699. auditString[status.checkNo] = '审批退回';
  700. auditString[status.revise] = '修订';
  701. auditString[status.cancelRevise] = '撤销修订';
  702. auditString[status.checkCancel] = '撤回';
  703. // 文字样式
  704. const auditStringClass = [];
  705. auditStringClass[status.uncheck] = '';
  706. auditStringClass[status.checking] = 'text-warning';
  707. auditStringClass[status.checked] = 'text-success';
  708. auditStringClass[status.checkNo] = 'text-warning';
  709. auditStringClass[status.revise] = 'text-warning';
  710. auditStringClass[status.cancelRevise] = 'text-success';
  711. auditStringClass[status.checkCancel] = 'text-warning';
  712. // 描述文本
  713. const auditProgress = [];
  714. auditProgress[status.uncheck] = '草稿';
  715. auditProgress[status.checking] = '审批中';
  716. auditProgress[status.checked] = '审批通过';
  717. auditProgress[status.checkNo] = '审批退回';
  718. auditProgress[status.revise] = '修订中';
  719. auditProgress[status.cancelRevise] = '撤销修订';
  720. auditProgress[status.checkCancel] = '撤回';
  721. // 样式
  722. const auditProgressClass = [];
  723. auditProgressClass[status.uncheck] = '';
  724. auditProgressClass[status.checking] = 'text-warning';
  725. auditProgressClass[status.checked] = 'text-success';
  726. auditProgressClass[status.checkNo] = 'text-warning';
  727. auditProgressClass[status.revise] = 'text-warning';
  728. auditProgressClass[status.cancelRevise] = 'text-success';
  729. auditProgressClass[status.checkCancel] = 'text-warning';
  730. const filter = {
  731. status: {
  732. pending: 1,
  733. uncheck: 5,
  734. checking: 2,
  735. checked: 3,
  736. // checkNo: 4,
  737. },
  738. statusString: [],
  739. };
  740. filter.statusString[filter.status.pending] = '待处理';
  741. filter.statusString[filter.status.uncheck] = '待上报';
  742. filter.statusString[filter.status.checking] = '进行中';
  743. filter.statusString[filter.status.checked] = '已通过';
  744. // filter.statusString[filter.status.checkNo] = '终止';
  745. // 按钮
  746. const statusButton = [];
  747. statusButton[status.uncheck] = '上报';
  748. statusButton[status.checking] = '审批';
  749. statusButton[status.checked] = '';
  750. statusButton[status.checkNo] = '重新上报';
  751. statusButton[status.revise] = '修订';
  752. // 按钮样式
  753. const statusButtonClass = [];
  754. statusButtonClass[status.uncheck] = 'btn-primary';
  755. statusButtonClass[status.checking] = 'btn-success';
  756. statusButtonClass[status.checked] = '';
  757. statusButtonClass[status.checkNo] = 'btn-warning';
  758. statusButtonClass[status.revise] = 'btn-warning';
  759. return { status, statusString, statusClass, auditString, auditStringClass, auditProgress, auditProgressClass, filter, statusButton, statusButtonClass };
  760. })();
  761. // 变更方案 审批流程
  762. const changePlan = (function() {
  763. const status = {
  764. uncheck: 1, // 待上报
  765. checking: 2, // 待审批|审批中
  766. checked: 3, // 审批通过
  767. checkNo: 4, // 退回到原报人重新上报
  768. checkAgain: 6,
  769. revise: 7, // 修订变更
  770. cancelRevise: 8, // 撤销修订
  771. checkCancel: 9, // 撤回
  772. };
  773. const statusString = [];
  774. statusString[status.uncheck] = '待上报';
  775. statusString[status.checking] = '审批中';
  776. statusString[status.checked] = '审批通过';
  777. statusString[status.checkNo] = '审批退回';
  778. statusString[status.revise] = '修订';
  779. statusString[status.cancelRevise] = '撤销修订';
  780. statusString[status.checkCancel] = '撤回';
  781. const statusClass = [];
  782. statusClass[status.uncheck] = '';
  783. statusClass[status.checking] = 'text-warning';
  784. statusClass[status.checked] = 'text-success';
  785. statusClass[status.checkNo] = 'text-warning';
  786. statusClass[status.revise] = 'text-warning';
  787. statusClass[status.cancelRevise] = 'text-success';
  788. statusClass[status.checkCancel] = 'text-warning';
  789. // 标段概况页
  790. // 描述文本
  791. const auditString = [];
  792. auditString[status.uncheck] = '';
  793. auditString[status.checking] = '审批中';
  794. auditString[status.checked] = '审批通过';
  795. auditString[status.checkNo] = '审批退回';
  796. auditString[status.revise] = '修订';
  797. auditString[status.cancelRevise] = '撤销修订';
  798. auditString[status.checkCancel] = '撤回';
  799. // 文字样式
  800. const auditStringClass = [];
  801. auditStringClass[status.uncheck] = '';
  802. auditStringClass[status.checking] = 'text-warning';
  803. auditStringClass[status.checked] = 'text-success';
  804. auditStringClass[status.checkNo] = 'text-warning';
  805. auditStringClass[status.revise] = 'text-warning';
  806. auditStringClass[status.cancelRevise] = 'text-success';
  807. auditStringClass[status.checkCancel] = 'text-warning';
  808. // 描述文本
  809. const auditProgress = [];
  810. auditProgress[status.uncheck] = '草稿';
  811. auditProgress[status.checking] = '审批中';
  812. auditProgress[status.checked] = '审批通过';
  813. auditProgress[status.checkNo] = '审批退回';
  814. auditProgress[status.revise] = '修订中';
  815. auditProgress[status.cancelRevise] = '撤销修订';
  816. auditProgress[status.checkCancel] = '撤回';
  817. // 样式
  818. const auditProgressClass = [];
  819. auditProgressClass[status.uncheck] = '';
  820. auditProgressClass[status.checking] = 'text-warning';
  821. auditProgressClass[status.checked] = 'text-success';
  822. auditProgressClass[status.checkNo] = 'text-warning';
  823. auditProgressClass[status.revise] = 'text-warning';
  824. auditProgressClass[status.cancelRevise] = 'text-success';
  825. auditProgressClass[status.checkCancel] = 'text-warning';
  826. const filter = {
  827. status: {
  828. pending: 1,
  829. uncheck: 5,
  830. checking: 2,
  831. checked: 3,
  832. // checkNo: 4,
  833. },
  834. statusString: [],
  835. };
  836. filter.statusString[filter.status.pending] = '待处理';
  837. filter.statusString[filter.status.uncheck] = '待上报';
  838. filter.statusString[filter.status.checking] = '进行中';
  839. filter.statusString[filter.status.checked] = '已通过';
  840. // filter.statusString[filter.status.checkNo] = '终止';
  841. // 按钮
  842. const statusButton = [];
  843. statusButton[status.uncheck] = '上报';
  844. statusButton[status.checking] = '审批';
  845. statusButton[status.checked] = '';
  846. statusButton[status.checkNo] = '重新上报';
  847. statusButton[status.revise] = '修订';
  848. // 按钮样式
  849. const statusButtonClass = [];
  850. statusButtonClass[status.uncheck] = 'btn-primary';
  851. statusButtonClass[status.checking] = 'btn-success';
  852. statusButtonClass[status.checked] = '';
  853. statusButtonClass[status.checkNo] = 'btn-warning';
  854. statusButtonClass[status.revise] = 'btn-warning';
  855. return { status, statusString, statusClass, auditString, auditStringClass, auditProgress, auditProgressClass, filter, statusButton, statusButtonClass };
  856. })();
  857. // 推送类型
  858. const pushType = {
  859. material: 1,
  860. stage: 2,
  861. change: 3,
  862. revise: 4,
  863. ledger: 5,
  864. advance: 6,
  865. changeProject: 7,
  866. changeApply: 8,
  867. changePlan: 9,
  868. };
  869. module.exports = {
  870. auditType,
  871. ledger,
  872. stage,
  873. settle,
  874. revise,
  875. material,
  876. flow: {
  877. status,
  878. statusString,
  879. statusButton,
  880. statusButtonClass,
  881. statusClass,
  882. auditStatus,
  883. auditStatusString,
  884. auditStatusClass,
  885. },
  886. filter,
  887. pushType,
  888. advance,
  889. changeProject,
  890. changeApply,
  891. changePlan,
  892. };