Explorar o código

运费模板调整

DELL %!s(int64=3) %!d(string=hai) anos
pai
achega
ff606f4b9f
Modificáronse 1 ficheiros con 60 adicións e 38 borrados
  1. 60 38
      src/views/setting/template/create.vue

+ 60 - 38
src/views/setting/template/create.vue

@@ -15,12 +15,12 @@
           <el-form ref="addItemTwo" :model="{shippingTemplateRuleList}" label-width="120px">
             <table style="width: 75%"  bordercolor="#ccc" border="1" cellpadding="0" cellspacing="0"  class="spec-table">
               <tr>
-                <th>付费区域</th>
-                <th>首件(个)</th>
-                <th>运费(元)</th>
-                <th>续件(个)</th>
-                <th>续费(元)</th>
-                <th>操作</th>
+                <th width="30%">付费区域</th>
+                <th width="15%">首件(个)</th>
+                <th width="15%">运费(元)</th>
+                <th width="15%">续件(个)</th>
+                <th width="15%">续费(元)</th>
+                <th width="10%">操作</th>
               </tr>
               <tr v-if="shippingTemplateRuleList == ''">
                 <td colspan="6">
@@ -29,8 +29,8 @@
               </tr>
               <tr v-for="(item,index) in shippingTemplateRuleList" :key="index" style="">
                 <td>
-                  <el-form-item :prop="`shippingTemplateRuleList.${index}.shippingTemplateRuleAreaList`" :rules="[{ required: true, message: '地区不能为空', trigger:['blur','change'] },{ type: 'array', message: '请选择地区' }]" style="width: 100%">
-                    <el-cascader @visible-change="listPidDisabled($event,index)" ref="cascaderAdd" :options="listPidProvince" clearable :props="props" v-model="item.shippingTemplateRuleAreaList" style="" ></el-cascader>
+                  <el-form-item :prop="`shippingTemplateRuleList.${index}.shippingTemplateRuleAreaList`" :rules="[{ required: true, message: '地区不能为空', trigger:['blur','change'] },{ type: 'array', message: '请选择地区' }]" style="width: 100%" label-width="0">
+                    <el-cascader @visible-change="listPidDisabled($event,index)" ref="cascaderAdd" :options="listPidProvince" clearable :props="props" v-model="item.shippingTemplateRuleAreaList" style="width: 100%;" ></el-cascader>
                   </el-form-item>
                 </td>
                 <td>
@@ -72,9 +72,9 @@
           <el-form ref="addItemThree" :model="{shippingTemplateRuleList2}" label-width="120px">
             <table style="width: 75%"  bordercolor="#ccc" border="1" cellpadding="0" cellspacing="0"  class="spec-table">
               <tr>
-                <th>不发货区域</th>
+                <th width="30%">不发货区域</th>
                 <th>原因</th>
-                <th>操作</th>
+                <th width="10%">操作</th>
               </tr>
               <tr v-if="shippingTemplateRuleList2 == ''">
                 <td colspan="3">
@@ -83,12 +83,12 @@
               </tr>
               <tr v-for="(item,index) in shippingTemplateRuleList2" :key="index">
                 <td>
-                  <el-form-item :prop="`shippingTemplateRuleList2.${index}.shippingTemplateRuleAreaList`" :rules="[{ required: true, message: '地区不能为空', trigger:['blur','change'] },{ type: 'array', message: '请选择地区' }]">
-                    <el-cascader @visible-change="listPidDisabled($event,shippingTemplateRuleList.length + index)" :options="listPidProvince" clearable :props="props" v-model="item.shippingTemplateRuleAreaList"></el-cascader>
+                  <el-form-item :prop="`shippingTemplateRuleList2.${index}.shippingTemplateRuleAreaList`" :rules="[{ required: true, message: '地区不能为空', trigger:['blur','change'] },{ type: 'array', message: '请选择地区' }]" label-width="0">
+                    <el-cascader @visible-change="listPidDisabled($event,shippingTemplateRuleList.length + index)" :options="listPidProvince" clearable :props="props" v-model="item.shippingTemplateRuleAreaList" style="width: 100%;"></el-cascader>
                   </el-form-item>
                 </td>
                 <td>
-                  <el-form-item :prop="`shippingTemplateRuleList2.${index}.remark`" :rules="{ required: true, message: '原因不能为空', trigger: 'blur' }">
+                  <el-form-item :prop="`shippingTemplateRuleList2.${index}.remark`" :rules="{ required: true, message: '原因不能为空', trigger: 'blur' }" label-width="0">
                     <el-input v-model="item.remark" placeholder="请输入内容"></el-input>
                   </el-form-item>
                 </td>
@@ -312,8 +312,17 @@ export default {
           return;
         }
       });
+      if (this.addData.title == ""){
+        this.$message({
+          showClose: true,
+          message: '模板名称不能为空',
+          type: 'warning'
+        });
+        return;
+      }
 
       let arr = []
+      //判断付费区域
       if (this.shippingTemplateRuleList){
         for (let i = 0; i < this.shippingTemplateRuleList.length; i++) {
           let item = this.shippingTemplateRuleList[i]
@@ -351,11 +360,10 @@ export default {
             ressage.push(res)
           })
           item.shippingTemplateRuleAreaList = ressage
-          item.createPrice = accMul(item.createPrice,100)
-          item.defaultPrice = accMul(item.defaultPrice,100)
           arr.push(item)
         })
       }
+      //判断不发货区域
       if(this.shippingTemplateRuleList2){
         for (let i = 0; i < this.shippingTemplateRuleList2.length; i++) {
           let item = this.shippingTemplateRuleList2[i]
@@ -396,9 +404,25 @@ export default {
             arr.push(item)
         })
       }
-      this.addData.shippingTemplateRuleList = arr
-      this.submitForm()
+      if(arr == ""){
+        this.$message({
+          showClose: true,
+          message: '请至少添加一个区域',
+          type: 'warning'
+        });
+        return;
+      }else {
+        for (let i = 0; i < arr.length; i++) {
+          if(arr[i].type == 1){
+            arr[i].createPrice = accMul(arr[i].createPrice,100)
+            arr[i].defaultPrice = accMul(arr[i].defaultPrice,100)
+          }
+        }
+        this.addData.shippingTemplateRuleList = arr
+        this.submitForm()
+      }
     },
+
     submitForm(){
       if (this.id){
         setTemplateDetail(this.addData).then(res=>{
@@ -426,7 +450,6 @@ export default {
       }
     },
 
-
     delRow(row){
       for (let i = 0; i < this.shippingTemplateRuleList.length; i++) {
         if(this.shippingTemplateRuleList[i] == row){
@@ -448,29 +471,28 @@ export default {
 <style lang="scss" scoped>
 .spec-table {
   border-collapse: collapse;
-  width: 100%;
+  //width: 100%;
   line-height: 32px;
+  border-color: #DCDFE6;
   color: #606266;
   font-size: 14px;
-th {
-  background-color: #ECECEC;
-}
-td {
-  text-align: center;
-}
-.pd {
-  padding: 15px;
-}
-.required {
-  position: relative;
-span {
-  position: relative;
-  top: -6px;
-  left: 2px;
-  font-size: 10px;
-  color: red;
-}
-}
+  th {
+    background-color: #ECECEC;
+  }
+  td {
+    text-align: center;
+    padding: 15px;
+  }
+  .required {
+    position: relative;
+    span {
+      position: relative;
+      top: -6px;
+      left: 2px;
+      font-size: 10px;
+      color: red;
+    }
+  }
 
 }
 </style>