提交Oam事务修复,修订放心学相关bug

This commit is contained in:
DB 2023-12-20 19:21:36 +08:00
parent e6c62e8355
commit 75bb2374e3
9 changed files with 80 additions and 41 deletions

View File

@ -5,6 +5,7 @@ import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
@ -22,6 +23,20 @@ import java.util.List;
@ApiModel(value = "EasyLearnPageBo对象", description = "放心学分页查询参数")
public class EasyLearnPageBo {
/**
* 结束日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "结束日期")
private LocalDate endDate;
/**
* 开始日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "开始日期")
private LocalDate startDate;
/**
* 顾问
*/

View File

@ -47,8 +47,8 @@ public class EasyLearnController {
*/
@ApiOperation("查询放心学分页")
@GetMapping("/getEasyLearnPage")
public R<Page<EasyLearnPageVo>> getEasyLearnPage(@RequestParam(value = "startAndEnd",required = false) List<LocalDate> startAndEnd, @Validated EasyLearnPageBo bo) {
Page<EasyLearnPageVo> page = easyLearnOrderService.getEasyLearnPage(startAndEnd, bo);
public R<Page<EasyLearnPageVo>> getEasyLearnPage(@Validated EasyLearnPageBo bo) {
Page<EasyLearnPageVo> page = easyLearnOrderService.getEasyLearnPage(bo);
return R.ok(page);
}
@ -61,8 +61,7 @@ public class EasyLearnController {
*/
@GetMapping("/getEasyLearnXml")
@ApiOperation("导出放心学数据")
public void getEasyLearnXml(HttpServletResponse response, @RequestParam(value = "startAndEnd", required = false) List<LocalDate> startAndEnd,
@ApiParam("分页查询条件") @Validated EasyLearnPageBo bo) throws IOException {
public void getEasyLearnXml(HttpServletResponse response, @ApiParam("分页查询条件") @Validated EasyLearnPageBo bo) throws IOException {
// 这里注意 有同学反应使用swagger 会导致各种问题请直接用浏览器或者用postman
response.setContentType("application/vnd.openxmlformats-officedocument.spreadsheetml.sheet");
response.setCharacterEncoding("utf-8");
@ -88,6 +87,6 @@ public class EasyLearnController {
}
String fileName = URLEncoder.encode(fileFullName + "数据", "UTF-8").replaceAll("\\+", "%20");
response.setHeader("Content-disposition", "attachment;filename*=utf-8''" + fileName + ".xlsx");
EasyExcel.write(response.getOutputStream(), EasyLearnPageDto.class).sheet("记录").doWrite(easyLearnOrderService.getEasyLearnXml(startAndEnd, bo));
EasyExcel.write(response.getOutputStream(), EasyLearnPageDto.class).sheet("记录").doWrite(easyLearnOrderService.getEasyLearnXml(bo));
}
}

View File

@ -26,7 +26,7 @@ public interface EasyLearnOrderService extends IService<EasyLearnOrder> {
* @param bo 查询参数
* @return Page<EasyLearnPageVo>
*/
Page<EasyLearnPageVo> getEasyLearnPage(List<LocalDate> startAndEnd,EasyLearnPageBo bo);
Page<EasyLearnPageVo> getEasyLearnPage(EasyLearnPageBo bo);
/**
* 导出放心学数据
@ -35,5 +35,5 @@ public interface EasyLearnOrderService extends IService<EasyLearnOrder> {
* @param bo 请求参数
* @return List<EasyLearnPageDto>
*/
List<EasyLearnPageDto> getEasyLearnXml(List<LocalDate> startAndEnd,EasyLearnPageBo bo);
List<EasyLearnPageDto> getEasyLearnXml(EasyLearnPageBo bo);
}

View File

@ -48,9 +48,9 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
* @since 2023/12/15
*/
@Override
public Page<EasyLearnPageVo> getEasyLearnPage(List<LocalDate> startAndEnd, EasyLearnPageBo bo) {
public Page<EasyLearnPageVo> getEasyLearnPage(EasyLearnPageBo bo) {
//TODO: 后续数据录入后应该查询新版中的数据
return getOldEasyLearnPage(startAndEnd, bo);
return getOldEasyLearnPage(bo);
}
/**
@ -62,9 +62,9 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
* @since 2023/12/15
*/
@Override
public List<EasyLearnPageDto> getEasyLearnXml(List<LocalDate> startAndEnd, EasyLearnPageBo bo) {
public List<EasyLearnPageDto> getEasyLearnXml(EasyLearnPageBo bo) {
//TODO: 后续数据录入后应该查询新版中的数据
return getOldEasyLearnXml(startAndEnd, bo);
return getOldEasyLearnXml(bo);
}
/**
@ -75,7 +75,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
* @author DB
* @since 2023/12/15
*/
private List<EasyLearnPageDto> getOldEasyLearnXml(List<LocalDate> startAndEnd, EasyLearnPageBo bo) {
private List<EasyLearnPageDto> getOldEasyLearnXml(EasyLearnPageBo bo) {
//TODO: 暂时不处理顾问
try {
getJamboxProdDataSource();
@ -84,14 +84,14 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
case 0:
try {
DataSourceKey.use("jamboxProd");
return RowUtil.toEntityList(Db.selectListByQuery(getLearnNowPayLaterData(startAndEnd, false, bo)), EasyLearnPageDto.class);
return RowUtil.toEntityList(Db.selectListByQuery(getLearnNowPayLaterData(false, bo)), EasyLearnPageDto.class);
} finally {
DataSourceKey.clear();
}
case 1:
try {
DataSourceKey.use("jamboxProd");
return RowUtil.toEntityList(Db.selectListByQuery(getLearnNowPayLaterData(startAndEnd, true, bo)), EasyLearnPageDto.class);
return RowUtil.toEntityList(Db.selectListByQuery(getLearnNowPayLaterData(true, bo)), EasyLearnPageDto.class);
} finally {
DataSourceKey.clear();
}
@ -101,7 +101,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
case 3:
try {
DataSourceKey.use("jamboxProd");
return RowUtil.toEntityList(Db.selectListByQuery(getEcppData(startAndEnd, bo)), EasyLearnPageDto.class);
return RowUtil.toEntityList(Db.selectListByQuery(getEcppData(bo)), EasyLearnPageDto.class);
} finally {
DataSourceKey.clear();
}
@ -109,7 +109,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
try {
//使用旧库
DataSourceKey.use("jamboxProd");
return RowUtil.toEntityList(Db.selectListByQuery(getMemberData(startAndEnd, bo)), EasyLearnPageDto.class);
return RowUtil.toEntityList(Db.selectListByQuery(getMemberData(bo)), EasyLearnPageDto.class);
} finally {
DataSourceKey.clear();
}
@ -129,7 +129,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
* @author DB
* @since 2023/12/15
*/
private Page<EasyLearnPageVo> getOldEasyLearnPage(List<LocalDate> startAndEnd,EasyLearnPageBo bo) {
private Page<EasyLearnPageVo> getOldEasyLearnPage(EasyLearnPageBo bo) {
//TODO: 暂时不处理顾问
try {
getJamboxProdDataSource();
@ -141,14 +141,14 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
case 0:
try {
DataSourceKey.use("jamboxProd");
return Db.paginate("j_commodity_ticket", page, getLearnNowPayLaterData(startAndEnd,false, bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
return Db.paginate("j_commodity_ticket", page, getLearnNowPayLaterData(false, bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
} finally {
DataSourceKey.clear();
}
case 1:
try {
DataSourceKey.use("jamboxProd");
return Db.paginate("j_commodity_ticket", page, getLearnNowPayLaterData(startAndEnd,true, bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
return Db.paginate("j_commodity_ticket", page, getLearnNowPayLaterData(true, bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
} finally {
DataSourceKey.clear();
}
@ -158,7 +158,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
case 3:
try {
DataSourceKey.use("jamboxProd");
return Db.paginate("j_commodity_ticket", page, getEcppData(startAndEnd,bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
return Db.paginate("j_commodity_ticket", page, getEcppData(bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
} finally {
DataSourceKey.clear();
}
@ -166,7 +166,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
try {
//使用旧库
DataSourceKey.use("jamboxProd");
return Db.paginate("j_commodity_ticket", page, getMemberData(startAndEnd,bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
return Db.paginate("j_commodity_ticket", page, getMemberData(bo)).map(item -> item.toEntity(EasyLearnPageVo.class));
} finally {
DataSourceKey.clear();
}
@ -178,7 +178,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
}
}
private QueryWrapper getMemberData(List<LocalDate> startAndEnd, EasyLearnPageBo bo) {
private QueryWrapper getMemberData(EasyLearnPageBo bo) {
QueryWrapper queryWrapper = QueryWrapper.create();
queryWrapper
//查询品牌校区
@ -192,8 +192,8 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
.groupBy("jmt.ticket_id")
.orderBy("jmt.creation_time desc");
//开始时间结束时间
if (startAndEnd != null) {
queryWrapper.and("jmt.creation_time between ? and ?", startAndEnd.get(0), startAndEnd.get(1));
if (bo.getStartDate() != null && bo.getEndDate() != null) {
queryWrapper.and("jmt.creation_time between ? and ?", bo.getStartDate(), bo.getEndDate());
}
//品牌校区模糊查询
if (StringUtils.isNotBlank(bo.getBrandOrStore())) {
@ -210,7 +210,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
* @author DB
* @since 2023/12/15
*/
private QueryWrapper getEcppData(List<LocalDate> startAndEnd,EasyLearnPageBo bo) {
private QueryWrapper getEcppData(EasyLearnPageBo bo) {
QueryWrapper queryWrapper = QueryWrapper.create();
queryWrapper
//查询品牌校区
@ -230,8 +230,8 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
.groupBy("jct.ticket_id")
.orderBy("jct.creation_time desc");
//开始时间结束时间
if (startAndEnd != null) {
queryWrapper.and("jct.creation_time between ? and ?", startAndEnd.get(0), startAndEnd.get(1));
if (bo.getStartDate() != null && bo.getEndDate() != null) {
queryWrapper.and("jct.creation_time between ? and ?", bo.getStartDate(), bo.getEndDate());
}
//品牌校区模糊查询
if (StringUtils.isNotBlank(bo.getBrandOrStore())) {
@ -251,7 +251,7 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
* @author DB
* @since 2023/12/15
*/
private QueryWrapper getLearnNowPayLaterData(List<LocalDate> startAndEnd,Boolean isMonth, EasyLearnPageBo bo) {
private QueryWrapper getLearnNowPayLaterData(Boolean isMonth, EasyLearnPageBo bo) {
QueryWrapper queryWrapper = QueryWrapper.create()
//查询品牌校区
.select("tbi.name as brandName", "tmi.mechanism as storeName")
@ -273,8 +273,8 @@ public class EasyLearnOrderServiceImpl extends ServiceImpl<EasyLearnOrderMapper,
.groupBy("jct.ticket_id")
.orderBy("jct.creation_time desc");
//开始时间结束时间
if (startAndEnd != null) {
queryWrapper.and("jct.creation_time between ? and ?", startAndEnd.get(0), startAndEnd.get(1));
if (bo.getStartDate() != null && bo.getEndDate() != null) {
queryWrapper.and("jct.creation_time between ? and ?", bo.getStartDate(), bo.getEndDate());
}
//品牌校区模糊查询
if (StringUtils.isNotBlank(bo.getBrandOrStore())) {

View File

@ -72,8 +72,16 @@ public class BusinessServiceImpl extends ServiceImpl<BusinessMapper, Business> i
@Override
public Page<BusinessPageVo> getBusinessPage(Integer status) {
PageDomain pageDomain = SqlUtils.getInstance().getPageDomain();
//查询员工
JSONObject loginUserInfo = SecurityUtils.getInstance().getLoginUserInfo();
QueryWrapper queryWrapper = QueryWrapper.create();
//运营人员
if (loginUserInfo.getInteger("staffType") == 1) {
queryWrapper.leftJoin(BUSINESS_STAFF).on(BUSINESS_STAFF.BUSINESS_ID.eq(BUSINESS.ID))
.and(BUSINESS_STAFF.STAFF_ID.eq(loginUserInfo.getString("id")));
}
return this.mapper.paginateAs(Page.of(pageDomain.getPageNum(), pageDomain.getPageSize()),
QueryWrapper.create()
queryWrapper
.select(BUSINESS.ID, BUSINESS.BUSINESS_LEVEL, BUSINESS.BUSINESS_TYPE, BUSINESS.DESC, BUSINESS.START_DATE, BUSINESS.END_DATE, BUSINESS.ALL_SURPLUS_QUANTITY, BUSINESS.REMARK, BUSINESS.STATUS)
//员工表
.select(STAFF.NAME.as(BusinessPageVo::getInitiatorName))
@ -228,13 +236,13 @@ public class BusinessServiceImpl extends ServiceImpl<BusinessMapper, Business> i
//运营人员
if (loginUserInfo.getInteger("staffType") == 1) {
//查询自己处理中的校区的记录
queryWrapper.and(BUSINESS_STAFF.STAFF_ID.eq(loginUserInfo.getString("id"))
queryWrapper.and(BUSINESS_STAFF.STAFF_ID.eq(loginUserInfo.getString("id")))
//获取所有无人处理的校区
.or(STORE.ID.notIn(select(BUSINESS_DETAIL.STORE_ID)
.from(BUSINESS_DETAIL)
.leftJoin(BUSINESS_STAFF).on(BUSINESS_STAFF.BUSINESS_ID.eq(BUSINESS_DETAIL.BUSINESS_ID))
.where(BUSINESS_STAFF.STAFF_ID.ne(loginUserInfo.getString("id")))
)));
));
}
PageDomain pageDomain = SqlUtils.getInstance().getPageDomain();
return SpringUtils.getBean(StoreService.class).getMapper().paginateAs(Page.of(pageDomain.getPageNum(), pageDomain.getPageSize()),
@ -258,6 +266,7 @@ public class BusinessServiceImpl extends ServiceImpl<BusinessMapper, Business> i
//未签约-非测试
.and(STORE.IS_TEST.eq(false))
.and(STORE.HAVE_ACTIVE.eq(false))
.and(BUSINESS_DETAIL.DETAIL_STATUS.eq(bo.getDetailStatus()))
.orderBy(BUSINESS_DETAIL.CREATE_TIME.asc()),
BusinessInfoPageVo.class);

View File

@ -8,6 +8,8 @@ import org.springframework.stereotype.Component;
import javax.annotation.PostConstruct;
import java.time.Duration;
import static org.springframework.integration.config.xml.IntegrationNamespaceUtils.ROLE;
/**
@ -39,4 +41,5 @@ public class InitConfig {
}
}
}
}

View File

@ -1,9 +1,11 @@
package com.cpop.system.business.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;
@ -36,10 +38,18 @@ public class StoreRenewPageBo {
@ApiModelProperty(value = "续费状态",required = true)
private Integer renewStatus;
/**
* 续费开始日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "续费开始日期")
private LocalDate startDate;
/**
* 续费结束日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "续费结束日期")
private List<LocalDate> renewStartAndEnd;
private LocalDate endDate;
}

View File

@ -1,9 +1,11 @@
package com.cpop.system.business.bo;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.experimental.Accessors;
import org.springframework.format.annotation.DateTimeFormat;
import javax.validation.constraints.NotNull;
import java.time.LocalDate;
@ -32,12 +34,14 @@ public class StoreRenewXmlBo {
/**
* 续费结束日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "续费结束日期")
private LocalDate renewStartDate;
private LocalDate startDate;
/**
* 续费开始日期
*/
@DateTimeFormat(pattern = "yyyy-MM-dd")
@ApiModelProperty(value = "续费开始日期")
private LocalDate renewEndDate;
private LocalDate endDate;
}

View File

@ -55,8 +55,8 @@ public class StoreSignServiceImpl extends ServiceImpl<StoreSignMapper, StoreSign
break;
//已续费
case 1:
if (bo.getRenewStartAndEnd() != null) {
queryWrapper.and(STORE_RENEW.RENEW_DATE.between(bo.getRenewStartAndEnd().get(0), bo.getRenewStartAndEnd().get(1)));
if (bo.getStartDate() != null && bo.getEndDate() != null) {
queryWrapper.and(STORE_RENEW.RENEW_DATE.between(bo.getStartDate(), bo.getEndDate()));
}
return SpringUtils.getBean(StoreRenewService.class).getMapper().paginateAs(Page.of(pageDomain.getPageNum(), pageDomain.getPageSize()),
queryWrapper
@ -119,7 +119,7 @@ public class StoreSignServiceImpl extends ServiceImpl<StoreSignMapper, StoreSign
*/
@Override
public List<StoreRenewDto> getRenewXml(StoreRenewXmlBo bo) {
List<StoreRenewDto> storeRenewDtos = SpringUtils.getBean(StoreRenewService.class).listAs(QueryWrapper.create()
return SpringUtils.getBean(StoreRenewService.class).listAs(QueryWrapper.create()
.select(BRAND.BRAND_NAME)
.select(STORE.CREATE_TIME.as(StoreRenewDto::getCreateTime), STORE.PERSON_CHARGE, STORE.PHONE, STORE.STORE_NAME)
.select(STORE_SIGN.EXPIRE_DATE, STORE_SIGN.ID)
@ -131,10 +131,9 @@ public class StoreSignServiceImpl extends ServiceImpl<StoreSignMapper, StoreSign
.leftJoin(STORE_LICENSE).on(STORE_LICENSE.STORE_ID.eq(STORE.ID))
.leftJoin(STORE_SIGN).on(STORE_SIGN.STORE_ID.eq(STORE.ID))
.leftJoin("cp_oam_staff").as("cos").on("cos.id = `cp_sys_store_renew`.`renew_staff_id`")
.and(STORE_RENEW.RENEW_DATE.between(bo.getRenewStartDate(), bo.getRenewEndDate()))
.and(STORE_RENEW.RENEW_DATE.between(bo.getStartDate(), bo.getEndDate()))
.and(BRAND.BRAND_NAME.like(bo.getBrandOrStore()).or(STORE.STORE_NAME.like(bo.getBrandOrStore())))
.and(STORE_LICENSE.LICENSE_ADDR.like(bo.getAddrOrName()).or(STORE_LICENSE.LICENSE_NAME.like(bo.getAddrOrName()))),
StoreRenewDto.class);
return storeRenewDtos;
}
}