Merge branch 'master' into cc_20250327_tallyBook
# Conflicts: # coolstore-partner-service/src/main/java/com/cool/store/service/impl/PointServiceImpl.java
This commit is contained in:
@@ -63,6 +63,17 @@ public enum ShopSubStageEnum {
|
||||
this.planCompleteDays = planCompleteDays;
|
||||
}
|
||||
|
||||
public static Integer getTotalStageIsLocationAndPreparation() {
|
||||
int total=0;
|
||||
for (ShopSubStageEnum shopStageEnum : ShopSubStageEnum.values()) {
|
||||
if (shopStageEnum.getShopStageEnum().getShopStage().equals(ShopStageEnum.SHOP_STAGE_1.getShopStage())
|
||||
||shopStageEnum.getShopStageEnum().getShopStage().equals(ShopStageEnum.SHOP_STAGE_2.getShopStage())) {
|
||||
total++;
|
||||
}
|
||||
}
|
||||
return total;
|
||||
}
|
||||
|
||||
public static List<ShopSubStageEnum> getShopStageEnum(Integer shopStage) {
|
||||
List<ShopSubStageEnum> resultList = new ArrayList<>();
|
||||
for (ShopSubStageEnum shopStageEnum : ShopSubStageEnum.values()) {
|
||||
|
||||
@@ -128,6 +128,13 @@ public class ShopStageInfoDAO {
|
||||
return shopStageInfoMapper.getAllCompletionCount(shopId);
|
||||
}
|
||||
|
||||
public Integer getCompletionCount(Long shopId) {
|
||||
if (Objects.isNull(shopId)) {
|
||||
return 0;
|
||||
}
|
||||
return shopStageInfoMapper.getCompletionCount(shopId);
|
||||
}
|
||||
|
||||
/**
|
||||
* @Auther: wangshuo
|
||||
* @Date: 2024/5/3
|
||||
|
||||
@@ -46,6 +46,9 @@ public interface ShopStageInfoMapper extends Mapper<ShopStageInfoDO> {
|
||||
*/
|
||||
Integer getAllCompletionCount(@Param("shopId") Long shopId);
|
||||
|
||||
|
||||
Integer getCompletionCount(@Param("shopId") Long shopId);
|
||||
|
||||
/**
|
||||
* 跟新店铺阶段信息
|
||||
* @param shopId
|
||||
|
||||
@@ -480,7 +480,7 @@
|
||||
<if test="wantShopAreaName != null">
|
||||
left join xfsg_open_area_info b on a.want_shop_area_id = b.id
|
||||
</if>
|
||||
where a.deleted = 0 and a.line_status = 1 and a.join_status in (1,2)
|
||||
where a.deleted = 0 and a.line_status = 1 and a.join_status in (1,2) and c.deleted = 0
|
||||
<if test="userId != null and userId != ''">
|
||||
and (a.investment_manager = #{userId} or c.investment_manager = #{userId} )
|
||||
</if>
|
||||
|
||||
@@ -51,7 +51,7 @@
|
||||
op.result_type AS resultType,si.supervisor_user_id as supervisorUserId
|
||||
from xfsg_opening_operation_plan op
|
||||
join xfsg_shop_info si on si.id = op.shop_id
|
||||
where 1=1
|
||||
where si.deleted = 0
|
||||
<if test="request.shopName != null and request.shopName != '' ">
|
||||
AND si.shop_name like concat('%', #{request.shopName}, '%')
|
||||
</if>
|
||||
|
||||
@@ -79,15 +79,17 @@
|
||||
</select>
|
||||
<select id="getBySubStageStatusAndUser" resultType="com.cool.store.entity.OperationLogDO">
|
||||
select *
|
||||
from xfsg_operation_log
|
||||
from xfsg_operation_log a
|
||||
left join xfsg_shop_info b on a.shop_id = b.id
|
||||
where
|
||||
operator = #{userId}
|
||||
and shop_sub_stage_status in
|
||||
b.deleted=0
|
||||
and a.operator = #{userId}
|
||||
and a.shop_sub_stage_status in
|
||||
<foreach collection="list" index="index" item="item" open="(" close=")" separator=",">
|
||||
#{item}
|
||||
</foreach>
|
||||
and status = 0
|
||||
order by create_time desc
|
||||
and a.status = 0
|
||||
order by a.create_time desc
|
||||
</select>
|
||||
<select id="getByCondition" resultType="com.cool.store.entity.OperationLogDO">
|
||||
select *
|
||||
|
||||
@@ -213,7 +213,8 @@
|
||||
left join xfsg_line_info xli on xsi.line_id = xli.id
|
||||
left join xfsg_shop_stage_info xssi on xssi.shop_id = xsi.id
|
||||
where
|
||||
xssi.shop_stage = 3
|
||||
xsi.deleted = 0
|
||||
and xssi.shop_stage = 3
|
||||
and xssi.shop_sub_stage_status != -100
|
||||
and
|
||||
xsi.region_id in
|
||||
@@ -346,6 +347,9 @@
|
||||
select
|
||||
<include refid="allColumn"/>
|
||||
from xfsg_shop_info where line_id = #{lineId} and deleted= '0'
|
||||
<if test="userId==null">
|
||||
and shop_status in(0,1)
|
||||
</if>
|
||||
<if test="userId!=null and userId!=''">
|
||||
and( investment_manager = #{userId}
|
||||
<if test="list!=null and list.size>0">
|
||||
|
||||
@@ -196,8 +196,9 @@
|
||||
from
|
||||
xfsg_shop_stage_info a
|
||||
inner join xfsg_line_info b on a.line_id = b.id
|
||||
where
|
||||
a.shop_sub_stage = #{shopSubStage} and a.shop_sub_stage_status = #{shopSubStageStatus} and a.deleted = 0 and
|
||||
left join xfsg_shop_info c on a.shop_id = c.id
|
||||
where c.deleted=0
|
||||
and a.shop_sub_stage = #{shopSubStage} and a.shop_sub_stage_status = #{shopSubStageStatus} and a.deleted = 0 and
|
||||
b.deleted = 0 and b.development_manager = #{userId}
|
||||
</select>
|
||||
|
||||
@@ -256,10 +257,9 @@
|
||||
select
|
||||
*
|
||||
from xfsg_shop_stage_info a
|
||||
<if test="(authRegionIds != null and authRegionIds.size() > 0) or (investmentUserId != null and investmentUserId != '')">
|
||||
left join xfsg_shop_info si on a.shop_id = si.id
|
||||
</if>
|
||||
left join xfsg_shop_info si on a.shop_id = si.id
|
||||
<where>
|
||||
si.deleted = 0
|
||||
<if test="shopIds != null and shopIds.size() > 0">
|
||||
and a.shop_id in
|
||||
<foreach collection="shopIds" item="shopId" index="index" open="(" separator="," close=")">
|
||||
@@ -409,4 +409,12 @@
|
||||
|
||||
|
||||
</select>
|
||||
<select id="getCompletionCount" resultType="java.lang.Integer">
|
||||
select
|
||||
count(1)
|
||||
from
|
||||
xfsg_shop_stage_info
|
||||
where
|
||||
shop_id = #{shopId} and deleted = 0 and is_terminated = 1 and shop_stage in (1,2)
|
||||
</select>
|
||||
</mapper>
|
||||
@@ -3,6 +3,8 @@ package com.cool.store.request;
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
|
||||
import javax.validation.constraints.NotNull;
|
||||
|
||||
/**
|
||||
* @author zhangchenbiao
|
||||
* @FileName: DeleteShopRequest
|
||||
@@ -13,6 +15,8 @@ import lombok.Data;
|
||||
public class DeleteShopRequest {
|
||||
|
||||
@ApiModelProperty("店铺id")
|
||||
@NotNull
|
||||
private Long shopId;
|
||||
|
||||
private String userId;
|
||||
}
|
||||
|
||||
@@ -96,7 +96,7 @@ public interface ShopService {
|
||||
* @return
|
||||
*/
|
||||
Boolean shopClose(Long shopId);
|
||||
|
||||
Boolean updateShopStatue(Long shopId);
|
||||
|
||||
/**
|
||||
* 分店列表
|
||||
|
||||
@@ -254,6 +254,10 @@ public class PointServiceImpl implements PointService {
|
||||
log.error("铺位基本信息不存在");
|
||||
throw new ServiceException(ErrorCodeEnum.POINT_NOT_EXIST);
|
||||
}
|
||||
if (!pointInfo.getPointStatus().equals(PointStatusEnum.POINT_STATUS_2.getCode())
|
||||
&& !pointInfo.getPointStatus().equals(PointStatusEnum.POINT_STATUS_1.getCode())) {
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
}
|
||||
PointDetailInfoDO pointDetailInfo = pointDetailInfoDAO.getPointDetailInfoByPointId(pointId);
|
||||
if (Objects.isNull(pointDetailInfo)) {
|
||||
log.error("铺位详细信息不存在");
|
||||
|
||||
@@ -175,6 +175,10 @@ public class ShopServiceImpl implements ShopService {
|
||||
|
||||
@Override
|
||||
public List<ShopStageInfoVO> getShopStageInfo(Long shopId, Integer shopStage) {
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
|
||||
if (Objects.isNull(shopInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_ID_NOT_EXIST);
|
||||
}
|
||||
if (Objects.nonNull(shopStage)) {
|
||||
ShopStageEnum shopStageEnum = ShopStageEnum.getShopStageEnum(shopStage);
|
||||
if (Objects.isNull(shopStageEnum)) {
|
||||
@@ -193,26 +197,39 @@ public class ShopServiceImpl implements ShopService {
|
||||
}
|
||||
|
||||
@Override
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
public Integer deleteShop(DeleteShopRequest request) {
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(request.getShopId());
|
||||
if (Objects.nonNull(shopInfo)) {
|
||||
//进入选址不允许删除操作
|
||||
throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
if (shopInfo == null) {
|
||||
throw new ServiceException(ErrorCodeEnum.SHOP_NOT_EXIST);
|
||||
}
|
||||
// ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfo.getId(), ShopSubStageEnum.SHOP_STAGE_3);
|
||||
// if(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_33.getShopSubStageStatus().equals(shopSubStageInfo.getShopSubStageStatus())){
|
||||
// if (Objects.nonNull(shopInfo)) {
|
||||
// //进入选址不允许删除操作
|
||||
// throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
// }
|
||||
if (Objects.nonNull(shopInfo.getPointId())) {
|
||||
PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(shopInfo.getPointId());
|
||||
if (Objects.nonNull(pointInfo) && SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
pointInfoDAO.recyclePoint(pointInfo.getId());
|
||||
}
|
||||
pointRecommendDAO.updateRecommendStatus(shopInfo.getPointId(), PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_1, Arrays.asList(PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_5));
|
||||
// ShopStageInfoDO shopSubStageInfo = shopStageInfoDAO.getShopSubStageInfo(shopInfo.getId(), ShopSubStageEnum.SHOP_STAGE_3);
|
||||
// if(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_33.getShopSubStageStatus().equals(shopSubStageInfo.getShopSubStageStatus())){
|
||||
// throw new ServiceException(ErrorCodeEnum.NOT_ALLOW_OPERATE);
|
||||
// }
|
||||
// if (Objects.nonNull(shopInfo.getPointId())) {
|
||||
// PointInfoDO pointInfo = pointInfoDAO.getPointInfoById(shopInfo.getPointId());
|
||||
// if (Objects.nonNull(pointInfo) && SelectStatusEnum.SELECT_STATUS_1.getCode().equals(pointInfo.getSelectStatus())) {
|
||||
// pointInfoDAO.recyclePoint(pointInfo.getId());
|
||||
// }
|
||||
// pointRecommendDAO.updateRecommendStatus(shopInfo.getPointId(), PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_1, Arrays.asList(PointRecommendStatusEnum.POINT_RECOMMEND_STATUS_5));
|
||||
// }
|
||||
LineInfoDO lineInfoDO = lineInfoDAO.getLineInfo(shopInfo.getLineId());
|
||||
if (lineInfoDO.getWantShopNum() > 1) {
|
||||
lineInfoDO.setWantShopNum(lineInfoDO.getWantShopNum() - 1);
|
||||
}
|
||||
lineInfoDO.setUpdateTime(new Date());
|
||||
lineInfoDO.setUpdateUserId(request.getUserId());
|
||||
lineInfoDAO.updateLineInfo(lineInfoDO);
|
||||
ShopInfoDO updateShop = new ShopInfoDO();
|
||||
updateShop.setId(request.getShopId());
|
||||
updateShop.setDeleted(true);
|
||||
updateShop.setUpdateTime(new Date());
|
||||
updateShop.setUpdateUserId(request.getUserId());
|
||||
return shopInfoDAO.updateShopInfo(updateShop);
|
||||
}
|
||||
|
||||
@@ -411,6 +428,22 @@ public class ShopServiceImpl implements ShopService {
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public Boolean updateShopStatue(Long shopId) {
|
||||
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
|
||||
if (Objects.isNull(shopInfo)) {
|
||||
throw new ServiceException(ErrorCodeEnum.PARAMS_VALIDATE_ERROR);
|
||||
}
|
||||
Integer completionCount = shopStageInfoDAO.getCompletionCount(shopId);
|
||||
if (completionCount.equals(ShopSubStageEnum.getTotalStageIsLocationAndPreparation())) {
|
||||
shopInfo.setShopStatus(ShopStatusEnum.DONE.getCode());
|
||||
} else {
|
||||
shopInfo.setShopStatus(ShopStatusEnum.ING.getCode());
|
||||
}
|
||||
shopInfoDAO.updateShopInfo(shopInfo);
|
||||
return Boolean.TRUE;
|
||||
}
|
||||
|
||||
@Override
|
||||
public PageInfo<BranchShopResponse> getBranchShopList(BranchShopRequest request, String userId) {
|
||||
if (request.getFlag().equals(CommonConstants.TWO)) {
|
||||
|
||||
@@ -59,6 +59,7 @@ public class PCShopController {
|
||||
@ApiOperation("删除店铺")
|
||||
@PostMapping("/deleteShop")
|
||||
public ResponseResult<Integer> deleteShop(@RequestBody @Validated DeleteShopRequest request) {
|
||||
request.setUserId(CurrentUserHolder.getUserId());
|
||||
return ResponseResult.success(shopService.deleteShop(request));
|
||||
}
|
||||
|
||||
@@ -117,12 +118,15 @@ public class PCShopController {
|
||||
return ResponseResult.success(transferLogService.getTransferLogPage(pageNum, pageSize, lineId, lineShopType));
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
@ApiOperation("门店结束跟进")
|
||||
@GetMapping("/shopClose")
|
||||
public ResponseResult<Boolean> shopClose(@RequestParam("shopId")Long shopId) {
|
||||
return ResponseResult.success(shopService.shopClose(shopId));
|
||||
}
|
||||
|
||||
@ApiOperation("门店恢复状态")
|
||||
@GetMapping("/updateShopStatue")
|
||||
public ResponseResult<Boolean> updateShopStatue(@RequestParam("shopId")Long shopId) {
|
||||
return ResponseResult.success(shopService.updateShopStatue(shopId));
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user