cuiqian2004
2025-05-23 df481aebfb7a19eea5d6c02f93c6f5776b0fdc19
pages/modal/3018_2.vue
@@ -1,5 +1,5 @@
<template>
   <view class="uni-page-modal-3018-2">
   <view class="uni-page-modal-3018-2" :class="largeMode?'large-mode':''">
      <view class="view-content">
         <!-- 表头样式 -->
         <OIForm ref="refBaseForm" class="v-headStyle" :form="head_styledef.form" :focusId="focusFieldId"
@@ -53,7 +53,7 @@
<script>
   import {
      Base64
   } from  '@/js/Base64.js';
   } from '@/js/Base64.js';
   import utils from "@/js/utils.js"
   import dayjs from "dayjs";
   import OIForm from '@/components/oi-form/index.vue'
@@ -67,14 +67,15 @@
      dataObjCreate
   } from "@/api/data.js"
   import buttonClickMixin from '@/mixins/button-click.js';
   export default {
   mixins: [buttonClickMixin],
      mixins: [buttonClickMixin],
      components: {
         OIForm,
      },
      data() {
         return {
               largeMode: getApp().globalData.largeMode || false,
            title: this.translateSys('add2'),
            btnName: "",
            param: {},
@@ -275,7 +276,7 @@
                              if (itemName) {
                                 styledefHead.form.model[ele.fieldId] = itemName;
                              }
                              ele.dict = selections.map((a) => {
                              ele.selections = selections.map((a) => {
                                 return {
                                    value: a.value,
                                    text: a.label
@@ -311,7 +312,7 @@
                                       styledefHead.form
                                          .model[col.fieldId] = itemName;
                                    }
                                    col.dict = selections.map((a) => {
                                    col.selections = selections.map((a) => {
                                       return {
                                          value: a.value,
                                          text: a.label
@@ -332,6 +333,25 @@
                           }
                        }
                     }
                  }
                  const app = getApp()
                  if (app.globalData.bindClasses) {
                     styledefHead.form.items.push({
                        name: "Input",
                        label: this.translate("classes"),
                        labelWidth: 100,
                        disabled: true,
                        value: app.globalData.classes,
                        setting: {
                           width: 100,
                           height: 50,
                        },
                        bind: {
                           attr: "",
                        },
                        fieldId: "S_CLASSES",
                     })
                     styledefHead.form.model["S_CLASSES"] = app.globalData.classes
                  }
               }
@@ -444,10 +464,8 @@
                  });
                  return false
               } else {
                  var tip = data.info ? typeof data.info == 'string' ? data.info : data
                     .info
                     .join(
                        '<br/>') : '';
                  var tip = data.info ? typeof data.info == 'string' ? data.info :
                     data.info.join('<br/>') : '';
                  if (tip) uni.showModal({
                     title: this.translateSys("tip"),
                     content: tip,
@@ -470,9 +488,7 @@
                        } else if (action.action_type ==
                           "set_dlg_current_edit_attr"
                        ) {
                           if ($this
                              .focusOldFieldId ==
                              action.value) {
                           if ($this.focusOldFieldId == action.value) {
                              $this.setData({
                                 focusFieldId: ""
                              })
@@ -688,6 +704,7 @@
               var attr = item.fieldId;
               this.head_styledef.form.model[attr] = newVal;
               var onChangeEvent = item.bind.onChangeEvent; //内容变化后事件
               // this.onScanValue(this.head_styledef.form.items[2].setting.colList[0], "test")
               if (onChangeEvent?.id) { //内容变化后事件
                  this.onChange(onChangeEvent);
               }
@@ -748,7 +765,8 @@
            // open 方法传入参数 等同在 uni-popup 组件上绑定 type属性
            this.$refs.popup.open(this.popupType);
            this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, '', onSuffixClickCallbackEvent.id,
            this.dataObjRunCustomEvent_Return(onSuffixClickEvent.id, '', onSuffixClickCallbackEvent
               .id,
               item);
         },
         popupChange(e) {
@@ -861,7 +879,8 @@
            // }
            enviroment = Base64.encode(JSON.stringify(enviroment)); //将字符串转换为base64编码
            var input_param = Base64.encode(JSON.stringify(info.attr)); //将字符串转换为base64编码
            var global_attr = Base64.encode(JSON.stringify(this.global_attr)); //将字符串转换为base64编码
            var global_attr = Base64.encode(JSON.stringify(this
               .global_attr)); //将字符串转换为base64编码
            if (info.dataJson)
               info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //将字符串转换为base64编码
            var obj_attr = {};
@@ -909,14 +928,16 @@
                     });
                  } else uni.showModal({
                     title: this.translateSys("tip"),
                     content: tip + ',' + this.translateSys('tip') + ':' + data
                     content: tip + ',' + this.translateSys('tip') + ':' +
                        data
                        .ret,
                     showCancel: false,
                     confirmText: this.translateSys('close')
                  });
                  return false
               } else {
                  var tip = data.info ? typeof data.info == 'string' ? data.info : data
                  var tip = data.info ? typeof data.info == 'string' ? data.info :
                     data
                     .info
                     .join(
                        '<br/>') : '';
@@ -1023,7 +1044,8 @@
               class_id: $this.param.DataCls.id, //当前数据类id
            }
            extinfo = Base64.encode(JSON.stringify(extinfo)); //将字符串转换为base64编码
            var global_attr = Base64.encode(JSON.stringify($this.global_attr)); //将字符串转换为base64编码
            var global_attr = Base64.encode(JSON.stringify($this
               .global_attr)); //将字符串转换为base64编码
            var obj_attr = {};
            req.forEach(item2 => {
               obj_attr[item2.attr] = item2.value;
@@ -1078,14 +1100,16 @@
                     });
                  } else uni.showModal({
                     title: $this.translateSys("tip"),
                     content: tip + ',' + $this.translateSys('tip') + ':' + data
                     content: tip + ',' + $this.translateSys('tip') + ':' +
                        data
                        .ret,
                     showCancel: false,
                     confirmText: $this.translateSys('close')
                  });
                  return false
               } else {
                  var tip = data.info ? typeof data.info == 'string' ? data.info : data
                  var tip = data.info ? typeof data.info == 'string' ? data.info :
                     data
                     .info
                     .join(
                        '<br/>') : '';
@@ -1109,13 +1133,17 @@
                              var d = dialog({
                                 title: '<i class="ace-icon fa fa-info-circle"></i> ' +
                                    $this.translateSys("tip"),
                                 content: $this.translateSys("quotation_mark_left") +
                                    action.action_type + $this.translateSys(
                                 content: $this.translateSys(
                                       "quotation_mark_left") +
                                    action.action_type + $this
                                    .translateSys(
                                       "quotation_mark_right") +
                                    $this.translate("tip_action_unprocessed")
                                    $this.translate(
                                       "tip_action_unprocessed")
                              });
                              d.show();
                           } else if (action.action_type == 'open_select_userdlg') {
                           } else if (action.action_type ==
                              'open_select_userdlg') {
                              var style = val.style;
                              // style == 'user' ? '选择人员' : style == 'department' ? '选择部门' : style == 'role' ? '选择角色' : ''
                              var param = {
@@ -1151,13 +1179,15 @@
                                          inputparameter: data,
                                          dataJson: [],
                                       }
                                       $this.DataObjRunCustomEvent(info,
                                       $this.DataObjRunCustomEvent(
                                          info,
                                          param
                                          .data_attr);
                                    }
                                 }
                              });
                           } else if (action.action_type == 'open_data_query_dlg') {
                           } else if (action.action_type ==
                              'open_data_query_dlg') {
                              var d = dialog({
                                 title: '<i class="ace-icon fa fa-info-circle"></i> ' +
                                    $this.translateSys("tip"),
@@ -1177,7 +1207,8 @@
                                 $this.setData({
                                    check_list: val.config
                                 })
                                 if (val.config.appear_style == 'sideslip') //判断是否是侧滑
                                 if (val.config.appear_style ==
                                    'sideslip') //判断是否是侧滑
                                    $this.setData({
                                       popupType: "right"
                                    })
@@ -1197,7 +1228,8 @@
                                    popupParam: popupParam
                                 })
                              }
                           } else if (action.action_type == 'open_project_query_dlg') {
                           } else if (action.action_type ==
                              'open_project_query_dlg') {
                              //console.log(action.value.select_range);
                              //console.log(action.value.mulit_select);
                              var priRel = '-1';
@@ -1207,7 +1239,8 @@
                                 priRel = '1';
                              else if (action.value.select_range == '我创建的')
                                 priRel = '2';
                              else if (action.value.select_range == '我参与的' || action
                              else if (action.value.select_range == '我参与的' ||
                                 action
                                 .value
                                 .select_range == '我参加的')
                                 priRel = '3';
@@ -1221,7 +1254,8 @@
                                 req: req
                              }
                              uni.navigateTo({
                                 url: '../selPrj/index?relation=' + priRel +
                                 url: '../selPrj/index?relation=' +
                                    priRel +
                                    '&param=' +
                                    JSON.stringify(param_),
                                 events: {
@@ -1241,7 +1275,8 @@
                                          var info = {
                                             eventid: callback_eventid,
                                             edtype: "2",
                                             projectid: data[0].ID,
                                             projectid: data[0]
                                                .ID,
                                             rclsid: "",
                                             robjid: "",
                                             userlogin: "",
@@ -1253,8 +1288,9 @@
                                             dataJson: [],
                                          }
                                          $this.DataObjRunCustomEvent(
                                             info);
                                          $this
                                             .DataObjRunCustomEvent(
                                                info);
                                       }
                                    }
                                 }
@@ -1264,12 +1300,14 @@
                                 title: $this.translateSys("tip"),
                                 content: $this.translateSys(
                                       "quotation_mark_left") +
                                    action.action_type + $this.translateSys(
                                    action.action_type + $this
                                    .translateSys(
                                       "quotation_mark_right") + $this
                                    .translate(
                                       "tip_action_unprocessed"),
                                 showCancel: false,
                                 confirmText: $this.translateSys('close')
                                 confirmText: $this.translateSys(
                                    'close')
                              });
                           }
                        }
@@ -1277,9 +1315,11 @@
                  } else {
                     uni.showModal({
                        title: $this.translateSys('tip') + "5.2",
                        content: $this.translateSys("quotation_mark_left") +
                        content: $this.translateSys(
                              "quotation_mark_left") +
                           "before_click_button" + $this.translateSys(
                              "quotation_mark_right") + $this.translateSys(
                              "quotation_mark_right") + $this
                           .translateSys(
                              "comma") + 'event_id' + eventid,
                        showCancel: false,
                        confirmText: $this.translateSys('close')
@@ -1373,7 +1413,8 @@
                     });
                  } else uni.showModal({
                     title: this.translateSys("tip"),
                     content: tip + ',' + this.translateSys('tip') + ':' + data
                     content: tip + ',' + this.translateSys('tip') + ':' +
                        data
                        .ret,
                     showCancel: false,
                     confirmText: this.translateSys('close')
@@ -1381,7 +1422,8 @@
                  this.saving = false
                  return false
               } else {
                  var tip = data.info ? typeof data.info == 'string' ? data.info : data
                  var tip = data.info ? typeof data.info == 'string' ? data.info :
                     data
                     .info
                     .join(
                        '<br/>') : '';
@@ -1404,7 +1446,8 @@
                  if (!this.param.After_Btn_Not_Refresh) {
                     //刷新
                     uni.redirectTo({
                        url: '../modal/3018_2?param=' + JSON.stringify(this.$data
                        url: '../modal/3018_2?param=' + JSON.stringify(this
                              .$data
                              .param) +
                           "&titlename=" + this.title
                     });
@@ -1467,16 +1510,17 @@
         },
         setFormValues(data) {
            const $this = this
            const head_styledef = this.head_styledef
            for (var i = 0; i < data.length; i++) {
               if (data[i].choice_list) {
                  for (var c = 0; c < $this.head_styledef.form.items
                     .length; c++) {
                     var attr = $this.head_styledef.form.items[c];
                     if (attr.name != 'Layout') {
                        if (attr.fieldId == data[i].attr) {
               const attr = data[i]
               if (attr.choice_list) {
                  for (var c = 0; c < head_styledef.form.items.length; c++) {
                     const item = head_styledef.form.items[c];
                     if (item.name != 'Layout') {
                        if (item.fieldId == attr.attr) {
                           var dictItemList = [];
                           for (var d in data[i].choice_list) {
                              var val = data[i].choice_list[d];
                           for (var d in attr.choice_list) {
                              var val = attr.choice_list[d];
                              dictItemList.push({
                                 "CN_S_NAME": val,
                                 "CN_S_VALUE": val,
@@ -1484,20 +1528,19 @@
                                 "value": val
                              });
                           }
                           attr.dict = dictItemList;
                           if (item.useDict) {
                              item.dict = dictItemList;
                           } else {
                              item.selections = dictItemList;
                           }
                        }
                     } else if (attr.name == 'Layout') {
                        attr.setting.colList.forEach(col => {
                     } else if (item.name == 'Layout') {
                        item.setting.colList.forEach(col => {
                           if (col) {
                              if (col.fieldId == data[
                                    i]
                                 .attr) {
                              if (col.fieldId == attr.attr) {
                                 var dictItemList = [];
                                 for (var d in data[i]
                                       .choice_list) {
                                    var val = data[i]
                                       .choice_list[
                                          d];
                                 for (var d in attr.choice_list) {
                                    var val = attr.choice_list[d];
                                    dictItemList.push({
                                       "CN_S_NAME": val,
                                       "CN_S_VALUE": val,
@@ -1505,8 +1548,11 @@
                                       "value": val
                                    });
                                 }
                                 col.dict =
                                    dictItemList;
                                 if (col.useDict) {
                                    col.dict = dictItemList;
                                 } else {
                                    col.selections = dictItemList;
                                 }
                              }
                           }
                        });
@@ -1514,49 +1560,44 @@
                  }
               }
               for (var c = 0; c < $this.head_styledef.form
                  .items
                  .length; c++) {
                  var attr = $this.head_styledef.form.items[c];
                  // console.log(attr[j].Name+'=='+data[i].attr);
               for (var c = 0; c < head_styledef.form.items.length; c++) {
                  const item = head_styledef.form.items[c];
                  // console.log(attr[j].Name+'=='+attr.attr);
                  //判断表单里是否有返回字段,没有就装载到model里,点击确定提交的时候带上这些数据
                  if ($this.head_styledef.form.model[data[i]
                        .attr] ==
                     undefined) {
                     $this.head_styledef.form.model[data[i]
                           .attr] =
                        data[i]
                        .value;
                  if (head_styledef.form.model[attr.attr] == undefined) {
                     head_styledef.form.model[attr.attr] = attr.value;
                  }
                  //判断是否是栅格表单
                  if (attr.name != 'Layout') {
                     if (attr.fieldId == data[i].attr) {
                        attr.value = '';
                        attr.oldvalue = '';
                        attr.value = data[i].value;
                        attr.oldvalue = data[i].value;
                        $this.head_styledef.form.model[attr
                              .fieldId] =
                           data[
                              i].value;
                  if (item.name != 'Layout') {
                     if (item.fieldId == attr.attr) {
                        item.value = '';
                        item.oldvalue = '';
                        item.value = attr.value;
                        item.oldvalue = attr.value;
                        head_styledef.form.model[item.fieldId] = attr.value;
                        if (item.name == "Input") {
                           if (attr.prompt) item.placeholder = attr.prompt;
                        }
                        if (attr.enable !== undefined) {
                           if (attr.enable) item.disabled = false;
                           else item.disabled = true;
                        }
                     }
                  } else if (attr.name == 'Layout') {
                     attr.setting.colList.forEach(col => {
                  } else if (item.name == 'Layout') {
                     item.setting.colList.forEach(col => {
                        if (col) {
                           if (col.fieldId == data[i]
                              .attr) {
                           if (col.fieldId == attr.attr) {
                              col.value = '';
                              col.oldvalue = '';
                              col.value = data[i]
                                 .value;
                              col.oldvalue = data[i]
                                 .value;
                              $this.head_styledef.form
                                 .model[
                                    col
                                    .fieldId] = data[
                                    i]
                                 .value;
                              col.value = attr.value;
                              col.oldvalue = attr.value;
                              if (col.name == "Input") {
                                 if (attr.prompt) col.placeholder = attr.prompt;
                              }
                              if (attr.enable !== undefined) {
                                 if (attr.enable) col.disabled = false;
                                 else col.disabled = true;
                              }
                           }
                        }
                     });
@@ -1567,42 +1608,25 @@
         },
         hideFormItems(data) {
            const $this = this
            const head_styledef = this.head_styledef
            data.forEach(async (attr, key) => {
               $this.head_styledef.form.items
                  .forEach(
                     async (
                        ele, index) => {
                        //判断是否是栅格表单
                        if (ele.name != 'Layout') {
                           if (ele.fieldId == attr
                              .attr) {
                              ele.show = attr
                                 .show;
               head_styledef.form.items.forEach(async (ele, index) => {
                  //判断是否是栅格表单
                  if (ele.name != 'Layout') {
                     if (ele.fieldId == attr.attr) {
                        ele.show = attr.show;
                     }
                  } else if (ele.name == 'Layout') {
                     ele.setting.colList.forEach((col) => {
                        if (col) {
                           if (col.fieldId == attr.attr) {
                              col.show = attr.show;
                           }
                        } else if (ele.name ==
                           'Layout') {
                           ele.setting.colList
                              .forEach(
                                 col => {
                                    if (col) {
                                       if (col
                                          .fieldId ==
                                          attr
                                          .attr
                                       ) {
                                          col.show =
                                             attr
                                             .show;
                                       }
                                    }
                                 });
                        }
                     });
                  }
               });
            });
            var head_styledef = JSON.parse(JSON.stringify($this.$data
               .head_styledef));
            $this.head_styledef = [];
            $this.head_styledef = head_styledef;
         },
         afterOK() {
            this.saving = true
@@ -1616,7 +1640,8 @@
                  value: obj_attr[a],
               })),
            };
            if (!this.after_ok.id.includes('{')) this.after_ok.id = '{' + this.after_ok.id + '}';
            if (!this.after_ok.id.includes('{')) this.after_ok.id = '{' + this.after_ok.id +
               '}';
            var dataInfo = {
               ed_type: "0",
               start_transaction: true,
@@ -1656,7 +1681,8 @@
                     });
                  } else uni.showModal({
                     title: this.translateSys("tip"),
                     content: tip + ',' + this.translateSys('tip') + ':' + data
                     content: tip + ',' + this.translateSys('tip') + ':' +
                        data
                        .ret,
                     showCancel: false,
                     confirmText: this.translateSys('close')
@@ -1664,7 +1690,8 @@
                  this.saving = false
                  return false
               } else {
                  var tip = data.info ? typeof data.info == 'string' ? data.info : data
                  var tip = data.info ? typeof data.info == 'string' ? data.info :
                     data
                     .info
                     .join(
                        '<br/>') : '';
@@ -1677,7 +1704,8 @@
                  if (!this.param.After_Btn_Not_Refresh) {
                     //刷新
                     uni.redirectTo({
                        url: '../modal/3018_2?param=' + JSON.stringify(this.$data
                        url: '../modal/3018_2?param=' + JSON.stringify(this
                              .$data
                              .param) +
                           "&titlename=" + this.title
                     });
@@ -1829,14 +1857,16 @@
                     });
                  } else uni.showModal({
                     title: this.translateSys("tip"),
                     content: tip + ',' + this.translateSys('tip') + ':' + data
                     content: tip + ',' + this.translateSys('tip') + ':' +
                        data
                        .ret,
                     showCancel: false,
                     confirmText: this.translateSys('close')
                  });
                  return false
               } else {
                  var tip = data.info ? typeof data.info == 'string' ? data.info : data
                  var tip = data.info ? typeof data.info == 'string' ? data.info :
                     data
                     .info
                     .join(
                        '<br/>') : '';
@@ -1849,7 +1879,8 @@
                  if (!this.param.After_Btn_Not_Refresh) {
                     //刷新
                     uni.redirectTo({
                        url: '../modal/3018_2?param=' + JSON.stringify(this.$data
                        url: '../modal/3018_2?param=' + JSON.stringify(this
                              .$data
                              .param) +
                           "&titlename=" + this.title
                     });
@@ -1916,7 +1947,8 @@
               cls_name: btn.Cls_Name,
               Edit_dlg: btn.Edit_dlg
            };
            const url = '../modal/3018?param=' + JSON.stringify(data) + "&titlename=" + btn.Edit_dlg
            const url = '../modal/3018?param=' + JSON.stringify(data) + "&titlename=" + btn
               .Edit_dlg
               .Name +
               "&type=addDataObj"
            var $this = this;
@@ -1928,7 +1960,8 @@
                     console.log(resData);
                     //刷新
                     uni.redirectTo({
                        url: '../modal/3018_2?param=' + JSON.stringify(this
                        url: '../modal/3018_2?param=' + JSON.stringify(
                              this
                              .$data.param) +
                           "&titlename=" + this.title
                     });