Ver código fonte

Merge branch 'master' of http://www.baoxianzhanggui.com:8090/sxzgd/vue-insagent-pc

lihongxiao 3 anos atrás
pai
commit
6d239e2206
3 arquivos alterados com 148 adições e 62 exclusões
  1. 10 3
      src/http/moudules/letter.js
  2. 105 57
      src/views/Letter/Letter.vue
  3. 33 2
      src/views/Letter/Orderlist.vue

+ 10 - 3
src/http/moudules/letter.js

@@ -441,7 +441,7 @@ export const getOrderDetail = (data) => {
       data
   })
 }
-//紫金状态查询
+//紫金电子保单
 export const zijingetPolicyPrint = (data) => {
   return axios({
       url: "/order/zijin/getPolicyPrint",
@@ -449,7 +449,7 @@ export const zijingetPolicyPrint = (data) => {
       data
   })
 }
-//紫金状态查询
+//紫金特约查询
 export const zijinqueryClauseData = (data) => {
   return axios({
       url: "/order/zijin/queryClauseData",
@@ -457,7 +457,14 @@ export const zijinqueryClauseData = (data) => {
       data
   })
 }
-
+//紫金撤单
+export const zijincancelorder = (data) => {
+  return axios({
+      url: "/order/zijin/cancel",
+      method: "post",
+      data
+  })
+}
 /***
     爬虫统一调用模块
  *

+ 105 - 57
src/views/Letter/Letter.vue

@@ -164,6 +164,14 @@
               </el-select>
             </el-form-item>
           </el-col>
+          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
+            <el-form-item label="车辆类型:" prop="cartype">
+              <el-select v-model="carInfo.cartype" placeholder="请选择车辆种类" filterable clearable  >
+                <el-option :label="item.dictValue+item.dictTag" :value="item.dictValue" v-for="(item, index) in vehiclesoptions"
+                  :key="index"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
           <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
             <el-form-item label="能源种类:" prop="energyType">
               <el-select v-model="carInfo.energyType" placeholder="请选择能源种类">
@@ -226,7 +234,7 @@
           </el-col>
           <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
             <el-form-item label="年龄:" prop="age">
-              <el-input v-model="ownerInfo.age" placeholder="请输入年龄" type="text" disabled ></el-input>
+              <el-input v-model="ownerInfo.age" placeholder="请输入年龄" type="text" disabled></el-input>
             </el-form-item>
           </el-col>
           <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
@@ -443,51 +451,45 @@
           <span style="margin-left:10px;">投保信息</span>
         </div>
       </div>
-      <el-form class="back demo-ruleForm" :model="Carinsurance" label-width="150px" size="small" style="padding:20px;">
-        <el-row>
-          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell" style="margin-right:50px">
-            <div class="flex j-c a-start">
-              <el-checkbox class="checkbox" v-model="jqchecked" @change="jqcheckedChange"></el-checkbox>
-              <div class="flex f-c a-c">
-                <el-form-item label="交强险起保日期:" prop="identifyNumber">
-                  <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="jqstartDate" @change="jqChange"
-                    type="datetime" placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
-                </el-form-item>
-                <el-form-item label="交强险终保日期:" prop="identifyNumber">
-                  <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="jqendDate" type="datetime"
-                    placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
-                </el-form-item>
-              </div>
-
-            </div>
-          </el-col>
-          <el-col :xs="2" :sm="2" :md="2" :lg="2" :xl="2">
-            <div class="flex f-c">
-              <span style="font-size:12px;">同步</span>
-              <svg data-v-7ff62e07 t="1595555843123" viewBox="0 0 1505 1024" version="1.1"
-                xmlns="http://www.w3.org/2000/svg" p-id="7086" width="100" height="100" class="icon">
-                <path data-v-7ff62e07
-                  d="M227.83021864 224.558766h537.088236l0.906223-176.562471c0.151037-42.743524 51.956792-64.039767 82.16423-33.83233L1311.06892164 478.30124c18.879648 18.879648 18.728611 49.38916-0.151037 68.268808L843.30675464 1009.952137c-30.509512 30.207437-82.315267 8.458082-82.013192-34.436479l0.755186-170.974095H227.83021864c-26.28047 0-47.425677-21.296243-47.425676-47.425676V271.984443C180.25350564 245.703972 201.54974864 224.558766 227.83021864 224.558766z"
-                  p-id="7087" fill="#f05f08" @click="synchronization" />
-              </svg>
+      <el-form class="back demo-ruleForm" :inline="true" :model="Carinsurance" label-width="150px" size="small"
+        style="padding:20px;">
+        <div class="flex j-start a-c">
+          <div class="flex j-c a-start">
+            <el-checkbox class="checkbox" v-model="jqchecked" @change="jqcheckedChange"></el-checkbox>
+            <div class="flex f-c a-c">
+              <el-form-item label="交强险起保日期:" prop="identifyNumber">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="jqstartDate" @change="jqChange"
+                  type="datetime" placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
+              <el-form-item label="交强险终保日期:" prop="identifyNumber">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="jqendDate" type="datetime"
+                  placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
             </div>
-          </el-col>
-          <el-col :xs="xscell" :sm="smcell" :md="mdcell" :lg="lgcell" :xl="xlcell">
-            <div class="flex j-c a-start">
-              <el-checkbox class="checkbox" v-model="sychecked" @change="sycheckedChange"></el-checkbox>
-              <div class="flex f-c a-c">
-                <el-form-item label="商业险起保日期:" prop="name">
-                  <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="systartDate" @change="syChange"
-                    type="datetime" placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
-                </el-form-item>
-                <el-form-item label="商业险终保日期:" prop="name">
-                  <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="syendDate" type="datetime"
-                    placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
-                </el-form-item>
-              </div>
+          </div>
+          <div class="flex f-c a-c" style="margin: 0 20px;">
+            <span style="font-size:12px;">同步</span>
+            <svg data-v-7ff62e07 t="1595555843123" viewBox="0 0 1505 1024" version="1.1"
+              xmlns="http://www.w3.org/2000/svg" p-id="7086" width="100" height="100" class="icon">
+              <path data-v-7ff62e07
+                d="M227.83021864 224.558766h537.088236l0.906223-176.562471c0.151037-42.743524 51.956792-64.039767 82.16423-33.83233L1311.06892164 478.30124c18.879648 18.879648 18.728611 49.38916-0.151037 68.268808L843.30675464 1009.952137c-30.509512 30.207437-82.315267 8.458082-82.013192-34.436479l0.755186-170.974095H227.83021864c-26.28047 0-47.425677-21.296243-47.425676-47.425676V271.984443C180.25350564 245.703972 201.54974864 224.558766 227.83021864 224.558766z"
+                p-id="7087" fill="#f05f08" @click="synchronization" />
+            </svg>
+          </div>
+          <div class="flex j-c a-start">
+            <el-checkbox class="checkbox" v-model="sychecked" @change="sycheckedChange"></el-checkbox>
+            <div class="flex f-c a-c">
+              <el-form-item label="商业险起保日期:" prop="name">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="systartDate" @change="syChange"
+                  type="datetime" placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
+              <el-form-item label="商业险终保日期:" prop="name">
+                <el-date-picker v-dateFormat value-format="yyyy-MM-dd HH:mm:ss" v-model="syendDate" type="datetime"
+                  placeholder="选择日期时间" placement="bottom-start"></el-date-picker>
+              </el-form-item>
             </div>
-          </el-col>
-        </el-row>
+          </div>
+        </div>
       </el-form>
     </div>
     <div class="Enclosure flex f-c back">
@@ -619,6 +621,16 @@
                 </el-tooltip>
               </div>
             </div>
+            <div class="offer-time  " v-show="reslistitem.quoteCode == '200'">
+              <template v-if="reslistitem.namesimple == '永诚财险'">
+                <span v-show="reslistitem.result.startDateJq">交强险:<span>{{ reslistitem.result.startDateJq }} -
+                    {{ reslistitem.result.endDateJq }}</span></span>
+                <span v-show="reslistitem.result.startDateSy">商业险: <span>{{ reslistitem.result.startDateSy }} -
+                    {{ reslistitem.result.endDateSy }}</span></span>
+                <span>光博分:{{ reslistitem.result.ilogPreUdwMess ? reslistitem.result.ilogPreUdwMess : '无' }}</span>
+              </template>
+
+            </div>
             <div v-if="reslistitem.checked" class="dis a-c Driving-risk" style="margin-top:10px;">
               <h4>报价协议选择:</h4>
               <el-select size="small" v-model="reslistitem.agreementId" placeholder="请选择协议" style="width: 200px;"
@@ -630,11 +642,6 @@
                   </div>
                 </div>
               </el-select>
-              <span v-show="reslistitem.quoteCode == '200' && reslistitem.namesimple == '永诚财险'"
-                style="font-weight:bold;margin-left: 50px">
-                <b style="color:#ee7000">!</b>
-                光博分:{{ reslistitem.result.ilogPreUdwMess ? reslistitem.result.ilogPreUdwMess : '无' }}
-              </span>
             </div>
             <template v-if="reslistitem.namesimple == '紫金财险' && reslistitem.checked && reslistitem.agreementId">
               <div class="flex f-c Driving-risk accident-style">
@@ -1709,7 +1716,7 @@ export default {
         loanStatus: 0, //贷款标志
         firstBeneMan: "", //第一受益人
         noLicenseFlag: false, //是否新车
-        cartype: "A0", //客车A0 货车H0
+        cartype: "", //客车A0 货车H0
         carnature: "8A", //使用性质 家庭自用8A  非营业企业8B   非营业党政机关,事业团体8C  非营业货车8D
         property: "1" //所属性质 1个人 2企业 3个人
       },
@@ -1728,11 +1735,15 @@ export default {
         name: "",
         identifyType: "",
         identifyNumber: "",
+        age: "",//年龄
         addr: "",
         email: "",
         mobile: "",
         identifyValidDate: "", //有效期起期
-        identifyValidEndDate: "" //有效期止期
+        identifyValidEndDate: "", //有效期止期
+        province: "",//省
+        city: "",//市
+        county: "",//县
       },
       riskList: [], //险种大类信息
       kindList: [], //商业险险别
@@ -1807,6 +1818,9 @@ export default {
         }
       ],
       rules: {
+        cartype:[
+        {  required: true, message: "请选择车辆类型", trigger: "blur"  }
+        ],
         brandName: [
           { required: true, message: "请填写品牌型号", trigger: "blur" }
         ],
@@ -2599,6 +2613,7 @@ export default {
       deptName: "",
       isBottom: true,
       logoImg: "",//报价单保险公司logo图
+      vehiclesoptions:[],
     };
   },
   watch: {
@@ -2642,6 +2657,7 @@ export default {
       import("element-ui/packages/image/src/image-viewer")
   },
   created() {
+    this.getDicType("vehicles");//协议类型
     this.$api.letter.queryCompany().then(res => {
       this.continuousCompanyList = res.data;
     });
@@ -2685,7 +2701,9 @@ export default {
       _this.insuredPersonInfo = insureinfo;
       _this.quoteno = quoteno;
       _this.orderno = orderno;
-
+      _this.ownerInfo.age=getAgeByIdCard(_this.ownerInfo.identifyNumber)
+      _this.policyHolderInfo.age=getAgeByIdCard(_this.policyHolderInfo.identifyNumber)
+      _this.insuredPersonInfo.age=getAgeByIdCard(_this.insuredPersonInfo.identifyNumber)
       if (_this.paramsEdit.carinfo.transferFlag) {
         this.transferDateShow = true;
       }
@@ -2743,9 +2761,19 @@ export default {
     },
   },
   methods: {
-    identifyblur(info){
-      this[info].age=getAgeByIdCard(this[info].identifyNumber)
+    //--数据字典 begin --
+    getDicType(type) {
+      this.$api.insCompany.dicType(type).then(res => {
+        if (res.code == 200) {
+          this[type + 'options'] = res.data.ddList;
+        }
+      })
     },
+    //身份证失去焦点
+    identifyblur(info) {
+      this[info].age = getAgeByIdCard(this[info].identifyNumber)
+    },
+    //省市区
     areahandleChange(event, info) {
       if (event[0] != null && event[1] != null && event[2] != null) {
         this[info].province = codeToText[event[0]]
@@ -3880,7 +3908,7 @@ export default {
             }
             break;
           case '众安财险':
-          if (!!res.data) {
+            if (!!res.data) {
               this.totalCompanyList[num].quoteCode = 200;
               this.totalCompanyList[num].result = res.data;
               this.QuotationHistory();
@@ -3901,7 +3929,7 @@ export default {
       this.quoteInsurance(num, id, namesimple, this.totalCompanyList[num].apiType);
     },
     //众安
-    zhongan(num, id,namesimple) {
+    zhongan(num, id, namesimple) {
       this.quoteInsurance(num, id, namesimple, this.totalCompanyList[num].apiType);
     },
     //人寿
@@ -4810,9 +4838,15 @@ export default {
         var customerInfo = res.data.customerInfo;
         if (customerInfo) {
           this.ownerInfoform.name = customerInfo.name;
-          this.ownerInfoform.identifyType = customerInfo.identifyType;
+          if (customerInfo.identifyType == '01') {
+            this.ownerInfoform.identifyType = '身份证';
+          } else {
+            this.ownerInfoform.identifyType = "未知";
+          }
+
           this.ownerInfoform.identifyNumber = customerInfo.identifyNumber;
           this.ownerInfoform.addr = customerInfo.addr;
+          this.ownerInfoform.age = getAgeByIdCard(customerInfo.identifyNumber)
           this.ownerInfoform.identifyValidDate =
             customerInfo.identifyValidDate.substring(0, 4) +
             "-" +
@@ -5533,6 +5567,20 @@ export default {
   padding: 10px 20px;
   box-sizing: border-box;
   border-bottom: 1px solid #f2f2f2;
+
+  .offer-time {
+    padding: 5px 0 5px 100px;
+    box-sizing: border-box;
+    color: #6495ed;
+
+    &>span {
+      margin: 0 10px;
+
+      &>span {
+        font-weight: 500;
+      }
+    }
+  }
 }
 
 /* 内容待定 */

+ 33 - 2
src/views/Letter/Orderlist.vue

@@ -81,6 +81,11 @@
               <el-button size="mini" type="text"
                 v-if="item.orderstatus == '2' && ['恒邦财险', '众安财险', '中国人寿', '安盛天平', '紫金财险'].includes(item.inscompany)"
                 @click="querystatus(item)" style="color:#f56c6c">缴费状态查询</el-button>
+
+                   <el-button size="mini" type="text"
+                v-if="item.orderstatus == '2' && ['紫金财险'].includes(item.inscompany)"
+                @click="cancelorder(item)" style="color:#f56c6c">撤单</el-button>
+
               <el-button size="mini" type="text" v-if="item.orderstatus == '2'" @click="carcode(scope.row, item)"
                 style="color:#f56c6c">二维码</el-button>
               <el-button size="mini" type="text" @click="OrderDetails(scope.row, item)">查看详情
@@ -1020,6 +1025,7 @@ export default {
         startDate: "",
         pageNum: 1,
         pageSize: 20,
+        deptId:"",
       },
       orderInfo: {
         //选中的订单
@@ -1066,6 +1072,7 @@ export default {
   },
   created() {
     this.peopleid = Cookies.get('user');
+    this.pageRequest.deptId=JSON.parse(localStorage.getItem('user_data') ).deptId;
     this.$api.dept.findDeptTree().then((res) => {
         this.institutionOptions = res.data;
       });
@@ -1220,6 +1227,11 @@ export default {
       }
 
     },
+    cancelorder(item){
+      this.$api.letter.zijincancelorder({ companyId: item.id }).then(res => {
+
+      })
+    },
     //二维码
     carcode(row, item) {
       console.log(item)
@@ -1515,7 +1527,7 @@ export default {
                 this.$api.letter.zijingetPolicyPrint({
                   companyId: item.id,
                   riskCode: "0507",
-                  type: '1',//2:标志
+                  type: '1',//1:标志
                 }).then(res => {
                   if (res.data) {
                     this.oldfileList.push({
@@ -1530,7 +1542,7 @@ export default {
                 this.$api.letter.zijingetPolicyPrint({
                   companyId: item.id,
                   riskCode: "0510",
-                  type: '2',//2:标志
+                  type: '2',//2:保单
                 }).then(res => {
                   if (res.data) {
                     this.oldfileList.push({
@@ -1541,6 +1553,25 @@ export default {
                   }
                 })
               }
+              if(this.orderInfo.crossInsurance.length>0){
+                console.log(1)
+                this.orderInfo.crossInsurance.map(ele=>{
+                  this.$api.letter.zijingetPolicyPrint({
+                  companyId: item.id,
+                  policyNumber:ele.policyNumber,
+                  riskCode: "0513",
+                  type: '2',//2:保单
+                }).then(res => {
+                  if (res.data) {
+                    this.oldfileList.push({
+                      fileTitle: "驾意险保单",
+                      filename: ele.policyNumber,
+                      fileurl: res.data,
+                    });
+                  }
+                })
+                })
+              }
               break;
             case "恒邦财险":
             case "安盛天平":