From e14806db306a602fd511b7c9255adecb9d69e2c1 Mon Sep 17 00:00:00 2001 From: "shuo.wang" Date: Wed, 4 Jun 2025 14:30:04 +0800 Subject: [PATCH] =?UTF-8?q?=E6=95=B0=E6=8D=AE=E5=A4=84=E7=90=86?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/cool/store/dao/FranchiseFeeDAO.java | 7 ++ .../java/com/cool/store/dao/LinePayDAO.java | 10 +++ .../com/cool/store/dao/ShopStageInfoDAO.java | 6 ++ .../cool/store/mapper/FranchiseFeeMapper.java | 2 + .../com/cool/store/mapper/LinePayMapper.java | 4 ++ .../resources/mapper/FranchiseFeeMapper.xml | 8 +++ .../main/resources/mapper/LinePayMapper.xml | 4 ++ .../com/cool/store/entity/FranchiseFeeDO.java | 2 +- .../cool/store/service/DataHandlerServer.java | 13 ++++ .../service/impl/DataHandlerServerImpl.java | 64 +++++++++++++++++++ .../service/impl/FranchiseFeeServiceImpl.java | 1 + .../webb/DataHandlerController.java | 14 ++++ 12 files changed, 134 insertions(+), 1 deletion(-) diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/FranchiseFeeDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/FranchiseFeeDAO.java index d51f69752..3311e593c 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/FranchiseFeeDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/FranchiseFeeDAO.java @@ -26,4 +26,11 @@ public class FranchiseFeeDAO { } return franchiseFeeMapper.updateBill(list); } + + public Integer batchUpdateXgjCollectionStatus(List shopIds,Integer collectionStatus){ + if (CollectionUtils.isEmpty(shopIds)|| collectionStatus==null){ + return 0; + } + return franchiseFeeMapper.batchUpdateXgjCollectionStatus(shopIds,collectionStatus); + } } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/LinePayDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/LinePayDAO.java index 6473517bd..55fc34633 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/LinePayDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/LinePayDAO.java @@ -87,4 +87,14 @@ public class LinePayDAO { public Integer deleteById(Long id,String userId) { return linePayMapper.deleteById(id,userId); } + //数据处理专用0604,查询加盟费阶段缴费信息 + public List getDateHandler() { + return linePayMapper.getDateHandler(); + } + //数据处理专用0604,处理paytime paypic + public Integer dataUpdateLinePay(List linePayDOList) { + if (CollectionUtils.isEmpty(linePayDOList)){ + return null; + } + } } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java b/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java index 4369f2114..7325aa0ce 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/dao/ShopStageInfoDAO.java @@ -466,4 +466,10 @@ public class ShopStageInfoDAO { example.createCriteria().andIn("shopId",shopIds).andEqualTo("shopStage",shopStage); return shopStageInfoMapper.selectByExample(example); } + //查询处于xx状态的数据 + public List getShopStageInfoByShopSubStageStatus(Integer shopSubStageStatus) { + Example example = new Example(ShopStageInfoDO.class); + example.createCriteria().andEqualTo("shopSubStageStatus", shopSubStageStatus); + return shopStageInfoMapper.selectByExample(example); + } } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/FranchiseFeeMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/FranchiseFeeMapper.java index 7c77990e3..c92d34a7b 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/FranchiseFeeMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/FranchiseFeeMapper.java @@ -24,4 +24,6 @@ public interface FranchiseFeeMapper extends Mapper { * @description: 数据处理修改账单 */ Integer updateBill(@Param("list") List list); + + Integer batchUpdateXgjCollectionStatus(@Param("shopIds")List shopId, @Param("collectionStatus")Integer collectionStatus); } diff --git a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java index 7dc71e46f..33465619b 100644 --- a/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java +++ b/coolstore-partner-dao/src/main/java/com/cool/store/mapper/LinePayMapper.java @@ -60,4 +60,8 @@ public interface LinePayMapper { ListgetFranchiseFeePayInfoByShopId(@Param("shopId") Long shopId); Integer deleteById(@Param("id") Long id,@Param("userId")String userId); + //数据处理专用0604,查询加盟费阶段缴费信息 + List getDateHandler(); + + Integer dataUpdateLinePay(@Param("list") List linePayDOList); } \ No newline at end of file diff --git a/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml b/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml index dea3af847..dbff8f1ea 100644 --- a/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml +++ b/coolstore-partner-dao/src/main/resources/mapper/FranchiseFeeMapper.xml @@ -32,6 +32,14 @@ where shop_id = #{item.shopId} + + update xfsg_franchise_fee + set xgj_collection_status = #{collectionStatus} + where shop_id in + + #{shopId} + + select * from xfsg_line_pay where deleted = 0 and shop_id = #{shopId} and pay_business_type = 1 order by create_time desc + update xfsg_line_pay set deleted = 1 ,update_time = now(),update_user_id = #{userId} where id = #{id} + \ No newline at end of file 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 b0544c236..e1bb2f98c 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 @@ -61,7 +61,7 @@ public class FranchiseFeeDO { private String discountReason; @Column(name = "xgj_collection_status") - @ApiModelProperty("新管家收款状态 1-部分缴款 2-已完成") + @ApiModelProperty("新管家收款状态 0-待缴费 1-部分缴款 2-已完成") private Integer xgjCollectionStatus; @Column(name = "xgj_remainder_payable_amount") diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/DataHandlerServer.java b/coolstore-partner-service/src/main/java/com/cool/store/service/DataHandlerServer.java index f12717c35..23d8a1c22 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/DataHandlerServer.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/DataHandlerServer.java @@ -1,6 +1,7 @@ package com.cool.store.service; import com.cool.store.context.LoginUserInfo; +import com.cool.store.dto.BatchStatusRefreshDTO; import com.cool.store.entity.ImportTaskDO; import java.util.List; @@ -36,4 +37,16 @@ public interface DataHandlerServer { //处理测量 设计 施工 验收 完成 Boolean dataHandlerV2025029(List> dataMapList, String originalFilename, LoginUserInfo user, ImportTaskDO task); + //处理加盟费阶段 + Boolean franchiseFeeStageDateHandler(); + + //处理加盟费缴费信息历史数据 + Boolean franchiseFeeDateHandler(Integer pageSize, Integer pageNum); + /** + * @Auther: wangshuo + * @Date: 2025/5/23 + * @description:不是对外回调接口,针对于已经在oa走完数据的,我们手动调用接口批量修改数据!!!只做云流水别的别用!!! + */ + Boolean batchStatusRefreshYls(BatchStatusRefreshDTO batchStatusRefreshDTO); + } diff --git a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java index 8bfec0198..2aec9d12d 100644 --- a/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java +++ b/coolstore-partner-service/src/main/java/com/cool/store/service/impl/DataHandlerServerImpl.java @@ -1,5 +1,6 @@ package com.cool.store.service.impl; +import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.cool.store.constants.CommonConstants; import com.cool.store.context.LoginUserInfo; @@ -14,13 +15,16 @@ import com.cool.store.exception.ServiceException; import com.cool.store.mapper.*; import com.cool.store.service.DataHandlerServer; import com.cool.store.service.FranchiseFeeService; +import com.cool.store.service.OpenApiService; import com.cool.store.service.PreparationService; import com.cool.store.utils.StringUtil; import com.cool.store.utils.easyExcel.EasyExcelUtil; import com.cool.store.utils.poi.DateUtils; +import com.github.pagehelper.PageHelper; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; import org.apache.commons.collections4.ListUtils; +import org.apache.commons.lang3.StringUtils; import org.jetbrains.annotations.NotNull; import org.springframework.beans.factory.annotation.Value; import org.springframework.stereotype.Service; @@ -43,6 +47,10 @@ import static com.cool.store.utils.poi.DateUtils.YYYY_MM_DD; @Service @Slf4j public class DataHandlerServerImpl implements DataHandlerServer { + @Resource + private OpenApiService openApiService; + @Resource + private LinePayDAO linePayDAO; @Resource private AcceptanceInfoDAO acceptanceInfoDAO; @Resource @@ -1043,6 +1051,62 @@ public class DataHandlerServerImpl implements DataHandlerServer { return null; } + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean franchiseFeeStageDateHandler() { + //处理加盟费阶段待审核(对账中) + List waitAuditStageList = shopStageInfoDAO.getShopStageInfoByShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_72.getShopSubStageStatus()); + log.info("waitAuditStageList:{}", JSONObject.toJSONString(waitAuditStageList)); + List waitAuditShopIdList = waitAuditStageList.stream().map(ShopStageInfoDO::getShopId).collect(Collectors.toList()); + shopStageInfoDAO.dataUpdateStatus(waitAuditShopIdList,ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_73); + franchiseFeeDAO.batchUpdateXgjCollectionStatus(waitAuditShopIdList,XGJCollectionStatusEnum.COMPLETED.getCode()); + //已缴费 修改新管家回调状态 + List isPaidStageList = shopStageInfoDAO.getShopStageInfoByShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_73.getShopSubStageStatus()); + List isPaidShopId = isPaidStageList.stream().map(ShopStageInfoDO::getShopId).collect(Collectors.toList()); + franchiseFeeDAO.batchUpdateXgjCollectionStatus(isPaidShopId,XGJCollectionStatusEnum.COMPLETED.getCode()); + //待加盟商缴费阶段 + List waitPayStageList = shopStageInfoDAO.getShopStageInfoByShopSubStageStatus(ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_71.getShopSubStageStatus()); + List waitPayShopIds = waitPayStageList.stream().map(ShopStageInfoDO::getShopId).collect(Collectors.toList()); + franchiseFeeDAO.batchUpdateXgjCollectionStatus(waitPayShopIds,XGJCollectionStatusEnum.WAIT_PAY.getCode()); + return true; + } + + @Override + @Transactional(rollbackFor = Exception.class) + public Boolean franchiseFeeDateHandler(Integer pageSize, Integer pageNum) { + + PageHelper.startPage(pageNum, pageSize); + List dateHandler = linePayDAO.getDateHandler(); + for (LinePayDO linePayDO : dateHandler){ + JSONArray jsonArray = JSONObject.parseArray(linePayDO.getCombinedField()); + JSONObject jsonObject = jsonArray.getJSONObject(0); + linePayDO.setPayTime(jsonObject.getDate("payTime")); + linePayDO.setPayPic(jsonObject.getString("payPic")); + } + } + + @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()); + openApiService.statusRefresh(statusRefreshDTO); + } + List shopCodeList = new ArrayList<>(); + for (String shopCode : batchStatusRefreshDTO.getShopCode()){ + shopCodeList.add(StringUtils.substringAfter(shopCode, "_")); + } + posAndOrderInfoDAO.batchUpdateYlsRemarkByShopCode(shopCodeList,batchStatusRefreshDTO.getRemark()); + return true; + } + private static @NotNull ShopStageInfoDO getShopStageInfoDO(ShopSubStageEnum shopSubStageEnum, ShopStageInfoDO shopStageInfoDO, ShopSubStageStatusEnum shopSubStageStatus) { ShopStageEnum shopStageEnum = shopSubStageEnum.getShopStageEnum(); ShopStageInfoDO shopStageInfo = new ShopStageInfoDO(); 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 fb4b92e16..4fb75af48 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 @@ -76,6 +76,7 @@ public class FranchiseFeeServiceImpl implements FranchiseFeeService { if (Objects.nonNull(isExist)){ throw new ServiceException(ErrorCodeEnum.UNISSUED_STATEMENT_2); } + franchiseFeeDO.setXgjCollectionStatus(XGJCollectionStatusEnum.WAIT_PAY.getCode()); franchiseFeeMapper.insertSelective(franchiseFeeDO); } ShopInfoDO shopInfoDO = shopInfoMapper.selectByPrimaryKey(request.getShopId()); diff --git a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/DataHandlerController.java b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/DataHandlerController.java index 7401de132..3cdf5eab2 100644 --- a/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/DataHandlerController.java +++ b/coolstore-partner-web/src/main/java/com/cool/store/controller/webb/DataHandlerController.java @@ -3,16 +3,19 @@ package com.cool.store.controller.webb; import cn.hutool.poi.excel.ExcelReader; import cn.hutool.poi.excel.ExcelUtil; import com.cool.store.context.CurrentUserHolder; +import com.cool.store.dto.BatchStatusRefreshDTO; import com.cool.store.entity.ImportTaskDO; import com.cool.store.enums.FileTypeEnum; import com.cool.store.enums.ImportTaskStatusEnum; import com.cool.store.mapper.ImportTaskMapper; import com.cool.store.response.ResponseResult; +import com.cool.store.response.bigdata.ApiResponse; import com.cool.store.service.DataHandlerServer; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Value; +import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -152,4 +155,15 @@ public class DataHandlerController { dataHandlerServer.dataHandlerV2025029(dataMapList, file.getOriginalFilename(), CurrentUserHolder.getUser(), importTaskDO); return ResponseResult.success(true); } + + /** + * @Auther: wangshuo + * @Date: 2025/5/23 + * @description:不是对外回调接口,针对于已经在oa走完数据的,我们手动调用接口批量修改数据!!!只做云流水别的别用!!! + */ + @ApiOperation("批量修改门店云流水开通状态") + @PostMapping("/batchStatusRefreshYls") + public ApiResponse batchStatusRefreshYls(@RequestBody @Validated BatchStatusRefreshDTO batchStatusRefreshDTO) { + return ApiResponse.success(dataHandlerServer.batchStatusRefreshYls(batchStatusRefreshDTO)); + } }