Преглед на файлове

标签组添加复制功能

zhangxc преди 6 години
родител
ревизия
b995caca1a
променени са 3 файла, в които са добавени 32 реда и са изтрити 10 реда
  1. 12 3
      src/components/icss/LabelGroup.vue
  2. 14 2
      src/components/icss/NoiseTemplate.vue
  3. 6 5
      src/components/icss/PubTagGroup.vue

+ 12 - 3
src/components/icss/LabelGroup.vue

@@ -73,9 +73,12 @@
                     prop="operate"
                     label="操作">
                     <template slot-scope="scope">
-                        <el-button  @click="modifyTagGroup(scope.row)" type="text" size="small">修改</el-button>
+                        <el-button  @click="modifyTagGroup(scope.row, 'modify')" type="text" size="small">修改</el-button>
+                        <span style="margin:0 3px;">|</span>
+                        <el-button @click="modifyTagGroup(scope.row, 'copy')" class="text" type="text" size="small">复制</el-button>
                         <span style="margin:0 3px;">|</span>
                         <el-button @click="showDelDialog(scope.row.id,scope.row.type)" class="delete" type="text" size="small">删除</el-button>
+                        
                     </template>
                 </el-table-column>
             </el-table>
@@ -180,13 +183,19 @@ export default {
         addTagGroup() {
             this.$router.push({path:'LT-YXSJWH-TJBQZ'})
         },
-        modifyTagGroup(row) {
+        modifyTagGroup(row, type) {
             api.detailsTag({id:row.id}).then((res)=>{
                 const {code,data,msg} = res.data;
                 if(code=='0'){
                     const item = Object.assign({},row,data);
                     // console.log('item', item)
-                    this.$router.push({name:'AddLabelGroup',params:{isEdit:true,data:item}});
+                    if(type == 'modify') {
+                        this.$router.push({name:'AddLabelGroup',params:{isEdit:true,data:item}});
+                    } else if( type == 'copy') {
+                        this.$router.push({name:'AddLabelGroup',params:{isCopy:true,data:item}});
+                    } else {
+                        return
+                    }
                 }else{
                     this.$message({
                     message: msg,

+ 14 - 2
src/components/icss/NoiseTemplate.vue

@@ -7,6 +7,7 @@
     ></crumbs>
     <PubTagGroup
       :editData="editData"
+      :isEditOrCopy="isEditOrCopy"
       @changeVal="changeVal"
       @changeSex="changeSex"
       @changeType="changeType"
@@ -128,16 +129,27 @@ export default {
         ]
       },
       sendIds: [[], [], [], [], [], []],           //标签明细右侧操作数据
-      saveDisable: false //保存按钮是否可点击
+      saveDisable: false, //保存按钮是否可点击
+      isEditOrCopy: false //是否为修改或复制
     }
   },
   beforeMount:function(){
-    const {isEdit,data} = this.$route.params;
+    const {isEdit, isCopy, data} = this.$route.params;
     if(isEdit){
       this.txt = '标签组维护-修改标签组';
+      this.isEditOrCopy = true
       this.editData = data;
       this.form.currentOrder = data.textGenerate+''
       // console.log('回读数据', data)
+    } else if(isCopy) {
+      this.txt = '标签组维护-添加标签组';
+      this.isEditOrCopy = true
+      const copyData = JSON.parse(JSON.stringify(data))
+      copyData.id = ""
+      copyData.name=""
+      copyData.tagName=""
+      this.editData = copyData;
+      this.form.currentOrder = data.textGenerate+''
     }
   },
   computed: {

+ 6 - 5
src/components/icss/PubTagGroup.vue

@@ -16,7 +16,7 @@
       >
         <span class="changeTips">改变归属后,标签明细将会恢复到默认状态</span>
         <el-select
-          :disabled="!!editData.id"
+          :disabled="isEditOrCopy"
           v-model="form.region1"
           placeholder="请选择归属"
           @change="(e)=>readyChangeSelect(e,1)"
@@ -35,7 +35,7 @@
       >
         <span class="changeTips">改变类型后,标签明细将会恢复到默认状态</span>
         <el-select
-          :disabled="!!editData.id || !form.region1"
+          :disabled="isEditOrCopy || !form.region1"
           v-model="form.region2"
           placeholder="请选择填写单类型"
           @change="(e)=>readyChangeSelect(e,2)"
@@ -147,7 +147,7 @@
         <span class="changeTips">改变性别后,标签明细将会恢复到默认状态</span>
         <el-select
           v-model="form.region7"
-          :disabled="!!editData.id || !form.region1 || form.region2 == 11 || form.region1 == 6||form.region1 == 7||form.region1 == 8||form.region1 == 9||form.region1 == 10"
+          :disabled="isEditOrCopy || !form.region1 || form.region2 == 11 || form.region1 == 6||form.region1 == 7||form.region1 == 8||form.region1 == 9||form.region1 == 10"
           @change="(e)=>readyChangeSelect(e,3)"
         >
           <el-option
@@ -287,7 +287,7 @@ import utils from '@api/utils.js';
 
 
 export default {
-  props: ['editData'],
+  props: ['editData','isEditOrCopy'],
   data() {
     var validatePass1 = (rule, value, callback) => {
       this.validateSystomName(value, callback, 1)
@@ -398,7 +398,8 @@ export default {
   },
   mounted() {
     const editData = this.$props.editData;
-    if (editData.id) {
+    const isEditOrCopy = this.$props.isEditOrCopy;
+    if (isEditOrCopy) {
       const trans = utils.transformKeys(editData, 2); //(2是标签组类型)
       // console.log('editData1', editData)
       this.form = Object.assign({}, this.form, trans);