装修接口

This commit is contained in:
shuo.wang
2025-07-24 15:24:32 +08:00
parent fbae407c00
commit 34f46d97ee
29 changed files with 713 additions and 158 deletions

View File

@@ -67,6 +67,7 @@ public enum ShopSubStageStatusEnum {
//施工阶段 //施工阶段
SHOP_SUB_STAGE_STATUS_110(ShopSubStageEnum.SHOP_STAGE_11, 1100, "待提交", Boolean.FALSE), SHOP_SUB_STAGE_STATUS_110(ShopSubStageEnum.SHOP_STAGE_11, 1100, "待提交", Boolean.FALSE),
SHOP_SUB_STAGE_STATUS_110_5(ShopSubStageEnum.SHOP_STAGE_11, 1105, "待进场", Boolean.FALSE),
SHOP_SUB_STAGE_STATUS_111(ShopSubStageEnum.SHOP_STAGE_11, 1110, "施工中", Boolean.FALSE), SHOP_SUB_STAGE_STATUS_111(ShopSubStageEnum.SHOP_STAGE_11, 1110, "施工中", Boolean.FALSE),
SHOP_SUB_STAGE_STATUS_112(ShopSubStageEnum.SHOP_STAGE_11, 1120, "已完成", Boolean.TRUE), SHOP_SUB_STAGE_STATUS_112(ShopSubStageEnum.SHOP_STAGE_11, 1120, "已完成", Boolean.TRUE),

View File

@@ -31,6 +31,8 @@
<result column="acceptance_attachment" jdbcType="VARCHAR" property="acceptanceAttachment"/> <result column="acceptance_attachment" jdbcType="VARCHAR" property="acceptanceAttachment"/>
<result column="is_network_cable" jdbcType="BIT" property="isNetworkCable"/> <result column="is_network_cable" jdbcType="BIT" property="isNetworkCable"/>
<result column="back_kitchen_photo" jdbcType="VARCHAR" property="backKitchenPhoto"/> <result column="back_kitchen_photo" jdbcType="VARCHAR" property="backKitchenPhoto"/>
<result column="add_reduce_amount" jdbcType="DECIMAL" property="addReduceAmount"/>
<result column="delivery_order_id" jdbcType="VARCHAR" property="deliveryOrderId"/>
</resultMap> </resultMap>
<sql id="baseColumn"> <sql id="baseColumn">
id id

View File

@@ -34,6 +34,8 @@
<result column="floor_plan_url" jdbcType="VARCHAR" property="floorPlanUrl" /> <result column="floor_plan_url" jdbcType="VARCHAR" property="floorPlanUrl" />
<result column="quotation_sheet_id" jdbcType="VARCHAR" property="quotationSheetId" /> <result column="quotation_sheet_id" jdbcType="VARCHAR" property="quotationSheetId" />
<result column="quoter" jdbcType="VARCHAR" property="quoter" /> <result column="quoter" jdbcType="VARCHAR" property="quoter" />
<result column="construction_order_id" jdbcType="VARCHAR" property="constructionOrderId" />
<result column="actual_entry_time" jdbcType="TIMESTAMP" property="actualEntryTime" />
</resultMap> </resultMap>
<update id="updateDesignLeaderIdAndDesignUserIdInteger"> <update id="updateDesignLeaderIdAndDesignUserIdInteger">
update xfsg_decoration_design_info update xfsg_decoration_design_info

View File

@@ -1,5 +1,6 @@
package com.cool.store.entity; package com.cool.store.entity;
import java.math.BigDecimal;
import java.util.Date; import java.util.Date;
import javax.persistence.*; import javax.persistence.*;
@@ -127,7 +128,7 @@ public class AcceptanceInfoDO {
@Column(name = "shop_interior_photo") @Column(name = "shop_interior_photo")
private String shopInteriorPhoto; private String shopInteriorPhoto;
/**满意度0-低1-中2-高', */ /**满意度0-低1-中2-高', 3-差4-一般5-好6-非常好*/
@Column(name = "satisfaction") @Column(name = "satisfaction")
private Integer satisfaction; private Integer satisfaction;
/** /**
@@ -144,6 +145,28 @@ public class AcceptanceInfoDO {
@Column(name = "back_kitchen_photo") @Column(name = "back_kitchen_photo")
private String backKitchenPhoto; private String backKitchenPhoto;
@Column(name = "add_reduce_amount")
private BigDecimal addReduceAmount;
@Column(name = "delivery_order_id")
private String deliveryOrderId;
public String getDeliveryOrderId() {
return deliveryOrderId;
}
public void setDeliveryOrderId(String deliveryOrderId) {
this.deliveryOrderId = deliveryOrderId;
}
public BigDecimal getAddReduceAmount() {
return addReduceAmount;
}
public void setAddReduceAmount(BigDecimal addReduceAmount) {
this.addReduceAmount = addReduceAmount;
}
public Boolean getIsNetworkCable() { public Boolean getIsNetworkCable() {
return isNetworkCable; return isNetworkCable;
} }

View File

@@ -145,4 +145,8 @@ public class DecorationDesignInfoDO {
private String quotationSheetId; private String quotationSheetId;
@Column(name = "quoter") @Column(name = "quoter")
private String quoter; private String quoter;
@Column(name = "construction_order_id")
private String constructionOrderId;
@Column(name = "actual_entry_time")
private Date actualEntryTime;
} }

View File

@@ -89,11 +89,13 @@ public class DecorationMeasureDO {
*/ */
@Column(name = "deleted", nullable = false, columnDefinition = "tinyint default '0'") @Column(name = "deleted", nullable = false, columnDefinition = "tinyint default '0'")
private Boolean deleted; private Boolean deleted;
//测量派单ID
@Column(name = "measurement_sheet_id") @Column(name = "measurement_sheet_id")
private String measurementSheetId; private String measurementSheetId;
//测量员
@Column(name = "measure_user_name") @Column(name = "measure_user_name")
private String measureUserName; private String measureUserName;
//设计组
@Column(name = "design_leader_name") @Column(name = "design_leader_name")
private String designLeaderName; private String designLeaderName;
} }

View File

@@ -0,0 +1,18 @@
package com.cool.store.request;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @Author: WangShuo
* @Date: 2025/07/23/18:40
* @Version 1.0
* @注释:
*/
@Data
public class ConfirmQuotationRequest {
private String shopCode;
private String quotationSheetId;
@ApiModelProperty("0:拒绝1:通过")
private Integer status;
}

View File

@@ -0,0 +1,19 @@
package com.cool.store.request;
import lombok.Data;
import javax.validation.constraints.NotBlank;
/**
* @Author: WangShuo
* @Date: 2025/07/24/10:17
* @Version 1.0
* @注释:
*/
@Data
public class ConstructionCompletedRequest {
@NotBlank(message = "门店编号不能为空")
private String shopCode;
@NotBlank(message = "施工派单编号不能为空")
private String constructionOrderId;
}

View File

@@ -0,0 +1,25 @@
package com.cool.store.request;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import java.util.Date;
/**
* @Author: WangShuo
* @Date: 2025/07/23/18:50
* @Version 1.0
* @注释:
*/
@Data
public class ConstructionOrderRequest {
@NotBlank(message = "门店编号不能为空")
private String shopCode;
@NotBlank(message = "施工派单ID(施工派单编号)不能为空")
private String constructionOrderId;
@NotBlank(message = "预计开工时间不能为空")
private Date constructionPlanStartTime;
@NotBlank(message = "预计完工时间不能为空")
private Date constructionPlanEndTime;
}

View File

@@ -0,0 +1,25 @@
package com.cool.store.request;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.Date;
/**
* @Author: WangShuo
* @Date: 2025/07/24/10:09
* @Version 1.0
* @注释:
*/
@Data
public class EntryConfirmationRequest {
@NotBlank(message = "门店编号不能为空")
private String shopCode;
//施工派单ID(施工派单编号)
@NotBlank(message = "施工派单编号不能为空")
private String constructionOrderId;
//进场时间
@NotNull(message = "进场时间不能为空")
private Date actualEntryTime;
}

View File

@@ -0,0 +1,24 @@
package com.cool.store.request;
import lombok.Data;
/**
* @Author: WangShuo
* @Date: 2025/07/23/18:36
* @Version 1.0
* @注释:
*/
@Data
public class HqtBuildRequest {
private String shopCode;
private String shopName;
private Integer shopDecorationAttributes;
private String hqtRegionCode;
private String supervisorName;
private String partnershipSignatoryFirst;
private String partnershipSignatoryFirstMobile;
private String shopAddress;
private Integer isPayDesignFee;
private Integer franchiseBrand;
private String supervisorMobile;
}

View File

@@ -0,0 +1,36 @@
package com.cool.store.request;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
/**
* @Author: WangShuo
* @Date: 2025/07/24/10:46
* @Version 1.0
* @注释:
*/
@Data
public class HqtDecorationAcceptanceRequest {
@NotBlank(message = "门店编号不能为空")
private String shopCode;
@NotBlank(message = "完工交付单ID (完工编号)不能为空")
private String deliveryOrderId;
@NotEmpty(message = "验收单不能为空")
private List<String> acceptanceAttachmentUrl;
@NotBlank(message = "门店门头照不能为空")
private String shopDoorwayPhotoUrl;
@NotBlank(message = "门店内景照不能为空")
private String shopInteriorPhotoUrl;
@NotBlank(message = "门店后厨照不能为空")
private String backKitchenPhotoUrl;
@NotNull(message = "验收日期不能为空")
private Date actualAcceptanceTime;
@NotNull(message = "增减项金额不能为空")
private BigDecimal addReduceAmount;
}

View File

@@ -0,0 +1,17 @@
package com.cool.store.request;
import lombok.Data;
/**
* @Author: WangShuo
* @Date: 2025/07/24/11:25
* @Version 1.0
* @注释:
*/
@Data
public class HqtPartnerAcceptanceRequest {
private String shopCode;
private Integer satisfaction;
private String comment;
}

View File

@@ -39,7 +39,7 @@ public class ThreeAcceptanceRequest {
@ApiModelProperty("门店内景照片") @ApiModelProperty("门店内景照片")
private String shopInteriorPhoto; private String shopInteriorPhoto;
@ApiModelProperty("满意度0-低1-中2-高',") @ApiModelProperty("满意度0-低1-中2-高', 3-差4-一般5-好6-非常好")
private Integer satisfaction; private Integer satisfaction;
@ApiModelProperty("网线安装 false-否 true-是") @ApiModelProperty("网线安装 false-否 true-是")

View File

@@ -0,0 +1,45 @@
package com.cool.store.response;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import java.util.Date;
/**
* @Author: WangShuo
* @Date: 2025/07/24/13:50
* @Version 1.0
* @注释:
*/
@Data
public class DecorationDesignResponse {
@ApiModelProperty(value = "设计派单ID")
private String designSheetId;
@ApiModelProperty(value = "设计组长名称")
private String designLeaderName;
@ApiModelProperty(value = "设计师名称")
private String designName;
@ApiModelProperty("设计图URL")
private String designUrl;
@ApiModelProperty(value = "原始照片")
private String originalPhotoUrl;
@ApiModelProperty(value = "效果图")
private String renderingUrl;
@ApiModelProperty(value = "平面布置图")
private String floorPlanUrl;
@ApiModelProperty(value = "设计最新提交时间")
private Date designSubmitTime;
@ApiModelProperty(value = "报价单ID(报价单编号)")
private String quotationSheetId;
@ApiModelProperty(value = "报价员")
private String quoter;
@ApiModelProperty(value = "报价单")
private String quotationUrl;
@ApiModelProperty(value = "报价提交时间")
private Date quotationSubmitTime;
@ApiModelProperty(value = "加盟商签字")
private String partnerAcceptanceSignatures;
}

View File

@@ -0,0 +1,38 @@
package com.cool.store.response;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.persistence.Column;
import java.util.Date;
/**
* @Author: WangShuo
* @Date: 2025/07/24/13:20
* @Version 1.0
* @注释:
*/
@Data
public class MeasureResponse {
@ApiModelProperty("测量派单ID")
private String measurementSheetId;
@ApiModelProperty("测量员")
private String measureUserName;
@ApiModelProperty("设计组")
private String designLeaderName;
@ApiModelProperty("测量日期")
private Date measureDate;
@ApiModelProperty("出图日期")
private Date diagramDate;
@ApiModelProperty("测量图附件")
private String measureUrl;
@ApiModelProperty("最新提交时间")
private Date submitTime;
}

View File

@@ -4,6 +4,9 @@ import com.cool.store.dto.decoration.ThreeAcceptanceDTO;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/** /**
* @Auther: WangShuo * @Auther: WangShuo
* @Date: 2024/05/06/下午5:50 * @Date: 2024/05/06/下午5:50
@@ -12,24 +15,27 @@ import lombok.Data;
*/ */
@Data @Data
public class ThreeSignResponse { public class ThreeSignResponse {
@ApiModelProperty("工程部验收") @ApiModelProperty("完工交付单ID ")
private ThreeAcceptanceDTO engineeringAcceptance; private String deliveryOrderId;
// @ApiModelProperty("工程部验收")
// private ThreeAcceptanceDTO engineeringAcceptance;
@ApiModelProperty("营运部验收") @ApiModelProperty("营运部验收")
private ThreeAcceptanceDTO operationsAcceptance; private ThreeAcceptanceDTO operationsAcceptance;
@ApiModelProperty("加盟商验收") @ApiModelProperty("加盟商验收")
private ThreeAcceptanceDTO partnerAcceptance; private ThreeAcceptanceDTO partnerAcceptance;
@ApiModelProperty("快手号") // @ApiModelProperty("快手号")
private String ksAccount; // private String ksAccount;
@ApiModelProperty("核销手机号") // @ApiModelProperty("核销手机号")
private String verificationPhone; // private String verificationPhone;
@ApiModelProperty("高德、百度定位截图") // @ApiModelProperty("高德、百度定位截图")
private String shopLocationScreenshots; // private String shopLocationScreenshots;
@ApiModelProperty("门店门头照片") @ApiModelProperty("门店门头照片")
private String shopDoorwayPhoto; private String shopDoorwayPhoto;
@ApiModelProperty("门店内景照片") @ApiModelProperty("门店内景照片")
private String shopInteriorPhoto; private String shopInteriorPhoto;
@ApiModelProperty("满意度0-低1-中2-高',") @ApiModelProperty("满意度0-低1-中2-高', 3-差4-一般5-好6-非常好")
private Integer satisfaction; private Integer satisfaction;
@ApiModelProperty("网线安装 false-否 true-是") @ApiModelProperty("网线安装 false-否 true-是")
@@ -40,4 +46,9 @@ public class ThreeSignResponse {
@ApiModelProperty("后厨照片") @ApiModelProperty("后厨照片")
private String backKitchenPhoto; private String backKitchenPhoto;
@ApiModelProperty("验收时间")
private Date actualAcceptanceTime;
@ApiModelProperty("增减项金额")
private BigDecimal addReduceAmount;
} }

View File

@@ -3,6 +3,8 @@ package com.cool.store.vo;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
import lombok.Data; import lombok.Data;
import java.util.Date;
/** /**
* @Author suzhuhong * @Author suzhuhong
@@ -12,14 +14,17 @@ import lombok.Data;
@Data @Data
public class ConstructionDataVO { public class ConstructionDataVO {
@ApiModelProperty("施工派单id")
private String constructionOrderId;
@ApiModelProperty("预计开工时间") @ApiModelProperty("预计开工时间")
private Long constructionPlanStartTime; private Date constructionPlanStartTime;
/** /**
* 预计完工时间 * 预计完工时间
*/ */
@ApiModelProperty("预计完工时间") @ApiModelProperty("预计完工时间")
private Long constructionPlanEndTime; private Date constructionPlanEndTime;
/** /**
* 附件 * 附件
@@ -27,26 +32,7 @@ public class ConstructionDataVO {
@ApiModelProperty("附件") @ApiModelProperty("附件")
private String constructionAnnex; private String constructionAnnex;
/** @ApiModelProperty("进场时间")
* 备注 private Date actualEntryTime;
*/
@ApiModelProperty("备注")
private String constructionRemark;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private Long constructionCreateTime;
/**
* 创建人
*/
@ApiModelProperty("创建人")
private String constructionCreateUser;
@ApiModelProperty("创建人")
private String constructionCreateUserName;
} }

View File

@@ -1,9 +1,6 @@
package com.cool.store.service; package com.cool.store.service;
import com.cool.store.request.AssignDesignerRequest; import com.cool.store.request.*;
import com.cool.store.request.AssignQuotationRequest;
import com.cool.store.request.SubmitDesignDrawingRequest;
import com.cool.store.request.SubmitQuotationSheetRequest;
/** /**
* @Author suzhuhong * @Author suzhuhong
@@ -38,4 +35,30 @@ public interface DecorationDesignInfoService {
* @description:上传最终报价单 * @description:上传最终报价单
*/ */
Boolean submitQuotationSheet(SubmitQuotationSheetRequest request); Boolean submitQuotationSheet(SubmitQuotationSheetRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/23
* @description:施工派单
*/
Boolean submitConstructionOrder(ConstructionOrderRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/24
* @description:实际进场确认
*/
Boolean entryConfirmation (EntryConfirmationRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/24
* @description:施工完成
*/
Boolean constructionCompleted (ConstructionCompletedRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/24
* @description: 装修验收
*/
Boolean decorationAcceptance(HqtDecorationAcceptanceRequest request);
} }

View File

@@ -4,6 +4,7 @@ import com.cool.store.context.LoginUserInfo;
import com.cool.store.request.AssignSurveyorsRequest; import com.cool.store.request.AssignSurveyorsRequest;
import com.cool.store.request.DecorationMeasureRequest; import com.cool.store.request.DecorationMeasureRequest;
import com.cool.store.request.SubmitMeasurementRequest; import com.cool.store.request.SubmitMeasurementRequest;
import com.cool.store.response.MeasureResponse;
import com.cool.store.vo.DecorationMeasureVO; import com.cool.store.vo.DecorationMeasureVO;
public interface DecorationMeasureService { public interface DecorationMeasureService {
@@ -44,4 +45,10 @@ public interface DecorationMeasureService {
* @description:门店测量、上传测量图 * @description:门店测量、上传测量图
*/ */
Boolean submitMeasurementDiagram(SubmitMeasurementRequest request); Boolean submitMeasurementDiagram(SubmitMeasurementRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/23
* @description:获取测量阶段数据
*/
MeasureResponse getMeasureData(Long shopId);
} }

View File

@@ -7,6 +7,7 @@ import com.cool.store.dto.decoration.ThreeAcceptanceDTO;
import com.cool.store.request.*; import com.cool.store.request.*;
import com.cool.store.response.DecorationDesignResponse;
import com.cool.store.response.ThreeSignResponse; import com.cool.store.response.ThreeSignResponse;
import com.cool.store.vo.*; import com.cool.store.vo.*;
import com.cool.store.vo.Fitment.DecorationStageVO; import com.cool.store.vo.Fitment.DecorationStageVO;
@@ -130,7 +131,7 @@ public interface DecorationService {
* @param shopId * @param shopId
* @return * @return
*/ */
DecorationDesignVO getDecorationDesign(Long shopId); DecorationDesignResponse getDecorationDesign(Long shopId);
/** /**

View File

@@ -1,6 +1,9 @@
package com.cool.store.service; package com.cool.store.service;
import com.cool.store.request.ConfirmQuotationRequest;
import com.cool.store.request.HqtBuildRequest; import com.cool.store.request.HqtBuildRequest;
import com.cool.store.request.HqtPartnerAcceptanceRequest;
/** /**
* @Author: WangShuo * @Author: WangShuo
@@ -9,6 +12,23 @@ import com.cool.store.request.HqtBuildRequest;
* @注释: * @注释:
*/ */
public interface HqtAPIService { public interface HqtAPIService {
/**
* @Auther: wangshuo
* @Date: 2025/7/23
* @description:红圈通建店
*/
void pushHqtBuild(HqtBuildRequest request); void pushHqtBuild(HqtBuildRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/23
* @description: 加盟商确认报价单
*/
void confirmQuotation(ConfirmQuotationRequest request);
/**
* @Auther: wangshuo
* @Date: 2025/7/24
* @description: 加盟商验收、评价
*/
void hqtPartnerAcceptance(HqtPartnerAcceptanceRequest request);
} }

View File

@@ -1,24 +1,21 @@
package com.cool.store.service.impl; package com.cool.store.service.impl;
import com.cool.store.dao.DecorationDesignInfoDAO; import com.cool.store.dao.*;
import com.cool.store.dao.ShopInfoDAO; import com.cool.store.entity.*;
import com.cool.store.dao.ShopStageInfoDAO;
import com.cool.store.entity.DecorationDesignInfoDO;
import com.cool.store.entity.ShopInfoDO;
import com.cool.store.entity.ShopStageInfoDO;
import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.enums.ErrorCodeEnum;
import com.cool.store.enums.SMSMsgEnum;
import com.cool.store.enums.point.ShopSubStageEnum; import com.cool.store.enums.point.ShopSubStageEnum;
import com.cool.store.enums.point.ShopSubStageStatusEnum; import com.cool.store.enums.point.ShopSubStageStatusEnum;
import com.cool.store.exception.ServiceException; import com.cool.store.exception.ServiceException;
import com.cool.store.request.AssignDesignerRequest; import com.cool.store.request.*;
import com.cool.store.request.AssignQuotationRequest;
import com.cool.store.request.SubmitDesignDrawingRequest;
import com.cool.store.request.SubmitQuotationSheetRequest;
import com.cool.store.service.DecorationDesignInfoService; import com.cool.store.service.DecorationDesignInfoService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.Date; import java.util.Date;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Collectors; import java.util.stream.Collectors;
/** /**
@@ -29,35 +26,55 @@ import java.util.stream.Collectors;
@Service @Service
public class DecorationDesignInfoServiceImpl implements DecorationDesignInfoService { public class DecorationDesignInfoServiceImpl implements DecorationDesignInfoService {
@Resource
private AcceptanceInfoDAO acceptanceInfoDAO;
@Resource
private CommonService commonService;
@Resource @Resource
private DecorationDesignInfoDAO decorationDesignInfoDAO; private DecorationDesignInfoDAO decorationDesignInfoDAO;
@Resource @Resource
private ShopInfoDAO shopInfoDAO; private ShopInfoDAO shopInfoDAO;
@Resource @Resource
private ShopStageInfoDAO shopStageInfoDAO; private ShopStageInfoDAO shopStageInfoDAO;
@Resource
private LineInfoDAO lineInfoDAO;
@Override @Override
@Transactional(rollbackFor = Exception.class)
public Boolean assignDesigner(AssignDesignerRequest request) { public Boolean assignDesigner(AssignDesignerRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode()); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId()); ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9);
if (designInfoDO == null){ if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_00.getShopSubStageStatus())){
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE); throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
} }
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null) {
designInfoDO = new DecorationDesignInfoDO();
designInfoDO.setShopId(shopInfoDO.getId());
designInfoDO.setCreateTime(new Date());
}
designInfoDO.setDesignName(request.getDesignName()); designInfoDO.setDesignName(request.getDesignName());
designInfoDO.setDesignSubmitTime(new Date());
designInfoDO.setDesignSheetId(request.getDesignSheetId()); designInfoDO.setDesignSheetId(request.getDesignSheetId());
designInfoDO.setUpdateTime(new Date()); designInfoDO.setUpdateTime(new Date());
if (designInfoDO.getId() == null) {
decorationDesignInfoDAO.insertSelective(designInfoDO);
} else {
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO); decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9); }
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_90.getShopSubStageStatus())){
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_90.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901); shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901);
} }
return true; return true;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class)
public Boolean submitDesignDrawing(SubmitDesignDrawingRequest request) { public Boolean submitDesignDrawing(SubmitDesignDrawingRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode()); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId()); DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null){ if (designInfoDO == null) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE); throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
} }
designInfoDO.setDesignSheetId(request.getDesignSheetId()); designInfoDO.setDesignSheetId(request.getDesignSheetId());
@@ -66,19 +83,21 @@ public class DecorationDesignInfoServiceImpl implements DecorationDesignInfoServ
designInfoDO.setRenderingUrl(String.join(",", request.getRenderingUrl())); designInfoDO.setRenderingUrl(String.join(",", request.getRenderingUrl()));
designInfoDO.setFloorPlanUrl(String.join(",", request.getFloorPlanUrl())); designInfoDO.setFloorPlanUrl(String.join(",", request.getFloorPlanUrl()));
designInfoDO.setUpdateTime(new Date()); designInfoDO.setUpdateTime(new Date());
designInfoDO.setDesignSubmitTime(new Date());
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO); decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9); ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901.getShopSubStageStatus())){ if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902); shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902);
} }
return true; return true;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class)
public Boolean assignQuotation(AssignQuotationRequest request) { public Boolean assignQuotation(AssignQuotationRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode()); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId()); DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null){ if (designInfoDO == null) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE); throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
} }
designInfoDO.setQuotationSheetId(request.getQuotationSheetId()); designInfoDO.setQuotationSheetId(request.getQuotationSheetId());
@@ -87,17 +106,19 @@ public class DecorationDesignInfoServiceImpl implements DecorationDesignInfoServ
designInfoDO.setUpdateTime(new Date()); designInfoDO.setUpdateTime(new Date());
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO); decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9); ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902.getShopSubStageStatus())){ if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_903); shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_903);
} }
return true; return true;
} }
@Override @Override
@Transactional(rollbackFor = Exception.class)
public Boolean submitQuotationSheet(SubmitQuotationSheetRequest request) { public Boolean submitQuotationSheet(SubmitQuotationSheetRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode()); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId()); DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null){ if (designInfoDO == null) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE); throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
} }
designInfoDO.setQuotationSheetId(request.getQuotationSheetId()); designInfoDO.setQuotationSheetId(request.getQuotationSheetId());
@@ -105,6 +126,93 @@ public class DecorationDesignInfoServiceImpl implements DecorationDesignInfoServ
designInfoDO.setQuotationSubmitTime(new Date()); designInfoDO.setQuotationSubmitTime(new Date());
designInfoDO.setUpdateTime(new Date()); designInfoDO.setUpdateTime(new Date());
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO); decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_9);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_903.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_905);
Map<String, String> templateParam = new HashMap<>();
templateParam.put("shopName", shopInfoDO.getShopName());
commonService.sendSms(lineInfoDO.getMobile(), SMSMsgEnum.DESIGN_STAGE, templateParam);
}
return true; return true;
} }
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean submitConstructionOrder(ConstructionOrderRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
}
designInfoDO.setConstructionOrderId(request.getConstructionOrderId());
designInfoDO.setConstructionPlanStartTime(request.getConstructionPlanStartTime());
designInfoDO.setConstructionPlanEndTime(request.getConstructionPlanEndTime());
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_11);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_110.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_110_5);
}
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean entryConfirmation(EntryConfirmationRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
}
designInfoDO.setConstructionOrderId(request.getConstructionOrderId());
designInfoDO.setActualEntryTime(request.getActualEntryTime());
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_11);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_110_5.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_111);
}
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean constructionCompleted(ConstructionCompletedRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
}
designInfoDO.setConstructionOrderId(request.getConstructionOrderId());
decorationDesignInfoDAO.updateByPrimaryKeySelective(designInfoDO);
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_11);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_111.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_112);
}
return true;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean decorationAcceptance(HqtDecorationAcceptanceRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_12);
if (!shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122.getShopSubStageStatus())
&& !shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_123.getShopSubStageStatus())) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
}
AcceptanceInfoDO acceptanceInfoDO = acceptanceInfoDAO.selectByShopId(shopInfoDO.getId());
acceptanceInfoDO.setDeliveryOrderId(request.getDeliveryOrderId());
acceptanceInfoDO.setActualAcceptanceTime(request.getActualAcceptanceTime());
acceptanceInfoDO.setAcceptanceAttachment(String.join(",", request.getAcceptanceAttachmentUrl()));
acceptanceInfoDO.setShopDoorwayPhoto(request.getShopDoorwayPhotoUrl());
acceptanceInfoDO.setShopInteriorPhoto(request.getShopInteriorPhotoUrl());
acceptanceInfoDO.setBackKitchenPhoto(request.getBackKitchenPhotoUrl());
acceptanceInfoDO.setAddReduceAmount(request.getAddReduceAmount());
acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO);
if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(shopInfoDO.getId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_123);
}
return true;
}
} }

View File

@@ -16,8 +16,10 @@ import com.cool.store.mapper.LineInfoMapper;
import com.cool.store.request.AssignSurveyorsRequest; import com.cool.store.request.AssignSurveyorsRequest;
import com.cool.store.request.DecorationMeasureRequest; import com.cool.store.request.DecorationMeasureRequest;
import com.cool.store.request.SubmitMeasurementRequest; import com.cool.store.request.SubmitMeasurementRequest;
import com.cool.store.response.MeasureResponse;
import com.cool.store.service.DecorationMeasureService; import com.cool.store.service.DecorationMeasureService;
import com.cool.store.utils.RedisUtilPool; import com.cool.store.utils.RedisUtilPool;
import com.cool.store.utils.poi.StringUtils;
import com.cool.store.vo.DecorationMeasureVO; import com.cool.store.vo.DecorationMeasureVO;
import lombok.RequiredArgsConstructor; import lombok.RequiredArgsConstructor;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -179,13 +181,14 @@ public class DecorationMeasureServiceImpl implements DecorationMeasureService {
public Boolean assignSurveyors(AssignSurveyorsRequest request) { public Boolean assignSurveyors(AssignSurveyorsRequest request) {
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode()); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfoByShopCode(request.getShopCode());
ShopStageInfoDO shopStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_8_6); ShopStageInfoDO shopStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfoDO.getId(), ShopSubStageEnum.SHOP_STAGE_8_6);
if (shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_00.getShopSubStageStatus())){ if (shopStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_00.getShopSubStageStatus())) {
throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE); throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_NOT_OPERATE);
} }
DecorationMeasureDO measureDAOByShopId = decorationMeasureDAO.getByShopId(shopInfoDO.getId()); DecorationMeasureDO measureDAOByShopId = decorationMeasureDAO.getByShopId(shopInfoDO.getId());
if (measureDAOByShopId == null) { if (measureDAOByShopId == null) {
measureDAOByShopId = new DecorationMeasureDO(); measureDAOByShopId = new DecorationMeasureDO();
measureDAOByShopId.setDeleted(false); measureDAOByShopId.setDeleted(false);
measureDAOByShopId.setShopId(shopInfoDO.getId());
measureDAOByShopId.setCreateTime(new Date()); measureDAOByShopId.setCreateTime(new Date());
} }
measureDAOByShopId.setShopId(shopInfoDO.getId()); measureDAOByShopId.setShopId(shopInfoDO.getId());
@@ -200,12 +203,13 @@ public class DecorationMeasureServiceImpl implements DecorationMeasureService {
decorationMeasureDAO.updateByPrimaryKeySelective(measureDAOByShopId); decorationMeasureDAO.updateByPrimaryKeySelective(measureDAOByShopId);
} }
DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId()); DecorationDesignInfoDO designInfoDO = decorationDesignInfoDAO.getByShopId(shopInfoDO.getId());
if (designInfoDO == null){ if (designInfoDO == null) {
designInfoDO = new DecorationDesignInfoDO(); designInfoDO = new DecorationDesignInfoDO();
designInfoDO.setShopId(shopInfoDO.getId()); designInfoDO.setShopId(shopInfoDO.getId());
designInfoDO.setCreateTime(new Date()); designInfoDO.setCreateTime(new Date());
} }
designInfoDO.setDesignLeaderName(request.getDesignLeaderName()); designInfoDO.setDesignLeaderName(request.getDesignLeaderName());
designInfoDO.setDesignSubmitTime(new Date());
designInfoDO.setUpdateTime(new Date()); designInfoDO.setUpdateTime(new Date());
if (designInfoDO.getId() == null) { if (designInfoDO.getId() == null) {
decorationDesignInfoDAO.insertSelective(designInfoDO); decorationDesignInfoDAO.insertSelective(designInfoDO);
@@ -233,4 +237,31 @@ public class DecorationMeasureServiceImpl implements DecorationMeasureService {
} }
return true; return true;
} }
@Override
public MeasureResponse getMeasureData(Long shopId) {
MeasureResponse response = new MeasureResponse();
DecorationMeasureDO measureDAOByShopId = decorationMeasureDAO.getByShopId(shopId);
if (measureDAOByShopId == null) {
return response;
}
response.setMeasureUrl(measureDAOByShopId.getMeasureUrl());
if (StringUtils.isBlank(measureDAOByShopId.getMeasureUserName())
&& StringUtils.isNotBlank(measureDAOByShopId.getMeasureUserId())) {
response.setMeasureUserName(enterpriseUserDAO.getUserName(measureDAOByShopId.getMeasureUserId()));
} else {
response.setMeasureUserName(measureDAOByShopId.getMeasureUserName());
}
if (StringUtils.isBlank(measureDAOByShopId.getDesignLeaderName())
&& StringUtils.isNotBlank(measureDAOByShopId.getDesignUserId())) {
response.setDesignLeaderName(enterpriseUserDAO.getUserName(measureDAOByShopId.getDesignUserId()));
} else {
response.setDesignLeaderName(measureDAOByShopId.getDesignLeaderName());
}
response.setMeasureDate(measureDAOByShopId.getMeasureDate());
response.setDiagramDate(measureDAOByShopId.getDiagramDate());
response.setMeasurementSheetId(measureDAOByShopId.getMeasurementSheetId());
response.setSubmitTime(measureDAOByShopId.getUpdateTime());
return response;
}
} }

View File

@@ -15,6 +15,7 @@ import com.cool.store.exception.ServiceException;
import com.cool.store.mapper.LineInfoMapper; import com.cool.store.mapper.LineInfoMapper;
import com.cool.store.mapper.ShopInfoMapper; import com.cool.store.mapper.ShopInfoMapper;
import com.cool.store.request.*; import com.cool.store.request.*;
import com.cool.store.response.DecorationDesignResponse;
import com.cool.store.response.ThreeSignResponse; import com.cool.store.response.ThreeSignResponse;
import com.cool.store.service.*; import com.cool.store.service.*;
import com.cool.store.utils.CoolDateUtils; import com.cool.store.utils.CoolDateUtils;
@@ -93,6 +94,8 @@ public class DecorationServiceImpl implements DecorationService {
@Resource @Resource
EnterpriseUserRoleDao enterpriseUserRoleDao; EnterpriseUserRoleDao enterpriseUserRoleDao;
@Resource
private HqtAPIService hqtAPIService;
@Override @Override
public DesignInfoVo DesignInfo(Long shopId) { public DesignInfoVo DesignInfo(Long shopId) {
@@ -362,22 +365,27 @@ public class DecorationServiceImpl implements DecorationService {
acceptanceInfoDO.setSatisfaction(request.getSatisfaction()); acceptanceInfoDO.setSatisfaction(request.getSatisfaction());
acceptanceInfoDO.setIsNetworkCable(request.getIsNetworkCable()); acceptanceInfoDO.setIsNetworkCable(request.getIsNetworkCable());
acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO); acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO);
}
//更新阶段状态验收中 //更新阶段状态验收中
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122);
ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(request.getShopId()); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(request.getShopId());
LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId()); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_122);
List<EnterpriseUserDO> sendUsers = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.CONSTRUCTION_CUSTOMER, shopInfoDO.getRegionId()); HqtPartnerAcceptanceRequest hqtPartnerAcceptanceRequest = new HqtPartnerAcceptanceRequest();
if (CollectionUtils.isNotEmpty(sendUsers)) { hqtPartnerAcceptanceRequest.setShopCode(shopInfoDO.getShopCode());
List<String> sendUserIds = sendUsers.stream().map(enterpriseUserDO -> enterpriseUserDO.getUserId()).collect(Collectors.toList()); hqtPartnerAcceptanceRequest.setSatisfaction(request.getSatisfaction());
HashMap<String, String> map = new HashMap<>(); hqtPartnerAcceptanceRequest.setComment(request.getPartnerAcceptance().getRemark());
map.put("partnerUsername", lineInfoDO.getUsername()); hqtAPIService.hqtPartnerAcceptance(hqtPartnerAcceptanceRequest);
map.put("partnerMobile", lineInfoDO.getMobile());
map.put("storeName", shopInfoDO.getShopName());
commonService.sendQWMessage(sendUserIds,
MessageEnum.MESSAGE_37,
map);
} }
//LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(shopInfoDO.getLineId());
// List<EnterpriseUserDO> sendUsers = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.CONSTRUCTION_CUSTOMER, shopInfoDO.getRegionId());
// if (CollectionUtils.isNotEmpty(sendUsers)) {
// List<String> sendUserIds = sendUsers.stream().map(enterpriseUserDO -> enterpriseUserDO.getUserId()).collect(Collectors.toList());
// HashMap<String, String> map = new HashMap<>();
// map.put("partnerUsername", lineInfoDO.getUsername());
// map.put("partnerMobile", lineInfoDO.getMobile());
// map.put("storeName", shopInfoDO.getShopName());
// commonService.sendQWMessage(sendUserIds,
// MessageEnum.MESSAGE_37,
// map);
// }
return Boolean.TRUE; return Boolean.TRUE;
} }
@@ -566,27 +574,27 @@ public class DecorationServiceImpl implements DecorationService {
if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_90.getShopSubStageStatus().equals(subStage.getShopSubStageStatus())) { if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_90.getShopSubStageStatus().equals(subStage.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901);
// 给设计师发送企业微信消息 // 给设计师发送企业微信消息
sendMeasureUserMessage(request.getShopId(), decorationDesignInfoDO.getDesignUserId(), MessageEnum.MESSAGE_55); // sendMeasureUserMessage(request.getShopId(), decorationDesignInfoDO.getDesignUserId(), MessageEnum.MESSAGE_55);
return Boolean.TRUE; return Boolean.TRUE;
} }
if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901.getShopSubStageStatus().equals(subStage.getShopSubStageStatus())) { if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901.getShopSubStageStatus().equals(subStage.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902);
List<String> quotationOfficeList = enterpriseUserRoleDao.selectUserIdsByRoleIdList(Collections.singletonList(UserRoleEnum.QUOTATION_OFFICE.getCode())); // List<String> quotationOfficeList = enterpriseUserRoleDao.selectUserIdsByRoleIdList(Collections.singletonList(UserRoleEnum.QUOTATION_OFFICE.getCode()));
HashMap<String, String> map = new HashMap<>(4); // HashMap<String, String> map = new HashMap<>(4);
map.put("partnerUsername", lineInfo.getUsername()); // map.put("partnerUsername", lineInfo.getUsername());
map.put("partnerMobile", lineInfo.getMobile()); // map.put("partnerMobile", lineInfo.getMobile());
map.put("storeName", shopInfo.getShopName()); // map.put("storeName", shopInfo.getShopName());
commonService.sendQWMessage( // commonService.sendQWMessage(
quotationOfficeList, // quotationOfficeList,
MessageEnum.MESSAGE_59, // MessageEnum.MESSAGE_59,
map // map
); // );
return Boolean.TRUE; return Boolean.TRUE;
} }
if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902.getShopSubStageStatus().equals(subStage.getShopSubStageStatus())) { if (ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_902.getShopSubStageStatus().equals(subStage.getShopSubStageStatus())) {
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_903); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_903);
// 给报价员发送企业微信消息 // 给报价员发送企业微信消息
sendMeasureUserMessage(request.getShopId(), request.getQuotationUserId(), MessageEnum.MESSAGE_55); // sendMeasureUserMessage(request.getShopId(), request.getQuotationUserId(), MessageEnum.MESSAGE_55);
return Boolean.TRUE; return Boolean.TRUE;
} }
//更新设计阶段状态=待确认,装修子流程=待进场 //更新设计阶段状态=待确认,装修子流程=待进场
@@ -596,17 +604,17 @@ public class DecorationServiceImpl implements DecorationService {
templateParam.put("shopName", shopInfo.getShopName()); templateParam.put("shopName", shopInfo.getShopName());
commonService.sendSms(lineInfo.getMobile(), SMSMsgEnum.DESIGN_STAGE, templateParam); commonService.sendSms(lineInfo.getMobile(), SMSMsgEnum.DESIGN_STAGE, templateParam);
// 发送企业微信消息 // 发送企业微信消息
List<EnterpriseUserDO> sendUsers = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.CONSTRUCTION_CUSTOMER, shopInfo.getRegionId()); // List<EnterpriseUserDO> sendUsers = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.CONSTRUCTION_CUSTOMER, shopInfo.getRegionId());
if (CollectionUtils.isNotEmpty(sendUsers)) { // if (CollectionUtils.isNotEmpty(sendUsers)) {
List<String> sendUserIds = sendUsers.stream().map(enterpriseUserDO -> enterpriseUserDO.getUserId()).collect(Collectors.toList()); // List<String> sendUserIds = sendUsers.stream().map(enterpriseUserDO -> enterpriseUserDO.getUserId()).collect(Collectors.toList());
HashMap<String, String> map = new HashMap<>(); // HashMap<String, String> map = new HashMap<>();
map.put("partnerUsername", lineInfo.getUsername()); // map.put("partnerUsername", lineInfo.getUsername());
map.put("partnerMobile", lineInfo.getMobile()); // map.put("partnerMobile", lineInfo.getMobile());
map.put("storeName", shopInfo.getShopName()); // map.put("storeName", shopInfo.getShopName());
commonService.sendQWMessage(sendUserIds, // commonService.sendQWMessage(sendUserIds,
MessageEnum.MESSAGE_37, // MessageEnum.MESSAGE_37,
map); // map);
} // }
return Boolean.TRUE; return Boolean.TRUE;
} }
} else { } else {
@@ -616,39 +624,60 @@ public class DecorationServiceImpl implements DecorationService {
//更新装修设计状态 //更新装修设计状态
shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901); shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_901);
// 给设计师发送企业微信消息 // 给设计师发送企业微信消息
sendMeasureUserMessage(request.getShopId(), decorationDesignInfoDO.getDesignUserId(), MessageEnum.MESSAGE_55); // sendMeasureUserMessage(request.getShopId(), decorationDesignInfoDO.getDesignUserId(), MessageEnum.MESSAGE_55);
} }
return Boolean.TRUE; return Boolean.TRUE;
} }
@Override @Override
public DecorationDesignVO getDecorationDesign(Long shopId) { public DecorationDesignResponse getDecorationDesign(Long shopId) {
if (shopId == null) { if (shopId == null) {
throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED); throw new ServiceException(ErrorCodeEnum.PARAMS_REQUIRED);
} }
DecorationDesignInfoDO decoration = decorationDesignInfoDAO.getByShopId(shopId); DecorationDesignInfoDO decoration = decorationDesignInfoDAO.getByShopId(shopId);
DecorationDesignResponse response = new DecorationDesignResponse();
if (decoration == null) { if (decoration == null) {
//查询测量阶段的设计组长 //查询测量阶段的设计组长
DecorationMeasureDO measureDO = decorationMeasureDAO.getByShopId(shopId); DecorationMeasureDO measureDO = decorationMeasureDAO.getByShopId(shopId);
DecorationDesignVO decorationDesignVO = new DecorationDesignVO();
if (measureDO != null) { if (measureDO != null) {
decorationDesignVO.setDesignLeaderId(measureDO.getDesignUserId()); if (StringUtils.isNotBlank(measureDO.getDesignUserId()) && StringUtils.isBlank(measureDO.getDesignLeaderName())) {
String userName = enterpriseUserDAO.getUserName(measureDO.getDesignUserId()); String userName = enterpriseUserDAO.getUserName(measureDO.getDesignUserId());
decorationDesignVO.setDesignLeaderName(userName); response.setDesignLeaderName(userName);
} else {
response.setDesignLeaderName(measureDO.getDesignLeaderName());
} }
return decorationDesignVO;
} }
DecorationDesignVO decorationDesignVO = BeanUtil.toBean(decoration, DecorationDesignVO.class); return response;
//查询员工名称 }
Set<String> userIds = new HashSet<>(); response.setDesignSheetId(decoration.getDesignSheetId());
Optional.ofNullable(decorationDesignVO.getDesignLeaderId()).ifPresent(userIds::add); if (StringUtils.isNotBlank(decoration.getDesignUserId()) && StringUtils.isBlank(decoration.getDesignName())) {
Optional.ofNullable(decorationDesignVO.getDesignUserId()).ifPresent(userIds::add); response.setDesignName(enterpriseUserDAO.getUserName(decoration.getDesignUserId()));
Optional.ofNullable(decorationDesignVO.getQuotationUserId()).ifPresent(userIds::add); } else {
Map<String, String> userNameMap = enterpriseUserDAO.getUserNameMap(new ArrayList<>(userIds)); response.setDesignName(decoration.getDesignName());
decorationDesignVO.setDesignLeaderName(userNameMap.get(decorationDesignVO.getDesignLeaderId())); }
decorationDesignVO.setQuotationUserName(userNameMap.get(decorationDesignVO.getQuotationUserId())); if (StringUtils.isNotBlank(decoration.getDesignLeaderId()) && StringUtils.isBlank(decoration.getDesignLeaderName())) {
decorationDesignVO.setDesignUserName(userNameMap.get(decorationDesignVO.getDesignUserId())); String userName = enterpriseUserDAO.getUserName(decoration.getDesignLeaderId());
return decorationDesignVO; response.setDesignLeaderName(userName);
} else {
response.setDesignLeaderName(decoration.getDesignLeaderName());
}
response.setOriginalPhotoUrl(decoration.getOriginalPhotoUrl());
response.setDesignUrl(decoration.getDesignUrl());
response.setRenderingUrl(decoration.getRenderingUrl());
response.setFloorPlanUrl(decoration.getFloorPlanUrl());
response.setDesignSubmitTime(decoration.getDesignSubmitTime());
response.setQuotationUrl(decoration.getQuotationUrl());
response.setQuotationSheetId(decoration.getQuotationSheetId());
if (StringUtils.isNotBlank(decoration.getQuotationUserId()) && StringUtils.isBlank(decoration.getQuoter())) {
String userName = enterpriseUserDAO.getUserName(decoration.getQuotationUserId());
response.setQuoter(userName);
} else {
response.setQuoter(decoration.getQuoter());
}
response.setQuotationUrl(decoration.getQuotationUrl());
response.setQuotationSubmitTime(decoration.getQuotationSubmitTime());
response.setPartnerAcceptanceSignatures(decoration.getPartnerAcceptanceSignatures());
return response;
} }
@Override @Override
@@ -689,15 +718,10 @@ public class DecorationServiceImpl implements DecorationService {
return constructionDataVO; return constructionDataVO;
} }
constructionDataVO.setConstructionAnnex(decoration.getConstructionAnnex()); constructionDataVO.setConstructionAnnex(decoration.getConstructionAnnex());
constructionDataVO.setConstructionRemark(decoration.getConstructionRemark()); constructionDataVO.setConstructionPlanStartTime( decoration.getConstructionPlanStartTime());
constructionDataVO.setConstructionPlanStartTime(decoration.getConstructionPlanStartTime() != null ? decoration.getConstructionPlanStartTime().getTime() : null); constructionDataVO.setConstructionPlanEndTime(decoration.getConstructionPlanEndTime());
constructionDataVO.setConstructionPlanEndTime(decoration.getConstructionPlanEndTime() != null ? decoration.getConstructionPlanEndTime().getTime() : null); constructionDataVO.setConstructionOrderId(decoration.getConstructionOrderId());
constructionDataVO.setConstructionCreateTime(decoration.getConstructionCreateTime() != null ? decoration.getConstructionCreateTime().getTime() : null); constructionDataVO.setActualEntryTime(decoration.getActualEntryTime());
constructionDataVO.setConstructionCreateUser(decoration.getConstructionCreateUser());
if (StringUtils.isNotEmpty(decoration.getConstructionCreateUser())) {
EnterpriseUserDO user = enterpriseUserDAO.getUserInfoById(decoration.getConstructionCreateUser());
constructionDataVO.setConstructionCreateUserName(user.getName());
}
return constructionDataVO; return constructionDataVO;
} }
@@ -705,12 +729,12 @@ public class DecorationServiceImpl implements DecorationService {
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
public Boolean confirmDesign(DecorationDesignRequest request, LoginUserInfo user) { public Boolean confirmDesign(DecorationDesignRequest request, LoginUserInfo user) {
DecorationDesignInfoDO decoration = decorationDesignInfoDAO.getByShopId(request.getShopId()); DecorationDesignInfoDO decoration = decorationDesignInfoDAO.getByShopId(request.getShopId());
if (StringUtils.isBlank(decoration.getQuotationUrl())) { // if (StringUtils.isBlank(decoration.getQuotationUrl())) {
throw new ServiceException(ErrorCodeEnum.QUOTATION_URL_REQUIRED); // throw new ServiceException(ErrorCodeEnum.QUOTATION_URL_REQUIRED);
} // }
if (StringUtils.isBlank(decoration.getDesignUrl())) { // if (StringUtils.isBlank(decoration.getDesignUrl())) {
throw new ServiceException(ErrorCodeEnum.DESIGN_URL_REQUIRED); // throw new ServiceException(ErrorCodeEnum.DESIGN_URL_REQUIRED);
} // }
//重复提交校验 3秒内不能重复提交 //重复提交校验 3秒内不能重复提交
String lockKey = "confirmDesign:" + request.getShopId(); String lockKey = "confirmDesign:" + request.getShopId();
String lockValue = UUID.randomUUID().toString(); String lockValue = UUID.randomUUID().toString();
@@ -718,13 +742,22 @@ public class DecorationServiceImpl implements DecorationService {
if (!acquired) { if (!acquired) {
throw new ServiceException(ErrorCodeEnum.DUPLICATE_SUBMISSION); throw new ServiceException(ErrorCodeEnum.DUPLICATE_SUBMISSION);
} }
DecorationDesignInfoDO decorationDesignInfoDO = request.toDecorationDesignInfoDO(); ThreeAcceptanceDTO threeAcceptanceDTO = request.getPartnerAcceptanceSignatures();
if (Objects.nonNull(decoration)) { threeAcceptanceDTO.setAcceptanceTime(new Date());
BeanUtil.copyProperties(decorationDesignInfoDO, decoration, "id"); threeAcceptanceDTO.setStatus(CommonConstants.ONE);
threeAcceptanceDTO.setResult(CommonConstants.ONE);
threeAcceptanceDTO.setRemark(threeAcceptanceDTO.getRemark() == null ? "" : threeAcceptanceDTO.getRemark());
decoration.setPartnerAcceptanceSignatures(JSONObject.toJSONString(threeAcceptanceDTO));
decorationDesignInfoDAO.updateByPrimaryKeySelective(decoration); decorationDesignInfoDAO.updateByPrimaryKeySelective(decoration);
}
//更新装修设计状态 //更新装修设计状态
shopStageInfoDAO.batchUpdateShopStageStatus(request.getShopId(), Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_91)); shopStageInfoDAO.batchUpdateShopStageStatus(request.getShopId(), Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_91, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_110));
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(request.getShopId());
//推送给HQT
ConfirmQuotationRequest confirmQuotationRequest = new ConfirmQuotationRequest();
confirmQuotationRequest.setShopCode(shopInfo.getShopCode());
confirmQuotationRequest.setQuotationSheetId(decoration.getQuotationSheetId());
confirmQuotationRequest.setStatus(CommonConstants.ONE);
hqtAPIService.confirmQuotation(confirmQuotationRequest);
return Boolean.TRUE; return Boolean.TRUE;
} }
@@ -799,11 +832,11 @@ public class DecorationServiceImpl implements DecorationService {
if (Objects.isNull(acceptanceInfoDO)) { if (Objects.isNull(acceptanceInfoDO)) {
return threeSignResponse; return threeSignResponse;
} }
//工程部 // //工程部
if (StringUtils.isNotEmpty(acceptanceInfoDO.getEngineeringAcceptanceSignatures())) { // if (StringUtils.isNotEmpty(acceptanceInfoDO.getEngineeringAcceptanceSignatures())) {
ThreeAcceptanceDTO engineering = JSONObject.parseObject(acceptanceInfoDO.getEngineeringAcceptanceSignatures(), ThreeAcceptanceDTO.class); // ThreeAcceptanceDTO engineering = JSONObject.parseObject(acceptanceInfoDO.getEngineeringAcceptanceSignatures(), ThreeAcceptanceDTO.class);
threeSignResponse.setEngineeringAcceptance(engineering); // threeSignResponse.setEngineeringAcceptance(engineering);
} // }
//营运部 //营运部
if (StringUtils.isNotEmpty(acceptanceInfoDO.getOperationsAcceptanceSignatures())) { if (StringUtils.isNotEmpty(acceptanceInfoDO.getOperationsAcceptanceSignatures())) {
ThreeAcceptanceDTO operations = JSONObject.parseObject(acceptanceInfoDO.getOperationsAcceptanceSignatures(), ThreeAcceptanceDTO.class); ThreeAcceptanceDTO operations = JSONObject.parseObject(acceptanceInfoDO.getOperationsAcceptanceSignatures(), ThreeAcceptanceDTO.class);
@@ -814,15 +847,18 @@ public class DecorationServiceImpl implements DecorationService {
ThreeAcceptanceDTO partner = JSONObject.parseObject(acceptanceInfoDO.getPartnerAcceptanceSignatures(), ThreeAcceptanceDTO.class); ThreeAcceptanceDTO partner = JSONObject.parseObject(acceptanceInfoDO.getPartnerAcceptanceSignatures(), ThreeAcceptanceDTO.class);
threeSignResponse.setPartnerAcceptance(partner); threeSignResponse.setPartnerAcceptance(partner);
} }
threeSignResponse.setKsAccount(acceptanceInfoDO.getKsAccount()); // threeSignResponse.setKsAccount(acceptanceInfoDO.getKsAccount());
threeSignResponse.setVerificationPhone(acceptanceInfoDO.getVerificationMobile()); // threeSignResponse.setVerificationPhone(acceptanceInfoDO.getVerificationMobile());
threeSignResponse.setShopLocationScreenshots(acceptanceInfoDO.getShopLocationScreenshots()); // threeSignResponse.setShopLocationScreenshots(acceptanceInfoDO.getShopLocationScreenshots());
threeSignResponse.setShopDoorwayPhoto(acceptanceInfoDO.getShopDoorwayPhoto()); threeSignResponse.setShopDoorwayPhoto(acceptanceInfoDO.getShopDoorwayPhoto());
threeSignResponse.setShopInteriorPhoto(acceptanceInfoDO.getShopInteriorPhoto()); threeSignResponse.setShopInteriorPhoto(acceptanceInfoDO.getShopInteriorPhoto());
threeSignResponse.setSatisfaction(acceptanceInfoDO.getSatisfaction()); threeSignResponse.setSatisfaction(acceptanceInfoDO.getSatisfaction());
threeSignResponse.setIsNetworkCable(acceptanceInfoDO.getIsNetworkCable()); threeSignResponse.setIsNetworkCable(acceptanceInfoDO.getIsNetworkCable());
threeSignResponse.setAcceptanceAttachment(acceptanceInfoDO.getAcceptanceAttachment()); threeSignResponse.setAcceptanceAttachment(acceptanceInfoDO.getAcceptanceAttachment());
threeSignResponse.setBackKitchenPhoto(acceptanceInfoDO.getBackKitchenPhoto()); threeSignResponse.setBackKitchenPhoto(acceptanceInfoDO.getBackKitchenPhoto());
threeSignResponse.setActualAcceptanceTime(acceptanceInfoDO.getActualAcceptanceTime());
threeSignResponse.setAddReduceAmount(acceptanceInfoDO.getAddReduceAmount());
threeSignResponse.setDeliveryOrderId(acceptanceInfoDO.getDeliveryOrderId());
return threeSignResponse; return threeSignResponse;
} }

View File

@@ -1,6 +1,8 @@
package com.cool.store.service.impl; package com.cool.store.service.impl;
import com.cool.store.request.ConfirmQuotationRequest;
import com.cool.store.request.HqtBuildRequest; import com.cool.store.request.HqtBuildRequest;
import com.cool.store.request.HqtPartnerAcceptanceRequest;
import com.cool.store.service.HqtAPIService; import com.cool.store.service.HqtAPIService;
import org.springframework.scheduling.annotation.Async; import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@@ -18,4 +20,15 @@ public class HqtAPIServiceImpl implements HqtAPIService {
public void pushHqtBuild(HqtBuildRequest request) { public void pushHqtBuild(HqtBuildRequest request) {
} }
@Override
// @Async
public void confirmQuotation(ConfirmQuotationRequest request) {
}
//@Async
@Override
public void hqtPartnerAcceptance(HqtPartnerAcceptanceRequest request) {
}
} }

View File

@@ -113,5 +113,39 @@ public class OpenApiController {
return ApiResponse.success(decorationDesignInfoService.assignQuotation(request)); return ApiResponse.success(decorationDesignInfoService.assignQuotation(request));
} }
@ApiOperation("上传报价单")
@PostMapping("/submitQuotationSheet")
public ApiResponse<Boolean> submitQuotationSheet(@RequestBody @Validated SubmitQuotationSheetRequest request) {
log.info("submitQuotationSheet request{}", JSONObject.toJSONString(request));
return ApiResponse.success(decorationDesignInfoService.submitQuotationSheet(request));
}
@ApiOperation("施工派单")
@PostMapping("/submitConstructionOrder")
public ApiResponse<Boolean> submitConstructionOrder(@RequestBody @Validated ConstructionOrderRequest request) {
log.info("submitConstructionOrder request{}", JSONObject.toJSONString(request));
return ApiResponse.success(decorationDesignInfoService.submitConstructionOrder(request));
}
@ApiOperation("实际进场确认")
@PostMapping("/entryConfirmation")
public ApiResponse<Boolean> entryConfirmation(@RequestBody @Validated EntryConfirmationRequest request) {
log.info("entryConfirmation request{}", JSONObject.toJSONString(request));
return ApiResponse.success(decorationDesignInfoService.entryConfirmation(request));
}
@ApiOperation("施工完成")
@PostMapping("/constructionCompleted")
public ApiResponse<Boolean> constructionCompleted(@RequestBody @Validated ConstructionCompletedRequest request) {
log.info("constructionCompleted request{}", JSONObject.toJSONString(request));
return ApiResponse.success(decorationDesignInfoService.constructionCompleted(request));
}
@ApiOperation("装修验收")
@PostMapping("/decorationAcceptance")
public ApiResponse<Boolean> decorationAcceptance(@RequestBody @Validated HqtDecorationAcceptanceRequest request) {
log.info("decorationAcceptance request{}", JSONObject.toJSONString(request));
return ApiResponse.success(decorationDesignInfoService.decorationAcceptance(request));
}
} }

View File

@@ -5,6 +5,8 @@ import com.cool.store.context.LoginUserInfo;
import com.cool.store.dto.decoration.ConstructionScheduleDTO; import com.cool.store.dto.decoration.ConstructionScheduleDTO;
import com.cool.store.entity.ShopAuditInfoDO; import com.cool.store.entity.ShopAuditInfoDO;
import com.cool.store.request.*; import com.cool.store.request.*;
import com.cool.store.response.DecorationDesignResponse;
import com.cool.store.response.MeasureResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
import com.cool.store.response.ThreeSignResponse; import com.cool.store.response.ThreeSignResponse;
import com.cool.store.service.DecorationMeasureService; import com.cool.store.service.DecorationMeasureService;
@@ -27,7 +29,7 @@ import java.util.List;
* @Auther: WangShuo * @Auther: WangShuo
* @Date: 2024/04/28/下午4:19 * @Date: 2024/04/28/下午4:19
* @Version 1.0 * @Version 1.0
* @注释: * @注释: 废弃
*/ */
@RestController @RestController
@RequestMapping("/pc/decoration") @RequestMapping("/pc/decoration")
@@ -147,7 +149,7 @@ public class PCDecorationController {
@ApiOperation("查询设计方案") @ApiOperation("查询设计方案")
@GetMapping("/getDecorationDesign") @GetMapping("/getDecorationDesign")
public ResponseResult<DecorationDesignVO> getDecorationDesign(@RequestParam Long shopId) { public ResponseResult<DecorationDesignResponse> getDecorationDesign(@RequestParam Long shopId) {
return ResponseResult.success(decorationService.getDecorationDesign(shopId)); return ResponseResult.success(decorationService.getDecorationDesign(shopId));
} }
@@ -171,8 +173,8 @@ public class PCDecorationController {
@ApiOperation("查询测量方案") @ApiOperation("查询测量方案")
@GetMapping("/getDecorationMeasure/{shopId}") @GetMapping("/getDecorationMeasure/{shopId}")
public ResponseResult<DecorationMeasureVO> getDecorationMeasure(@PathVariable Long shopId) { public ResponseResult<MeasureResponse> getDecorationMeasure(@PathVariable Long shopId) {
return ResponseResult.success(decorationMeasureService.getDecorationMeasureByShopId(shopId)); return ResponseResult.success(decorationMeasureService.getMeasureData(shopId));
} }
@ApiOperation("保存测量方案") @ApiOperation("保存测量方案")

View File

@@ -10,6 +10,8 @@ import com.cool.store.request.DecorationDesignRequest;
import com.cool.store.request.LinePaySubmitRequest; import com.cool.store.request.LinePaySubmitRequest;
import com.cool.store.request.ThreeAcceptanceCheckRequest; import com.cool.store.request.ThreeAcceptanceCheckRequest;
import com.cool.store.request.ThreeAcceptanceRequest; import com.cool.store.request.ThreeAcceptanceRequest;
import com.cool.store.response.DecorationDesignResponse;
import com.cool.store.response.MeasureResponse;
import com.cool.store.response.ResponseResult; import com.cool.store.response.ResponseResult;
import com.cool.store.response.ThreeSignResponse; import com.cool.store.response.ThreeSignResponse;
@@ -118,7 +120,7 @@ public class MiniDecorationController {
@ApiOperation("查询设计方案") @ApiOperation("查询设计方案")
@GetMapping("/getDecorationDesign") @GetMapping("/getDecorationDesign")
public ResponseResult<DecorationDesignVO> getDecorationDesign(@RequestParam Long shopId){ public ResponseResult<DecorationDesignResponse> getDecorationDesign(@RequestParam Long shopId){
return ResponseResult.success(decorationService.getDecorationDesign(shopId)); return ResponseResult.success(decorationService.getDecorationDesign(shopId));
} }
@@ -136,7 +138,7 @@ public class MiniDecorationController {
@ApiOperation("查询测量方案") @ApiOperation("查询测量方案")
@GetMapping("/getDecorationMeasure") @GetMapping("/getDecorationMeasure")
public ResponseResult<DecorationMeasureVO> getDecorationMeasure(@RequestParam Long shopId){ public ResponseResult<MeasureResponse> getDecorationMeasure(@RequestParam Long shopId) {
return ResponseResult.success(decorationMeasureService.getDecorationMeasureByShopId(shopId)); return ResponseResult.success(decorationMeasureService.getMeasureData(shopId));
} }
} }