统计报表接口,数据梳理接口
This commit is contained in:
@@ -148,7 +148,7 @@ public enum ErrorCodeEnum {
|
|||||||
LINE_ALREADY_EXISTS(10211163, "该线索已存在,跟进人为{0}", null),
|
LINE_ALREADY_EXISTS(10211163, "该线索已存在,跟进人为{0}", null),
|
||||||
LINE_EXISTS_IN_PUBLIC_SEA(10211164, "该线索已存在,请前往公海认领", null),
|
LINE_EXISTS_IN_PUBLIC_SEA(10211164, "该线索已存在,请前往公海认领", null),
|
||||||
CONTENT_DUPLICATED(10211200, "动态标题重复!", null),
|
CONTENT_DUPLICATED(10211200, "动态标题重复!", null),
|
||||||
SIGN_FAIL(600000, "验签失败", null),
|
SIGN_FAIL(600000, "验签失败=>{0}", null),
|
||||||
GET_ACCESSTOKEN_ERROR(600001, "获取小程序TOKEN错误!", null),
|
GET_ACCESSTOKEN_ERROR(600001, "获取小程序TOKEN错误!", null),
|
||||||
NEW_MOBILE_HAS_EXIST(600002,"加盟商用户信息已存在",null),
|
NEW_MOBILE_HAS_EXIST(600002,"加盟商用户信息已存在",null),
|
||||||
INSPECTION_USER_OCCUPY(600003,"当前稽核人已经配置其他战区",null),
|
INSPECTION_USER_OCCUPY(600003,"当前稽核人已经配置其他战区",null),
|
||||||
@@ -257,6 +257,7 @@ public enum ErrorCodeEnum {
|
|||||||
|
|
||||||
BANK_EXIST(151007,"当前银行已存在,请直接选择!",null),
|
BANK_EXIST(151007,"当前银行已存在,请直接选择!",null),
|
||||||
EXPORT_LIMIT_5000(151008,"导出数据不能超过5000条,请增加筛选条件,减少导出数量",null),
|
EXPORT_LIMIT_5000(151008,"导出数据不能超过5000条,请增加筛选条件,减少导出数量",null),
|
||||||
|
REGION_INTERSECTION_IS_NULL(151011,"所选所属大区/分公司,不在所选集团下",null),
|
||||||
;
|
;
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -21,7 +21,8 @@ public enum FileTypeEnum {
|
|||||||
IMPORT_OA_OLD_SHOP_DATA_ERROR("OaOldShopDataError", "导入OA旧数据错误列表"),
|
IMPORT_OA_OLD_SHOP_DATA_ERROR("OaOldShopDataError", "导入OA旧数据错误列表"),
|
||||||
IMPORT_OA_OLD_SHOP_DATA("importOaOldShopData", "导入OA旧数据"),
|
IMPORT_OA_OLD_SHOP_DATA("importOaOldShopData", "导入OA旧数据"),
|
||||||
ZXJP_OPEN_SHOP_REPORT("zxjpOpenShopReport","正新鸡排开店"),
|
ZXJP_OPEN_SHOP_REPORT("zxjpOpenShopReport","正新鸡排开店"),
|
||||||
|
IMPORT_OA_OLD_SHOP_STAGE_DATA("importOaOldShopStageData", "导入OA旧数据"),
|
||||||
|
IMPORT_OA_OLD_SHOP_STAGE_DATA_ERROR("OaOldShopStageDataError", "导入OA旧数据阶段错误列表"),
|
||||||
;
|
;
|
||||||
private String fileType;
|
private String fileType;
|
||||||
private String desc;
|
private String desc;
|
||||||
|
|||||||
@@ -5,6 +5,7 @@ import com.cool.store.entity.BigRegionDO;
|
|||||||
import com.cool.store.enums.ErrorCodeEnum;
|
import com.cool.store.enums.ErrorCodeEnum;
|
||||||
import com.cool.store.exception.ServiceException;
|
import com.cool.store.exception.ServiceException;
|
||||||
import com.cool.store.mapper.BigRegionMapper;
|
import com.cool.store.mapper.BigRegionMapper;
|
||||||
|
import com.cool.store.request.QueryBigRegionRequest;
|
||||||
import org.apache.commons.collections4.CollectionUtils;
|
import org.apache.commons.collections4.CollectionUtils;
|
||||||
import org.springframework.stereotype.Repository;
|
import org.springframework.stereotype.Repository;
|
||||||
import tk.mybatis.mapper.entity.Example;
|
import tk.mybatis.mapper.entity.Example;
|
||||||
@@ -55,5 +56,13 @@ public class BigRegionDAO {
|
|||||||
example.createCriteria().andIn("regionId", regionIdList).andEqualTo("joinMode",0);
|
example.createCriteria().andIn("regionId", regionIdList).andEqualTo("joinMode",0);
|
||||||
return bigRegionMapper.selectByExample(example);
|
return bigRegionMapper.selectByExample(example);
|
||||||
}
|
}
|
||||||
|
/**
|
||||||
|
* @Auther: wangshuo
|
||||||
|
* @Date: 2025/5/15
|
||||||
|
* @description:只查询joinMode = 0
|
||||||
|
*/
|
||||||
|
public List<BigRegionDTO> queryBigRegion(QueryBigRegionRequest queryBigRegionRequest){
|
||||||
|
return bigRegionMapper.queryBigRegion(queryBigRegionRequest);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -457,4 +457,13 @@ public class ShopStageInfoDAO {
|
|||||||
boolean isTerminated = shopStageInfo.isTerminated();
|
boolean isTerminated = shopStageInfo.isTerminated();
|
||||||
return shopStageInfoMapper.dataUpdateAcceptanceStatus(list, shopStageInfo.getShopSubStageEnum().getShopSubStage(), shopStageInfo.getShopSubStageStatus(), isTerminated, remark);
|
return shopStageInfoMapper.dataUpdateAcceptanceStatus(list, shopStageInfo.getShopSubStageEnum().getShopSubStage(), shopStageInfo.getShopSubStageStatus(), isTerminated, remark);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public List<ShopStageInfoDO> getStageByShopStage(List<Long> shopIds, Integer shopStage){
|
||||||
|
if (CollectionUtils.isEmpty(shopIds) || shopStage == null){
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
Example example = new Example(ShopStageInfoDO.class);
|
||||||
|
example.createCriteria().andIn("shopId",shopIds).andEqualTo("shopStage",shopStage);
|
||||||
|
return shopStageInfoMapper.selectByExample(example);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -2,6 +2,8 @@ package com.cool.store.mapper;
|
|||||||
|
|
||||||
import com.cool.store.dto.region.BigRegionDTO;
|
import com.cool.store.dto.region.BigRegionDTO;
|
||||||
import com.cool.store.entity.BigRegionDO;
|
import com.cool.store.entity.BigRegionDO;
|
||||||
|
import com.cool.store.request.QueryBigRegionRequest;
|
||||||
|
import org.apache.ibatis.annotations.Param;
|
||||||
import tk.mybatis.mapper.common.Mapper;
|
import tk.mybatis.mapper.common.Mapper;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
@@ -24,5 +26,5 @@ public interface BigRegionMapper extends Mapper<BigRegionDO> {
|
|||||||
*/
|
*/
|
||||||
BigRegionDO queryOrgInfoByBigRegionAndJoinMode(Long regionId,Integer joinMode);
|
BigRegionDO queryOrgInfoByBigRegionAndJoinMode(Long regionId,Integer joinMode);
|
||||||
|
|
||||||
|
List<BigRegionDTO> queryBigRegion(@Param("request") QueryBigRegionRequest queryBigRegionRequest);
|
||||||
}
|
}
|
||||||
@@ -42,4 +42,18 @@
|
|||||||
</if>
|
</if>
|
||||||
</where>
|
</where>
|
||||||
</select>
|
</select>
|
||||||
|
<select id="queryBigRegion" resultType="com.cool.store.dto.region.BigRegionDTO">
|
||||||
|
select *
|
||||||
|
from `xfsg_big_region`
|
||||||
|
where join_mode = 0
|
||||||
|
<if test="request.keyword!=null and request.keyword !=''">
|
||||||
|
and region_name like CONCAT('%',#{request.keyword},'%')
|
||||||
|
</if>
|
||||||
|
<if test="request.groupNameList!=null and request.groupNameList.size()>0">
|
||||||
|
and group_name in
|
||||||
|
<foreach item="item" collection="request.groupNameList" index="index" open="(" close=")" separator=",">
|
||||||
|
#{item}
|
||||||
|
</foreach>
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package com.cool.store.request;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Author: WangShuo
|
||||||
|
* @Date: 2025/05/15/10:15
|
||||||
|
* @Version 1.0
|
||||||
|
* @注释:
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class QueryBigRegionRequest{
|
||||||
|
private String keyword;
|
||||||
|
|
||||||
|
private List<String> groupNameList;
|
||||||
|
}
|
||||||
@@ -4,6 +4,7 @@ import com.cool.store.dto.region.BigRegionDTO;
|
|||||||
import com.cool.store.entity.BigRegionDO;
|
import com.cool.store.entity.BigRegionDO;
|
||||||
import com.cool.store.enums.ErrorCodeEnum;
|
import com.cool.store.enums.ErrorCodeEnum;
|
||||||
import com.cool.store.exception.ServiceException;
|
import com.cool.store.exception.ServiceException;
|
||||||
|
import com.cool.store.request.QueryBigRegionRequest;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -31,5 +32,7 @@ public interface BigRegionService {
|
|||||||
*/
|
*/
|
||||||
BigRegionDO queryOrgInfoByBigRegionAndJoinMode(Long regionId, Integer joinMode);
|
BigRegionDO queryOrgInfoByBigRegionAndJoinMode(Long regionId, Integer joinMode);
|
||||||
|
|
||||||
|
List<BigRegionDTO> queryBigRegion(QueryBigRegionRequest queryBigRegionRequest);
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -22,4 +22,6 @@ public interface DataHandlerServer {
|
|||||||
Boolean importOaOldShopData(List<Map<String, Object>> dataMapList, String originalFilename, LoginUserInfo user,
|
Boolean importOaOldShopData(List<Map<String, Object>> dataMapList, String originalFilename, LoginUserInfo user,
|
||||||
ImportTaskDO task);
|
ImportTaskDO task);
|
||||||
|
|
||||||
|
//数据处理阶段完成 某些阶段数据处理
|
||||||
|
Boolean dataStageHandler(List<Map<String, Object>> dataMapList, String originalFilename, LoginUserInfo user, ImportTaskDO task,Boolean flag);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,10 +5,12 @@ import com.cool.store.dto.region.BigRegionDTO;
|
|||||||
import com.cool.store.entity.BigRegionDO;
|
import com.cool.store.entity.BigRegionDO;
|
||||||
import com.cool.store.enums.ErrorCodeEnum;
|
import com.cool.store.enums.ErrorCodeEnum;
|
||||||
import com.cool.store.exception.ServiceException;
|
import com.cool.store.exception.ServiceException;
|
||||||
|
import com.cool.store.request.QueryBigRegionRequest;
|
||||||
import com.cool.store.service.BigRegionService;
|
import com.cool.store.service.BigRegionService;
|
||||||
import org.springframework.stereotype.Service;
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
|
import java.util.Collections;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -35,4 +37,9 @@ public class BigRegionServiceImpl implements BigRegionService {
|
|||||||
return bigRegionDAO.queryOrgInfoByBigRegionAndJoinMode(regionId,joinMode);
|
return bigRegionDAO.queryOrgInfoByBigRegionAndJoinMode(regionId,joinMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public List<BigRegionDTO> queryBigRegion(QueryBigRegionRequest queryBigRegionRequest) {
|
||||||
|
return bigRegionDAO.queryBigRegion(queryBigRegionRequest);
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -8,6 +8,7 @@ import com.cool.store.entity.*;
|
|||||||
import com.cool.store.enums.FileTypeEnum;
|
import com.cool.store.enums.FileTypeEnum;
|
||||||
import com.cool.store.enums.ImportTaskStatusEnum;
|
import com.cool.store.enums.ImportTaskStatusEnum;
|
||||||
import com.cool.store.enums.PosAndOrderEnum;
|
import com.cool.store.enums.PosAndOrderEnum;
|
||||||
|
import com.cool.store.enums.point.ShopStageEnum;
|
||||||
import com.cool.store.enums.point.ShopSubStageEnum;
|
import com.cool.store.enums.point.ShopSubStageEnum;
|
||||||
import com.cool.store.enums.point.ShopSubStageStatusEnum;
|
import com.cool.store.enums.point.ShopSubStageStatusEnum;
|
||||||
import com.cool.store.mapper.*;
|
import com.cool.store.mapper.*;
|
||||||
@@ -60,7 +61,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
@Resource
|
@Resource
|
||||||
private FranchiseFeeMapper franchiseFeeMapper;
|
private FranchiseFeeMapper franchiseFeeMapper;
|
||||||
@Resource
|
@Resource
|
||||||
private FranchiseFeeDAO franchiseFeeDAO;
|
private FranchiseFeeDAO franchiseFeeDAO;
|
||||||
@Resource
|
@Resource
|
||||||
private WarehouseInfoMapper warehouseInfoMapper;
|
private WarehouseInfoMapper warehouseInfoMapper;
|
||||||
@Resource
|
@Resource
|
||||||
@@ -77,6 +78,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
private SignFranchiseDAO signFranchiseDAO;
|
private SignFranchiseDAO signFranchiseDAO;
|
||||||
@Value("${mybatis.configuration.variables.enterpriseId}")
|
@Value("${mybatis.configuration.variables.enterpriseId}")
|
||||||
private String eid;
|
private String eid;
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
@Transactional(rollbackFor = Exception.class)
|
@Transactional(rollbackFor = Exception.class)
|
||||||
public Boolean importOaOldShopData(List<Map<String, Object>> dataMapList, String originalFilename, LoginUserInfo user, ImportTaskDO task) {
|
public Boolean importOaOldShopData(List<Map<String, Object>> dataMapList, String originalFilename, LoginUserInfo user, ImportTaskDO task) {
|
||||||
@@ -92,14 +94,14 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
}
|
}
|
||||||
});
|
});
|
||||||
log.info("导入数据条数:{}", list.size());
|
log.info("导入数据条数:{}", list.size());
|
||||||
if (CollectionUtils.isEmpty(list)){
|
if (CollectionUtils.isEmpty(list)) {
|
||||||
log.info("导入数据转化为空");
|
log.info("导入数据转化为空");
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
List<String> shopCodeList = list.stream().map(ImportOaOldShopDataDTO::getShopCode).collect(Collectors.toList());
|
List<String> shopCodeList = list.stream().map(ImportOaOldShopDataDTO::getShopCode).collect(Collectors.toList());
|
||||||
Map<String, ImportOaOldShopDataDTO> dotMap = list.stream().collect(Collectors.toMap(ImportOaOldShopDataDTO::getShopCode, item -> item));
|
Map<String, ImportOaOldShopDataDTO> dotMap = list.stream().collect(Collectors.toMap(ImportOaOldShopDataDTO::getShopCode, item -> item));
|
||||||
List<ShopInfoDO> shopInfoList = shopInfoDAO.selectByShopCodeList(shopCodeList);
|
List<ShopInfoDO> shopInfoList = shopInfoDAO.selectByShopCodeList(shopCodeList);
|
||||||
if (CollectionUtils.isEmpty(shopInfoList)){
|
if (CollectionUtils.isEmpty(shopInfoList)) {
|
||||||
log.info("导入数据根据shopCode 未找到数据");
|
log.info("导入数据根据shopCode 未找到数据");
|
||||||
}
|
}
|
||||||
Map<String, ShopInfoDO> shopInfoByCodeMap = shopInfoList.stream().collect(Collectors.toMap(ShopInfoDO::getShopCode, item -> item));
|
Map<String, ShopInfoDO> shopInfoByCodeMap = shopInfoList.stream().collect(Collectors.toMap(ShopInfoDO::getShopCode, item -> item));
|
||||||
@@ -155,7 +157,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
//建店阶段完成时间
|
//建店阶段完成时间
|
||||||
List<BuildStageDTO> updateBuildStageList = new ArrayList<>();
|
List<BuildStageDTO> updateBuildStageList = new ArrayList<>();
|
||||||
for (ImportOaOldShopDataDTO dto : list) {
|
for (ImportOaOldShopDataDTO dto : list) {
|
||||||
if( !check(dto,errorList)){
|
if (!check(dto, errorList)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
ShopInfoDO shopInfoDO = shopInfoByCodeMap.get(dto.getShopCode().trim());
|
ShopInfoDO shopInfoDO = shopInfoByCodeMap.get(dto.getShopCode().trim());
|
||||||
@@ -187,7 +189,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
Date buildEndTime = DateUtils.toDate(YYYY_MM_DD, dto.getBuildEndTime());
|
Date buildEndTime = DateUtils.toDate(YYYY_MM_DD, dto.getBuildEndTime());
|
||||||
if (Objects.isNull(buildEndTime)){
|
if (Objects.isNull(buildEndTime)) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("建店资料时间转化失败");
|
errorDTO.setErrorReason("建店资料时间转化失败");
|
||||||
@@ -196,7 +198,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
}
|
}
|
||||||
//合同
|
//合同
|
||||||
SignFranchiseDO signFranchiseDO = signFranchiseMap.get(shopId);
|
SignFranchiseDO signFranchiseDO = signFranchiseMap.get(shopId);
|
||||||
if (signFranchiseDO==null){
|
if (signFranchiseDO == null) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("合同DO不存在");
|
errorDTO.setErrorReason("合同DO不存在");
|
||||||
@@ -204,7 +206,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
FranchiseFeeDO franchiseFeeDO = franchiseFeeMap.get(shopId);
|
FranchiseFeeDO franchiseFeeDO = franchiseFeeMap.get(shopId);
|
||||||
if (franchiseFeeDO==null){
|
if (franchiseFeeDO == null) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("加盟费DO不存在");
|
errorDTO.setErrorReason("加盟费DO不存在");
|
||||||
@@ -235,7 +237,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
if (StringUtil.isNotBlank(dto.getIntroductionAward())) {
|
if (StringUtil.isNotBlank(dto.getIntroductionAward())) {
|
||||||
signFranchiseDO.setIntroductionAward(dto.getIntroductionAward());
|
signFranchiseDO.setIntroductionAward(dto.getIntroductionAward());
|
||||||
}
|
}
|
||||||
if (StringUtil.isNotBlank(dto.getContractCode()) && dto.getContractCode().trim().startsWith("ZX") && dto.getContractCode().trim()!="0") {
|
if (StringUtil.isNotBlank(dto.getContractCode()) && dto.getContractCode().trim().startsWith("ZX") && dto.getContractCode().trim() != "0") {
|
||||||
signFranchiseDO.setContractCode(dto.getContractCode().trim());
|
signFranchiseDO.setContractCode(dto.getContractCode().trim());
|
||||||
}
|
}
|
||||||
if (StringUtil.isNotBlank(dto.getProtectionDistance())) {
|
if (StringUtil.isNotBlank(dto.getProtectionDistance())) {
|
||||||
@@ -245,7 +247,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
//建店资料未完成
|
//建店资料未完成
|
||||||
BuildStageDTO buildStageDTO = new BuildStageDTO();
|
BuildStageDTO buildStageDTO = new BuildStageDTO();
|
||||||
buildStageDTO.setShopId(shopId);
|
buildStageDTO.setShopId(shopId);
|
||||||
buildStageDTO.setEndTime(dto.getBuildEndTime()+" 00:00:00");
|
buildStageDTO.setEndTime(dto.getBuildEndTime() + " 00:00:00");
|
||||||
updateBuildStageList.add(buildStageDTO);
|
updateBuildStageList.add(buildStageDTO);
|
||||||
//建店资料阶段处理
|
//建店资料阶段处理
|
||||||
shopStageInfoDAO.dataUpdateShopStageInfo(Collections.singletonList(buildStageDTO), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_156);
|
shopStageInfoDAO.dataUpdateShopStageInfo(Collections.singletonList(buildStageDTO), ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_156);
|
||||||
@@ -257,7 +259,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
preparationService.selectSiteAndBuildStoreComplete(shopId);
|
preparationService.selectSiteAndBuildStoreComplete(shopId);
|
||||||
preparationService.buildStoreComplete(shopId);
|
preparationService.buildStoreComplete(shopId);
|
||||||
}
|
}
|
||||||
if (buildEndTime.before(new Date(1745164800000L))){
|
if (buildEndTime.before(new Date(1745164800000L))) {
|
||||||
fitmentFhopIdList.add(shopId);
|
fitmentFhopIdList.add(shopId);
|
||||||
}
|
}
|
||||||
BuildInformationDO buildInformationDO = buildInformationMap.get(shopId);
|
BuildInformationDO buildInformationDO = buildInformationMap.get(shopId);
|
||||||
@@ -321,11 +323,11 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
}
|
}
|
||||||
//pos
|
//pos
|
||||||
PosAndOrderInfoDO posDO = posSysInfoDOMap.get(shopId);
|
PosAndOrderInfoDO posDO = posSysInfoDOMap.get(shopId);
|
||||||
if (Objects.isNull(posDO)){
|
if (Objects.isNull(posDO)) {
|
||||||
posDO = new PosAndOrderInfoDO();
|
posDO = new PosAndOrderInfoDO();
|
||||||
posDO.setShopId(shopId);
|
posDO.setShopId(shopId);
|
||||||
posDO.setType(PosAndOrderEnum.POS.getCode());
|
posDO.setType(PosAndOrderEnum.POS.getCode());
|
||||||
posDO.setAccount(lineMobileMap.getOrDefault(shopInfoDO.getLineId(),""));
|
posDO.setAccount(lineMobileMap.getOrDefault(shopInfoDO.getLineId(), ""));
|
||||||
posDO.setRemark("已为您开通POS系统账号和密码");
|
posDO.setRemark("已为您开通POS系统账号和密码");
|
||||||
posDO.setCreateTime(new Date());
|
posDO.setCreateTime(new Date());
|
||||||
addPosAndOrderInfoList.add(posDO);
|
addPosAndOrderInfoList.add(posDO);
|
||||||
@@ -340,7 +342,7 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
orderSysInfoDAO.batchInsertSpecific(addOrderSysInfoList);
|
orderSysInfoDAO.batchInsertSpecific(addOrderSysInfoList);
|
||||||
franchiseFeeDAO.updateBill(franchiseFeeByShopIds);
|
franchiseFeeDAO.updateBill(franchiseFeeByShopIds);
|
||||||
buildInformationDAO.batchInsertSpecific(addBuildList);
|
buildInformationDAO.batchInsertSpecific(addBuildList);
|
||||||
if (CollectionUtils.isNotEmpty(updateBuildStageList)){
|
if (CollectionUtils.isNotEmpty(updateBuildStageList)) {
|
||||||
List<Long> updateStageShopIds = updateBuildStageList.stream().map(BuildStageDTO::getShopId).collect(Collectors.toList());
|
List<Long> updateStageShopIds = updateBuildStageList.stream().map(BuildStageDTO::getShopId).collect(Collectors.toList());
|
||||||
//pos阶段完成
|
//pos阶段完成
|
||||||
shopStageInfoDAO.dataUpdateStatus(updateStageShopIds, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_163);
|
shopStageInfoDAO.dataUpdateStatus(updateStageShopIds, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_163);
|
||||||
@@ -357,13 +359,13 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
shopStageInfoDAO.dataUpdateAcceptanceStatus(fitmentFhopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_121);
|
shopStageInfoDAO.dataUpdateAcceptanceStatus(fitmentFhopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_121);
|
||||||
if (!errorList.isEmpty()) {
|
if (!errorList.isEmpty()) {
|
||||||
task.setStatus(ImportTaskStatusEnum.ERROR.getCode());
|
task.setStatus(ImportTaskStatusEnum.ERROR.getCode());
|
||||||
String url = null ;
|
String url = null;
|
||||||
try {
|
try {
|
||||||
url = easyExcelUtil.exportExcel(ImportOaOldShopDataErrorDTO.class, errorList, null,
|
url = easyExcelUtil.exportExcel(ImportOaOldShopDataErrorDTO.class, errorList, null,
|
||||||
FileTypeEnum.IMPORT_OA_OLD_SHOP_DATA_ERROR.getDesc() + DateUtils.parseDateToStr(SPECIAL_DATE_START_1, new Date()),
|
FileTypeEnum.IMPORT_OA_OLD_SHOP_DATA_ERROR.getDesc() + DateUtils.parseDateToStr(SPECIAL_DATE_START_1, new Date()),
|
||||||
FileTypeEnum.IMPORT_OA_OLD_SHOP_DATA_ERROR.getDesc() + DateUtils.parseDateToStr(SPECIAL_DATE_START_1, new Date()));
|
FileTypeEnum.IMPORT_OA_OLD_SHOP_DATA_ERROR.getDesc() + DateUtils.parseDateToStr(SPECIAL_DATE_START_1, new Date()));
|
||||||
} catch (Exception e) {
|
} catch (Exception e) {
|
||||||
log.info("导出失败列表失败 errorList:{}",JSONObject.toJSONString(errorList));
|
log.info("导出失败列表失败 errorList:{}", JSONObject.toJSONString(errorList));
|
||||||
}
|
}
|
||||||
task.setFileUrl(url);
|
task.setFileUrl(url);
|
||||||
} else {
|
} else {
|
||||||
@@ -371,138 +373,296 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
}
|
}
|
||||||
task.setTotalNum(dataMapList.size());
|
task.setTotalNum(dataMapList.size());
|
||||||
task.setSuccessNum(dataMapList.size() - errorList.size());
|
task.setSuccessNum(dataMapList.size() - errorList.size());
|
||||||
importTaskMapper.update(eid,task);
|
importTaskMapper.update(eid, task);
|
||||||
return null;
|
return null;
|
||||||
}
|
}
|
||||||
|
|
||||||
private static boolean check(ImportOaOldShopDataDTO dto,List<ImportOaOldShopDataErrorDTO> errorList){
|
@Override
|
||||||
if (StringUtil.isBlank(dto.getShopCode())){
|
@Transactional(rollbackFor = Exception.class)
|
||||||
|
public Boolean dataStageHandler(List<Map<String, Object>> dataMapList, String originalFilename, LoginUserInfo user, ImportTaskDO task, Boolean flag) {
|
||||||
|
List<String> shopCodeList = new ArrayList<>();
|
||||||
|
ListUtils.emptyIfNull(dataMapList)
|
||||||
|
.forEach(data -> {
|
||||||
|
try {
|
||||||
|
shopCodeList.add(String.valueOf(data.get("门店编码")).trim());
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.info("importOaOldShopData 转化dto error:{}", JSONObject.toJSONString(data));
|
||||||
|
}
|
||||||
|
});
|
||||||
|
if (CollectionUtils.isEmpty(shopCodeList)) {
|
||||||
|
log.info("数据处理 门店编码为空");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
List<ShopInfoDO> shopInfoList = shopInfoDAO.selectByShopCodeList(shopCodeList);
|
||||||
|
if (CollectionUtils.isEmpty(shopInfoList)) {
|
||||||
|
log.info("数据处理 门店未找到对应数据");
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
List<ImportOaOldShopDataErrorDTO> errorList = new ArrayList<>();
|
||||||
|
List<Long> shopIds = shopInfoList.stream().map(ShopInfoDO::getId).collect(Collectors.toList());
|
||||||
|
Map<String, ShopInfoDO> shopInfoMap = shopInfoList.stream().collect(Collectors.toMap(ShopInfoDO::getShopCode, x -> x));
|
||||||
|
List<Long> lineIdList = shopInfoList.stream().map(ShopInfoDO::getLineId).collect(Collectors.toList());
|
||||||
|
|
||||||
|
//手机号
|
||||||
|
Map<Long, String> lineMobileMap = lineInfoDAO.getLineMobileMap(lineIdList);
|
||||||
|
List<ShopStageInfoDO> stageByShopStage = shopStageInfoDAO.getStageByShopStage(shopIds, ShopStageEnum.SHOP_STAGE_2.getShopStage());
|
||||||
|
Map<Long, List<ShopStageInfoDO>> shopStageInfoMap = stageByShopStage.stream().collect(Collectors.groupingBy(ShopStageInfoDO::getShopId));
|
||||||
|
//培训和开业完成
|
||||||
|
List<Long> trainShopIdList = new ArrayList<>();
|
||||||
|
//建店大阶段完成
|
||||||
|
List<Long> buildShopIdList = new ArrayList<>();
|
||||||
|
List<OpeningOperationPlanDO> addOpeningOperationPlanDO = new ArrayList<>();
|
||||||
|
List<PosAndOrderInfoDO> addPosAndOrderInfoList = new ArrayList<>();
|
||||||
|
for (String shopCode : shopCodeList) {
|
||||||
|
ShopInfoDO shop = shopInfoMap.get(shopCode);
|
||||||
|
if (shop == null) {
|
||||||
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
|
errorDTO.setShopCode(shopCode);
|
||||||
|
errorDTO.setErrorReason("code未找到对应门店数据");
|
||||||
|
errorList.add(errorDTO);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
Long shopId = shop.getId();
|
||||||
|
List<ShopStageInfoDO> shopStageInfoList = shopStageInfoMap.get(shopId);
|
||||||
|
if (CollectionUtils.isEmpty(shopStageInfoList)) {
|
||||||
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
|
errorDTO.setShopCode(shop.getShopCode());
|
||||||
|
errorDTO.setErrorReason("门店未找到对应阶段数据");
|
||||||
|
errorList.add(errorDTO);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
Map<Integer, ShopStageInfoDO> stageMap = shopStageInfoList.stream().collect(Collectors.toMap(ShopStageInfoDO::getShopSubStage, Function.identity()));
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_84.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_8.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
|
errorDTO.setShopCode(shop.getShopCode());
|
||||||
|
errorDTO.setErrorReason("合同未完成");
|
||||||
|
errorList.add(errorDTO);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
trainShopIdList.add(shopId);
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_143.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_14.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
OpeningOperationPlanDO openingOperationPlanDO = new OpeningOperationPlanDO();
|
||||||
|
openingOperationPlanDO.setShopId(shopId);
|
||||||
|
openingOperationPlanDO.setCreateTime(new Date());
|
||||||
|
addOpeningOperationPlanDO.add(openingOperationPlanDO);
|
||||||
|
}
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_156.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_15.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
|
errorDTO.setShopCode(shop.getShopCode());
|
||||||
|
errorDTO.setErrorReason("建店资料未完成");
|
||||||
|
errorList.add(errorDTO);
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
buildShopIdList.add(shopId);
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_173.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_17.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
PosAndOrderInfoDO posDO = new PosAndOrderInfoDO();
|
||||||
|
posDO.setShopId(shopId);
|
||||||
|
posDO.setAccount("ZXA8_" + shop.getShopCode());
|
||||||
|
posDO.setPassword("888888");
|
||||||
|
posDO.setType(PosAndOrderEnum.ORDER.getCode());
|
||||||
|
posDO.setRemark("已为您开通订货系统账号和密码,密码已加密,初始密码为888888,可通过加盟小程序修改密码!");
|
||||||
|
posDO.setCreateTime(new Date());
|
||||||
|
addPosAndOrderInfoList.add(posDO);
|
||||||
|
}
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_163.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_16.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
PosAndOrderInfoDO posDO = new PosAndOrderInfoDO();
|
||||||
|
posDO.setShopId(shopId);
|
||||||
|
posDO.setAccount(lineMobileMap.get(shop.getLineId()));
|
||||||
|
posDO.setType(PosAndOrderEnum.POS.getCode());
|
||||||
|
posDO.setRemark("已为您开通POS系统账号和密码");
|
||||||
|
posDO.setCreateTime(new Date());
|
||||||
|
addPosAndOrderInfoList.add(posDO);
|
||||||
|
}
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_235.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_23.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
PosAndOrderInfoDO posDO = new PosAndOrderInfoDO();
|
||||||
|
posDO.setShopId(shopId);
|
||||||
|
posDO.setAccount(shop.getShopCode());
|
||||||
|
posDO.setType(PosAndOrderEnum.XIN_FA_SYS.getCode());
|
||||||
|
posDO.setCreateTime(new Date());
|
||||||
|
addPosAndOrderInfoList.add(posDO);
|
||||||
|
}
|
||||||
|
if (!ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_245.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_24.getShopSubStage()).getShopSubStageStatus())
|
||||||
|
&& !ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_244.getShopSubStageStatus()
|
||||||
|
.equals(stageMap.get(ShopSubStageEnum.SHOP_STAGE_24.getShopSubStage()).getShopSubStageStatus())) {
|
||||||
|
PosAndOrderInfoDO posDO = new PosAndOrderInfoDO();
|
||||||
|
posDO.setShopId(shopId);
|
||||||
|
posDO.setType(PosAndOrderEnum.TENT_PASS.getCode());
|
||||||
|
posDO.setCreateTime(new Date());
|
||||||
|
addPosAndOrderInfoList.add(posDO);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (flag) {
|
||||||
|
//装修大阶段
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(trainShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_863);
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(trainShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_91);
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(trainShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_112);
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(trainShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_123);
|
||||||
|
}
|
||||||
|
//培训
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(trainShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_51);
|
||||||
|
//开业方案
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(trainShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_143);
|
||||||
|
//营帐通
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(buildShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_245);
|
||||||
|
//新发
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(buildShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_235);
|
||||||
|
//pos
|
||||||
|
shopStageInfoDAO.dataUpdateStatus(buildShopIdList, ShopSubStageStatusEnum.SHOP_SUB_STAGE_STATUS_163);
|
||||||
|
if (!errorList.isEmpty()) {
|
||||||
|
task.setStatus(ImportTaskStatusEnum.ERROR.getCode());
|
||||||
|
String url = null;
|
||||||
|
try {
|
||||||
|
url = easyExcelUtil.exportExcel(ImportOaOldShopDataErrorDTO.class, errorList, null,
|
||||||
|
FileTypeEnum.IMPORT_OA_OLD_SHOP_STAGE_DATA_ERROR.getDesc() + DateUtils.parseDateToStr(SPECIAL_DATE_START_1, new Date()),
|
||||||
|
FileTypeEnum.IMPORT_OA_OLD_SHOP_STAGE_DATA_ERROR.getDesc() + DateUtils.parseDateToStr(SPECIAL_DATE_START_1, new Date()));
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.info("导出失败列表失败 errorList:{}", JSONObject.toJSONString(errorList));
|
||||||
|
}
|
||||||
|
task.setFileUrl(url);
|
||||||
|
} else {
|
||||||
|
task.setStatus(ImportTaskStatusEnum.SUCCESS.getCode());
|
||||||
|
}
|
||||||
|
task.setTotalNum(dataMapList.size());
|
||||||
|
task.setSuccessNum(dataMapList.size() - errorList.size());
|
||||||
|
importTaskMapper.update(eid, task);
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static boolean check(ImportOaOldShopDataDTO dto, List<ImportOaOldShopDataErrorDTO> errorList) {
|
||||||
|
if (StringUtil.isBlank(dto.getShopCode())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("门店编码不能为空");
|
errorDTO.setErrorReason("门店编码不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getShopName())){
|
if (StringUtil.isBlank(dto.getShopName())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("门店名称不能为空");
|
errorDTO.setErrorReason("门店名称不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getProvince())){
|
if (StringUtil.isBlank(dto.getProvince())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("省不能为空");
|
errorDTO.setErrorReason("省不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getCity())){
|
if (StringUtil.isBlank(dto.getCity())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("市不能为空");
|
errorDTO.setErrorReason("市不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getDistrict())){
|
if (StringUtil.isBlank(dto.getDistrict())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("区不能为空");
|
errorDTO.setErrorReason("区不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getShopAddress())){
|
if (StringUtil.isBlank(dto.getShopAddress())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("门店地址不能为空");
|
errorDTO.setErrorReason("门店地址不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getBuildEndTime())){
|
if (StringUtil.isBlank(dto.getBuildEndTime())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("建店资料完成时间不能为空");
|
errorDTO.setErrorReason("建店资料完成时间不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getMonthRent())){
|
if (StringUtil.isBlank(dto.getMonthRent())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("租金不能为空");
|
errorDTO.setErrorReason("租金不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getPointArea())){
|
if (StringUtil.isBlank(dto.getPointArea())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("场地实际面积不能为空");
|
errorDTO.setErrorReason("场地实际面积不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getContractStartDate())){
|
if (StringUtil.isBlank(dto.getContractStartDate())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("合同开始时间不能为空");
|
errorDTO.setErrorReason("合同开始时间不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getContractEndDate())){
|
if (StringUtil.isBlank(dto.getContractEndDate())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("合同结束时间不能为空");
|
errorDTO.setErrorReason("合同结束时间不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getYearFranchiseFee())){
|
if (StringUtil.isBlank(dto.getYearFranchiseFee())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("加盟费不能为空");
|
errorDTO.setErrorReason("加盟费不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getFirstYearManageFee())){
|
if (StringUtil.isBlank(dto.getFirstYearManageFee())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("管理费 不能为空");
|
errorDTO.setErrorReason("管理费 不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getFirstYearFee())){
|
if (StringUtil.isBlank(dto.getFirstYearFee())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("品牌使用管理费不能为空");
|
errorDTO.setErrorReason("品牌使用管理费不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getPerformanceBond())){
|
if (StringUtil.isBlank(dto.getPerformanceBond())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("设计费不能为空");
|
errorDTO.setErrorReason("设计费不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getLoanMargin())){
|
if (StringUtil.isBlank(dto.getLoanMargin())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("保证金不能为空");
|
errorDTO.setErrorReason("保证金不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getDiscountReason())){
|
if (StringUtil.isBlank(dto.getDiscountReason())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("加盟费优惠原因不能为空");
|
errorDTO.setErrorReason("加盟费优惠原因不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getDeclareGoodsLogisticsWarehouseName())){
|
if (StringUtil.isBlank(dto.getDeclareGoodsLogisticsWarehouseName())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("报货物流仓库不能为空");
|
errorDTO.setErrorReason("报货物流仓库不能为空");
|
||||||
errorList.add(errorDTO);
|
errorList.add(errorDTO);
|
||||||
return false;
|
return false;
|
||||||
}
|
}
|
||||||
if (StringUtil.isBlank(dto.getContractCode())){
|
if (StringUtil.isBlank(dto.getContractCode())) {
|
||||||
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
ImportOaOldShopDataErrorDTO errorDTO = new ImportOaOldShopDataErrorDTO();
|
||||||
errorDTO.setShopCode(dto.getShopCode());
|
errorDTO.setShopCode(dto.getShopCode());
|
||||||
errorDTO.setErrorReason("合同编号不能为空");
|
errorDTO.setErrorReason("合同编号不能为空");
|
||||||
@@ -532,63 +692,67 @@ public class DataHandlerServerImpl implements DataHandlerServer {
|
|||||||
importOaOldShopDataDTO.setDistrict(String.valueOf(data.get("区")));
|
importOaOldShopDataDTO.setDistrict(String.valueOf(data.get("区")));
|
||||||
importOaOldShopDataDTO.setShopAddress(String.valueOf(data.get("门店地址")));
|
importOaOldShopDataDTO.setShopAddress(String.valueOf(data.get("门店地址")));
|
||||||
importOaOldShopDataDTO.setBuildEndTime(String.valueOf(data.get("建店资料完成时间")));
|
importOaOldShopDataDTO.setBuildEndTime(String.valueOf(data.get("建店资料完成时间")));
|
||||||
if (Objects.nonNull(data.get("店面租金"))){
|
if (Objects.nonNull(data.get("店面租金"))) {
|
||||||
importOaOldShopDataDTO.setMonthRent(String.valueOf(data.get("店面租金")));}
|
importOaOldShopDataDTO.setMonthRent(String.valueOf(data.get("店面租金")));
|
||||||
if (Objects.nonNull(data.get("场地实际面积"))){
|
}
|
||||||
importOaOldShopDataDTO.setPointArea(String.valueOf(data.get("场地实际面积")));}
|
if (Objects.nonNull(data.get("场地实际面积"))) {
|
||||||
if (Objects.nonNull(data.get("签约人2姓名"))){
|
importOaOldShopDataDTO.setPointArea(String.valueOf(data.get("场地实际面积")));
|
||||||
importOaOldShopDataDTO.setPartnershipSignatorySecond(String.valueOf(data.get("签约人2姓名")));}
|
}
|
||||||
if (Objects.nonNull(data.get("签约人2电话"))){
|
if (Objects.nonNull(data.get("签约人2姓名"))) {
|
||||||
importOaOldShopDataDTO.setPartnershipSignatorySecondMobile(String.valueOf(data.get("签约人2电话")));}
|
importOaOldShopDataDTO.setPartnershipSignatorySecond(String.valueOf(data.get("签约人2姓名")));
|
||||||
if (Objects.nonNull(data.get("签约人2身份证号码"))){
|
}
|
||||||
|
if (Objects.nonNull(data.get("签约人2电话"))) {
|
||||||
|
importOaOldShopDataDTO.setPartnershipSignatorySecondMobile(String.valueOf(data.get("签约人2电话")));
|
||||||
|
}
|
||||||
|
if (Objects.nonNull(data.get("签约人2身份证号码"))) {
|
||||||
importOaOldShopDataDTO.setPartnershipSignatorySecondIdNumber(String.valueOf(data.get("签约人2身份证号码")));
|
importOaOldShopDataDTO.setPartnershipSignatorySecondIdNumber(String.valueOf(data.get("签约人2身份证号码")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("合同开始日期"))){
|
if (Objects.nonNull(data.get("合同开始日期"))) {
|
||||||
importOaOldShopDataDTO.setContractStartDate(String.valueOf(data.get("合同开始日期")));
|
importOaOldShopDataDTO.setContractStartDate(String.valueOf(data.get("合同开始日期")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("合同结束日期"))){
|
if (Objects.nonNull(data.get("合同结束日期"))) {
|
||||||
importOaOldShopDataDTO.setContractEndDate(String.valueOf(data.get("合同结束日期")));
|
importOaOldShopDataDTO.setContractEndDate(String.valueOf(data.get("合同结束日期")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("合同编号"))){
|
if (Objects.nonNull(data.get("合同编号"))) {
|
||||||
importOaOldShopDataDTO.setContractCode(String.valueOf(data.get("合同编号")));
|
importOaOldShopDataDTO.setContractCode(String.valueOf(data.get("合同编号")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("保护距离(米)"))){
|
if (Objects.nonNull(data.get("保护距离(米)"))) {
|
||||||
importOaOldShopDataDTO.setProtectionDistance(String.valueOf(data.get("保护距离(米)")));
|
importOaOldShopDataDTO.setProtectionDistance(String.valueOf(data.get("保护距离(米)")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("介绍人"))){
|
if (Objects.nonNull(data.get("介绍人"))) {
|
||||||
importOaOldShopDataDTO.setIntroducer(String.valueOf(data.get("介绍人")));
|
importOaOldShopDataDTO.setIntroducer(String.valueOf(data.get("介绍人")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("介绍门店"))){
|
if (Objects.nonNull(data.get("介绍门店"))) {
|
||||||
importOaOldShopDataDTO.setIntroduceStore(String.valueOf(data.get("介绍门店")));
|
importOaOldShopDataDTO.setIntroduceStore(String.valueOf(data.get("介绍门店")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("介绍奖"))){
|
if (Objects.nonNull(data.get("介绍奖"))) {
|
||||||
importOaOldShopDataDTO.setIntroductionAward(String.valueOf(data.get("介绍奖")));
|
importOaOldShopDataDTO.setIntroductionAward(String.valueOf(data.get("介绍奖")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("报货物流仓库"))){
|
if (Objects.nonNull(data.get("报货物流仓库"))) {
|
||||||
importOaOldShopDataDTO.setDeclareGoodsLogisticsWarehouseName(String.valueOf(data.get("报货物流仓库")));
|
importOaOldShopDataDTO.setDeclareGoodsLogisticsWarehouseName(String.valueOf(data.get("报货物流仓库")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("收款公司民生银行账号"))){
|
if (Objects.nonNull(data.get("收款公司民生银行账号"))) {
|
||||||
importOaOldShopDataDTO.setReceivingMsBankAccount(String.valueOf(data.get("收款公司民生银行账号")));
|
importOaOldShopDataDTO.setReceivingMsBankAccount(String.valueOf(data.get("收款公司民生银行账号")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("云流水账号"))){
|
if (Objects.nonNull(data.get("云流水账号"))) {
|
||||||
importOaOldShopDataDTO.setYlsAccount(String.valueOf(data.get("云流水账号")));
|
importOaOldShopDataDTO.setYlsAccount(String.valueOf(data.get("云流水账号")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("加盟费"))){
|
if (Objects.nonNull(data.get("加盟费"))) {
|
||||||
importOaOldShopDataDTO.setYearFranchiseFee(String.valueOf(data.get("加盟费")));
|
importOaOldShopDataDTO.setYearFranchiseFee(String.valueOf(data.get("加盟费")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("加盟费优惠原因"))){
|
if (Objects.nonNull(data.get("加盟费优惠原因"))) {
|
||||||
importOaOldShopDataDTO.setDiscountReason(String.valueOf(data.get("加盟费优惠原因")));
|
importOaOldShopDataDTO.setDiscountReason(String.valueOf(data.get("加盟费优惠原因")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("管理费"))){
|
if (Objects.nonNull(data.get("管理费"))) {
|
||||||
importOaOldShopDataDTO.setFirstYearManageFee(String.valueOf(data.get("管理费")));
|
importOaOldShopDataDTO.setFirstYearManageFee(String.valueOf(data.get("管理费")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("设计费"))){
|
if (Objects.nonNull(data.get("设计费"))) {
|
||||||
importOaOldShopDataDTO.setPerformanceBond(String.valueOf(data.get("设计费")));
|
importOaOldShopDataDTO.setPerformanceBond(String.valueOf(data.get("设计费")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("保证金"))){
|
if (Objects.nonNull(data.get("保证金"))) {
|
||||||
importOaOldShopDataDTO.setLoanMargin(String.valueOf(data.get("保证金")));
|
importOaOldShopDataDTO.setLoanMargin(String.valueOf(data.get("保证金")));
|
||||||
}
|
}
|
||||||
if (Objects.nonNull(data.get("品牌使用管理费"))){
|
if (Objects.nonNull(data.get("品牌使用管理费"))) {
|
||||||
importOaOldShopDataDTO.setFirstYearFee(String.valueOf(data.get("品牌使用管理费")));
|
importOaOldShopDataDTO.setFirstYearFee(String.valueOf(data.get("品牌使用管理费")));
|
||||||
}
|
}
|
||||||
return importOaOldShopDataDTO;
|
return importOaOldShopDataDTO;
|
||||||
|
|||||||
@@ -53,10 +53,14 @@ public class FranchiseReportServiceImpl implements FranchiseReportService {
|
|||||||
//集团查大区
|
//集团查大区
|
||||||
List<Long> regionIdByGroupName = bigRegionDAO.getRegionIdByGroupName(request.getJoinGroupName());
|
List<Long> regionIdByGroupName = bigRegionDAO.getRegionIdByGroupName(request.getJoinGroupName());
|
||||||
if (CollectionUtils.isNotEmpty(regionIdByGroupName)) {
|
if (CollectionUtils.isNotEmpty(regionIdByGroupName)) {
|
||||||
if (CollectionUtils.isEmpty(request.getRegionIds())){
|
if (CollectionUtils.isEmpty(request.getRegionIds())) {
|
||||||
request.setRegionIds(new ArrayList<>());
|
request.setRegionIds(regionIdByGroupName);
|
||||||
|
} else {
|
||||||
|
request.getRegionIds().retainAll(regionIdByGroupName);
|
||||||
|
if (CollectionUtils.isEmpty(request.getRegionIds())){
|
||||||
|
throw new ServiceException(ErrorCodeEnum.REGION_INTERSECTION_IS_NULL);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
request.getRegionIds().addAll(regionIdByGroupName);
|
|
||||||
}
|
}
|
||||||
List<FranchiseReportDTO> shopFranchiseReportList = shopInfoDAO.getShopFranchiseReportList(request);
|
List<FranchiseReportDTO> shopFranchiseReportList = shopInfoDAO.getShopFranchiseReportList(request);
|
||||||
if (CollectionUtils.isEmpty(shopFranchiseReportList)) {
|
if (CollectionUtils.isEmpty(shopFranchiseReportList)) {
|
||||||
@@ -77,9 +81,9 @@ public class FranchiseReportServiceImpl implements FranchiseReportService {
|
|||||||
if (response == null) {
|
if (response == null) {
|
||||||
response = new FranchiseReportResponse();
|
response = new FranchiseReportResponse();
|
||||||
response.setRegionId(shopFranchiseReportDTO.getRegionId());
|
response.setRegionId(shopFranchiseReportDTO.getRegionId());
|
||||||
response.setRegionName(bigRegionDOMap.getOrDefault(shopFranchiseReportDTO.getRegionId(), new BigRegionDO()).getRegionName());
|
response.setRegionName(bigRegionDOMap.getOrDefault(shopFranchiseReportDTO.getRegionId(), new BigRegionDO()).getRegionName());
|
||||||
String groupName = bigRegionDOMap.getOrDefault(shopFranchiseReportDTO.getRegionId(), new BigRegionDO()).getGroupName();
|
String groupName = bigRegionDOMap.getOrDefault(shopFranchiseReportDTO.getRegionId(), new BigRegionDO()).getGroupName();
|
||||||
if (StringUtils.isBlank(groupName)){
|
if (StringUtils.isBlank(groupName)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
response.setJoinGroupName(groupName);
|
response.setJoinGroupName(groupName);
|
||||||
@@ -109,23 +113,23 @@ public class FranchiseReportServiceImpl implements FranchiseReportService {
|
|||||||
FranchiseReportRequest yesterdayRequest = new FranchiseReportRequest();
|
FranchiseReportRequest yesterdayRequest = new FranchiseReportRequest();
|
||||||
yesterdayRequest.setRegionIds(request.getRegionIds());
|
yesterdayRequest.setRegionIds(request.getRegionIds());
|
||||||
yesterdayRequest.setStoreTypes(request.getStoreTypes());
|
yesterdayRequest.setStoreTypes(request.getStoreTypes());
|
||||||
LocalDate now = LocalDate.now();
|
LocalDate now = LocalDate.now();
|
||||||
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss");
|
||||||
//昨日 00:00:00
|
//昨日 00:00:00
|
||||||
LocalDateTime yesterdayStartDate = now.minusDays(1).atStartOfDay();
|
LocalDateTime yesterdayStartDate = now.minusDays(1).atStartOfDay();
|
||||||
String yesterdayStartTime = yesterdayStartDate.format(formatter);
|
String yesterdayStartTime = yesterdayStartDate.format(formatter);
|
||||||
//昨日 23:59:59
|
//昨日 23:59:59
|
||||||
LocalDateTime yesterdayEndDate = now.minusDays(1).atTime(23,59,59);
|
LocalDateTime yesterdayEndDate = now.minusDays(1).atTime(23, 59, 59);
|
||||||
String yesterdayEndTime = yesterdayEndDate.format(formatter);
|
String yesterdayEndTime = yesterdayEndDate.format(formatter);
|
||||||
yesterdayRequest.setBuildStartTime(yesterdayStartTime);
|
yesterdayRequest.setBuildStartTime(yesterdayStartTime);
|
||||||
yesterdayRequest.setBuildEndTime(yesterdayEndTime);
|
yesterdayRequest.setBuildEndTime(yesterdayEndTime);
|
||||||
List<FranchiseReportDTO> yesterdayShopFranchiseReportList = shopInfoDAO.getShopFranchiseReportList(yesterdayRequest);
|
List<FranchiseReportDTO> yesterdayShopFranchiseReportList = shopInfoDAO.getShopFranchiseReportList(yesterdayRequest);
|
||||||
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
DateTimeFormatter formatter1 = DateTimeFormatter.ofPattern("yyyy-MM-dd");
|
||||||
if (CollectionUtils.isNotEmpty(yesterdayShopFranchiseReportList)) {
|
if (CollectionUtils.isNotEmpty(yesterdayShopFranchiseReportList)) {
|
||||||
Map<Long, List<FranchiseReportDTO>> yesterdayMap = yesterdayShopFranchiseReportList.stream().collect( Collectors.groupingBy(FranchiseReportDTO::getRegionId));
|
Map<Long, List<FranchiseReportDTO>> yesterdayMap = yesterdayShopFranchiseReportList.stream().collect(Collectors.groupingBy(FranchiseReportDTO::getRegionId));
|
||||||
for (Long regionId : responseByRegionIdMap.keySet()){
|
for (Long regionId : responseByRegionIdMap.keySet()) {
|
||||||
FranchiseReportResponse response = responseByRegionIdMap.get(regionId);
|
FranchiseReportResponse response = responseByRegionIdMap.get(regionId);
|
||||||
if (Objects.isNull(response)){
|
if (Objects.isNull(response)) {
|
||||||
continue;
|
continue;
|
||||||
}
|
}
|
||||||
List<FranchiseReportDTO> yesterdayList = yesterdayMap.get(regionId);
|
List<FranchiseReportDTO> yesterdayList = yesterdayMap.get(regionId);
|
||||||
@@ -136,10 +140,48 @@ public class FranchiseReportServiceImpl implements FranchiseReportService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
List<FranchiseReportResponse> list = new ArrayList<>(responseByRegionIdMap.values());
|
List<FranchiseReportResponse> list = new ArrayList<>(responseByRegionIdMap.values());
|
||||||
if (CollectionUtils.isEmpty(list)){
|
if (CollectionUtils.isEmpty(list)) {
|
||||||
log.info("数据为空");
|
log.info("数据为空");
|
||||||
return Collections.emptyList();
|
return Collections.emptyList();
|
||||||
}
|
}
|
||||||
return list.stream().sorted(Comparator.comparing(FranchiseReportResponse::getJoinGroupName)).collect(Collectors.toList());
|
sortByName(list);
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
public static void sortByName(List<FranchiseReportResponse> list) {
|
||||||
|
list.sort(Comparator.comparingInt(f -> extractNumberFromName(f.getJoinGroupName())));
|
||||||
|
}
|
||||||
|
|
||||||
|
private static int extractNumberFromName(String name) {
|
||||||
|
try {
|
||||||
|
|
||||||
|
if (name.contains("第一加盟集团")) {
|
||||||
|
return 1;
|
||||||
|
}
|
||||||
|
if (name.contains("第二加盟集团")) {
|
||||||
|
return 2;
|
||||||
|
}
|
||||||
|
if (name.contains("第三加盟集团")) {
|
||||||
|
return 3;
|
||||||
|
}
|
||||||
|
if (name.contains("第四加盟集团")) {
|
||||||
|
return 4;
|
||||||
|
}
|
||||||
|
if (name.contains("第五加盟集团")) {
|
||||||
|
return 5;
|
||||||
|
}
|
||||||
|
if (name.contains("第六加盟集团")) {
|
||||||
|
return 6;
|
||||||
|
}
|
||||||
|
if (name.contains("第七加盟集团")) {
|
||||||
|
return 7;
|
||||||
|
}
|
||||||
|
if (name.contains("第八加盟集团")) {
|
||||||
|
return 8;
|
||||||
|
}
|
||||||
|
return Integer.MAX_VALUE;
|
||||||
|
} catch (Exception e) {
|
||||||
|
return Integer.MAX_VALUE;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -3,8 +3,10 @@ package com.cool.store.service.impl;
|
|||||||
|
|
||||||
import com.cool.store.dao.EnterpriseUserDAO;
|
import com.cool.store.dao.EnterpriseUserDAO;
|
||||||
import com.cool.store.dao.PosAndOrderInfoDAO;
|
import com.cool.store.dao.PosAndOrderInfoDAO;
|
||||||
|
import com.cool.store.dao.ShopInfoDAO;
|
||||||
import com.cool.store.dao.ShopStageInfoDAO;
|
import com.cool.store.dao.ShopStageInfoDAO;
|
||||||
import com.cool.store.entity.PosAndOrderInfoDO;
|
import com.cool.store.entity.PosAndOrderInfoDO;
|
||||||
|
import com.cool.store.entity.ShopInfoDO;
|
||||||
import com.cool.store.entity.ShopStageInfoDO;
|
import com.cool.store.entity.ShopStageInfoDO;
|
||||||
import com.cool.store.enums.ErrorCodeEnum;
|
import com.cool.store.enums.ErrorCodeEnum;
|
||||||
import com.cool.store.enums.PosAndOrderEnum;
|
import com.cool.store.enums.PosAndOrderEnum;
|
||||||
@@ -32,6 +34,8 @@ import java.util.Objects;
|
|||||||
@Service
|
@Service
|
||||||
public class PosAndOrderInfoServiceImpl implements PosAndOrderInfoService {
|
public class PosAndOrderInfoServiceImpl implements PosAndOrderInfoService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ShopInfoDAO shopInfoDAO;
|
||||||
@Resource
|
@Resource
|
||||||
private PosAndOrderInfoDAO posAndOrderInfoDAO;
|
private PosAndOrderInfoDAO posAndOrderInfoDAO;
|
||||||
@Autowired
|
@Autowired
|
||||||
@@ -68,6 +72,7 @@ public class PosAndOrderInfoServiceImpl implements PosAndOrderInfoService {
|
|||||||
public PosAndOrderResponse get(Long shopId, Integer type) {
|
public PosAndOrderResponse get(Long shopId, Integer type) {
|
||||||
PosAndOrderResponse response = new PosAndOrderResponse();
|
PosAndOrderResponse response = new PosAndOrderResponse();
|
||||||
PosAndOrderInfoDO posAndOrderInfoDO = posAndOrderInfoDAO.selectOneByShopId(shopId, type);
|
PosAndOrderInfoDO posAndOrderInfoDO = posAndOrderInfoDAO.selectOneByShopId(shopId, type);
|
||||||
|
ShopInfoDO shopInfo = shopInfoDAO.getShopInfo(shopId);
|
||||||
if (Objects.nonNull(posAndOrderInfoDO)) {
|
if (Objects.nonNull(posAndOrderInfoDO)) {
|
||||||
response.setShopId(posAndOrderInfoDO.getShopId());
|
response.setShopId(posAndOrderInfoDO.getShopId());
|
||||||
response.setAccount(posAndOrderInfoDO.getAccount());
|
response.setAccount(posAndOrderInfoDO.getAccount());
|
||||||
@@ -77,6 +82,9 @@ public class PosAndOrderInfoServiceImpl implements PosAndOrderInfoService {
|
|||||||
response.setCreateTime(posAndOrderInfoDO.getCreateTime());
|
response.setCreateTime(posAndOrderInfoDO.getCreateTime());
|
||||||
response.setCreateUser(enterpriseUserDAO.getUserName(posAndOrderInfoDO.getCreateUser()));
|
response.setCreateUser(enterpriseUserDAO.getUserName(posAndOrderInfoDO.getCreateUser()));
|
||||||
}
|
}
|
||||||
|
else{
|
||||||
|
response.setAccount(shopInfo.getShopCode());
|
||||||
|
}
|
||||||
return response;
|
return response;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -3,6 +3,7 @@ package com.cool.store.controller.webb;
|
|||||||
import com.cool.store.dto.content.ContentQueryDetailDto;
|
import com.cool.store.dto.content.ContentQueryDetailDto;
|
||||||
import com.cool.store.dto.region.BigRegionDTO;
|
import com.cool.store.dto.region.BigRegionDTO;
|
||||||
import com.cool.store.entity.HyContentInfoDO;
|
import com.cool.store.entity.HyContentInfoDO;
|
||||||
|
import com.cool.store.request.QueryBigRegionRequest;
|
||||||
import com.cool.store.response.ResponseResult;
|
import com.cool.store.response.ResponseResult;
|
||||||
import com.cool.store.service.BigRegionService;
|
import com.cool.store.service.BigRegionService;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
@@ -31,5 +32,10 @@ public class BigRegionController {
|
|||||||
return ResponseResult.success(bigRegionService.queryAllBigRegion(keyword));
|
return ResponseResult.success(bigRegionService.queryAllBigRegion(keyword));
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/queryBigRegion")
|
||||||
|
@ApiOperation("获取可选择的大区joinMode = 0")
|
||||||
|
public ResponseResult<List<BigRegionDTO>> queryBigRegion(@RequestBody QueryBigRegionRequest queryBigRegionRequest) {
|
||||||
|
return ResponseResult.success(bigRegionService.queryBigRegion(queryBigRegionRequest));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -15,6 +15,7 @@ import lombok.extern.slf4j.Slf4j;
|
|||||||
import org.springframework.beans.factory.annotation.Value;
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
import org.springframework.web.bind.annotation.PostMapping;
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
import org.springframework.web.bind.annotation.RequestMapping;
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
import org.springframework.web.bind.annotation.RestController;
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
import org.springframework.web.multipart.MultipartFile;
|
import org.springframework.web.multipart.MultipartFile;
|
||||||
|
|
||||||
@@ -68,5 +69,30 @@ public class DataHandlerController {
|
|||||||
return ResponseResult.success(true);
|
return ResponseResult.success(true);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@PostMapping("/dataStageHandler")
|
||||||
|
@ApiOperation("阶段处理")
|
||||||
|
public ResponseResult<Boolean> importOaOldShopData(MultipartFile file, @RequestParam("flag") Boolean flag) {
|
||||||
|
ExcelReader reader = null;
|
||||||
|
try {
|
||||||
|
reader = ExcelUtil.getReader(file.getInputStream());
|
||||||
|
} catch (IOException e) {
|
||||||
|
log.error("read file error:", e);
|
||||||
|
}
|
||||||
|
assert reader != null;
|
||||||
|
log.info("----------------------:{}",file.getOriginalFilename());
|
||||||
|
List<Map<String, Object>> dataMapList = reader.read(0, 1, Integer.MAX_VALUE);
|
||||||
|
ImportTaskDO importTaskDO = new ImportTaskDO();
|
||||||
|
importTaskDO.setFileName(file.getOriginalFilename());
|
||||||
|
importTaskDO.setFileType(FileTypeEnum.IMPORT_OA_OLD_SHOP_STAGE_DATA.getFileType());
|
||||||
|
importTaskDO.setIsImport(true);
|
||||||
|
importTaskDO.setStatus(ImportTaskStatusEnum.PROGRESS.getCode());
|
||||||
|
importTaskDO.setCreateUserId(CurrentUserHolder.getUserId());
|
||||||
|
importTaskDO.setCreateName(CurrentUserHolder.getUser().getName());
|
||||||
|
importTaskDO.setCreateTime(System.currentTimeMillis());
|
||||||
|
importTaskMapper.insert(eid ,importTaskDO);
|
||||||
|
dataHandlerServer.dataStageHandler(dataMapList, file.getOriginalFilename(), CurrentUserHolder.getUser(), importTaskDO,flag);
|
||||||
|
return ResponseResult.success(true);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
Reference in New Issue
Block a user