Pārlūkot izejas kodu

1.报价基础类型数据
2.紫金撤销成功后修改状态为报价中
3.上传影像修改

wks 3 gadi atpakaļ
vecāks
revīzija
ace96f4c04

+ 32 - 0
src/main/java/com/ydtech/constants/enums/dict/insurance/EnergyType.java

@@ -0,0 +1,32 @@
+package com.ydtech.constants.enums.dict.insurance;
+
+import com.ydtech.aop.request.DictEnum;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @description: 能源种类
+ * @author: wenks
+ * @date: 2023/9/15 16:01
+ **/
+@AllArgsConstructor
+@Getter
+@DictEnum(key = "natureOfVehicleUse", desc = "能源种类")
+public enum EnergyType {
+
+    ET_0("0", "汽油", 0, 0),
+    ET_1("1", "纯电动", 1, 0),
+    ET_2("2", "燃料电池", 2, 0),
+    ET_3("3", "插电式混合动力", 3, 0),
+    ET_4("4", "其他混合动力", 4, 0);
+
+    // 编号
+    private final String code;
+    // 说明
+    private final String desc;
+    // 排序
+    private final Integer sort;
+    // 状态  0 启用  1 不启用
+    private final Integer status;
+
+}

+ 32 - 0
src/main/java/com/ydtech/constants/enums/dict/insurance/NatureOfVehicleUse.java

@@ -0,0 +1,32 @@
+package com.ydtech.constants.enums.dict.insurance;
+
+
+import com.ydtech.aop.request.DictEnum;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+/**
+ * @description: 车辆使用性质
+ * @author: wenks
+ * @date: 2023/9/15 15:48
+ **/
+@AllArgsConstructor
+@Getter
+@DictEnum(key = "natureOfVehicleUse", desc = "车辆使用性质")
+public enum NatureOfVehicleUse {
+
+    NOVU_8A("8A", "家庭自用", 0, 0);
+//    NOVU_8A("8B" , "非营业企业", 0, 0),
+//    NOVU_8A("8C" , "非营业党政机关,事业团体", 0, 0),
+//    NOVU_8A("8D" , "非营业货车", 0, 0);
+
+    // 编号
+    private final String code;
+    // 说明
+    private final String desc;
+    // 排序
+    private final Integer sort;
+    // 状态  0 启用  1 不启用
+    private final Integer status;
+
+}

+ 7 - 2
src/main/java/com/ydtech/constants/enums/dict/insurance/Vehicles.java → src/main/java/com/ydtech/constants/enums/dict/insurance/TrafficManagementVehicleType.java

@@ -6,10 +6,15 @@ import com.ydtech.constants.enums.dict.IBaseEnum;
 import lombok.AllArgsConstructor;
 import lombok.Getter;
 
+/**
+ * @description: 交通管理车辆类型
+ * @author: wenks
+ * @date: 2023/9/15 15:48
+ **/
 @AllArgsConstructor
 @Getter
-@DictEnum(key = "vehicles", desc = "车辆类型")
-public enum Vehicles implements IBaseEnum {
+@DictEnum(key = "trafficManagementVehicleType", desc = "交管车辆类型")
+public enum TrafficManagementVehicleType implements IBaseEnum {
 
     B11("B11", "重型普通半挂车", 0, 0),
     B12("B12", "重型厢式半挂车", 1, 0),

+ 31 - 0
src/main/java/com/ydtech/constants/enums/dict/insurance/VehicleType.java

@@ -0,0 +1,31 @@
+package com.ydtech.constants.enums.dict.insurance;
+
+
+import com.ydtech.aop.request.DictEnum;
+import lombok.AllArgsConstructor;
+import lombok.Getter;
+
+
+/**
+ * @description: 车辆种类
+ * @author: wenks
+ * @date: 2023/9/15 15:50
+ **/
+@AllArgsConstructor
+@Getter
+@DictEnum(key = "vehicleType", desc = "车辆种类")
+public enum VehicleType {
+
+    VT_A0("A0", "客车", 0, 0);
+
+    // 编号
+    private final String code;
+    // 说明
+    private final String desc;
+    // 排序
+    private final Integer sort;
+    // 状态  0 启用  1 不启用
+    private final Integer status;
+
+
+}

+ 21 - 1
src/main/java/com/ydtech/modules/ins/model/vo/CarInfoVo.java

@@ -58,18 +58,29 @@ public class CarInfoVo {
     /**
      * @Date  2023-03-15
      */
+
+    /**
+     * @see com.ydtech.constants.enums.dict.insurance.EnergyType
+     */
     @ApiModelProperty(value = "能源种类")
     private String energyType;
+
     @ApiModelProperty(value = "总质量")
     private String vehicleweight;
     @ApiModelProperty(value = "核定载质量")
     private String limitLoad;
     @ApiModelProperty(value = "年款")
     private String caryear;
+
+    /**
+     * @see com.ydtech.constants.enums.dict.insurance.VehicleType
+     */
     @ApiModelProperty(value = "车辆种类")
     private String cimodelclass;
+
     @ApiModelProperty(value = "燃料类型")
     private String powertype;
+
     @ApiModelProperty(value = "排量(和exhaustScale区分开)")
     private String enginedesc;
     private String displacement;
@@ -101,10 +112,19 @@ public class CarInfoVo {
     private String firstBeneMan;
     @ApiModelProperty(value = "是否有车牌号(判断是否是新车)")
     private boolean noLicenseFlag;
-    @ApiModelProperty(value = "车辆类型(A0代表客车)")
+
+    /**
+     * @see com.ydtech.constants.enums.dict.insurance.TrafficManagementVehicleType
+     */
+    @ApiModelProperty(value = "车辆类型")
     private String cartype;
+
+    /**
+     * @see com.ydtech.constants.enums.dict.insurance.NatureOfVehicleUse
+     */
     @ApiModelProperty(value = "使用性质(8A家庭自用8B非营运)")
     private String carnature;
+
     @ApiModelProperty(value = "所属性质(1个人 2企业 3机关)")
     private String property;
     @ApiModelProperty(value = "发动机功率")

+ 2 - 2
src/main/java/com/ydtech/modules/order/controller/OrderTaskImageController.java

@@ -82,14 +82,14 @@ public class OrderTaskImageController extends BaseController {
 
     @PostMapping(value = "/uploadImages")
     @ApiOperation(value = "新上传影像")
-    public HttpResult uploadImages(@RequestBody InsTaskImagesVo insTaskImagesVo) {
+    public HttpResult<Object> uploadImages(@RequestBody InsTaskImagesVo insTaskImagesVo) {
         return insTaskImagesService.uploadImages(insTaskImagesVo, getUserName());
     }
 
 
     @GetMapping(value = "/findById")
     @ApiOperation(value = "根据任务号查询")
-    public HttpResult findById(@RequestParam String taskid, String imgtype) {
+    public HttpResult<List<InsTaskImage>> findById(@RequestParam String taskid, String imgtype) {
         if (taskid == null || taskid.equalsIgnoreCase("")) {
             return HttpResult.ok("任务号taskid不能为空");
         }

+ 0 - 1
src/main/java/com/ydtech/modules/order/dao/InsTaskImagesMapper.java

@@ -20,7 +20,6 @@ public interface InsTaskImagesMapper extends BaseMapper<InsTaskImages> {
 
     List<InsUploadImagesDto> getByOrderNoInsUploadImagesDtoList(String orderNo);
 
-    int delByImageTypeQuoteNo(@Param("imageType") String imageType, @Param("quoteNo") String quoteNo);
 }
 
 

+ 2 - 1
src/main/java/com/ydtech/modules/order/entity/api/zj/request/CalculatePremiumRequest.java

@@ -691,7 +691,8 @@ public class CalculatePremiumRequest implements Serializable {
             this.carKindDetailId = getCarKindDetailId(Integer.parseInt(carInfo.getSeatCount()));
             this.carLoanFlag = "0";
             this.exhaustCapacity = vehicleModelInfosDTO.getExhaustCapacity();
-            this.oriCarKindName = "K33";
+            this.oriCarKindName = carInfo.getCartype();
+
             this.platVehicleCode = vehicleModelInfosDTO.getPlatVehicleCode();
             this.modelEnergyType = vehicleModelInfosDTO.getPowerTypeCode();
             this.ecdemicVehicleFlag = "0";

+ 4 - 4
src/main/java/com/ydtech/modules/order/entity/po/InsTaskImages.java

@@ -56,11 +56,11 @@ public class InsTaskImages implements Serializable {
     @TableField(exist = false)
     private static final long serialVersionUID = 1L;
 
-    public InsTaskImages(InsTaskImagesVo insTaskImagesVo, String username, String imageId) {
+    public InsTaskImages(InsTaskImagesVo.Image image, String quoteNo, String username) {
         this.id = IdGenerate.nextId();
-        this.quoteNo = insTaskImagesVo.getQuoteNo();
-        this.imageType = insTaskImagesVo.getImageType();
-        this.imageId = imageId;
+        this.quoteNo = quoteNo;
+        this.imageType = image.getImageType();
+        this.imageId = image.getImageId();
         this.creator = username;
         this.createTime = DateTime.now();
     }

+ 23 - 8
src/main/java/com/ydtech/modules/order/entity/vo/InsTaskImagesVo.java

@@ -6,6 +6,7 @@ import lombok.Data;
 
 import javax.validation.constraints.NotBlank;
 import javax.validation.constraints.NotEmpty;
+import java.io.Serializable;
 import java.util.List;
 
 /**
@@ -16,18 +17,32 @@ import java.util.List;
  */
 @Data
 @ApiModel(value = "影像上传类")
-public class InsTaskImagesVo {
+public class InsTaskImagesVo implements Serializable {
 
-    @ApiModelProperty(value = "任务号")
+    private static final long serialVersionUID = 4950355757359740524L;
+
+    @ApiModelProperty(value = "报价号")
     @NotBlank(message = "报价号不能为空")
     private String quoteNo;
 
-    @ApiModelProperty(value = "图片类型")
-    @NotBlank(message = "文件类型不能为空")
-    private String imageType;
+    @ApiModelProperty(value = "影像")
+    @NotEmpty(message = "影像不能为空")
+    private List<Image> imageList;
+
+    @ApiModel("影像")
+    @Data
+    public static class Image implements Serializable{
+
+        private static final long serialVersionUID = -117075681918203227L;
+
+        @ApiModelProperty(value = "图片类型")
+        @NotBlank(message = "文件类型不能为空")
+        private String imageType;
+
+        @ApiModelProperty(value = "文件存储ID")
+        @NotBlank(message = "文件存储不能为空")
+        private String imageId;
 
-    @ApiModelProperty(value = "文件存储ID")
-    @NotEmpty(message = "文件存储不能为空")
-    private List<String> imageIdList;
+    }
 
 }

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

@@ -24,7 +24,7 @@ public interface InsTaskImagesService extends IService<InsTaskImages> {
      * @param username        用户名
      * @return
      */
-    HttpResult uploadImages(InsTaskImagesVo insTaskImagesVo, String username);
+    HttpResult<Object> uploadImages(InsTaskImagesVo insTaskImagesVo, String username);
 
 
     /**

+ 12 - 19
src/main/java/com/ydtech/modules/order/service/impl/InsTaskImagesServiceImpl.java

@@ -11,7 +11,6 @@ import com.ydtech.modules.order.entity.po.InsTaskImages;
 import com.ydtech.modules.order.entity.po.InsTaskImagesBase64;
 import com.ydtech.modules.order.entity.vo.InsTaskImagesVo;
 import com.ydtech.modules.order.service.InsTaskImagesService;
-import com.ydtech.utils.StringUtils;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.Base64Utils;
@@ -30,26 +29,20 @@ public class InsTaskImagesServiceImpl extends ServiceImpl<InsTaskImagesMapper, I
 
     @Override
     @Transactional
-    public HttpResult uploadImages(InsTaskImagesVo insTaskImagesVo, String username) {
-        if (insTaskImagesVo.getImageIdList().isEmpty()) {
-            throw new SystemException("上传影像不能为空");
-        }
-
+    public HttpResult<Object> uploadImages(InsTaskImagesVo insTaskImagesVo, String username) {
         // 将新文件存入
-        List<InsTaskImages> insTaskImagesList = new ArrayList<>();
-        for (String s : insTaskImagesVo.getImageIdList()) {
-            if (StringUtils.isEmpty(s)) {
-                continue;
-            }
-            InsTaskImages insTaskImages = new InsTaskImages(insTaskImagesVo, username, s);
-            insTaskImagesList.add(insTaskImages);
-        }
-        boolean b = true;
-        if (!insTaskImagesList.isEmpty()) {
-            // 删除之前的文件
-            baseMapper.delByImageTypeQuoteNo(insTaskImagesVo.getImageType(), insTaskImagesVo.getQuoteNo());
-            b = saveBatch(insTaskImagesList);
+        List<InsTaskImagesVo.Image> imageList = insTaskImagesVo.getImageList();
+
+        List<InsTaskImages> insTaskImagesList = imageList.stream().map(x -> new InsTaskImages(x, insTaskImagesVo.getQuoteNo(), username)).collect(Collectors.toList());
+        List<InsTaskImages> list = lambdaQuery().eq(InsTaskImages::getQuoteNo, insTaskImagesVo.getQuoteNo()).list();
+        if (list.isEmpty()) {
+            throw new SystemException("报价号为查询到影像,请先上传影像");
         }
+
+        List<String> collect = list.stream().map(InsTaskImages::getId).collect(Collectors.toList());
+        removeBatchByIds(collect);
+
+        boolean b = saveBatch(insTaskImagesList);
         return HttpResult.error(b ? 200 : 400, b ? "上传成功" : "上传失败");
     }
 

+ 4 - 0
src/main/java/com/ydtech/modules/order/service/impl/ZijinOrderApiServiceImpl.java

@@ -296,6 +296,10 @@ public class ZijinOrderApiServiceImpl implements ZijinOrderApiService {
         OrderNoRequest orderNoRequest = new OrderNoRequest(insAreaCompany.getId());
         zijinRequestApiComponents.cancel(orderNoRequest, httpHeaders);
 
+        // 3 撤销成功后修改状态为报价中
+        insAreaCompany.setOrderstatus(InsOrderStatus.S_0.getCode());
+        insAreaCompanyService.updateCompanyAndOrders(insAreaCompany);
+
         return HttpResult.ok("撤单成功");
     }
 

+ 0 - 10
src/main/resources/mapper/modules/ins/InsTaskImagesMapper.xml

@@ -38,14 +38,4 @@
               (select quoteno from ins_orders where orderno = #{orderNo})
     </select>
 
-    <delete id="delByImageTypeQuoteNo">
-        delete
-        from ins_task_images
-        where id in (select image_id
-                     from (select id as image_id
-                           from ins_task_images
-                           where image_type = #{imageType}
-                             and quote_no = #{quoteNo}) as a);
-    </delete>
-
 </mapper>