cuiqian2004
2024-06-17 b1f20a79e8c5635e0f8aeea42df1d5804fd6dc1f
pages/modal/5602.vue
@@ -425,6 +425,8 @@
     current: 0,
     Before_OK_Event:{},
      After_OK_Event:{},
     Before_Del_Event: {},
     After_Del_Event: {},
     items: [],
      active_id:'',
     activelist:[],
@@ -875,6 +877,19 @@
                             }
                           });
                        }
                        else if(item.action_type == "remove_subtable_page_row"){  //清除面板中指定id的数据
                           var value = item.value;
                           if(value.page_name == $this.param.Sub_Page[0].Name){ //判断返回的action的page_name是否是待分拣
                              //清除面板中指定id的数据
                              value.row.forEach(row=>{
                                 $this.$data.detail1StyleDefList.forEach((ele,index)=>{
                                    if(ele.form.objId == row.id){
                                      $this.$data.detail1StyleDefList.splice(index,1);
                                    }
                                 });
                              });
                           }
                        }
                        else if (item.action_type == "set_subtable_page_row") {
                           $this.viewActionSetRow( item.value)
                           
@@ -1061,10 +1076,10 @@
   viewAceionContent(data){
      var $this = this;
      
      if (data.page_name == $this.$data.param.Sub_Page[0].Name) {
      if (data.page_name == $this.param.Sub_Page[0].Name) {
         $this.detail1ExtData = data.ext_data || {}
      }
      else if (data.page_name == $this.$data.param.Sub_Page[1].Name) {
      else if (data.page_name == $this.param.Sub_Page[1].Name) {
         $this.detail2ExtData = data.ext_data || {}
      } 
      if(JSON.stringify(data.content) =='{}'){
@@ -1160,11 +1175,24 @@
       console.log(item);
   },
   delItem(index){  //删除分拣中样式面板
       this.detail1StyleDefList.splice(index,1);
    //删除码盘中样式面板
     this.Before_Del_Event = this.param.Sub_Page[0].Before_Delete;
     this.After_Del_Event = this.param.Sub_Page[0].After_Delete;
     const style = this.detail1StyleDefList[index];
     //删除码盘中样式面板
     this.detail1StyleDefList.splice(index, 1);
     if (this.Before_Del_Event?.ID)
      //是否有删除前事件
      this.del(style, this.Before_Del_Event);
     else if (this.After_Del_Event?.ID)
      //是否有删除后事件
      this.del(style, this.After_Del_Event);
   },
    delDataObj(style,index){  //删除已分拣数
      // console.log(style);
     var $this = this;
     $this.Before_Del_Event = $this.param.Sub_Page[0].Before_Delete;
     $this.After_Del_Event = $this.param.Sub_Page[0].After_Delete;
     uni.showModal({
        title: '提示',
        content: '确定删除该已分拣数据!',
@@ -1182,9 +1210,16 @@
            $this.$store.dispatch('dataObjDel',dataInfo).then(ret=>{
               // console.log(ret);
               if (ret.err_code == 0) {
                  $this.detail2StyleDefList.splice(index,1);
                  const style = $this.detail2StyleDefList[index];
                  $this.detail2StyleDefList.splice(index, 1);
                  if ($this.Before_Del_Event?.ID)
                  //是否有删除前事件
                  $this.del2(style, $this.Before_Del_Event);
                  else if ($this.After_Del_Event?.ID)
                  //是否有删除后事件
                  $this.del2(style, $this.After_Del_Event);
                  uni.showModal({title:"提示",content:"删除成功!",showCancel:false,confirmText:"取消"});
               }else{
                  uni.showModal({title:"错误5",content:ret.err_msg,showCancel:false,confirmText:"取消"});
               }
@@ -1199,6 +1234,139 @@
     });
      
    },
   async del(style, event) {
  //获取表头属性
       var head_attr = {};
       this.$data.head_styledef.form.items.forEach(item => {
         head_attr[item.fieldId] = item.value;
       });
       // console.log(head_attr);
       //获取正在分拣属性
     var detailAttrList = [];
     var detail_attr={};
     style.form.items.forEach(item => {
      if(item.name == "Layout"){  //判断是否是栅栏格式
        item.setting.colList.forEach(cols => {
         if(cols!=null) detail_attr[cols.fieldId] = cols.value;
        });
      }else
        detail_attr[item.fieldId] = item.value;
     });
    detail_attr['id'] = style.form.objId;
     if($this.param.Sub_Page[0].Select_Button==true){ //判断选择按钮是否为true
      if(style.SelBut_Checked==true)
        detailAttrList.push(detail_attr);
     } else
      detailAttrList.push(detail_attr);
       // console.log(detailAttrList);
      //获取正在分拣里没有显示的字段
     style.form.attrs.forEach(attr => {
      for(var key in detailAttrList){
        if(style.form.objId == detailAttrList[key]['id']){
         var keys = Object.keys(detailAttrList[key]);
         var isflag = true;
         keys.forEach((ele) => {
            if(ele == attr.attr) isflag = false;
         });
         if(isflag) {
            detailAttrList[attr.attr] = attr.value;
         }
        }
      }
     });
      var input_param = Base64.encode(
          JSON.stringify(
            Object.keys(head_attr).map((a) => ({
              attr: a,
              value: head_attr[a] || "",
            }))
          )
      );
       var jsonlist=[];
      detailAttrList.forEach(attr=>{
          jsonlist.push({
            id:attr["id"]|| "",
            attrs: Object.keys(attr).map((a) => ({
              attr: a,
              value: attr[a] || "",
            })).filter((a)=>{return a.attr != "id"})
          });
      });
      // console.log(jsonlist);
      const list = []
      list.push({page_name:$this.param.Sub_Page[0].Name,item_list:jsonlist,ext_data:$this.detail1ExtData})
      $this.runCustomEvent(event,input_param,list,'1');
   },
   async del2(style, event) {
        //获取表头属性
      var head_attr = {};
      this.$data.head_styledef.form.items.forEach(item => {
        head_attr[item.fieldId] = item.value;
      });
      // console.log(head_attr);
      //获取已分拣属性
      var detailAttrList = [];
      var detail_attr={};
      style.form.items.forEach(item => {
      if(item.name == "Layout"){  //判断是否是栅栏格式
         item.setting.colList.forEach(cols => {
         if(cols!=null) detail_attr[cols.fieldId] = cols.value;
        });
      }else
         detail_attr[item.fieldId] = item.value;
      });
      detail_attr['id'] = style.form.objId;
      if($this.param.Sub_Page[1].Select_Button==true){ //判断选择按钮是否为true
         if(style.SelBut_Checked==true)
            detailAttrList.push(detail_attr);
      } else
         detailAttrList.push(detail_attr);
      //获取已分拣里没有显示的字段
      style.form.attrs.forEach(attr => {
         for(var key in detailAttrList){
            if(style.form.objId == detailAttrList[key]['id']){
            var keys = Object.keys(detailAttrList[key]);
            var isflag = true;
            keys.forEach((ele) => {
              if(ele == attr.attr) isflag = false;
            });
            if(isflag) {
              detailAttrList[attr.attr] = attr.value;
            }
           }
         }
      });
      // console.log(detailAttrList);
 //    return;
      var input_param = Base64.encode(
         JSON.stringify(
           Object.keys(head_attr).map((a) => ({
            attr: a,
            value: head_attr[a] || "",
           }))
         )
      );
      var jsonlist=[];
      detailAttrList.forEach(attr=>{
         jsonlist.push({
           id:attr["id"]|| "",
           attrs: Object.keys(attr).map((a) => ({
            attr: a,
            value: attr[a] || "",
           })).filter((a)=>{return a.attr != "id"})
         });
      });
      const list = []
      list.push({page_name:$this.param.Sub_Page[1].Name,item_list:jsonlist,ext_data:$this.detail2ExtData})
      // console.log(jsonlist);
      $this.runCustomEvent(event,input_param,list,'2');
   },
   onPanelClick(value){ //点击面板高亮显示
      // console.log(value);
      this.active_id='';
@@ -1461,8 +1629,7 @@
                           content: '系统检测到有待分拣中的数据,继续操作会清空,是否继续?',
                           success: function (res) {
                              if (res.confirm) {
                                $this.$data.detail1StyleDefList=[];
                                $this.$data.detail2StyleDefList=[];
                                $this.setData({detail1StyleDefList:[],detail2StyleDefList:[]})
                                $this.viewAceionContent(value);
                              } else if (res.cancel) {
                                $this.viewAceionContent(value);
@@ -1473,15 +1640,15 @@
                        $this.viewAceionContent(value);
                     }
                    } else if(item.action_type == "remove_subtable_page_row"){  //清除面板中指定id的数据
                     var value = item.value;
                     if(value.page_name == $this.page.Sub_Page[0].Name){ //判断返回的action的page_name是否是待分拣
                     var value = item.value;
                     if(value.page_name == $this.param.Sub_Page[0].Name){ //判断返回的action的page_name是否是待分拣
                        //清除面板中指定id的数据
                        value.row.forEach(row=>{
                          $this.detail1StyleDefList.forEach((ele,index)=>{
                           if(ele.form.objId == row.id){
                             $this.detail1StyleDefList.splice(index,1);
                           }
                          });
                           $this.$data.detail1StyleDefList.forEach((ele,index)=>{
                              if(ele.form.objId == row.id){
                                $this.$data.detail1StyleDefList.splice(index,1);
                              }
                           });
                        });
                     }
                    }