cuiqian2004
2024-09-27 ec63534e04c68e067dcb0380e56f2e5312de24a3
pages/modal/3018_2.vue
@@ -8,16 +8,14 @@
               <uni-forms-item v-if="item.name != 'Layout'&& item.show==true" :label="item.label +':' "
                  :label-width="item.labelWidth+'px'">
                  <!-- <text class="txt_title" :style="{'width':item.labelWidth+'px'}">{{item.label}}:</text> -->
                  <span class="form-item-span" v-if="item.disabled"
                     :style="'width: calc(100% - '+item.labelWidth+'px);'">{{item.value}}</span>
                  <!-- 下拉框-单选 item.useDict?item.dict:item.selections-->
                  <uni-data-select id="dv_select" v-if="item.name=='Select' && !item.disabled"
                  <uni-data-select id="dv_select" v-if="item.name=='Select'"
                     :style="'width: calc(100% - '+item.labelWidth-10+'px);'"
                     :class="item.disabled?'input-disabled':''" v-model="item.value" :localdata="item.dict"
                     @change="onchange(item)" :disabled="item.disabled" :clear="false"></uni-data-select>
                  <!-- 文本框/数字框 -->
                  <view class="input-wrapper"
                     v-if="(item.name=='Input' || item.name=='InputNumber') && !item.disabled">
                     v-if="(item.name=='Input' || item.name=='InputNumber')">
                     <text v-if="item.setting.prefix" class="uni-icon" :class="[item.setting.prefix]"
                        @change="classAttr_extButton(item)">&#xe568;</text>
                     <input class="uni-input" :class="item.disabled?'input-disabled':''"
@@ -30,7 +28,7 @@
                        @click="classAttr_extButton(item)">&#xe568;</text>
                  </view>
                  <!-- 多行文本 -->
                  <view class="input-wrapper" v-if="item.name=='Textarea' && !item.disabled">
                  <view class="input-wrapper" v-if="item.name=='Textarea' ">
                     <textarea class="uni-input" :class="item.disabled?'input-disabled':''" :value="item.value"
                        :focus="focusFieldId == item.fieldId" :placeholder="item.placeholder"
                        @blur="onModelValue(item)" @click="onClick(item)" :data-index="index"
@@ -61,7 +59,7 @@
                     @change="onModelValue(item)" />
                  <!-- 日期时间 -->
                  <view class="input-wrapper"
                     v-if="(item.name=='TimePicker' || item.name=='DatePicker') && !item.disabled">
                     v-if="(item.name=='TimePicker' || item.name=='DatePicker')">
                     <picker mode="date" class="date_iput" :class="item.disabled?'input-disabled':''"
                        :disabled="item.disabled" :value="item.value" @change="onModelValue(item)">
                        <view class="picker">{{item.value}}</view>
@@ -74,10 +72,8 @@
                     :span="item.setting.spanList?item.setting.spanList[key]:24 / item.setting.col">
                     <uni-forms-item v-if="cols!=null  && cols.show==true" :label="cols.label +':'"
                        :label-width="cols.labelWidth+'px'">
                        <!-- <text class="txt_title" :style="{'width':cols.labelWidth+'px'}">{{cols.label}}:</text> -->
                        <span class="form-item-span" v-if="cols.disabled">{{cols.value}}</span>
                        <view class="input-wrapper"
                           v-if="(cols.name=='Input' || cols.name=='InputNumber') && !cols.disabled">
                           v-if="(cols.name=='Input' || cols.name=='InputNumber') ">
                           <text v-if="cols.setting.prefix" class="uni-icon" :class="[cols.setting.prefix]"
                              @change="onchange(cols)">&#xe568;</text>
                           <input class="uni-input" :class="cols.disabled?'input-disabled':''"
@@ -90,12 +86,12 @@
                              @click="onchange(cols)">&#xe568;</text>
                        </view>
                        <!-- 下拉框-单选 cols.useDict?cols.dict:cols.selections-->
                        <uni-data-select id="dv_select" v-if="cols.name=='Select' && !cols.disabled"
                        <uni-data-select id="dv_select" v-if="cols.name=='Select' "
                           :class="cols.disabled?'input-disabled':''" v-model="cols.value"
                           :localdata="cols.dict" @change="onchange(cols)" :disabled="cols.disabled"
                           :clear="false"></uni-data-select>
                        <!-- 多行文本 -->
                        <view class="input-wrapper" v-if="cols.name=='Textarea' && !cols.disabled">
                        <view class="input-wrapper" v-if="cols.name=='Textarea' ">
                           <textarea class="uni-input" :value="cols.value"
                              :class="cols.disabled?'input-disabled':''" :placeholder="cols.placeholder"
                              :focus="focusFieldId == cols.fieldId" @blur="onModelValue(cols)"
@@ -148,9 +144,9 @@
               </a>
            </view>
         </view>
         <button type="default" @tap="sava" class="btn_add" v-if="dropdownBtns.length==0"
            :class="saving?'btn_disabled':''" :disabled="saving">{{title}}</button>
         <button type="default" @tap="cancel" class="btn_cancel">{{translateSys('cancel')}}</button>
         <button type="default" @tap="sava" class="btn_add" v-if="dropdownBtns.length==0 && btnName != ''"
            :class="saving?'btn_disabled':''" :disabled="saving">{{btnName}}</button>
         <button type="default" @tap="cancel" :class="(dropdownBtns.length> 0 || btnName != '')?'btn_cancel':'btn_cancel2'">{{translateSys('cancel')}}</button>
      </view>
      <!-- 普通弹窗 top bottom center left right -->
@@ -201,6 +197,7 @@
      data() {
         return {
            title: this.translateSys('add2'),
            btnName: "",
            param: {},
            edit_inital_event: "", //弹窗初始化事件ID
            edit_ok_event: "", //弹窗点击OK 触发事件ID
@@ -303,6 +300,7 @@
         this.$data.param = JSON.parse(options.param);
         this.$data.title = this.$data.param.Add_BtnName ? this.$data.param.Add_BtnName : options
            .titlename; //设置按钮文字
         this.$data.btnName = this.$data.param.Add_BtnName || ""
         this.loadData(options.paramValue)
      },
      computed: {
@@ -472,12 +470,12 @@
               var itemName = '';
               (res.dict_item_list || []).forEach((item) => {
                  if (item.is_default == '1')
                     itemName = item.name;
                     itemName =item.value ? item.value : item.name
                  list.push({
                     text: item.name,
                     text: item.value ? item.value : item.name,
                     value: item.id,
                  });
               });
               });
               //有默认值,显示默认值
               if (itemName) {
                  formItem.value = itemName;
@@ -969,16 +967,26 @@
               });
               return;
            }
            var fieldId = $this.$data.popupParam.item.fieldId;
            $this.head_styledef.form.model[attr] = name;
            for (var c = 0; c < $this.$data.head_styledef.form.items.length; c++) {
               var attr = $this.$data.head_styledef.form.items[c];
               if (attr.fieldId == fieldId) {
                  attr.value = name;
               }
            if (data.length == 0) {
               uni.showModal({
                  title: this.translateSys("tip"),
                  content:this.translate("tip_no_select_data"),
                  showCancel: false,
                  confirmText: this.translateSys("cancel")
               });
               return;
            }
            console.log(data);
            // var fieldId = $this.$data.popupParam.item.fieldId;
            // $this.head_styledef.form.model[fieldId] = name;
            // console.log(fieldId,$this.$data.popupParam.item);
            // for (var c = 0; c < $this.$data.head_styledef.form.items.length; c++) {
            //    var attr = $this.$data.head_styledef.form.items[c];
            //    if (attr.fieldId == fieldId) {
            //       attr.value = name;
            //    }
            // }
            // console.log(data);
            // console.log($this.head_styledef.form);
            var callback_eventid = $this.$data.popupParam.button_callback.trim();
            var info = {
               eventid: callback_eventid,
@@ -1039,7 +1047,7 @@
               info.dataJson = Base64.encode(JSON.stringify(info.dataJson)); //将字符串转换为base64编码
            var obj_attr = {};
            info.attr.forEach(item => {
               obj_attr[item.attr] = item.val;
               obj_attr[item.attr] = item.value;
            });
            if (!info.eventid.includes('{')) info.eventid = '{' + info.eventid + '}';
            var dataInfo = {
@@ -1396,8 +1404,8 @@
            extinfo = Base64.encode(JSON.stringify(extinfo)); //将字符串转换为base64编码
            var global_attr = Base64.encode(JSON.stringify($this.global_attr)); //将字符串转换为base64编码
            var obj_attr = {};
            req.forEach(item => {
               obj_attr[item.attr] = item.value;
            req.forEach(item2 => {
               obj_attr[item2.attr] = item2.value;
            });
            let input_param = Base64.encode(
               JSON.stringify(
@@ -2193,6 +2201,16 @@
            float: right;
            display: inline-block;
         }
         .btn_cancel2 {
            width: 90%;
            margin: 0 10rpx;
            background: #fff;
            border: none;
            color: #000;
            font-size: 38rpx;
            float: right;
            display: inline-block;
         }
         .uni-padding-wrap {
            margin: 2rpx 0 0 10rpx;