diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/AuditTypeEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/AuditTypeEnum.java index cf85ed14f..e7a9382f1 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/AuditTypeEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/AuditTypeEnum.java @@ -15,7 +15,8 @@ public enum AuditTypeEnum { MEI_TUAN_TUAN_GOU(11,"美团团购"), E_LE_ME(12,"饿了么"), MEI_TUAN_WAI_MAI(13,"美团外卖"), - YING_ZHANG_TONG(14,"营帐通"); + YING_ZHANG_TONG(14,"营帐通"), + BUILDINFORMATION(15,"建店资料信息") ; private Integer code; diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/MessageEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/MessageEnum.java index 1b111f083..95d349c81 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/MessageEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/MessageEnum.java @@ -79,6 +79,7 @@ public enum MessageEnum { MESSAGE_51("您有一个加盟商提交了铺位,请查收","铺位名称:${pointName}\n加盟商姓名:${partnerUsername}\n加盟商手机号码:${partnerMobile}\n"), MESSAGE_52("您有一个门店建店资料的订货信息待提交,请查收","门店名称:${storeName}\n加盟商姓名:${partnerUsername}\n加盟商手机号码:${partnerMobile}\n"), MESSAGE_53("您有一个门店建店资料的总部订货收款账户信息待提交,请查收","门店名称:${storeName}\n加盟商姓名:${partnerUsername}\n加盟商手机号码:${partnerMobile}\n"), + MESSAGE_54("您有一个门店建店资料待审核,请查收","门店名称:${storeName}\n加盟商姓名:${partnerUsername}\n加盟商手机号码:${partnerMobile}\n"), ; diff --git a/coolstore-partner-common/src/main/java/com/cool/store/enums/UserRoleEnum.java b/coolstore-partner-common/src/main/java/com/cool/store/enums/UserRoleEnum.java index dfc215f10..f459ca2a2 100644 --- a/coolstore-partner-common/src/main/java/com/cool/store/enums/UserRoleEnum.java +++ b/coolstore-partner-common/src/main/java/com/cool/store/enums/UserRoleEnum.java @@ -48,8 +48,11 @@ public enum UserRoleEnum { REGION_OFFICE(410000000L,"大区内勤"), FINANCE(1735895867344L,"财务"), CHUAN_XIAO_MEI_MANAGER(1731635078802L,"串小妹大区执行总经理"), - REGIONAL_MANAGER(420000000L,"大区经理"), - LOGISTICS(430000000L,"物流") + REGIONAL_MANAGER(1716252923436L,"大区经理"), + LOGISTICS(430000000L,"物流"), + HEAD_OF_DIVISION(40000000L,"分部负责人"), + PRESIDENT(1715882476902L,"总裁"), + VICE_PRESIDENT_IN_CHARGE(440000000L,"分管副总裁") ; private Long code; 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 b3fb321ff..36c7d7361 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 @@ -79,7 +79,10 @@ public enum ShopSubStageStatusEnum { SHOP_SUB_STAGE_STATUS_150(ShopSubStageEnum.SHOP_STAGE_15, 1500, "待提交", Boolean.FALSE), SHOP_SUB_STAGE_STATUS_151(ShopSubStageEnum.SHOP_STAGE_15, 1510, "待总部填写仓配信息", Boolean.TRUE), SHOP_SUB_STAGE_STATUS_152(ShopSubStageEnum.SHOP_STAGE_15, 1520, "待总部提交订货收款信息",Boolean.TRUE), - SHOP_SUB_STAGE_STATUS_153(ShopSubStageEnum.SHOP_STAGE_15, 1530, "已完成", Boolean.TRUE), + SHOP_SUB_STAGE_STATUS_153(ShopSubStageEnum.SHOP_STAGE_15, 1530, "待分部总监审批",Boolean.TRUE), + SHOP_SUB_STAGE_STATUS_154(ShopSubStageEnum.SHOP_STAGE_15, 1540, "待分部副总裁审批",Boolean.TRUE), + SHOP_SUB_STAGE_STATUS_155(ShopSubStageEnum.SHOP_STAGE_15, 1550, "待分部总裁审批",Boolean.TRUE), + SHOP_SUB_STAGE_STATUS_156(ShopSubStageEnum.SHOP_STAGE_15, 1560, "已完成", Boolean.TRUE), //POS SHOP_SUB_STAGE_STATUS_160(ShopSubStageEnum.SHOP_STAGE_16, 1600, "待提交", Boolean.FALSE), @@ -178,4 +181,13 @@ public enum ShopSubStageStatusEnum { public boolean isTerminated() { return isTerminated; } + + public static ShopSubStageStatusEnum getShopSubStageStatusEnum(Integer shopSubStageStatus) { + for (ShopSubStageStatusEnum stageStatusEnum : ShopSubStageStatusEnum.values()) { + if (Objects.nonNull(stageStatusEnum.getShopSubStageStatus()) && stageStatusEnum.getShopSubStageStatus().equals(shopSubStageStatus)) { + return stageStatusEnum; + } + } + return null; + } } diff --git a/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml index 8f1050d4a..aecff6458 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml @@ -25,7 +25,8 @@ a.first_year_end_time as firstYearEndTime, a.first_year_fee as firstYearFee, a.performance_bond as performanceBond, - b.pay_user_name as payUserName + b.pay_user_name as payUserName, + a.discount_reason as discountReason from xfsg_franchise_fee a LEFT JOIN xfsg_line_pay b ON b.id = a.pay_id where a.shop_id in diff --git a/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml index c34d7c813..6d1ef074a 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/ShopInfoMapper.xml @@ -289,7 +289,8 @@ a.create_time as createTime, a.join_mode as joinMode, a.franchise_brand as franchiseBrand, - a.shop_status as shopStatus + a.shop_status as shopStatus, + a.detail_address as shopAddress from xfsg_shop_info a left join xfsg_line_info b on a.line_id = b.id where a.deleted = 0 diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/ExportBranchShopDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/ExportBranchShopDTO.java index 1f7fb3fdd..6168c9068 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/dto/ExportBranchShopDTO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/ExportBranchShopDTO.java @@ -26,6 +26,10 @@ public class ExportBranchShopDTO { @ColumnWidth(30) private String shopName; + @ExcelProperty(value = "加盟签约店铺地址",order = 4) + @ColumnWidth(40) + private String shopAddress; + @ExcelProperty(value = "门店编号",order = 4) @ColumnWidth(30) private String shopCode; @@ -77,9 +81,11 @@ public class ExportBranchShopDTO { @ExcelProperty(value = "缴纳加盟费/保证金",order =15) @ColumnWidth(30) private String franchiseFeeStageStatus; + @ExcelProperty(value = "加盟合同签约",order =16) @ColumnWidth(30) private String signFranchiseStageStatus ; + @ExcelProperty(value = "签约时间",order =17) @ColumnWidth(30) private String signTime ; @@ -100,91 +106,95 @@ public class ExportBranchShopDTO { @ColumnWidth(30) private String totalAmountContributions; - @ExcelProperty(value = "加盟费(取自账单)",order = 20) + @ExcelProperty(value = "加盟费优惠原因",order = 20) + @ColumnWidth(40) + private String discountReason; + + @ExcelProperty(value = "加盟费(取自账单)",order = 21) @ColumnWidth(30) private String franchiseFeeBill; - @ExcelProperty(value = "加盟费(含税金额)",order = 21) + @ExcelProperty(value = "加盟费(含税金额)",order = 22) @ColumnWidth(30) private String franchiseFeeTax; - @ExcelProperty(value = "加盟费(不含税金额)",order = 22) + @ExcelProperty(value = "加盟费(不含税金额)",order = 23) @ColumnWidth(30) private String franchiseFee; - @ExcelProperty(value = "保证金(取自账单)",order = 23) + @ExcelProperty(value = "保证金(取自账单)",order = 24) @ColumnWidth(30) private String loanMargin; - @ExcelProperty(value = "第一年度管理费(取自账单)",order = 24) + @ExcelProperty(value = "第一年度管理费(取自账单)",order = 25) @ColumnWidth(30) private String firstYearManagementFeeBill; - @ExcelProperty(value = "第一年度管理费(含税金额)",order = 25) + @ExcelProperty(value = "第一年度管理费(含税金额)",order = 26) @ColumnWidth(30) private String firstYearManagementFeeTax; - @ExcelProperty(value = "第一年度管理费(不含税金额)",order = 26) + @ExcelProperty(value = "第一年度管理费(不含税金额)",order = 27) @ColumnWidth(30) private String firstYearManagementFee; - @ExcelProperty(value = "第一年度品牌费(取自账单)",order = 27) + @ExcelProperty(value = "第一年度品牌费(取自账单)",order = 28) @ColumnWidth(30) private String firstYearBrandingFeeBill; - @ExcelProperty(value = "第一年度品牌费(含税金额)",order = 28) + @ExcelProperty(value = "第一年度品牌费(含税金额)",order = 29) @ColumnWidth(30) private String firstYearBrandingFeeTax; - @ExcelProperty(value = "第一年度品牌费(不含税金额)",order = 29) + @ExcelProperty(value = "第一年度品牌费(不含税金额)",order = 30) @ColumnWidth(30) private String firstYearBrandingFee; - @ExcelProperty(value = "设计费(取自账单)",order = 30) + @ExcelProperty(value = "设计费(取自账单)",order = 31) @ColumnWidth(30) private String performanceBondBill; - @ExcelProperty(value = "设计费(含税金额)",order = 31) + @ExcelProperty(value = "设计费(含税金额)",order = 32) @ColumnWidth(30) private String designFeeTax; - @ExcelProperty(value = "设计费(不含税金额)",order = 32) + @ExcelProperty(value = "设计费(不含税金额)",order = 33) @ColumnWidth(30) private String designFee; - @ExcelProperty(value = "缴款人",order = 33) + @ExcelProperty(value = "缴款人",order = 34) @ColumnWidth(30) private String payUserName; - @ExcelProperty(value = "第1次缴纳时间",order = 33) + @ExcelProperty(value = "第1次缴纳时间",order = 35) @ColumnWidth(30) private String firstPayTime; - @ExcelProperty(value = "第2次缴纳时间",order = 34) + @ExcelProperty(value = "第2次缴纳时间",order = 36) @ColumnWidth(30) private String secondPayTime; - @ExcelProperty(value = "第3次缴纳时间",order = 35) + @ExcelProperty(value = "第3次缴纳时间",order = 37) @ColumnWidth(30) private String thirdPayTime; - @ExcelProperty(value = "第4次缴纳时间",order = 36) + @ExcelProperty(value = "第4次缴纳时间",order = 38) @ColumnWidth(30) private String fourthPayTime; - @ExcelProperty(value = "当前进度",order = 37) + @ExcelProperty(value = "当前进度",order = 39) @ColumnWidth(30) private String currentProgress; - @ExcelProperty(value = "状态",order = 38) + @ExcelProperty(value = "状态",order = 40) @ColumnWidth(30) private String shopStatus; - @ExcelProperty(value = "计划开店时间",order = 39) + @ExcelProperty(value = "计划开店时间",order = 41) @ColumnWidth(30) private String planOpenTime; - @ExcelProperty(value = "开店时长(天)",order =40) + @ExcelProperty(value = "开店时长(天)",order =42) @ColumnWidth(30) private String openDuration; diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/FranchiseFeeDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/FranchiseFeeDTO.java index 473f8c5f0..fb3d8e1c9 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/dto/FranchiseFeeDTO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/FranchiseFeeDTO.java @@ -15,6 +15,8 @@ import java.util.List; */ @Data public class FranchiseFeeDTO { + + private String discountReason; private Long shopId; //缴费时间 private Date payTime; diff --git a/coolstore-partner-model/src/main/java/com/cool/store/dto/Preparation/PreparationDTO.java b/coolstore-partner-model/src/main/java/com/cool/store/dto/Preparation/PreparationDTO.java index e73554e0f..b6b06b74b 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/dto/Preparation/PreparationDTO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/dto/Preparation/PreparationDTO.java @@ -13,6 +13,8 @@ import java.util.Date; @Data public class PreparationDTO { + private String shopAddress; + private Long id; private Long wantShopAreaId; diff --git a/coolstore-partner-model/src/main/java/com/cool/store/entity/FranchiseFeeDO.java b/coolstore-partner-model/src/main/java/com/cool/store/entity/FranchiseFeeDO.java index bfb5f9ac6..af392450d 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/entity/FranchiseFeeDO.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/entity/FranchiseFeeDO.java @@ -1,5 +1,6 @@ package com.cool.store.entity; +import io.swagger.annotations.ApiModelProperty; import lombok.AllArgsConstructor; import lombok.Builder; import lombok.Data; @@ -54,4 +55,8 @@ public class FranchiseFeeDO { @Column(name = "update_time") private Date updateTime; + @ApiModelProperty("加盟费优惠原因") + @Column(name = "discount_reason") + private String discountReason; + } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRequest.java new file mode 100644 index 000000000..bcf42edd1 --- /dev/null +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/AuditRequest.java @@ -0,0 +1,53 @@ +package com.cool.store.request; + +import com.cool.store.entity.ShopAuditInfoDO; +import com.cool.store.enums.AuditResultTypeEnum; +import com.cool.store.enums.AuditTypeEnum; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +/** + * @Author: WangShuo + * @Date: 2025/04/17/13:36 + * @Version 1.0 + * @注释: + */ +@Data +public class AuditRequest { + + @NotNull + private Long shopId; + + @ApiModelProperty(value = "当前阶段状态") + @NotNull(message = "当前阶段状态不能为空") + private Integer shopSubStageStatus; + + @ApiModelProperty(value = "审核结果,0通过,1拒绝") + @NotNull(message = "审核结果不能为空") + private Integer resultType; + + @ApiModelProperty(value = "审核原因") + private String reason; + + @ApiModelProperty(value = "操作人id", hidden = true) + private String operateUserId; + @ApiModelProperty(value = "操作人姓名", hidden = true) + private String operateUserName; + public static ShopAuditInfoDO convert(AuditRequest request, AuditTypeEnum auditType) { + ShopAuditInfoDO result = new ShopAuditInfoDO(); + result.setShopId(request.getShopId()); + result.setAuditType(auditType.getCode()); + result.setSubmittedUserId(request.getOperateUserId()); + result.setSubmittedUserName(request.getOperateUserName()); + result.setResultType(request.getResultType()); + if (AuditResultTypeEnum.PASS.getCode().equals(request.getResultType())) { + result.setPassReason(request.getReason()); + } else { + result.setRejectReason(request.getReason()); + } + return result; + + } +} diff --git a/coolstore-partner-model/src/main/java/com/cool/store/request/FranchiseFeeRequest.java b/coolstore-partner-model/src/main/java/com/cool/store/request/FranchiseFeeRequest.java index 6e72e5e8c..d5c9f3395 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/request/FranchiseFeeRequest.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/request/FranchiseFeeRequest.java @@ -41,6 +41,8 @@ public class FranchiseFeeRequest { private String thirdYearFee; @ApiModelProperty("履约保证金") private String performanceBond; + @ApiModelProperty("加盟费优惠原因") + private String discountReason; public FranchiseFeeDO toFranchiseFeeDO() { @@ -60,6 +62,7 @@ public class FranchiseFeeRequest { franchiseFeeDO.setThirdYearEndTime(this.thirdYearEndTime); franchiseFeeDO.setThirdYearFee(this.thirdYearFee); franchiseFeeDO.setPerformanceBond(this.performanceBond); + franchiseFeeDO.setDiscountReason(this.discountReason); return franchiseFeeDO; } } diff --git a/coolstore-partner-model/src/main/java/com/cool/store/response/AuditInfoResponse.java b/coolstore-partner-model/src/main/java/com/cool/store/response/AuditInfoResponse.java index 6fb05d89a..5872edb27 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/response/AuditInfoResponse.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/response/AuditInfoResponse.java @@ -35,6 +35,8 @@ public class AuditInfoResponse { private String annex; @ApiModelProperty("实际操作人id") private String actualUserId; + @ApiModelProperty("阶段状态") + private Integer shopSubStageStatus; @Data @Builder @NoArgsConstructor diff --git a/coolstore-partner-model/src/main/java/com/cool/store/response/BranchShopResponse.java b/coolstore-partner-model/src/main/java/com/cool/store/response/BranchShopResponse.java index 55538d454..f3551f675 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/response/BranchShopResponse.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/response/BranchShopResponse.java @@ -1,5 +1,7 @@ package com.cool.store.response; +import com.alibaba.excel.annotation.ExcelProperty; +import com.alibaba.excel.annotation.write.style.ColumnWidth; import io.swagger.annotations.ApiModelProperty; import lombok.Data; @@ -23,6 +25,7 @@ public class BranchShopResponse { private String mobile; @ApiModelProperty("门店名称") private String shopName; + private String shopAddress; @ApiModelProperty("门店编号") private String shopCode; @ApiModelProperty("所属大区") diff --git a/coolstore-partner-model/src/main/java/com/cool/store/response/FranchiseFeeResponse.java b/coolstore-partner-model/src/main/java/com/cool/store/response/FranchiseFeeResponse.java index 46c96cd88..acd950052 100644 --- a/coolstore-partner-model/src/main/java/com/cool/store/response/FranchiseFeeResponse.java +++ b/coolstore-partner-model/src/main/java/com/cool/store/response/FranchiseFeeResponse.java @@ -43,6 +43,8 @@ public class FranchiseFeeResponse { private String performanceBond; private Date createTime; private Date updateTime; + @ApiModelProperty("加盟费优惠原因") + private String discountReason; private LinePay linePayDO; @@ -177,6 +179,7 @@ public class FranchiseFeeResponse { franchiseFeeResponse.setCreateTime(franchiseFeeDO.getCreateTime()); franchiseFeeResponse.setUpdateTime(franchiseFeeDO.getUpdateTime()); franchiseFeeResponse.setFirstYearManageFee(franchiseFeeDO.getFirstYearManageFee()); + franchiseFeeResponse.setDiscountReason(franchiseFeeDO.getDiscountReason()); return franchiseFeeResponse; } } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/OrderSysInfoService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/OrderSysInfoService.java index 71a9d347e..c59c37e67 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/OrderSysInfoService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/OrderSysInfoService.java @@ -1,5 +1,7 @@ package com.cool.store.service; +import com.cool.store.context.LoginUserInfo; +import com.cool.store.request.AuditRequest; import com.cool.store.request.OrderSysInfoRequest; import io.swagger.annotations.ApiModelProperty; @@ -12,5 +14,7 @@ import io.swagger.annotations.ApiModelProperty; public interface OrderSysInfoService { - Integer updateByShopId(OrderSysInfoRequest request,String userId); + Integer updateByShopId(OrderSysInfoRequest request, LoginUserInfo user); + + Integer audit(AuditRequest request ,LoginUserInfo user); } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/PushService.java b/coolstore-partner-service/src/main/java/com/cool/store/service/PushService.java index a1589df57..ca9e285ea 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/PushService.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/PushService.java @@ -3,6 +3,7 @@ package com.cool.store.service; import com.cool.store.dto.GetAccessTokenDTO; import com.cool.store.dto.ModifyPasswordDTO; import com.cool.store.dto.XgjOrganizationDTO; +import com.cool.store.request.AuditRequest; import com.cool.store.request.ZxjpApiRequest; import java.util.List; diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java index 1f243227e..351040212 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DeskServiceImpl.java @@ -497,7 +497,9 @@ public class DeskServiceImpl implements DeskService { @Override public PageInfo buildInformationPendingList(Integer pageNum, Integer pageSize, LoginUserInfo user) { List userRoleIds = enterpriseUserRoleMapper.getUserRoleIds(user.getUserId()); + List subStageStatusList = new ArrayList<>(); if (userRoleIds.contains(UserRoleEnum.LOGISTICS.getCode())){ + subStageStatusList.add(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_151.getShopSubStageStatus()); return commonPlatformBuild(pageNum, pageSize, user, Arrays.asList(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_151.getShopSubStageStatus())); } if (userRoleIds.contains(UserRoleEnum.FINANCE.getCode())){ diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ExportRealizeServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ExportRealizeServiceImpl.java index d41899148..f58effaa7 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ExportRealizeServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ExportRealizeServiceImpl.java @@ -139,6 +139,7 @@ public class ExportRealizeServiceImpl implements ExportRealizeService { } for (BranchShopResponse response : list) { ExportBranchShopDTO dto = new ExportBranchShopDTO(); + dto.setShopAddress(response.getShopAddress()); FranchiseFeeDTO franchiseFeeDTO = franchiseFeeDTOMap.get(response.getShopId()); if (ObjectUtils.isNotEmpty(franchiseFeeDTO)) { dto.setFirstYearStartTime(DateUtils.parseDateToStr(SPECIAL_DATE_START_1, franchiseFeeDTO.getFirstYearStartTime())); @@ -154,6 +155,7 @@ public class ExportRealizeServiceImpl implements ExportRealizeService { dto.setFirstYearManagementFeeBill(franchiseFeeDTO.getFirstYearManagementFee()); dto.setFirstYearBrandingFeeBill(franchiseFeeDTO.getFirstYearFee()); dto.setPayUserName(franchiseFeeDTO.getPayUserName()); + dto.setDiscountReason(franchiseFeeDTO.getDiscountReason()); } dto.setUserName(response.getUsername()); dto.setMobile(response.getMobile()); diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OperationLogServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OperationLogServiceImpl.java index 94adb0608..06a1a1456 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OperationLogServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OperationLogServiceImpl.java @@ -91,6 +91,7 @@ public class OperationLogServiceImpl implements OperationLogService { List responses = new ArrayList<>(); List logList = operationLogDAO.getByShopSubStage(shopId, shopSubStageList, null); Map> operationLogMap = logList.stream().collect(Collectors.groupingBy(OperationLogDO::getCreateTime)); + //根据时间分组 for (Date date : operationLogMap.keySet()) { List operations = operationLogMap.get(date); AuditInfoResponse auditInfoResponse = new AuditInfoResponse(); @@ -98,6 +99,8 @@ public class OperationLogServiceImpl implements OperationLogService { List userIds = new ArrayList<>(); Long auditId = null; Integer operationType = 0; + OperationLogDO operationLog = operations.get(0); + auditInfoResponse.setShopSubStageStatus(operationLog.getShopSubStageStatus()); for (OperationLogDO operationLogDO : operations) { //提交时候只会有一个人 if (operationLogDO.getType().equals(OperationTypeEnum.OPERATION_TYPE_0.getCode())) { @@ -142,6 +145,7 @@ public class OperationLogServiceImpl implements OperationLogService { } } } + //处理审批人信息 if (operationType.equals(OperationTypeEnum.OPERATION_TYPE_1.getCode())) { Map userInfoMap = enterpriseUserDAO.getUserInfoMap(userIds); for (EnterpriseUserDO enterpriseUserDO : userInfoMap.values()) { @@ -152,6 +156,7 @@ public class OperationLogServiceImpl implements OperationLogService { list.add(user); } auditInfoResponse.setList(list); + //处理审批结果 if (Objects.nonNull(auditId)) { ShopAuditInfoDO auditInfo = shopAuditInfoDAO.getAuditInfo(auditId); if (Objects.nonNull(auditInfo)) { diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OrderSysInfoServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OrderSysInfoServiceImpl.java index df9a8c432..5a70b02ae 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OrderSysInfoServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/OrderSysInfoServiceImpl.java @@ -1,27 +1,31 @@ package com.cool.store.service.impl; -import com.cool.store.dao.LineInfoDAO; -import com.cool.store.dao.OrderSysInfoDAO; -import com.cool.store.dao.ShopInfoDAO; -import com.cool.store.dao.ShopStageInfoDAO; +import com.cool.store.context.LoginUserInfo; +import com.cool.store.dao.*; import com.cool.store.entity.*; -import com.cool.store.enums.ErrorCodeEnum; -import com.cool.store.enums.MessageEnum; -import com.cool.store.enums.OrderSysTypeEnum; -import com.cool.store.enums.UserRoleEnum; +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.FranchiseFeeMapper; +import com.cool.store.request.AuditRequest; import com.cool.store.request.OrderSysInfoRequest; +import com.cool.store.service.OperationLogService; import com.cool.store.service.OrderSysInfoService; import com.cool.store.service.UserAuthMappingService; import com.cool.store.utils.poi.StringUtils; +import org.apache.commons.collections4.CollectionUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.*; import java.util.stream.Collectors; +import java.util.stream.Stream; + +import static com.cool.store.enums.UserRoleEnum.PRESIDENT; +import static com.cool.store.enums.UserRoleEnum.VICE_PRESIDENT_IN_CHARGE; +import static com.cool.store.enums.point.ShopSubStageStatusEnum.*; /** * @Author: WangShuo @@ -32,6 +36,11 @@ import java.util.stream.Collectors; @Service public class OrderSysInfoServiceImpl implements OrderSysInfoService { + + @Resource + FranchiseFeeMapper franchiseFeeMapper; + @Resource + private OperationLogDAO operationLogDAO; @Resource private OrderSysInfoDAO orderSysInfoDAO; @Resource @@ -46,22 +55,29 @@ public class OrderSysInfoServiceImpl implements OrderSysInfoService { private ShopInfoDAO shopInfoDAO; @Resource private LineInfoDAO lineInfoDAO; + @Resource + private OperationLogService operationLogService; + @Resource + private ShopAuditInfoDAO shopAuditInfoDAO; @Override @Transactional(rollbackFor = Exception.class) - public Integer updateByShopId(OrderSysInfoRequest request, String userId) { + public Integer updateByShopId(OrderSysInfoRequest request, LoginUserInfo user) { + //当前登录用户 + String curUserId = user.getUserId(); + String curName = user.getName(); //参数校验 - if (!request.check()){ + if (!request.check()) { throw new ServiceException(ErrorCodeEnum.THE_DATA_IS_NOT_FILLED); } OrderSysInfoDO orderSysInfoDO = orderSysInfoDAO.selectByShopId(request.getShopId()); - if (Objects.isNull(orderSysInfoDO)){ + if (Objects.isNull(orderSysInfoDO)) { orderSysInfoDO = new OrderSysInfoDO(); } ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(request.getShopId(), ShopSubStageEnum.SHOP_STAGE_15); if (request.getType().equals(OrderSysTypeEnum.ORDER_SYS_TYPE_1.getType())) { - orderSysInfoDO.setXgjVicePresident(request.getXgjVicePresident()); + orderSysInfoDO.setXgjVicePresident(request.getXgjVicePresident()); orderSysInfoDO.setXgjRegionName(request.getXgjRegionName()); orderSysInfoDO.setXgjRegionId(request.getXgjRegionId()); orderSysInfoDO.setAddresseeProvince(request.getAddresseeProvince()); @@ -74,92 +90,195 @@ public class OrderSysInfoServiceImpl implements OrderSysInfoService { orderSysInfoDO.setWarehouseDeliveryDate(request.getWarehouseDeliveryDate()); if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_151.getShopSubStageStatus())) { orderSysInfoDO.setOrderCreateTime(new Date()); - orderSysInfoDO.setOrderCreateUser(userId); - shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_152); + orderSysInfoDO.setOrderCreateUser(curUserId); + shopStageInfoDAO.updateShopStageInfo(request.getShopId(), SHOP_SUB_STAGE_STATUS_152); ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(request.getShopId()); LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); HashMap map = new HashMap<>(); - map.put("partnerUsername",lineInfoDO.getUsername()); - map.put("partnerMobile",lineInfoDO.getMobile()); - map.put("storeName",shopInfoDO.getShopName()); + map.put("partnerUsername", lineInfoDO.getUsername()); + map.put("partnerMobile", lineInfoDO.getMobile()); + map.put("storeName", shopInfoDO.getShopName()); List itList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.FINANCE, shopInfoDO.getRegionId()); List itUsers = new ArrayList<>(); - if (Objects.nonNull(itList)){ + if (Objects.nonNull(itList)) { itUsers.addAll(itList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); } commonService.sendQWMessage(itUsers, MessageEnum.MESSAGE_53, map); - return orderSysInfoDAO.updateByShopId(orderSysInfoDO); - }else{ + return orderSysInfoDAO.updateByShopId(orderSysInfoDO); + } else { orderSysInfoDO.setOrderUpdateTime(new Date()); - orderSysInfoDO.setOrderUpdateUser(userId); - return orderSysInfoDAO.updateByShopId(orderSysInfoDO); + orderSysInfoDO.setOrderUpdateUser(curUserId); + return orderSysInfoDAO.updateByShopId(orderSysInfoDO); } } if (request.getType().equals(OrderSysTypeEnum.ORDER_SYS_TYPE_2.getType())) { - shopInfoDAO.updateShopCode(request.getShopCode(),request.getShopId()); + shopInfoDAO.updateShopCode(request.getShopCode(), request.getShopId()); orderSysInfoDO.setReceivingFirmName(request.getReceivingFirmName()); orderSysInfoDO.setReceivingMsBankAccount(request.getReceivingMsBankAccount()); orderSysInfoDO.setReceivingMsBankBranch(request.getReceivingMsBankBranch()); orderSysInfoDO.setBankUnionPayAccount(request.getBankUnionPayAccount()); - if (shopSubStageInfo.getShopSubStageStatus().equals(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_152.getShopSubStageStatus())) { - orderSysInfoDO.setReceivingCreateTime(new Date()); - orderSysInfoDO.setReceivingCreateUser(userId); + if (shopSubStageInfo.getShopSubStageStatus().equals(SHOP_SUB_STAGE_STATUS_152.getShopSubStageStatus())) { + if (orderSysInfoDO.getReceivingCreateTime() == null) { + orderSysInfoDO.setReceivingCreateTime(new Date()); + orderSysInfoDO.setReceivingCreateUser(curUserId); + } else { + orderSysInfoDO.setReceivingUpdateTime(new Date()); + orderSysInfoDO.setReceivingUpdateUser(curUserId); + } shopStageInfoDAO.updateShopStageInfo(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_153); - //初始化数据 - preparationService.licenseCompleted(request.getShopId()); - preparationService.sysStoreCompleted(request.getShopId()); - preparationService.buildStoreAndDecorationComplete(request.getShopId()); - preparationService.selectSiteAndBuildStoreComplete(request.getShopId()); - preparationService.buildStoreComplete(request.getShopId()); - - - ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(request.getShopId()); - LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); - HashMap map = new HashMap<>(); - map.put("partnerUsername",lineInfoDO.getUsername()); - map.put("partnerMobile",lineInfoDO.getMobile()); - map.put("storeName",shopInfoDO.getShopName()); - List itList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.IT_EMPLOYEE, shopInfoDO.getRegionId()); - List itUsers = new ArrayList<>(); - if (Objects.nonNull(itList)){ - itUsers.addAll(itList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); + //审批流 + operationLogService.addOperationLog(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_152, curUserId, curName, + OperationTypeEnum.OPERATION_TYPE_0, "建店资料财务提交审批", OperationStatusEnum.PROCESSED); + ListdirectorList = new ArrayList<>(); + List headUser = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.HEAD_OF_DIVISION, shopInfoDAO.getShopInfo(request.getShopId()).getRegionId()); + if (CollectionUtils.isNotEmpty(headUser)){ + directorList.addAll(headUser); + } + List manager = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.REGIONAL_MANAGER, shopInfoDAO.getShopInfo(request.getShopId()).getRegionId()); + if (CollectionUtils.isNotEmpty(manager)){ + directorList.addAll(manager); } - commonService.sendQWMessage(itUsers, - MessageEnum.MESSAGE_39, - map); - List posList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.HUO_MA_EMPLOYEE, shopInfoDO.getRegionId()); - List posUsers = new ArrayList<>(); - if (Objects.nonNull(posList)){ - posUsers.addAll( posList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); - } - commonService.sendQWMessage(posUsers, - MessageEnum.MESSAGE_38, - map); - List xfList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.XIN_FA_SYS_CUSTOMER, shopInfoDO.getRegionId()); - List xfUsers = new ArrayList<>(); - if(Objects.nonNull(xfList)){ - xfUsers.addAll(xfList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); - } - commonService.sendQWMessage(xfUsers, - MessageEnum.MESSAGE_40, - map); - List zxtList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.TENT_PASS_CUSTOMER, shopInfoDO.getRegionId()); - List zxtUsers = new ArrayList<>(); - if(Objects.nonNull(zxtList)){ - zxtUsers.addAll(zxtList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); - } - commonService.sendQWMessage(zxtUsers, - MessageEnum.MESSAGE_41, - map); - return orderSysInfoDAO.updateByShopId(orderSysInfoDO); - }else{ + operationLogService.addOperationLog(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_153, + curUserId, directorList, + OperationTypeEnum.OPERATION_TYPE_1, "建店资料分管总监审批", OperationStatusEnum.NOT_PROCESSED); + List userIds = directorList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList()); + sendSms(request.getShopId(),userIds); + return orderSysInfoDAO.updateByShopId(orderSysInfoDO); + } else { orderSysInfoDO.setReceivingUpdateTime(new Date()); - orderSysInfoDO.setReceivingUpdateUser(userId); - return orderSysInfoDAO.updateByShopId(orderSysInfoDO); + orderSysInfoDO.setReceivingUpdateUser(curUserId); + return orderSysInfoDAO.updateByShopId(orderSysInfoDO); } } return null; } + + @Override + @Transactional(rollbackFor = Exception.class) + public Integer audit(AuditRequest request, LoginUserInfo user) { + String curUserId = user.getUserId(); + request.setOperateUserId(user.getUserId()); + request.setOperateUserName(user.getName()); + ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(request.getShopId(), ShopSubStageEnum.SHOP_STAGE_15); + if (!shopSubStageInfo.getShopSubStageStatus().equals(request.getShopSubStageStatus()) || shopSubStageInfo.getShopSubStageStatus().equals(SHOP_SUB_STAGE_STATUS_156.getShopSubStageStatus())) { + throw new ServiceException(ErrorCodeEnum.WORK_FLOW_STAGE_PASS_ERROR); + } + ShopSubStageStatusEnum nowStatus = ShopSubStageStatusEnum.getShopSubStageStatusEnum(request.getShopSubStageStatus()); + if (nowStatus == null) { + throw new ServiceException(ErrorCodeEnum.SHOP_STAGE_ERROR); + } + FranchiseFeeDO franchiseFeeDO = franchiseFeeMapper.selectByShopId(request.getShopId()); + ShopAuditInfoDO shopAuditInfoDO = AuditRequest.convert(request, AuditTypeEnum.BUILDINFORMATION); + Long auditId = shopAuditInfoDAO.addAuditInfo(shopAuditInfoDO); + //更新操作记录 + List operationLogs = operationLogDAO.getBySubStageStatusEnumAndsStatus(request.getShopId(), nowStatus, OperationTypeEnum.OPERATION_TYPE_1.getCode()); + operationLogService.batchUpdateProcessed(operationLogs, auditId, request.getOperateUserId(), request.getReason()); + //下一阶段 + ShopSubStageStatusEnum nextStatus; + switch (nowStatus) { + case SHOP_SUB_STAGE_STATUS_153: + nextStatus = SHOP_SUB_STAGE_STATUS_154; + List users = userAuthMappingService.getAllUserByRoleEnumAndRegionId(VICE_PRESIDENT_IN_CHARGE, shopInfoDAO.getShopInfo(request.getShopId()).getRegionId()); + List userIds = users.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList()); + sendSms(request.getShopId(),userIds); + operationLogService.addOperationLog(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_154, + curUserId,users, + OperationTypeEnum.OPERATION_TYPE_1, "建店资料分管副总裁审批", OperationStatusEnum.NOT_PROCESSED); + break; + case SHOP_SUB_STAGE_STATUS_154: + nextStatus = ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_155; + if (StringUtils.isNotBlank(franchiseFeeDO.getDiscountReason())){ + List users1 = userAuthMappingService.getAllUserByRoleEnumAndRegionId(PRESIDENT, shopInfoDAO.getShopInfo(request.getShopId()).getRegionId()); + List userIds1 = users1.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList()); + sendSms(request.getShopId(),userIds1); + operationLogService.addOperationLog(request.getShopId(), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_155, + curUserId, users1, + OperationTypeEnum.OPERATION_TYPE_1, "建店资料总裁审批", OperationStatusEnum.NOT_PROCESSED);} + break; + case SHOP_SUB_STAGE_STATUS_155: + nextStatus = SHOP_SUB_STAGE_STATUS_156; + break; + default: + return null; + } + // + if (AuditResultTypeEnum.REJECT.getCode().equals(request.getResultType())) { + //回退 + return shopStageInfoDAO.updateShopStageInfo(request.getShopId(), SHOP_SUB_STAGE_STATUS_152); + } + if (AuditResultTypeEnum.PASS.getCode().equals(request.getResultType())) { + //如果加盟费没有优惠阶段直接完成不用总裁审批 + if (StringUtils.isNull(franchiseFeeDO.getDiscountReason()) && SHOP_SUB_STAGE_STATUS_154.equals(nowStatus)) { + stageCompletion(request.getShopId()); + return shopStageInfoDAO.updateShopStageInfo(request.getShopId(), SHOP_SUB_STAGE_STATUS_156); + + } else { + if (SHOP_SUB_STAGE_STATUS_156.equals(nextStatus)){ + stageCompletion(request.getShopId()); + } + return shopStageInfoDAO.updateShopStageInfo(request.getShopId(), nextStatus); + } + } + return 0; + } + void sendSms(Long shopId,List userIds){ + ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(shopId); + LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); + HashMap map = new HashMap<>(); + map.put("partnerUsername", lineInfoDO.getUsername()); + map.put("partnerMobile", lineInfoDO.getMobile()); + map.put("storeName", shopInfoDO.getShopName()); + + commonService.sendQWMessage(userIds, + MessageEnum.MESSAGE_54, + map); + } + void stageCompletion(Long shopId){ + //初始化数据 + preparationService.licenseCompleted(shopId); + preparationService.sysStoreCompleted(shopId); + preparationService.buildStoreAndDecorationComplete(shopId); + preparationService.selectSiteAndBuildStoreComplete(shopId); + preparationService.buildStoreComplete(shopId); + ShopInfoDO shopInfoDO = shopInfoDAO.getShopInfo(shopId); + LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfoDO.getLineId()); + HashMap map = new HashMap<>(); + map.put("partnerUsername", lineInfoDO.getUsername()); + map.put("partnerMobile", lineInfoDO.getMobile()); + map.put("storeName", shopInfoDO.getShopName()); + List itList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.IT_EMPLOYEE, shopInfoDO.getRegionId()); + List itUsers = new ArrayList<>(); + if (Objects.nonNull(itList)) { + itUsers.addAll(itList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); + } + commonService.sendQWMessage(itUsers, + MessageEnum.MESSAGE_39, + map); + List posList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.HUO_MA_EMPLOYEE, shopInfoDO.getRegionId()); + List posUsers = new ArrayList<>(); + if (Objects.nonNull(posList)) { + posUsers.addAll(posList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); + } + commonService.sendQWMessage(posUsers, + MessageEnum.MESSAGE_38, + map); + List xfList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.XIN_FA_SYS_CUSTOMER, shopInfoDO.getRegionId()); + List xfUsers = new ArrayList<>(); + if (Objects.nonNull(xfList)) { + xfUsers.addAll(xfList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); + } + commonService.sendQWMessage(xfUsers, + MessageEnum.MESSAGE_40, + map); + List zxtList = userAuthMappingService.getAllUserByRoleEnumAndRegionId(UserRoleEnum.TENT_PASS_CUSTOMER, shopInfoDO.getRegionId()); + List zxtUsers = new ArrayList<>(); + if (Objects.nonNull(zxtList)) { + zxtUsers.addAll(zxtList.stream().map(EnterpriseUserDO::getUserId).collect(Collectors.toList())); + } + commonService.sendQWMessage(zxtUsers, + MessageEnum.MESSAGE_41, + map); + } } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ShopServiceImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ShopServiceImpl.java index d74bfa3fd..1da63b663 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ShopServiceImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/ShopServiceImpl.java @@ -503,6 +503,7 @@ public class ShopServiceImpl implements ShopService { Map openActivityStageMap = openActivityActualCompletionTime.stream().collect(Collectors.toMap(ShopStageInfoDO::getShopId, x -> x)); for (PreparationDTO dto : preparations) { BranchShopResponse response = new BranchShopResponse(); + response.setShopAddress(dto.getShopAddress()); response.setShopId(dto.getId()); response.setLineId(dto.getLineId()); response.setUsername(dto.getUsername()); diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOrderSysInfoController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOrderSysInfoController.java index ea13864c0..749932d87 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOrderSysInfoController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/PCOrderSysInfoController.java @@ -3,8 +3,13 @@ package com.cool.store.controller.webb; import com.cool.store.context.CurrentUserHolder; import com.cool.store.dto.XgjOrganizationDTO; import com.cool.store.enums.OrderSysTypeEnum; +import com.cool.store.enums.point.ShopSubStageEnum; +import com.cool.store.enums.point.ShopSubStageStatusEnum; +import com.cool.store.request.AuditRequest; import com.cool.store.request.OrderSysInfoRequest; +import com.cool.store.response.AuditInfoResponse; import com.cool.store.response.ResponseResult; +import com.cool.store.service.OperationLogService; import com.cool.store.service.OrderSysInfoService; import com.cool.store.service.PushService; import io.swagger.annotations.Api; @@ -13,6 +18,8 @@ import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import java.util.ArrayList; +import java.util.Collections; import java.util.List; /** @@ -30,19 +37,21 @@ public class PCOrderSysInfoController { private OrderSysInfoService orderSysInfoService; @Resource private PushService pushService; + @Resource + private OperationLogService operationLogService; @PostMapping("/submitOrderInfo") @ApiOperation("物流提交订货信息") public ResponseResult submitOrderInfo(@RequestBody @Validated OrderSysInfoRequest request){ request.setType(OrderSysTypeEnum.ORDER_SYS_TYPE_1.getType()); - return ResponseResult.success(orderSysInfoService.updateByShopId(request, CurrentUserHolder.getUserId())); + return ResponseResult.success(orderSysInfoService.updateByShopId(request, CurrentUserHolder.getUser())); } @PostMapping("/submitReceiving") @ApiOperation("财务提交总部订货收款账户") public ResponseResult submitReceiving(@RequestBody @Validated OrderSysInfoRequest request){ request.setType(OrderSysTypeEnum.ORDER_SYS_TYPE_2.getType()); - return ResponseResult.success(orderSysInfoService.updateByShopId(request, CurrentUserHolder.getUserId())); + return ResponseResult.success(orderSysInfoService.updateByShopId(request, CurrentUserHolder.getUser())); } @GetMapping("/getXgjOrganization") @@ -51,4 +60,16 @@ public class PCOrderSysInfoController { return ResponseResult.success(pushService.getXgjOrganization(parentId)); } + @PostMapping("/audit") + @ApiOperation("审核") + public ResponseResult audit(@RequestBody @Validated AuditRequest request){ + return ResponseResult.success(orderSysInfoService.audit(request, CurrentUserHolder.getUser())); + } + @GetMapping("/auditInfo") + @ApiOperation("获取审批流") + public ResponseResult> auditInfo(@RequestParam("shopId") Long shopId){ + + return ResponseResult.success(operationLogService.getAuditInfo(shopId, Collections.singletonList(ShopSubStageEnum.SHOP_STAGE_15.getShopSubStage()))); + } + }