sh-view 2.9.14 → 2.9.16

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 (25) hide show
  1. package/package.json +65 -65
  2. package/packages/components/sh-date/index.vue +2 -0
  3. package/packages/components/sh-table/components/importModal.vue +1 -1
  4. package/packages/components/sh-tree/components/table-tree.vue +4 -2
  5. package/packages/components/sh-tree/css/index.scss +1 -0
  6. package/packages/components/sh-tree/index.vue +16 -7
  7. package/packages/vxeTable/css/index.scss +2 -3
  8. package/packages/vxeTable/index.js +1 -1
  9. package/packages/vxeTable/render/cell/vxe-render-checkbox.vue +6 -8
  10. package/packages/vxeTable/render/cell/vxe-render-checkgroup.vue +12 -14
  11. package/packages/vxeTable/render/cell/vxe-render-code.vue +14 -16
  12. package/packages/vxeTable/render/cell/vxe-render-img.vue +1 -3
  13. package/packages/vxeTable/render/cell/vxe-render-input.vue +1 -1
  14. package/packages/vxeTable/render/cell/vxe-render-money.vue +1 -1
  15. package/packages/vxeTable/render/cell/vxe-render-progress.vue +6 -8
  16. package/packages/vxeTable/render/cell/vxe-render-radio.vue +6 -8
  17. package/packages/vxeTable/render/cell/vxe-render-radiogroup.vue +12 -14
  18. package/packages/vxeTable/render/cell/vxe-render-select.vue +16 -18
  19. package/packages/vxeTable/render/cell/vxe-render-switch.vue +6 -8
  20. package/packages/vxeTable/render/cell/vxe-render-table.vue +1 -10
  21. package/packages/vxeTable/render/cell/vxe-render-textarea.vue +6 -8
  22. package/packages/vxeTable/render/cell/vxe-render-time.vue +6 -8
  23. package/packages/vxeTable/render/cell/vxe-render-tree.vue +15 -22
  24. package/packages/vxeTable/render/cell/vxe-render-upload.vue +6 -8
  25. package/packages/vxeTable/render/header/vxe-header-money.vue +2 -4
package/package.json CHANGED
@@ -1,67 +1,67 @@
1
1
  {
2
- "name": "sh-view",
3
- "version": "2.9.14",
4
- "description": "基于vxe-table二次封装,更包含Alert,Badge,Card,CodeEditor,Col,Corner,CountTo,Drawer,Empty,Form,Header,Icon,List,Loading,Modal,Noticebar,Poptip,Progress,PullRefresh,Query,Result,Row,Split,Grid,Table,Tabs,Tag,Toolbar,Tree,Upload,WaterFall,WaterMark等丰富组件库",
5
- "main": "packages/index.js",
6
- "typings": "types/index.d.ts",
7
- "scripts": {
8
- "serve": "vue-cli-service serve",
9
- "build": "vue-cli-service build",
10
- "lib": "vue-cli-service build --target lib packages/index.js --name sh-view --dest lib"
11
- },
12
- "keywords": [
13
- "sh-view"
14
- ],
15
- "author": "神秘的sh",
16
- "license": "ISC",
17
- "dependencies": {
18
- "@babel/eslint-parser": "^7.23.10",
19
- "@codemirror/lang-javascript": "^6.1.9",
20
- "@codemirror/lang-json": "^6.0.1",
21
- "@codemirror/lang-sql": "^6.5.2",
22
- "@vxe-ui/plugin-export-pdf": "^4.2.4",
23
- "@vxe-ui/plugin-export-xlsx": "^4.3.0",
24
- "@vxe-ui/plugin-menu": "^4.1.0",
25
- "@vxe-ui/plugin-render-wangeditor": "^4.0.5",
26
- "@wangeditor/editor": "^5.1.23",
27
- "@wolf-table/table": "^0.0.1",
28
- "babel-polyfill": "^6.26.0",
29
- "codemirror": "^6.0.2",
30
- "core-js": "^3.32.2",
31
- "countup.js": "^2.8.0",
32
- "cron-parser": "^4.8.1",
33
- "docx-preview": "^0.1.18",
34
- "exceljs": "^4.4.0",
35
- "jspdf": "^2.5.2",
36
- "jszip": "^3.10.1",
37
- "lunar-typescript": "^1.6.10",
38
- "popper.js": "^1.16.1",
39
- "sh-tools": "^2.2.19",
40
- "vue": "^3.5.20",
41
- "vue-masonry": "^0.16.0",
42
- "vue-router": "^4.5.1",
43
- "vxe-pc-ui": "^4.9.6",
44
- "vxe-table": "^4.16.1"
45
- },
46
- "devDependencies": {
47
- "@typescript-eslint/eslint-plugin": "^6.9.0",
48
- "@typescript-eslint/parser": "^6.9.0",
49
- "@vue/cli-plugin-babel": "~5.0.8",
50
- "@vue/cli-plugin-eslint": "~5.0.8",
51
- "@vue/cli-plugin-router": "~5.0.8",
52
- "@vue/cli-plugin-typescript": "^5.0.8",
53
- "@vue/cli-plugin-vuex": "~5.0.8",
54
- "@vue/cli-service": "~5.0.8",
55
- "@vue/eslint-config-typescript": "^12.0.0",
56
- "babel-loader": "^9.1.2",
57
- "compression-webpack-plugin": "~6.1.1",
58
- "eslint": "^7.32.0",
59
- "eslint-config-prettier": "^8.3.0",
60
- "eslint-plugin-prettier": "^4.0.0",
61
- "eslint-plugin-vue": "^9.0.0",
62
- "prettier": "^2.4.1",
63
- "sass": "^1.32.7",
64
- "sass-loader": "^12.0.0",
65
- "typescript": "^5.2.2"
66
- }
2
+ "name": "sh-view",
3
+ "version": "2.9.16",
4
+ "description": "基于vxe-table二次封装,更包含Alert,Badge,Card,CodeEditor,Col,Corner,CountTo,Drawer,Empty,Form,Header,Icon,List,Loading,Modal,Noticebar,Poptip,Progress,PullRefresh,Query,Result,Row,Split,Grid,Table,Tabs,Tag,Toolbar,Tree,Upload,WaterFall,WaterMark等丰富组件库",
5
+ "main": "packages/index.js",
6
+ "typings": "types/index.d.ts",
7
+ "scripts": {
8
+ "serve": "vue-cli-service serve",
9
+ "build": "vue-cli-service build",
10
+ "lib": "vue-cli-service build --target lib packages/index.js --name sh-view --dest lib"
11
+ },
12
+ "keywords": [
13
+ "sh-view"
14
+ ],
15
+ "author": "神秘的sh",
16
+ "license": "ISC",
17
+ "dependencies": {
18
+ "@babel/eslint-parser": "^7.23.10",
19
+ "@codemirror/lang-javascript": "^6.1.9",
20
+ "@codemirror/lang-json": "^6.0.1",
21
+ "@codemirror/lang-sql": "^6.5.2",
22
+ "@vxe-ui/plugin-export-pdf": "^4.2.4",
23
+ "@vxe-ui/plugin-export-xlsx": "^4.3.0",
24
+ "@vxe-ui/plugin-menu": "^4.1.0",
25
+ "@vxe-ui/plugin-render-wangeditor": "^4.0.5",
26
+ "@wangeditor/editor": "^5.1.23",
27
+ "@wolf-table/table": "^0.0.1",
28
+ "babel-polyfill": "^6.26.0",
29
+ "codemirror": "^6.0.2",
30
+ "core-js": "^3.32.2",
31
+ "countup.js": "^2.8.0",
32
+ "cron-parser": "^4.8.1",
33
+ "docx-preview": "^0.1.18",
34
+ "exceljs": "^4.4.0",
35
+ "jspdf": "^3.0.4",
36
+ "jszip": "^3.10.1",
37
+ "lunar-typescript": "^1.6.10",
38
+ "popper.js": "^1.16.1",
39
+ "sh-tools": "^2.2.19",
40
+ "vue": "^3.5.20",
41
+ "vue-masonry": "^0.16.0",
42
+ "vue-router": "^4.5.1",
43
+ "vxe-pc-ui": "^4.9.6",
44
+ "vxe-table": "^4.16.1"
45
+ },
46
+ "devDependencies": {
47
+ "@typescript-eslint/eslint-plugin": "^6.9.0",
48
+ "@typescript-eslint/parser": "^6.9.0",
49
+ "@vue/cli-plugin-babel": "~5.0.8",
50
+ "@vue/cli-plugin-eslint": "~5.0.8",
51
+ "@vue/cli-plugin-router": "~5.0.8",
52
+ "@vue/cli-plugin-typescript": "^5.0.8",
53
+ "@vue/cli-plugin-vuex": "~5.0.8",
54
+ "@vue/cli-service": "~5.0.8",
55
+ "@vue/eslint-config-typescript": "^12.0.0",
56
+ "babel-loader": "^9.1.2",
57
+ "compression-webpack-plugin": "~6.1.1",
58
+ "eslint": "^7.32.0",
59
+ "eslint-config-prettier": "^8.3.0",
60
+ "eslint-plugin-prettier": "^4.0.0",
61
+ "eslint-plugin-vue": "^9.0.0",
62
+ "prettier": "^2.4.1",
63
+ "sass": "^1.32.7",
64
+ "sass-loader": "^12.0.0",
65
+ "typescript": "^5.2.2"
66
+ }
67
67
  }
@@ -203,12 +203,14 @@ export default defineComponent({
203
203
  let formarValue = rangeValue.value.map(item => $vUtils.toDateString(item, calendarFormat.value))
204
204
  if (code === 'value') {
205
205
  emit('update:modelValue', formarValue)
206
+ emit('input', { value: formarValue, params })
206
207
  } else {
207
208
  emit(code, { value: formarValue, params })
208
209
  }
209
210
  } else {
210
211
  if (code === 'change') {
211
212
  emit('update:modelValue', params.value)
213
+ emit('input', params)
212
214
  }
213
215
  emit(code, params)
214
216
  }
@@ -155,7 +155,7 @@ export default defineComponent({
155
155
  }
156
156
  // 下载导入模板按钮
157
157
  const handleDownloadTemplateBtn = () => {
158
- const parentTable = shtable.value.tableRef.value
158
+ const parentTable = shtable.value.tableRef
159
159
  if (typeof props.downloadTemplateCallback === 'function') {
160
160
  props.downloadTemplateCallback()
161
161
  }
@@ -113,7 +113,9 @@ export default defineComponent({
113
113
  tableRef.value.setRadioRow(checkRows[0])
114
114
  }
115
115
  }
116
- tableRef.value.scrollToRow({ [nodeKey]: modelValue[0] })
116
+ setTimeout(() => {
117
+ tableRef.value.scrollToRow({ [nodeKey]: modelValue[0] })
118
+ })
117
119
  })
118
120
  }
119
121
  // 单选框变化
@@ -148,7 +150,7 @@ export default defineComponent({
148
150
  let searchData = null
149
151
  if (filterText) {
150
152
  let noSearchArr = ['$vGlobalOption', '$vImg', '$vCheckbox', '$vRadio', '$vUpload', '$vCode', 'seq', 'checkbox', 'radio']
151
- const searchProps = [{ rkey: labelField, rname: '', rprops: {}, format: labelFormat }]
153
+ const searchProps = [{ rkey: labelField, rname: '$vTree', rprops: { format: labelFormat } }]
152
154
  let tableColumnsAll = tableRef.value.getColumns()
153
155
  tableColumnsAll.forEach(col => {
154
156
  let renderObj = col.cellRender || col.editRender || col.itemRender
@@ -3,6 +3,7 @@
3
3
  width: 100%;
4
4
  display: block;
5
5
  padding: 0;
6
+ overflow: hidden;
6
7
  &.direct{
7
8
  height: 100%;
8
9
  }
@@ -41,12 +41,15 @@ export default defineComponent({
41
41
  tableTree
42
42
  },
43
43
  props: {
44
- ...mixinProps
44
+ ...mixinProps,
45
+ http: {
46
+ type: Object
47
+ }
45
48
  },
46
- emits: ['update:modelValue', 'change', 'focus', 'blur'],
49
+ emits: ['update:modelValue', 'input', 'change', 'focus', 'blur'],
47
50
  setup(props, context) {
48
51
  const { proxy } = getCurrentInstance()
49
- const { $vUtils, $http } = proxy
52
+ const { $vUtils } = proxy
50
53
  const { emit, slots } = context
51
54
 
52
55
  const treeSelectRef = ref()
@@ -68,6 +71,7 @@ export default defineComponent({
68
71
 
69
72
  const wrapHeight = computed(() => ([100, '100%', 'auto'].includes(props.height) ? '100%' : 'auto'))
70
73
  const checkConfig = computed(() => ({ disabled: props.disabled, size: props.size }))
74
+ const selectValue = computed(() => (props.multiple ? selectedKeys.value : selectedKeys.value[0] || ''))
71
75
  const selectLabels = computed(() => {
72
76
  let { multiple, format, split, labelField } = props
73
77
  if (selectedKeys.value && Array.isArray(selectedKeys.value) && selectedKeys.value.length > 0) {
@@ -133,8 +137,12 @@ export default defineComponent({
133
137
  baseURL: serverConfig.baseURL
134
138
  }
135
139
  try {
140
+ const httpMethod = props.http || proxy.$http
141
+ if (!httpMethod) {
142
+ throw `暂未配置请求方法请检查!`
143
+ }
136
144
  let method = serverConfig?.type ? serverConfig.type.toLowerCase() : 'post'
137
- let treeRes = await $http[method](serverConfig.url, params, reqOptions)
145
+ let treeRes = await httpMethod[method](serverConfig.url, params, reqOptions)
138
146
  if (treeRes && [10000, 100000].includes(+treeRes.code)) {
139
147
  let treeAllNode = globalConfig?.hasAll && !multiple ? [{ [nodeKey]: 0, [labelField]: '全部', isleaf: 1, code: '' }] : []
140
148
  let treeResData = treeAllNode.concat(treeRes.data)
@@ -233,11 +241,11 @@ export default defineComponent({
233
241
  return
234
242
  }
235
243
  emitValue()
236
- emit('change', selectedKeys.value, selectedData.value)
244
+ emit('change', selectValue.value, selectedData.value)
237
245
  }
238
246
  // 回调blur事件
239
247
  const emitBlur = () => {
240
- emit('blur', selectedKeys.value, selectedData.value)
248
+ emit('blur', selectValue.value, selectedData.value)
241
249
  }
242
250
  // 回调双向绑定
243
251
  const emitValue = () => {
@@ -265,7 +273,8 @@ export default defineComponent({
265
273
  $vUtils.set(valueData, toKey, fromvalue)
266
274
  })
267
275
  }
268
- emit('update:modelValue', selectedKeys.value)
276
+ emit('input', selectValue.value)
277
+ emit('update:modelValue', selectValue.value)
269
278
  }
270
279
 
271
280
  onMounted(() => {
@@ -313,7 +313,7 @@ button:focus, .vxe-button.type--button:not(.is--disabled):focus{
313
313
  .vxe-render--inner.td-render.td-all{
314
314
  position: absolute;
315
315
  left: 0;
316
- right: 0;
316
+ right: 1px;
317
317
  top: 0;
318
318
  bottom: 0;
319
319
  display: flex;
@@ -351,14 +351,13 @@ button:focus, .vxe-button.type--button:not(.is--disabled):focus{
351
351
  position: absolute;
352
352
  top: 0;
353
353
  bottom: 0;
354
- height: 50%;
354
+ height: 50% !important;
355
355
  left: 0;
356
356
  right: 0;
357
357
  justify-content: center;
358
358
  overflow: visible;
359
359
  .header-bill-box{
360
360
  top: 100%;
361
- right: -2px;
362
361
  height: 100%;
363
362
  border-top: 1px solid var(--border-color);
364
363
  }
@@ -171,7 +171,7 @@ let tableOptions = {
171
171
  },
172
172
  customConfig: {
173
173
  enabled: true,
174
- storage: true
174
+ storage: false
175
175
  },
176
176
  seqConfig: {
177
177
  startIndex: 1
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'vxe-render--inner--readonly': !redit, 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-checkbox v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeCheckCallBack" />
5
- </template>
6
- <template v-else>
7
- <vxe-checkbox :model-value="renderText" :disabled="true" :size="rsize" v-bind="rprops" />
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-checkbox v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeCheckCallBack" />
4
+ </template>
5
+ <template v-else>
6
+ <vxe-checkbox :model-value="renderText" :disabled="true" :size="rsize" v-bind="rprops" />
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,19 +1,17 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-checkbox-group v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeCheckCallBack">
5
- <vxe-checkbox v-for="checkitem in rprops.options" :key="checkitem.value" :label="checkitem.value" :content="checkitem.label" />
6
- </vxe-checkbox-group>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-checkbox-group v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeCheckCallBack">
4
+ <vxe-checkbox v-for="checkitem in rprops.options" :key="checkitem.value" :label="checkitem.value" :content="checkitem.label" />
5
+ </vxe-checkbox-group>
6
+ </template>
7
+ <template v-else-if="!redit && showType">
8
+ <template v-for="roption in rprops.options" :key="roption">
9
+ <sh-tag v-if="roptionShow(roption)" :color="roption.tagColor || rprops.tagColor" :type="roption.tagType || rprops.tagType">{{ roption.label }}</sh-tag>
7
10
  </template>
8
- <template v-else-if="!redit && showType">
9
- <template v-for="roption in rprops.options" :key="roption">
10
- <sh-tag v-if="roptionShow(roption)" :color="roption.tagColor || rprops.tagColor" :type="roption.tagType || rprops.tagType">{{ roption.label }}</sh-tag>
11
- </template>
12
- </template>
13
- <template v-else>
14
- <span v-html="renderText"></span>
15
- </template>
16
- </span>
11
+ </template>
12
+ <template v-else>
13
+ <span v-html="renderText"></span>
14
+ </template>
17
15
  </template>
18
16
 
19
17
  <script>
@@ -1,20 +1,18 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <span v-if="rprops.prefixText && rform" class="prefix">
5
- <vxe-button v-if="prefixButton" v-bind="psButtonConfig" @click="vxeInputPrefixClick">{{ rprops.prefixText }}</vxe-button>
6
- <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
7
- </span>
8
- <sh-code-editor v-model="renderValue" v-bind="rprops" @change="vxeInputChange" @blur="vxeBlurCallback"></sh-code-editor>
9
- <span v-if="rprops.suffixText && rform" class="suffix">
10
- <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
11
- <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
12
- </span>
13
- </template>
14
- <template v-else>
15
- <span>{{ renderText }}</span>
16
- </template>
17
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <span v-if="rprops.prefixText && rform" class="prefix">
4
+ <vxe-button v-if="prefixButton" v-bind="psButtonConfig" @click="vxeInputPrefixClick">{{ rprops.prefixText }}</vxe-button>
5
+ <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
6
+ </span>
7
+ <sh-code-editor v-model="renderValue" v-bind="rprops" @change="vxeInputChange" @blur="vxeBlurCallback"></sh-code-editor>
8
+ <span v-if="rprops.suffixText && rform" class="suffix">
9
+ <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
10
+ <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
11
+ </span>
12
+ </template>
13
+ <template v-else>
14
+ <span>{{ renderText }}</span>
15
+ </template>
18
16
  </template>
19
17
 
20
18
  <script>
@@ -1,7 +1,5 @@
1
1
  <template>
2
- <span class="vxe-render--inner">
3
- <vxe-image class="vxe-render--inner-img" :src="imgSrc" v-bind="rprops" :height="imgHeight"></vxe-image>
4
- </span>
2
+ <vxe-image class="vxe-render--inner-img" :src="imgSrc" v-bind="rprops" :height="imgHeight"></vxe-image>
5
3
  </template>
6
4
 
7
5
  <script>
@@ -6,7 +6,7 @@
6
6
  <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
7
7
  </span>
8
8
  <span v-else-if="controlButton" class="control-btn before" @click="vxeControlClick(false)">-</span>
9
- <vxe-input v-model="renderValue" v-bind="rprops" :size="rsize" :immediate="false" @change="vxeInputChange" @blur="vxeBlurCallback" @clear="vxeBlurCallback"></vxe-input>
9
+ <vxe-input v-model="renderValue" v-bind="rprops" :size="rsize" :immediate="false" @change="vxeInputChange" @input="vxeBlurCallback"></vxe-input>
10
10
  <span v-if="rprops.suffixText && rform" class="suffix">
11
11
  <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
12
12
  <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
@@ -1,7 +1,7 @@
1
1
  <template>
2
2
  <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform, 'td-all': rprops.bill }">
3
3
  <template v-if="redit || isEditAll">
4
- <vxe-number-input v-model="renderText" v-bind="rprops" :size="rsize" :immediate="false" @change="vxeInputChange" @blur="vxeMoneyCallback" @clear="vxeMoneyCallback" />
4
+ <vxe-number-input v-model="renderText" v-bind="rprops" :size="rsize" :immediate="false" @change="vxeInputChange" @input="vxeMoneyCallback" />
5
5
  </template>
6
6
  <template v-else-if="rprops.bill">
7
7
  <template v-for="(bil, bilindex) in billGroups" :key="bilindex">
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-input v-model="renderValue" type="number" v-bind="rprops" :size="rsize" @change="vxeInputChange" @blur="vxeBlurCallback" @clear="vxeBlurCallback" />
5
- </template>
6
- <template v-else>
7
- <sh-progress :percent="renderText" v-bind="rprops" />
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-input v-model="renderValue" type="number" v-bind="rprops" :size="rsize" @change="vxeInputChange" @input="vxeBlurCallback" />
4
+ </template>
5
+ <template v-else>
6
+ <sh-progress :percent="renderText" v-bind="rprops" />
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'vxe-render--inner--readonly': !redit, 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-radio v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeRadioCallBack" />
5
- </template>
6
- <template v-else>
7
- <vxe-radio :model-value="renderText" :disabled="true" v-bind="rprops" :size="rsize" />
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-radio v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeRadioCallBack" />
4
+ </template>
5
+ <template v-else>
6
+ <vxe-radio :model-value="renderText" :disabled="true" v-bind="rprops" :size="rsize" />
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,19 +1,17 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-radio-group v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeRadioCallBack">
5
- <vxe-radio v-for="checkitem in rprops.options" :key="checkitem.value" :label="checkitem.value" :content="checkitem.label" />
6
- </vxe-radio-group>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-radio-group v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeRadioCallBack">
4
+ <vxe-radio v-for="checkitem in rprops.options" :key="checkitem.value" :label="checkitem.value" :content="checkitem.label" />
5
+ </vxe-radio-group>
6
+ </template>
7
+ <template v-else-if="!redit && showType">
8
+ <template v-for="roption in rprops.options" :key="roption">
9
+ <sh-tag v-if="roptionShow(roption)" :color="roption.tagColor || rprops.tagColor" :type="roption.tagType || rprops.tagType">{{ roption.label }}</sh-tag>
7
10
  </template>
8
- <template v-else-if="!redit && showType">
9
- <template v-for="roption in rprops.options" :key="roption">
10
- <sh-tag v-if="roptionShow(roption)" :color="roption.tagColor || rprops.tagColor" :type="roption.tagType || rprops.tagType">{{ roption.label }}</sh-tag>
11
- </template>
12
- </template>
13
- <template v-else>
14
- <span v-html="renderText"></span>
15
- </template>
16
- </span>
11
+ </template>
12
+ <template v-else>
13
+ <span v-html="renderText"></span>
14
+ </template>
17
15
  </template>
18
16
 
19
17
  <script>
@@ -1,23 +1,21 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <span v-if="rprops.prefixText && rform" class="prefix">
5
- <vxe-button v-if="prefixButton" v-bind="psButtonConfig" @click="vxeInputPrefixClick">{{ rprops.prefixText }}</vxe-button>
6
- <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
7
- </span>
8
- <vxe-select v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeChangeCallBack" />
9
- <span v-if="rprops.suffixText && rform" class="suffix">
10
- <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
11
- <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
12
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <span v-if="rprops.prefixText && rform" class="prefix">
4
+ <vxe-button v-if="prefixButton" v-bind="psButtonConfig" @click="vxeInputPrefixClick">{{ rprops.prefixText }}</vxe-button>
5
+ <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
6
+ </span>
7
+ <vxe-select v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeChangeCallBack" />
8
+ <span v-if="rprops.suffixText && rform" class="suffix">
9
+ <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
10
+ <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
11
+ </span>
12
+ </template>
13
+ <template v-else-if="!redit && showType">
14
+ <template v-for="showTag in showTags" :key="showTag.value">
15
+ <sh-tag :color="showTag.tagColor || rprops.tagColor" :type="showTag.tagType || rprops.tagType">{{ showTag.label }}</sh-tag>
13
16
  </template>
14
- <template v-else-if="!redit && showType">
15
- <template v-for="showTag in showTags" :key="showTag.value">
16
- <sh-tag :color="showTag.tagColor || rprops.tagColor" :type="showTag.tagType || rprops.tagType">{{ showTag.label }}</sh-tag>
17
- </template>
18
- </template>
19
- <span v-else v-html="renderText"></span>
20
- </span>
17
+ </template>
18
+ <span v-else v-html="renderText"></span>
21
19
  </template>
22
20
 
23
21
  <script>
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'vxe-render--inner--readonly': !redit, 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-switch v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeChangeCallBack" />
5
- </template>
6
- <template v-else>
7
- <span v-html="renderText"></span>
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-switch v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeChangeCallBack" />
4
+ </template>
5
+ <template v-else>
6
+ <span v-html="renderText"></span>
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,14 +1,5 @@
1
1
  <template>
2
- <span class="vxe-render--inner" style="display: inline-grid; width: 100%">
3
- <sh-table
4
- ref="shTableRef"
5
- :disabled="!redit && !isEditAll"
6
- v-bind="rprops"
7
- :size="rsize"
8
- :data-sourse="renderValue"
9
- @edit-closed="vxeTableCallback"
10
- @toolbaroption="onToolbaroption"></sh-table>
11
- </span>
2
+ <sh-table ref="shTableRef" :disabled="!redit && !isEditAll" v-bind="rprops" :size="rsize" :data-sourse="renderValue" @edit-closed="vxeTableCallback" @toolbaroption="onToolbaroption"></sh-table>
12
3
  </template>
13
4
 
14
5
  <script>
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <vxe-textarea v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeInputChange" @blur="vxeBlurCallback" @clear="vxeBlurCallback" />
5
- </template>
6
- <template v-else>
7
- <span>{{ renderText }}</span>
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <vxe-textarea v-model="renderValue" v-bind="rprops" :size="rsize" @change="vxeInputChange" @input="vxeBlurCallback" />
4
+ </template>
5
+ <template v-else>
6
+ <span>{{ renderText }}</span>
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <sh-date v-model="renderValue" v-bind="rprops" :size="rsize" :disabled-method="vxeDisabledMethod" @change="vxeChangeCallBack" @clear="vxeBlurCallback"></sh-date>
5
- </template>
6
- <template v-else>
7
- <span v-html="renderText"></span>
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <sh-date v-model="renderValue" v-bind="rprops" :size="rsize" :disabled-method="vxeDisabledMethod" @input="vxeChangeCallBack"></sh-date>
4
+ </template>
5
+ <template v-else>
6
+ <span v-html="renderText"></span>
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,20 +1,18 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <span v-if="rprops.prefixText && rform" class="prefix">
5
- <vxe-button v-if="prefixButton" v-bind="psButtonConfig" @click="vxeInputPrefixClick">{{ rprops.prefixText }}</vxe-button>
6
- <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
7
- </span>
8
- <sh-tree v-model="renderValue" v-bind="rprops" :field="rkey" :value-data="rdata" :size="rsize" is-select @change="vxeTreeCallback"></sh-tree>
9
- <span v-if="rprops.suffixText && rform" class="suffix">
10
- <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
11
- <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
12
- </span>
13
- </template>
14
- <template v-else>
15
- <span v-html="renderText"></span>
16
- </template>
17
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <span v-if="rprops.prefixText && rform" class="prefix">
4
+ <vxe-button v-if="prefixButton" v-bind="psButtonConfig" @click="vxeInputPrefixClick">{{ rprops.prefixText }}</vxe-button>
5
+ <span v-else @click="vxeInputPrefixClick">{{ rprops.prefixText }}</span>
6
+ </span>
7
+ <sh-tree v-model="renderValue" v-bind="rprops" :field="rkey" :value-data="rdata" :size="rsize" is-select @change="vxeTreeCallback"></sh-tree>
8
+ <span v-if="rprops.suffixText && rform" class="suffix">
9
+ <vxe-button v-if="suffixButton" v-bind="psButtonConfig" @click="vxeInputSuffixClick">{{ rprops.suffixText }}</vxe-button>
10
+ <span v-else @click="vxeInputSuffixClick">{{ rprops.suffixText }}</span>
11
+ </span>
12
+ </template>
13
+ <template v-else>
14
+ <span v-html="renderText"></span>
15
+ </template>
18
16
  </template>
19
17
 
20
18
  <script>
@@ -31,12 +29,7 @@ export default defineComponent({
31
29
 
32
30
  // 输入框回调
33
31
  const vxeTreeCallback = (selectedKeys, selectedRows) => {
34
- let { valueKeys, multiple } = useCell.rprops.value
35
- let rvalue = selectedKeys
36
- if (!multiple) {
37
- rvalue = selectedKeys[0] || ''
38
- }
39
- useCell.setRenderValue(rvalue)
32
+ useCell.setRenderValue(selectedKeys)
40
33
  }
41
34
 
42
35
  return {
@@ -1,12 +1,10 @@
1
1
  <template>
2
- <span class="vxe-render--inner" :class="{ 'form-render': rform, 'td-render': !rform }">
3
- <template v-if="redit || isEditAll">
4
- <sh-upload v-model="renderValue" v-bind="rprops" :size="rsize" @input="vxeChangeCallBack({ value: $event })"></sh-upload>
5
- </template>
6
- <template v-else>
7
- <sh-upload :model-value="renderText" v-bind="rprops" :disabled="true" :size="rsize"></sh-upload>
8
- </template>
9
- </span>
2
+ <template v-if="redit || isEditAll">
3
+ <sh-upload v-model="renderValue" v-bind="rprops" :size="rsize" @input="vxeChangeCallBack({ value: $event })"></sh-upload>
4
+ </template>
5
+ <template v-else>
6
+ <sh-upload :model-value="renderText" v-bind="rprops" :disabled="true" :size="rsize"></sh-upload>
7
+ </template>
10
8
  </template>
11
9
 
12
10
  <script>
@@ -1,8 +1,6 @@
1
1
  <template>
2
- <span>
3
- {{ rparams.column.title }}
4
- <span v-if="mprops.moneyOption?.label && !rprops.bill" class="header-money-unit-text">({{ mprops.moneyOption?.label }})</span>
5
- </span>
2
+ {{ rparams.column.title }}
3
+ <span v-if="mprops.moneyOption?.label && !rprops.bill" class="header-money-unit-text">({{ mprops.moneyOption?.label }})</span>
6
4
  <div v-if="rprops.bill" class="header-bill-box">
7
5
  <template v-for="(bil, bilindex) in billGroups" :key="bilindex">
8
6
  <span class="cell-bill-number" :class="getBillClass(bil)">{{ bil.shortText }}</span>