gcs-ui-lib 1.0.1

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 (231) hide show
  1. package/.env.development +5 -0
  2. package/.env.production +7 -0
  3. package/.eslintrc.js +5 -0
  4. package/README.md +97 -0
  5. package/_webpack.config.js +135 -0
  6. package/babel.config.js +16 -0
  7. package/lib/demo.html +10 -0
  8. package/lib/fonts/SIMSUN.5e0c362c.5e0c362c.ttf +0 -0
  9. package/lib/fonts/element-icons.535877f5.535877f5.woff +0 -0
  10. package/lib/fonts/element-icons.732389de.732389de.ttf +0 -0
  11. package/lib/fonts/iconfont.09d221ee.09d221ee.woff +0 -0
  12. package/lib/fonts/iconfont.1c4bfacc.1c4bfacc.ttf +0 -0
  13. package/lib/fonts/iconfont.a6f34dc7.a6f34dc7.woff2 +0 -0
  14. package/lib/fonts/iconfont.f4c32765.f4c32765.ttf +0 -0
  15. package/lib/gcs-ui-lib.common.js +106776 -0
  16. package/lib/gcs-ui-lib.css +3 -0
  17. package/lib/gcs-ui-lib.umd.js +106786 -0
  18. package/lib/gcs-ui-lib.umd.min.js +330 -0
  19. package/lib/img/bankbackground(1).e1f6e40f.jpg +0 -0
  20. package/lib/img/busibackground(2).7e09bf1f.jpg +0 -0
  21. package/lib/img/document.193a282d.svg +8 -0
  22. package/lib/img/folder.8e019792.svg +9 -0
  23. package/lib/img/icon.fc86764f.gif +0 -0
  24. package/npm +1 -0
  25. package/package.json +101 -0
  26. package/packages/AutoFillDetail/index.js +7 -0
  27. package/packages/AutoFillDetail/src/components/fillDetail.vue +188 -0
  28. package/packages/AutoFillDetail/src/demo/index.vue +18 -0
  29. package/packages/AutoFillDetail/src/main.vue +283 -0
  30. package/packages/AutoFillDetection/index.js +7 -0
  31. package/packages/AutoFillDetection/src/components/FillInfo.vue +36 -0
  32. package/packages/AutoFillDetection/src/components/HandEntred.vue +226 -0
  33. package/packages/AutoFillDetection/src/components/RuleHit.vue +105 -0
  34. package/packages/AutoFillDetection/src/components/SelectEntries.vue +192 -0
  35. package/packages/AutoFillDetection/src/components/config.js +359 -0
  36. package/packages/AutoFillDetection/src/demo/index.vue +18 -0
  37. package/packages/AutoFillDetection/src/main.vue +130 -0
  38. package/packages/AutoFillList/index.js +7 -0
  39. package/packages/AutoFillList/src/components/ImportRules.vue +407 -0
  40. package/packages/AutoFillList/src/components/ImportRulesDialog.vue +40 -0
  41. package/packages/AutoFillList/src/components/config.js +616 -0
  42. package/packages/AutoFillList/src/demo/index.vue +28 -0
  43. package/packages/AutoFillList/src/main.vue +559 -0
  44. package/packages/AutoFillRuleHistory/index.js +7 -0
  45. package/packages/AutoFillRuleHistory/src/demo/index.vue +23 -0
  46. package/packages/AutoFillRuleHistory/src/main.vue +422 -0
  47. package/packages/AutoFillService/index.js +7 -0
  48. package/packages/AutoFillService/src/components/BudgetAccountDialogForSetting.vue +588 -0
  49. package/packages/AutoFillService/src/components/BudgetAccountSettingDialog.vue +377 -0
  50. package/packages/AutoFillService/src/components/ConditionGroup.vue +413 -0
  51. package/packages/AutoFillService/src/components/CustomInput.vue +191 -0
  52. package/packages/AutoFillService/src/components/FillComponent.vue +371 -0
  53. package/packages/AutoFillService/src/components/SelectBudgetAccountDialog.vue +161 -0
  54. package/packages/AutoFillService/src/components/SelectDialog.vue +211 -0
  55. package/packages/AutoFillService/src/components/basic.vue +308 -0
  56. package/packages/AutoFillService/src/components/config.js +549 -0
  57. package/packages/AutoFillService/src/components/fillDetail.vue +145 -0
  58. package/packages/AutoFillService/src/components/fillRules.vue +787 -0
  59. package/packages/AutoFillService/src/components/paymentCategory.vue +297 -0
  60. package/packages/AutoFillService/src/components/paymentCategoryT.vue +292 -0
  61. package/packages/AutoFillService/src/customTemplate/FillBigDecimal.vue +50 -0
  62. package/packages/AutoFillService/src/customTemplate/FillDate.vue +54 -0
  63. package/packages/AutoFillService/src/customTemplate/FillInput.vue +33 -0
  64. package/packages/AutoFillService/src/customTemplate/FillMultiSelect.vue +70 -0
  65. package/packages/AutoFillService/src/customTemplate/FillSelect.vue +72 -0
  66. package/packages/AutoFillService/src/demo/index.vue +30 -0
  67. package/packages/AutoFillService/src/main.vue +432 -0
  68. package/packages/Bank/index.js +7 -0
  69. package/packages/Bank/src/demo/index.vue +18 -0
  70. package/packages/Bank/src/main.vue +70 -0
  71. package/packages/BranchBank/index.js +7 -0
  72. package/packages/BranchBank/src/demo/index.vue +18 -0
  73. package/packages/BranchBank/src/main.vue +97 -0
  74. package/packages/ConfigurableForm/index.js +7 -0
  75. package/packages/ConfigurableForm/src/components/config.js +63 -0
  76. package/packages/ConfigurableForm/src/components/detail.vue +158 -0
  77. package/packages/ConfigurableForm/src/demo/index.vue +279 -0
  78. package/packages/ConfigurableForm/src/main.vue +529 -0
  79. package/packages/DynamicForm/index.js +7 -0
  80. package/packages/DynamicForm/src/components/Amount.vue +51 -0
  81. package/packages/DynamicForm/src/components/AmountRange.vue +76 -0
  82. package/packages/DynamicForm/src/components/CheckboxGroup.vue +63 -0
  83. package/packages/DynamicForm/src/components/DMY.vue +126 -0
  84. package/packages/DynamicForm/src/components/Date.vue +51 -0
  85. package/packages/DynamicForm/src/components/DateRange.vue +51 -0
  86. package/packages/DynamicForm/src/components/Dialog.vue +247 -0
  87. package/packages/DynamicForm/src/components/Input.vue +48 -0
  88. package/packages/DynamicForm/src/components/InputNumber.vue +69 -0
  89. package/packages/DynamicForm/src/components/InputNumberRange.vue +47 -0
  90. package/packages/DynamicForm/src/components/LazySelect.vue +311 -0
  91. package/packages/DynamicForm/src/components/RadioGroup.vue +43 -0
  92. package/packages/DynamicForm/src/components/Rate.vue +57 -0
  93. package/packages/DynamicForm/src/components/Select.vue +307 -0
  94. package/packages/DynamicForm/src/components/Switch.vue +32 -0
  95. package/packages/DynamicForm/src/components/Textarea.vue +58 -0
  96. package/packages/DynamicForm/src/components/TimeSelect.vue +61 -0
  97. package/packages/DynamicForm/src/components/unitTreeSelect.vue +141 -0
  98. package/packages/DynamicForm/src/components/urlLinkInput.vue +100 -0
  99. package/packages/DynamicForm/src/demo/index.vue +486 -0
  100. package/packages/DynamicForm/src/fileUpload.js +232 -0
  101. package/packages/DynamicForm/src/formConfig.js +2910 -0
  102. package/packages/DynamicForm/src/helpers.js +18 -0
  103. package/packages/DynamicForm/src/main.vue +1095 -0
  104. package/packages/FileImport/index.js +7 -0
  105. package/packages/FileImport/src/demo/index.vue +29 -0
  106. package/packages/FileImport/src/main.vue +306 -0
  107. package/packages/MultiCurrencyStatistics/index.js +7 -0
  108. package/packages/MultiCurrencyStatistics/src/demo/index.vue +320 -0
  109. package/packages/MultiCurrencyStatistics/src/main.vue +200 -0
  110. package/packages/SelectTicket/index.js +7 -0
  111. package/packages/SelectTicket/src/Tree/index.vue +13 -0
  112. package/packages/SelectTicket/src/demo/index.vue +139 -0
  113. package/packages/SelectTicket/src/header.js +276 -0
  114. package/packages/SelectTicket/src/main.vue +581 -0
  115. package/packages/SelectTicket/src/printDialog/dialogO.vue +116 -0
  116. package/packages/SelectTicket/src/printDialog/index.vue +69 -0
  117. package/packages/SelectTicket/src/ticketDetail/billInformation/README.MD +6 -0
  118. package/packages/SelectTicket/src/ticketDetail/billInformation/mixins/index.js +35 -0
  119. package/packages/SelectTicket/src/ticketDetail/billInformation/obverse.vue +768 -0
  120. package/packages/SelectTicket/src/ticketDetail/billInformation/overview.vue +115 -0
  121. package/packages/SelectTicket/src/ticketDetail/billInformation/printList.vue +127 -0
  122. package/packages/SelectTicket/src/ticketDetail/billInformation/reverse.vue +205 -0
  123. package/packages/SelectTicket/src/ticketDetail/billInformation//351/231/204/345/212/240/344/277/235/350/257/201/344/277/241/346/201/257/345/255/227/346/256/265/345/257/271/347/205/247.md +246 -0
  124. package/packages/SelectTicket/src/ticketDetail/dialog.vue +73 -0
  125. package/packages/SelectTicket/src/ticketDetail/img/bankbackground(1).jpg +0 -0
  126. package/packages/SelectTicket/src/ticketDetail/img/busibackground(2).jpg +0 -0
  127. package/packages/SelectTicket/src/ticketDetail/img/icon.gif +0 -0
  128. package/packages/SelectTicket/src/ticketDetail/img/icon2.png +0 -0
  129. package/packages/SelectTicket/src/ticketDetail/img/noData.png +0 -0
  130. package/packages/SelectTicket/src/ticketDetail/index.vue +188 -0
  131. package/packages/SelectTreeUnit/index.js +7 -0
  132. package/packages/SelectTreeUnit/src/Tree/document.svg +8 -0
  133. package/packages/SelectTreeUnit/src/Tree/folder.svg +9 -0
  134. package/packages/SelectTreeUnit/src/Tree/index.vue +239 -0
  135. package/packages/SelectTreeUnit/src/demo/index.vue +219 -0
  136. package/packages/SelectTreeUnit/src/forEachs.js +16 -0
  137. package/packages/SelectTreeUnit/src/main.vue +1136 -0
  138. package/packages/SelectTreeUnitForm/index.js +7 -0
  139. package/packages/SelectTreeUnitForm/src/Tree/document.svg +8 -0
  140. package/packages/SelectTreeUnitForm/src/Tree/folder.svg +9 -0
  141. package/packages/SelectTreeUnitForm/src/Tree/index.vue +254 -0
  142. package/packages/SelectTreeUnitForm/src/demo/index.vue +230 -0
  143. package/packages/SelectTreeUnitForm/src/forEachs.js +16 -0
  144. package/packages/SelectTreeUnitForm/src/main.vue +1068 -0
  145. package/packages/StreamRefill/index.js +7 -0
  146. package/packages/StreamRefill/src/components/FillBigDecimal.vue +50 -0
  147. package/packages/StreamRefill/src/components/FillDate.vue +56 -0
  148. package/packages/StreamRefill/src/components/FillInput.vue +36 -0
  149. package/packages/StreamRefill/src/components/FillMultiSelect.vue +54 -0
  150. package/packages/StreamRefill/src/components/FillSelect.vue +51 -0
  151. package/packages/StreamRefill/src/demo/index.vue +254 -0
  152. package/packages/StreamRefill/src/main.vue +335 -0
  153. package/packages/Trade/index.js +7 -0
  154. package/packages/Trade/src/components/all/index.vue +913 -0
  155. package/packages/Trade/src/components/dynamicColumnMixin.js +69 -0
  156. package/packages/Trade/src/components/getDCloumn.js +15 -0
  157. package/packages/Trade/src/components/i18n.json +3337 -0
  158. package/packages/Trade/src/components/pendingEvent/index.vue +934 -0
  159. package/packages/Trade/src/components/server-config.js +60 -0
  160. package/packages/Trade/src/components/setUnitName.js +10 -0
  161. package/packages/Trade/src/components/specialHandle.js +171 -0
  162. package/packages/Trade/src/components/topendingTabs.js +21 -0
  163. package/packages/Trade/src/demo/index.vue +43 -0
  164. package/packages/Trade/src/main.vue +86 -0
  165. package/packages/ValidateQuota/index.js +58 -0
  166. package/packages/ValidateQuota/src/demo/index.vue +190 -0
  167. package/packages/ValidateQuota/src/main.vue +71 -0
  168. package/packages/ZipImport/index.js +7 -0
  169. package/packages/ZipImport/src/demo/index.vue +139 -0
  170. package/packages/ZipImport/src/main.vue +330 -0
  171. package/packages/approvel/index.js +8 -0
  172. package/packages/approvel/src/demo/index.vue +28 -0
  173. package/packages/approvel/src/main.vue +26 -0
  174. package/packages/approvel/src/progress.vue +167 -0
  175. package/packages/approvel/src/url.json +29 -0
  176. package/packages/extends/ElSelect.vue +180 -0
  177. package/packages/imgs/list-select.png +0 -0
  178. package/packages/imgs/list-unselect.png +0 -0
  179. package/packages/imgs/list.png +0 -0
  180. package/packages/imgs/tree-select.png +0 -0
  181. package/packages/imgs/tree-unselect.png +0 -0
  182. package/packages/imgs/tree.png +0 -0
  183. package/packages/inputTag/index.js +7 -0
  184. package/packages/inputTag/src/demo/index.vue +355 -0
  185. package/packages/inputTag/src/main.vue +502 -0
  186. package/public/favicon.ico +0 -0
  187. package/public/index.html +19 -0
  188. package/src/App.vue +61 -0
  189. package/src/api/aims.js +8 -0
  190. package/src/api/common.js +254 -0
  191. package/src/api/fileApi.js +33 -0
  192. package/src/api/setting.js +249 -0
  193. package/src/config/appSettings.js +12 -0
  194. package/src/config/favicon.ico +0 -0
  195. package/src/css/autoFill.scss +252 -0
  196. package/src/css/selectTreeUnit.scss +254 -0
  197. package/src/filter/filter.js +1 -0
  198. package/src/filter/index.js +274 -0
  199. package/src/fonts/demo.css +539 -0
  200. package/src/fonts/iconfont.css +21 -0
  201. package/src/fonts/iconfont.js +1 -0
  202. package/src/fonts/iconfont.json +23 -0
  203. package/src/fonts/iconfont.ttf +0 -0
  204. package/src/index.js +161 -0
  205. package/src/locale/format.js +47 -0
  206. package/src/locale/index.js +48 -0
  207. package/src/locale/lang/cn2hk.json +1270 -0
  208. package/src/locale/lang/en.js +73 -0
  209. package/src/locale/lang/es.js +7 -0
  210. package/src/locale/lang/index.js +66 -0
  211. package/src/locale/lang/ja.js +7 -0
  212. package/src/locale/lang/zh.js +74 -0
  213. package/src/locale/lang/zht.js +27 -0
  214. package/src/main.js +49 -0
  215. package/src/preview/page/Aside/index.vue +60 -0
  216. package/src/preview/router.js +107 -0
  217. package/src/utils/auth.js +12 -0
  218. package/src/utils/directive/asciiWidth.js +107 -0
  219. package/src/utils/directive/clickOutside.js +21 -0
  220. package/src/utils/directive/vtitle.js +140 -0
  221. package/src/utils/excel.js +538 -0
  222. package/src/utils/index.js +581 -0
  223. package/src/utils/request.js +157 -0
  224. package/src/utils/requestCache.js +68 -0
  225. package/src/utils/session.js +36 -0
  226. package/src/utils/thems.js +62 -0
  227. package/src/utils/token.js +26 -0
  228. package/src/utils/tools.js +317 -0
  229. package/src/utils/utils.js +513 -0
  230. package/types/favicon.ico +0 -0
  231. package/vue.config.js +49 -0
@@ -0,0 +1,422 @@
1
+ <template>
2
+ <ClPage :style="{ height: test ? '100%' : '' }">
3
+ <div slot="header" ref="formWrap">
4
+ <div class="flex-box flex-r">
5
+ <el-button
6
+ icon="n20-icon-shuaxin"
7
+ plain
8
+ onlyicon
9
+ size="mini"
10
+ @click="refresh"
11
+ />
12
+ <el-button
13
+ icon="n20-icon-iconfontshaixuan "
14
+ plain
15
+ onlyicon
16
+ size="mini"
17
+ class="m-l-s"
18
+ @click="multiple = !multiple"
19
+ />
20
+ <el-dropdown trigger="click" class="m-l-s" @command="exportFn">
21
+ <span class="el-dropdown-link">
22
+ <el-button size="mini" plain>
23
+ {{ $l("导出") }}<i class="el-icon-arrow-down"></i
24
+ ></el-button>
25
+ </span>
26
+ <el-dropdown-menu slot="dropdown">
27
+ <el-dropdown-item command="xls">{{
28
+ $l(".xls格式")
29
+ }}
30
+ </el-dropdown-item>
31
+ <el-dropdown-item command="xlsx">{{
32
+ $l(".xlsx格式")
33
+ }}
34
+ </el-dropdown-item>
35
+ </el-dropdown-menu>
36
+ </el-dropdown>
37
+ </div>
38
+ <ClAdvancedFilter
39
+ :visible.sync="multiple"
40
+ :filterId="`RulesManage-payment-filter-rules-${settingSource}432-rf3231`"
41
+ :model="formData"
42
+ onlyKey="id"
43
+ :filter-list="filterList"
44
+ @search="refresh"
45
+ @enter="refresh"
46
+ @clear="clearSearch"
47
+ />
48
+ </div>
49
+ <div style="flex: 1; position: relative; height: 100%">
50
+ <div style="position: absolute; width: 100%; height: 100%">
51
+ <CLTablePro
52
+ ref="vTable"
53
+ :loading="loading"
54
+ :data="tableData"
55
+ :columns="tableHeader"
56
+ :height="'100%'"
57
+ :clearSelect="false"
58
+ auto-resize
59
+ :rowConfig="{
60
+ keyField: 'md5Code'
61
+ }"
62
+ :checkboxConfig="{
63
+ reserve: true,
64
+ }"
65
+ :key="`table-pro-${fillField.length}`"
66
+ @selection-change-method="handleSelectionChange"
67
+ @sort-change-method="sortChange"
68
+ >
69
+ <vxe-column
70
+ slot="usedUnit"
71
+ slot-scope="{ column }"
72
+ v-bind="column"
73
+ :field="column.prop"
74
+ :title="column.label"
75
+ >
76
+ <template slot-scope="{ row }">
77
+ <div v-html="row.usedUnit || '--'" :title="row.usedUnits"></div>
78
+ </template>
79
+ </vxe-column>
80
+ <vxe-column
81
+ slot="matchingId"
82
+ slot-scope="{ column }"
83
+ v-bind="column"
84
+ :field="column.prop"
85
+ :title="column.label"
86
+ >
87
+ <template slot-scope="{ row }">
88
+ <el-button
89
+ type="text"
90
+ @click="
91
+ $router.push({
92
+ path: '/RulesDetailHiId',
93
+ query: { id: row.matchingIdHi },
94
+ })
95
+ "
96
+ >{{ row.matchingId }}-{{ row.matchingIdHi }}
97
+ </el-button
98
+ >
99
+ </template>
100
+ </vxe-column>
101
+ <vxe-colgroup
102
+ width="220"
103
+ slot="fillInfo"
104
+ :title="$l('补填信息')"
105
+ align="center"
106
+ >
107
+ <template v-for="item in fillField">
108
+ <vxe-column
109
+ v-if="fillField.length"
110
+ :key="item.fieldCode"
111
+ :field="item.fieldCode"
112
+ :title="item.fieldName"
113
+ align="center"
114
+ :width="200"
115
+ >
116
+ <template slot-scope="scope">
117
+ <div>
118
+ {{ scope.row[item.fieldCode] || "--" }}
119
+ </div>
120
+ </template>
121
+ </vxe-column>
122
+ </template>
123
+ </vxe-colgroup>
124
+ </CLTablePro>
125
+ </div>
126
+ </div>
127
+ <div
128
+ class="page-footer-shadow flex-box flex-lr flex-v pt-4 pb-4"
129
+ slot="footer"
130
+ >
131
+ <div class="flex-box flex-v">
132
+ <StatisItem
133
+ :type="$l('已选合计')"
134
+ :list="[{ label: $l('笔数'), value: selectRows.length }]"
135
+ />
136
+ <StatisItem
137
+ :type="$l('全部合计')"
138
+ :list="[{ label: $l('笔数'), value: pagination.total }]"
139
+ />
140
+ </div>
141
+ <ClPagination
142
+ :page-obj="pagination"
143
+ :page-key="{ no: 'current', size: 'size', total: 'total' }"
144
+ @change="queryData"
145
+ />
146
+ </div>
147
+ </ClPage>
148
+ </template>
149
+
150
+ <script>
151
+ import {
152
+ StatisItem,
153
+ AdvancedFilter as ClAdvancedFilter, dayjs,
154
+ Dialog as CLDialog,
155
+ Page as ClPage,
156
+ Pagination as ClPagination, TablePro as CLTablePro
157
+ } from "n20-common-lib";
158
+ import {AutoFillListFilter, AutoFillListHeader} from "^/AutoFillList/src/components/config";
159
+ import {matchingHisList, matchingSetting} from "@/api/setting";
160
+ import downloadBlob from "n20-common-lib/src/utils/downloadBlob";
161
+
162
+ export default {
163
+ name: "NstcAutoFillRuleHistory",
164
+ components: {CLTablePro, ClPagination, CLDialog, ClPage, ClAdvancedFilter, StatisItem},
165
+
166
+ props: {
167
+ // 1:收入 2: 支出
168
+ settingSource: {
169
+ type: [Number, String],
170
+ default: "2",
171
+ },
172
+ test: {
173
+ type: Boolean,
174
+ default: false,
175
+ },
176
+ pageRelaNo: {
177
+ type: Object,
178
+ default: () => {
179
+ return {
180
+ query: null,
181
+ export: null, //导出
182
+ };
183
+ },
184
+ },
185
+ },
186
+ data(vm) {
187
+ return {
188
+ Dvisible: false,
189
+ pagination: {
190
+ size: 50,
191
+ current: 1,
192
+ total: 0,
193
+ },
194
+ multiple: true,
195
+ visible: false,
196
+ btns: [
197
+ {
198
+ label: vm.$l("修改"),
199
+ isHas: (row) => vm.$hasG(vm.pageRelaNo.edit),
200
+ command: "xg",
201
+ },
202
+ {
203
+ label: vm.$l("复制"),
204
+ isHas: (row) => vm.$hasG(vm.pageRelaNo.copy),
205
+ command: "fz",
206
+ },
207
+ {
208
+ label: vm.$l("删除"),
209
+ isHas: (row) => vm.$hasG(vm.pageRelaNo.delete),
210
+ command: "sc",
211
+ },
212
+ ],
213
+ formData: {
214
+ cltNo: "",
215
+ getNo: "",
216
+ getName: "",
217
+ infos: "",
218
+ pacntNo: "",
219
+ pacntName: "",
220
+ ruleName: "",
221
+ applyRangeList: [],
222
+ fillWayList: [],
223
+ autoSubmitList: [],
224
+ },
225
+ loading: false,
226
+ tableData: [],
227
+ selectRowIds: [],
228
+ selectRows: [],
229
+ fillField: [], // 补填动态字段
230
+ filterList: AutoFillListFilter,
231
+ tableHeader: [],
232
+ fillCommonConditionList: [],
233
+ orders: {action: "DESC", key: "updateTime"},
234
+ };
235
+ },
236
+
237
+ async mounted() {
238
+ this.tableHeader = [...AutoFillListHeader]
239
+ this.tableHeader.splice(10, 1,
240
+ {
241
+ label: "生效时间",
242
+ prop: "effectiveTime",
243
+ align: "center",
244
+ width: "180",
245
+ sortable: true,
246
+ "show-overflow-tooltip": true,
247
+ },
248
+ {
249
+ label: "失效时间",
250
+ prop: "updateTime",
251
+ align: "center",
252
+ width: "180",
253
+ sortable: true,
254
+ "show-overflow-tooltip": true,
255
+ },
256
+ );
257
+ console.log(this.tableHeader)
258
+ await this.matchingSetting();
259
+ },
260
+ activated() {
261
+ this.queryData();
262
+ },
263
+ methods: {
264
+ clearSearch() {
265
+ for (const key in this.formData) {
266
+ const el = this.formData[key];
267
+ if (Array.isArray(el)) {
268
+ this.formData[key] = [];
269
+ } else {
270
+ this.formData[key] = "";
271
+ }
272
+ }
273
+ },
274
+ // 后端导出
275
+ async exportFn(type) {
276
+ let params = {};
277
+ if (this.selectRowIds && this.selectRowIds.length > 0) {
278
+ params = {
279
+ matchingIdList: this.selectRowIds,
280
+ };
281
+ } else {
282
+ params = {
283
+ ...this.formData,
284
+ settingSource: this.settingSource,
285
+ sort: this.orders,
286
+ page: {
287
+ current: 1,
288
+ size: -1,
289
+ },
290
+ };
291
+ }
292
+ params.exportType = type;
293
+ let res = await this.$axios.post('/api/aims/record/record-matching/1.0/history/export', params, {responseType: "blob"});
294
+ let t = dayjs().format("YYYYMMDD");
295
+ let fn = this.$l("历史规则查询") + "-" + t + "." + type;
296
+ downloadBlob(res, fn);
297
+ return this.$message.success(this.$l("导出成功"));
298
+ },
299
+ // 获取动态匹配/补填字段
300
+ async matchingSetting() {
301
+ this.fillCommonConditionList = [];
302
+ this.fillField = await matchingSetting(2,this.settingSource);
303
+ this.fillField = this.fillField.filter(
304
+ (item) => !item.fieldCode.includes("Extend")
305
+ );
306
+ //1:收入 2: 支出
307
+ if (this.settingSource == '2') {
308
+ this.fillField = this.fillField.filter((item) => item.fieldCode != 'paymentCategory');
309
+ }
310
+ // 收款排除付款类型
311
+ if (this.settingSource == '1') {
312
+ this.fillField = this.fillField.filter((item) => item.fieldCode != 'paymentTypeNo');
313
+ }
314
+ for (let i of this.fillField) {
315
+ this.fillCommonConditionList.push({
316
+ fillFieldCode: i.fieldCode,
317
+ fillValueLike: "",
318
+ });
319
+ let flag = this.filterList.find((item) => item.value == i.fieldCode);
320
+ if (!flag) {
321
+ this.filterList.push({
322
+ id: i.fieldCode,
323
+ label: i.fieldName, //规则编号
324
+ type: "text",
325
+ isDefault: false,
326
+ value: i.fieldCode,
327
+ props: {
328
+ clearable: true,
329
+ },
330
+ });
331
+ }
332
+ }
333
+ },
334
+ refresh() {
335
+ this.pagination.current = 1;
336
+ this.clearSelect();
337
+ this.queryData();
338
+ },
339
+ clearSelect() {
340
+ this.$refs["vTable"].$refs["vxeTable"].clearCheckboxRow();
341
+ this.$refs.vTable?.$refs?.[`vxeTable`]?.clearCheckboxReserve();
342
+ this.selectRows = [];
343
+ },
344
+ sortChange(data) {
345
+ if (!data.length) {
346
+ this.orders = {action: "DESC", key: "updateTime"};
347
+ return;
348
+ }
349
+ let obj = data[0] || {};
350
+ this.orders = {
351
+ action: obj.asc ? "ASC" : "DESC",
352
+ key: obj.column,
353
+ };
354
+ this.queryData();
355
+ },
356
+ async queryData() {
357
+ let map = {...this.formData};
358
+ for (let i of this.fillCommonConditionList) {
359
+ if (map[i.fillFieldCode]) {
360
+ i.fillValueLike = map[i.fillFieldCode];
361
+ } else {
362
+ i.fillValueLike = undefined;
363
+ }
364
+ }
365
+ const params = {
366
+ page: {
367
+ current: this.pagination.current,
368
+ size: this.pagination.size,
369
+ },
370
+ settingSource: this.settingSource,
371
+ sort: this.orders,
372
+ fillCommonConditionList: this.fillCommonConditionList,
373
+ ...map,
374
+ };
375
+ try {
376
+ this.loading = true
377
+ const {records, total} = await matchingHisList(params);
378
+ this.tableData = (records || []).map((item) => {
379
+ if (typeof item.usedUnit == "string") {
380
+ item.usedUnit = JSON.parse(item.usedUnit);
381
+ item.usedUnits = item.usedUnit;
382
+ }
383
+ if (item.usedUnit?.length > 5) {
384
+ item.usedUnit = item.usedUnit.slice(0, 5);
385
+ item.usedUnit.push({unitName: "....."});
386
+ }
387
+ for (let i of item.matchingFillCommons) {
388
+ let fv = undefined;
389
+ try {
390
+ fv = JSON.parse(i.fillValue);
391
+ } catch {
392
+ }
393
+ item[i.fillFieldCode] = fv?.budgetAccountName || fv?.name;
394
+ }
395
+ console.log(window.btoa(`${item.matchingId}${item.updateTime}`))
396
+ return {
397
+ ...item,
398
+ md5Code: window.btoa(`${item.matchingId}${item.updateTime}`),
399
+ usedUnits: item.usedUnits?.map((item) => item.unitName)?.join("\n"),
400
+ usedUnit: item.usedUnit?.map((item) => item.unitName)?.join("<br/>"),
401
+ };
402
+ });
403
+ this.pagination.total = total || 0;
404
+ } catch (err) {
405
+ console.error(err)
406
+ this.tableData = []
407
+ this.pagination.total = 0
408
+ } finally {
409
+ this.loading = false
410
+ }
411
+ },
412
+ handleSelectionChange(rows) {
413
+ const rowIds = [];
414
+ rows.forEach((item) => {
415
+ rowIds.push(item.matchingIdHi);
416
+ });
417
+ this.selectRowIds = Object.freeze(rowIds);
418
+ this.selectRows = rows;
419
+ },
420
+ },
421
+ }
422
+ </script>
@@ -0,0 +1,7 @@
1
+ import NstcAutoFillService from './src/main'
2
+
3
+ NstcAutoFillService.install = function(Vue) {
4
+ Vue.component(NstcAutoFillService.name, NstcAutoFillService)
5
+ }
6
+
7
+ export default NstcAutoFillService