提交 52f4601b authored 作者: 吕本才's avatar 吕本才

feat(promotion):新增随机任务打卡照片上传校验,调整模板任务名称

上级 bf10ba45
package com.wangxiaolu.promotion.controller.activity.temporary;
import com.wangxiaolu.promotion.common.enums.FlagType;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryClockWrapper;
import com.wangxiaolu.promotion.enums.activity.TemActApproveStatus;
import com.wangxiaolu.promotion.exception.DataException;
import com.wangxiaolu.promotion.exception.ParamException;
......@@ -131,13 +133,18 @@ public class TemporaryActivityCoreController {
return R.success();
}
if (CollectionUtils.isEmpty(activityReportedDto.getTgscPhotoInfos()) || activityReportedDto.getTgscPhotoInfos().size() < 3){
if (CollectionUtils.isEmpty(activityReportedDto.getTgscPhotoInfos()) || activityReportedDto.getTgscPhotoInfos().size() < 2){
throw new DataException(RCode.NOT_TGSH_PHOTO_ERROR);
}else if (CollectionUtils.isEmpty(activityReportedDto.getTghdPhotoInfos()) || activityReportedDto.getTghdPhotoInfos().size() < 3){
}else if (CollectionUtils.isEmpty(activityReportedDto.getTghdPhotoInfos()) || activityReportedDto.getTghdPhotoInfos().size() < 2){
throw new DataException(RCode.NOT_TGHD_PHOTO_ERROR);
}else if (CollectionUtils.isEmpty(activityReportedDto.getTgcjPhotoInfos()) || activityReportedDto.getTgcjPhotoInfos().size() < 3){
}else if (CollectionUtils.isEmpty(activityReportedDto.getTgcjPhotoInfos()) || activityReportedDto.getTgcjPhotoInfos().size() < 2){
throw new DataException(RCode.NOT_TGCJ_PHOTO_ERROR);
}
if(CollectionUtils.isEmpty(activityReportedDto.getRandTaskClockPhotoUrls())|| activityReportedDto.getRandTaskClockPhotoUrls().size() < 1){
throw new DataException(RCode.NOT_RAND_PHOTO_ERROR);
}
tempActivityCoreService.activityReportedSubmit(id);
return R.success();
}
......
......@@ -43,7 +43,7 @@ public interface TemporaryActivityPhotoDao {
void saveClockTaskPhoto(TemporaryActivityPhotoDto dto, List<String> clockPhtos);
List<TemporaryActivityPhotoDto> selectPhotos(TemporaryPhotoWrapper clockId);
List<TemporaryActivityPhotoDto> selectPhotos(TemporaryPhotoWrapper temporaryPhotoWrapper);
void deleteListByClockId(Long clockId, Integer taskType);
}
......@@ -147,12 +147,13 @@ public class TemporaryActivityPhotoDaoImpl implements TemporaryActivityPhotoDao
}
@Override
public List<TemporaryActivityPhotoDto> selectPhotos(TemporaryPhotoWrapper wrapperDto) {
public List<TemporaryActivityPhotoDto> selectPhotos(TemporaryPhotoWrapper temporaryPhotoWrapper) {
// 根据关联的上班打卡任务,查询图片信息
LambdaQueryWrapper<TemporaryActivityPhotoDO> wrapper = new LambdaQueryWrapper<TemporaryActivityPhotoDO>()
.eq(ObjectUtil.isNotEmpty(wrapperDto.getClockId()), TemporaryActivityPhotoDO::getClockId, wrapperDto.getClockId())
.eq(ObjectUtil.isNotEmpty(wrapperDto.getReportedId()), TemporaryActivityPhotoDO::getReportedId, wrapperDto.getReportedId())
.eq(ObjectUtil.isNotEmpty(wrapperDto.getTemporaryId()), TemporaryActivityPhotoDO::getTemporaryId, wrapperDto.getTemporaryId())
.eq(ObjectUtil.isNotEmpty(temporaryPhotoWrapper.getClockId()), TemporaryActivityPhotoDO::getClockId, temporaryPhotoWrapper.getClockId())
.eq(ObjectUtil.isNotEmpty(temporaryPhotoWrapper.getReportedId()), TemporaryActivityPhotoDO::getReportedId, temporaryPhotoWrapper.getReportedId())
.eq(ObjectUtil.isNotEmpty(temporaryPhotoWrapper.getTemporaryId()), TemporaryActivityPhotoDO::getTemporaryId, temporaryPhotoWrapper.getTemporaryId())
.eq(ObjectUtil.isNotEmpty(temporaryPhotoWrapper.getType()), TemporaryActivityPhotoDO::getType, temporaryPhotoWrapper.getType())
.eq(TemporaryActivityPhotoDO::getIsDelete, StatusType.VALID.getType());
List<TemporaryActivityPhotoDO> dos = temporaryActivityPhotoMapper.selectList(wrapper);
List<TemporaryActivityPhotoDto> photoDtos = transitionDtos(dos);
......
......@@ -149,6 +149,10 @@ public class TemporaryActivityReportedDto {
private List<TemporaryActivityPhotoDto> psvPhotoInfos;
private List<String> psvChangePhotoUrls;
private List<TemporaryActivityPhotoDto> randTaskClockPhotoUrls;
/**
* 创建时间
*/
......
......@@ -9,14 +9,19 @@ import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityMarketCellD
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityPhotoDao;
import com.wangxiaolu.promotion.domain.activity.dao.TemporaryActivityReportedDao;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryActivityWrapper;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryClockWrapper;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryMarketCellWrapper;
import com.wangxiaolu.promotion.domain.activity.wrapperQo.TemporaryPhotoWrapper;
import com.wangxiaolu.promotion.enums.activity.ActivityPhotoType;
import com.wangxiaolu.promotion.pojo.PageInfo;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityMarketCellDto;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityPhotoDto;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryActivityReportedDto;
import com.wangxiaolu.promotion.pojo.activity.temporary.dto.TemporaryClockDto;
import com.wangxiaolu.promotion.service.activity.temporary.TemporaryActivityClockQueryService;
import com.wangxiaolu.promotion.service.activity.temporary.TemporaryActivityQueryService;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.ss.formula.functions.T;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
......@@ -42,7 +47,8 @@ public class TemporaryActivityQueryServiceImpl implements TemporaryActivityQuery
TemporaryActivityPhotoDao temporaryActivityPhotoDao;
@Autowired
TemporaryActivityMarketCellDao temporaryActivityMarketCellDao;
@Autowired
TemporaryActivityClockQueryService temporaryActivityClockQueryService;
/**
* 根据促销员id查询所有任务
*/
......@@ -69,6 +75,18 @@ public class TemporaryActivityQueryServiceImpl implements TemporaryActivityQuery
public TemporaryActivityReportedDto findTemporaryActivityById(Long activityId) {
TemporaryActivityReportedDto dto = temporaryActivityReportedDao.findOneById(activityId);
findActivityReportedPhotoInfo(dto);
// 验证随机任务照片数量 上周提到每天下午5:30~7:30的随机拍照一次的任务(客流量大的时候要保证促销员在售卖位置)
TemporaryClockWrapper wer = new TemporaryClockWrapper();
wer.setTemporaryId(dto.getTemporaryId())
.setReportedId(activityId);
TemporaryClockDto clockInfo = temporaryActivityClockQueryService.findClockInfo(wer);
// 设置 随机任务照片
TemporaryPhotoWrapper wrapper = new TemporaryPhotoWrapper();
wrapper.setTemporaryId(dto.getTemporaryId())
.setClockId(clockInfo.getId())
.setType(ActivityPhotoType.RANDOM_TASK.getType() );
List<TemporaryActivityPhotoDto> temporaryActivityPhotoDtos = temporaryActivityPhotoDao.selectPhotos(wrapper);
dto.setRandTaskClockPhotoUrls(temporaryActivityPhotoDtos);
return dto;
}
......
......@@ -99,7 +99,7 @@ public class ActivityStautsHandler {
// 模板中的字段2 截止时间
data.put("time3", DateUtil.format(requiredlockTime,"yyyy-MM-dd HH:mm"));
// 模板中的字段3 任务名称
data.put("thing1", "销售金额需完成任务");
data.put("thing1", "请拍摄清晰的任务照片");
// 模板中的字段4 温馨提示
data.put("thing4", "请在15分钟内完成任务");
......@@ -126,7 +126,6 @@ public class ActivityStautsHandler {
// 修改状态 待开始 -> 进行中
taskClockDO.setSubscribeStatus(ActivityClockTaskStatus.STARTING.getType());
taskClockService.updateById(taskClockDO);
}
}
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论