cuiqian2004
2024-08-27 d84283821bb08d81d887f20a7118caf25b8b2714
pages/modal/5602.vue
@@ -17,7 +17,8 @@
               v-model="item.value" :localdata="item.dict" @change="onEnterChange(item)" :readonly="item.disabled"
               :clear-icon="false" :popup-title="item.label"></uni-data-picker>
            <view class="input-wrapper" v-if="item.name=='Input' || item.name=='InputNumber'">
            <view class="input-wrapper" :style="{'width':`calc(96% - ${item.labelWidth}px)`}"
               v-if="item.name=='Input' || item.name=='InputNumber'">
               <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]"
                  @click="onEnterChange(item)">&#xe568;</text>
               <input class="uni-input" :class="item.disabled?'input-disabled':''"
@@ -343,18 +344,21 @@
                  $this.$data.head_styledef = ret.result.style_def ? JSON.parse(styledef) : {};
                  // this.form = this.head_styledef.form.model;
                  // console.log($this.$data.head_styledef);
                  $this.head_styledef.form.items.forEach(async (ele, index) => {
                     if (ele.useDict == true) { //判断useDict是否使用字典
                        await this.DictGetInfo(ele.bind.dict, index, 'mast');
                     }
                     if ($this.focusFieldId == "") {
                        if (ele.name == 'Input' || ele.name == 'InputNumber') {
                           $this.setData({
                              focusFieldId: ele.fieldId
                           })
                  if ($this.head_styledef.form?.items) {
                     $this.head_styledef.form.items.forEach(async (ele, index) => {
                        if (ele.useDict == true) { //判断useDict是否使用字典
                           await this.DictGetInfo(ele.bind.dict, index, 'mast');
                        }
                     }
                  });
                        if ($this.focusFieldId == "") {
                           if (ele.name == 'Input' || ele.name == 'InputNumber') {
                              $this.setData({
                                 focusFieldId: ele.fieldId
                              })
                           }
                        }
                     });
                  }
               } else {
                  uni.showModal({
                     title: this.translateSys("error") + "1",
@@ -365,9 +369,10 @@
               }
            }).catch(ex => {
               // console.log(ex);
               let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
               uni.showModal({
                  title: this.translateSys("error") + "1.1",
                  content: ex.errMsg,
                  content: tip,
                  showCancel: false,
                  confirmText: this.translateSys("cancel")
               });
@@ -398,11 +403,13 @@
                  // var aa = JSON.stringify(this.detail1_styledef);
                  // $this.$data.detail1StyleDefList.push(JSON.parse(aa));
                  // console.log($this.$data.detail1StyleDefList);
                  $this.detail1_styledef.form.items.forEach(async (ele, index) => {
                     if (ele.useDict == true) { //判断useDict是否使用字典
                        await this.DictGetInfo(ele.bind.dict, index, 'sub');
                     }
                  });
                  if ($this.detail1_styledef.form?.items) {
                     $this.detail1_styledef.form.items.forEach(async (ele, index) => {
                        if (ele.useDict == true) { //判断useDict是否使用字典
                           await this.DictGetInfo(ele.bind.dict, index, 'sub');
                        }
                     });
                  }
               } else {
                  uni.showModal({
                     title: this.translateSys("error") + "2",
@@ -413,9 +420,10 @@
               }
            }).catch(ex => {
               // console.log(ex);
               let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
               uni.showModal({
                  title: this.translateSys("error") + "2.1",
                  content: ex.errMsg,
                  content: tip,
                  showCancel: false,
                  confirmText: this.translateSys("cancel")
               });
@@ -453,9 +461,10 @@
               }
            }).catch(ex => {
               // console.log(ex);
               let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
               uni.showModal({
                  title: this.translateSys("error") + "3.1",
                  content: ex.errMsg,
                  content: tip,
                  showCancel: false,
                  confirmText: this.translateSys("cancel")
               });
@@ -531,12 +540,84 @@
                  dataType: "json",
                  success: (_res) => {
                     // console.log(_res);
                     const ret = _res.data
                     var ret = _res.data
                     if (typeof ret == 'string') {
                        try {
                           try {
                              try {
                                 ret = JSON.parse(ret.replace(/\\"/g, '"'));
                              } catch (ex) {
                                 ret = JSON.parse(ret.replace(/\\/g, '\\\\'))
                              }
                           } catch (ex) {
                              ret = JSON.parse(ret.replace(/\\"/g, "'").replace(/[\r\n]/g,
                                 '<br>').replace(/[\t]/g, '    '));
                           }
                        } catch (ex) {
                           console.log(ret)
                           return reject('将getDictInfo【json string】转换为【json object】失败')
                        }
                     }
                     if (ret.err_code == 0) {
                        resolve(ret);
                     } else {
                        reject({
                           "errMsg": ret.err_msg
                        });
                     }
                     if (ret.err_code == 0) {
                        resolve(ret);
                     } else {
                        reject({
                           "errMsg": ret.err_msg
                        });
                     }
                  },
                  fail: (err) => {
                     // console.log(err);
                     reject(err);
                  }
               })
            })
         },
         getUIStyleInfo(info) { //Mobox3数据类界面样式
            const loginInfo = this.$store.getters.loginid
            const dataSApi = this.$store.getters.getDataSApi
            return new Promise((resolve, reject) => {
               uni.request({
                  url: dataSApi + 'api/class/uistyle/GetInfo?sessionid=' + loginInfo.result
                     .session_id,
                  data: info,
                  method: 'POST',
                  dataType: "json",
                  success: (_res) => {
                     // console.log(_res);
                     var ret = _res.data
                     if (typeof ret == 'string') {
                        try {
                           try {
                              try {
                                 ret = JSON.parse(ret.replace(/\\"/g, '"'));
                              } catch (ex) {
                                 ret = JSON.parse(ret.replace(/\\/g, '\\\\'))
                              }
                           } catch (ex) {
                              ret = JSON.parse(ret.replace(/\\"/g, "'").replace(/[\r\n]/g,
                                 '<br>').replace(/[\t]/g, '    '));
                           }
                        } catch (ex) {
                           console.log(ret)
                           return reject('将getUIStyleInfo【json string】转换为【json object】失败')
                        }
                     }
                     if (ret.err_code == 0) {
                        resolve(ret);
                     } else {
                        reject({
                           "errMsg": ret.err_msg || ret.errMsg
                        });
                     }
                  },
@@ -1026,9 +1107,10 @@
                     }
                  }).catch(ex => {
                     // console.log(ex);
                     let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
                     uni.showModal({
                        title: this.translateSys("error") + "4.1",
                        content: ex.errMsg,
                        content: tip,
                        showCancel: false,
                        confirmText: this.translateSys("cancel")
                     });
@@ -1121,48 +1203,53 @@
            if (JSON.stringify(data.row) == '{}') {
               return;
            }
            data.row.forEach(row => {
               var styleStr = JSON.stringify(this.$data.detail1_styledef);
               if (type) { //确定后脚本进入加载已分拣数据
                  styleStr = JSON.stringify(this.$data.detail2_styledef);
               } else {
                  if (data.page_name == this.$data.param.Sub_Page[1].Name) { //判断返回的action的page_name是否是已分拣
                     styleStr = JSON.stringify(this.$data.detail2_styledef); //待分拣
                  }
            var styleStr = JSON.stringify(this.$data.detail1_styledef);
            if (type) { //确定后脚本进入加载已分拣数据
               styleStr = JSON.stringify(this.$data.detail2_styledef);
            } else {
               if (data.page_name == this.$data.param.Sub_Page[1].Name) { //判断返回的action的page_name是否是已分拣
                  styleStr = JSON.stringify(this.$data.detail2_styledef); //待分拣
               }
               var detailStyle = JSON.parse(styleStr);
               detailStyle.form.objId = row.id;
               detailStyle.form.htmlobjId = row.id ? row.id.replace(/-/g, '').replace('{', '').replace('}',
                  '') : 'null';
               detailStyle.form.attrs = row.attrs;
               row.attrs.forEach(attr => {
                  detailStyle.form.items.forEach(ele => {
                     if (ele.name != 'Layout') {
                        if (ele.fieldId == attr.attr) ele.value = attr.value;
                     } else if (ele.name == 'Layout') {
                        ele.setting.colList.forEach(col => {
                           if (col) {
                              if (col.fieldId == attr.attr) col.value = attr
                                 .value;
                           }
                        });
                     }
                  });
               });
            }
            data.row.forEach(row => {
               if (type) { //确定后脚本进入加载已分拣数据
                  this.$data.detail2StyleDefList.push(detailStyle);
                  // console.log(this.$data.detail2StyleDefList);
               } else {
                  if (data.page_name == this.$data.param.Sub_Page[1].Name) { //判断返回的action的page_name是否是已分拣
               var detailStyle = JSON.parse(styleStr);
               if (detailStyle.form) {
                  detailStyle.form.objId = row.id;
                  detailStyle.form.htmlobjId = row.id ? row.id.replace(/-/g, '').replace('{', '').replace(
                     '}',
                     '') : 'null';
                  detailStyle.form.attrs = row.attrs;
                  row.attrs.forEach(attr => {
                     detailStyle.form.items.forEach(ele => {
                        if (ele.name != 'Layout') {
                           if (ele.fieldId == attr.attr) ele.value = attr.value;
                        } else if (ele.name == 'Layout') {
                           ele.setting.colList.forEach(col => {
                              if (col) {
                                 if (col.fieldId == attr.attr) col.value = attr
                                    .value;
                              }
                           });
                        }
                     });
                  });
                  if (type) { //确定后脚本进入加载已分拣数据
                     this.$data.detail2StyleDefList.push(detailStyle);
                     // console.log(this.$data.detail2StyleDefList);
                  } else {
                     this.$data.detail1StyleDefList.push(detailStyle);
                     this.activelist.push({
                        active: false
                     });
                     // console.log(this.$data.detail1StyleDefList);
                     if (data.page_name == this.$data.param.Sub_Page[1]
                        .Name) { //判断返回的action的page_name是否是已分拣
                        this.$data.detail2StyleDefList.push(detailStyle);
                        // console.log(this.$data.detail2StyleDefList);
                     } else {
                        this.$data.detail1StyleDefList.push(detailStyle);
                        this.activelist.push({
                           active: false
                        });
                        // console.log(this.$data.detail1StyleDefList);
                     }
                  }
               }
            });
@@ -1179,95 +1266,103 @@
            if (JSON.stringify(data.content) == '{}') {
               return;
            }
            var styleStr = JSON.stringify($this.$data.detail2_styledef); //已分拣
            if (data.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣
               styleStr = JSON.stringify($this.$data.detail1_styledef); //待分拣
            }
            data.content.forEach(cont => {
               var styleStr = JSON.stringify($this.$data.detail2_styledef); //已分拣
               if (data.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣
                  styleStr = JSON.stringify($this.$data.detail1_styledef); //待分拣
               }
               var detailStyle = JSON.parse(styleStr);
               detailStyle.SelBut_Checked = data.checkbox ?? true;
               detailStyle.form.objId = cont.id;
               detailStyle.form.htmlobjId = cont.id ? cont.id.replace(/-/g, '').replace('{', '').replace('}',
                  '') : 'null';
               detailStyle.form.attrs = cont.attrs;
               cont.attrs.forEach(attr => {
                  detailStyle.form.items.forEach(ele => {
                     if (ele.name != 'Layout') {
                        if (ele.fieldId == attr.attr) ele.value = attr.value;
                     } else if (ele.name == 'Layout') {
                        ele.setting.colList.forEach(col => {
                           if (col) {
                              if (col.fieldId == attr.attr) col.value = attr
                                 .value;
               if (detailStyle.form) {
                  detailStyle.SelBut_Checked = data.checkbox ?? true;
                  detailStyle.form.objId = cont.id;
                  detailStyle.form.htmlobjId = cont.id ? cont.id.replace(/-/g, '').replace('{', '').replace(
                     '}',
                     '') : 'null';
                  detailStyle.form.attrs = cont.attrs;
                  cont.attrs.forEach(attr => {
                     detailStyle.form.items.forEach(ele => {
                        if (ele.name != 'Layout') {
                           if (ele.fieldId == attr.attr) ele.value = attr.value;
                        } else if (ele.name == 'Layout') {
                           ele.setting.colList.forEach(col => {
                              if (col) {
                                 if (col.fieldId == attr.attr) col.value = attr
                                    .value;
                              }
                           });
                        }
                     });
                  });
                  if (data.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣
                     //如果 clear = false 则不需要清除,根据id判断是否存在,不存在插入到页面,如果存在用新的属性覆盖
                     if (data.clear == false) {
                        var isflag = true;
                        $this.detail1StyleDefList.forEach((style, index) => {
                           if (style.form.objId == detailStyle.form.objId) {
                              cont.attrs.forEach(attr => {
                                 style.form.items.forEach(ele => {
                                    if (ele.name != 'Layout') {
                                       if (ele.fieldId == attr.attr) ele
                                          .value =
                                          attr.value;
                                    } else if (ele.name == 'Layout') {
                                       ele.setting.colList.forEach(col => {
                                          if (col) {
                                             if (col.fieldId == attr
                                                .attr) col.value =
                                                attr
                                                .value;
                                          }
                                       });
                                    }
                                 });
                              });
                              isflag = false;
                           }
                        });
                        if (isflag) $this.detail1StyleDefList.push(detailStyle); //待分拣
                     } else {
                        $this.detail1StyleDefList.push(detailStyle); //待分拣
                     }
                  });
               });
               if (data.page_name == $this.$data.param.Sub_Page[0].Name) { //判断返回的action的page_name是否是待分拣
                  //如果 clear = false 则不需要清除,根据id判断是否存在,不存在插入到页面,如果存在用新的属性覆盖
                  if (data.clear == false) {
                     var isflag = true;
                     $this.detail1StyleDefList.forEach((style, index) => {
                        if (style.form.objId == detailStyle.form.objId) {
                           cont.attrs.forEach(attr => {
                              style.form.items.forEach(ele => {
                                 if (ele.name != 'Layout') {
                                    if (ele.fieldId == attr.attr) ele.value =
                                       attr.value;
                                 } else if (ele.name == 'Layout') {
                                    ele.setting.colList.forEach(col => {
                                       if (col) {
                                          if (col.fieldId == attr
                                             .attr) col.value = attr
                                             .value;
                                       }
                                    });
                                 }
                              });
                           });
                           isflag = false;
                        }
                     $this.activelist.push({
                        active: false
                     });
                     if (isflag) $this.detail1StyleDefList.push(detailStyle); //待分拣
                     // console.log($this.$data.detail1StyleDefList);
                  } else {
                     $this.detail1StyleDefList.push(detailStyle); //待分拣
                  }
                  $this.activelist.push({
                     active: false
                  });
                  // console.log($this.$data.detail1StyleDefList);
               } else {
                  if (data.clear == false) {
                     //如果 clear = false 则不需要清除,根据id判断是否存在,不存在插入到页面,如果存在用新的属性覆盖
                     var isflag = true;
                     $this.detail2StyleDefList.forEach((style, index) => {
                        if (style.form.objId == detailStyle.form.objId) {
                           cont.attrs.forEach(attr => {
                              style.form.items.forEach(ele => {
                                 if (ele.name != 'Layout') {
                                    if (ele.fieldId == attr.attr) ele.value =
                                       attr.value;
                                 } else if (ele.name == 'Layout') {
                                    ele.setting.colList.forEach(col => {
                                       if (col) {
                                          if (col.fieldId == attr
                                             .attr) col.value = attr
                                             .value;
                                       }
                                    });
                                 }
                     if (data.clear == false) {
                        //如果 clear = false 则不需要清除,根据id判断是否存在,不存在插入到页面,如果存在用新的属性覆盖
                        var isflag = true;
                        $this.detail2StyleDefList.forEach((style, index) => {
                           if (style.form.objId == detailStyle.form.objId) {
                              cont.attrs.forEach(attr => {
                                 style.form.items.forEach(ele => {
                                    if (ele.name != 'Layout') {
                                       if (ele.fieldId == attr.attr) ele
                                          .value =
                                          attr.value;
                                    } else if (ele.name == 'Layout') {
                                       ele.setting.colList.forEach(col => {
                                          if (col) {
                                             if (col.fieldId == attr
                                                .attr) col.value =
                                                attr
                                                .value;
                                          }
                                       });
                                    }
                                 });
                              });
                           });
                           isflag = false;
                        }
                     });
                     if (isflag) $this.detail2StyleDefList.push(detailStyle); //已分拣
                  } else {
                     $this.detail2StyleDefList.push(detailStyle); //已分拣
                              isflag = false;
                           }
                        });
                        if (isflag) $this.detail2StyleDefList.push(detailStyle); //已分拣
                     } else {
                        $this.detail2StyleDefList.push(detailStyle); //已分拣
                     }
                     // console.log($this.$data.detail2StyleDefList);
                  }
                  // console.log($this.$data.detail2StyleDefList);
               }
            });
         },
@@ -1339,9 +1434,10 @@
                        }
                     }).catch(ex => {
                        // console.log(ex);
                        let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
                        uni.showModal({
                           title: this.translateSys("error") + "5.1",
                           content: ex.errMsg,
                           content: tip,
                           showCancel: false,
                           confirmText: this.translateSys("cancel")
                        });
@@ -2022,7 +2118,8 @@
                  this.okLoading = false
               else if (type == "2")
                  this.ok2Loading = false
               var tip = typeof ex == "string" ? ex : ex.errMsg;
               let tip = typeof ex.errMsg == "string" ? ex.errMsg : ex
               uni.showModal({
                  title: this.translateSys("error") + "8.1",
                  content: this.translate("execute_after_ok_event_failed") + this.translateSys(
@@ -2067,6 +2164,7 @@
      .v-headStyle {
         width: 100%;
         margin-bottom: 11rpx;
      }
      .view-content {
@@ -2115,24 +2213,24 @@
      }
      .v-headStyle .txt_title {
         font-size: 34rpx;
         font-size: 14px;
         text-align: right;
         display: inline-block;
         vertical-align: 12px;
         // align-items: center;
         color: #606266;
         padding: 0 5px 0 0;
         vertical-align: 10px;
      }
      .v-headStyle input {
         display: inline-block;
         /* border: 1px solid #d5d5d5; */
         /* width: 65%; */
         width: 85%;
         height: 52rpx;
         line-height: 34rpx;
         line-height: 14px;
         background: #FFF;
         border-radius: 0 !important;
         color: #2d8cf0;
         padding: 10rpx 8rpx 12rpx;
         font-size: 34rpx;
         padding: 12rpx 8rpx;
         font-size: 14px;
         font-family: inherit;
         box-shadow: none !important;
         transition-duration: 0.1s;