@dongkboy %!s(int64=3) %!d(string=hai) anos
pai
achega
a94ba5a878
Modificáronse 1 ficheiros con 232 adicións e 22 borrados
  1. 232 22
      src/views/Letter/Letter.vue

+ 232 - 22
src/views/Letter/Letter.vue

@@ -498,6 +498,104 @@
         </div>
       </el-form>
     </div>
+    <div class="Enclosure flex f-c back">
+      <div class="home flex j-s a-c">
+        <div class="flex j-s a-c color" id="insurance">
+          <img src="../../../src/icon/salesman.png" alt class="icon-img" />
+          <span style="margin-left:10px;">车船税</span>
+        </div>
+      </div>
+      <el-form class="demo-ruleForm" :model="vehicleAndVesselTaxForm" ref="vehicleAndVesselTaxForm" :rules="rules"
+        label-width="160px" size="small" style="margin-top:30px;">
+        <el-row style="flex-wrap: wrap; display: flex;">
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="纳税类型:" prop="taxRelifFlag">
+              <el-select @change="taxRelifFlagChange" v-model="vehicleAndVesselTaxForm.taxRelifFlag" placeholder="纳税类型">
+                <el-option v-for="(item, index) in taxRelifFlagoptions" :key="index" :label="item.dictTag"
+                  :value="item.dictValue"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="纳税人识别号:" prop="identifyNumber">
+              <el-input v-model="vehicleAndVesselTaxForm.identifyNumber" placeholder="请输入纳税人识别号" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="纳税人名称:" prop="taxpayerName">
+              <el-input v-model="vehicleAndVesselTaxForm.taxpayerName" placeholder="请输入纳税人名称" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 1" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="证件类型:" prop="taxpayerIdentifier">
+              <el-select v-model="vehicleAndVesselTaxForm.taxpayerIdentifier" placeholder="证件类型" clearable>
+                <el-option v-for="(item, index) in taxpayerIdentifieroptions" :key="index" :label="item.dictTag"
+                  :value="item.dictValue"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 2 || vehicleAndVesselTaxForm.taxRelifFlag == 3" :xs="xscell"
+            :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="减免税凭证号:" prop="extendChar2">
+              <el-input v-model="vehicleAndVesselTaxForm.extendChar2" placeholder="请输入减免税凭证号" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 4" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="完税凭证号:" prop="paidFreeCertificate">
+              <el-input v-model="vehicleAndVesselTaxForm.paidFreeCertificate" placeholder="请输入完税凭证号"
+                type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 2 || vehicleAndVesselTaxForm.taxRelifFlag == 3" :xs="xscell"
+            :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="减免税原因:" prop="relifReason">
+              <el-select v-model="vehicleAndVesselTaxForm.relifReason" placeholder="减免税原因" clearable>
+                <el-option v-for="(item, index) in relifReasonoptions" :key="index" :label="item.dictTag"
+                  :value="item.dictValue"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag != 1" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="税务机关代码:" prop="taxComCode">
+              <el-input v-model="vehicleAndVesselTaxForm.taxComCode" placeholder="请输入税务机关代码" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag != 1" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="税务机关名称:" prop="taxComName">
+              <el-input v-model="vehicleAndVesselTaxForm.taxComName" placeholder="请输入税务机关名称" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 4" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="完税凭证填发日期:" prop="taxDocumentDate">
+              <el-date-picker v-dateFormat v-model="vehicleAndVesselTaxForm.taxDocumentDate" value-format="yyyy-MM-dd"
+                type="date" placeholder="完税凭证填发日期" placement="bottom-start"></el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 4" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="完税凭证地区:" prop="taxPaidAreaCode">
+              <el-select v-model="vehicleAndVesselTaxForm.taxPaidAreaCode" placeholder="完税凭证地区" clearable>
+                <el-option v-for="(item, index) in provinceSelect" :key="index" :label="item.name"
+                  :value="item.code"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col v-show="vehicleAndVesselTaxForm.taxRelifFlag == 3" :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell"
+            :xl="xlcell">
+            <el-form-item label="减税比例:" prop="taxRelief">
+              <el-input v-model="vehicleAndVesselTaxForm.taxRelief" placeholder="请输入0~1的数值" type="text"></el-input>
+            </el-form-item>
+          </el-col>
+        </el-row>
+      </el-form>
+    </div>
     <div class="Enclosure flex f-c back">
       <div class="home flex j-s a-c back">
         <div class="flex j-s a-c color" id="more">
@@ -1640,6 +1738,7 @@ import QRCode from "qrcodejs2";
 import Cookies from "js-cookie";
 import CommonUtil from "@/utils/comutil.js";
 import { getAgeByIdCard, searchkey, addressCode } from "@/utils/validate.js";
+import citydata from "@/assets/js/citydata.js";
 import { regionData, codeToText } from "element-china-area-data";
 export default {
   inject: ["reload"],
@@ -1886,10 +1985,58 @@ export default {
         city: "",//市
         county: "",//县
       },
+      //车船税form
+      vehicleAndVesselTaxForm: {
+        taxRelifFlag: "1",//类型
+        identifyNumber: "",//纳税人识别号
+        taxpayerIdentifier: "01",//纳税人证件类型
+        taxpayerName: "",//纳税人名称
+        extendChar2: "",//减免税凭证号
+        paidFreeCertificate: "",//完税凭证号
+        relifReason: "",//减免税原因
+        taxComCode: "",//税务机关代码
+        taxComName: "",///税务机关名称
+        taxDocumentDate: "",//完税日期
+        taxPaidAreaCode: "",//完税凭证地区代码
+        taxRelief: "",//减税比例
+      },
       //使用性质列表
       carnatureList: [{ label: "家庭自用", id: "8A" }],
       //能源种类列表
       rules: {
+        extendChar2: [
+          { required: true, message: "请输入减免税凭证号", trigger: "blur" }
+        ],
+        paidFreeCertificate: [
+          { required: true, message: "请输入完税凭证号", trigger: "blur" }
+        ],
+        relifReason: [
+          { required: true, message: "请输入减免税原因", trigger: "blur" }
+        ],
+        taxComCode: [
+          { required: true, message: "请输入税务机关代码", trigger: "blur" }
+        ],
+        taxComName: [
+          { required: true, message: "请输入税务机关名称", trigger: "blur" }
+        ],
+        taxDocumentDate: [
+          { required: true, message: "请输入完税日期", trigger: "blur" }
+        ],
+        taxPaidAreaCode: [
+          { required: true, message: "请选择完税地区", trigger: "blur" }
+        ],
+        taxRelief: [
+          { required: true, message: "请输入减税比例", trigger: "blur" }
+        ],
+        taxpayerName: [
+          { required: true, message: "请输入纳税人名称", trigger: "blur" }
+        ],
+        taxpayerIdentifier: [
+          { required: true, message: "请选择证件类型", trigger: "blur" }
+        ],
+        taxRelifFlag: [
+          { required: true, message: "请选择纳税类型", trigger: "blur" }
+        ],
         energyType: [
           { required: true, message: "请选择能源种类", trigger: "blur" }
         ],
@@ -2698,6 +2845,11 @@ export default {
       vehicleTypeoptions: [],//车辆种类
       trafficManagementVehicleTypeoptions: [],//车辆类型
       energyTypeoptions: [],//能源种类
+      taxRelifFlagoptions: [],//车船税类型
+      taxpayerIdentifieroptions: [],//纳税人证件类型
+      relifReasonoptions: [],//减免税原因代码
+      relifReasonoptions: [],//减免税原因代码
+      provinceSelect: [],
     };
   },
   watch: {
@@ -2734,13 +2886,32 @@ export default {
       },
       deep: true
     },
-
+    "policyHolderInfo.identifyNumber": {
+      handler(val) {
+        if (val) {
+          this.vehicleAndVesselTaxForm.identifyNumber = val;
+        }
+      },
+      deep: true
+    },
+    "policyHolderInfo.name": {
+      handler(val) {
+        if (val) {
+          this.vehicleAndVesselTaxForm.taxpayerName = val;
+        }
+      },
+      deep: true
+    },
   },
   components: {
     "el-image-viewer": () =>
       import("element-ui/packages/image/src/image-viewer")
   },
   created() {
+
+    this.getDicType("taxRelifFlag");//车船税类型
+    this.getDicType("taxpayerIdentifier");//纳税人证件类型
+    this.getDicType("relifReason");//减免税原因代码
     this.getDicType("vehicleType");//车辆种类
     this.getDicType("trafficManagementVehicleType");//车辆类型
     this.getDicType("energyType");//能源种类
@@ -2763,9 +2934,10 @@ export default {
             this.deptName = res.data.name;
           });
         }
-
       });
     }
+
+
     //--订单编辑回显--
     this.paramsEdit = this.$route.query.data; //接收参数
     if (this.paramsEdit) {
@@ -2875,6 +3047,18 @@ export default {
     },
   },
   methods: {
+    //纳税类型事件
+    taxRelifFlagChange(val){
+      if (val == 4) {
+      citydata.rawCitiesData.map(val => {
+        this.provinceSelect.push({
+          name: val.name,
+          code: val.code
+        })
+        return val;
+      })
+    }
+    },
     //身份证前六位识别地区
     getAreaByCode(code) {
       let list = regionData;
@@ -3106,7 +3290,7 @@ export default {
       this.totalCompanyList[index].agreementId = "";
       this.totalCompanyList[index].checked = e;
       this.totalCompanyList[index].agreementId = this.totalCompanyList[index].agreement[0].id;
-      if (this.carInfo.licenseNo.slice(0, 2) != '晋A' && ins=='中煤财险') {
+      if (this.carInfo.licenseNo.slice(0, 2) != '晋A' && ins == '中煤财险') {
         this.totalCompanyList[0].agreementId = this.totalCompanyList[0].agreement[1].id;
       }
       switch (ins) {
@@ -3476,6 +3660,7 @@ export default {
         policyHolderInfo: this.policyHolderInfo,
         kindList: this.kindList,
         riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
       };
       this.$api.letter.generateOrder(param).then(res => {
         if (res.code == "200") {
@@ -3518,7 +3703,9 @@ export default {
               ownerInfo: this.ownerInfo,
               policyHolderInfo: this.policyHolderInfo,
               kindList: this.kindList,
-              riskList: this.riskList
+              riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
             };
             return this.$api.letter.generateOrder(param).then(res => {
               this.yongan(num, id);
@@ -3536,7 +3723,9 @@ export default {
               ownerInfo: this.ownerInfo,
               policyHolderInfo: this.policyHolderInfo,
               kindList: this.kindList,
-              riskList: this.riskList
+              riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
             };
             return this.$api.letter.generateOrder(param).then(res => {
               this.yongan(num, id);
@@ -3557,7 +3746,9 @@ export default {
               ownerInfo: this.ownerInfo,
               policyHolderInfo: this.policyHolderInfo,
               kindList: this.kindList,
-              riskList: this.riskList
+              riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
             };
             return this.$api.letter.generateOrder(param).then(res => {
               this.yongan(num, id);
@@ -3625,7 +3816,9 @@ export default {
             ownerInfo: this.ownerInfo,
             policyHolderInfo: this.policyHolderInfo,
             kindList: this.kindList,
-            riskList: this.riskList
+            riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
           };
           return this.$api.letter.generateOrder(param).then(res => {
             this.zhongmei(num, id);
@@ -3686,7 +3879,9 @@ export default {
             ownerInfo: this.ownerInfo,
             policyHolderInfo: this.policyHolderInfo,
             kindList: this.kindList,
-            riskList: this.riskList
+            riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
           };
           return this.$api.letter.generateOrder(param).then(res => {
             this.zijin(num, id);
@@ -3754,7 +3949,9 @@ export default {
             ownerInfo: this.ownerInfo,
             policyHolderInfo: this.policyHolderInfo,
             kindList: this.kindList,
-            riskList: this.riskList
+            riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
           };
           return this.$api.letter.generateOrder(param).then(res => {
             this.yongcheng(num, id);
@@ -3851,7 +4048,9 @@ export default {
             ownerInfo: this.ownerInfo,
             policyHolderInfo: this.policyHolderInfo,
             kindList: this.kindList,
-            riskList: this.riskList
+            riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
           };
           return this.$api.letter.generateOrder(param).then(res => {
             this.guoRen(num, id);
@@ -3916,7 +4115,9 @@ export default {
                 ownerInfo: this.ownerInfo,
                 policyHolderInfo: this.policyHolderInfo,
                 kindList: this.kindList,
-                riskList: this.riskList
+                riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
               };
               return this.$api.letter.generateOrder(param).then(res => {
                 this.quoteInsurance(num, id, namesimple, apiType);
@@ -3944,7 +4145,9 @@ export default {
                 ownerInfo: this.ownerInfo,
                 policyHolderInfo: this.policyHolderInfo,
                 kindList: this.kindList,
-                riskList: this.riskList
+                riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
               };
               return this.$api.letter.generateOrder(param).then(res => {
                 this.quoteInsurance(num, id, namesimple, apiType);
@@ -3982,7 +4185,9 @@ export default {
                 ownerInfo: this.ownerInfo,
                 policyHolderInfo: this.policyHolderInfo,
                 kindList: this.kindList,
-                riskList: this.riskList
+                riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
               };
               return this.$api.letter.generateOrder(param).then(res => {
                 this.quoteInsurance(num, id, namesimple, apiType);
@@ -4010,7 +4215,9 @@ export default {
                 ownerInfo: this.ownerInfo,
                 policyHolderInfo: this.policyHolderInfo,
                 kindList: this.kindList,
-                riskList: this.riskList
+                riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
               };
               return this.$api.letter.generateOrder(param).then(res => {
                 this.quoteInsurance(num, id, namesimple, apiType);
@@ -4048,7 +4255,9 @@ export default {
                 ownerInfo: this.ownerInfo,
                 policyHolderInfo: this.policyHolderInfo,
                 kindList: this.kindList,
-                riskList: this.riskList
+                riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
               };
               return this.$api.letter.generateOrder(param).then(res => {
                 this.quoteInsurance(num, id, namesimple, apiType);
@@ -4075,7 +4284,9 @@ export default {
                 ownerInfo: this.ownerInfo,
                 policyHolderInfo: this.policyHolderInfo,
                 kindList: this.kindList,
-                riskList: this.riskList
+                riskList: this.riskList,
+        vehicleAndVesselTax:this.vehicleAndVesselTaxForm
+
               };
               return this.$api.letter.generateOrder(param).then(res => {
                 this.quoteInsurance(num, id, namesimple, apiType);
@@ -5226,9 +5437,9 @@ export default {
             data.kindinfo.map((ele, index) => {
               switch (ele.kindCode) {
                 case "A":
-                  if(ele.amount==1){
-                    ele.amount="投保"
-                  }else{
+                  if (ele.amount == 1) {
+                    ele.amount = "投保"
+                  } else {
                     ele.amount = ele.amount
                   }
                   break;
@@ -5432,7 +5643,6 @@ export default {
   word-break: break-all;
   width: 600px;
 }
-
 </style>
 <style lang="scss" scoped>
 /deep/.accident-style .el-table {
@@ -5441,6 +5651,7 @@ export default {
     overflow-y: auto;
   }
 }
+
 .styleB .el-upload--picture-card {
   // display: none;
   opacity: 0;
@@ -6232,5 +6443,4 @@ export default {
     padding: 0;
   }
 
-}
-</style>
+}</style>