cuiqian2004
2024-08-20 7366a5bc2c2db8c487baa8c3b8e18e32e98c9bd5
pages/modal/classAttr.vue
@@ -289,7 +289,7 @@
<script>
   import pickerAddress from '../../js/pickerAddress/pickerAddress.vue'
   import classUtils from "@/js/utils.js"
   import utils from "@/js/utils.js"
   export default {
      components: {
         pickerAddress
@@ -326,6 +326,14 @@
            popupParam: {},
         }
      },
      onNavigationBarButtonTap(e) {
         //刷新
         uni.redirectTo({
            url: '../modal/classAttr?param=' + JSON.stringify(this.param) +
               "&titlename=" + this.title
         });
      },
      onLoad(options) {
         // console.log(options);
         uni.setNavigationBarTitle({
@@ -353,47 +361,51 @@
            return;
         }
         this.$data.param = param;
         var edit_dlg = {
            Model: param.EditDlgMode,
            Name: param.Edit_dlg.Name
         }
         var dataInfo = {
            class_id: param.clsid
         };
         var $this = this;
         $this.$store.state.thisareaFuncID = param.clsid;
         // console.log($this.$store.getters.getclassAttrList);
         //获取
         if ($this.$store.getters.getclassAttrList) {
            $this.$data.classAttrList = $this.$store.getters.getclassAttrList.data;
            $this.classGridStyleInfo();
         } else
            $this.$store.dispatch('classAttrList', dataInfo).then(success => {
               // console.log(success);
               if (success.code == '00000') {
                  $this.$data.classAttrList = success.data;
                  $this.classGridStyleInfo();
               } else {
         this.loadData()
      },
      methods: {
         loadData() {
            var $this = this;
            var edit_dlg = {
               Model: $this.param.EditDlgMode,
               Name: $this.param.Edit_dlg.Name
            }
            var dataInfo = {
               class_id: $this.param.clsid
            };
            $this.$store.state.thisareaFuncID = $this.param.clsid;
            // console.log($this.$store.getters.getclassAttrList);
            //获取
            if ($this.$store.getters.getclassAttrList) {
               $this.$data.classAttrList = $this.$store.getters.getclassAttrList.data;
               $this.classGridStyleInfo();
            } else {
               $this.$store.dispatch('classAttrList', dataInfo).then(success => {
                  // console.log(success);
                  if (success.code == '00000') {
                     $this.$data.classAttrList = success.data;
                     $this.classGridStyleInfo();
                  } else {
                     uni.showModal({
                        title: "错误1",
                        content: success.msg,
                        showCancel: false,
                        confirmText: "取消"
                     });
                  }
               }).catch(ex => {
                  // console.log(ex);
                  uni.showModal({
                     title: "错误1",
                     content: success.msg,
                     title: "错误1.1",
                     content: ex.errMsg,
                     showCancel: false,
                     confirmText: "取消"
                  });
               }
            }).catch(ex => {
               // console.log(ex);
               uni.showModal({
                  title: "错误1.1",
                  content: ex.errMsg,
                  showCancel: false,
                  confirmText: "取消"
               });
            });
      },
      methods: {
            }
         },
         classAttr_extButton(index, iindex) { //弹框层显示 type:top bottom center left right
            var $this = this;
            $this.$data.popupType = 'right'
@@ -525,12 +537,15 @@
               //console.log(gridstyleInfo);
               $this.$store.dispatch('classGridStyleInfo', gridstyleInfo).then(success => {
                  // console.log(success);
                  if (success.code == '00000') {
                     success.data.StyleDef = JSON.parse(success.data.StyleDef);
                     $this.$data.classGridStyle = success.data;
                     // console.log($this.$data.classGridStyle);
                     $this.class_attr_init();
                  } else {
                     uni.showModal({
                        title: "错误1.2",
@@ -575,7 +590,6 @@
            var value = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].dictitem[e
               .target.value];
            var data_attr = this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']];
            console.log(data_attr);
            if (value.Name != data_attr.Value) {
               this.$data.classAttrList[e.target.dataset['index']].Attr[e.target.dataset['iindex']].Value = value
                  .Name;
@@ -652,7 +666,7 @@
                        var attr = attrlist[i].Attr;
                        for (var j = 0; j < attr.length; j++) {
                           var ar = attr[j];
                           if (classUtils.attrTypeIsDict(ar.Type))
                           if (utils.classUtils.attrTypeIsDict(ar.Type))
                              req.push({
                                 attr: ar.Name,
                                 value: itemvalue.Name
@@ -700,6 +714,7 @@
                        req.push(this.formatAttr(ar))
                     }
                  }
                  var info = {
                     eventid: eventid,
                     edtype: "0",
@@ -877,7 +892,7 @@
               for (var j = 0; j < attr.length; j++) {
                  var ar = attr[j];
                  if (ar.Value == '请选择' || ar.Value == '——请选择——') ar.Value = '';
                  if (classUtils.attrTypeIsDict(ar.Type)) {
                  if (utils.classUtils.attrTypeIsDict(ar.Type)) {
                     if (ar.select == true) { //判断下拉是否多选
                        var valStr = "";
                        for (var v in ar.Value) {
@@ -894,8 +909,7 @@
                           name: ar.Name,
                           value: ar.Value
                        });
                  } else
                  {
                  } else {
                     const node = this.formatAttr(ar)
                     req.push({
                        name: node.attr,
@@ -984,11 +998,7 @@
                        icon: "success",
                        duration: 3000
                     });
                  //刷新
                  uni.redirectTo({
                     url: '../modal/classAttr?param=' + JSON.stringify(this.$data.param) +
                        "&titlename=" + this.$data.title
                  });
                  // this.class_attr_init();
               } else {
                  uni.showModal({
@@ -1010,7 +1020,7 @@
            });
         },
         class_attr_init() {
            var attrlist = this.$data.classGridStyle.StyleDef.show_style
            const attrlist = this.$data.classGridStyle.StyleDef?.show_style || []
            var newattrlist = [];
            if (this.$data.classAttrList.length > 0) {
               for (var i = 0; i < attrlist.length; i++) {
@@ -1050,7 +1060,7 @@
                                          ca.Value = ca.dictitem[d].CN_S_NAME;
                                    }
                                 }
                                 if(classUtils.attrTypeIsDate(ca.Type)) {
                                 if (utils.classUtils.attrTypeIsDateTime(ca.Type)) {
                                    var nowDate = new Date();
                                    var date = {
                                       year: nowDate.getFullYear(),
@@ -1060,7 +1070,7 @@
                                    ca.Value = date.year + '-' + (date.month >= 10 ? date.month : '0' + date
                                       .month) + '-' + (date.day >= 10 ? date.day : '0' + date.day);
                                 }
                                 if(classUtils.attrTypeIsObjRefMulti(ca.Type))  {
                                 if (utils.classUtils.attrTypeIsObjRefMulti(ca.Type)) {
                                    var relClsList = [];
                                    var attr_rescls = ca.RelCls.split(',');
                                    for (var ii in attr_rescls) {
@@ -1073,9 +1083,9 @@
                                    ca.RelClsList = relClsList;
                                    ca.Value = '请';
                                 }
                                 if(classUtils.attrTypeIsRegion(ca.Type))
                                 if (utils.classUtils.attrTypeIsRegion(ca.Type))
                                    ca.Value = '请选择';
                                 if(classUtils.attrTypeIsBool(ca.Type))
                                 if (utils.classUtils.attrTypeIsBool(ca.Type))
                                    ca.Value = false;
                                 attr.push(ca);
@@ -1100,25 +1110,20 @@
                  this.$data.classAttrList = newattrlist;
               }
               var req = [];
               if (this.$data.classGridStyle.StyleDef) {
                  if (this.$data.classGridStyle.StyleDef.show_style.length > 0) {
                     var attrlist = this.$data.classGridStyle.StyleDef.show_style
                     // $el.find('.attr_field').prop('readonly', true);
                     // $el.find('.attr_field').prop('disabled', true);
                     for (var i = 0; i < attrlist.length; i++) {
                        var attr = attrlist[i].attrs
                        for (var j = 0; j < attr.length; j++) {
                           var ar = attr[j];
                           req.push({
                              attr: ar.attr,
                              val: ar.value ? ar.value : ''
                           });
                        }
                     }
               for (var i = 0; i < attrlist.length; i++) {
                  var attr = attrlist[i].attrs
                  for (var j = 0; j < attr.length; j++) {
                     var ar = attr[j];
                     req.push({
                        attr: ar.attr,
                        value: ar.value ? ar.value : ''
                     });
                  }
               }
               var eventlist = this.$data.classGridStyle.StyleDef.event;
               if (eventlist) {
                  if (eventlist.length > 0) {
                     for (var i = 0; i < eventlist.length; i++) {
@@ -1149,6 +1154,7 @@
                  }
                  this.ini_DataObjRunCustomEvent(info);
               }
               console.log(this.$data.classGridStyle);
               console.log(this.$data.classAttrList);
@@ -1213,7 +1219,7 @@
                                    for (var l = 0; l < this.$data.classAttrList[a].Attr.length; l++) {
                                       var ca = this.$data.classAttrList[a].Attr[l];
                                       if (value[i].attr == ca.Name) {
                                          if (classUtils.attrTypeIsDict(ca.Type)) {
                                          if (utils.classUtils.attrTypeIsDict(ca.Type)) {
                                             var dictItemList = [];
                                             for (var d in value[i].choice_list) {
                                                var list_val = value[i].choice_list[d];
@@ -1328,6 +1334,7 @@
               dataJson: JSON.stringify(info.dataJson)
            }
            console.log(dataInfo);
            this.$store.dispatch('DataObjRunCustomEventInfo', dataInfo).then(success => {
               console.log(success);
               if (success.code == '00000') {
@@ -1346,7 +1353,7 @@
                                    var attr = $this.$data.classAttrList[c].Attr;
                                    for (var j = 0; j < attr.length; j++) {
                                       if (attr[j].Name == result[i].attr) {
                                          if (classUtils.attrTypeIsDict(attr[j].Type)) {
                                          if (utils.classUtils.attrTypeIsDict(attr[j].Type)) {
                                             var dictItemList = [];
                                             for (var d in result[i].choice_list) {
                                                var val = result[i].choice_list[d];
@@ -1472,7 +1479,7 @@
                     length = 1;
                     req.push({
                        'attr': this.$data.refdatastore[i].attr,
                        'val': this.$data.refdatastore[i].value
                        'value': this.$data.refdatastore[i].value
                     });
                  }
               }
@@ -1777,15 +1784,15 @@
            });
         },
         formatAttr(attr) {
            if (classUtils.attrTypeIsObjRefMulti(attr.Type)) //if(ar.Type=='引用对象(多个)')
            if (utils.classUtils.attrTypeIsObjRefMulti(attr.Type)) //if(ar.Type=='引用对象(多个)')
               if (attr.Value == '请') ar.Value = '';
            if (classUtils.attrTypeIsUser(attr.Type) || classUtils.attrTypeIsProject(attr
            if (utils.classUtils.attrTypeIsUser(attr.Type) || utils.classUtils.attrTypeIsProject(attr
                  .Type)) //if(ar.Type=='引用人员' || ar.Type=='引用项目')
               return {
                  attr: attr.Name,
                  value: attr.ValID ? attr.ValID : ''
               };
            else if (classUtils.attrTypeIsBool(attr.Type)) //if(ar.Type=='布尔值')
            else if (utils.classUtils.attrTypeIsBool(attr.Type)) //if(ar.Type=='布尔值')
               return {
                  attr: attr.Name,
                  value: attr.Value ? '1' : '0'