Commit 9389bbe8 authored by W_Y's avatar W_Y

添加签字图片地址&确认车型审查问卷接口

parent ec1cdab3
......@@ -197,4 +197,7 @@ public class CarReviewTask implements Serializable {
@ApiModelProperty("车型问卷审查结果")
private String reviewResult;
@ApiModelProperty("问卷签名图片地址")
private String reviewImagesUrl;
}
......@@ -150,4 +150,7 @@ public class SystemReviewTask {
@ApiModelProperty("提交人姓名")
private String submitByName;
@ApiModelProperty("签名图片地址")
private String imagesUrl;
}
......@@ -41,6 +41,12 @@ public interface CarReviewTaskService extends IService<CarReviewTask> {
*/
void startReviewTask(CarReviewTaskStartRequest request);
/**
* 确认一个车辆审查任务中的问卷任务
* @param request
*/
void confirmReviewTask(CarReviewTaskConfirmRequest request);
/**
* 提交一个车辆审查任务中的问卷任务
* @param request
......
......@@ -9,5 +9,7 @@ public interface StrategyCarReviewTask {
void doStartReview(CarReviewTask carReviewTask);
void doConfirmReview(CarReviewTask carReviewTask);
void doSubmitReview(CarReviewTask carReviewTask);
}
......@@ -12,6 +12,7 @@ import com.ruoyi.mapper.CarReviewTaskMapper;
import com.ruoyi.service.TaskUserRelationService;
import com.ruoyi.service.StandardService;
import com.ruoyi.system.service.ISysUserService;
import com.ruoyi.web.request.CarReviewTaskConfirmRequest;
import com.ruoyi.web.request.CarReviewTaskCreateRequest;
import com.ruoyi.web.request.CarReviewTaskStartRequest;
import com.ruoyi.web.request.CarReviewTaskSubmitRequest;
......@@ -125,6 +126,13 @@ public class CarReviewTaskServiceImpl extends ServiceImpl<CarReviewTaskMapper, C
strategyCarReviewTaskContext.getResource(carReviewTask.getReviewStatus()).doStartReview(carReviewTask);
}
@Override
public void confirmReviewTask(CarReviewTaskConfirmRequest request) {
CarReviewTask carReviewTask = carReviewTaskService.getById(request.getTaskId());
strategyCarReviewTaskContext.getResource(carReviewTask.getReviewStatus()).doConfirmReview(carReviewTask);
}
@Override
public void submitReviewTask(CarReviewTaskSubmitRequest request) {
......
......@@ -38,6 +38,11 @@ public class StrategyCarReviewTaskFinish implements StrategyCarReviewTask, Initi
throw new ServiceException("不能开始一个结束的任务", HttpStatus.ERROR);
}
@Override
public void doConfirmReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能确认一个结束的任务", HttpStatus.ERROR);
}
@Override
public void doSubmitReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能提交一个结束的任务", HttpStatus.ERROR);
......
......@@ -61,6 +61,11 @@ public class StrategyCarReviewTaskNew implements StrategyCarReviewTask, Initiali
carReviewTaskMapper.updateById(carReviewTask);
}
@Override
public void doConfirmReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能确认一个未开始的任务", HttpStatus.ERROR);
}
@Override
public void doSubmitReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能提交一个未开始的任务", HttpStatus.ERROR);
......
......@@ -33,6 +33,11 @@ public class StrategyCarReviewTaskNone implements StrategyCarReviewTask, Initial
throw new ServiceException("不能开始一个不存在的任务", HttpStatus.ERROR);
}
@Override
public void doConfirmReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能确认一个不存在的任务", HttpStatus.ERROR);
}
@Override
public void doSubmitReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能提交一个不存在的任务", HttpStatus.ERROR);
......
......@@ -89,8 +89,7 @@ public class StrategyCarReviewTaskPending implements StrategyCarReviewTask, Init
}
@Override
public void doSubmitReview(CarReviewTask carReviewTask) {
public void doConfirmReview(CarReviewTask carReviewTask) {
List<ReviewDetails> detailsList = reviewDetailsMapper.findNoResult(carReviewTask.getId());
if (detailsList != null) {
......@@ -106,15 +105,8 @@ public class StrategyCarReviewTaskPending implements StrategyCarReviewTask, Init
setDetailsResult(standardTree, results);
carReviewTask.setStandard(standardTree);
// 4. 填充review_submit_time
carReviewTask.setReviewSubmitTime(new Date());
// 5. 修改任务状态为 FINISH
carReviewTask.setReviewStatus(CarReviewTask.REVIEW_STATUS_FINISH);
// 6. 填写当前用户id
// 获取当前登陆人
SysUser loginUser = SecurityUtils.getLoginUser().getUser();
carReviewTask.setReviewSubmitId(loginUser.getUserId());
carReviewTask.setReviewSubmitName(loginUser.getNickName());
// 4. 修改任务状态为 SIGNED 待签字
carReviewTask.setReviewStatus(CarReviewTask.REVIEW_STATUS_SIGNED);
// 7. 设置问卷结果
if (reviewDetailsResultMapper.findNotPass(carReviewTask.getId()) > 0) {
......@@ -124,6 +116,12 @@ public class StrategyCarReviewTaskPending implements StrategyCarReviewTask, Init
}
carReviewTaskMapper.updateById(carReviewTask);
}
}
@Override
public void doSubmitReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能提交一个未确认的任务", HttpStatus.ERROR);
}
......
package com.ruoyi.service.impl;
import com.ruoyi.common.constant.HttpStatus;
import com.ruoyi.common.core.domain.entity.SysUser;
import com.ruoyi.common.exception.ServiceException;
import com.ruoyi.common.utils.SecurityUtils;
import com.ruoyi.domain.*;
import com.ruoyi.mapper.CarReviewTaskMapper;
import com.ruoyi.mapper.ReviewDetailsMapper;
import com.ruoyi.mapper.ReviewDetailsResultMapper;
import com.ruoyi.service.ReviewDetailsResultService;
import com.ruoyi.service.ReviewSceneChangeTaskService;
import com.ruoyi.service.ReviewStandardService;
import com.ruoyi.service.StrategyCarReviewTask;
import com.ruoyi.web.response.CarReviewTaskViewResponse;
import org.springframework.beans.factory.InitializingBean;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.ApplicationContext;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.Map;
import java.util.function.Function;
import java.util.stream.Collectors;
@Transactional
@Service
public class StrategyCarReviewTaskSigned implements StrategyCarReviewTask, InitializingBean {
@Autowired
private StrategyCarReviewTaskContext strategyCarReviewTaskContext;
@Autowired
private ApplicationContext applicationContext;
@Autowired
private CarReviewTaskMapper carReviewTaskMapper;
// SIGNED状态下
// 1.standard字段使用task中归档的问卷
// 2.不查询场景变更任务
// 3.无需联查问卷答案
@Override
public CarReviewTaskViewResponse doView(CarReviewTask carReviewTask) {
CarReviewTaskViewResponse response = new CarReviewTaskViewResponse();
response.setCarReviewTask(carReviewTask);
return response;
}
@Override
public void doStartReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能开始一个已确认的任务", HttpStatus.ERROR);
}
@Override
public void doConfirmReview(CarReviewTask carReviewTask) {
throw new ServiceException("不能确认一个已确认的任务", HttpStatus.ERROR);
}
@Override
public void doSubmitReview(CarReviewTask carReviewTask) {
// 1. 填充review_submit_time
carReviewTask.setReviewSubmitTime(new Date());
// 2. 修改任务状态为 FINISH
carReviewTask.setReviewStatus(CarReviewTask.REVIEW_STATUS_FINISH);
// 3. 填写当前用户id
// 获取当前登陆人
SysUser loginUser = SecurityUtils.getLoginUser().getUser();
carReviewTask.setReviewSubmitId(loginUser.getUserId());
carReviewTask.setReviewSubmitName(loginUser.getNickName());
carReviewTaskMapper.updateById(carReviewTask);
}
@Override
public void afterPropertiesSet() throws Exception {
strategyCarReviewTaskContext.putResource(CarReviewTask.REVIEW_STATUS_SIGNED, applicationContext.getBean(this.getClass()));
}
}
......@@ -58,6 +58,15 @@ public class CarReviewTaskController extends BaseController {
return R.ok();
}
@ApiOperation("确认车辆问卷审查任务")
@Trace
@Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")})
@RequestMapping(method = RequestMethod.POST, value = "/confirmReview")
public R<String> confirmReview(@Validated @RequestBody CarReviewTaskConfirmRequest request) {
carReviewTaskService.confirmReviewTask(request);
return R.ok();
}
@ApiOperation("提交车辆问卷审查任务")
@Trace
@Tags({@Tag(key = "param", value = "arg[0]"), @Tag(key = "result", value = "returnedObj")})
......
package com.ruoyi.web.request;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@ApiModel(value = "CarReviewTaskConfirmRequest", description = "确认车辆问卷审查任务")
@Data
public class CarReviewTaskConfirmRequest {
@ApiModelProperty("任务id")
private Long taskId;
}
......@@ -28,6 +28,7 @@
<result property="reviewSubmitId" column="review_submit_id" jdbcType="BIGINT"/>
<result property="reviewSubmitName" column="review_submit_name" jdbcType="VARCHAR"/>
<result property="reviewResult" column="review_result" jdbcType="VARCHAR"/>
<result property="reviewImagesUrl" column="review_images_url" jdbcType="VARCHAR"/>
</resultMap>
<sql id="Base_Column_List">
......@@ -41,14 +42,14 @@
review_submit_time,
review_submit_id,
review_submit_name,
review_result
review_result,review_images_url
</sql>
<select id="findListByReviewStatus" resultType="com.ruoyi.domain.CarReviewTask">
SELECT id,task_no,task_status,task_initiator,task_initiator_dept,task_result,task_begin_time,task_end_time,standard,create_time,leader_id,leader,standard_id,name,standard_no,file,review_status,test_status,review_start_time,review_submit_time,review_submit_id,review_submit_name,review_result
SELECT id,task_no,task_status,task_initiator,task_initiator_dept,task_result,task_begin_time,task_end_time,standard,create_time,leader_id,leader,standard_id,name,standard_no,file,review_status,test_status,review_start_time,review_submit_time,review_submit_id,review_submit_name,review_result,review_images_url
FROM t_car_review_task WHERE review_status = #{reviewStatus} AND task_status = 'PENDING'
</select>
<select id="findListByTaskStatus" resultType="com.ruoyi.domain.CarReviewTask">
SELECT id,task_no,task_status,task_initiator,task_initiator_dept,task_result,task_begin_time,task_end_time,standard,create_time,leader_id,leader,standard_id,name,standard_no,file,review_status,test_status,review_start_time,review_submit_time,review_submit_id,review_submit_name,review_result
SELECT id,task_no,task_status,task_initiator,task_initiator_dept,task_result,task_begin_time,task_end_time,standard,create_time,leader_id,leader,standard_id,name,standard_no,file,review_status,test_status,review_start_time,review_submit_time,review_submit_id,review_submit_name,review_result,review_images_url
FROM t_car_review_task WHERE task_status = #{taskStatus}
</select>
</mapper>
......@@ -23,16 +23,17 @@
<result property="file" column="file" jdbcType="VARCHAR"/>
<result property="submitById" column="submit_by_id" jdbcType="BIGINT"/>
<result property="submitByName" column="submit_by_name" jdbcType="VARCHAR"/>
<result property="imagesUrl" column="images_url" jdbcType="VARCHAR"/>
</resultMap>
<select id="findListByStatus" resultMap="BaseResultMap">
SELECT id, task_no, task_status, task_initiator, task_initiator_dept, task_result, task_begin_time, task_end_time, standard, create_time,leader,leader_id, standard_id, name, standard_no, file, submit_by_id, submit_by_name
SELECT id, task_no, task_status, task_initiator, task_initiator_dept, task_result, task_begin_time, task_end_time, standard, create_time,leader,leader_id, standard_id, name, standard_no, file, submit_by_id, submit_by_name,images_url
FROM t_system_review_task WHERE task_status = #{status}
ORDER BY create_time DESC
</select>
<select id="findListInProcess" resultMap="BaseResultMap">
SELECT id, task_no, task_status, task_initiator, task_initiator_dept, task_result, task_begin_time, task_end_time, standard, create_time,leader,leader_id, standard_id, name, standard_no, file, submit_by_id, submit_by_name
SELECT id, task_no, task_status, task_initiator, task_initiator_dept, task_result, task_begin_time, task_end_time, standard, create_time,leader,leader_id, standard_id, name, standard_no, file, submit_by_id, submit_by_name,images_url
FROM t_system_review_task WHERE task_status IN ('NEW','PENDING')
ORDER BY create_time DESC
</select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment