schedule_ledger.js 3.7 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071727374757677787980818283848586878889909192
  1. /**
  2. * 进度台账相关js
  3. *
  4. * @author Ellisran
  5. * @date 2020/11/6
  6. * @version
  7. */
  8. function getTenderId() {
  9. return window.location.pathname.split('/')[2];
  10. }
  11. $(function () {
  12. autoFlashHeight();
  13. // 初始化台账
  14. const ledgerSpread = SpreadJsObj.createNewSpread($('#ledger-spread')[0]);
  15. const treeSetting = {
  16. id: 'ledger_id',
  17. pid: 'ledger_pid',
  18. order: 'order',
  19. level: 'level',
  20. rootId: -1,
  21. fullPath: 'full_path',
  22. calcFields: ['total_price']
  23. //treeCacheKey: 'ledger_bills_fold' + '_' + getTenderId(),
  24. // markFoldKey: 'bills-fold',
  25. // markFoldSubKey: window.location.pathname.split('/')[2],
  26. };
  27. treeSetting.calcFun = function (node) {
  28. node.dgn_price = ZhCalc.round(ZhCalc.div(node.total_price, node.dgn_qty1), 2);
  29. };
  30. const ledgerTree = createNewPathTree('base', treeSetting);
  31. const ledgerSpreadSetting = {
  32. cols: [
  33. {title: '', colSpan: '1', rowSpan: '2', field: 'is_select', hAlign: 1, width: 40, formatter: '@', cellType: 'checkbox'},
  34. {title: '编号', colSpan: '1', rowSpan: '2', field: 'code', hAlign: 0, width: 185, formatter: '@', readOnly: true, cellType: 'tree'},
  35. {title: '名称', colSpan: '1', rowSpan: '2', field: 'name', hAlign: 0, width: 205, formatter: '@', readOnly: true},
  36. {title: '单位', colSpan: '1', rowSpan: '2', field: 'unit', hAlign: 1, width: 100, formatter: '@', readOnly: true},
  37. {title: '经济指标', colSpan: '1', rowSpan: '2', field: 'dgn_price', hAlign: 2, width: 100, type: 'Number', readOnly: true},
  38. {title: '工程量', colSpan: '1', rowSpan: '2', field: 'dgn_qty1', hAlign: 2, width: 100, type: 'Number', readOnly: true},
  39. {title: '金额', colSpan: '1', rowSpan: '2', field: 'total_price', hAlign: 2, width: 100, type: 'Number', readOnly: true},
  40. ],
  41. emptyRows: 0,
  42. headRows: 1,
  43. headRowHeight: [25, 25],
  44. defaultRowHeight: 21,
  45. headerFont: '12px 微软雅黑',
  46. font: '12px 微软雅黑',
  47. readOnly: true,
  48. localCache: {
  49. key: 'ledger-bills',
  50. colWidth: true,
  51. }
  52. };
  53. sjsSettingObj.setFxTreeStyle(ledgerSpreadSetting, sjsSettingObj.FxTreeStyle.jz);
  54. if (thousandth) sjsSettingObj.setTpThousandthFormat(ledgerSpreadSetting);
  55. SpreadJsObj.initSheet(ledgerSpread.getActiveSheet(), ledgerSpreadSetting);
  56. SpreadJsObj.selChangedRefreshBackColor(ledgerSpread.getActiveSheet());
  57. postData(window.location.pathname + '/load', {}, function (data) {
  58. ledgerTree.loadDatas(data);
  59. treeCalc.calculateAll(ledgerTree);
  60. SpreadJsObj.loadSheetData(ledgerSpread.getActiveSheet(), SpreadJsObj.DataType.Tree, ledgerTree);
  61. }, null, true);
  62. // // 显示层次
  63. // (function (select, sheet) {
  64. // $(select).click(function () {
  65. // const tag = $(this).attr('tag');
  66. // const tree = sheet.zh_tree;
  67. // if (!tree) return;
  68. // switch (tag) {
  69. // case "1":
  70. // case "2":
  71. // case "3":
  72. // case "4":
  73. // case "5":
  74. // tree.expandByLevel(parseInt(tag));
  75. // SpreadJsObj.refreshTreeRowVisible(sheet);
  76. // break;
  77. // case "last":
  78. // tree.expandByCustom(() => { return true; });
  79. // SpreadJsObj.refreshTreeRowVisible(sheet);
  80. // break;
  81. // case "leafXmj":
  82. // tree.expandToLeafXmj();
  83. // SpreadJsObj.refreshTreeRowVisible(sheet);
  84. // break;
  85. // }
  86. // });
  87. // })('a[name=showLevel]', ledgerSpread.getActiveSheet());
  88. });