agilebuilder-ui 1.1.53-rc1 → 1.1.53-rc2

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.
@@ -1,5 +1,5 @@
1
1
  import { openBlock as r, createElementBlock as t, createCommentVNode as o } from "vue";
2
- import { _ as s } from "./index-05ede327.js";
2
+ import { _ as s } from "./index-4de24459.js";
3
3
  const u = ["src"], f = s({ data: () => ({ src: null }), watch: { $route(n, c) {
4
4
  this.src = this.$route.query.src;
5
5
  } }, mounted() {
@@ -1,4 +1,4 @@
1
- import { _ as f, c as _, g as x, b as P, s as h, m as M, M as O, i as I } from "./index-05ede327.js";
1
+ import { _ as f, c as _, g as x, b as P, s as h, m as M, M as O, i as I } from "./index-4de24459.js";
2
2
  import { resolveComponent as u, openBlock as d, createBlock as b, withCtx as g, createVNode as v, TransitionGroup as L, createElementBlock as p, Fragment as T, renderList as C, createElementVNode as m, toDisplayString as w, normalizeClass as S, createCommentVNode as y } from "vue";
3
3
  const k = { class: "no-redirect" }, A = f({ name: "Breadcrumb", data: () => ({ levelList: null }), computed: { levelListWithTitle() {
4
4
  return this.levelList.filter((e) => e.meta.title !== void 0 && e.meta.title !== null);
@@ -1,5 +1,5 @@
1
1
  import { resolveComponent as t, openBlock as a, createElementBlock as s, createElementVNode as y, createVNode as l, withCtx as r, createTextVNode as n, toDisplayString as p, createCommentVNode as c, createBlock as h } from "vue";
2
- import { _ as I } from "./index-05ede327.js";
2
+ import { _ as I } from "./index-4de24459.js";
3
3
  const g = { style: { "padding-bottom": "10px" } }, k = { key: 0, class: "graphDiv" }, N = I({ name: "TacheSubprocessHistory", data: () => ({ type: "graph", workflowId: null }), created() {
4
4
  const o = this.$route.query.workflowId;
5
5
  o && (this.workflowId = parseInt(o));
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "agilebuilder-ui",
3
- "version": "1.1.53-rc1",
3
+ "version": "1.1.53-rc2",
4
4
  "type": "module",
5
5
  "private": false,
6
6
  "main": "./lib/super-ui.js",
@@ -94,6 +94,7 @@ import { isImage, getEntityFieldValue, getI18n } from '../../../src/utils/util'
94
94
  import { packageFile } from '../../super-grid/src/utils'
95
95
  import { getToken } from '../../../src/utils/auth'
96
96
  import { getFileIconByName } from '../../../src/utils/file-util'
97
+ import { getWatermarkSetting } from '../../../src/utils/watermark'
97
98
  export default {
98
99
  components: {
99
100
  ElIconPaperclip,
@@ -326,9 +327,13 @@ export default {
326
327
  window.open(src)
327
328
  }
328
329
  },
329
- download(showName, serverPath) {
330
+ async download(showName, serverPath) {
330
331
  const token = getToken()
331
- const isShowWatermark = this.watermark.isShowWatermark
332
+ const watermark = await getWatermarkSetting()
333
+ let isShowWatermark = false
334
+ if(watermark && watermark.useRange && watermark.useRange.indexOf('annex')>=0){
335
+ isShowWatermark = this.watermark.isShowWatermark
336
+ }
332
337
  let watermarkContent = this.watermark?.content
333
338
  if (!watermarkContent) {
334
339
  watermarkContent = ''
@@ -75,6 +75,7 @@ import { isImage } from '../../../src/utils/util'
75
75
  import { Base64 } from 'js-base64'
76
76
  import { getFileIconByName } from '../../../src/utils/file-util'
77
77
  import { useI18n } from 'vue-i18n'
78
+ import { getWatermarkSetting } from '../../../src/utils/watermark'
78
79
  const { t } = useI18n()
79
80
  const props = defineProps({
80
81
  systemCode: {
@@ -152,6 +153,10 @@ const previewImageInfo = ref<any>({})
152
153
  const previewSrcList = ref<string[]>([])
153
154
  const isMobile = ref(isMobileBrowser())
154
155
  const emits = defineEmits(['remove'])
156
+ let watermarkCache = null
157
+ getWatermarkSetting().then((data)=>{
158
+ watermarkCache = data
159
+ })
155
160
  const handleDownload = (file: any) => {
156
161
  if (isPromise(props.beforeDownload)) {
157
162
  props.beforeDownload(props.pageContext, props.configure, file).then((res: any) => {
@@ -173,7 +178,10 @@ const download = (file: any) => {
173
178
  const token = getToken()
174
179
  const fileName = file.showName ? file.showName : file.name
175
180
  const showName = fileName.replace('#', '~~').replace('?', '~$').replace('&', '$')
176
- const isShowWatermark = props.watermark?.isShowWatermark
181
+ let isShowWatermark = false
182
+ if(watermarkCache && watermarkCache.useRange && watermarkCache.useRange.indexOf('annex')>=0){
183
+ isShowWatermark = props.watermark?.isShowWatermark
184
+ }
177
185
  let watermarkContent = props.watermark?.content
178
186
  if (!watermarkContent) {
179
187
  watermarkContent = ''
@@ -296,9 +304,25 @@ const previweDoc = (showName: string, serverPath: string) => {
296
304
  function getPreviewSrc(showName: string, serverPath: string) {
297
305
  showName = formatName(showName)
298
306
  const token = getToken()
299
- let url = baseURL + '/common/super-form/downloads?jwt=' + token
307
+ let isShowWatermark = false
308
+ if(watermarkCache && watermarkCache.useRange && watermarkCache.useRange.indexOf('annex')>=0){
309
+ isShowWatermark = props.watermark?.isShowWatermark
310
+ }
311
+ let watermarkContent = props.watermark?.content
312
+ if (!watermarkContent) {
313
+ watermarkContent = ''
314
+ }
315
+ let url = baseURL + '/common/super-form/downloads?jwt=' + token+
316
+ '&isShowWatermark=' +
317
+ isShowWatermark +
318
+ '&watermark=' +
319
+ encodeURI(watermarkContent)
300
320
  if (isPlateSys(props.systemCode)) {
301
- url = baseAPI + '/component/super-form/downloads?jwt=' + token
321
+ url = baseAPI + '/component/super-form/downloads?jwt=' + token+
322
+ '&isShowWatermark=' +
323
+ isShowWatermark +
324
+ '&watermark=' +
325
+ encodeURI(watermarkContent)
302
326
  }
303
327
  url = getReplaceUrlDomain(url)
304
328
  return url + '&showName=' + encodeURI(showName) + '&serverPath=' + serverPath
@@ -5,6 +5,7 @@ import {getExtraParam} from '../super-grid/src/utils'
5
5
  import nineGridStore from '../super-nine-grid/src/store'
6
6
  import {packageEnumAndBeanColumnValueSets} from '../utils/value-set'
7
7
  import { getRelativeBaseUrl } from '../../src/utils/common-util'
8
+ import { getWatermarkSetting } from '../../src/utils/watermark'
8
9
 
9
10
  /**
10
11
  *
@@ -280,7 +281,7 @@ function exportListData(
280
281
  isPermission,
281
282
  exportOptions
282
283
  ) {
283
- return new Promise((resolve, reject) => {
284
+ return new Promise(async (resolve, reject) => {
284
285
  const gridParams = getGridParams(listCode)
285
286
  if (gridParams === undefined || gridParams === null) {
286
287
  reject('导出失败')
@@ -323,8 +324,12 @@ function exportListData(
323
324
  // 页面编码
324
325
  param['pageCode'] = pageCode
325
326
  // 导出按钮是否需要验证权限
326
- param['isPermission'] = isPermission
327
- const isShowWatermark = exportOptions.isShowWatermark===undefined || exportOptions.isShowWatermark===null?'true':exportOptions.isShowWatermark
327
+ param['isPermission'] = isPermission
328
+ let isShowWatermark = false
329
+ const watermark = await getWatermarkSetting()
330
+ if(watermark && watermark.useRange && watermark.useRange.indexOf('annex')>=0){
331
+ isShowWatermark = exportOptions.isShowWatermark===undefined || exportOptions.isShowWatermark===null?'true':exportOptions.isShowWatermark
332
+ }
328
333
  param['isShowWatermark'] = isShowWatermark
329
334
  let watermarkContent = exportOptions.watermarkContent
330
335
  if(watermarkContent){
@@ -341,7 +346,7 @@ function exportListData(
341
346
  '/dsc/commons/export-list-data',
342
347
  param
343
348
  )
344
- .then((data) => {
349
+ .then(async (data) => {
345
350
  if(exportOptions.pageContext) {
346
351
  exportOptions.pageContext.canClick = true
347
352
  }
@@ -375,7 +380,11 @@ function exportListData(
375
380
  localStorage.setItem(uuid, 'ok')
376
381
  } else {
377
382
  if (data.indexOf('~~') >= 0) {
378
- const isShowWatermark = exportOptions.isShowWatermark===undefined || exportOptions.isShowWatermark===null?'true':exportOptions.isShowWatermark
383
+ let isShowWatermark = false
384
+ const watermark = await getWatermarkSetting()
385
+ if(watermark && watermark.useRange && watermark.useRange.indexOf('annex')>=0){
386
+ isShowWatermark = exportOptions.isShowWatermark===undefined || exportOptions.isShowWatermark===null?'true':exportOptions.isShowWatermark
387
+ }
379
388
  let watermarkContent = exportOptions.watermarkContent
380
389
  if(!watermarkContent){
381
390
  watermarkContent = ''
@@ -263,9 +263,18 @@ const apis = {
263
263
  // 子表集合添加该新建的行。会触发watch subTableData的监控
264
264
  gridParams.isChangePage = true
265
265
  if (addRowIndex >= 0) {
266
- gridParams.subTableData.splice(addRowIndex, 0, row)
266
+ const lastPageRowIndex = (this.currentPage - 1) * this.pageSize
267
+ const subTableRowIndex = lastPageRowIndex + addRowIndex
268
+ gridParams.addRowIndex = subTableRowIndex + 1
269
+
270
+ gridParams.subTableData.splice(subTableRowIndex, 0, row)
267
271
  } else {
268
- gridParams.subTableData.splice(gridParams.subTableData.length, 0, row)
272
+ let lastIndex = gridParams.subTableData.length
273
+ if(lastIndex <= 0){
274
+ lastIndex = -1
275
+ }
276
+ gridParams.subTableData.splice(lastIndex, 0, row)
277
+ gridParams.addRowIndex = gridParams.subTableData.length
269
278
  }
270
279
  } else {
271
280
  // 子表不分页
@@ -1051,7 +1060,7 @@ const apis = {
1051
1060
  if (canDelete === undefined || canDelete === true) {
1052
1061
  if (gridParams.isSubTableShowPage !== undefined && gridParams.isSubTableShowPage === true) {
1053
1062
  // 子表集合添加该新建的行。会触发watch subTableData的监控
1054
- gridParams.isChangePage = true
1063
+ gridParams.isDelete = true
1055
1064
  const lastPageRowIndex = (this.currentPage - 1) * this.pageSize
1056
1065
  const subTableRowIndex = lastPageRowIndex + rowIndex
1057
1066
 
@@ -1189,7 +1198,7 @@ const apis = {
1189
1198
  const deleteIndexs = []
1190
1199
  if (gridParams.isSubTableShowPage !== undefined && gridParams.isSubTableShowPage === true) {
1191
1200
  // 子表集合添加该新建的行。会触发watch subTableData的监控
1192
- gridParams.isChangePage = true
1201
+ gridParams.isDelete = true
1193
1202
  const indexes = this.getDeleteIndexes(gridParams.subTableData, deleteRows, rowKey)
1194
1203
  for (const idx of indexes) {
1195
1204
  gridParams.subTableData.splice(idx, 1)
@@ -203,7 +203,6 @@ import {
203
203
  getExtraParam,
204
204
  getFirstEditableColumn,
205
205
  getGridParams,
206
- getLastPageNum,
207
206
  getSpanValuesForColumn,
208
207
  getTableHeight,
209
208
  isCanRefreshGrid,
@@ -211,7 +210,8 @@ import {
211
210
  isHasEditOption,
212
211
  isHasOptionFunction,
213
212
  isObjectValueEqual,
214
- rowBeforeValidate
213
+ rowBeforeValidate,
214
+ getRowIndexPage
215
215
  } from './utils'
216
216
  import Sortable from 'sortablejs'
217
217
  import store from './store'
@@ -662,7 +662,6 @@ export default {
662
662
  // 监控列表数据修改,列表作为表单编辑器中子表时使用
663
663
  gridData: {
664
664
  deep: true,
665
- immediate: true,
666
665
  handler: function (Val) {
667
666
  if (!this.isSubTableShowPage) {
668
667
  // 列表子表不分页时使用
@@ -679,14 +678,13 @@ export default {
679
678
  // 列表子表分页时使用
680
679
  const gridParams = store.get(this.code)
681
680
  $emit(this, 'change-grid-data', this.subTableData)
682
- if (gridParams.isChangePage !== undefined && gridParams.isChangePage) {
683
- // 表示新建记录时
684
- // 新建记录时跳转到最后一页
685
- const lastPageNum = getLastPageNum(this.subTableData.length, this.pageSize)
681
+ if ((gridParams.isChangePage !== undefined && gridParams.isChangePage) || (gridParams.isDelete !== undefined && gridParams.isDelete)) {
682
+ // 表示新建记录 或 删除记录时
686
683
  // 表示最后一页页码和当前页不同时需要切换页码
687
- if (lastPageNum !== this.currentPage) {
688
- // 切换当前页码为最后一页
689
- this.currentPage = lastPageNum
684
+ if (gridParams.isChangePage !== undefined && gridParams.isChangePage) {
685
+ // 新建记录 切换到新增记录所属的页码
686
+ const rowPage = getRowIndexPage(this.pageSize, gridParams.addRowIndex)
687
+ this.currentPage = rowPage
690
688
  // 切换当前页码到最后一页的数据
691
689
  this.changePage()
692
690
  } else {
@@ -700,12 +698,16 @@ export default {
700
698
  }
701
699
  // 使用完状态还原
702
700
  gridParams.isChangePage = false
701
+ gridParams.isDelete = false
703
702
  } else {
704
703
  // 表示不是子表新建记录
705
704
  this.gridData = this.getSubTableGridData(this.subTableData)
706
705
  gridParams.gridData = this.gridData
707
706
  // 完成深拷贝,复制一份对象,行编辑时使用
708
707
  gridParams.orgGridData = [].concat(JSON.parse(JSON.stringify(this.gridData)))
708
+ // 使用完状态还原
709
+ gridParams.isChangePage = false
710
+ gridParams.isDelete = false
709
711
  }
710
712
  }
711
713
  }
@@ -801,6 +801,17 @@ export function getLastPageNum(total, rowsPerPage) {
801
801
  return Math.ceil(total / rowsPerPage)
802
802
  }
803
803
  }
804
+
805
+ // 获得指定记录索引所属的页码
806
+ export function getRowIndexPage(rowsPerPage, addRowIndex) {
807
+ if (rowsPerPage === undefined || rowsPerPage === null || rowsPerPage === 0) {
808
+ return 1
809
+ } else if (addRowIndex === undefined || addRowIndex === null || addRowIndex === 0) {
810
+ return 1
811
+ } else {
812
+ return Math.ceil(addRowIndex / rowsPerPage)
813
+ }
814
+ }
804
815
  // 纵向滚动条滚动最底部功能
805
816
  export function scrollYToBottom(listCode) {
806
817
  const scrollDivElement = document.querySelector('.' + listCode + ' .el-table--scrollable-y .el-table__body-wrapper')
@@ -826,7 +826,8 @@ export function getKkFilePreviewUrl(previewUrl) {
826
826
  let myPreviewUrl = getKkFileBackendUrl()+'?url='+encodeURIComponent(Base64.encode(previewUrl))
827
827
  return new Promise((resolve,reject)=>{
828
828
  getWatermarkSetting().then((watermark)=>{
829
- if(watermark){
829
+ if(watermark && watermark.useRange && watermark.useRange.indexOf('annex')>=0){
830
+ // 表示适用范围有附件时
830
831
  myPreviewUrl = myPreviewUrl + '&watermarkTxt='+watermark.content+'&watermarkXSpace=60&watermarkYSpace=100&watermarkWidth=500&watermarkHeight=100'
831
832
  }
832
833
  resolve(myPreviewUrl)
@@ -107,14 +107,12 @@ export function getWatermarkSetting(){
107
107
  // 该方法只允许调用一次
108
108
  export function showWatermarkNew() {
109
109
  getWatermarkSetting().then((watermark)=>{
110
- if(watermark){
110
+ if(watermark && watermark.useRange && watermark.useRange.indexOf('page')>=0){
111
+ // 表示影响范围有页面,则页面显示水印
111
112
  setWatermark(watermark.content, watermark)
112
113
  }
113
114
  })
114
115
  }
115
- // watermark.set = (label, parma) => {
116
-
117
- // }
118
116
 
119
117
  const formatDate = (date, fmt) => {
120
118
  if (/(y+)/.test(fmt)) {