cloud-web-corejs 1.0.280 → 1.1.0-dev.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (159) hide show
  1. package/package.json +6 -2
  2. package/src/components/VabUpload/image-viewer.vue +442 -442
  3. package/src/components/VabUpload/index.vue +44 -2
  4. package/src/components/VabUpload/mixins.js +174 -34
  5. package/src/components/VabUpload/previewGroup.js +128 -0
  6. package/src/components/VabUpload/view.vue +247 -209
  7. package/src/components/baseTabs/mixins.js +181 -181
  8. package/src/components/bizTab/BizBillActions.vue +129 -0
  9. package/src/components/bizTab/BizTabListPage.vue +391 -0
  10. package/src/components/bizTab/README.md +378 -0
  11. package/src/components/bizTab/billTableUtil.js +48 -0
  12. package/src/components/bizTab/billValidators.js +136 -0
  13. package/src/components/bizTab/bizBillDetailMixin.js +705 -0
  14. package/src/components/bizTab/index.js +24 -0
  15. package/src/components/excelExport/exportFieldDialog.vue +23 -12
  16. package/src/components/excelExport/exportItemConfigUtil.js +30 -0
  17. package/src/components/excelExport/mixins.js +3 -3
  18. package/src/components/mobile/statusTag/mixins.js +1 -61
  19. package/src/components/mobile/wf/content.vue +1662 -1556
  20. package/src/components/mobile/wf/mixins/wfModifyDialogMixin.js +8 -6
  21. package/src/components/table/config.js +78 -78
  22. package/src/components/table/index.js +1276 -1276
  23. package/src/components/table/plugins/cell-area/index.js +1055 -0
  24. package/src/components/table/plugins/cell-area/index.scss +77 -0
  25. package/src/components/table/plugins/cell-area/util.js +224 -0
  26. package/src/components/table/tableForm.vue +330 -330
  27. package/src/components/table/tableFormMixin.js +318 -318
  28. package/src/components/table/vxeFilter/index.js +163 -163
  29. package/src/components/table/vxeFilter/mixin.js +316 -316
  30. package/src/components/wf/content.vue +1188 -1188
  31. package/src/components/wf/wf.js +40 -20
  32. package/src/components/wf/wfActionDropdown.vue +1 -1
  33. package/src/components/wf/wfActionItems.js +1 -1
  34. package/src/components/xform/docs/2026-08 xform H5 P0 /345/256/236/347/216/260/350/247/204/346/240/274.md" +528 -0
  35. package/src/components/xform/docs/2026-08 xform H5 P1 /345/256/236/347/216/260/350/247/204/346/240/274.md" +412 -0
  36. package/src/components/xform/docs/2026-08 xform H5 P2 /345/256/236/347/216/260/350/247/204/346/240/274.md" +287 -0
  37. package/src/components/xform/docs/2026-08 xform /347/247/273/345/212/250/347/253/257/345/270/203/345/261/200/345/257/271/351/275/220 bill_setting /346/226/271/346/241/210.md" +400 -0
  38. package/src/components/xform/form-designer/designer.js +15 -0
  39. package/src/components/xform/form-designer/form-widget/container-widget/data-table-widget.vue +269 -269
  40. package/src/components/xform/form-designer/form-widget/container-widget/detail-temp-widget.vue +132 -0
  41. package/src/components/xform/form-designer/form-widget/container-widget/detail-widget.vue +250 -250
  42. package/src/components/xform/form-designer/form-widget/dialog/fileReferenceDialog.vue +319 -320
  43. package/src/components/xform/form-designer/form-widget/dialog/formDialog.vue +365 -365
  44. package/src/components/xform/form-designer/form-widget/dialog/searchFormDialog.vue +554 -555
  45. package/src/components/xform/form-designer/form-widget/dialog/vabSearchDialog.vue +409 -409
  46. package/src/components/xform/form-designer/form-widget/field-widget/a-link-widget.vue +150 -132
  47. package/src/components/xform/form-designer/form-widget/field-widget/date-range-widget.vue +114 -114
  48. package/src/components/xform/form-designer/form-widget/field-widget/date-widget.vue +154 -154
  49. package/src/components/xform/form-designer/form-widget/field-widget/form-item-wrapper.vue +47 -1
  50. package/src/components/xform/form-designer/form-widget/field-widget/mixins/date-limit-mixin.js +178 -178
  51. package/src/components/xform/form-designer/form-widget/field-widget/mixins/time-limit-mixin.js +77 -77
  52. package/src/components/xform/form-designer/form-widget/field-widget/select-export-item-button-widget.vue +6 -0
  53. package/src/components/xform/form-designer/form-widget/field-widget/select-widget.vue +139 -139
  54. package/src/components/xform/form-designer/form-widget/field-widget/time-range-widget.vue +106 -106
  55. package/src/components/xform/form-designer/form-widget/field-widget/time-widget.vue +134 -134
  56. package/src/components/xform/form-designer/form-widget/field-widget/vabUpload-widget.vue +1 -0
  57. package/src/components/xform/form-designer/setting-panel/form-setting.vue +39 -39
  58. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/data-table-editor.vue +10 -10
  59. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/exportItemColumns-dialog.vue +438 -432
  60. package/src/components/xform/form-designer/setting-panel/property-editor/container-data-table/table-column-dialog.vue +2103 -2103
  61. package/src/components/xform/form-designer/setting-panel/property-editor/container-detail/detail-temp-edito.vue +90 -0
  62. package/src/components/xform/form-designer/setting-panel/property-editor/container-grid/gutter-editor.vue +82 -82
  63. package/src/components/xform/form-designer/setting-panel/property-editor/container-list-h5/list-h5-editor.vue +19 -5
  64. package/src/components/xform/form-designer/setting-panel/property-editor/container-table/table-dynamicField-editor.vue +8 -8
  65. package/src/components/xform/form-designer/setting-panel/property-editor/dropdownFlag-editor.vue +137 -137
  66. package/src/components/xform/form-designer/setting-panel/property-editor/field-button/search-dialog-event-editor.vue +237 -237
  67. package/src/components/xform/form-designer/setting-panel/property-editor/field-date/date-defaultValue-editor.vue +43 -43
  68. package/src/components/xform/form-designer/setting-panel/property-editor/field-date-range/date-range-defaultValue-editor.vue +43 -43
  69. package/src/components/xform/form-designer/setting-panel/property-editor/field-import-button/import2-button-editor.vue +96 -96
  70. package/src/components/xform/form-designer/setting-panel/property-editor/field-table-export-button/select-export-item-button-editor.vue +51 -0
  71. package/src/components/xform/form-designer/setting-panel/property-editor/field-time/time-defaultValue-editor.vue +42 -42
  72. package/src/components/xform/form-designer/setting-panel/property-editor/field-time-range/time-range-defaultValue-editor.vue +43 -43
  73. package/src/components/xform/form-designer/setting-panel/property-editor/formScriptEnabled-editor.vue +158 -158
  74. package/src/components/xform/form-designer/setting-panel/property-editor/h5Span-editor.vue +51 -0
  75. package/src/components/xform/form-designer/setting-panel/property-editor/itemStyle-editor.vue +39 -0
  76. package/src/components/xform/form-designer/setting-panel/property-editor/name-editor.vue +188 -188
  77. package/src/components/xform/form-designer/setting-panel/property-editor/styleTempClass-editor.vue +51 -0
  78. package/src/components/xform/form-designer/setting-panel/property-editor/textFlag-editor.vue +347 -347
  79. package/src/components/xform/form-designer/setting-panel/propertyRegister.js +4 -0
  80. package/src/components/xform/form-designer/widget-panel/widgetsConfig.js +59 -3
  81. package/src/components/xform/form-render/container-item/data-table-mixin.js +151 -93
  82. package/src/components/xform/form-render/container-item/detail-h5-item.vue +183 -32
  83. package/src/components/xform/form-render/container-item/detail-temp-item.vue +110 -0
  84. package/src/components/xform/form-render/container-item/h5-card-pane-item.vue +160 -140
  85. package/src/components/xform/form-render/container-item/list-h5-item.vue +1688 -1700
  86. package/src/components/xform/form-render/index.vue +153 -147
  87. package/src/components/xform/form-render/indexMixin.js +12 -0
  88. package/src/components/xform/lang/en-US.js +10 -0
  89. package/src/components/xform/lang/zh-CN.js +12 -0
  90. package/src/components/xform/mixins/defaultHandle.js +707 -707
  91. package/src/components/xform/styles/h5.scss +1992 -0
  92. package/src/components/xform/utils/textMaskUtil.js +182 -179
  93. package/src/components/xform/utils/treeTableUtil.js +1292 -1265
  94. package/src/components/xform/utils/util.js +56 -11
  95. package/src/index.js +9 -4
  96. package/src/layout/components/extractedCode/viewDialog.vue +7 -7
  97. package/src/router/index.js +21 -0
  98. package/src/router/modules/customer.js +71 -14
  99. package/src/store/modules/permission.js +17 -18
  100. package/src/utils/pdfUtil.js +429 -429
  101. package/src/utils/resolveViewComponent.js +142 -16
  102. package/src/views/bd/project/branch/bd_branch/edit.vue +145 -0
  103. package/src/views/bd/project/branch/bd_branch/list.vue +72 -0
  104. package/src/views/bd/project/branch/bd_branch/menuKindDialog.vue +106 -0
  105. package/src/views/bd/project/branch/bd_branch/mixins/edit.js +189 -0
  106. package/src/views/bd/project/branch/bd_branch/mixins/list.js +124 -0
  107. package/src/views/bd/project/branch/bd_branch/mixins/menuKindDialog.js +85 -0
  108. package/src/views/bd/project/branch/form_script/list.vue +31 -0
  109. package/src/views/bd/project/branch/form_template/list.vue +30 -0
  110. package/src/views/bd/project/branch/menu_kind/list.vue +31 -0
  111. package/src/views/bd/project/common/form_script/list.vue +16 -0
  112. package/src/views/bd/project/common/form_template/list.vue +15 -0
  113. package/src/views/bd/project/common/menu_kind/list.vue +15 -0
  114. package/src/views/bd/project/core/branchContext.js +100 -0
  115. package/src/views/bd/project/core/branchPage.js +78 -0
  116. package/src/views/bd/project/core/branchPageWrap.vue +225 -0
  117. package/src/views/bd/project/core/branchScope.js +44 -0
  118. package/src/views/bd/project/core/branchSearchPage.js +285 -0
  119. package/src/views/bd/project/core/branchSelect.vue +85 -0
  120. package/src/views/bd/project/core/branchTreeBar.vue +81 -0
  121. package/src/views/bd/project/core/httpBranchPatch.js +58 -0
  122. package/src/views/bd/project/datatable/menu_kind/list.vue +15 -0
  123. package/src/views/bd/project/datatable/table_model/list.vue +15 -0
  124. package/src/views/bd/setting/bd_company_env/dialog.vue +174 -174
  125. package/src/views/bd/setting/table_model/edit.vue +1066 -1066
  126. package/src/views/bd/setting/table_model/mixins/edit.js +1455 -1455
  127. package/src/views/bd/setting/table_model/mixins/zdDialog.js +148 -148
  128. package/src/views/demo/bizTab/bill/billConfig.js +41 -0
  129. package/src/views/demo/bizTab/bill/detail.vue +436 -0
  130. package/src/views/demo/bizTab/bill/list.vue +288 -0
  131. package/src/views/demo/bizTab/bill/productDialog.vue +176 -0
  132. package/src/views/demo/bizTab/simple/billApi.js +123 -0
  133. package/src/views/demo/bizTab/simple/detail.vue +407 -0
  134. package/src/views/demo/bizTab/simple/list.vue +217 -0
  135. package/src/views/demo/bizTab/standalone/index.vue +121 -0
  136. package/src/views/demo/bizTab/wf/billConfig.js +44 -0
  137. package/src/views/demo/bizTab/wf/detail.vue +661 -0
  138. package/src/views/demo/bizTab/wf/list.vue +242 -0
  139. package/src/views/support/form-dialog-demo/demoPickerDialog.vue +72 -0
  140. package/src/views/support/form-dialog-demo/index.vue +537 -0
  141. package/src/views/user/file_view_ins/list.vue +3 -3
  142. package/src/views/user/home/index.vue +8 -6
  143. package/src/views/user/home/wjl/content.vue +1569 -0
  144. package/src/views/user/notify_message/dialog.vue +7 -5
  145. package/src/views/user/outLink/cc_form_view.vue +188 -0
  146. package/src/views/user/outLink/form_view.vue +2 -2
  147. package/src/views/user/outLink/index.vue +4 -4
  148. package/src/views/user/outLink/view.vue +3 -3
  149. package/src/views/user/role/edit.vue +632 -632
  150. package/src/views/user/role/list.vue +260 -260
  151. package/src/views/user/wf/iframe/index.vue +3 -3
  152. package/src/views/user/wf/iframe/index2.vue +3 -3
  153. package/src/views/user/wf/wf_manage/list.vue +1112 -1116
  154. package/src/views/user/wf/wf_manage/list2.vue +9 -13
  155. package/src/views/user/wf/wf_manage/wfContentDialog.vue +8 -5
  156. package/src/components/xform/form-designer/form-widget/field-widget/dropdown-menu-widget.vue +0 -106
  157. package/src/components/xform/form-designer/form-widget/field-widget/tableexportbuttonwidget.vue +0 -99
  158. package/src/components/xform/form-render/container-item/list-h5-item2.vue +0 -1340
  159. package/src/utils/wf.js +0 -766
@@ -1,148 +1,148 @@
1
- import { selectDialogMixins } from "@base/mixins/selectDialog";
2
-
3
- let modules = {};
4
- modules = {
5
- name: "zdDialog",
6
- props: ["visiable", "multi", "rows", "param", "taBm"],
7
- mixins: [selectDialogMixins],
8
- components: {},
9
- created() {
10
- this.initSetting();
11
- },
12
- mounted() {
13
- this.initTableM1();
14
- },
15
- data() {
16
- return {
17
- showDialog: true,
18
- falseValue: false,
19
- selectMulti: true,
20
- formData: {},
21
- vxeOption: {},
22
- showSaleOrgDialog: false,
23
- fieldKey: "taZdMc",
24
- };
25
- },
26
- methods: {
27
- initTableM1() {
28
- let that = this;
29
-
30
- let zdTypeMap = {
31
- Boolean: this.$t1("布尔"),
32
- Integer: this.$t1("整数"),
33
- Long: this.$t1("长整数"),
34
- Decimal: this.$t1("精度小数"),
35
- Money: this.$t1("金额"),
36
- Text: this.$t1("文本"),
37
- TextArea: this.$t1("长文本"),
38
- DateTime: this.$t1("日期时间"),
39
- Reference: this.$t1("关联表(文本)"),
40
- ReferenceLong: this.$t1("关联表(长整型)"),
41
- };
42
-
43
- let tableOption = {
44
- vue: that,
45
- tableRef: "table-m1",
46
- tableName: "bd_table_model_field_dialog-m1",
47
- path: USER_PREFIX + "/szTaMb/getSzTaZdMbsByTaBm",
48
- param: () => {
49
- return {
50
- taBm: this.taBm,
51
- enabled: true,
52
- searchDb: true,
53
- ...this.formData,
54
- ...this.param,
55
- };
56
- },
57
- callback: (rows) => {
58
- this.restoreChecked(rows);
59
- },
60
- columns: [
61
- { type: "checkbox", width: 48, resizable: false, fixed: "left" },
62
- {
63
- title: this.$t1("实体字段名称"),
64
- field: "zdEn",
65
- width: 150,
66
- },
67
- {
68
- title: this.$t1("数据库表字段名"),
69
- field: "taZdMc",
70
- width: 150,
71
- },
72
- {
73
- title: this.$t1("字段描述"),
74
- field: "zdCh",
75
- width: 150,
76
- },
77
- {
78
- title: this.$t1("字段类型"),
79
- field: "zdType",
80
- width: 150,
81
- slots: {
82
- default: ({ row, rowIndex, $table }) => {
83
- return zdTypeMap[row.zdType];
84
- },
85
- },
86
- },
87
- {
88
- title: this.$t1("关联字段"),
89
- field: "referenceZd",
90
- width: 150,
91
- },
92
- {
93
- width: 47,
94
- fixed: "right",
95
- title: "",
96
- sortable: false,
97
- },
98
- ],
99
- config: {
100
- checkboxConfig: {
101
- checkStrictly: true,
102
- showHeader: this.selectMulti,
103
- trigger: "row",
104
- },
105
- proxyConfig: {
106
- props: {
107
- result: "objx", // 配置响应结果列表字段
108
- total: "objx.length", // 配置响应结果总页数字段
109
- },
110
- },
111
- },
112
- };
113
- this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
114
- that.vxeOption = opts;
115
- });
116
- },
117
- /**
118
- * 列表每次查询完,把已选中的字段重新勾上。
119
- *
120
- * selectDialogMixins.initSetting 只把 rows 播种进 checkRows(右侧已选列表),
121
- * 表格自身的勾选状态没人恢复 —— 不补这一步,弹框打开时左边一个勾都没有,
122
- * 用户再勾一个新字段就会把原有的显示字段整组顶掉。
123
- */
124
- restoreChecked(rows) {
125
- let checkRows = this.checkRows;
126
- if (!checkRows || !checkRows.length || !rows || !rows.length) {
127
- return;
128
- }
129
- let fieldKey = this.fieldKey;
130
- let keys = checkRows.map((item) => item[fieldKey]);
131
- let targetRows = rows.filter((row) => keys.includes(row[fieldKey]));
132
- if (!targetRows.length) {
133
- return;
134
- }
135
- // 回填进来的可能只是 { taZdMc } 这样的占位行,用列表里的真实行替换掉,
136
- // 保证「确定」抛给调用方的是带 zdEn / zdCh 的完整数据
137
- this.checkRows = checkRows.map((item) => {
138
- let real = targetRows.find((row) => row[fieldKey] === item[fieldKey]);
139
- return real || item;
140
- });
141
- let $grid = this.$refs[this.defaultTableRefName];
142
- if ($grid && $grid.setCheckboxRow) {
143
- $grid.setCheckboxRow(targetRows, true);
144
- }
145
- },
146
- },
147
- };
148
- export default modules;
1
+ import { selectDialogMixins } from "@base/mixins/selectDialog";
2
+
3
+ let modules = {};
4
+ modules = {
5
+ name: "zdDialog",
6
+ props: ["visiable", "multi", "rows", "param", "taBm"],
7
+ mixins: [selectDialogMixins],
8
+ components: {},
9
+ created() {
10
+ this.initSetting();
11
+ },
12
+ mounted() {
13
+ this.initTableM1();
14
+ },
15
+ data() {
16
+ return {
17
+ showDialog: true,
18
+ falseValue: false,
19
+ selectMulti: true,
20
+ formData: {},
21
+ vxeOption: {},
22
+ showSaleOrgDialog: false,
23
+ fieldKey: "taZdMc",
24
+ };
25
+ },
26
+ methods: {
27
+ initTableM1() {
28
+ let that = this;
29
+
30
+ let zdTypeMap = {
31
+ Boolean: this.$t1("布尔"),
32
+ Integer: this.$t1("整数"),
33
+ Long: this.$t1("长整数"),
34
+ Decimal: this.$t1("精度小数"),
35
+ Money: this.$t1("金额"),
36
+ Text: this.$t1("文本"),
37
+ TextArea: this.$t1("长文本"),
38
+ DateTime: this.$t1("日期时间"),
39
+ Reference: this.$t1("关联表(文本)"),
40
+ ReferenceLong: this.$t1("关联表(长整型)"),
41
+ };
42
+
43
+ let tableOption = {
44
+ vue: that,
45
+ tableRef: "table-m1",
46
+ tableName: "bd_table_model_field_dialog-m1",
47
+ path: USER_PREFIX + "/szTaMb/getSzTaZdMbsByTaBm",
48
+ param: () => {
49
+ return {
50
+ taBm: this.taBm,
51
+ enabled: true,
52
+ searchDb: true,
53
+ ...this.formData,
54
+ ...this.param,
55
+ };
56
+ },
57
+ callback: (rows) => {
58
+ this.restoreChecked(rows);
59
+ },
60
+ columns: [
61
+ { type: "checkbox", width: 48, resizable: false, fixed: "left" },
62
+ {
63
+ title: this.$t1("实体字段名称"),
64
+ field: "zdEn",
65
+ width: 150,
66
+ },
67
+ {
68
+ title: this.$t1("数据库表字段名"),
69
+ field: "taZdMc",
70
+ width: 150,
71
+ },
72
+ {
73
+ title: this.$t1("字段描述"),
74
+ field: "zdCh",
75
+ width: 150,
76
+ },
77
+ {
78
+ title: this.$t1("字段类型"),
79
+ field: "zdType",
80
+ width: 150,
81
+ slots: {
82
+ default: ({ row, rowIndex, $table }) => {
83
+ return zdTypeMap[row.zdType];
84
+ },
85
+ },
86
+ },
87
+ {
88
+ title: this.$t1("关联字段"),
89
+ field: "referenceZd",
90
+ width: 150,
91
+ },
92
+ {
93
+ width: 47,
94
+ fixed: "right",
95
+ title: "",
96
+ sortable: false,
97
+ },
98
+ ],
99
+ config: {
100
+ checkboxConfig: {
101
+ checkStrictly: true,
102
+ showHeader: this.selectMulti,
103
+ trigger: "row",
104
+ },
105
+ proxyConfig: {
106
+ props: {
107
+ result: "objx", // 配置响应结果列表字段
108
+ total: "objx.length", // 配置响应结果总页数字段
109
+ },
110
+ },
111
+ },
112
+ };
113
+ this.$vxeTableUtil.initVxeTable(tableOption).then((opts) => {
114
+ that.vxeOption = opts;
115
+ });
116
+ },
117
+ /**
118
+ * 列表每次查询完,把已选中的字段重新勾上。
119
+ *
120
+ * selectDialogMixins.initSetting 只把 rows 播种进 checkRows(右侧已选列表),
121
+ * 表格自身的勾选状态没人恢复 —— 不补这一步,弹框打开时左边一个勾都没有,
122
+ * 用户再勾一个新字段就会把原有的显示字段整组顶掉。
123
+ */
124
+ restoreChecked(rows) {
125
+ let checkRows = this.checkRows;
126
+ if (!checkRows || !checkRows.length || !rows || !rows.length) {
127
+ return;
128
+ }
129
+ let fieldKey = this.fieldKey;
130
+ let keys = checkRows.map((item) => item[fieldKey]);
131
+ let targetRows = rows.filter((row) => keys.includes(row[fieldKey]));
132
+ if (!targetRows.length) {
133
+ return;
134
+ }
135
+ // 回填进来的可能只是 { taZdMc } 这样的占位行,用列表里的真实行替换掉,
136
+ // 保证「确定」抛给调用方的是带 zdEn / zdCh 的完整数据
137
+ this.checkRows = checkRows.map((item) => {
138
+ let real = targetRows.find((row) => row[fieldKey] === item[fieldKey]);
139
+ return real || item;
140
+ });
141
+ let $grid = this.$refs[this.defaultTableRefName];
142
+ if ($grid && $grid.setCheckboxRow) {
143
+ $grid.setCheckboxRow(targetRows, true);
144
+ }
145
+ },
146
+ },
147
+ };
148
+ export default modules;
@@ -0,0 +1,41 @@
1
+ import prefixConfig from "@/prefixConfig.js";
2
+
3
+ /**
4
+ * demo B 接的是真实单据:PMD 的「产品变更申请」,走通用 bd_api(getPage / getOne / getList / saveUpdate)。
5
+ * 换成你自己的单据只改这里:表单编码、表名、流程编码、页签标题字段。
6
+ *
7
+ * 请求写法逐条对齐 stdxx 的真实页面 `views/pmd/product/product_change/{list,edit,productItemDialog}.vue`,
8
+ * 那边跑得通这边就跑得通(连 getOne/saveUpdate 不带 formVersion 都是照它来的)。
9
+ *
10
+ * ⚠️ 前置条件(跑不起来先核对这几条):
11
+ * 1. 表单模板 item_change(列表)/ item_change_edit(详情),且配了脚本
12
+ * getPage / getOne / getList / saveUpdate / findItemPage;
13
+ * 2. 表 pcp_item_change / pcp_item_change_item 存在;
14
+ * 3. 流程 product_change_edit 存在,且至少有一个允许改单据(toModify)的节点,
15
+ * 否则「通过自动保存」这条验不到。
16
+ * 真实页面还会写第三张表 pcp_product_properties_change(产品参数),demo 不带它——
17
+ * saveUpdate 只写 data 里出现的表,不传即不动,所以参数不会被清空。
18
+ * 不吃这些前置条件的版本看 ../simple/(前端 mock,不打后台)。
19
+ *
20
+ * ⚠️ 保存是整表提交:saveUpdate 的 data 里带哪几张表,后台就按哪几张表落库。
21
+ * 所以 detail.vue 把子表 pcp_item_change_item 一起读出来、原样带回,
22
+ * 不然拿真实单据试保存会把子表冲掉。你自己的单据有子表时照此办理。
23
+ */
24
+ export const BILL = {
25
+ prefix: prefixConfig.PMD_PREFIX,
26
+ listFormCode: "item_change", // 列表分页用的表单编码
27
+ formCode: "item_change_edit", // 详情取数/保存用的表单编码
28
+ taBm: "pcp_item_change", // 主表表名
29
+ itemTaBm: "pcp_item_change_item", // 子表表名
30
+ wfCode: "div_form_item_change_edit", // 流程编码
31
+ titleField: "sn", // 页签标题字段(变更单号)
32
+ type: 0, // 业务过滤条件:0 产品变更 / 1 零件变更
33
+ };
34
+
35
+ export const STATUS_MAP = {
36
+ 0: { label: "未审核", cls: "list-tag warning" },
37
+ 1: { label: "审核中", cls: "list-tag" },
38
+ 2: { label: "已审核", cls: "list-tag success" },
39
+ };
40
+
41
+ export default BILL;