批量处理云流水订货阶段接口

This commit is contained in:
shuo.wang
2025-05-23 16:33:52 +08:00
parent 7b30396dae
commit ad7c879a78
9 changed files with 110 additions and 5 deletions

View File

@@ -54,4 +54,11 @@ public class PosAndOrderInfoDAO {
}
return posAndOrderInfoMapper.batchInsert(posAndOrderInfoDOList);
}
//不通用只用于批量云流水修改备注
public Integer batchUpdateYlsRemarkByShopCode(List<String> shopCodeList, String remark){
if(CollectionUtils.isEmpty(shopCodeList)){
return 0;
}
return posAndOrderInfoMapper.batchUpdateYlsRemarkByShopCode(shopCodeList,remark);
}
}

View File

@@ -16,6 +16,8 @@ import java.util.List;
public interface PosAndOrderInfoMapper extends Mapper<PosAndOrderInfoDO> {
Integer batchInsert(@Param("list") List<PosAndOrderInfoDO> posAndOrderInfoDOList);
Integer batchUpdateYlsRemarkByShopCode( @Param("list") List<String> shopCodeList, @Param("remark") String remark);
}

View File

@@ -26,4 +26,15 @@
values (#{item.shopId},#{item.type},#{item.account},#{item.password},#{item.remark},#{item.createTime},#{item.createUser})
</foreach>
</insert>
<update id="batchUpdateYlsRemarkByShopCode">
UPDATE xfsg_pos_and_order_info a LEFT JOIN xfsg_shop_info b on a.`shop_id` = b.id
SET
a.remark = #{remark}
WHERE
b.`shop_code` in(
<foreach collection="list" item="item" separator=",">
#{item}
</foreach>
) AND a.type = 2
</update>
</mapper>

View File

@@ -0,0 +1,31 @@
package com.cool.store.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotEmpty;
import javax.validation.constraints.NotNull;
import java.util.List;
/**
* @Author: WangShuo
* @Date: 2025/05/23/14:59
* @Version 1.0
* @注释:
*/
@Data
public class BatchStatusRefreshDTO {
@NotBlank(message = "来源不能为空")
private String systemSource;
@NotEmpty(message = "门店编码不能为空")
private List<String> shopCode;
@NotNull(message = "开通状态")
private Boolean openStatus;
@ApiModelProperty("修改业务表备注")
@NotBlank
private String remark;
}

View File

@@ -1,5 +1,6 @@
package com.cool.store.service;
import com.cool.store.dto.BatchStatusRefreshDTO;
import com.cool.store.dto.StatusRefreshDTO;
/**
@@ -17,5 +18,11 @@ public interface OpenApiService {
*/
Boolean statusRefresh(StatusRefreshDTO statusRefreshDTO);
/**
* @Auther: wangshuo
* @Date: 2025/5/23
* @description:不是对外回调接口针对于已经在oa走完数据的我们手动调用接口批量修改数据只做云流水别的别用
*/
Boolean batchStatusRefreshYls(BatchStatusRefreshDTO batchStatusRefreshDTO);
}

View File

@@ -3,6 +3,9 @@ package com.cool.store.service;
import com.cool.store.request.PostAndOrderRequest;
import com.cool.store.response.PosAndOrderResponse;
import org.apache.ibatis.annotations.Param;
import java.util.List;
/**
* @author EDY

View File

@@ -1,8 +1,10 @@
package com.cool.store.service.impl;
import com.cool.store.dao.PosAndOrderInfoDAO;
import com.cool.store.dao.ShopAccountDAO;
import com.cool.store.dao.ShopInfoDAO;
import com.cool.store.dao.ShopStageInfoDAO;
import com.cool.store.dto.BatchStatusRefreshDTO;
import com.cool.store.dto.StatusRefreshDTO;
import com.cool.store.entity.ShopAccountDO;
import com.cool.store.entity.ShopInfoDO;
@@ -15,13 +17,16 @@ import com.cool.store.exception.ServiceException;
import com.cool.store.request.PostAndOrderRequest;
import com.cool.store.service.OpenApiService;
import com.cool.store.service.PosAndOrderInfoService;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.collections4.CollectionUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
/**
@@ -30,6 +35,7 @@ import java.util.Objects;
* @Version 1.0
*/
@Slf4j
@Service
public class OpenApiServiceImpl implements OpenApiService {
@@ -41,7 +47,8 @@ public class OpenApiServiceImpl implements OpenApiService {
ShopStageInfoDAO shopStageInfoDAO;
@Resource
PosAndOrderInfoService posAndOrderInfoService;
@Resource
PosAndOrderInfoDAO posAndOrderInfoDAO;
@Override
@Transactional(rollbackFor = Exception.class)
@@ -79,4 +86,26 @@ public class OpenApiServiceImpl implements OpenApiService {
return Boolean.TRUE;
}
@Override
@Transactional(rollbackFor = Exception.class)
public Boolean batchStatusRefreshYls(BatchStatusRefreshDTO batchStatusRefreshDTO) {
if (CollectionUtils.isEmpty(batchStatusRefreshDTO.getShopCode())){
log.info("数据处理 门店编码为空");
return null;
}
for (String shopCode : batchStatusRefreshDTO.getShopCode()){
StatusRefreshDTO statusRefreshDTO = new StatusRefreshDTO();
statusRefreshDTO.setShopCode(shopCode);
statusRefreshDTO.setSystemSource(batchStatusRefreshDTO.getSystemSource());
statusRefreshDTO.setOpenStatus(batchStatusRefreshDTO.getOpenStatus());
this.statusRefresh(statusRefreshDTO);
}
List<String> shopCodeList = new ArrayList<>();
for (String shopCode : batchStatusRefreshDTO.getShopCode()){
shopCodeList.add(StringUtils.substringAfter(shopCode, "_"));
}
posAndOrderInfoDAO.batchUpdateYlsRemarkByShopCode(shopCodeList,batchStatusRefreshDTO.getRemark());
return true;
}
}

View File

@@ -1,10 +1,7 @@
package com.cool.store.controller.webb;
import com.alibaba.fastjson.JSONObject;
import com.cool.store.dto.AskBotTokenDTO;
import com.cool.store.dto.GetAccessTokenDTO;
import com.cool.store.dto.StatusRefreshDTO;
import com.cool.store.dto.StoreDTO;
import com.cool.store.dto.*;
import com.cool.store.request.OpenApiStoreRequest;
import com.cool.store.response.ResponseResult;
import com.cool.store.response.bigdata.ApiResponse;

View File

@@ -1,12 +1,15 @@
package com.cool.store.controller.webb;
import com.cool.store.context.CurrentUserHolder;
import com.cool.store.dto.BatchStatusRefreshDTO;
import com.cool.store.dto.TransferLogDTO;
import com.cool.store.dto.UserDTO;
import com.cool.store.request.*;
import com.cool.store.response.BranchShopDetailResponse;
import com.cool.store.response.BranchShopResponse;
import com.cool.store.response.ResponseResult;
import com.cool.store.response.bigdata.ApiResponse;
import com.cool.store.service.OpenApiService;
import com.cool.store.service.ShopService;
import com.cool.store.service.TransferLogService;
import com.cool.store.vo.shop.MiniShopPageVO;
@@ -38,6 +41,8 @@ public class PCShopController {
private ShopService shopService;
@Resource
private TransferLogService transferLogService;
@Resource
private OpenApiService openApiService;
@ApiOperation("获取店铺列表")
@GetMapping("/getShopList")
@@ -152,4 +157,17 @@ public class PCShopController {
@RequestParam("subStage")Integer subStage) {
return ResponseResult.success(shopService.getSubStageHandle(shopId,subStage));
}
/**
* @Auther: wangshuo
* @Date: 2025/5/23
* @description:不是对外回调接口针对于已经在oa走完数据的我们手动调用接口批量修改数据只做云流水别的别用
*/
@ApiOperation("批量修改门店云流水开通状态")
@PostMapping("/batchStatusRefreshYls")
public ApiResponse<Boolean> batchStatusRefreshYls(@RequestBody @Validated BatchStatusRefreshDTO batchStatusRefreshDTO) {
return ApiResponse.success(openApiService.batchStatusRefreshYls(batchStatusRefreshDTO));
}
}