于继渤 2 лет назад
Родитель
Сommit
5ac3d53308

+ 15 - 2
src/main/java/com/dk/mdm/controller/mst/CusFollowController.java

@@ -5,12 +5,14 @@ import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.model.pojo.mst.CusFollow;
 import com.dk.common.controller.BaseController;
 import com.dk.common.service.BaseService;
+import com.dk.mdm.model.pojo.mst.MeasureReceipt;
 import com.dk.mdm.model.query.mst.CusFollowQuery;
 import com.dk.mdm.model.query.mst.CustomerQuery;
 import com.dk.mdm.model.response.mst.CusFollowResponse;
 import com.dk.mdm.model.response.mst.CustomerResponse;
 import com.dk.mdm.model.vo.mst.CusFollowVO;
 import com.dk.mdm.model.vo.mst.CustomerVO;
+import com.dk.mdm.model.vo.mst.MeasureReceiptVO;
 import io.swagger.annotations.ApiOperation;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -71,9 +73,20 @@ public class CusFollowController{
      * @date : 2023/1/5 9:39
      */
     @ApiOperation( value = "新建量尺回执", notes = "v" )
+    @PostMapping({"save_measure"})
+    public ResponseResultVO<?> saveMeasure(@RequestBody CusFollowVO cusFollowVO) {
+        return cusFollowService.saveMeasure(cusFollowVO);
+    }
+
+    /**
+     * @desc : 新建量尺回执
+     * @author : 于继渤
+     * @date : 2023/1/5 9:39
+     */
+    @ApiOperation( value = "新建量尺回执", notes = "v" )
     @PostMapping({"update_measure"})
-    public ResponseResultVO<?> updateMeasure(@RequestBody CusFollowVO cusFollowVO) {
-        return cusFollowService.updateMeasure(cusFollowVO);
+    public ResponseResultVO<?> updateMeasure(@RequestBody MeasureReceiptVO measureReceipt) {
+        return cusFollowService.updateMeasure(measureReceipt);
     }
 
 

+ 12 - 0
src/main/java/com/dk/mdm/infrastructure/convert/mst/MeasureReceiptConvert.java

@@ -0,0 +1,12 @@
+package com.dk.mdm.infrastructure.convert.mst;
+
+import com.dk.mdm.model.pojo.mst.CusFollow;
+import com.dk.mdm.model.pojo.mst.MeasureReceipt;
+import com.dk.mdm.model.vo.mst.CusFollowVO;
+import com.dk.mdm.model.vo.mst.MeasureReceiptVO;
+import org.mapstruct.Mapper;
+
+@Mapper(componentModel = "spring")
+public interface MeasureReceiptConvert {
+    MeasureReceipt convertToPo(MeasureReceiptVO measureReceiptVO);
+}

+ 2 - 0
src/main/java/com/dk/mdm/mapper/mst/MeasureRoomMapper.java

@@ -13,5 +13,7 @@ import java.util.List;
 @Repository
 public interface MeasureRoomMapper extends BaseMapper<MeasureRoom>{
     List<MeasureRoom> selectByReceiptId(MeasureRoom measureRoom);
+
+    int deleteByUuid(String id);
 }
 

+ 6 - 0
src/main/java/com/dk/mdm/mapper/mst/MeasureRoomMapper.xml

@@ -177,4 +177,10 @@
             )
         </foreach>
     </insert>
+
+
+    <delete id="deleteByUuid">
+        DELETE FROM dkic_b.t_crm_measure_room
+        WHERE room_id = #{roomId}::uuid
+    </delete>
 </mapper>

+ 0 - 9
src/main/java/com/dk/mdm/model/pojo/mst/MeasureReceipt.java

@@ -186,15 +186,6 @@ public class MeasureReceipt extends PageInfo<MeasureReceipt> implements Serializ
     private String opDbUser;
 
 
-    /*
-     * 相关属性
-     * @TableField(exist = false)
-     */
-
-    /*
-     * 关联属性 + 查询条件
-     * @TableField(exist = false)
-     */
 
 
     private static final long serialVersionUID = 1L;

+ 204 - 0
src/main/java/com/dk/mdm/model/vo/mst/MeasureReceiptVO.java

@@ -0,0 +1,204 @@
+package com.dk.mdm.model.vo.mst;
+
+import cn.afterturn.easypoi.excel.annotation.Excel;
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.dk.common.infrastructure.annotaiton.ExportTitle;
+import com.dk.common.infrastructure.handler.TimestampTypeHandler;
+import com.dk.common.infrastructure.handler.UuidTypeHandler;
+import com.dk.common.model.pojo.PageInfo;
+import com.dk.mdm.model.pojo.mst.MeasureRoom;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.AllArgsConstructor;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import lombok.experimental.Accessors;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ *  量尺回执
+ */
+@Data
+@AllArgsConstructor
+@NoArgsConstructor
+@EqualsAndHashCode(callSuper = true)
+@Accessors(chain = true)
+@ExportTitle("量尺回执")
+@TableName(value = "t_crm_measure_receipt", autoResultMap = true)
+@ApiModel(value="实体类:量尺回执", description="表名:t_crm_measure_receipt")
+public class MeasureReceiptVO extends PageInfo<MeasureReceiptVO> implements Serializable {
+
+    /*
+     * 数据库字段
+     */
+
+    /**
+     * 回执ID
+     */
+    @ApiModelProperty(value = "回执ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String receiptId;
+
+
+    /**
+     * 跟进ID
+     */
+    @Excel(name = "跟进ID")
+    @ApiModelProperty(value = "跟进ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String followId;
+
+
+    /**
+     * 客户ID
+     */
+    @Excel(name = "客户ID")
+    @ApiModelProperty(value = "客户ID")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String cusId;
+
+
+    /**
+     * 量尺状态 (【系统字典】)
+     */
+    @Excel(name = "量尺状态 (【系统字典】)")
+    @ApiModelProperty(value = "量尺状态 (【系统字典】)")
+    private String measureStatus;
+
+
+    /**
+     * 复尺标识
+     */
+    @Excel(name = "复尺标识")
+    @ApiModelProperty(value = "复尺标识")
+    private Boolean flgAgainMeasure;
+
+
+    /**
+     * 量尺备注
+     */
+    @Excel(name = "量尺备注")
+    @ApiModelProperty(value = "量尺备注")
+    private String measureRemarks;
+
+
+    /**
+     * 量尺时间
+     */
+    @Excel(name = "量尺时间")
+    @ApiModelProperty(value = "量尺时间")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime measureTime;
+
+
+    /**
+     * 备注
+     */
+    @Excel(name = "备注")
+    @ApiModelProperty(value = "备注")
+    private String remarks;
+
+
+    /**
+     * 有效标识 (1:正常 0:停用)
+     */
+    @Excel(name = "有效标识 (1:正常 0:停用)")
+    @ApiModelProperty(value = "有效标识 (1:正常 0:停用)")
+    private Boolean flgValid;
+
+
+    /**
+     * 企业ID
+     */
+    @TableField(fill = FieldFill.INSERT)
+    @Excel(name = "企业ID")
+    @ApiModelProperty(value = "企业ID")
+    private Integer cpId;
+
+
+    /**
+     * 创建时间 (触发器自动处理)
+     */
+    @Excel(name = "创建时间 (触发器自动处理)", format = "yyyy-MM-dd HH:mm:ss", width = 20)
+    @ApiModelProperty(value = "创建时间 (触发器自动处理)")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime opCreateTime;
+
+
+    /**
+     * 创建用户 (触发器自动处理)
+     */
+    @Excel(name = "创建用户 (触发器自动处理)")
+    @ApiModelProperty(value = "创建用户 (触发器自动处理)")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String opCreateUserId;
+
+
+    /**
+     * 修改时间 (触发器自动处理)
+     */
+    @Excel(name = "修改时间 (触发器自动处理)", format = "yyyy-MM-dd HH:mm:ss", width = 20)
+    @ApiModelProperty(value = "修改时间 (触发器自动处理)")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime opUpdateTime;
+
+
+    /**
+     * 修改用户 (触发器自动处理)
+     */
+    @Excel(name = "修改用户 (触发器自动处理)")
+    @ApiModelProperty(value = "修改用户 (触发器自动处理)")
+    @TableField(typeHandler = UuidTypeHandler.class)
+    private String opUpdateUserId;
+
+
+    /**
+     * 数据操作应用 (触发器自动处理)
+     */
+    @Excel(name = "数据操作应用 (触发器自动处理)")
+    @ApiModelProperty(value = "数据操作应用 (触发器自动处理)")
+    private String opAppCode;
+
+
+    /**
+     * 数据时间戳 (触发器自动处理)
+     */
+    @Excel(name = "数据时间戳 (触发器自动处理)")
+    @ApiModelProperty(value = "数据时间戳 (触发器自动处理)")
+    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
+    @TableField(typeHandler = TimestampTypeHandler.class)
+    private LocalDateTime opTimestamp;
+
+
+    /**
+     * 数据操作数据库用户 (触发器自动处理)
+     */
+    @Excel(name = "数据操作数据库用户 (触发器自动处理)")
+    @ApiModelProperty(value = "数据操作数据库用户 (触发器自动处理)")
+    private String opDbUser;
+
+
+    /*
+     * 相关属性
+     * @TableField(exist = false)
+     */
+
+    /*
+     * 关联属性 + 查询条件
+     * @TableField(exist = false)
+     */
+    private List<MeasureRoom> MeasureRoomList;
+
+    private static final long serialVersionUID = 1L;
+
+}

+ 40 - 1
src/main/java/com/dk/mdm/service/mst/CusFollowService.java

@@ -10,6 +10,7 @@ import com.dk.common.response.ResponseCodeEnum;
 import com.dk.common.response.ResponseResultUtil;
 import com.dk.common.response.ResponseResultVO;
 import com.dk.mdm.infrastructure.convert.mst.CusFollowConvert;
+import com.dk.mdm.infrastructure.convert.mst.MeasureReceiptConvert;
 import com.dk.mdm.infrastructure.util.AuthUtils;
 import com.dk.mdm.mapper.mst.*;
 import com.dk.mdm.model.pojo.mst.*;
@@ -21,6 +22,7 @@ import com.dk.mdm.model.response.mst.CusFollowResponse;
 import com.dk.mdm.model.response.mst.CustomerResponse;
 import com.dk.common.model.response.mst.StaffResponse;
 import com.dk.mdm.model.vo.mst.CusFollowVO;
+import com.dk.mdm.model.vo.mst.MeasureReceiptVO;
 import com.dk.mdm.service.common.CommonService;
 import org.springframework.stereotype.Service;
 import org.springframework.beans.factory.annotation.Autowired;
@@ -76,6 +78,9 @@ public class CusFollowService extends BaseService<CusFollow> {
     private MeasureRoomMapper measureRoomMapper;
 
 
+    @Autowired
+    private MeasureReceiptConvert measureReceiptConvert;
+
     /**
      * @desc : 重写主键
      * @author : 于继渤
@@ -352,7 +357,7 @@ public class CusFollowService extends BaseService<CusFollow> {
     @Transactional(
             rollbackFor = {Exception.class}
     )
-    public ResponseResultVO<?> updateMeasure(CusFollowVO cusFollowVO) {
+    public ResponseResultVO<?> saveMeasure(CusFollowVO cusFollowVO) {
         CusFollow cusFollow = cusFollowConvert.convertToPo(cusFollowVO);
         //更新总单
         //  int update = cusFollowMapper.updateMeasure(cusFollow);
@@ -424,6 +429,40 @@ public class CusFollowService extends BaseService<CusFollow> {
 
 
     /**
+     * @desc : 编辑量尺回执
+     * @author : 于继渤
+     * @date : 2023/1/5 9:39
+     */
+    @Transactional(
+            rollbackFor = {Exception.class}
+    )
+    public ResponseResultVO<?> updateMeasure(MeasureReceiptVO measureReceipt) {
+        //     新建空间
+        if (measureReceipt.getMeasureRoomList() != null && measureReceipt.getMeasureRoomList().size() > 0) {
+
+            for (MeasureRoom measureRoom : measureReceipt.getMeasureRoomList()) {
+                if (measureRoom.getRoomId() != null) {
+                    measureRoomMapper.deleteByUuid(measureRoom.getRoomId());
+                    //设置ID
+                    Map<String, Object> uniqueNoteCode1 = commonService.getUniqueNoteCode(Constant.docNameConstant.ROOM.getName(), true);
+                    measureRoom.setRoomId(uniqueNoteCode1.get("outId").toString());
+                    measureRoom.setFollowId(measureReceipt.getFollowId());
+                    measureRoom.setCusId(measureReceipt.getCusId());
+                    measureRoom.setCpId(authUtils.getStaff().getCpId());
+                    measureRoom.setReceiptId(measureReceipt.getReceiptId());
+                    measureRoomService.insert(measureRoom);
+                }
+
+
+            }
+            MeasureReceipt measureReceipt1 = measureReceiptConvert.convertToPo(measureReceipt);
+            measureReceiptService.updateByUuid(measureReceipt1);
+        }
+        return ResponseResultUtil.success();
+    }
+
+
+    /**
      * @desc : 编辑
      * @author : 于继渤
      * @date : 2024-03-13 17:03