提交 6276b643 authored 作者: 000516's avatar 000516 提交者: Coding

在勤策APP - CP计划中,进行稽核任务创建;

Merge Request: 在勤策APP - CP计划中,进行稽核任务创建; Created By: @李秋林 Accepted By: @李秋林 URL: https://g-pkkp8204.coding.net/p/promotion/d/promotion-service/git/merge/268?initial=true
package com.wangxiaolu.promotion.controller.activity.examine;
import com.alibaba.fastjson.JSONObject;
import com.wangxiaolu.promotion.enums.plan.PlanStatus;
import com.wangxiaolu.promotion.pojo.activity.examine.dto.ActivityExamineDto;
import com.wangxiaolu.promotion.pojo.activity.examine.vo.ExaPlanVo;
import com.wangxiaolu.promotion.result.basedata.R;
......@@ -29,22 +31,23 @@ public class ExaPlanCoreController {
public R saveOne(@RequestBody ExaPlanVo exaPlanVo) {
ActivityExamineDto examineDto = new ActivityExamineDto();
BeanUtils.copyProperties(exaPlanVo, examineDto);
ActivityExamineDto examineN = null;
if (Objects.isNull(exaPlanVo.getId())) {
examineDto.setCreateBy(exaPlanVo.getOperName());
saveOne(examineDto);
examineDto.setCreateBy(exaPlanVo.getEmployeeName());
examineN = saveOne(examineDto);
} else {
examineDto.setModifyBy(exaPlanVo.getOperName());
updateById(examineDto);
examineDto.setModifyBy(exaPlanVo.getEmployeeName());
examineN = updateById(examineDto);
}
return R.success();
return R.success(examineN);
}
private void saveOne(ActivityExamineDto examineDto) {
exaPlanCoreService.save(examineDto);
private ActivityExamineDto saveOne(ActivityExamineDto examineDto) {
return exaPlanCoreService.save(examineDto);
}
private void updateById(ActivityExamineDto examineDto) {
exaPlanCoreService.updateById(examineDto);
private ActivityExamineDto updateById(ActivityExamineDto examineDto) {
return exaPlanCoreService.updateById(examineDto);
}
}
......
......@@ -14,9 +14,9 @@ public interface ActivityExamineDao {
ActivityExamineDto selectByPlanId(Long planId);
void save(ActivityExamineDto examineDto);
ActivityExamineDto save(ActivityExamineDto examineDto);
void updateById(ActivityExamineDto examineDto);
ActivityExamineDto updateById(ActivityExamineDto examineDto);
void page(PageInfo pageInfo, ExamineWrapper wq);
}
package com.wangxiaolu.promotion.domain.examine.dao.impl;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson2.JSONArray;
import com.alibaba.fastjson2.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.wangxiaolu.promotion.common.util.BeanUtils;
......@@ -31,36 +32,41 @@ public class ActivityExamineDaoImpl implements ActivityExamineDao {
@Override
public ActivityExamineDto selectById(Long id) {
ActivityExamineDO activityExamineDO = activityExamineMapper.selectById(id);
return BeanUtils.transitionDto(activityExamineDO, ActivityExamineDto.class);
return returnDo(activityExamineDO);
}
@Override
public ActivityExamineDto selectByPlanId(Long planId) {
ActivityExamineDO examineDO = activityExamineMapper.selectByPlanId(planId);
return BeanUtils.transitionDto(examineDO, ActivityExamineDto.class);
return returnDo(examineDO);
}
@Override
public void save(ActivityExamineDto examineDto) {
public ActivityExamineDto save(ActivityExamineDto examineDto) {
try {
ActivityExamineDO examineDO = new ActivityExamineDO();
BeanUtils.copyProperties(examineDto, examineDO);
arrayToStringByDo(examineDO, examineDto);
activityExamineMapper.insert(examineDO);
ActivityExamineDO examineDO1 = activityExamineMapper.selectById(examineDO.getId());
return returnDo(examineDO1);
} catch (Exception e) {
String eMsg = e.getCause().getMessage();
if (eMsg.contains("for key 'plan_id_unique'")) {
throw new ParamException(RCode.DATA_HAVE_ERROR);
}
return null;
}
}
@Override
public void updateById(ActivityExamineDto examineDto) {
public ActivityExamineDto updateById(ActivityExamineDto examineDto) {
ActivityExamineDO examineDO = new ActivityExamineDO();
BeanUtils.copyProperties(examineDto,examineDO);
arrayToStringByDo(examineDO,examineDto);
activityExamineMapper.updateById(examineDO);
ActivityExamineDO examineDO1 = activityExamineMapper.selectById(examineDO.getId());
return returnDo(examineDO1);
}
@Override
......@@ -84,11 +90,19 @@ public class ActivityExamineDaoImpl implements ActivityExamineDao {
}
private void arrayToStringByDo(ActivityExamineDO examineDO,ActivityExamineDto examineDto){
examineDO.setReportedIds(JSONObject.toJSONString(examineDto.getReportedIds()));
examineDO.setClockIds(JSONObject.toJSONString(examineDto.getClockIds()));
examineDO.setTemWorkPhotos(JSONObject.toJSONString(examineDto.getTemWorkPhotos()));
examineDO.setPosPhotos(JSONObject.toJSONString(examineDto.getPosPhotos()));
private ActivityExamineDto returnDo(ActivityExamineDO activityExamineDO) {
ActivityExamineDto dto = BeanUtils.transitionDto(activityExamineDO, ActivityExamineDto.class);
if (Objects.isNull(dto)){
return null;
}
dto.setTemWorkPhotos(Objects.isNull(activityExamineDO.getTemWorkPhotos()) ? null : JSONArray.parseArray(activityExamineDO.getTemWorkPhotos()));
dto.setPosPhotos(Objects.isNull(activityExamineDO.getPosPhotos()) ? null : JSONArray.parseArray(activityExamineDO.getPosPhotos()));
return dto;
}
private void arrayToStringByDo(ActivityExamineDO examineDO, ActivityExamineDto examineDto) {
examineDO.setTemWorkPhotos(Objects.isNull(examineDto.getTemWorkPhotos()) ? null : JSONObject.toJSONString(examineDto.getTemWorkPhotos()));
examineDO.setPosPhotos(Objects.isNull(examineDto.getPosPhotos()) ? null : JSONObject.toJSONString(examineDto.getPosPhotos()));
}
}
......@@ -51,17 +51,6 @@ public class ActivityExamineDO implements Serializable {
* 计划状态:执行/未执行
*/
private String planStatus;
/**
* 上报ID
*/
private String reportedIds;
/**
* 打卡ID
*/
private String clockIds;
/**
* 所属战区名称
*/
......
......@@ -20,6 +20,15 @@ public enum PlanStatus {
this.desc = desc;
}
public static String getDesc(Integer code) {
for (PlanStatus planStatus : PlanStatus.values()) {
if (planStatus.getCode().equals(code)) {
return planStatus.desc;
}
}
return null;
}
public Integer getCode() {
return code;
}
......
......@@ -49,16 +49,6 @@ public class ActivityExamineDto {
*/
private String planStatus;
/**
* 上报ID
*/
private String reportedIds;
/**
* 打卡ID
*/
private String clockIds;
/**
* 所属战区名称
*/
......@@ -142,7 +132,7 @@ public class ActivityExamineDto {
/**
* 工作取证照片
*/
private String temWorkPhotos;
private JSONArray temWorkPhotos;
/**
* 特陈照
......@@ -162,7 +152,7 @@ public class ActivityExamineDto {
/**
* pos照片
*/
private String posPhotos;
private JSONArray posPhotos;
/**
*
......
......@@ -50,52 +50,52 @@ public class ExaPlanVo {
/**
* 上报ID
*/
private JSONArray reportedIds;
// private JSONArray reportedIds;
/**
* 打卡ID
*/
private JSONArray clockIds;
// private JSONArray clockIds;
/**
* 所属战区名称
*/
private String deptQcOrgName;
// private String deptQcOrgName;
/**
* 负责人姓名
*/
private String manageName;
// private String manageName;
/**
* 执行城市
*/
private String city;
// private String city;
/**
* 计划日期
*/
private Date planDate;
// private Date planDate;
/**
* 系统名称
*/
private String lineName;
// private String lineName;
/**
* 门店名称
*/
private String storeName;
// private String storeName;
/**
* 经销商名称
*/
private String dealerName;
// private String dealerName;
/**
* 活动模式
*/
private String pattern;
// private String pattern;
/**
* 门头照
......@@ -159,5 +159,5 @@ public class ExaPlanVo {
/**
* 操作人
*/
private String operName;
// private String operName;
}
......@@ -8,7 +8,7 @@ import com.wangxiaolu.promotion.pojo.activity.examine.dto.ActivityExamineDto;
* @describe :
*/
public interface ExaPlanCoreService {
void save(ActivityExamineDto examineDto);
ActivityExamineDto save(ActivityExamineDto examineDto);
void updateById(ActivityExamineDto examineDto);
ActivityExamineDto updateById(ActivityExamineDto examineDto);
}
package com.wangxiaolu.promotion.service.activity.examine.impl;
import com.wangxiaolu.promotion.domain.activityplanv2.dao.ActivityPlanInfoDao;
import com.wangxiaolu.promotion.domain.examine.dao.ActivityExamineDao;
import com.wangxiaolu.promotion.exception.ParamException;
import com.wangxiaolu.promotion.pojo.activity.examine.dto.ActivityExamineDto;
import com.wangxiaolu.promotion.pojo.activity.planv2.dto.ActivityPlanInfoDto;
import com.wangxiaolu.promotion.result.basedata.RCode;
import com.wangxiaolu.promotion.service.activity.examine.ExaPlanCoreService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Objects;
/**
* @author : liqiulin
* @date : 2025-04-02 15
......@@ -16,15 +22,29 @@ public class ExaPlanCoreServiceImpl implements ExaPlanCoreService {
@Autowired
private ActivityExamineDao activityExamineDao;
@Autowired
private ActivityPlanInfoDao activityPlanInfoDao;
@Override
public void save(ActivityExamineDto examineDto) {
activityExamineDao.save(examineDto);
public ActivityExamineDto save(ActivityExamineDto examineDto) {
// 根据促销计划id得到详情并补充
ActivityPlanInfoDto planInfoDto = activityPlanInfoDao.selectById(examineDto.getPlanId());
if (Objects.isNull(planInfoDto)) {
throw new ParamException(RCode.ACTIVITY_PLAN_IS_NULL);
}
examineDto.setDeptQcOrgName(planInfoDto.getOrgName());
examineDto.setManageName(planInfoDto.getEmployeeName());
examineDto.setCity(planInfoDto.getCity());
examineDto.setPlanDate(planInfoDto.getDate());
examineDto.setLineName(planInfoDto.getLineName());
examineDto.setStoreName(planInfoDto.getStoreName());
examineDto.setDealerName(planInfoDto.getDealerName());
examineDto.setPattern(planInfoDto.getPattern());
return activityExamineDao.save(examineDto);
}
@Override
public void updateById(ActivityExamineDto examineDto) {
activityExamineDao.updateById(examineDto);
public ActivityExamineDto updateById(ActivityExamineDto examineDto) {
return activityExamineDao.updateById(examineDto);
}
}
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论