提交 4dd7d9c1 authored 作者: 李秋林's avatar 李秋林

1. 促销员提交记录改为自动保存;下班打卡可以直接手动提交审核

上级 73f6e399
......@@ -6,7 +6,7 @@ mvn package -DskipTests
docker stop promotion-service
docker rmi promotion-service
docker rm promotion-service
docker rmi
......
......@@ -48,6 +48,9 @@ public class TemporaryActivityCoreController {
@Transactional(rollbackFor = Exception.class)
@PostMapping("/today/reported")
public R todayActivityDataReported(@RequestHeader("Authorization") String authorization, @RequestBody TemporaryActivityDataVo activityVo) {
if (Objects.isNull(activityVo.getTemporaryId())){
throw new ParamException(RCode.LOGIN_PARAM_ERROR);
}
TemporaryActivityReportedDto temActDto = new TemporaryActivityReportedDto();
BeanUtils.copyProperties(activityVo, temActDto);
temActDto.setId(activityVo.getActivityReportedId());
......
package com.wangxiaolu.promotion.controller.activity.temporary;
import com.wangxiaolu.promotion.exception.DataException;
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.pojo.activity.temporary.vo.TemporaryActivityMarketCellVo;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.result.basedata.RCode;
import com.wangxiaolu.promotion.service.activity.temporary.TemporaryActivityQueryService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.CollectionUtils;
import org.springframework.web.bind.annotation.*;
import javax.validation.constraints.NotNull;
import java.util.List;
import java.util.Objects;
/**
......@@ -30,8 +35,8 @@ public class TemporaryActivityQueryController {
*
* @return 所有任务(分页查询)
*/
@PostMapping("/all/{id}")
public R findtemporaryIdActivityDataList(@PathVariable("id") @NotNull Integer temporaryId, @RequestBody PageInfo pageInfo) {
@PostMapping("/all/{temporary_id}")
public R findtemporaryIdActivityDataList(@PathVariable("temporary_id") @NotNull Integer temporaryId, @RequestBody PageInfo pageInfo) {
temporaryActivityQueryService.findtemporaryIdActivityDataList(temporaryId, pageInfo);
return R.success(pageInfo);
}
......@@ -39,8 +44,8 @@ public class TemporaryActivityQueryController {
/**
* 根据促销员id查询今日任务
*/
@GetMapping("/today/{id}")
public R findTemporaryTodayActivityData(@PathVariable("id") @NotNull Integer temporaryId) {
@GetMapping("/today/{temporary_id}")
public R findTemporaryTodayActivityData(@PathVariable("temporary_id") @NotNull Integer temporaryId) {
TemporaryActivityReportedDto dto = temporaryActivityQueryService.findtemporaryIdTodayActivityData(temporaryId);
return R.success(dto);
}
......@@ -74,4 +79,31 @@ public class TemporaryActivityQueryController {
}
return R.success(temporaryActivityQueryService.findActivityMarketCellByDb(activityId));
}
/**
* 查询销售数据是否满足提交审批的条件
* @return
*/
@GetMapping("/today/approved_verify/{id}")
public R findActivityApprovedVerify(@PathVariable("id") Long activityId){
TemporaryActivityReportedDto activityReportedDto = temporaryActivityQueryService.findTemporaryActivityById(activityId);
if (CollectionUtils.isEmpty(activityReportedDto.getTgscPhotoUrls()) || activityReportedDto.getTgscPhotoUrls().size() < 4){
throw new DataException(RCode.NOT_TGSH_PHOTO_ERROR);
}else if (CollectionUtils.isEmpty(activityReportedDto.getTghdPhotoUrls()) || activityReportedDto.getTghdPhotoUrls().size() < 4){
throw new DataException(RCode.NOT_TGHD_PHOTO_ERROR);
}else if (CollectionUtils.isEmpty(activityReportedDto.getTgcjPhotoUrls()) || activityReportedDto.getTgcjPhotoUrls().size() < 4){
throw new DataException(RCode.NOT_TGCJ_PHOTO_ERROR);
}else if (CollectionUtils.isEmpty(activityReportedDto.getPsvPhotoUrls())){
throw new DataException(RCode.NOT_POS_PHOTO_ERROR);
}
List<TemporaryActivityMarketCellDto> marketCells = temporaryActivityQueryService.findActivityMarketCellByDb(activityId);
if (CollectionUtils.isEmpty(marketCells)){
throw new DataException(RCode.NOT_MARKET_CELL_ERROR);
}
return R.success();
}
}
......@@ -6,6 +6,7 @@ import com.wangxiaolu.promotion.common.redis.service.RedisCache;
import com.wangxiaolu.promotion.common.util.DataUtils;
import com.wangxiaolu.promotion.exception.ParamException;
import com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.pojo.user.vo.WxTemporaryLoginVo;
import com.wangxiaolu.promotion.result.basedata.R;
import com.wangxiaolu.promotion.result.basedata.RCode;
......@@ -43,8 +44,8 @@ public class WeChatUserQueryController {
if (!DataUtils.phonePattern(wxTemporaryLoginVo.getPhone())) {
throw new ParamException(RCode.PHONE_PARAM_ERROR, null);
}
String s = weChatUserQueryService.loginTemporaryByOpenIdAndPhone(wxTemporaryLoginVo.getOpenId(), wxTemporaryLoginVo.getPhone());
return R.success(s);
LoginVo loginVo = weChatUserQueryService.loginTemporaryByOpenIdAndPhone(wxTemporaryLoginVo.getOpenId(), wxTemporaryLoginVo.getPhone());
return R.success(loginVo);
}
......@@ -59,13 +60,6 @@ public class WeChatUserQueryController {
throw new ParamException(RCode.NOT_LOGIN_ERROR, null);
}
return R.success(userJson);
// phontAndOpenIdVerify(wxTemporaryLoginVo);
// WxTemporaryInfoDto temporaryInfoDto = weChatUserQueryService.getTemporaryInfoByOpenIdAndPhone(wxTemporaryLoginVo.getOpenId(), wxTemporaryLoginVo.getPhone());
// if (Objects.isNull(temporaryInfoDto)) {
// throw new ParamException(RCode.LOGIN_PARAM_ERROR, null);
// }
// return R.success(temporaryInfoDto);
}
private void phontAndOpenIdVerify(WxTemporaryLoginVo wxTemporaryLoginVo) {
......
......@@ -143,4 +143,8 @@ public class TemporaryActivityReportedDto {
* 任务记录关联打卡id
*/
private TemporaryClockDto clockDto;
public void approvedDataVerify(){
}
}
package com.wangxiaolu.promotion.pojo.user.vo;
import lombok.AllArgsConstructor;
import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
/**
* @author : liqiulin
* @date : 2024-08-01 11
* @describe : 登录返回对象
*/
@Data
@AllArgsConstructor
@NoArgsConstructor
public class LoginVo<T> implements Serializable {
private static final long serialVersionUID = 2L;
private T user;
private String token;
}
package com.wangxiaolu.promotion.service.wechat;
import com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
/**
* @author : liqiulin
......@@ -9,7 +10,7 @@ import com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto;
*/
public interface WeChatUserQueryService {
String loginTemporaryByOpenIdAndPhone(String openId, String phone);
LoginVo loginTemporaryByOpenIdAndPhone(String openId, String phone);
WxTemporaryInfoDto getTemporaryInfoByOpenIdAndPhone(String openId,String phone);
}
......@@ -4,7 +4,10 @@ import com.alibaba.fastjson.JSONObject;
import com.wangxiaolu.promotion.common.redis.RedisKeys;
import com.wangxiaolu.promotion.common.redis.service.RedisCache;
import com.wangxiaolu.promotion.domain.user.dao.TemporaryInfoDao;
import com.wangxiaolu.promotion.exception.DataException;
import com.wangxiaolu.promotion.pojo.user.dto.WxTemporaryInfoDto;
import com.wangxiaolu.promotion.pojo.user.vo.LoginVo;
import com.wangxiaolu.promotion.result.basedata.RCode;
import com.wangxiaolu.promotion.service.wechat.WeChatUserQueryService;
import com.wangxiaolu.promotion.common.util.JwtUtils;
import org.slf4j.Logger;
......@@ -36,20 +39,17 @@ public class WeChatUserQueryServiceImpl implements WeChatUserQueryService {
* 根据openId、手机号登录
*/
@Override
public String loginTemporaryByOpenIdAndPhone(String openId, String phone) {
public LoginVo loginTemporaryByOpenIdAndPhone(String openId, String phone) {
WxTemporaryInfoDto temDto = temporaryInfoDao.getUnimportantData(openId, phone);
boolean exist = !Objects.isNull(temDto);
String temporaryToken = "";
if (exist) {
log.info("微信-促销员{}登录成功(openId、手机号),openId:{},phone:{}", temDto.getName(), openId, phone);
// 生成一个token
temporaryToken = jwtUtils.getTemporaryToken(openId, phone);
redisCache.addToJsonToMinute(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey()+temporaryToken,temDto,360);
} else {
log.info("微信-促销员登录失败,当前信息未注册(openId、手机号),openId:{},phone:{}", openId, phone);
if (Objects.isNull(temDto)) {
throw new DataException(RCode.LOGIN_USER_IS_NULL_ERROR);
}
return temporaryToken;
String temporaryToken = jwtUtils.getTemporaryToken(openId, phone);
redisCache.addToJsonToMinute(RedisKeys.UserKeys.TEMPORARY_TOKEN.getKey() + temporaryToken, temDto, 360);
LoginVo loginVo = new LoginVo(temDto, temporaryToken);
return loginVo;
}
@Override
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论