Browse Source

机构来源增加电销 用户信息返回机构来源

wks 2 years ago
parent
commit
b1ae8e945e

+ 1 - 1
src/main/java/com/ydtech/constants/enums/dict/organization/OrganizationSource.java

@@ -17,7 +17,7 @@ public enum OrganizationSource {
 
     OS_1("1", "渠道", 0, 0),
     OS_2("2", "个代", 1, 0),
-    OS_3("3", "服务", 2, 0);
+    OS_3("3", "电销", 2, 0);
 
     // 编号
     private final String code;

+ 1 - 0
src/main/java/com/ydtech/modules/admin/controller/SysUserController.java

@@ -455,6 +455,7 @@ public class SysUserController extends BaseController {
             SysDept sysDept = sysDeptService.getById(sysUser.getDeptId());
             sysUser.setDeptName(sysDept.getName());
             sysUser.setIsHasAddUser(sysDept.getManagementSource()!=null?1:0);
+            sysUser.setManagementSource(sysDept.getManagementSource());
         }
 
         EsmUserReferrer eur = esmUserReferrerService.getById(sysUser.getId());

+ 4 - 1
src/main/java/com/ydtech/modules/admin/model/SysUser.java

@@ -10,7 +10,6 @@ import com.ydtech.exception.SystemException;
 import com.ydtech.modules.base.model.BaseEntity;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import io.swagger.models.auth.In;
 import lombok.Data;
 import springfox.documentation.annotations.ApiIgnore;
 
@@ -158,6 +157,10 @@ public class SysUser extends BaseEntity {
     @Excel(name = "推荐人名称")
     private String referrerName;
 
+    @TableField(exist = false)
+    @ApiModelProperty("机构来源")
+    private String managementSource;
+
     @TableField(value = "position_id")
     @ApiModelProperty("岗位id")
     private String positionId;

+ 1 - 1
src/main/java/com/ydtech/modules/order/entity/api/bohai/constants/VehicleUsageDetail.java

@@ -19,7 +19,7 @@ public enum VehicleUsageDetail {
     VUD_02("102", "营业城公交"),
     VUD_03("103", "营业公路客运"),
     VUD_04("105", "营业货运"),
-    VUD_05("253", "家庭自用"),
+    VUD_05("210", "非营业个人"),
     VUD_06("230", "非营业机关"),
     VUD_07("220", "非营业企业"),
     VUD_08("240", "非营业货运");

+ 34 - 4
src/main/java/com/ydtech/modules/order/entity/api/bohai/request/VehicleConfirmationReqeust.java

@@ -1,9 +1,11 @@
 package com.ydtech.modules.order.entity.api.bohai.request;
 
 import com.fasterxml.jackson.annotation.JsonProperty;
+import com.ydtech.constants.enums.InsuranceRisk;
 import com.ydtech.modules.admin.model.vo.PersonAreaVo;
 import com.ydtech.modules.ins.model.vo.CarInfoVo;
 import com.ydtech.modules.ins.model.vo.CustomerInfoVo;
+import com.ydtech.modules.ins.model.vo.RiskInfoVo;
 import com.ydtech.modules.order.entity.api.bohai.constants.*;
 import com.ydtech.modules.order.entity.api.bohai.response.VehicleTypeQueryResponse;
 import com.ydtech.modules.order.entity.config.BoHaiConfigureParameters;
@@ -14,6 +16,8 @@ import lombok.EqualsAndHashCode;
 import lombok.NoArgsConstructor;
 
 import java.io.Serializable;
+import java.util.List;
+import java.util.stream.Collectors;
 
 
 /**
@@ -44,11 +48,22 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
     public VehicleConfirmationReqeust(BoHaiConfigureParameters parameters, BaseQuoteInfoVo quoteInfoVo,
                                       VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO,
                                       String orderNo, PersonAreaVo ownerInfoArea, PersonAreaVo insuredPersonArea,
-                                      PersonAreaVo policyHolderArea) {
+                                      PersonAreaVo policyHolderArea, List<RiskInfoVo> riskList) {
+
+        List<RiskInfoVo> riskInfoVos =
+                riskList.stream().filter(x -> InsuranceRisk.BUSINESS.getCode().equals(x.getRiskCode())).collect(Collectors.toList());
+        String effectDate;
+        if (!riskInfoVos.isEmpty()) {
+            effectDate = riskInfoVos.get(0).getStartDate();
+        } else {
+            effectDate = riskList.get(0).getStartDate();
+        }
+
+
         this.setBaseParam(parameters, RequestType.Z00005.getCode(), orderNo);
         // 车辆信息
         CarInfoVo carInfo = quoteInfoVo.getCarInfo();
-        this.vehicle = new VehicleDTO(carInfo, vehicleModelsDTO);
+        this.vehicle = new VehicleDTO(carInfo, vehicleModelsDTO, effectDate);
         // 车主
         CustomerInfoVo ownerInfo = quoteInfoVo.getOwnerInfo();
         this.carOwner = new CarOwnerDTO(ownerInfo, ownerInfoArea);
@@ -91,6 +106,9 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
         @JsonProperty("plateNo")
         private String plateNo;
 
+        @JsonProperty("licenseType")
+        private String licenseType;
+
         /**
          * 初登日期
          */
@@ -115,6 +133,8 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
         @JsonProperty("moldName")
         private String moldName;
 
+        @JsonProperty("modelCode")
+        private String modelCode;
         /**
          * 座位数
          */
@@ -143,6 +163,12 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
         @JsonProperty("emptyWeight")
         private String emptyWeight;
 
+        /**
+         * 保险起期
+         */
+        @JsonProperty("effectDate")
+        private String effectDate;
+
         /**
          * 排气量(L)
          */
@@ -192,22 +218,26 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
         private String secondHandVehicleFlag;
 
 
-        public VehicleDTO(CarInfoVo carInfo, VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO) {
+        public VehicleDTO(CarInfoVo carInfo, VehicleTypeQueryResponse.DataDTO.VehicleModelsDTO vehicleModelsDTO, String effectDate) {
             this.carVin = carInfo.getVinNo();
             this.vehicleModelCode = vehicleModelsDTO.getVehicleModelCode();
             this.engineNo = carInfo.getEngineNo();
             this.plateNo = carInfo.getLicenseNo();
+            this.licenseType = "02";
             this.registerDate = carInfo.getRegisterDate();
             this.purchasePrice = vehicleModelsDTO.getPurchasePrice();
             // 新车
             this.newVehicleFlag = StringUtils.isNotEmpty(carInfo.getLicenseNo()) ? "0" : "1";
             this.moldName = vehicleModelsDTO.getMoldName();
+            this.modelCode = vehicleModelsDTO.getModelCode();
+
             this.seatCount = carInfo.getSeatCount();
             this.tonNumber = carInfo.getLimitLoad();
             this.fuelType = carInfo.getEnergyType();
             this.emptyWeight = carInfo.getCompleteKerbMass();
             this.exhaustMeasure = vehicleModelsDTO.getExhaustMeasure();
             VehicleKind vehicleKindEnum = VehicleKind.valueOf("VK_" + carInfo.getCimodelclass());
+            this.effectDate = effectDate;
             this.vehicleKind = vehicleKindEnum.getCode();
             this.vehicleAffNature = VehicleAffNature.VAN_1.getCode();
             // 车辆使用性质
@@ -402,7 +432,7 @@ public class VehicleConfirmationReqeust extends BoHaiBaseRequest {
         private String distName;
 
         @JsonProperty("residentialAddress")
-        private  String residentialAddress;
+        private String residentialAddress;
 
 
         public HolderDTO(CustomerInfoVo policyHolderInfo, PersonAreaVo policyHolderArea) {

+ 1 - 1
src/main/java/com/ydtech/modules/order/service/impl/BoHaiOrderApiServiceImpl.java

@@ -131,7 +131,7 @@ public class BoHaiOrderApiServiceImpl implements BoHaiOrderApiService {
         PersonAreaVo policyHolderArea = sysAreaService.queryByAddressBoHai(policyHolderInfo.getAddr(),
                 policyHolderInfo.getIdentifyNumber());
         VehicleConfirmationReqeust vehicleConfirmationReqeust = new VehicleConfirmationReqeust(parameters, quoteInfoVo, vehicleModelsDTO,
-                orderNo, ownerInfoArea, insuredPersonArea, policyHolderArea);
+                orderNo, ownerInfoArea, insuredPersonArea, policyHolderArea, quoteInfoVo.getRiskList());
         VehicleConfirmationResponse vehicleConfirmationResponse = boHaiRequestApiComponent.vehicleConfirmation(vehicleConfirmationReqeust);
         // 车辆实际价值
         String currentValue = vehicleConfirmationResponse.getData().getVehicleModels().get(0).getCurrentValue();