提交 8555bced authored 作者: 李秋林's avatar 李秋林

管理后台查询上报数据、新增店铺

上级 b50d2a1f
package com.wangxiaolu.promotion.controller.activity.employee;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.service.activity.employee.EmpPromotionStoreQueryService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* @author : liqiulin
* @date : 2024-06-26 16
* @describe : 员工后台查询店铺列表
*/
@Slf4j
@RestController
@RequestMapping("/activity/employee/query/store")
public class EmpPromotionStoreQueryController {
@Autowired
EmpPromotionStoreQueryService empPromotionStoreQueryService;
/**
* 分页查询店铺
*/
@PostMapping("/page")
public R findStorePage(@RequestBody PageInfo pageInfo) {
empPromotionStoreQueryService.findStorePage(pageInfo);
return R.success(pageInfo);
}
}
...@@ -30,7 +30,8 @@ public class PromotionStoreQueryController { ...@@ -30,7 +30,8 @@ public class PromotionStoreQueryController {
RedisCache redisCache; RedisCache redisCache;
/** /**
* 查询店铺列表:目前不分页 * 查询店铺列表
* 默认前200条(不分页)
*/ */
@PostMapping("/list") @PostMapping("/list")
public R findStoreList(@RequestBody PromotionStoreVo promotionStoreVo){ public R findStoreList(@RequestBody PromotionStoreVo promotionStoreVo){
......
...@@ -2,8 +2,8 @@ package com.wangxiaolu.promotion.domain.activity.dao; ...@@ -2,8 +2,8 @@ package com.wangxiaolu.promotion.domain.activity.dao;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.PromotionStoreWrapper; import com.wangxiaolu.promotion.domain.activity.wrapperQo.PromotionStoreWrapper;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.PromotionStoreDto; import com.wangxiaolu.promotion.pojo.activity.temporary.dto.PromotionStoreDto;
import com.wangxiaolu.promotion.pojo.activity.temporary.vo.PromotionStoreVo;
import java.util.List; import java.util.List;
...@@ -21,4 +21,6 @@ public interface PromotionStoreDao { ...@@ -21,4 +21,6 @@ public interface PromotionStoreDao {
PromotionStoreDto selectOneById(Long id); PromotionStoreDto selectOneById(Long id);
void qinceShopDetailAllTask(JSONArray responseDatas); void qinceShopDetailAllTask(JSONArray responseDatas);
void findPage(PromotionStoreWrapper wrap, PageInfo pageInfo);
} }
package com.wangxiaolu.promotion.domain.activity.dao; package com.wangxiaolu.promotion.domain.activity.dao;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryMarketCellWrapper;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto; import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto;
import java.util.List; import java.util.List;
...@@ -14,7 +15,7 @@ public interface TemporaryActivityMarketCellDao { ...@@ -14,7 +15,7 @@ public interface TemporaryActivityMarketCellDao {
void saveList(Long activityReportedId,JSONArray jsonArray); void saveList(Long activityReportedId,JSONArray jsonArray);
List<TemporaryActivityMarketCellDto> selectList(Long activityId); List<TemporaryActivityMarketCellDto> selectList(TemporaryMarketCellWrapper wrap);
void updateById(TemporaryActivityMarketCellDto dto); void updateById(TemporaryActivityMarketCellDto dto);
void deleteById(Long id); void deleteById(Long id);
......
...@@ -20,7 +20,7 @@ public interface TemporaryActivityReportedDao { ...@@ -20,7 +20,7 @@ public interface TemporaryActivityReportedDao {
/** /**
* 分页查询促销员任务列表 * 分页查询促销员任务列表
*/ */
void findListByTemporaryId(Integer temporaryId, PageInfo pageInfo); void findPage(TemporaryActivityWrapper taw, PageInfo pageInfo);
/** /**
* 查询当日任务 * 查询当日任务
...@@ -36,6 +36,4 @@ public interface TemporaryActivityReportedDao { ...@@ -36,6 +36,4 @@ public interface TemporaryActivityReportedDao {
* 根据ID修改 * 根据ID修改
*/ */
void updateById(TemporaryActivityReportedDto temActDto); void updateById(TemporaryActivityReportedDto temActDto);
void findListToEmployeePage(TemporaryActivityWrapper tw, PageInfo pageInfo);
} }
...@@ -3,13 +3,13 @@ package com.wangxiaolu.promotion.domain.activity.dao.impl; ...@@ -3,13 +3,13 @@ package com.wangxiaolu.promotion.domain.activity.dao.impl;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wangxiaolu.promotion.domain.activity.dao.PromotionStoreDao; import com.wangxiaolu.promotion.domain.activity.dao.PromotionStoreDao;
import com.wangxiaolu.promotion.domain.activity.mapper.PromotionStoreMapper; import com.wangxiaolu.promotion.domain.activity.mapper.PromotionStoreMapper;
import com.wangxiaolu.promotion.domain.activity.mapper.entity.PromotionStoreDO; import com.wangxiaolu.promotion.domain.activity.mapper.entity.PromotionStoreDO;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.PromotionStoreWrapper; import com.wangxiaolu.promotion.domain.activity.wrapperQo.PromotionStoreWrapper;
import com.wangxiaolu.promotion.domain.user.mapper.entity.QinCeClienteleStoreDO;
import com.wangxiaolu.promotion.domain.user.mapper.entity.QinCeDepartmentDO;
import com.wangxiaolu.promotion.exception.ParamException; import com.wangxiaolu.promotion.exception.ParamException;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.PromotionStoreDto; import com.wangxiaolu.promotion.pojo.activity.temporary.dto.PromotionStoreDto;
import com.wangxiaolu.promotion.result.basedata.RCode; import com.wangxiaolu.promotion.result.basedata.RCode;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -71,28 +71,34 @@ public class PromotionStoreDaoImpl implements PromotionStoreDao { ...@@ -71,28 +71,34 @@ public class PromotionStoreDaoImpl implements PromotionStoreDao {
@Override @Override
public void qinceShopDetailAllTask(JSONArray responseDatas) { public void qinceShopDetailAllTask(JSONArray responseDatas) {
// for (Object responseData : responseDatas) {
// JSONObject jo = JSONObject.parseObject(JSONObject.toJSONString(responseData));
// try {
// PromotionStoreDO storeDo = new PromotionStoreDO();
// storeDo.setQcId(jo.getString("id"))
// .setStoreName(jo.getString("store_name"))
// .setProvince(jo.getString("store_mss_province"))
// .setCity(jo.getString("store_mss_city"))
// .setArea(jo.getString("store_mss_area"))
// .setStreet(jo.getString("store_mss_street"))
// .setAddress(jo.getString("store_addr"))
// .setTemporaryId(0)
// .setTemporaryName("系统同步");
// promotionStoreMapper.insert(storeDo);
// } catch (Exception e) {
// log.error("勤策-同步终端store数据异常,异常数据:{}", responseData);
// log.error("勤策-同步终端store数据异常\n{}", e.getMessage());
// }
// }
}
for (Object responseData : responseDatas) { @Override
JSONObject jo = JSONObject.parseObject(JSONObject.toJSONString(responseData)); public void findPage(PromotionStoreWrapper wrap, PageInfo pageInfo) {
try { LambdaQueryWrapper<PromotionStoreDO> qw = buildWrapper(wrap);
PromotionStoreDO storeDo = new PromotionStoreDO(); Page<PromotionStoreDO> page = new Page<>(pageInfo.getPageNum(), pageInfo.getPageSize());
storeDo.setQcId(jo.getString("id")) Page<PromotionStoreDO> storePage = promotionStoreMapper.selectPage(page, qw);
.setStoreName(jo.getString("store_name")) pageInfo.pageCovert(storePage);
.setProvince(jo.getString("store_mss_province")) pageInfo.setRecords(transitionDtos(storePage.getRecords()));
.setCity(jo.getString("store_mss_city"))
.setArea(jo.getString("store_mss_area"))
.setStreet(jo.getString("store_mss_street"))
.setAddress(jo.getString("store_addr"))
.setTemporaryId(0)
.setTemporaryName("系统同步");
promotionStoreMapper.insert(storeDo);
} catch (Exception e) {
log.error("勤策-同步终端store数据异常,异常数据:{}", responseData);
log.error("勤策-同步终端store数据异常\n{}", e.getMessage());
}
}
} }
private LambdaQueryWrapper<PromotionStoreDO> buildWrapper(PromotionStoreWrapper promotionStoreWrapper){ private LambdaQueryWrapper<PromotionStoreDO> buildWrapper(PromotionStoreWrapper promotionStoreWrapper){
...@@ -112,6 +118,21 @@ public class PromotionStoreDaoImpl implements PromotionStoreDao { ...@@ -112,6 +118,21 @@ public class PromotionStoreDaoImpl implements PromotionStoreDao {
if (StringUtils.isNotBlank(promotionStoreWrapper.getStoreName())){ if (StringUtils.isNotBlank(promotionStoreWrapper.getStoreName())){
lqw.eq(PromotionStoreDO::getStoreName,promotionStoreWrapper.getStoreName()); lqw.eq(PromotionStoreDO::getStoreName,promotionStoreWrapper.getStoreName());
} }
if (Objects.nonNull(promotionStoreWrapper.getQcIdIsBlank())){
if (promotionStoreWrapper.getQcIdIsBlank()){
lqw.eq(PromotionStoreDO::getQcId,"");
}else {
lqw.ne(PromotionStoreDO::getQcId,"");
}
}
// 所属战区
if (StringUtils.isNotBlank(promotionStoreWrapper.getDeptQcId())){
lqw.eq(PromotionStoreDO::getDeptQcId,promotionStoreWrapper.getDeptQcId());
}
// 所属负责人
if (StringUtils.isNotBlank(promotionStoreWrapper.getChargerQcId())){
lqw.eq(PromotionStoreDO::getChargerQcId,promotionStoreWrapper.getChargerQcId());
}
return lqw; return lqw;
} }
......
...@@ -75,11 +75,12 @@ public class TemporaryActivityClockDaoImpl implements TemporaryActivityClockDao ...@@ -75,11 +75,12 @@ public class TemporaryActivityClockDaoImpl implements TemporaryActivityClockDao
@Override @Override
public void employeePage(String employeeQcId, PageInfo pageInfo) { public void employeePage(String employeeQcId, PageInfo pageInfo) {
// pagesize*(pageIndex - 1) // pagesize*(pageIndex - 1)
int pageSize = pageInfo.getPageSize(); // int pageSize = pageInfo.getPageSize();
int pageNum = pageInfo.getPageNum(); // int pageNum = pageInfo.getPageNum();
int skipNum = pageSize * (pageNum - 1); // int skipNum = pageSize * (pageNum - 1);
int skipNum = pageInfo.getSkipNum();
List<TemporaryActivityClockDO> clockDOS = temporaryActivityClockMapper.employeePageFirsd(employeeQcId, pageSize, skipNum); List<TemporaryActivityClockDO> clockDOS = temporaryActivityClockMapper.employeePageFirsd(employeeQcId, pageInfo.getPageSize(), skipNum);
if (Objects.isNull(clockDOS)) { if (Objects.isNull(clockDOS)) {
throw new DataException(RCode.DATA_NOT_HAVE_ERROR); throw new DataException(RCode.DATA_NOT_HAVE_ERROR);
} }
......
...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; ...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityMarketCellDao; import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityMarketCellDao;
import com.wangxiaolu.promotion.domain.activity.mapper.TemporaryActivityMarketCellMapper; import com.wangxiaolu.promotion.domain.activity.mapper.TemporaryActivityMarketCellMapper;
import com.wangxiaolu.promotion.domain.activity.mapper.entity.TemporaryActivityMarketCellDO; import com.wangxiaolu.promotion.domain.activity.mapper.entity.TemporaryActivityMarketCellDO;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryMarketCellWrapper;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto; import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -47,10 +48,17 @@ public class TemporaryActivityMarketCellDaoImpl implements TemporaryActivityMark ...@@ -47,10 +48,17 @@ public class TemporaryActivityMarketCellDaoImpl implements TemporaryActivityMark
} }
@Override @Override
public List<TemporaryActivityMarketCellDto> selectList(Long activityId) { public List<TemporaryActivityMarketCellDto> selectList(TemporaryMarketCellWrapper wrap) {
LambdaQueryWrapper<TemporaryActivityMarketCellDO> qw = new LambdaQueryWrapper<>(); LambdaQueryWrapper<TemporaryActivityMarketCellDO> qw = buildWrapper(wrap);
qw.eq(TemporaryActivityMarketCellDO::getActivityReportedId, activityId) qw.select(TemporaryActivityMarketCellDO::getId,
.eq(TemporaryActivityMarketCellDO::getIsDelete,1); TemporaryActivityMarketCellDO::getTemporaryId,
TemporaryActivityMarketCellDO::getActivityReportedId,
TemporaryActivityMarketCellDO::getClassName,
TemporaryActivityMarketCellDO::getPrdId,
TemporaryActivityMarketCellDO::getPrdName,
TemporaryActivityMarketCellDO::getBag,
TemporaryActivityMarketCellDO::getBox);
List<TemporaryActivityMarketCellDO> marketCellDOS = temporaryActivityMarketCellMapper.selectList(qw); List<TemporaryActivityMarketCellDO> marketCellDOS = temporaryActivityMarketCellMapper.selectList(qw);
return transitionDtos(marketCellDOS); return transitionDtos(marketCellDOS);
} }
...@@ -72,6 +80,28 @@ public class TemporaryActivityMarketCellDaoImpl implements TemporaryActivityMark ...@@ -72,6 +80,28 @@ public class TemporaryActivityMarketCellDaoImpl implements TemporaryActivityMark
temporaryActivityMarketCellMapper.updateById(updateDos); temporaryActivityMarketCellMapper.updateById(updateDos);
} }
private LambdaQueryWrapper<TemporaryActivityMarketCellDO> buildWrapper(TemporaryMarketCellWrapper wrap) {
LambdaQueryWrapper<TemporaryActivityMarketCellDO> qw = new LambdaQueryWrapper<>();
if (Objects.nonNull(wrap.getActivityId()) && (wrap.getActivityId() > 0)) {
qw.eq(TemporaryActivityMarketCellDO::getActivityReportedId, wrap.getActivityId());
}
if (Objects.nonNull(wrap.getTemporaryId()) && (wrap.getTemporaryId() > 0)) {
qw.eq(TemporaryActivityMarketCellDO::getTemporaryId, wrap.getTemporaryId());
}
if (!CollectionUtils.isEmpty(wrap.getActivityIds())) {
qw.in(TemporaryActivityMarketCellDO::getActivityReportedId, wrap.getActivityIds());
}
// 默认查询未删除数据
qw.eq(TemporaryActivityMarketCellDO::getIsDelete, 1);
return qw;
}
/** /**
* DO to DTO (单个对象) * DO to DTO (单个对象)
* *
......
...@@ -55,12 +55,7 @@ public class TemporaryActivityReportedDaoImpl implements TemporaryActivityReport ...@@ -55,12 +55,7 @@ public class TemporaryActivityReportedDaoImpl implements TemporaryActivityReport
* 根据促销员id查询所有任务 * 根据促销员id查询所有任务
*/ */
@Override @Override
public void findListByTemporaryId(Integer temporaryId, PageInfo pageInfo) { public void findPage(TemporaryActivityWrapper taw, PageInfo pageInfo) {
TemporaryActivityWrapper taw = JSONObject.parseObject(JSONObject.toJSONString(pageInfo.getQueryParams()), TemporaryActivityWrapper.class);
taw = Objects.isNull(taw) ? new TemporaryActivityWrapper() : taw;
taw.setTemporaryId(temporaryId);
LambdaQueryWrapper<TemporaryActivityReportedDO> temQw = buildQueryList(taw); LambdaQueryWrapper<TemporaryActivityReportedDO> temQw = buildQueryList(taw);
Page<TemporaryActivityReportedDO> page = new Page<>(pageInfo.getPageNum(), pageInfo.getPageSize()); Page<TemporaryActivityReportedDO> page = new Page<>(pageInfo.getPageNum(), pageInfo.getPageSize());
...@@ -99,22 +94,6 @@ public class TemporaryActivityReportedDaoImpl implements TemporaryActivityReport ...@@ -99,22 +94,6 @@ public class TemporaryActivityReportedDaoImpl implements TemporaryActivityReport
temporaryActivityReportedMapper.updateById(rDo); temporaryActivityReportedMapper.updateById(rDo);
} }
/**
* 员工查询
*
* @param tw
* @return
*/
@Override
public void findListToEmployeePage(TemporaryActivityWrapper tw, PageInfo pageInfo) {
LambdaQueryWrapper<TemporaryActivityReportedDO> qw = buildQueryList(tw);
Page<TemporaryActivityReportedDO> page = new Page<>(pageInfo.getPageNum(), pageInfo.getPageSize());
Page<TemporaryActivityReportedDO> temDoPage = temporaryActivityReportedMapper.selectPage(page, qw);
pageInfo.pageCovert(temDoPage);
pageInfo.setRecords(transitionDtos(temDoPage.getRecords()));
}
private LambdaQueryWrapper<TemporaryActivityReportedDO> buildQueryList(TemporaryActivityWrapper tw) { private LambdaQueryWrapper<TemporaryActivityReportedDO> buildQueryList(TemporaryActivityWrapper tw) {
LambdaQueryWrapper<TemporaryActivityReportedDO> queryWrapper = new LambdaQueryWrapper<>(); LambdaQueryWrapper<TemporaryActivityReportedDO> queryWrapper = new LambdaQueryWrapper<>();
if (Objects.nonNull(tw.getTemporaryId())) { if (Objects.nonNull(tw.getTemporaryId())) {
......
...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName; ...@@ -7,6 +7,7 @@ import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable; import java.io.Serializable;
import java.util.Date; import java.util.Date;
import lombok.Data; import lombok.Data;
import org.springframework.data.annotation.Transient;
/** /**
* *
...@@ -129,6 +130,18 @@ public class TemporaryActivityClockDO implements Serializable { ...@@ -129,6 +130,18 @@ public class TemporaryActivityClockDO implements Serializable {
*/ */
private Date modifyTime; private Date modifyTime;
/**
* 所属战区-部门
*/
@TableField(exist = false)
String deptQcOrgName;
/**
* 此促销员的任务人姓名
*/
@TableField(exist = false)
String chargerName;
@TableField(exist = false) @TableField(exist = false)
private static final long serialVersionUID = 1L; private static final long serialVersionUID = 1L;
} }
\ No newline at end of file
...@@ -21,4 +21,26 @@ public class PromotionStoreWrapper { ...@@ -21,4 +21,26 @@ public class PromotionStoreWrapper {
private String area; private String area;
private String storeNameLike; private String storeNameLike;
private String storeName; private String storeName;
/**
* 1 - true:新增店铺
* 2 - false:查询勤策店铺
* 3 - null:忽略此条件
*/
private int qcIdIsBlankType;
/**
* qcIdIsBlankType 映射
*/
private Boolean qcIdIsBlank;
/**
* 所属战区id
*/
private String deptQcId;
/**
* 负责人-勤策ID
*/
private String chargerQcId;
} }
package com.wangxiaolu.promotion.domain.activity.wrapperQo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.experimental.Accessors;
import java.util.List;
/**
* @author : liqiulin
* @date : 2024-06-26 13
* @describe :
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
@Accessors(chain = true)
public class TemporaryMarketCellWrapper {
private Long activityId;
private List<Long> activityIds;
private Integer temporaryId;
}
...@@ -89,4 +89,8 @@ public class PageInfo<T> implements Serializable { ...@@ -89,4 +89,8 @@ public class PageInfo<T> implements Serializable {
this.totalRecord = (int) iPage.getTotal(); this.totalRecord = (int) iPage.getTotal();
this.totalPage = (int) iPage.getPages(); this.totalPage = (int) iPage.getPages();
} }
public int getSkipNum(){
return this.pageSize * (this.pageNum - 1);
}
} }
...@@ -126,4 +126,6 @@ public class TemporaryActivityReportedDto { ...@@ -126,4 +126,6 @@ public class TemporaryActivityReportedDto {
* 修改时间 * 修改时间
*/ */
private Date modifyTime; private Date modifyTime;
private List<TemporaryActivityMarketCellDto> marketCells;
} }
...@@ -95,6 +95,16 @@ public class TemporaryClockDto { ...@@ -95,6 +95,16 @@ public class TemporaryClockDto {
// 创建日期YYYY-MM-DD // 创建日期YYYY-MM-DD
private String createDate; private String createDate;
/**
* 所属战区-部门
*/
String deptQcOrgName;
/**
* 此促销员的任务人姓名
*/
String chargerName;
public TemporaryClockDto(Integer clockType, Long id, Integer temporaryId, String temporaryName, String clockProvince, String clockCity) { public TemporaryClockDto(Integer clockType, Long id, Integer temporaryId, String temporaryName, String clockProvince, String clockCity) {
if (!ClockType.TEMPORARY_CLOCK_IN.equals(clockType)) { if (!ClockType.TEMPORARY_CLOCK_IN.equals(clockType)) {
this.id = id; this.id = id;
......
package com.wangxiaolu.promotion.service.activity.employee;
import com.wangxiaolu.promotion.pojo.PageInfo;
/**
* @author : liqiulin
* @date : 2024-06-26 16
* @describe :
*/
public interface EmpPromotionStoreQueryService {
void findStorePage(PageInfo pageInfo);
}
package com.wangxiaolu.promotion.service.activity.employee.impl;
import com.alibaba.fastjson.JSONObject;
import com.wangxiaolu.promotion.domain.activity.dao.PromotionStoreDao;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.PromotionStoreWrapper;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.service.activity.employee.EmpPromotionStoreQueryService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author : liqiulin
* @date : 2024-06-26 16
* @describe :
*/
@Service
public class EmpPromotionStoreQueryServiceImpl implements EmpPromotionStoreQueryService {
@Autowired
PromotionStoreDao promotionStoreDao;
@Override
public void findStorePage(PageInfo pageInfo) {
PromotionStoreWrapper wrap = JSONObject.parseObject(JSONObject.toJSONString(pageInfo.getQueryParams()), PromotionStoreWrapper.class);
wrap = Objects.isNull(wrap) ? new PromotionStoreWrapper() : wrap;
int qcIdType = wrap.getQcIdIsBlankType();
wrap.setQcIdIsBlank(3 == qcIdType ? null : 1 == qcIdType);
promotionStoreDao.findPage(wrap,pageInfo);
}
}
package com.wangxiaolu.promotion.service.activity.employee.impl; package com.wangxiaolu.promotion.service.activity.employee.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityMarketCellDao;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityReportedDao; import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityReportedDao;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryActivityWrapper; import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryActivityWrapper;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryMarketCellWrapper;
import com.wangxiaolu.promotion.enums.activity.TemActApproveStatus; import com.wangxiaolu.promotion.enums.activity.TemActApproveStatus;
import com.wangxiaolu.promotion.pojo.PageInfo; import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityReportedDto;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.service.activity.employee.EmployeeQueryTemActivityService; import com.wangxiaolu.promotion.service.activity.employee.EmployeeQueryTemActivityService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Map;
import java.util.Objects; import java.util.Objects;
import java.util.stream.Collectors;
/** /**
* @author : liqiulin * @author : liqiulin
...@@ -23,6 +32,8 @@ public class EmployeeQueryTemActivityServiceImpl implements EmployeeQueryTemActi ...@@ -23,6 +32,8 @@ public class EmployeeQueryTemActivityServiceImpl implements EmployeeQueryTemActi
@Autowired @Autowired
TemporaryActivityReportedDao temporaryActivityReportedDao; TemporaryActivityReportedDao temporaryActivityReportedDao;
@Autowired
TemporaryActivityMarketCellDao temporaryActivityMarketCellDao;
@Override @Override
public void getEmployeeApproveActivityPage(String employeeQcId, PageInfo pageInfo) { public void getEmployeeApproveActivityPage(String employeeQcId, PageInfo pageInfo) {
...@@ -30,6 +41,25 @@ public class EmployeeQueryTemActivityServiceImpl implements EmployeeQueryTemActi ...@@ -30,6 +41,25 @@ public class EmployeeQueryTemActivityServiceImpl implements EmployeeQueryTemActi
tw = Objects.isNull(tw) ? new TemporaryActivityWrapper() : tw; tw = Objects.isNull(tw) ? new TemporaryActivityWrapper() : tw;
// tw.setApproverId(employeeQcId) // tw.setApproverId(employeeQcId)
tw.setNotApproveStatus(TemActApproveStatus.SUBMITTED.name()); tw.setNotApproveStatus(TemActApproveStatus.SUBMITTED.name());
temporaryActivityReportedDao.findListToEmployeePage(tw, pageInfo); temporaryActivityReportedDao.findPage(tw, pageInfo);
// 查询活动记录关联的售卖单元列表(一次性查出)
if (CollectionUtils.isEmpty(pageInfo.getRecords())) {
return;
}
List<TemporaryActivityReportedDto> records = pageInfo.getRecords();
List<Long> activityIds = records.stream().map(TemporaryActivityReportedDto::getId).collect(Collectors.toList());
TemporaryMarketCellWrapper mcw = new TemporaryMarketCellWrapper().setActivityIds(activityIds);
List<TemporaryActivityMarketCellDto> marketCellAll = temporaryActivityMarketCellDao.selectList(mcw);
if (CollectionUtils.isEmpty(marketCellAll)) {
return;
}
Map<Long, List<TemporaryActivityMarketCellDto>> marketCellGroup = marketCellAll.stream().collect(Collectors.groupingBy(TemporaryActivityMarketCellDto::getActivityReportedId));
records.stream().forEach( record -> {
record.setMarketCells(marketCellGroup.get(record.getId()));
});
} }
} }
...@@ -2,12 +2,15 @@ package com.wangxiaolu.promotion.service.activity.temporary.impl; ...@@ -2,12 +2,15 @@ package com.wangxiaolu.promotion.service.activity.temporary.impl;
import cn.hutool.core.date.DateUtil; import cn.hutool.core.date.DateUtil;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.fasterxml.uuid.Generators; import com.fasterxml.uuid.Generators;
import com.wangxiaolu.promotion.common.redis.RedisKeys; import com.wangxiaolu.promotion.common.redis.RedisKeys;
import com.wangxiaolu.promotion.common.redis.service.RedisCache; import com.wangxiaolu.promotion.common.redis.service.RedisCache;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityMarketCellDao; import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityMarketCellDao;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityPhotoDao; import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityPhotoDao;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityReportedDao; import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityReportedDao;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryActivityWrapper;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryMarketCellWrapper;
import com.wangxiaolu.promotion.enums.activity.ActivityPhotoType; import com.wangxiaolu.promotion.enums.activity.ActivityPhotoType;
import com.wangxiaolu.promotion.pojo.PageInfo; import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto; import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto;
...@@ -45,7 +48,10 @@ public class TemporaryActivityQueryServiceImpl implements TemporaryActivityQuery ...@@ -45,7 +48,10 @@ public class TemporaryActivityQueryServiceImpl implements TemporaryActivityQuery
*/ */
@Override @Override
public void findtemporaryIdActivityDataList(Integer temporaryId, PageInfo pageInfo) { public void findtemporaryIdActivityDataList(Integer temporaryId, PageInfo pageInfo) {
temporaryActivityReportedDao.findListByTemporaryId(temporaryId, pageInfo); TemporaryActivityWrapper taw = JSONObject.parseObject(JSONObject.toJSONString(pageInfo.getQueryParams()), TemporaryActivityWrapper.class);
taw = Objects.isNull(taw) ? new TemporaryActivityWrapper() : taw;
taw.setTemporaryId(temporaryId);
temporaryActivityReportedDao.findPage(taw, pageInfo);
} }
...@@ -71,13 +77,13 @@ public class TemporaryActivityQueryServiceImpl implements TemporaryActivityQuery ...@@ -71,13 +77,13 @@ public class TemporaryActivityQueryServiceImpl implements TemporaryActivityQuery
/** /**
* 将数据保存到redis中Generators * 将数据保存到redis中Generators
*/ */
String key = RedisKeys.TemporaryKeys.TEMPORARY_ACTIVITY_MARKET_CELL.getKey() + temporaryId + "_" + DateUtil.today();; String key = RedisKeys.TemporaryKeys.TEMPORARY_ACTIVITY_MARKET_CELL.getKey() + temporaryId + "_" + DateUtil.today();
return redisCache.getToJsonArray(key); return redisCache.getToJsonArray(key);
} }
@Override @Override
public List<TemporaryActivityMarketCellDto> findActivityMarketCellByDb(Long activityId) { public List<TemporaryActivityMarketCellDto> findActivityMarketCellByDb(Long activityId) {
List<TemporaryActivityMarketCellDto> dtos = temporaryActivityMarketCellDao.selectList(activityId); List<TemporaryActivityMarketCellDto> dtos = temporaryActivityMarketCellDao.selectList(new TemporaryMarketCellWrapper().setActivityId(activityId));
return dtos; return dtos;
} }
......
...@@ -31,6 +31,8 @@ ...@@ -31,6 +31,8 @@
modify_time modify_time
</sql> </sql>
<!-- where tc.id &lt;= (select max(id)
from temporary_activity_clock)-->
<select id="employeePageFirsd" resultMap="BaseResultMap"> <select id="employeePageFirsd" resultMap="BaseResultMap">
select tc.id, select tc.id,
tc.temporary_name, tc.temporary_name,
...@@ -42,11 +44,12 @@ ...@@ -42,11 +44,12 @@
tc.clock_out_time, tc.clock_out_time,
tc.clock_province, tc.clock_province,
tc.clock_city, tc.clock_city,
tc.create_date tc.create_date,
ti.dept_qc_org_name,
ti.charger_name
from temporary_info ti from temporary_info ti
inner join temporary_activity_clock tc on ti.id = tc.temporary_id inner join temporary_activity_clock tc on ti.id = tc.temporary_id
where tc.id &lt;= (select max(id)
from temporary_activity_clock)
order by id desc order by id desc
limit #{skipNum}, #{pageSize}; limit #{skipNum}, #{pageSize};
</select> </select>
...@@ -62,7 +65,9 @@ ...@@ -62,7 +65,9 @@
tc.clock_out_time, tc.clock_out_time,
tc.clock_province, tc.clock_province,
tc.clock_city, tc.clock_city,
tc.create_date tc.create_date,
ti.dept_qc_org_name,
ti.charger_name
from temporary_info ti from temporary_info ti
inner join temporary_activity_clock tc on ti.id = tc.temporary_id inner join temporary_activity_clock tc on ti.id = tc.temporary_id
where tc.id &lt; #{maxId} where tc.id &lt; #{maxId}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论