bills_lib_ajax.js 23 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632
  1. /**
  2. * Created by vian on 2017/3/27.
  3. */
  4. var mainAjax = {
  5. //获取编办
  6. getCompilationList: function () {
  7. $.ajax({
  8. type: 'post',
  9. url: '/stdBillsEditor/getCompilationList',
  10. dataType: 'json',
  11. success: function (result) {
  12. //addoptions
  13. for(let i = 0; i < result.data.length; i++){
  14. let $option = $("<option >"+ result.data[i].name +"</option>");
  15. $option.val( result.data[i]._id);
  16. $('#compilationSels').append($option);
  17. }
  18. $('#compilationSels').on("change", function () {
  19. });
  20. }
  21. });
  22. },
  23. getMaxNumber: function(billsLibId, field, callback){
  24. $.ajax({
  25. type: 'post',
  26. url: '/stdBillsEditor/getMaxNumber',
  27. data: {data: JSON.stringify({billsLibId: billsLibId, field: field})},
  28. dataType: 'json',
  29. success: function(result){
  30. if(!result.error){
  31. if(callback){
  32. callback(result.data);
  33. }
  34. }
  35. }
  36. });
  37. },
  38. getABillsLib: function(billsLibId, callback){
  39. $.ajax({
  40. type: 'post',
  41. url: '/stdBillsEditor/getABillsLib',
  42. data: {data: JSON.stringify({billsLibId: billsLibId})},
  43. dataType: 'json',
  44. success: function(result){
  45. if(!result.error){
  46. if(callback){
  47. callback(result.data);
  48. }
  49. }
  50. }
  51. });
  52. },
  53. getLibsHtml: function (data) {
  54. const libHtml = data.reduce((acc, libData) => {
  55. const id = libData.billsLibId;
  56. const billsLibName = libData.billsLibName;
  57. const createDateFmt = new Date(libData.createDate).format("yyyy-MM-dd");
  58. const html =
  59. `<tr id="${id}">
  60. <td><a href="/stdBills?billsLibId=${id}">${billsLibName}</a></td>
  61. <td>${createDateFmt}</td>
  62. <td>
  63. <a href="javascript:void(0);" data-toggle="modal" data-target="#edit" title="编辑"><i class="fa fa-pencil-square-o"></i></a>
  64. <a href="javascript:void(0);" class="text-danger" data-toggle="modal" data-target="#del" title="删除"><i class="fa fa-remove"></i></a>
  65. </td>
  66. <td>
  67. <a href="javascript:void(0);" class="btn btn-secondary btn-sm import-data" data-id="${id}" title="导入数据"><i class="fa fa-sign-in fa-rotate-90"></i>导入</a>
  68. </td>
  69. <td>
  70. <a href="javascript:void(0);" class="btn btn-secondary btn-sm copy-data" data-id="${id}" title="复制数据"><i class="fa fa-clone"></i>复制</a>
  71. </td>
  72. </tr>`;
  73. return acc += html;
  74. }, '');
  75. return libHtml;
  76. },
  77. getStdBillsLib: function(){
  78. const me = this;
  79. $.ajax({
  80. type: "post",
  81. url: "/stdBillsEditor/getStdBillsLib",
  82. dataType: "json",
  83. success: function(result){
  84. if(result.data){
  85. $('#showArea').append(me.getLibsHtml(result.data));
  86. }
  87. }
  88. });
  89. },
  90. createStdBillsLib: function(userAccount, billsLibName){
  91. const me = this;
  92. $.ajax({
  93. type: "POST",
  94. url: "/stdBillsEditor/createStdBillsLib",
  95. data: {data: JSON.stringify({userAccount: userAccount, name: billsLibName}) },
  96. dataType: "json",
  97. success: function(result){
  98. if(!result.error){
  99. $('#showArea').append(me.getLibsHtml(result.data));
  100. $('#add').modal('hide');
  101. }
  102. }
  103. });
  104. },
  105. copyBillsLib: function (libId, libName) {
  106. const me = this;
  107. $.ajax({
  108. type: 'post',
  109. url: '/stdBillsEditor/copyStdBillsLib',
  110. data: {data: JSON.stringify({libId, libName})},
  111. dataType: 'json',
  112. timeout: 150000,
  113. beforeSend: function () {
  114. $('#copy').modal('hide');
  115. $.bootstrapLoading.start();
  116. },
  117. success: function (result) {
  118. if (!result.error) {
  119. $('#showArea').append(me.getLibsHtml(result.data));
  120. }
  121. },
  122. complete: function () {
  123. $.bootstrapLoading.end();
  124. }
  125. });
  126. },
  127. deleteStdBillsLib: function(lastOperator, billsLibId){
  128. $.ajax({
  129. type: "POST",
  130. url: "/stdBillsEditor/deleteStdBillsLib",
  131. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId})},
  132. dataType: "json",
  133. success: function(result){
  134. if(!result.error){
  135. var jqSel = "#"+billsLibId;
  136. $(jqSel).remove();
  137. $('#del').modal('hide');
  138. }
  139. }
  140. });
  141. },
  142. renameStdBillsLib: function(lastOperator, billsLibId, newName){
  143. $.ajax({
  144. type: "post",
  145. url: "/stdBillsEditor/renameStdbillsLib",
  146. data: {data: JSON.stringify({lastOperator: lastOperator, id: billsLibId, value: newName})},
  147. dataType: "json",
  148. success: function(result){
  149. if(!result.error){
  150. var jqSel = "#" + billsLibId + " td:first" + " a";
  151. $(jqSel).text(newName);
  152. }
  153. }
  154. });
  155. },
  156. getCurrentUniqId: function (callback) {
  157. $.ajax({
  158. type: 'post',
  159. url: 'stdBillsEditor/getCurrentUniqId',
  160. dataType: 'json',
  161. success: function(result){
  162. if(!result.error && callback){
  163. callback(result.data);
  164. }
  165. }
  166. });
  167. }
  168. }
  169. var billsAjax = {
  170. getStdBillsLibName: function(billsLibId) {
  171. $.ajax({
  172. type: "post",
  173. url: "/stdBillsEditor/getStdBillsLibName",
  174. data: {data: JSON.stringify({billsLibId: billsLibId})},
  175. success: function(result){
  176. if(!result.error){
  177. $(".navbar-text").append(
  178. "<a href='stdBillsmain'>清单规则</a><i class='fa fa-angle-right fa-fw'></i>"+result.data[0].billsLibName
  179. );
  180. }
  181. }
  182. });
  183. },
  184. getBills: function(billsLibId, callback){
  185. $.ajax({
  186. type: "post",
  187. url: "/stdBillsEditor/getBills",
  188. data: {data: JSON.stringify({billsLibId: billsLibId})},
  189. dataType: "json",
  190. beforeSend: function () {
  191. $.bootstrapLoading.start();
  192. },
  193. success: function(result){
  194. if(!result.error){
  195. if(callback) {
  196. callback(result.data);
  197. }
  198. }
  199. },
  200. complete: function () {
  201. $.bootstrapLoading.end();
  202. }
  203. });
  204. },
  205. createBills: function(lastOperator, billsLibId, newId, pid, nid, updatePreData, sectionInfo, callback){
  206. $.ajax({
  207. type: 'post',
  208. url: 'stdBillsEditor/createBills',
  209. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, newId: newId, ParentID: pid, NextSiblingID: nid, updatePreData: updatePreData, sectionInfo: sectionInfo})},
  210. dataType: 'json',
  211. success: function(result){
  212. if(!result.error){
  213. if(callback){
  214. callback();
  215. }
  216. }
  217. }
  218. });
  219. },
  220. upMove: function(lastOperator, billsLibId, updateDatas, callback){
  221. $.ajax({
  222. type: 'post',
  223. url: 'stdBillsEditor/upMove',
  224. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
  225. dataType: 'json',
  226. success: function(result){
  227. if(!result.error && callback){
  228. callback();
  229. }
  230. }
  231. });
  232. },
  233. downMove: function (lastOperator, billsLibId, updateDatas, callback) {
  234. $.ajax({
  235. type: 'post',
  236. url: 'stdBillsEditor/downMove',
  237. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
  238. dataType: 'json',
  239. success: function(result){
  240. if(!result.error && callback){
  241. callback();
  242. }
  243. }
  244. })
  245. },
  246. updatePNId: function(billsLibId, updateData, callback){
  247. $.ajax({
  248. type: 'post',
  249. url: 'stdBillsEditor/updatePNId',
  250. data: {data: JSON.stringify({billsLibId: billsLibId, updateData: updateData})},
  251. dataType: 'json',
  252. success: function(result){
  253. console.log(`entersFuc`);
  254. if(!result.error && callback){
  255. console.log(`enterSc`);
  256. callback();
  257. }
  258. else {
  259. //提示窗口:更新失败
  260. }
  261. },
  262. error: function(){
  263. console.log(`error`);
  264. }
  265. });
  266. },
  267. upLevel: function(lastOperator, billsLibId, updateDatas, callback){
  268. $.ajax({
  269. type: 'post',
  270. url: 'stdBillsEditor/upLevel',
  271. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
  272. dataType: 'json',
  273. success: function (result) {
  274. if(!result.error && callback){
  275. callback();
  276. }
  277. }
  278. })
  279. },
  280. downLevel: function (lastOperator, billsLibId, updateDatas, callback) {
  281. $.ajax({
  282. type: 'post',
  283. url: 'stdBillsEditor/downLevel',
  284. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas})},
  285. dataType: 'json',
  286. success: function (result) {
  287. if(!result.error && callback){
  288. callback();
  289. }
  290. }
  291. })
  292. },
  293. deleteBills: function(lastOperator, billsLibId, deleteIds, updateNode, callback){
  294. $.ajax({
  295. type: 'post',
  296. url: 'stdBillsEditor/deleteBills',
  297. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, deleteIds: deleteIds, updateNode: updateNode})},
  298. dataType: 'json',
  299. success: function(result){
  300. if(!result.error){
  301. console.log(result.message);
  302. if(callback){
  303. callback();
  304. }
  305. }
  306. }
  307. });
  308. },
  309. updateBills: function(lastOperator, billsLibId, updateId, field, data){
  310. $.ajax({
  311. type: 'post',
  312. url: 'stdBillsEditor/updateBills',
  313. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: updateId, field: field, data: data})},
  314. dataType: 'json',
  315. success: function(result){
  316. }
  317. });
  318. },
  319. updateSectionInfo: function(data, callback){
  320. $.ajax({
  321. type: 'post',
  322. url: 'stdBillsEditor/updateSectionInfo',
  323. data: {data: JSON.stringify({updateData: data})},
  324. dataType: 'json',
  325. success: function(result){
  326. if(!result.error && callback){
  327. callback();
  328. }
  329. }
  330. });
  331. },
  332. removeTotal: function (lastOperator, billsLibId, billsIds, delIds, field) {
  333. $.ajax({
  334. type: 'post',
  335. url: 'stdBillsEditor/removeTotal',
  336. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsIds: billsIds, delIds: delIds, field: field})},
  337. dataType: 'json',
  338. success: function(result){
  339. }
  340. })
  341. },
  342. updateSerialNo: function (billsLibId, billsId, updateArr, field, callback) {
  343. $.ajax({
  344. type: 'post',
  345. url: 'stdBillsEditor/updateSerialNo',
  346. data: {data: JSON.stringify({lastOperator: userAccount, billsLibId: billsLibId, billsId: billsId, updateArr: updateArr, field: field})},
  347. dataType: 'json',
  348. success: function (result) {
  349. if(!result.error && callback){
  350. callback();
  351. }
  352. }
  353. });
  354. },
  355. updateBillsArr: function(lastOperator, billsLibId, updateId, orgId, newId, type, classify, callback){
  356. $.ajax({
  357. type: 'post',
  358. url: 'stdBillsEditor/updateBillsArr',
  359. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: updateId, orgId: orgId, newId: newId, type: type, classify: classify})},
  360. dataType: 'json',
  361. success: function(result){
  362. if(!result.error && callback){
  363. callback();
  364. }
  365. }
  366. });
  367. },
  368. pasteBills: function(lastOperator, billsLibId, datas){
  369. $.ajax({
  370. type: 'post',
  371. url: 'stdBillsEditor/pasteBills',
  372. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, datas: datas})},
  373. dataType: 'json',
  374. success: function(result){
  375. }
  376. });
  377. },
  378. updateRecharge: function(lastOperator, billsLibId, updateId, data){
  379. $.ajax({
  380. type: 'post',
  381. url: 'stdBillsEditor/updateRecharge',
  382. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: updateId, data: data})},
  383. dataType: 'json',
  384. success: function(result){
  385. }
  386. });
  387. },
  388. pasteRel: function (lastOperator, billsLibId, updateDatas, createDatas, field, callback) {
  389. $.ajax({
  390. type: 'post',
  391. url: 'stdBillsEditor/pasteRel',
  392. data: {data:JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateDatas: updateDatas, createDatas: createDatas, field: field})},
  393. dataType: 'json',
  394. success: function(result){
  395. if(!result.error && callback){
  396. callback(result.data);
  397. }
  398. }
  399. });
  400. }
  401. };
  402. var jobsAjax = {
  403. getJobContent: function(billsLidId, callback){
  404. $.ajax({
  405. type: 'post',
  406. url: 'stdBillsEditor/getJobContent',
  407. data: {data: JSON.stringify({billsLibId: billsLidId})},
  408. dataType: 'json',
  409. success: function(result){
  410. if(!result.error && callback){
  411. callback(result.data);
  412. }
  413. }
  414. });
  415. },
  416. getSomeJobs: function(billsLibId, ids, callback){
  417. $.ajax({
  418. type: 'post',
  419. url: 'stdBillsEditor/getSomeJobs',
  420. data: {data: JSON.stringify({billsLibId: billsLibId, ids: ids})},
  421. dataType: 'json',
  422. success: function(result){
  423. if(!result.error && callback){
  424. callback(result.data);
  425. }
  426. }
  427. });
  428. },
  429. createJobContent: function(lastOperator, billsLibId, data, serialNo, callback){
  430. $.ajax({
  431. type: 'post',
  432. url: 'stdBillsEditor/createJobContent',
  433. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, data: data, serialNo: serialNo})},
  434. dataType: 'json',
  435. success: function(result){
  436. if(!result.error && callback){
  437. callback(result.data);
  438. }
  439. }
  440. });
  441. },
  442. updateJobContent: function(lastOperator, billsLibId, id, field, data){
  443. $.ajax({
  444. type: 'post',
  445. url: 'stdBillsEditor/updateJobContent',
  446. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: id, field: field, data: data })},
  447. dataType: 'json',
  448. success: function(result){
  449. }
  450. });
  451. },
  452. deleteJobContent: function(lastOperator, billsLibId, ids){
  453. $.ajax({
  454. type: 'post',
  455. url: 'stdBillsEditor/deleteJobContent',
  456. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, ids: ids})},
  457. dataType: 'json',
  458. success: function(result){
  459. }
  460. });
  461. },
  462. pasteJobs: function(lastOperator, billsLibId, pasteDatas, callback){
  463. $.ajax({
  464. type: 'post',
  465. url: 'stdBillsEditor/pasteJobs',
  466. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, pasteDatas: pasteDatas})},
  467. dataType: 'json',
  468. success: function(result){
  469. if(!result.error && callback){
  470. callback(result.data);
  471. }
  472. }
  473. });
  474. },
  475. edCreateJob: function(lastOperator, billsLibId, billsId, data, code, serialNo, callback){
  476. $.ajax({
  477. type: 'post',
  478. url: 'stdBillsEditor/edCreateJob',
  479. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, data: data, code: code, serialNo: serialNo})},
  480. dataType: 'json',
  481. success: function(result){
  482. if(!result.error && callback){
  483. callback(result.data);
  484. }
  485. }
  486. });
  487. },
  488. edUpdateJob: function(lastOperator, billsLibId, billsId, content, code, orgJobId, callback){
  489. $.ajax({
  490. type: 'post',
  491. url: 'stdBillsEditor/edUpdateJob',
  492. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, content: content, code: code, orgJobId: orgJobId})},
  493. dataType: 'json',
  494. success: function(result){
  495. if(!result.error && callback){
  496. callback(result.data);
  497. }
  498. }
  499. });
  500. }
  501. };
  502. var itemsAjax = {
  503. getItemCharacter: function(billsLibId, callback){
  504. $.ajax({
  505. type: 'post',
  506. url: 'stdBillsEditor/getItemCharacter',
  507. data: {data: JSON.stringify({billsLibId: billsLibId})},
  508. dataType: 'json',
  509. success: function(result){
  510. if(!result.error){
  511. if(callback){
  512. callback(result.data);
  513. }
  514. }
  515. }
  516. });
  517. },
  518. createItemCharacter: function(lastOperator, billsLibId, data, code, callback){
  519. $.ajax({
  520. type: 'post',
  521. url: 'stdBillsEditor/createItemCharacter',
  522. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, data: data, code: code})},
  523. dataType: 'json',
  524. success: function(result){
  525. if(!result.error && callback){
  526. callback(result.data);
  527. }
  528. }
  529. });
  530. },
  531. updateItemCharacter: function(lastOperator, billsLibId, id, field, data){
  532. $.ajax({
  533. type: 'post',
  534. url: 'stdBillsEditor/updateItemCharacter',
  535. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: id, field: field, data: data })},
  536. dataType: 'json',
  537. success: function(result){
  538. }
  539. });
  540. },
  541. updateValue: function(lastOperator, billsLibId, id, data, deleteCodes, type){
  542. $.ajax({
  543. type: 'post',
  544. url: 'stdBillsEditor/updateValue',
  545. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, updateId: id, data: data, type: type, deleteCodes: deleteCodes})},
  546. dataType: 'json',
  547. success: function(reslut){
  548. }
  549. });
  550. },
  551. deleteItemCharacter: function(lastOperator, billsLibId, ids){
  552. $.ajax({
  553. type: 'post',
  554. url: 'stdBillsEditor/deleteItemCharacter',
  555. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, ids: ids})},
  556. dataType: 'json',
  557. success: function(result){
  558. }
  559. });
  560. },
  561. pasteItems: function(lastOperator, billsLibId, pasteDatas, callback){
  562. $.ajax({
  563. type: 'post',
  564. url: 'stdBillsEditor/pasteItems',
  565. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, pasteDatas: pasteDatas})},
  566. dataType: 'json',
  567. success: function(result){
  568. console.log(result);
  569. if(!result.error){
  570. console.log(result.data);
  571. callback(result.data);
  572. }
  573. }
  574. });
  575. },
  576. pasteValues: function(lastOperator, billsLibId, pasteDatas, callback){
  577. $.ajax({
  578. type: 'post',
  579. url: 'stdBillsEditor/pasteValues',
  580. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, pasteDatas: pasteDatas})},
  581. dataType: 'json',
  582. success: function(result){
  583. if(!result.error && callback){
  584. callback(result.data);
  585. }
  586. }
  587. });
  588. },
  589. edCreateItem: function(lastOperator, billsLibId, billsId, data, code, serialNo, callback){
  590. $.ajax({
  591. type: 'post',
  592. url: 'stdBillsEditor/edCreateItem',
  593. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, data: data, code: code, serialNo: serialNo})},
  594. dataType: 'json',
  595. success: function(result){
  596. if(!result.error && callback){
  597. callback(result.data);
  598. }
  599. }
  600. });
  601. },
  602. edUpdateItem: function(lastOperator, billsLibId, billsId, content, code, orgItemId, callback){
  603. $.ajax({
  604. type: 'post',
  605. url: 'stdBillsEditor/edUpdateItem',
  606. data: {data: JSON.stringify({lastOperator: lastOperator, billsLibId: billsLibId, billsId:billsId, content: content, code: code, orgItemId: orgItemId})},
  607. dataType: 'json',
  608. success: function(result){
  609. if(!result.error && callback){
  610. callback(result.data);
  611. }
  612. }
  613. });
  614. }
  615. }