wangting
2024-05-10 abe65dd511c2784a953dc6ec01f762322a361e53
action处理,表单展示数据
已修改4个文件
58 ■■■■ 文件已修改
Source/ProjectWeb/src/components/PLT-basic-component/basicForm.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/ProjectWeb/src/components/actions/base/EditAction.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue 52 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Source/ProjectWeb/src/components/PLT-basic-component/basicForm.vue
@@ -186,7 +186,7 @@
        showProp:item.showField,
        type: type,
        labelWidth: this.labelWidth || (item.text.length >= 6 ? 115 : 90),
        disabled: item.readOnly || this.disabled,
        disabled: !this.isEdit || item.readOnly || this.disabled,
        span: item.span
          ? item.span
          : item.type === "textarea"
Source/ProjectWeb/src/components/actions/base/EditAction.js
@@ -63,7 +63,7 @@
  let instance = new dialogConstructor();
  instance.sourceData = options.sourceData;
  instance.dataStore = options.dataStore;
  instance.paramVOS = paramVOS
  instance.paramVOS = paramVOS;
  instance.type = 'edit';
  instance.dialogClose = function () {
Source/ProjectWeb/src/components/dynamic-components/dynamic-button.vue
@@ -164,7 +164,7 @@
      //paramVOS.customBtn //弹窗默认有保存按钮,customBtn为true时内容展示自定义按钮
      doAction(buttonitem, {
        paramVOS: paramVOS,
        dataStore: rowData || this.dataStore || [],
        dataStore: rowData?[rowData] :(this.dataStore || []),
        sourceData: this.sourceData || {}
      }, function (actionType,data) {
        that.$emit("afterMethod",actionType,data);
Source/ProjectWeb/src/components/dynamic-components/dynamic-form.vue
@@ -88,18 +88,7 @@
    form:{
      handler(newval) {
        if(newval) {
          this.$emit("setDataStore", {
            area: this.areasName,
            type:this.componentVO.uiComponentType,
            btmType:this.currentDefineVO.btmType,
            dataStore:[newval]
          });
          this.$emit("setData", {
            area: this.areasName,
            type:this.componentVO.uiComponentType,
            currentDefineVO:this.currentDefineVO,
            data:newval
          });
        }
      },
      deep: true,
@@ -122,12 +111,13 @@
  methods: {
    sourceDataMap: function () {
      const sourceDataMap = {};
      if (Object.keys(this.sourceData).length>0) {
        if(this.sourceData.oid ) {
      if (Object.keys(this.sourceData).length > 0) {
        if (this.sourceData.oid) {
          if (this.sourceData.oid.indexOf('@vcitreesep@') > -1) {
            this.sourceData.oid = this.sourceData.oid.split('@vcitreesep@')[1];
          }
          sourceDataMap.sourceBtmName = this.sourceBtmType;;
          sourceDataMap.sourceBtmName = this.sourceBtmType;
          ;
          sourceDataMap.sourceOid = this.sourceData.oid;
        }
        for (let i in this.sourceData) {
@@ -138,7 +128,7 @@
        }
      }
      if (Object.keys(this.paramVOS).length>0) {
      if (Object.keys(this.paramVOS).length > 0) {
        for (let j in this.paramVOS) {
          if (this.paramVOS[j] && this.paramVOS[j].constructor === Object) continue;
          if (j == 'type' || j == 'context' || j == 'content' || j == "getdataurl" || j == "getdatamethod" || j == "url" || j == "method" || j == "uploadfileurl" || j == "title") continue;
@@ -150,33 +140,45 @@
    getParams: function () {
      const formParams = {
        btmname: this.currentDefineVO.btmType,
        btmType:this.currentDefineVO.btmType,
        btmType: this.currentDefineVO.btmType,
        formDefineId: this.currentDefineVO.id,
        oid:this.currentDefineVO.oid
        oid: this.currentDefineVO.oid
      };
      if(this.dataStore[0] && this.dataStore[0].oid) {
      if (this.dataStore[0] && this.dataStore[0].oid) {
        formParams.oid = this.dataStore[0].oid;
      }
      const sourceDataMapList = this.sourceDataMapParams;
      this.params = Object.assign({},formParams, sourceDataMapList);
      this.params = Object.assign({}, formParams, sourceDataMapList);
    },
    onLoad:function () {
    onLoad: function () {
      if (this.paramVOS.initvalue) {
        this.form=this.paramVOS.initvalue;
        this.form = this.paramVOS.initvalue;
      }
      if (Object.keys(this.sourceData).length>0 && this.isShow && this.actionType!="add") {
      if (Object.keys(this.sourceData).length > 0 && this.isShow && this.actionType != "add") {
        this.loading = true;
        dataForm(this.params, this.paramVOS.getdataurl, this.paramVOS.getdatamethod).then(res => {
          this.form = res.data.obj;
          this.form = res.data.obj.data;
          this.loading = false;
          this.$emit("setDataStore", {
            area: this.areasName,
            type: this.componentVO.uiComponentType,
            btmType: this.currentDefineVO.btmType,
            dataStore: [this.form]
          });
          this.$emit("setData", {
            area: this.areasName,
            type: this.componentVO.uiComponentType,
            currentDefineVO: this.currentDefineVO,
            data: this.form
          });
        }).catch(error => {
          this.loading = false;
        });
      }
    },
    handleRefresh() {
      this.form={}
      this.form = {}
      this.onLoad();
    },
    getFormData(form) {