diff --git a/coolstore-partner-common/src/main/java/com/cool/store/constants/CommonConstants.java b/coolstore-partner-common/src/main/java/com/cool/store/constants/CommonConstants.java index 4a91c2a81..3d6ef94e0 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/constants/CommonConstants.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/constants/CommonConstants.java @@ -20,7 +20,7 @@ public class CommonConstants { public static final int ACCESS_TOKEN_EXPIRE = 14400; - public static final int THREE_DAY_SECONDS = 60*60*24*3; + public static final int THREE_DAY_SECONDS = 60 * 60 * 24 * 3; public static final int NORMAL_LOCK_TIMES = 60 * 1000; @@ -108,8 +108,8 @@ public class CommonConstants { public static final int ONE_THOUSAND = 1000; public static final int FIFTY_FIVE = 55; public static final int SIXTY_FIVE = 65; - public static final int MIN_CODE = 10000000; - public static final int MAX_CODE = 89999999; + public static final int MIN_CODE = 10000000; + public static final int MAX_CODE = 89999999; public static final String ONE_STR = "1"; @@ -123,23 +123,22 @@ public class CommonConstants { public static final String NINE_STR = "9"; public static final String TEN_STR = "10"; - public static final String FOLLOW = "follow"; - public static final String PENDING = "pending"; + public static final String FOLLOW = "follow"; + public static final String PENDING = "pending"; - public static final String CLOSE = "close"; - public static final String OPEN = "open"; + public static final String CLOSE = "close"; + public static final String OPEN = "open"; + public static final String ALLOCATION = "allocation"; - public static final String ALLOCATION = "allocation"; - - public static final String TRANSFER = "transfer"; + public static final String TRANSFER = "transfer"; // 短信模版-意向申请审批通过 - public static final String SMS_TEMPLATE_CODE_INTENT = "SMS_461990823"; + public static final String SMS_TEMPLATE_CODE_INTENT = "SMS_461990823"; // 短信模版-资质审核通过 - public static final String SMS_TEMPLATE_CODE_VERIFY = "SMS_461980876"; + public static final String SMS_TEMPLATE_CODE_VERIFY = "SMS_461980876"; public static final String DAY_END_TIME_SUFFIX = " 23:59:59"; @@ -157,4 +156,21 @@ public class CommonConstants { public static final int MAX_LENGTH_ONE_HUNDRED = 100; public static final String YUN_XUE_TANG_SUC_CODE = "10000"; + //鲜丰 + //设计阶段+施工阶段 + public static final String CONSTRUCTION_PHASE = "施工阶段"; + public static final String MEASURING_THE_ROOM = "量房"; + public static final String CONSTRUCTION_DRAWING = "施工图+预算"; + public static final String FLOOR_PLAN = "平面图+门头效果图"; + public static final String APPROACH="进场"; + public static final String ONE_DAY="第一天-进场拆除、基础材料下单、物料设备下单"; + public static final String TWO_DAY="第二天-水电预埋、地砖铺贴"; + public static final String THREE_DAY="第三天-橱窗隔断、木工包柱、电工布线"; + public static final String FOUR_DAY="第四天-护墙板安装、空调安装"; + public static final String FIVE_DAY="第五天-吊顶隔断、木工铝塑板"; + public static final String SIX_DAY="第六天-灯具安装、室内广告安装、冷柜安装、道具卸货"; + public static final String SEVEN_DAY="第七天-道具安装、室外招牌安装"; + public static final String EIGHT_DAY="第八天-卫生保洁、网络及收银设备安装、撤场交接"; + public static final String WITHDRAWAL="撤场"; + } diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java index bfa0d79da..54febddc3 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/ErrorCodeEnum.java @@ -169,6 +169,10 @@ public enum ErrorCodeEnum { FOOD_BUSINESS_LICENSE_PARSE_FAIL(109007, "食营证照解析失败", null), + + STORE_NUM_NOT_FOUND(109008, "未找到门店编码", null), + + INSERT_OPENING_OPERATION_PLAN_AUDIT_FALSE(103001,"插入运营方案审核信息失败",null), INSERT_OPENING_OPERATION_PLAN_FALSE(103002,"插入运营方案失败",null), SHOP_ID_IS_NULL(103003,"验参shopId失败,为空",null), diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/LicenseTypeEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/LicenseTypeEnum.java new file mode 100644 index 000000000..874ad688c --- /dev/null +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/LicenseTypeEnum.java @@ -0,0 +1,37 @@ +package com.cool.store.enums; + +/** + * 营业执照类型 0.个体工商户 1.有限责任公司 2.独资企业 3.自然人经营 + */ +public enum LicenseTypeEnum { + ZERO(0, "个体工商户"), + ONE(1,"有限责任公司"), + TWO(2,"独资企业"), + THREE(3,"自然人经营"); + + private Integer code; + + private String message; + + public Integer getCode() { + return code; + } + + public String getMessage() { + return message; + } + + LicenseTypeEnum(Integer code, String message) { + this.code = code; + this.message = message; + } + + public static LicenseTypeEnum match(Integer code) { + for (LicenseTypeEnum type : LicenseTypeEnum.values()) { + if (type.getCode().equals(code)) { + return type; + } + } + return null; + } +} diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/point/ShopSubStageStatusEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/point/ShopSubStageStatusEnum.java index b44dccc5c..492a2a04f 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/point/ShopSubStageStatusEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/point/ShopSubStageStatusEnum.java @@ -54,7 +54,6 @@ public enum ShopSubStageStatusEnum { //加盟合同签约 SHOP_SUB_STAGE_STATUS_80(ShopSubStageEnum.SHOP_STAGE_8, 800, "待提交", Boolean.FALSE), - SHOP_SUB_STAGE_STATUS_81(ShopSubStageEnum.SHOP_STAGE_8, 810, "待缴费", Boolean.FALSE), SHOP_SUB_STAGE_STATUS_83(ShopSubStageEnum.SHOP_STAGE_8, 830, "审核中", Boolean.FALSE), SHOP_SUB_STAGE_STATUS_84(ShopSubStageEnum.SHOP_STAGE_8, 840, "已签约", Boolean.TRUE), SHOP_SUB_STAGE_STATUS_85(ShopSubStageEnum.SHOP_STAGE_8, 850, "退回", Boolean.FALSE), diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/AcceptanceInfoDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/AcceptanceInfoDAO.java new file mode 100644 index 000000000..951ee9ac3 --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/AcceptanceInfoDAO.java @@ -0,0 +1,45 @@ +package com.cool.store.dao; + +import com.cool.store.entity.AcceptanceInfoDO; +import com.cool.store.mapper.AcceptanceInfoMapper; +import org.springframework.jdbc.core.JdbcTemplate; +import org.springframework.stereotype.Repository; + +import javax.annotation.Resource; +import java.util.List; +import java.util.Objects; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午7:47 + * @Version 1.0 + * @注释: + */ +@Repository +public class AcceptanceInfoDAO { + @Resource + private AcceptanceInfoMapper acceptanceInfoMapper; + + public Long insertAcceptanceInfo(AcceptanceInfoDO acceptanceInfoDO){ + if (Objects.isNull(acceptanceInfoDO)){ + return null; + } + acceptanceInfoMapper.insert(acceptanceInfoDO); + return acceptanceInfoDO.getId(); + } + public List selectAcceptanceInfo(){ + return acceptanceInfoMapper.selectShopIdListBySignatures(); + } + public Integer updateAcceptanceInfo(AcceptanceInfoDO acceptanceInfoDO){ + if (Objects.isNull(acceptanceInfoDO)){ + return 0; + } + return acceptanceInfoMapper.updateByShopIDSelective(acceptanceInfoDO); + } + public AcceptanceInfoDO selectByShopId (Long shopId){ + if (Objects.isNull(shopId)){ + return null; + } + return acceptanceInfoMapper.selectByShopId(shopId); + } +} diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/AssessmentDataDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/AssessmentDataDAO.java new file mode 100644 index 000000000..580fcdf48 --- /dev/null +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/AssessmentDataDAO.java @@ -0,0 +1,38 @@ +package com.cool.store.dao; + +import com.cool.store.entity.AssessmentDataDO; +import com.cool.store.mapper.AssessmentDataMapper; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Repository; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午10:38 + * @Version 1.0 + * @注释: AssessmentDataDO + */ +@Repository +public class AssessmentDataDAO { + @Resource + private AssessmentDataMapper assessmentDataMapper; + public Boolean batchInsert(List assessmentDataDOS) { + if (CollectionUtils.isEmpty(assessmentDataDOS) && assessmentDataDOS.size() > 0) { + for (AssessmentDataDO assessmentDataDO : assessmentDataDOS) { + assessmentDataMapper.insert(assessmentDataDO); + } + return Boolean.TRUE; + } + return Boolean.FALSE; + } + public Integer batchUpdate(List assessmentDataDOS) { + if (CollectionUtils.isEmpty(assessmentDataDOS) && assessmentDataDOS.size() > 0) { + + return assessmentDataMapper.batchUpdate(assessmentDataDOS); + } + return 0; + } +} diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/TempUserDetailDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/TempUserDetailDAO.java index d06041c37..c72270b26 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/TempUserDetailDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/TempUserDetailDAO.java @@ -1,9 +1,11 @@ package com.cool.store.dao; +import com.cool.store.entity.TempUserDetailDO; import com.cool.store.mapper.TempUserDetailMapper; import org.springframework.stereotype.Repository; import javax.annotation.Resource; +import java.util.List; /** * @author byd @@ -14,4 +16,20 @@ public class TempUserDetailDAO { @Resource private TempUserDetailMapper tempUserDetailMapper; + + public List userList(Long shopId) { + return tempUserDetailMapper.select(TempUserDetailDO.builder().deleted(false).shopId(shopId).build()); + } + + public TempUserDetailDO selectByIdCard(String idCard) { + return tempUserDetailMapper.selectOne(TempUserDetailDO.builder().deleted(false).idCard(idCard).build()); + } + + public int insertSelective(TempUserDetailDO detailDO) { + return tempUserDetailMapper.insertSelective(detailDO); + } + + public TempUserDetailDO selectById(Long id) { + return tempUserDetailMapper.selectOne(TempUserDetailDO.builder().id(id).build()); + } } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AcceptanceInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AcceptanceInfoMapper.java index be82407f0..8f58e8a4d 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AcceptanceInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AcceptanceInfoMapper.java @@ -1,7 +1,24 @@ package com.cool.store.mapper; import com.cool.store.entity.AcceptanceInfoDO; +import org.apache.ibatis.annotations.Param; import tk.mybatis.mapper.common.Mapper; +import java.util.List; + public interface AcceptanceInfoMapper extends Mapper { + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description:根据shopid查询 + */ + List selectShopIdListBySignatures(); + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description:根据shopID修改 + */ + Integer updateByShopIDSelective(AcceptanceInfoDO acceptanceInfoDO); + + AcceptanceInfoDO selectByShopId(@Param("shopId") Long shopId); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AssessmentDataMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AssessmentDataMapper.java index 879375cac..b561316ad 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AssessmentDataMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/AssessmentDataMapper.java @@ -1,7 +1,12 @@ package com.cool.store.mapper; import com.cool.store.entity.AssessmentDataDO; +import com.cool.store.entity.ShopStageInfoDO; +import org.apache.ibatis.annotations.Param; import tk.mybatis.mapper.common.Mapper; +import java.util.List; + public interface AssessmentDataMapper extends Mapper { + Integer batchUpdate( List AssessmentDataDOS); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopInfoMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopInfoMapper.java index 9b8c77342..e60b50d83 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopInfoMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/ShopInfoMapper.java @@ -3,6 +3,7 @@ package com.cool.store.mapper; import com.cool.store.dto.Preparation.PreparationDTO; import com.cool.store.dto.openPreparation.OpenPlanShopInfoDTO; import com.cool.store.dto.point.LineCountDTO; +import com.cool.store.entity.PointInfoDO; import com.cool.store.entity.ShopInfoDO; import com.cool.store.request.PlanListRequest; import com.cool.store.request.PreparationRequest; @@ -67,12 +68,6 @@ public interface ShopInfoMapper extends Mapper { */ List getShopListByIds(@Param("shopIds")List shopIds); - /** - * @Auther: wangshuo - * @Date: 2024/4/25 - * @description:获取筹建阶段shopid - */ - List queryShopIdListByStage(); /** * @Auther: wangshuo * @Date: 2024/4/25 @@ -86,4 +81,5 @@ public interface ShopInfoMapper extends Mapper { List ListByCondition(@Param("request") PreparationRequest request); Long getRegionIdByid(@Param("shopId") Long shopId); -} \ No newline at end of file + + ShopInfoDO selectByStoreNum(@Param("storeNum") String storeNum);} \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/AcceptanceInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/AcceptanceInfoMapper.xml index ac70b9c2a..7377da572 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/AcceptanceInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/AcceptanceInfoMapper.xml @@ -20,4 +20,62 @@ + + id,shop_id,actual_entry_time,planned_completion_time,planned_start_time,decoration_planned_completion_time, + decoration_planned_start_time,construction_completion_time,engineering_acceptance_signatures, + operations_acceptance_signatures,partner_acceptance_signatures, + create_time,update_time,deleted + + + update xfsg_acceptance_info + + + actual_entry_time = #{actualEntryTime} , + + + planned_completion_time = #{plannedCompletionTime} , + + + planned_start_time = #{plannedStartTime} , + + + decoration_planned_completion_time = #{decorationPlannedCompletionTime} , + + + decoration_planned_start_time = #{decorationPlannedStartTime} , + + + construction_completion_time = #{constructionCompletionTime} , + + + engineering_acceptance_signatures = #{engineeringAcceptanceSignatures} , + + + operations_acceptance_signatures = #{operationsAcceptanceSignatures} , + + + partner_acceptance_signatures = #{partnerAcceptanceSignatures} , + + + update_time = #{updateTime} , + + + deleted = #{deleted} , + + + where shop_id = #{shopId} + + + + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/AssessmentDataMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/AssessmentDataMapper.xml index 1eb43e09d..f7a342bf0 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/AssessmentDataMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/AssessmentDataMapper.xml @@ -14,4 +14,31 @@ + + update xfsg_assessment_data + + qualified = CASE id + + WHEN #{item.id} THEN #{item.qualified} + , + score = CASE id + + WHEN #{item.id} THEN #{item.score} + , + reason = CASE id + + WHEN #{item.id} THEN #{item.reason} + , + comments = CASE id + + WHEN #{item.id} THEN #{item.comments} + + END + + where id in ( + + #{item.id} + + ) + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml index 954f7043a..6c23c78ef 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml @@ -73,12 +73,7 @@ - + + \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/TempUserDetailMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/TempUserDetailMapper.xml index 13c4a157c..55cff28c6 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/TempUserDetailMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/TempUserDetailMapper.xml @@ -14,6 +14,7 @@ + diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/openPreparation/FirstOrderDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/openPreparation/FirstOrderDTO.java index f623281d2..f1a3bcec4 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/dto/openPreparation/FirstOrderDTO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/openPreparation/FirstOrderDTO.java @@ -1,5 +1,6 @@ package com.cool.store.dto.openPreparation; +import com.fasterxml.jackson.annotation.JsonFormat; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -19,6 +20,7 @@ public class FirstOrderDTO { private Long shopId; @ApiModelProperty("首批订货金总额") private String totalOrderDeposit; + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") @ApiModelProperty("最晚打款时间") private Date latestPaymentDate; @@ -34,7 +36,7 @@ public class FirstOrderDTO { @ApiModelProperty("更新人") private String updateUserId; - @ApiModelProperty("结果") - private Integer resultType; + @ApiModelProperty("订货金阶段状态,1500 待上传, 1505 带缴纳,1510 已完成") + private Integer firstOrderSubStage; } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/EmployeeTrainingDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/EmployeeTrainingDO.java index 72a3150db..d89c04402 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/entity/EmployeeTrainingDO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/EmployeeTrainingDO.java @@ -1,8 +1,16 @@ package com.cool.store.entity; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + import java.util.Date; import javax.persistence.*; - +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor @Table(name = "xfsg_employee_training") public class EmployeeTrainingDO { @Id @@ -133,396 +141,4 @@ public class EmployeeTrainingDO { * 是否删除:0.否 1.是 */ private Boolean deleted; - - /** - * @return id - */ - public Long getId() { - return id; - } - - /** - * @param id - */ - public void setId(Long id) { - this.id = id; - } - - /** - * 获取shop_info.id - * - * @return shop_id - shop_info.id - */ - public Long getShopId() { - return shopId; - } - - /** - * 设置shop_info.id - * - * @param shopId shop_info.id - */ - public void setShopId(Long shopId) { - this.shopId = shopId; - } - - /** - * 获取区域ID - * - * @return region_id - 区域ID - */ - public Long getRegionId() { - return regionId; - } - - /** - * 设置区域ID - * - * @param regionId 区域ID - */ - public void setRegionId(Long regionId) { - this.regionId = regionId; - } - - /** - * 获取xfsg_temp_user_detail.id - * - * @return xfsg_user_detail_id - xfsg_temp_user_detail.id - */ - public Long getXfsgUserDetailId() { - return xfsgUserDetailId; - } - - /** - * 设置xfsg_temp_user_detail.id - * - * @param xfsgUserDetailId xfsg_temp_user_detail.id - */ - public void setXfsgUserDetailId(Long xfsgUserDetailId) { - this.xfsgUserDetailId = xfsgUserDetailId; - } - - /** - * 获取是否分配 0-待分配 1-已分配 - * - * @return assign_flag - 是否分配 0-待分配 1-已分配 - */ - public Byte getAssignFlag() { - return assignFlag; - } - - /** - * 设置是否分配 0-待分配 1-已分配 - * - * @param assignFlag 是否分配 0-待分配 1-已分配 - */ - public void setAssignFlag(Byte assignFlag) { - this.assignFlag = assignFlag; - } - - /** - * 获取实训开始时间 - * - * @return training_start_time - 实训开始时间 - */ - public Date getTrainingStartTime() { - return trainingStartTime; - } - - /** - * 设置实训开始时间 - * - * @param trainingStartTime 实训开始时间 - */ - public void setTrainingStartTime(Date trainingStartTime) { - this.trainingStartTime = trainingStartTime; - } - - /** - * 获取实训结束时间 - * - * @return training_end_time - 实训结束时间 - */ - public Date getTrainingEndTime() { - return trainingEndTime; - } - - /** - * 设置实训结束时间 - * - * @param trainingEndTime 实训结束时间 - */ - public void setTrainingEndTime(Date trainingEndTime) { - this.trainingEndTime = trainingEndTime; - } - - /** - * 获取实训门店ID - * - * @return training_store_id - 实训门店ID - */ - public String getTrainingStoreId() { - return trainingStoreId; - } - - /** - * 设置实训门店ID - * - * @param trainingStoreId 实训门店ID - */ - public void setTrainingStoreId(String trainingStoreId) { - this.trainingStoreId = trainingStoreId; - } - - /** - * 获取带教老师ID - * - * @return training_teacher_user_id - 带教老师ID - */ - public String getTrainingTeacherUserId() { - return trainingTeacherUserId; - } - - /** - * 设置带教老师ID - * - * @param trainingTeacherUserId 带教老师ID - */ - public void setTrainingTeacherUserId(String trainingTeacherUserId) { - this.trainingTeacherUserId = trainingTeacherUserId; - } - - /** - * 获取实操考核人员ID - * - * @return practical_assessment_user_id - 实操考核人员ID - */ - public String getPracticalAssessmentUserId() { - return practicalAssessmentUserId; - } - - /** - * 设置实操考核人员ID - * - * @param practicalAssessmentUserId 实操考核人员ID - */ - public void setPracticalAssessmentUserId(String practicalAssessmentUserId) { - this.practicalAssessmentUserId = practicalAssessmentUserId; - } - - /** - * 获取预计考核时间 - * - * @return estimated_assessment_time - 预计考核时间 - */ - public Date getEstimatedAssessmentTime() { - return estimatedAssessmentTime; - } - - /** - * 设置预计考核时间 - * - * @param estimatedAssessmentTime 预计考核时间 - */ - public void setEstimatedAssessmentTime(Date estimatedAssessmentTime) { - this.estimatedAssessmentTime = estimatedAssessmentTime; - } - - /** - * 获取实际考核时间 - * - * @return actual_assessment_time - 实际考核时间 - */ - public Date getActualAssessmentTime() { - return actualAssessmentTime; - } - - /** - * 设置实际考核时间 - * - * @param actualAssessmentTime 实际考核时间 - */ - public void setActualAssessmentTime(Date actualAssessmentTime) { - this.actualAssessmentTime = actualAssessmentTime; - } - - /** - * 获取考核项数 - * - * @return assessment_num - 考核项数 - */ - public Integer getAssessmentNum() { - return assessmentNum; - } - - /** - * 设置考核项数 - * - * @param assessmentNum 考核项数 - */ - public void setAssessmentNum(Integer assessmentNum) { - this.assessmentNum = assessmentNum; - } - - /** - * 获取考核总项数 - * - * @return assessment_total_num - 考核总项数 - */ - public Integer getAssessmentTotalNum() { - return assessmentTotalNum; - } - - /** - * 设置考核总项数 - * - * @param assessmentTotalNum 考核总项数 - */ - public void setAssessmentTotalNum(Integer assessmentTotalNum) { - this.assessmentTotalNum = assessmentTotalNum; - } - - /** - * 获取理论考试状态 0-未开始 1-合格 2-不合格 - * - * @return theoretical_exam_status - 理论考试状态 0-未开始 1-合格 2-不合格 - */ - public Byte getTheoreticalExamStatus() { - return theoreticalExamStatus; - } - - /** - * 设置理论考试状态 0-未开始 1-合格 2-不合格 - * - * @param theoreticalExamStatus 理论考试状态 0-未开始 1-合格 2-不合格 - */ - public void setTheoreticalExamStatus(Byte theoreticalExamStatus) { - this.theoreticalExamStatus = theoreticalExamStatus; - } - - /** - * 获取理论考试分值 - * - * @return theoretical_exam_score - 理论考试分值 - */ - public Integer getTheoreticalExamScore() { - return theoreticalExamScore; - } - - /** - * 设置理论考试分值 - * - * @param theoreticalExamScore 理论考试分值 - */ - public void setTheoreticalExamScore(Integer theoreticalExamScore) { - this.theoreticalExamScore = theoreticalExamScore; - } - - /** - * 获取实操考试状态 0-未开始 1-合格 2-不合格 - * - * @return practical_exam_status - 实操考试状态 0-未开始 1-合格 2-不合格 - */ - public Byte getPracticalExamStatus() { - return practicalExamStatus; - } - - /** - * 设置实操考试状态 0-未开始 1-合格 2-不合格 - * - * @param practicalExamStatus 实操考试状态 0-未开始 1-合格 2-不合格 - */ - public void setPracticalExamStatus(Byte practicalExamStatus) { - this.practicalExamStatus = practicalExamStatus; - } - - /** - * 获取实操考试分值 - * - * @return practical_exam_score - 实操考试分值 - */ - public Integer getPracticalExamScore() { - return practicalExamScore; - } - - /** - * 设置实操考试分值 - * - * @param practicalExamScore 实操考试分值 - */ - public void setPracticalExamScore(Integer practicalExamScore) { - this.practicalExamScore = practicalExamScore; - } - - /** - * 获取考核状态 0-培训中 1-带考核 2-考核通过 3-考核不通过 - * - * @return assessment_status - 考核状态 0-培训中 1-带考核 2-考核通过 3-考核不通过 - */ - public Byte getAssessmentStatus() { - return assessmentStatus; - } - - /** - * 设置考核状态 0-培训中 1-带考核 2-考核通过 3-考核不通过 - * - * @param assessmentStatus 考核状态 0-培训中 1-带考核 2-考核通过 3-考核不通过 - */ - public void setAssessmentStatus(Byte assessmentStatus) { - this.assessmentStatus = assessmentStatus; - } - - /** - * 获取创建时间 - * - * @return create_time - 创建时间 - */ - public Date getCreateTime() { - return createTime; - } - - /** - * 设置创建时间 - * - * @param createTime 创建时间 - */ - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - - /** - * 获取更新时间 - * - * @return update_time - 更新时间 - */ - public Date getUpdateTime() { - return updateTime; - } - - /** - * 设置更新时间 - * - * @param updateTime 更新时间 - */ - public void setUpdateTime(Date updateTime) { - this.updateTime = updateTime; - } - - /** - * 获取是否删除:0.否 1.是 - * - * @return deleted - 是否删除:0.否 1.是 - */ - public Boolean getDeleted() { - return deleted; - } - - /** - * 设置是否删除:0.否 1.是 - * - * @param deleted 是否删除:0.否 1.是 - */ - public void setDeleted(Boolean deleted) { - this.deleted = deleted; - } } \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/TempUserDetailDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/TempUserDetailDO.java index 6458f1a66..82ed44ddc 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/entity/TempUserDetailDO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/TempUserDetailDO.java @@ -1,8 +1,17 @@ package com.cool.store.entity; +import io.swagger.models.auth.In; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + import java.util.Date; import javax.persistence.*; - +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor @Table(name = "xfsg_temp_user_detail") public class TempUserDetailDO { @Id @@ -47,6 +56,8 @@ public class TempUserDetailDO { */ private Integer age; + private Integer status; + /** * 身份证号码 */ @@ -56,7 +67,7 @@ public class TempUserDetailDO { /** * 学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上 */ - private Byte educational; + private Integer educational; /** * 角色id 170000000-店长 180000000-店员 @@ -115,360 +126,4 @@ public class TempUserDetailDO { * 是否删除:0.否 1.是 */ private Boolean deleted; - - /** - * @return id - */ - public Long getId() { - return id; - } - - /** - * @param id - */ - public void setId(Long id) { - this.id = id; - } - - /** - * 获取line_info.id - * - * @return line_id - line_info.id - */ - public Long getLineId() { - return lineId; - } - - /** - * 设置line_info.id - * - * @param lineId line_info.id - */ - public void setLineId(Long lineId) { - this.lineId = lineId; - } - - /** - * 获取shop_info.id - * - * @return shop_id - shop_info.id - */ - public Long getShopId() { - return shopId; - } - - /** - * 设置shop_info.id - * - * @param shopId shop_info.id - */ - public void setShopId(Long shopId) { - this.shopId = shopId; - } - - /** - * 获取区域ID - * - * @return region_id - 区域ID - */ - public Long getRegionId() { - return regionId; - } - - /** - * 设置区域ID - * - * @param regionId 区域ID - */ - public void setRegionId(Long regionId) { - this.regionId = regionId; - } - - /** - * 获取手机号 - * - * @return mobile - 手机号 - */ - public String getMobile() { - return mobile; - } - - /** - * 设置手机号 - * - * @param mobile 手机号 - */ - public void setMobile(String mobile) { - this.mobile = mobile; - } - - /** - * 获取申请人姓名 - * - * @return username - 申请人姓名 - */ - public String getUsername() { - return username; - } - - /** - * 设置申请人姓名 - * - * @param username 申请人姓名 - */ - public void setUsername(String username) { - this.username = username; - } - - /** - * 获取性别0未选,1男,2女 - * - * @return sex - 性别0未选,1男,2女 - */ - public String getSex() { - return sex; - } - - /** - * 设置性别0未选,1男,2女 - * - * @param sex 性别0未选,1男,2女 - */ - public void setSex(String sex) { - this.sex = sex; - } - - /** - * 获取年龄 - * - * @return age - 年龄 - */ - public Integer getAge() { - return age; - } - - /** - * 设置年龄 - * - * @param age 年龄 - */ - public void setAge(Integer age) { - this.age = age; - } - - /** - * 获取身份证号码 - * - * @return id_card - 身份证号码 - */ - public String getIdCard() { - return idCard; - } - - /** - * 设置身份证号码 - * - * @param idCard 身份证号码 - */ - public void setIdCard(String idCard) { - this.idCard = idCard; - } - - /** - * 获取学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上 - * - * @return educational - 学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上 - */ - public Byte getEducational() { - return educational; - } - - /** - * 设置学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上 - * - * @param educational 学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上 - */ - public void setEducational(Byte educational) { - this.educational = educational; - } - - /** - * 获取角色id 170000000-店长 180000000-店员 - * - * @return role_id - 角色id 170000000-店长 180000000-店员 - */ - public Long getRoleId() { - return roleId; - } - - /** - * 设置角色id 170000000-店长 180000000-店员 - * - * @param roleId 角色id 170000000-店长 180000000-店员 - */ - public void setRoleId(Long roleId) { - this.roleId = roleId; - } - - /** - * 获取身份证正面url - * - * @return id_card_positive_url - 身份证正面url - */ - public String getIdCardPositiveUrl() { - return idCardPositiveUrl; - } - - /** - * 设置身份证正面url - * - * @param idCardPositiveUrl 身份证正面url - */ - public void setIdCardPositiveUrl(String idCardPositiveUrl) { - this.idCardPositiveUrl = idCardPositiveUrl; - } - - /** - * 获取身份证反面url - * - * @return id_card_negative_url - 身份证反面url - */ - public String getIdCardNegativeUrl() { - return idCardNegativeUrl; - } - - /** - * 设置身份证反面url - * - * @param idCardNegativeUrl 身份证反面url - */ - public void setIdCardNegativeUrl(String idCardNegativeUrl) { - this.idCardNegativeUrl = idCardNegativeUrl; - } - - /** - * 获取健康证url - * - * @return health_certificate_url - 健康证url - */ - public String getHealthCertificateUrl() { - return healthCertificateUrl; - } - - /** - * 设置健康证url - * - * @param healthCertificateUrl 健康证url - */ - public void setHealthCertificateUrl(String healthCertificateUrl) { - this.healthCertificateUrl = healthCertificateUrl; - } - - /** - * 获取登记时间 - * - * @return register_time - 登记时间 - */ - public Date getRegisterTime() { - return registerTime; - } - - /** - * 设置登记时间 - * - * @param registerTime 登记时间 - */ - public void setRegisterTime(Date registerTime) { - this.registerTime = registerTime; - } - - /** - * 获取来源:create-创建 sync-钉钉同步 - * - * @return source - 来源:create-创建 sync-钉钉同步 - */ - public String getSource() { - return source; - } - - /** - * 设置来源:create-创建 sync-钉钉同步 - * - * @param source 来源:create-创建 sync-钉钉同步 - */ - public void setSource(String source) { - this.source = source; - } - - /** - * 获取提交时间 - * - * @return submit_time - 提交时间 - */ - public Date getSubmitTime() { - return submitTime; - } - - /** - * 设置提交时间 - * - * @param submitTime 提交时间 - */ - public void setSubmitTime(Date submitTime) { - this.submitTime = submitTime; - } - - /** - * 获取创建时间 - * - * @return create_time - 创建时间 - */ - public Date getCreateTime() { - return createTime; - } - - /** - * 设置创建时间 - * - * @param createTime 创建时间 - */ - public void setCreateTime(Date createTime) { - this.createTime = createTime; - } - - /** - * 获取更新时间 - * - * @return update_time - 更新时间 - */ - public Date getUpdateTime() { - return updateTime; - } - - /** - * 设置更新时间 - * - * @param updateTime 更新时间 - */ - public void setUpdateTime(Date updateTime) { - this.updateTime = updateTime; - } - - /** - * 获取是否删除:0.否 1.是 - * - * @return deleted - 是否删除:0.否 1.是 - */ - public Boolean getDeleted() { - return deleted; - } - - /** - * 设置是否删除:0.否 1.是 - * - * @param deleted 是否删除:0.否 1.是 - */ - public void setDeleted(Boolean deleted) { - this.deleted = deleted; - } } \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/LicenseBizContentRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/LicenseBizContentRequest.java new file mode 100644 index 000000000..f3c0f4be4 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/LicenseBizContentRequest.java @@ -0,0 +1,8 @@ +package com.cool.store.request; + +import lombok.Data; + +@Data +public class LicenseBizContentRequest { + private String storeNum; +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/LinePaySubmitRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/LinePaySubmitRequest.java index 53c3eba24..294269a70 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/LinePaySubmitRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/LinePaySubmitRequest.java @@ -25,7 +25,7 @@ public class LinePaySubmitRequest { @ApiModelProperty("支付方式 1微信 2银行转账") private Integer payType; - @ApiModelProperty("付款人姓名") + @ApiModelProperty("付款人姓名/加盟商姓名") private String payUserName; @ApiModelProperty("付款账号") diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/TempUserDetailRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/TempUserDetailRequest.java new file mode 100644 index 000000000..603a9d3d8 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/TempUserDetailRequest.java @@ -0,0 +1,57 @@ +package com.cool.store.request; + +import io.swagger.annotations.ApiModelProperty; +import io.swagger.models.auth.In; +import lombok.Data; +import lombok.NoArgsConstructor; + +import java.util.Date; + +/** + * 员工详细信息数据接口 + * + * @author byd + */ +@NoArgsConstructor +@Data +public class TempUserDetailRequest { + + @ApiModelProperty("店铺id") + private Long shopId; + + @ApiModelProperty("姓名") + private String name; + + @ApiModelProperty("身份证") + private String idCard; + + @ApiModelProperty("性别 0未选,1男,2女") + private String sex; + + @ApiModelProperty("年龄") + private Integer age; + + @ApiModelProperty("学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上") + private Integer highestDegree; + + @ApiModelProperty("手机号(OA侧绑定的手机号)") + private String phone; + + + @ApiModelProperty("岗位Id") + private Long jobId; + + + @ApiModelProperty("身份证-人像面") + private String idNumPhoto; + + @ApiModelProperty("身份证-国徽面") + private String emblemPhoto; + + + @ApiModelProperty("健康证") + private String healthCertificate; + + @ApiModelProperty("登记时间") + private Date registerTime; +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/ThreeAcceptanceRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/ThreeAcceptanceRequest.java new file mode 100644 index 000000000..7ca90b5cb --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/ThreeAcceptanceRequest.java @@ -0,0 +1,21 @@ +package com.cool.store.request; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午11:35 + * @Version 1.0 + * @注释:三方验收 + */ +@Data +public class ThreeAcceptanceRequest { + private Long shopId; + @ApiModelProperty("工程部验收签名 {pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":1}") + private String engineeringAcceptanceSignatures; + @ApiModelProperty("营运部验收签名 {\"pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":1}") + private String operationsAcceptanceSignatures; + @ApiModelProperty("加密商验收签名 {\"pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":0}") + private String partnerAcceptanceSignatures; +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/response/LicenseApiResponse.java b/coolstore-partner-model/src/main/java/com/cool/store/response/LicenseApiResponse.java new file mode 100644 index 000000000..1f5eae1f5 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/response/LicenseApiResponse.java @@ -0,0 +1,113 @@ +package com.cool.store.response; + +import io.swagger.annotations.ApiModel; +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +@ApiModel("证照信息回调响应体") +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class LicenseApiResponse { + /** + * 营业执照经营场所/住所 + */ + @ApiModelProperty("营业执照经营场所/住所") + private String storeBusinessAdd; + /** + * 营业执照发证日期 + */ + @ApiModelProperty("营业执照发证日期") + private String storeBusinessDate; + /** + * 营业执照图片 + */ + @ApiModelProperty("营业执照图片") + private String storeBusinessImg; + /** + * 营业执照名称 + */ + @ApiModelProperty("营业执照名称") + private String storeBusinessName; + /** + * 营业执照统一社会信用代码 + */ + @ApiModelProperty("营业执照统一社会信用代码") + private String storeBusinessNumber; + /** + * 营业执照类型 + */ + @ApiModelProperty("营业执照类型") + private String storeBusinessType; + /** + * 营业执照有效期, 非OCR识别,手填。9=长期有效,非长期有效则为具体日期,例:2026-06-01 + */ + @ApiModelProperty("营业执照有效期, 非OCR识别,手填。9=长期有效,非长期有效则为具体日期,例:2026-06-01") + private String storeBusinessValidPeriod; + /** + * 门店代码 + */ + @ApiModelProperty("门店代码") + private String storeCode; + /** + * 营业执照经营者/法人 + */ + @ApiModelProperty("营业执照经营者/法人") + private String storeDirector; + /** + * 食品流通经营许可证编号 + */ + @ApiModelProperty("食品流通经营许可证编号") + private String storeFoodLicense; + /** + * 食品流通/经营许可证有效期开始日期 + */ + @ApiModelProperty("食品流通/经营许可证有效期开始日期") + private String storeFoodLicenseBeginDate; + /** + * 食品经营许可证经营场所 + */ + @ApiModelProperty("食品经营许可证经营场所") + private String storeFoodLicenseBusinessAddress; + /** + * 食品经营许可证经营项目 + */ + @ApiModelProperty("食品经营许可证经营项目") + private String storeFoodLicenseBusinessScope; + /** + * 食品流通/经营许可证有效期结束日期 + */ + @ApiModelProperty("食品流通/经营许可证有效期结束日期") + private String storeFoodLicenseEndDate; + /** + * 食品经营许可证照片 + */ + @ApiModelProperty("食品经营许可证照片") + private String storeFoodLicenseImg; + /** + * 食品经营许可证法定代表人(负责人) + */ + @ApiModelProperty("食品经营许可证法定代表人(负责人)") + private String storeFoodLicenseLegalRepresentative; + /** + * 食品经营许可证主体业态 + */ + @ApiModelProperty("食品经营许可证主体业态") + private String storeFoodLicenseMainBusiness; + /** + * 食品经营许可证经营者名称 + */ + @ApiModelProperty("食品经营许可证经营者名称") + private String storeFoodLicenseOperatorName; + /** + * 备注 + */ + @ApiModelProperty("备注") + private String storeRemark; +} + + diff --git a/coolstore-partner-model/src/main/java/com/cool/store/response/ThreeAcceptanceResponse.java b/coolstore-partner-model/src/main/java/com/cool/store/response/ThreeAcceptanceResponse.java new file mode 100644 index 000000000..df71e1757 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/response/ThreeAcceptanceResponse.java @@ -0,0 +1,31 @@ +package com.cool.store.response; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午11:51 + * @Version 1.0 + * @注释: + */ +@Data +public class ThreeAcceptanceResponse { + + @ApiModelProperty("工程部验收签名 {pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":1}") + private String engineeringAcceptanceSignatures; + @ApiModelProperty("营运部验收签名 {\"pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":1}") + private String operationsAcceptanceSignatures; + @ApiModelProperty("加密商验收签名 {\"pic\":\"\",\"acceptanceTime\":\"\",\"result\":\"\",\"remark\":\"\",\"status\":0}") + private String partnerAcceptanceSignatures; + @ApiModelProperty("验收日期") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date acceptanceTime; + @ApiModelProperty("验收结果") + private Byte resultType; + @ApiModelProperty("验收评语") + private String acceptanceComments; +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/DecorationModelVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/DecorationModelVO.java new file mode 100644 index 000000000..51557b191 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/DecorationModelVO.java @@ -0,0 +1,38 @@ +package com.cool.store.vo; + +import com.fasterxml.jackson.annotation.JsonFormat; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.Date; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午4:24 + * @Version 1.0 + * @注释: + */ +@Data +public class DecorationModelVO { + @ApiModelProperty("支付状态 45:待缴费 50:已缴费 55缴费失败") + private Integer payStatus; + @ApiModelProperty("付款人姓名/加盟商姓名") + private String payUserName; + @ApiModelProperty("付款账号") + private String payAccount; + @ApiModelProperty("付款截图") + private String payPic; + @ApiModelProperty("支行名称") + private String branchBankName; + @ApiModelProperty("开户行名称") + private String bankName; + @ApiModelProperty("缴纳金额") + private String amount; + @ApiModelProperty("缴纳时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date payTime; + @ApiModelProperty("上传时间") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + private Date updateTime; + +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/DesignInfoVo.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/DesignInfoVo.java index 912791193..2478fba96 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/DesignInfoVo.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/DesignInfoVo.java @@ -4,7 +4,7 @@ import com.cool.store.dto.decoration.AttachmentsDTO; import com.cool.store.dto.decoration.BudgetDTO; import com.cool.store.dto.decoration.ConstructionScheduleDTO; import com.cool.store.dto.decoration.DesignSchemeDTO; -import com.cool.store.vo.log.DesignLogVo; + import lombok.Data; import java.util.List; diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/OpeningOperationPlanVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/OpeningOperationPlanVO.java index b542ee7ba..b850cf613 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/OpeningOperationPlanVO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/OpeningOperationPlanVO.java @@ -42,6 +42,8 @@ public class OpeningOperationPlanVO { @ApiModelProperty("提交人") private String submittedUserId; + @ApiModelProperty("提交人名字") + private String submittedUserName; @ApiModelProperty("通过原因") private String passReason; diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailInfoVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailInfoVO.java new file mode 100644 index 000000000..b9329d7f5 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailInfoVO.java @@ -0,0 +1,117 @@ +package com.cool.store.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.util.Date; + +/** + * @author byd + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class TempUserDetailInfoVO { + + @ApiModelProperty("id") + private Long id; + + /** + * line_info.id + */ + @ApiModelProperty("线索id") + private Long lineId; + + /** + * shop_info.id + */ + @ApiModelProperty("店铺id") + private Long shopId; + + /** + * 区域ID + */ + @ApiModelProperty("区域ID") + private Long regionId; + + /** + * 手机号 + */ + @ApiModelProperty("手机号") + private String mobile; + + /** + * 申请人姓名 + */ + @ApiModelProperty("姓名") + private String username; + + /** + * 性别0未选,1男,2女 + */ + @ApiModelProperty("性别0未选,1男,2女") + private String sex; + + /** + * 年龄 + */ + @ApiModelProperty("年龄") + private Integer age; + + @ApiModelProperty("0-待审核 1-已登记 2-审核未通过") + private Integer status; + + /** + * 身份证号码 + */ + @ApiModelProperty("身份证号码") + private String idCard; + + /** + * 学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上 + */ + @ApiModelProperty("学历 0-小学 1-初中 2-高中 3-中专 4-大专 5-本科 6-硕士 7-硕士以上") + private Integer educational; + + /** + * 角色id 170000000-店长 180000000-店员 + */ + @ApiModelProperty("角色id 170000000-店长 180000000-店员") + private Long roleId; + + /** + * 身份证正面url + */ + @ApiModelProperty("身份证正面url") + private String idCardPositiveUrl; + + /** + * 身份证反面url + */ + @ApiModelProperty("身份证反面url") + private String idCardNegativeUrl; + + /** + * 健康证url + */ + @ApiModelProperty("健康证url") + private String healthCertificateUrl; + + /** + * 登记时间 + */ + @ApiModelProperty("登记时间") + private Date registerTime; + + /** + * 来源:create-创建 sync-钉钉同步 + */ + @ApiModelProperty("来源:create-创建 sync-钉钉同步") + private String source; + +} \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailListVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailListVO.java new file mode 100644 index 000000000..d495959b9 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailListVO.java @@ -0,0 +1,23 @@ +package com.cool.store.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import java.util.List; + +/** + * @author byd + * @date 2024-04-29 17:33 + */ +@Data +public class TempUserDetailListVO { + + @ApiModelProperty("员工列表") + private List userList; + + @ApiModelProperty("店铺id") + private Long shopId; + + @ApiModelProperty("店铺code") + private String storeNum; +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailVO.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailVO.java new file mode 100644 index 000000000..939181a1b --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/vo/TempUserDetailVO.java @@ -0,0 +1,77 @@ +package com.cool.store.vo; + +import io.swagger.annotations.ApiModelProperty; +import lombok.AllArgsConstructor; +import lombok.Builder; +import lombok.Data; +import lombok.NoArgsConstructor; + +import javax.persistence.*; +import java.util.Date; + +/** + * @author byd + */ +@Data +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class TempUserDetailVO { + + @ApiModelProperty("id") + private Long id; + + /** + * line_info.id + */ + @ApiModelProperty("line_info.id") + private Long lineId; + + /** + * shop_info.id + */ + @ApiModelProperty("店铺id") + private Long shopId; + + /** + * 区域ID + */ + @ApiModelProperty("区域ID") + private Long regionId; + + /** + * 手机号 + */ + @ApiModelProperty("手机号") + private String mobile; + + /** + * 申请人姓名 + */ + @ApiModelProperty("姓名") + private String username; + + /** + * 身份证号码 + */ + @ApiModelProperty("身份证号码") + private String idCard; + + /** + * 角色id 170000000-店长 180000000-店员 + */ + @ApiModelProperty("角色id 170000000-店长 180000000-店员") + private Long roleId; + + /** + * 登记时间 + */ + @ApiModelProperty("登记时间") + private Date registerTime; + + /** + * 来源:create-创建 sync-钉钉同步 + */ + @ApiModelProperty("来源:create-创建 sync-钉钉同步") + private String source; +} \ No newline at end of file diff --git a/coolstore-partner-model/src/main/java/com/cool/store/vo/log/DesignLogVo.java b/coolstore-partner-model/src/main/java/com/cool/store/vo/log/DesignLogVo.java deleted file mode 100644 index 8f50a7d5f..000000000 --- a/coolstore-partner-model/src/main/java/com/cool/store/vo/log/DesignLogVo.java +++ /dev/null @@ -1,20 +0,0 @@ -package com.cool.store.vo.log; - -import lombok.Data; - -import java.util.List; - -/** - * @Auther: WangShuo - * @Date: 2024/04/28/下午4:02 - * @Version 1.0 - * @注释:设计阶段跟踪日志 - */ -@Data -public class DesignLogVo { - - private String logTime; - private String name; - private String description; - private List attachmentUrl; -} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/AssessmentDataService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/AssessmentDataService.java new file mode 100644 index 000000000..ce652ce68 --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/AssessmentDataService.java @@ -0,0 +1,18 @@ +package com.cool.store.service; + +import com.cool.store.entity.AssessmentDataDO; +import io.swagger.models.auth.In; + +import java.util.List; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午10:46 + * @Version 1.0 + * @注释: + */ +public interface AssessmentDataService { + Boolean batchInsert(List assessmentDataDOS); + + Integer batchUpdate(List assessmentDataDOS); +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/DecorationService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/DecorationService.java index eceea9e3e..48820731a 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/DecorationService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/DecorationService.java @@ -2,8 +2,12 @@ package com.cool.store.service; import com.cool.store.dto.decoration.ConstructionScheduleDTO; import com.cool.store.dto.decoration.DecorationModelDTO; +import com.cool.store.entity.AcceptanceInfoDO; import com.cool.store.request.DecorationPayRequest; import com.cool.store.request.LinePaySubmitRequest; +import com.cool.store.request.ThreeAcceptanceRequest; +import com.cool.store.response.ThreeAcceptanceResponse; +import com.cool.store.vo.DecorationModelVO; import com.cool.store.vo.DesignInfoVo; import com.cool.store.vo.PartnerUserInfoVO; @@ -16,12 +20,13 @@ import java.util.List; * @注释: */ public interface DecorationService { + /** * @Auther: wangshuo - * @Date: 2024/4/28 - * @description:获取装修阶段子阶段信息 + * @Date: 2024/4/29 + * @description:刷新 */ - List decorations(); + Boolean flush(Long shopId ); /** * @Auther: wangshuo * @Date: 2024/4/28 @@ -40,10 +45,35 @@ public interface DecorationService { * @description:提交装修款付款凭证 */ String submitDecorationModel(LinePaySubmitRequest LinePaySubmitRequest, PartnerUserInfoVO partnerUserInfoVO); + + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description:获得装修款信息 + */ + DecorationModelVO getDecorationModel(Long shopId,PartnerUserInfoVO partnerUserInfoVO); /** * @Auther: wangshuo * @Date: 2024/4/28 - * @description:施工阶段 + * @description:施工阶段下信息 */ List getConstruction(Long shopId); + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description:获取施工阶段信息 + */ + ConstructionScheduleDTO getConstructionInfo(Long shopId); + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description:提交三方验收 + */ + Integer submitAcceptance(ThreeAcceptanceRequest request); + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description:查看三方验收 + */ + ThreeAcceptanceResponse getThreeAcceptance(Long shopId); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/KdzApiService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/KdzApiService.java index 69976dd4a..99d7846ef 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/KdzApiService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/KdzApiService.java @@ -2,6 +2,7 @@ package com.cool.store.service; import com.cool.store.request.AuditResultRequest; import com.cool.store.request.SysBuildResultRequest; +import com.cool.store.response.LicenseApiResponse; public interface KdzApiService { /** @@ -11,4 +12,6 @@ public interface KdzApiService { */ boolean auditResult(AuditResultRequest request); + LicenseApiResponse license(String storeNum); + } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/TempUserDetailService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/TempUserDetailService.java new file mode 100644 index 000000000..7aa072a88 --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/TempUserDetailService.java @@ -0,0 +1,22 @@ +package com.cool.store.service; + +import com.cool.store.request.TempUserDetailRequest; +import com.cool.store.vo.TempUserDetailInfoVO; +import com.cool.store.vo.TempUserDetailListVO; +import com.cool.store.vo.TempUserDetailVO; + +import java.util.List; + +/** + * @author byd + * @date 2024-04-29 16:13 + */ +public interface TempUserDetailService { + + TempUserDetailListVO userList(Long shopId); + + void addTempUserDetail(TempUserDetailRequest tempUserDetailRequest); + + + TempUserDetailInfoVO getUserInfoByIdUserDetailId(Long id); +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/YlfService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/YlfService.java index 680fd1de1..2bb2e110b 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/YlfService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/YlfService.java @@ -19,6 +19,6 @@ public interface YlfService { * @Date: 2024/4/25 * @description:项目列表 */ - ProjectDTO getProjectList(String shopCode); + ProjectDTO getProjectList(String storeNum); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AssessmentDataServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AssessmentDataServiceImpl.java new file mode 100644 index 000000000..900f2889b --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/AssessmentDataServiceImpl.java @@ -0,0 +1,30 @@ +package com.cool.store.service.impl; + +import com.cool.store.dao.AssessmentDataDAO; +import com.cool.store.entity.AssessmentDataDO; +import com.cool.store.service.AssessmentDataService; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.List; + +/** + * @Auther: WangShuo + * @Date: 2024/04/29/下午10:47 + * @Version 1.0 + * @注释: + */ +@Service +public class AssessmentDataServiceImpl implements AssessmentDataService { + @Resource + private AssessmentDataDAO assessmentDataDAO; + @Override + public Boolean batchInsert(List assessmentDataDOS) { + return assessmentDataDAO.batchInsert(assessmentDataDOS); + } + + @Override + public Integer batchUpdate(List assessmentDataDOS) { + return assessmentDataDAO.batchUpdate(assessmentDataDOS); + } +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DecorationServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DecorationServiceImpl.java index b97e4b22a..c595d3985 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DecorationServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DecorationServiceImpl.java @@ -2,15 +2,15 @@ package com.cool.store.service.impl; import cn.hutool.core.bean.BeanUtil; import com.alibaba.fastjson.JSONObject; +import com.cool.store.constants.CommonConstants; import com.cool.store.context.PartnerUserHolder; -import com.cool.store.dao.LineInfoDAO; -import com.cool.store.dao.LinePayDAO; -import com.cool.store.dao.RegionQrcodeConfigDao; -import com.cool.store.dao.ShopInfoDAO; +import com.cool.store.dao.*; import com.cool.store.dto.decoration.*; import com.cool.store.dto.openPreparation.OpenPlanShopInfoDTO; +import com.cool.store.entity.AcceptanceInfoDO; import com.cool.store.entity.LineInfoDO; import com.cool.store.entity.LinePayDO; +import com.cool.store.entity.ShopInfoDO; import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.enums.WorkflowSubStageStatusEnum; import com.cool.store.enums.point.PayBusinessTypeEnum; @@ -18,14 +18,19 @@ import com.cool.store.enums.point.PayTypeEnum; import com.cool.store.exception.ServiceException; import com.cool.store.request.DecorationPayRequest; import com.cool.store.request.LinePaySubmitRequest; +import com.cool.store.request.ThreeAcceptanceRequest; +import com.cool.store.response.ThreeAcceptanceResponse; import com.cool.store.service.DecorationService; import com.cool.store.service.LinePayService; +import com.cool.store.service.PreparationService; import com.cool.store.service.YlfService; import com.cool.store.utils.poi.StringUtils; import com.cool.store.utils.poi.constant.Constants; +import com.cool.store.vo.DecorationModelVO; import com.cool.store.vo.DesignInfoVo; +import com.cool.store.vo.LinePayVO; import com.cool.store.vo.PartnerUserInfoVO; -import com.cool.store.vo.log.DesignLogVo; + import org.apache.poi.ss.formula.functions.T; import org.slf4j.Logger; import org.slf4j.LoggerFactory; @@ -54,32 +59,37 @@ public class DecorationServiceImpl implements DecorationService { @Resource private ShopInfoDAO shopInfoDAO; @Resource - private LineInfoDAO lineInfoDAO; - + private AcceptanceInfoDAO acceptanceInfoDAO; + @Resource + private PreparationService preparationService; @Resource private LinePayService linePayService; - private static String MEASURING_THE_ROOM = "量房"; - private static String CONSTRUCTION_DRAWING = "施工图+预算"; + @Override - public List decorations() { - return Collections.emptyList(); + public Boolean flush(Long shopId) { + //TODO + return null; } @Override public DesignInfoVo DesignInfo(Long shopId) { DecorationDTO decoration = getDecorationDTO(shopId); + if (decoration == null) { + log.error("DecorationModel shopCode is null"); + return null; + } List designScheme = decoration.getDesignScheme(); List constructionSchedule = decoration.getConstructionSchedule(); Map constructionScheduleMap = constructionSchedule.stream().collect(Collectors.toMap(ConstructionScheduleDTO::getName, dto -> dto)); //量房 - ConstructionScheduleDTO measuringRoom = constructionScheduleMap.get(MEASURING_THE_ROOM); - //施工图 - ConstructionScheduleDTO ConstructionDrawings = constructionScheduleMap.get(CONSTRUCTION_DRAWING); + ConstructionScheduleDTO measuringRoom = constructionScheduleMap.get(CommonConstants.MEASURING_THE_ROOM); + //施工图 + ConstructionScheduleDTO ConstructionDrawings = constructionScheduleMap.get(CommonConstants.CONSTRUCTION_DRAWING); //预算 List proposedBookBudget = decoration.getProposedBookBudget(); - Collections.sort(decoration.getProposedBookBudget(),(x1,x2)->x2.getId().compareTo(x1.getId())); + Collections.sort(decoration.getProposedBookBudget(), (x1, x2) -> x2.getId().compareTo(x1.getId())); DesignInfoVo designInfoVo = new DesignInfoVo(); designInfoVo.setMeasuringRoom(measuringRoom); @@ -91,16 +101,19 @@ public class DecorationServiceImpl implements DecorationService { @Override - public DecorationModelDTO DecorationModel(Long shopId) { - if (shopId == null){ + public DecorationModelDTO DecorationModel(Long shopId) { + if (shopId == null) { log.error("DecorationModel shopCode is null"); throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR); } DecorationDTO decoration = getDecorationDTO(shopId); - //TODO 验证 + if (decoration == null) { + log.error("DecorationModel shopCode is null"); + return null; + } //预算 List proposedBookBudget = decoration.getProposedBookBudget(); - Collections.sort(decoration.getProposedBookBudget(),(x1,x2)->x2.getId().compareTo(x1.getId())); + Collections.sort(decoration.getProposedBookBudget(), (x1, x2) -> x2.getId().compareTo(x1.getId())); String totalAmount = proposedBookBudget.get(0).getTotalAmount(); //支付二维码url Long regionId = shopInfoDAO.getRegionIdByid(shopId); @@ -110,33 +123,119 @@ public class DecorationServiceImpl implements DecorationService { decorationModelDTO.setTotalAmount(totalAmount); return decorationModelDTO; } + @Transactional(rollbackFor = Exception.class) @Override public String submitDecorationModel(LinePaySubmitRequest request, PartnerUserInfoVO partnerUserInfoVO) { DecorationDTO decoration = getDecorationDTO(request.getShopId()); - if ( decoration.getPayment() != null && decoration.getPayment().size()>0){ + if (decoration == null) { + log.error("DecorationModel shopCode is null"); + return null; + } + if (decoration.getPayment() != null && decoration.getPayment().size() > 0) { request.setPayStatus(WorkflowSubStageStatusEnum.PAY_DEPOSIT_50.getCode()); - }else { + } else { request.setPayStatus(WorkflowSubStageStatusEnum.PAY_DEPOSIT_45.getCode()); } - Long payId = linePayService.submitPayInfo(request, partnerUserInfoVO); return payId.toString(); } + + @Override + public DecorationModelVO getDecorationModel(Long shopId, PartnerUserInfoVO partnerUserInfoVO) { + ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId); + Long lineId = shopInfo.getLineId(); + LinePayVO linePayInfo = linePayService.getLinePayInfo(lineId); + if (Objects.isNull(linePayInfo)) { + return null; + } + if (Objects.isNull(partnerUserInfoVO)) { + partnerUserInfoVO = new PartnerUserInfoVO(); + BeanUtil.copyProperties(shopInfo, partnerUserInfoVO); + } + DecorationDTO decoration = getDecorationDTO(shopId); + if (decoration == null) { + log.error("DecorationModel shopCode is null"); + return null; + } + List proposedBookBudget = decoration.getProposedBookBudget(); + Collections.sort(decoration.getProposedBookBudget(), (x1, x2) -> x2.getId().compareTo(x1.getId())); + String totalAmount = proposedBookBudget.get(0).getTotalAmount(); + if (decoration.getPayment() != null && decoration.getPayment().size() > 0 + && (byte) WorkflowSubStageStatusEnum.PAY_DEPOSIT_50.getCode().intValue() == linePayInfo.getPayStatus()) { + linePayInfo.setPayStatus((byte) WorkflowSubStageStatusEnum.PAY_DEPOSIT_50.getCode().intValue()); + LinePaySubmitRequest submitRequest = new LinePaySubmitRequest(); + BeanUtil.copyProperties(linePayInfo, submitRequest); + linePayService.submitPayInfo(submitRequest, partnerUserInfoVO); + } + DecorationModelVO decorationModelVO = new DecorationModelVO(); + BeanUtil.copyProperties(linePayInfo, decorationModelVO); + decorationModelVO.setAmount(totalAmount); + return decorationModelVO; + } + @Override public List getConstruction(Long shopId) { DecorationDTO decoration = getDecorationDTO(shopId); + if (decoration == null) { + log.error("DecorationModel shopCode is null"); + return null; + } List constructionSchedule = decoration.getConstructionSchedule(); Map constructionScheduleMap = constructionSchedule.stream().collect(Collectors.toMap(ConstructionScheduleDTO::getName, dto -> dto)); - constructionScheduleMap.remove(MEASURING_THE_ROOM); - constructionScheduleMap.remove(CONSTRUCTION_DRAWING); - List collect = constructionScheduleMap.values().stream().collect(Collectors.toList()); - collect.sort(Comparator.comparing(ConstructionScheduleDTO::getId)); + List collect = new ArrayList<>(); + collect.add(constructionScheduleMap.get(CommonConstants.APPROACH)); + collect.add(constructionScheduleMap.get(CommonConstants.ONE_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.TWO_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.THREE_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.FOUR_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.FIVE_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.SIX_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.SEVEN_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.EIGHT_DAY)); + collect.add(constructionScheduleMap.get(CommonConstants.WITHDRAWAL)); + collect.sort(Comparator.comparing(ConstructionScheduleDTO::getId)); return collect; } + + @Override + public ConstructionScheduleDTO getConstructionInfo(Long shopId) { + DecorationDTO decoration = getDecorationDTO(shopId); + if (decoration == null) { + log.error("DecorationModel shopCode is null"); + return null; + } + List constructionSchedule = decoration.getConstructionSchedule(); + Map constructionScheduleMap = constructionSchedule.stream().collect(Collectors.toMap(ConstructionScheduleDTO::getName, + dto -> dto)); + ConstructionScheduleDTO constructionScheduleDTO = constructionScheduleMap.get(CommonConstants.CONSTRUCTION_PHASE); + return constructionScheduleDTO; + } + @Transactional(rollbackFor = Exception.class) + @Override + public Integer submitAcceptance(ThreeAcceptanceRequest request) { + AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO(); + BeanUtil.copyProperties(request, acceptanceInfoDO); + acceptanceInfoDO.setUpdateTime(new Date()); + Integer flag = acceptanceInfoDAO.updateAcceptanceInfo(acceptanceInfoDO); + if (flag != null && flag > 0) { + preparationService.whetherToOpenForAcceptance(request.getShopId()); + } + return flag; + } + + @Override + public ThreeAcceptanceResponse getThreeAcceptance(Long shopId) { + AcceptanceInfoDO acceptanceInfoDO = acceptanceInfoDAO.selectByShopId(shopId); + ThreeAcceptanceResponse response = new ThreeAcceptanceResponse(); + BeanUtil.copyProperties(acceptanceInfoDO, response); + response.setAcceptanceTime(acceptanceInfoDO.getUpdateTime()); + return response; + } + private DecorationDTO getDecorationDTO(Long shopId) { - List shopIds =new ArrayList<>(); + List shopIds = new ArrayList<>(); shopIds.add(shopId); List openPlanShopInfoDTOS = shopInfoDAO.queryStoreNumeListByid(shopIds); String storeNum = openPlanShopInfoDTOS.get(0).getStoreNum(); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FirstOrderServiceImp.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FirstOrderServiceImp.java index 8ca968457..969abde63 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FirstOrderServiceImp.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FirstOrderServiceImp.java @@ -111,7 +111,7 @@ public class FirstOrderServiceImp implements FirstOrderService { FirstOrderDTO order = firstOrderDAO.selectFirstOrderByShopId(shopId); ShopStageInfoDO firstOrderStageInfo = shopStageInfoDAO. getShopSubStageInfo(shopId, ShopSubStageEnum.SHOP_STAGE_15); - order.setResultType(firstOrderStageInfo.getShopSubStageStatus()); + order.setFirstOrderSubStage(firstOrderStageInfo.getShopSubStageStatus()); return order; } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java index 2435a84d6..6e41b1045 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/FranchiseFeeServiceImpl.java @@ -60,18 +60,20 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService { FranchiseFeeDO franchiseFeeDO = new FranchiseFeeDO(); franchiseFeeDO.setShopId(shopId); FranchiseFeeDO result = franchiseFeeMapper.selectOne(franchiseFeeDO); - LinePayDO linePayDO = linePayMapper.selectByPrimaryKey(result.getPayId()); - LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(linePayDO.getLineId()); FranchiseFeeResponse resp = FranchiseFeeResponse.from(result); - FranchiseFeeResponse.LinePay linePayResult = FranchiseFeeResponse.LinePay.from(linePayDO); - linePayResult.setAmount(new BigInteger(result.getPerformanceBond()).add(new BigInteger(result.getFirstYearFee())).toString()); - linePayResult.setPartnerName(lineInfoDO.getUsername()); - if (Objects.nonNull(result.getAuditId())){ - ShopAuditInfoDO shopAuditInfoDO = shopAuditInfoMapper.selectByPrimaryKey(result.getAuditId()); - linePayResult.setStatus(shopAuditInfoDO.getResultType()); - linePayResult.setResult(shopAuditInfoDO.getResultType() == 0 ? shopAuditInfoDO.getPassReason() : shopAuditInfoDO.getRejectReason()); + LinePayDO linePayDO = linePayMapper.selectByPrimaryKey(result.getPayId()); + if (Objects.nonNull(linePayDO)){ + FranchiseFeeResponse.LinePay linePayResult = FranchiseFeeResponse.LinePay.from(linePayDO); + LineInfoDO lineInfoDO = lineInfoMapper.getByLineId(linePayDO.getLineId()); + linePayResult.setPartnerName(lineInfoDO.getUsername()); + linePayResult.setAmount(new BigInteger(result.getPerformanceBond()).add(new BigInteger(result.getFirstYearFee())).toString()); + if (Objects.nonNull(result.getAuditId())){ + ShopAuditInfoDO shopAuditInfoDO = shopAuditInfoMapper.selectByPrimaryKey(result.getAuditId()); + linePayResult.setStatus(shopAuditInfoDO.getResultType()); + linePayResult.setResult(shopAuditInfoDO.getResultType() == 0 ? shopAuditInfoDO.getPassReason() : shopAuditInfoDO.getRejectReason()); + } + resp.setLinePayDO(linePayResult); } - resp.setLinePayDO(linePayResult); return resp; } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/KdzApiServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/KdzApiServiceImpl.java index 7ee4f88fe..36c129d52 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/KdzApiServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/KdzApiServiceImpl.java @@ -1,12 +1,23 @@ package com.cool.store.service.impl; +import com.cool.store.entity.LicenseTransactDO; +import com.cool.store.entity.ShopInfoDO; import com.cool.store.enums.ErrorCodeEnum; +import com.cool.store.enums.LicenseTypeEnum; import com.cool.store.exception.ServiceException; +import com.cool.store.mapper.ApplyLicenseMapper; +import com.cool.store.mapper.PointInfoMapper; +import com.cool.store.mapper.ShopInfoMapper; import com.cool.store.request.AuditResultRequest; +import com.cool.store.response.LicenseApiResponse; import com.cool.store.service.KdzApiService; import com.cool.store.utils.StringUtil; +import com.cool.store.utils.poi.DateUtils; import lombok.extern.slf4j.Slf4j; import org.springframework.stereotype.Service; +import org.springframework.web.bind.annotation.RequestBody; +import org.springframework.web.bind.annotation.ResponseBody; +import springfox.documentation.swagger2.mappers.LicenseMapper; import javax.annotation.Resource; import java.util.Objects; @@ -18,6 +29,12 @@ public class KdzApiServiceImpl implements KdzApiService { @Resource private CommonService commonService; + @Resource + private ShopInfoMapper shopInfoMapper; + + @Resource + ApplyLicenseMapper applyLicenseMapper; + @Override public boolean auditResult(AuditResultRequest request) { if (Objects.isNull(request) || StringUtil.isBlank(request.getKdzBusinessId())) { @@ -27,4 +44,44 @@ public class KdzApiServiceImpl implements KdzApiService { return result; } + @Override + public LicenseApiResponse license(String storeNum) { + ShopInfoDO shopInfoDO = shopInfoMapper.selectByStoreNum(storeNum); + if (Objects.isNull(shopInfoDO)){ + throw new ServiceException(ErrorCodeEnum.STORE_NUM_NOT_FOUND); + } + Long shopId = shopInfoDO.getId(); + LicenseTransactDO licenseTransactDO = new LicenseTransactDO(); + licenseTransactDO.setShopId(shopId); + licenseTransactDO = applyLicenseMapper.selectOne(licenseTransactDO); + LicenseApiResponse convertResp = convert(licenseTransactDO,storeNum); + return convertResp; + } + + public LicenseApiResponse convert(LicenseTransactDO licenseTransactDO, + String storeNum){ + LicenseApiResponse response = LicenseApiResponse.builder() + .storeBusinessAdd(licenseTransactDO.getLicenseAddress()) + .storeBusinessDate(DateUtils.dateTime(licenseTransactDO.getIssueTime())) + .storeBusinessImg(licenseTransactDO.getCreditUrl()) + .storeBusinessName(licenseTransactDO.getBusinessLicense()) + .storeBusinessNumber(licenseTransactDO.getCreditCode()) + .storeBusinessType(LicenseTypeEnum.match(licenseTransactDO.getLicenseType()).getMessage()) + .storeBusinessValidPeriod(Objects.isNull(licenseTransactDO.getValidity()) ? "9" : DateUtils.dateTime(licenseTransactDO.getValidity())) + .storeCode(storeNum) + .storeDirector(licenseTransactDO.getLicenseLegalPerson()) + .storeFoodLicense(licenseTransactDO.getFoodBusinessLicenseCode()) + .storeFoodLicenseBeginDate(DateUtils.dateTime(licenseTransactDO.getFoodBusinessStartTime())) + .storeFoodLicenseEndDate(DateUtils.dateTime(licenseTransactDO.getFoodBusinessEndTime())) + .storeFoodLicenseBusinessAddress(licenseTransactDO.getFoodLicenseAddress()) + .storeFoodLicenseBusinessScope(licenseTransactDO.getBusinessProject()) + .storeFoodLicenseImg(licenseTransactDO.getFoodBusinessLicenseUrl()) + .storeFoodLicenseLegalRepresentative(licenseTransactDO.getFoodLicenseLegalPerson()) + .storeFoodLicenseMainBusiness(licenseTransactDO.getMainBusiness()) + .storeFoodLicenseOperatorName(licenseTransactDO.getOperator()) + .storeRemark("") + .build(); + + return response; + } } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LinePayServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LinePayServiceImpl.java index 0171210c6..7b94a6496 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LinePayServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/LinePayServiceImpl.java @@ -56,9 +56,9 @@ public class LinePayServiceImpl implements LinePayService { public LinePayVO getLinePayInfo(Long lineId) { LinePayVO result = null; LinePayDO linePayDO = linePayDAO.getLinePayByLineId(lineId); - if (linePayDO != null){ + if (linePayDO != null) { result = new LinePayVO(); - BeanUtil.copyProperties(linePayDO,result); + BeanUtil.copyProperties(linePayDO, result); LineInfoDO lineInfo = lineInfoDAO.getLineInfo(lineId); result.setPartnerName(lineInfo != null ? lineInfo.getUsername() : ""); result.setMobile(lineInfo != null ? lineInfo.getMobile() : ""); @@ -70,14 +70,14 @@ public class LinePayServiceImpl implements LinePayService { @Transactional(rollbackFor = Exception.class) public Long submitPayInfo(LinePaySubmitRequest request, PartnerUserInfoVO partnerUser) { LineInfoDO lineInfo = lineInfoDAO.getLineInfo(request.getLineId()); - if(Objects.isNull(lineInfo)){ + if (Objects.isNull(lineInfo)) { throw new ServiceException(ErrorCodeEnum.LINE_ID_IS_NOT_EXIST); } if (request.getPayBusinessType() != null && request.getPayBusinessType() == Constants.ONE_INTEGER - && request.getShopId() != null){ - LinePayDO linePayDO = linePayDAO.getLinePayByLineIdAndPayType(request.getLineId(),request.getPayBusinessType()); - if (Objects.isNull(linePayDO)){ + && request.getShopId() != null) { + LinePayDO linePayDO = linePayDAO.getLinePayByLineIdAndPayType(request.getLineId(), request.getPayBusinessType()); + if (Objects.isNull(linePayDO)) { fillLinePay(true, linePayDO, request, partnerUser); Long aLong = linePayDAO.addLinePay(linePayDO); FranchiseFeeDO franchiseFeeDO = new FranchiseFeeDO(); @@ -85,21 +85,31 @@ public class LinePayServiceImpl implements LinePayService { FranchiseFeeDO result = franchiseFeeMapper.selectOneByExample(franchiseFeeDO); result.setPayId(aLong); franchiseFeeMapper.updateByPrimaryKeySelective(result); - }else { + } else { fillLinePay(false, linePayDO, request, partnerUser); linePayDAO.updateLinePay(linePayDO); } shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_72); - } - if(request.getPayBusinessType() != null - && request.getPayBusinessType() == 0 + } else if (request.getPayBusinessType() != null + && request.getPayBusinessType() == PayBusinessTypeEnum.DECORATION_MODEL.getCode() && request.getShopId() != null) { - LinePayDO linePayDO = linePayDAO.getLinePayByLineIdAndPayType(request.getLineId(),0); - if(linePayDO == null){ + LinePayDO linePayDO = linePayDAO.getLinePayByLineIdAndPayType(request.getLineId(), PayBusinessTypeEnum.DECORATION_MODEL.getCode()); + if (linePayDO == null) { linePayDO = new LinePayDO(); fillLinePay(true, linePayDO, request, partnerUser); linePayDAO.addLinePay(linePayDO); - }else { + } else { + fillLinePay(false, linePayDO, request, partnerUser); + linePayDAO.updateLinePay(linePayDO); + } + return linePayDO.getId(); + } else { + LinePayDO linePayDO = linePayDAO.getLinePayByLineIdAndPayType(request.getLineId(), 0); + if (linePayDO == null) { + linePayDO = new LinePayDO(); + fillLinePay(true, linePayDO, request, partnerUser); + linePayDAO.addLinePay(linePayDO); + } else { fillLinePay(false, linePayDO, request, partnerUser); linePayDAO.updateLinePay(linePayDO); } @@ -109,20 +119,7 @@ public class LinePayServiceImpl implements LinePayService { lineInfoDAO.insertOrUpdate(lineInfo); return linePayDO.getId(); } - if (request.getPayBusinessType() != null - && request.getPayBusinessType() == PayBusinessTypeEnum.DECORATION_MODEL.getCode() - && request.getShopId() != null){ - LinePayDO linePayDO = linePayDAO.getLinePayByLineIdAndPayType(request.getLineId(),PayBusinessTypeEnum.DECORATION_MODEL.getCode()); - if(linePayDO == null){ - linePayDO = new LinePayDO(); - fillLinePay(true, linePayDO, request, partnerUser); - linePayDAO.addLinePay(linePayDO); - }else { - fillLinePay(false, linePayDO, request, partnerUser); - linePayDAO.updateLinePay(linePayDO); - } - return linePayDO.getId(); - } + return null; } @@ -139,13 +136,13 @@ public class LinePayServiceImpl implements LinePayService { linePayDO.setPromisePic(request.getPromisePic()); linePayDO.setPayStatus(WorkflowSubStageStatusEnum.PAY_DEPOSIT_50.getCode()); linePayDO.setPayBusinessType(request.getPayBusinessType()); - if(isAdd){ + if (isAdd) { linePayDO.setPartnerId(partnerUser.getPartnerId()); linePayDO.setLineId(request.getLineId()); linePayDO.setCreateTime(new Date()); linePayDO.setCreateUserId(partnerUser.getPartnerId()); linePayDO.setDeleted(false); - }else { + } else { linePayDO.setUpdateTime(new Date()); linePayDO.setUpdateUserId(partnerUser.getPartnerId()); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java index bc09fabd4..bf7956776 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OpeningOperationPlanImpl.java @@ -10,6 +10,7 @@ import com.cool.store.dto.openPreparation.OpenPlanShopInfoDTO; import com.cool.store.dto.openPreparation.OpeningOperationPlanDTO; import com.cool.store.dto.openPreparation.PlanLineDTO; import com.cool.store.dto.openPreparation.UserNameDTO; +import com.cool.store.entity.EnterpriseUserDO; import com.cool.store.entity.OpeningOperationPlanDO; import com.cool.store.entity.ShopInfoDO; import com.cool.store.entity.ShopStageInfoDO; @@ -123,6 +124,8 @@ public class OpeningOperationPlanImpl implements OpeningOperationPlanService { String preparationUserIds = openingOperationPlanDO.getPreparationUserIds(); List stream = Arrays.stream(preparationUserIds.split(CommonConstants.COMMA)).collect(Collectors.toList()); List nameByUserId = enterpriseUserDAO.getNameByUserId(stream); + EnterpriseUserDO username = enterpriseUserDAO.getUserInfoById(openingOperationPlanDO.getSubmittedUserId()); + openingOperationPlanVO.setSubmittedUserName(username.getName()); openingOperationPlanVO.setPreparationUsers(nameByUserId); return openingOperationPlanVO; } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PreparationServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PreparationServiceImpl.java index 4504b9a51..eaffe2d0f 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PreparationServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/PreparationServiceImpl.java @@ -4,6 +4,10 @@ import com.cool.store.constants.CommonConstants; import com.cool.store.dao.*; import com.cool.store.dto.Preparation.PreparationDTO; import com.cool.store.dto.Preparation.ScheduleDTO; +import com.cool.store.dto.decoration.ConstructionScheduleDTO; +import com.cool.store.dto.decoration.DecorationDTO; +import com.cool.store.dto.decoration.ProjectDTO; +import com.cool.store.dto.openPreparation.OpenPlanShopInfoDTO; import com.cool.store.entity.*; import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.enums.point.ShopStageEnum; @@ -11,10 +15,7 @@ import com.cool.store.enums.point.ShopSubStageEnum; import com.cool.store.enums.point.ShopSubStageStatusEnum; import com.cool.store.exception.ServiceException; import com.cool.store.request.PreparationRequest; -import com.cool.store.service.PreparationService; -import com.cool.store.service.RegionService; -import com.cool.store.service.SysRoleService; -import com.cool.store.service.UserAuthMappingService; +import com.cool.store.service.*; import com.cool.store.utils.poi.DateUtils; import com.cool.store.utils.poi.StringUtils; import com.cool.store.utils.poi.constant.Constants; @@ -24,9 +25,13 @@ import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; import com.google.common.collect.Lists; import org.apache.commons.collections4.CollectionUtils; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.stereotype.Service; import javax.annotation.Resource; +import java.text.ParseException; +import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; @@ -36,8 +41,9 @@ import java.util.stream.Collectors; * @Version 1.0 */ @Service -public class PreparationServiceImpl implements PreparationService { +public class PreparationServiceImpl implements PreparationService { + private static final Logger log = LoggerFactory.getLogger(PreparationServiceImpl.class); @Resource private ShopStageInfoDAO shopStageInfoDAO; @Resource @@ -53,18 +59,23 @@ public class PreparationServiceImpl implements PreparationService { @Resource EnterpriseUserDAO enterpriseUserDAO; @Resource - LineInfoDAO lineInfoDAO; - + LineInfoDAO lineInfoDAO; + @Resource + private AcceptanceInfoDAO acceptanceInfoDAO; + @Resource + private YlfService ylfService; + @Resource + private DecorationService decorationService; @Override public PageInfo getPreparationSchedule(PreparationRequest request) { - if(!sysRoleService.checkIsAdmin(request.getCurUserId())){ + if (!sysRoleService.checkIsAdmin(request.getCurUserId())) { request.setAuthRegionIds(userAuthMappingService.getAuthRegionIdAndSubRegionIdByUserId(request.getCurUserId())); } - if(CollectionUtils.isNotEmpty(request.getRegionIds())){ - if(request.getRegionIds().contains(CommonConstants.ROOT_DEPT_ID_STR)){ + if (CollectionUtils.isNotEmpty(request.getRegionIds())) { + if (request.getRegionIds().contains(CommonConstants.ROOT_DEPT_ID_STR)) { request.setRegionIds(null); - }else{ + } else { request.setRegionIds(regionService.getSubRegionIdsByRegionIds(request.getRegionIds())); } } @@ -79,13 +90,13 @@ public class PreparationServiceImpl implements PreparationService { Map shopStageInfoDOMap = shopContractActualCompletionTime.stream().collect(Collectors.toMap(ShopStageInfoDO::getShopId, x -> x)); List regionIds = preparationDTOS.stream().map(PreparationDTO::getRegionId).collect(Collectors.toList()); Map regionNameMap = regionService.getBelongWarRegionNameMap(regionIds); - Set userIds = preparationDTOS.stream().filter(x->StringUtils.isNotEmpty(x.getShopManagerUserId())).map(PreparationDTO::getShopManagerUserId).collect(Collectors.toSet()); - userIds.addAll(preparationDTOS.stream().filter(x->StringUtils.isNotEmpty(x.getInvestmentManager())).map(PreparationDTO::getInvestmentManager).collect(Collectors.toSet())); - userIds.addAll(preparationDTOS.stream().filter(x->StringUtils.isNotEmpty(x.getSupervisorUserId())).map(PreparationDTO::getSupervisorUserId).collect(Collectors.toSet())); + Set userIds = preparationDTOS.stream().filter(x -> StringUtils.isNotEmpty(x.getShopManagerUserId())).map(PreparationDTO::getShopManagerUserId).collect(Collectors.toSet()); + userIds.addAll(preparationDTOS.stream().filter(x -> StringUtils.isNotEmpty(x.getInvestmentManager())).map(PreparationDTO::getInvestmentManager).collect(Collectors.toSet())); + userIds.addAll(preparationDTOS.stream().filter(x -> StringUtils.isNotEmpty(x.getSupervisorUserId())).map(PreparationDTO::getSupervisorUserId).collect(Collectors.toSet())); Map userInfoMap = enterpriseUserDAO.getUserInfoMap(new ArrayList<>(userIds)); List preparationScheduleVOS = new ArrayList<>(); - preparationDTOS.forEach(x->{ + preparationDTOS.forEach(x -> { PreparationScheduleVO preparationScheduleVO = new PreparationScheduleVO(); preparationScheduleVO.setMobile(x.getMobile()); preparationScheduleVO.setUsername(x.getUsername()); @@ -102,7 +113,7 @@ public class PreparationServiceImpl implements PreparationService { preparationScheduleVO.setCompletionColumn(dto.getCompletionColumn()); preparationScheduleVO.setTotalColumn(dto.getTotalColumn()); ShopStageInfoDO stageInfoDO = shopStageInfoDOMap.getOrDefault(x.getId(), new ShopStageInfoDO()); - if (StringUtils.isNotEmpty(stageInfoDO.getActualCompleteTime())){ + if (StringUtils.isNotEmpty(stageInfoDO.getActualCompleteTime())) { preparationScheduleVO.setContractCompletionTime(DateUtils.strToDate(stageInfoDO.getActualCompleteTime(), DateUtils.YYYY_MM_DD_HH_MM_SS)); } preparationScheduleVO.setDays(); @@ -115,7 +126,7 @@ public class PreparationServiceImpl implements PreparationService { @Override public PreparationScheduleDetailVO getPreparationDetail(Long shopId) { ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId); - if (shopInfo == null){ + if (shopInfo == null) { throw new ServiceException(ErrorCodeEnum.SHOP_ID_IS_NULL); } LineInfoDO lineInfo = lineInfoDAO.getLineInfo(shopInfo.getLineId()); @@ -124,10 +135,10 @@ public class PreparationServiceImpl implements PreparationService { PreparationScheduleDetailVO preparationScheduleDetailVO = new PreparationScheduleDetailVO(); List shop = shopStageInfoDAO.getShopContractActualCompletionTime(Collections.singletonList(shopId)); Set userSet = new HashSet<>(); - if (StringUtils.isNotEmpty(lineInfo.getInvestmentManager())){ + if (StringUtils.isNotEmpty(lineInfo.getInvestmentManager())) { userSet.add(lineInfo.getInvestmentManager()); } - if (StringUtils.isNotEmpty(lineInfo.getDevelopmentManager())){ + if (StringUtils.isNotEmpty(lineInfo.getDevelopmentManager())) { userSet.add(lineInfo.getDevelopmentManager()); } Map regionNameMap = regionService.getBelongWarRegionNameMap(Collections.singletonList(shopInfo.getRegionId())); @@ -140,13 +151,13 @@ public class PreparationServiceImpl implements PreparationService { preparationScheduleDetailVO.setPlanOpenTime(shopInfo.getPlanOpenTime()); preparationScheduleDetailVO.setStoreNum(shopInfo.getStoreNum()); preparationScheduleDetailVO.setJoinStatus(lineInfo.getJoinStatus()); - if (CollectionUtils.isNotEmpty(shopContractActualCompletionTime)){ + if (CollectionUtils.isNotEmpty(shopContractActualCompletionTime)) { ScheduleDTO scheduleDTO = shopContractActualCompletionTime.get(CommonConstants.ZERO); preparationScheduleDetailVO.setCompletionColumn(scheduleDTO.getCompletionColumn()); preparationScheduleDetailVO.setTotalColumn(scheduleDTO.getTotalColumn()); preparationScheduleDetailVO.setPlanCompletionTime(scheduleDTO.getPlanCompleteTime()); } - if (CollectionUtils.isNotEmpty(shop)){ + if (CollectionUtils.isNotEmpty(shop)) { ShopStageInfoDO shopStageInfoDO = shop.get(CommonConstants.ZERO); preparationScheduleDetailVO.setContractCompletionTime(DateUtils.strToDate(shopStageInfoDO.getActualCompleteTime(), DateUtils.YYYY_MM_DD_HH_MM_SS)); } @@ -164,13 +175,13 @@ public class PreparationServiceImpl implements PreparationService { @Override public void contractAndBuildStoreCompletion(Long shopId) { List shopStageInfo = shopStageInfoDAO.getShopStageInfo(shopId, null); - if (CollectionUtils.isNotEmpty(shopStageInfo)){ + if (CollectionUtils.isNotEmpty(shopStageInfo)) { Map shopStageInfoDOMap = shopStageInfo.stream().collect(Collectors.toMap(ShopStageInfoDO::getShopSubStage, data -> data)); - Boolean buildStoreCompletionFlag= ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_33.getShopSubStageStatus().equals(shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_3.getShopSubStage()).getShopSubStageStatus()); - Boolean contractCompletionFlag= ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_73.getShopSubStageStatus().equals(shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_7.getShopSubStage()).getShopSubStageStatus()); + Boolean buildStoreCompletionFlag = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_33.getShopSubStageStatus().equals(shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_3.getShopSubStage()).getShopSubStageStatus()); + Boolean contractCompletionFlag = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_73.getShopSubStageStatus().equals(shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_7.getShopSubStage()).getShopSubStageStatus()); //都完成了 初始化后续流程数据 - if (buildStoreCompletionFlag && contractCompletionFlag){ + if (buildStoreCompletionFlag && contractCompletionFlag) { //初始化后续流程数据 设计阶段 装修阶段 开业运营方案 首批订货清单 List list = new ArrayList<>(); ShopStageInfoDO data1 = shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_9.getShopSubStage()); @@ -179,6 +190,11 @@ public class PreparationServiceImpl implements PreparationService { ShopStageInfoDO data2 = shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_11.getShopSubStage()); data2.setShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_110.getShopSubStageStatus()); list.add(data2); + //初始化xfsg_acceptance_info表 + AcceptanceInfoDO acceptanceInfoDO = new AcceptanceInfoDO(); + acceptanceInfoDO.setShopId(shopId); + acceptanceInfoDO.setCreateTime(new Date()); + acceptanceInfoDAO.insertAcceptanceInfo(acceptanceInfoDO); ShopStageInfoDO data3 = shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_14.getShopSubStage()); data3.setShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_140.getShopSubStageStatus()); list.add(data3); @@ -190,12 +206,11 @@ public class PreparationServiceImpl implements PreparationService { } } - @Override public void whetherToOpenForAcceptance(Long shopId) { Integer allCompletionCount = shopStageInfoDAO.getAllCompletionCount(shopId); //如果等于6 表示前面阶段都已经完成 初始化开业验收数据 - if (allCompletionCount.equals(CommonConstants.SIX)){ + if (allCompletionCount.equals(CommonConstants.SIX)) { OpenAcceptanceInfoDO openAcceptanceInfoDO = new OpenAcceptanceInfoDO(); openAcceptanceInfoDO.setShopId(shopId); openAcceptanceInfoDO.setAcceptanceStatus(CommonConstants.ZERO); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SignFranchiseServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SignFranchiseServiceImpl.java index 4c9d595e5..080adaeaa 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SignFranchiseServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/SignFranchiseServiceImpl.java @@ -17,6 +17,7 @@ import com.cool.store.request.FranchiseAgreementRequest; import com.cool.store.response.AddSignFranchiseResponse; import com.cool.store.response.ResponseResult; import com.cool.store.service.CoolStoreStartFlowService; +import com.cool.store.service.PreparationService; import com.cool.store.service.SignFranchiseService; import com.cool.store.utils.poi.DateUtils; import com.cool.store.utils.poi.constant.Constants; @@ -76,6 +77,9 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu @Resource ShopAuditInfoMapper shopAuditInfoMapper; + @Resource + PreparationService preparationService; + @Override public Boolean auditResult(AuditResultRequest request) { log.info("SignFranchiseServiceImpl auditResult request:{}", JSONObject.toJSONString(request)); @@ -99,6 +103,8 @@ public class SignFranchiseServiceImpl implements SignFranchiseService, AuditResu }else if (request.getAuditResult() == Constants.ONE_INTEGER){ shopAuditInfoDO.setResultType(Constants.ZERO_INTEGER); shopAuditInfoDO.setPassReason(request.getCause()); + //校验建店与加盟签约合同是否完成 并初始化后续流程数据 + preparationService.contractAndBuildStoreCompletion(shopId); } shopAuditInfoMapper.insertSelective(shopAuditInfoDO); Long auditId = shopAuditInfoDO.getId(); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/TempUserDetailServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/TempUserDetailServiceImpl.java new file mode 100644 index 000000000..dd107e5ed --- /dev/null +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/TempUserDetailServiceImpl.java @@ -0,0 +1,131 @@ +package com.cool.store.service.impl; + +import com.cool.store.dao.EnterpriseUserDAO; +import com.cool.store.dao.ShopInfoDAO; +import com.cool.store.dao.TempUserDetailDAO; +import com.cool.store.entity.EnterpriseUserDO; +import com.cool.store.entity.ShopInfoDO; +import com.cool.store.entity.TempUserDetailDO; +import com.cool.store.exception.ServiceException; +import com.cool.store.request.TempUserDetailRequest; +import com.cool.store.service.TempUserDetailService; +import com.cool.store.utils.StringUtil; +import com.cool.store.vo.TempUserDetailInfoVO; +import com.cool.store.vo.TempUserDetailListVO; +import com.cool.store.vo.TempUserDetailVO; +import org.apache.commons.collections4.CollectionUtils; +import org.springframework.stereotype.Service; + +import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Date; +import java.util.List; + +/** + * @author byd + * @date 2024-04-29 16:14 + */ +@Service +public class TempUserDetailServiceImpl implements TempUserDetailService { + + @Resource + private TempUserDetailDAO tempUserDetailDAO; + + @Resource + private ShopInfoDAO shopInfoDAO; + + @Resource + private EnterpriseUserDAO enterpriseUserDAO; + + @Override + public TempUserDetailListVO userList(Long shopId) { + List tempUserDetailDOList = tempUserDetailDAO.userList(shopId); + List resultList = new ArrayList<>(); + if (CollectionUtils.isNotEmpty(tempUserDetailDOList)) { + tempUserDetailDOList.forEach(tempUserDetailDO -> { + TempUserDetailVO tempUserDetailVO = new TempUserDetailVO(); + tempUserDetailVO.setId(tempUserDetailDO.getId()); + tempUserDetailVO.setMobile(tempUserDetailDO.getMobile()); + tempUserDetailVO.setIdCard(tempUserDetailDO.getIdCard()); + tempUserDetailVO.setSource(tempUserDetailDO.getSource()); + tempUserDetailVO.setRegisterTime(tempUserDetailDO.getRegisterTime()); + tempUserDetailVO.setShopId(tempUserDetailDO.getShopId()); + tempUserDetailVO.setLineId(tempUserDetailDO.getLineId()); + tempUserDetailVO.setUsername(tempUserDetailDO.getUsername()); + tempUserDetailVO.setRegionId(tempUserDetailDO.getRegionId()); + tempUserDetailVO.setRoleId(tempUserDetailDO.getRoleId()); + resultList.add(tempUserDetailVO); + }); + } + ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(shopId); + if(shopInfoDO == null){ + throw new ServiceException("该店铺不存在"); + } + TempUserDetailListVO tempUserDetailListVO = new TempUserDetailListVO(); + tempUserDetailListVO.setUserList(resultList); + tempUserDetailListVO.setShopId(shopId); + tempUserDetailListVO.setStoreNum(shopInfoDO.getStoreNum()); + return tempUserDetailListVO; + } + + @Override + public void addTempUserDetail(TempUserDetailRequest tempUserDetailRequest) { + TempUserDetailDO tempUserDetailDO = tempUserDetailDAO.selectByIdCard(tempUserDetailRequest.getIdCard()); + if(tempUserDetailDO != null){ + throw new ServiceException("该员工已登记"); + } + EnterpriseUserDO enterpriseUserDO = enterpriseUserDAO.getUserInfoByThirdOaUniqueFlag(tempUserDetailRequest.getIdCard()); + if(enterpriseUserDO == null){ + throw new ServiceException("用户不存在"); + } + ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(tempUserDetailRequest.getShopId()); + if(shopInfoDO == null){ + throw new ServiceException("该店铺不存在"); + } + if(StringUtil.isNotBlank(shopInfoDO.getStoreNum())){ + throw new ServiceException("系统建店已完成,无法手动登记"); + } + tempUserDetailDO = new TempUserDetailDO(); + tempUserDetailDO.setLineId(shopInfoDO.getLineId()); + tempUserDetailDO.setShopId(tempUserDetailRequest.getShopId()); + tempUserDetailDO.setRegionId(shopInfoDO.getRegionId()); + tempUserDetailDO.setMobile(tempUserDetailRequest.getPhone()); + tempUserDetailDO.setUsername(tempUserDetailRequest.getName()); + tempUserDetailDO.setSex(tempUserDetailRequest.getSex()); + tempUserDetailDO.setAge(tempUserDetailRequest.getAge()); + tempUserDetailDO.setIdCard(tempUserDetailRequest.getIdCard()); + tempUserDetailDO.setStatus(1); + tempUserDetailDO.setEducational(tempUserDetailRequest.getHighestDegree()); + tempUserDetailDO.setRoleId(tempUserDetailRequest.getJobId()); + tempUserDetailDO.setIdCardNegativeUrl(tempUserDetailRequest.getEmblemPhoto()); + tempUserDetailDO.setIdCardPositiveUrl(tempUserDetailRequest.getIdNumPhoto()); + tempUserDetailDO.setHealthCertificateUrl(tempUserDetailRequest.getHealthCertificate()); + tempUserDetailDO.setRegisterTime(new Date()); + tempUserDetailDO.setSubmitTime(new Date()); + tempUserDetailDO.setSource("create"); + tempUserDetailDAO.insertSelective(tempUserDetailDO); + } + + @Override + public TempUserDetailInfoVO getUserInfoByIdUserDetailId(Long userDetailId) { + TempUserDetailDO tempUserDetailDO = tempUserDetailDAO.selectById(userDetailId); + TempUserDetailInfoVO tempUserDetailInfoVO = new TempUserDetailInfoVO(); + tempUserDetailInfoVO.setLineId(tempUserDetailDO.getLineId()); + tempUserDetailInfoVO.setShopId(tempUserDetailDO.getShopId()); + tempUserDetailInfoVO.setRegionId(tempUserDetailDO.getRegionId()); + tempUserDetailInfoVO.setMobile(tempUserDetailDO.getMobile()); + tempUserDetailInfoVO.setUsername(tempUserDetailDO.getUsername()); + tempUserDetailInfoVO.setSex(tempUserDetailDO.getSex()); + tempUserDetailInfoVO.setAge(tempUserDetailDO.getAge()); + tempUserDetailInfoVO.setIdCard(tempUserDetailDO.getIdCard()); + tempUserDetailInfoVO.setStatus(tempUserDetailDO.getStatus()); + tempUserDetailInfoVO.setEducational(tempUserDetailDO.getEducational()); + tempUserDetailInfoVO.setRoleId(tempUserDetailDO.getRoleId()); + tempUserDetailInfoVO.setIdCardNegativeUrl(tempUserDetailDO.getIdCardNegativeUrl()); + tempUserDetailInfoVO.setIdCardPositiveUrl(tempUserDetailDO.getIdCardPositiveUrl()); + tempUserDetailInfoVO.setHealthCertificateUrl(tempUserDetailDO.getHealthCertificateUrl()); + tempUserDetailInfoVO.setRegisterTime(new Date()); + return tempUserDetailInfoVO; + } + +} diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/YlfServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/YlfServiceImpl.java index 0134f50d0..bf7549726 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/YlfServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/YlfServiceImpl.java @@ -60,12 +60,12 @@ public class YlfServiceImpl implements YlfService { } @Override - public ProjectDTO getProjectList(String shopCode) { - log.info("getProjectList param:{}", shopCode); - if (Objects.isNull(shopCode)) { + public ProjectDTO getProjectList(String storeNum) { + log.info("getProjectList param:{}", storeNum); + if (Objects.isNull(storeNum)) { throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR); } - String url = String.format(Constants.GET_PROJECT_LIST, shopCode); + String url = String.format(Constants.GET_PROJECT_LIST, storeNum); log.info("CoolStoreStartFlowServiceImpl#getOrder, url:{}", url); try { String jsonString = httpRestTemplateService.getForObject(url, String.class, new HashMap<>()); @@ -82,7 +82,7 @@ public class YlfServiceImpl implements YlfService { return rows.get(0); } } else { - log.info("获取云立方装修公司信息失败,shopCode:{}", shopCode); + log.info("获取云立方装修公司信息失败,shopCode:{}", storeNum); throw new ServiceException(ErrorCodeEnum.YLF_ERROR); } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/config/SignValidateFilter.java b/coolstore-partner-web/src/main/java/com/cool/store/config/SignValidateFilter.java index 21b531931..4b01baecb 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/config/SignValidateFilter.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/config/SignValidateFilter.java @@ -57,7 +57,8 @@ public class SignValidateFilter implements Filter { "/**/swagger*/**", "/**/webjars/**", "/xfsg/mini/program/v1/partnerManage/openArea/areaApplyQuery", - "/xfsg/*/api/audit/result", + "/xfsg/**/api/audit/result", + "/xfsg/**/api/license", "/xfsg/mini/line/getRegionPayPic" ); diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/KdzApiController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/KdzApiController.java index 53ca81923..4d755b4bc 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/KdzApiController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/KdzApiController.java @@ -3,8 +3,10 @@ package com.cool.store.controller.webb; import com.alibaba.fastjson.JSONObject; import com.cool.store.enums.ErrorCodeEnum; import com.cool.store.request.AuditResultRequest; +import com.cool.store.request.LicenseBizContentRequest; import com.cool.store.request.SysBuildResultRequest; import com.cool.store.request.XfsgOpenApiRequest; +import com.cool.store.response.LicenseApiResponse; import com.cool.store.response.ResponseResult; import com.cool.store.service.KdzApiService; import com.cool.store.utils.EncryptUtil; @@ -42,6 +44,22 @@ public class KdzApiController { return ResponseResult.success(kdzApiService.auditResult(auditResultRequest)); } + @ApiOperation("证照信息回调") + @PostMapping("/license") + public ResponseResult license(@PathVariable(value = "enterprise-id") String eid, + @RequestBody XfsgOpenApiRequest request) { + log.info("auditResult requestBody :{}", JSONObject.toJSONString(request)); + if(!verifyMD5(request,eid)){ + return ResponseResult.fail(ErrorCodeEnum.VERIFY_MD5_FALSE); + } + if(eid == null || request.getBizContent() == null){ + return ResponseResult.fail(ErrorCodeEnum.PARAMS_VALIDATE_ERROR); + } + LicenseBizContentRequest storeNum = JSONObject.parseObject(request.getBizContent(), LicenseBizContentRequest.class); + return ResponseResult.success(kdzApiService.license(storeNum.getStoreNum())); + } + + public static boolean verifyMD5(XfsgOpenApiRequest request, String eid){ diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCDecorationController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCDecorationController.java index 37b5e09c8..a3c0a9801 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCDecorationController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCDecorationController.java @@ -7,10 +7,13 @@ import com.cool.store.dto.decoration.DecorationDTO; import com.cool.store.dto.decoration.DecorationModelDTO; import com.cool.store.request.DecorationPayRequest; import com.cool.store.request.LinePaySubmitRequest; +import com.cool.store.request.ThreeAcceptanceRequest; import com.cool.store.response.ResponseResult; +import com.cool.store.response.ThreeAcceptanceResponse; import com.cool.store.service.CoolStoreStartFlowService; import com.cool.store.service.DecorationService; import com.cool.store.service.YlfService; +import com.cool.store.vo.DecorationModelVO; import com.cool.store.vo.DesignInfoVo; import com.cool.store.vo.PartnerUserInfoVO; import io.swagger.annotations.Api; @@ -34,6 +37,10 @@ import java.util.List; public class PCDecorationController { @Resource private DecorationService decorationService; + @GetMapping("/flush") + public ResponseResult flush(@RequestParam("shopId") Long shopId) { + return ResponseResult.success(decorationService.flush(shopId)); + } @ApiModelProperty("获取设计阶段信息") @GetMapping("/design") public ResponseResult get(@RequestParam Long shopId){ @@ -45,4 +52,15 @@ public class PCDecorationController { public ResponseResult> getConstruction(@RequestParam Long shopId){ return ResponseResult.success(decorationService.getConstruction(shopId)) ; } + @ApiModelProperty("获取装修款信息") + @GetMapping("/getDecorationModelInfo") + public ResponseResult getDecorationModelInfo(@RequestParam Long shopId){ + PartnerUserInfoVO user = null; + return ResponseResult.success(decorationService.getDecorationModel(shopId,user)); + } + @ApiModelProperty("查看三方验收") + @GetMapping("/getThreeAcceptance") + public ResponseResult getThreeAcceptance(@RequestParam Long shopId){ + return ResponseResult.success(decorationService.getThreeAcceptance(shopId)); + } } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDecorationController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDecorationController.java index 93964e743..8bcde5c5b 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDecorationController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniDecorationController.java @@ -3,9 +3,13 @@ package com.cool.store.controller.webc; import com.cool.store.context.PartnerUserHolder; import com.cool.store.dto.decoration.DecorationModelDTO; import com.cool.store.request.LinePaySubmitRequest; +import com.cool.store.request.ThreeAcceptanceRequest; import com.cool.store.response.ResponseResult; +import com.cool.store.response.ThreeAcceptanceResponse; import com.cool.store.service.DecorationService; +import com.cool.store.vo.DecorationModelVO; import com.cool.store.vo.PartnerUserInfoVO; +import com.sun.xml.bind.v2.TODO; import io.swagger.annotations.Api; import io.swagger.annotations.ApiModelProperty; import lombok.extern.slf4j.Slf4j; @@ -29,13 +33,30 @@ public class MiniDecorationController { @PostMapping("/submitDecorationModel") public ResponseResult submitDecorationModel(@RequestBody LinePaySubmitRequest linePaySubmitRequest){ PartnerUserInfoVO user = PartnerUserHolder.getUser(); + //TODO user.setPartnerId("61bf57dc65334885802a278835f499d0"); - decorationService.submitDecorationModel(linePaySubmitRequest, user); - return ResponseResult.success(); + return ResponseResult.success(decorationService.submitDecorationModel(linePaySubmitRequest, user)); } @ApiModelProperty("获取装修款信息,和二维码") @GetMapping("/getDecorationModel") public ResponseResult getDecorationModel(@RequestParam Long shopId){ return ResponseResult.success(decorationService.DecorationModel(shopId)) ; } + @ApiModelProperty("获取装修款信息") + @GetMapping("/getDecorationModelInfo") + public ResponseResult getDecorationModelInfo(@RequestParam Long shopId){ + PartnerUserInfoVO user = PartnerUserHolder.getUser(); + user.setPartnerId("61bf57dc65334885802a278835f499d0"); + return ResponseResult.success(decorationService.getDecorationModel(shopId,user)); + } + @ApiModelProperty("提交三方验收") + @PostMapping("/submitThreeAcceptance") + public ResponseResult submitThreeAcceptance(@RequestParam ThreeAcceptanceRequest request){ + return ResponseResult.success(decorationService.submitAcceptance(request)); + } + @ApiModelProperty("查看三方验收") + @GetMapping("/getThreeAcceptance") + public ResponseResult getThreeAcceptance(@RequestParam Long shopId){ + return ResponseResult.success(decorationService.getThreeAcceptance(shopId)); + } } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniOpenPreparationController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniOpenPreparationController.java index 1b6f924cd..98c8db066 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniOpenPreparationController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/MiniOpenPreparationController.java @@ -14,6 +14,7 @@ import com.cool.store.response.ResponseResult; import com.cool.store.service.*; import com.cool.store.vo.OpeningOperationPlanVO; import io.swagger.annotations.Api; +import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.GetMapping; @@ -30,24 +31,16 @@ import javax.annotation.Resource; * @注释: */ @RestController -@RequestMapping("/mini/OpenPreparation") +@RequestMapping("/mini/openPreparation") @Api(tags = "mini开业筹备") @Slf4j public class MiniOpenPreparationController { @Resource private OpeningOperationPlanService openingOperationPlanService; - @Resource - private AuditOpeningOperationPlanService auditOpeningOperationPlanService; - @Resource - private CoolStoreStartFlowService coolStoreStartFlowService; - @Resource - private ShopStageInfoDAO shopStageInfoDAO; + @Resource private FirstOrderService firstOrderService; - @Resource - private ShopService shopService; - @Resource - private PreparationService preparationService; + @GetMapping("/openingOperationPlan/getPlan") @ApiOperation("查询开业运营方案") @@ -65,10 +58,5 @@ public class MiniOpenPreparationController { public ResponseResult get(@RequestParam("shopId") Long shopId) { return ResponseResult.success(firstOrderService.getOrder(shopId)); } - @GetMapping("/firstOrder/flush") - public ResponseResult flush(@RequestParam Long shopId) { - return ResponseResult.success( firstOrderService.flush(shopId)); - } - } diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/TempUserDetailController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/TempUserDetailController.java new file mode 100644 index 000000000..28e4821a7 --- /dev/null +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webc/TempUserDetailController.java @@ -0,0 +1,68 @@ +package com.cool.store.controller.webc; + +import com.cool.store.dto.ehr.StaffBaseInfoDTO; +import com.cool.store.request.TempUserDetailRequest; +import com.cool.store.response.ResponseResult; +import com.cool.store.service.TempUserDetailService; +import com.cool.store.service.XfsgEhrService; +import com.cool.store.vo.TempUserDetailInfoVO; +import com.cool.store.vo.TempUserDetailListVO; +import io.swagger.annotations.Api; +import io.swagger.annotations.ApiImplicitParam; +import io.swagger.annotations.ApiImplicitParams; +import io.swagger.annotations.ApiOperation; +import lombok.extern.slf4j.Slf4j; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +/** + * @author byd + * @date 2024-04-29 16:15 + */ +@RestController +@RequestMapping({"/mini/tempUserDetail"}) +@Slf4j +@Api(tags = "培训登记") +public class TempUserDetailController { + + @Autowired + private TempUserDetailService tempUserDetailService; + + @Autowired + private XfsgEhrService xfsgEhrService; + + @GetMapping(path = "/getUserList") + @ApiOperation("登记员工列表") + @ApiImplicitParams({ + @ApiImplicitParam(name = "shopId", value = "店铺Id") + }) + public ResponseResult getUserList(@RequestParam(value = "shopId") Long shopId) { + return ResponseResult.success(tempUserDetailService.userList(shopId)); + } + + @GetMapping(path = "/getUserInfoByIdCard") + @ApiImplicitParams({ + @ApiImplicitParam(name = "idCard", value = "身份证号") + }) + @ApiOperation("培训登记-身份证号查询信息") + public ResponseResult getUserInfoByIdCard(@RequestParam(value = "idCard") String idCard) { + return ResponseResult.success(xfsgEhrService.getUserInfoByIdCard((idCard))); + } + + @PostMapping(path = "/addTempUserDetail") + @ApiOperation("培训登记-确认登记") + public ResponseResult addTempUserDetail(@RequestBody TempUserDetailRequest tempUserDetailRequest) { + tempUserDetailService.addTempUserDetail((tempUserDetailRequest)); + return ResponseResult.success(Boolean.TRUE); + } + + @GetMapping(path = "/getUserInfoByIdUserDetailId") + @ApiImplicitParams({ + @ApiImplicitParam(name = "userDetailId", value = "用户详情表id") + }) + @ApiOperation("培训登记-查询信息根据用户详情id") + public ResponseResult getUserInfoByIdUserDetailId(@RequestParam(value = "userDetailId") Long userDetailId) { + return ResponseResult.success(tempUserDetailService.getUserInfoByIdUserDetailId((userDetailId))); + } + +} diff --git a/coolstore-partner-web/src/main/java/com/cool/store/job/XxlJobHandler.java b/coolstore-partner-web/src/main/java/com/cool/store/job/XxlJobHandler.java index a5bdbae67..13c0d2f03 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/job/XxlJobHandler.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/job/XxlJobHandler.java @@ -2,19 +2,26 @@ package com.cool.store.job; import com.alibaba.fastjson.JSONObject; import com.cool.store.dao.*; +import com.cool.store.dto.decoration.ConstructionScheduleDTO; import com.cool.store.dto.openPreparation.OpenPlanShopInfoDTO; +import com.cool.store.entity.AcceptanceInfoDO; import com.cool.store.entity.LeaseBaseInfoDO; import com.cool.store.entity.LineInterviewDO; +import com.cool.store.entity.ShopStageInfoDO; import com.cool.store.enums.*; +import com.cool.store.enums.point.ShopSubStageEnum; import com.cool.store.enums.point.ShopSubStageStatusEnum; import com.cool.store.exception.ServiceException; import com.cool.store.mapper.LineInfoMapper; import com.cool.store.mapper.TrainingExperienceMapper; import com.cool.store.mq.util.HttpRestTemplateService; import com.cool.store.service.CoolStoreStartFlowService; +import com.cool.store.service.DecorationService; import com.cool.store.service.PreparationService; +import com.cool.store.utils.poi.StringUtils; import com.cool.store.utils.poi.constant.Constants; import com.github.pagehelper.Page; +import com.github.pagehelper.PageHelper; import com.xxl.job.core.context.XxlJobHelper; import com.xxl.job.core.handler.annotation.XxlJob; import lombok.extern.slf4j.Slf4j; @@ -23,10 +30,9 @@ import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; import javax.annotation.Resource; -import java.util.HashMap; -import java.util.List; -import java.util.Map; -import java.util.Objects; +import java.text.ParseException; +import java.text.SimpleDateFormat; +import java.util.*; import java.util.stream.Collectors; @Slf4j @@ -54,6 +60,11 @@ public class XxlJobHandler { private ShopStageInfoDAO shopStageInfoDAO; @Resource private CoolStoreStartFlowService coolStoreStartFlowService; + @Resource + private AcceptanceInfoDAO acceptanceInfoDAO; + @Resource + private DecorationService decorationService; + /** * 每天都将待体验门店信息变更到体验中 */ @@ -90,6 +101,7 @@ public class XxlJobHandler { lineInterviewDAO.batchUpdateInterviewStatus(interviewIds, InterviewStatusEnum.WAIT_AUDIT); XxlJobHelper.handleSuccess(); } + /** * @Auther: wangshuo * @Date: 2024/4/25 @@ -97,13 +109,13 @@ public class XxlJobHandler { */ @XxlJob("updateFirstOrder") public void updateFirstOrder() { - boolean hasNext =true; + boolean hasNext = true; int PageNum = 1; int PageSize = 50; - while(hasNext){ + while (hasNext) { log.info("----查询更新订货金----"); - Page shopIdListByStageStatus = shopStageInfoDAO.getShopIdListByStageStatus(PageNum,PageSize); + Page shopIdListByStageStatus = shopStageInfoDAO.getShopIdListByStageStatus(PageNum, PageSize); if (CollectionUtils.isEmpty(shopIdListByStageStatus)) { log.info("------今日没有待更新数据------"); return; @@ -111,20 +123,20 @@ public class XxlJobHandler { List openPlanShopInfoDTOS = shopInfoDAO.queryStoreNumeListByid(shopIdListByStageStatus); Map map = openPlanShopInfoDTOS.stream(). collect(Collectors.toMap(OpenPlanShopInfoDTO::getShopId, OpenPlanShopInfoDTO::getStoreNum)); - for (Long shopId : map.keySet()){ + for (Long shopId : map.keySet()) { String shopCode = map.get(shopId); try { Boolean firstOrder = coolStoreStartFlowService.getFirstOrder(shopCode); if (firstOrder == null) { - throw new ServiceException(ErrorCodeEnum.GET_FIRST_ORDER); + throw new ServiceException(ErrorCodeEnum.GET_FIRST_ORDER); } if (firstOrder.equals(Boolean.TRUE)) { shopStageInfoDAO.updateShopStageAndAuditInfo(shopId, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_151, null); preparationService.whetherToOpenForAcceptance(shopId); } - }catch (Exception e) { - log.error("获取鲜丰订货金异常",e); + } catch (Exception e) { + log.error("获取鲜丰订货金异常", e); } } hasNext = shopIdListByStageStatus.size() >= PageSize; @@ -134,4 +146,81 @@ public class XxlJobHandler { } + /** + * @Auther: wangshuo + * @Date: 2024/4/29 + * @description: 每天更新装修阶段进场时间等,至预约状态 + */ + @XxlJob("acceptanceInfo") + public void AcceptanceInfoDO() { + boolean hasNext = true; + int PageNum = 1; + int PageSize = 50; + + while (hasNext) { + log.info("----每天更新装修阶段进场时间等,至预约状态----"); + PageHelper.startPage(PageNum, PageSize); + List acceptanceInfoDOS = acceptanceInfoDAO.selectAcceptanceInfo(); + if (CollectionUtils.isEmpty(acceptanceInfoDOS)) { + log.info("------今日没有待更新数据------"); + return; + } + for (AcceptanceInfoDO acceptanceInfoDO : acceptanceInfoDOS) { + Long shopId = acceptanceInfoDO.getShopId(); + acceptanceInfoDO.setUpdateTime(new Date()); + ConstructionScheduleDTO constructionInfo = decorationService.getConstructionInfo(shopId); + List construction = decorationService.getConstruction(shopId); + //施工完成时间 + if (Objects.nonNull(constructionInfo) && !StringUtils.isNull(constructionInfo.getPlanEndDate()) + && Objects.isNull(acceptanceInfoDO.getConstructionCompletionTime())) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + Date constructionEndTime = sdf.parse(constructionInfo.getPlanEndDate()); + acceptanceInfoDO.setConstructionCompletionTime(constructionEndTime); + } catch (ParseException e) { + log.error("初始化acceptanceInfo,鲜丰服务施工完成时间日期转化异常"); + } + } + //进场时间 + if (Objects.nonNull(construction) && !StringUtils.isNull(construction.get(0).getActualBeginDate()) + && Objects.isNull(acceptanceInfoDO.getActualEntryTime())) { + SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); + try { + Date constructionBeginTime = sdf.parse(construction.get(0).getActualBeginDate()); + acceptanceInfoDO.setActualEntryTime(constructionBeginTime); + } catch (ParseException e) { + log.error("初始化acceptanceInfo,鲜丰服务进场时间日期转化异常"); + } + } + //进场时间+5 + if (Objects.nonNull(construction) && !StringUtils.isNull(construction.get(0).getActualBeginDate()) + && Objects.nonNull(acceptanceInfoDO.getActualEntryTime())) { + Calendar calendar = Calendar.getInstance(); + calendar.setTime(acceptanceInfoDO.getActualEntryTime()); + calendar.add(Calendar.DAY_OF_MONTH, 5); // 添加5天 + Date dateAfterFiveDays = calendar.getTime(); + Date now =new Date(); + //TODO + List shopStageInfo = shopStageInfoDAO.getShopStageInfo(shopId, null); + if (CollectionUtils.isNotEmpty(shopStageInfo)) { + Map shopStageInfoDOMap = shopStageInfo.stream().collect(Collectors.toMap(ShopStageInfoDO::getShopSubStage, data -> data)); + Boolean buildStoreCompletionFlag = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_33.getShopSubStageStatus().equals(shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_3.getShopSubStage()).getShopSubStageStatus()); + Boolean contractCompletionFlag = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_73.getShopSubStageStatus().equals(shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_7.getShopSubStage()).getShopSubStageStatus()); + if (buildStoreCompletionFlag && contractCompletionFlag) { + List list = new ArrayList<>(); + ShopStageInfoDO data1 = shopStageInfoDOMap.get(ShopSubStageEnum.SHOP_STAGE_12.getShopSubStage()); + data1.setShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_120.getShopSubStageStatus()); + list.add(data1); + shopStageInfoDAO.batchUpdate(list); + } + } + } + acceptanceInfoDAO.insertAcceptanceInfo(acceptanceInfoDO); + //TODO 短信通知 + } + hasNext = acceptanceInfoDOS.size() >= PageSize; + PageNum++; + } + + } }