报废审核

This commit is contained in:
mashuai 2025-01-02 10:55:57 +08:00
parent 12a0487ccb
commit 5fa102fc3d
12 changed files with 272 additions and 62 deletions

View File

@ -10,9 +10,9 @@ import lombok.Getter;
@Getter
public enum RepairInputStatusEnum {
Input_TASK_NO_FINISHED(0, "入库进行中"),
Input_TASK_IN_FINISHED(1, "入库完成"),
Input_TASK_TO_REJECT(2, "入库驳回");
INPUT_TASK_NO_FINISHED(0, "入库进行中"),
INPUT_TASK_IN_FINISHED(1, "入库完成"),
INPUT_TASK_TO_REJECT(2, "入库驳回");
private final Integer status;
private final String statusName;

View File

@ -0,0 +1,24 @@
package com.bonus.common.biz.enums;
import lombok.Getter;
/**
* @author : mashuai
* @version : 1.0
* 报废任务状态枚举
*/
@Getter
public enum ScrapTaskStatusEnum {
SCRAP_TASK_NO_FINISHED(0, "报废审核进行中"),
SCRAP_TASK_IN_FINISHED(1, "报废审核通过"),
SCRAP_TASK_TO_REJECT(2, "报废审核驳回");
private final Integer status;
private final String statusName;
ScrapTaskStatusEnum(Integer status, String statusName) {
this.status = status;
this.statusName = statusName;
}
}

View File

@ -35,7 +35,6 @@ public class ArchivesController extends BaseController {
* @return
*/
@ApiOperation(value = "获取电子档案分类树")
@PreventRepeatSubmit
//@RequiresPermissions("archives:type:list")
@GetMapping("/getTypeList")
public AjaxResult getTypeList(ArchivesInfo archiveInfo)
@ -49,7 +48,6 @@ public class ArchivesController extends BaseController {
* @return
*/
@ApiOperation(value = "获取电子档案详情信息")
@PreventRepeatSubmit
//@RequiresPermissions("archives:type:list")
@GetMapping("/getDetailsList")
public AjaxResult getDetailsList(ArchivesDetails archivesDetails)
@ -79,7 +77,7 @@ public class ArchivesController extends BaseController {
* @return
*/
@ApiOperation(value = "新增电子档案右侧类型")
@PreventRepeatSubmit
//@PreventRepeatSubmit
//@RequiresPermissions("archives:type:add")
@PostMapping("/addDetails")
public AjaxResult addDetails(@RequestBody ArchivesVo archivesVo)

View File

@ -602,7 +602,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
int thisMonthMaxOrder = taskMapper.getMonthMaxOrderByDate(DateUtils.getCurrentYear(), DateUtils.getCurrentMonth(), TmTaskTypeEnum.TM_TASK_REPAIR_INPUT.getTaskTypeId());
// 生成修饰入库单号
String code = genderWxTaskCode(thisMonthMaxOrder);
TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_REPAIR_INPUT.getTaskTypeId(), RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus(),
TmTask tmTask = new TmTask(null, TmTaskTypeEnum.TM_TASK_REPAIR_INPUT.getTaskTypeId(), RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus(),
null,thisMonthMaxOrder + 1, code);
tmTask.setCreateTime(DateUtils.getNowDate());
tmTask.setCreateBy(SecurityUtils.getUsername());

View File

@ -74,18 +74,18 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
.map(info -> Integer.parseInt(info.getStatus()))
.collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(statusList)) {
if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) &&
statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus())) {
inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()));
inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatusName()));
} else if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) &&
!statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()) &&
statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()))) {
inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()));
inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatusName()));
if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) &&
statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus())) {
inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()));
inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatusName()));
} else if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) &&
!statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()) &&
statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()))) {
inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()));
inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatusName()));
} else {
inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()));
inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatusName()));
inputInfo.setStatus(String.valueOf(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()));
inputInfo.setStatusName(String.valueOf(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatusName()));
}
}
}
@ -297,8 +297,8 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
Long newTaskId = insertTt(rePairDto.getTaskId());
result += insertTta(newTaskId, repairInputDetails1);
for (RepairInputInfo repairInputInfo : list) {
if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString())
|| repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString())
if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString())
|| repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString())
) {
continue;
}
@ -313,7 +313,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
result += insertWxTask(newTaskId, repairInputDetails1);
}
if (result > 0) {
result += taskMapper.updateTaskStatus(rePairDto.getTaskId().toString(), RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus());
result += taskMapper.updateTaskStatus(rePairDto.getTaskId().toString(), RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus());
}
}
@ -328,7 +328,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
private int updateRepairRejectDetails(RepairInputInfo repairInputInfo) {
int result = 0;
RepairInputDetails inputDetails = new RepairInputDetails();
inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString());
inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString());
inputDetails.setRejectNum(repairInputInfo.getPendingInputNum());
inputDetails.setMaId(repairInputInfo.getMaId() == null ? null : repairInputInfo.getMaId());
inputDetails.setTaskId(repairInputInfo.getTaskId());
@ -385,7 +385,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
Long newTaskId = insertTt(repairInputDetails.getTaskId());
result += insertTta(newTaskId, repairInputDetails);
for (RepairInputDetails inputDetails : repairInputDetails.getMaCodeList()) {
inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString());
inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString());
inputDetails.setTaskId(repairInputDetails.getTaskId());
inputDetails.setTypeId(repairInputDetails.getTypeId());
inputDetails.setRejectNum(BigDecimal.valueOf(1));
@ -550,7 +550,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
private int processCodeTypeStorage(RepairInputDetails repairInputDetails) {
int result = 0;
for (RepairInputDetails inputDetails : repairInputDetails.getMaCodeList()) {
inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString());
inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString());
inputDetails.setTaskId(repairInputDetails.getTaskId());
inputDetails.setTypeId(repairInputDetails.getTypeId());
inputDetails.setInputNum(BigDecimal.valueOf(1));
@ -604,13 +604,13 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
List<String> list = repairInputDetailsMapper.selectStatusByTaskId(repairInputDetails.getTaskId());
List<Integer> statusList = list.stream().map(Integer::parseInt).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(statusList)) {
if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) &&
statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus())) {
taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus());
} else if (!statusList.contains(RepairInputStatusEnum.Input_TASK_NO_FINISHED.getStatus()) &&
!statusList.contains(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus()) &&
statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus()))) {
taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus());
if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) &&
statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus())) {
taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus());
} else if (!statusList.contains(RepairInputStatusEnum.INPUT_TASK_NO_FINISHED.getStatus()) &&
!statusList.contains(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus()) &&
statusList.stream().allMatch(status -> status.equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus()))) {
taskMapper.updateTaskStatus(repairInputDetails.getTaskId().toString(), RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus());
}
}
}
@ -641,15 +641,15 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
if (CollectionUtils.isNotEmpty(list)) {
for (RepairInputInfo repairInputInfo : list) {
if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString())
|| repairInputInfo.getStatus().equals(RepairInputStatusEnum.Input_TASK_TO_REJECT.getStatus().toString())
if (repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString())
|| repairInputInfo.getStatus().equals(RepairInputStatusEnum.INPUT_TASK_TO_REJECT.getStatus().toString())
) {
continue;
}
result += updateRepairInputDetails(repairInputInfo);
}
if (result > 0) {
result += taskMapper.updateTaskStatus(taskId.toString(), RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus());
result += taskMapper.updateTaskStatus(taskId.toString(), RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus());
}
}
return result;
@ -663,7 +663,7 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
private int updateRepairInputDetails(RepairInputInfo repairInputInfo) {
int result = 0;
RepairInputDetails inputDetails = new RepairInputDetails();
inputDetails.setStatus(RepairInputStatusEnum.Input_TASK_IN_FINISHED.getStatus().toString());
inputDetails.setStatus(RepairInputStatusEnum.INPUT_TASK_IN_FINISHED.getStatus().toString());
inputDetails.setInputNum(repairInputInfo.getPendingInputNum());
inputDetails.setMaId(repairInputInfo.getMaId() == null ? null : repairInputInfo.getMaId());
inputDetails.setTaskId(repairInputInfo.getTaskId());

View File

@ -75,6 +75,28 @@ public class ScrapApplyDetailsController extends BaseController {
util.exportExcel(response, list, "报废任务详细数据");
}
/**
* 报废审核通过
* @param scrapApplyDetails
* @return
*/
@ApiOperation(value = "报废审核通过")
@GetMapping("/approve")
public AjaxResult approve(@RequestBody ScrapApplyDetails scrapApplyDetails) {
return scrapApplyDetailsService.approve(scrapApplyDetails);
}
/**
* 报废审核驳回
* @param scrapApplyDetails
* @return
*/
@ApiOperation(value = "报废审核驳回")
@GetMapping("/reject")
public AjaxResult reject(@RequestBody ScrapApplyDetails scrapApplyDetails) {
return scrapApplyDetailsService.reject(scrapApplyDetails);
}
/**
* 获取报废任务详细详细信息
*/

View File

@ -2,6 +2,9 @@ package com.bonus.material.scrap.domain;
import java.math.BigDecimal;
import java.util.Date;
import java.util.List;
import com.bonus.material.scrap.domain.vo.ScrapTaskListVo;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.bonus.common.core.annotation.Excel;
import io.swagger.annotations.ApiModelProperty;
@ -25,6 +28,12 @@ public class ScrapApplyDetails extends BaseEntity {
/** id */
private Long id;
@ApiModelProperty(value = "报废任务二级详细列表")
private List<ScrapApplyDetails> scrapApplyDetailsList;
@ApiModelProperty(value = "报废任务一级详细列表")
private List<ScrapTaskListVo> scrapTaskListVoList;
/** 任务ID */
@Excel(name = "任务ID")
@ApiModelProperty(value = "任务ID")
@ -33,6 +42,11 @@ public class ScrapApplyDetails extends BaseEntity {
@ApiModelProperty(value = "状态")
private String status;
private String statusName;
@ApiModelProperty(value = "任务状态")
private Byte taskStatus;
/** 上级ID */
@Excel(name = "上级ID")
@ApiModelProperty(value = "上级ID")

View File

@ -25,6 +25,7 @@ public class ScrapTaskListVo {
@ApiModelProperty(value = "报废单号")
private String scrapCode;
@ApiModelProperty(value = "维修单号")
private String repairCode;
@ApiModelProperty(value = "组织id")
@ -71,6 +72,9 @@ public class ScrapTaskListVo {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
private String endTime;
@ApiModelProperty(value = "任务状态名称")
private String taskStatusName;
@ApiModelProperty(value = "备注")
private String remark;

View File

@ -67,4 +67,11 @@ public interface ScrapApplyDetailsMapper {
RepairAuditDetails getByRepairId(String s);
List<RepairRecord> getGyoupRepairRecord(RepairAuditDetails byRepairId);
/**
* 报废任务审核
* @param applyDetails
* @return
*/
int updateStatus(ScrapApplyDetails applyDetails);
}

View File

@ -1,6 +1,8 @@
package com.bonus.material.scrap.service;
import java.util.List;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.material.scrap.domain.ScrapApplyDetails;
import com.bonus.material.scrap.domain.vo.ScrapTaskListVo;
@ -67,4 +69,18 @@ public interface IScrapApplyDetailsService {
* @return 结果
*/
public int deleteScrapApplyDetailsById(Long id);
/**
* 报废审核通过
* @param scrapApplyDetails
* @return
*/
AjaxResult approve(ScrapApplyDetails scrapApplyDetails);
/**
* 报废审核驳回
* @param scrapApplyDetails
* @return
*/
AjaxResult reject(ScrapApplyDetails scrapApplyDetails);
}

View File

@ -1,16 +1,25 @@
package com.bonus.material.scrap.service.impl;
import java.util.Collections;
import java.util.List;
import java.util.stream.Collectors;
import com.alibaba.nacos.common.utils.CollectionUtils;
import com.bonus.common.biz.enums.HttpCodeEnum;
import com.bonus.common.biz.enums.RepairInputStatusEnum;
import com.bonus.common.biz.enums.ScrapTaskStatusEnum;
import com.bonus.common.core.exception.ServiceException;
import com.bonus.common.core.utils.DateUtils;
import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.common.security.utils.SecurityUtils;
import com.bonus.material.scrap.domain.vo.ScrapTaskListVo;
import org.springframework.beans.factory.annotation.Autowired;
import com.bonus.material.task.mapper.TmTaskMapper;
import org.springframework.stereotype.Service;
import com.bonus.material.scrap.mapper.ScrapApplyDetailsMapper;
import com.bonus.material.scrap.domain.ScrapApplyDetails;
import com.bonus.material.scrap.service.IScrapApplyDetailsService;
import javax.annotation.Resource;
/**
* 报废任务详细Service业务层处理
*
@ -19,9 +28,12 @@ import com.bonus.material.scrap.service.IScrapApplyDetailsService;
*/
@Service
public class ScrapApplyDetailsServiceImpl implements IScrapApplyDetailsService {
@Autowired
@Resource
private ScrapApplyDetailsMapper scrapApplyDetailsMapper;
@Resource
private TmTaskMapper taskMapper;
/**
* 查询报废任务详细
*
@ -108,4 +120,92 @@ public class ScrapApplyDetailsServiceImpl implements IScrapApplyDetailsService {
public int deleteScrapApplyDetailsById(Long id) {
return scrapApplyDetailsMapper.deleteScrapApplyDetailsById(id);
}
/**
* 报废审核通过
* @param scrapApplyDetails
* @return
*/
@Override
public AjaxResult approve(ScrapApplyDetails scrapApplyDetails) {
// TODO: 报废审核二级页面通过
int result = 0;
if (scrapApplyDetails != null) {
if (scrapApplyDetails.getId() != null) {
scrapApplyDetails.setStatus("1");
scrapApplyDetails.setAuditBy(SecurityUtils.getUserId());
scrapApplyDetails.setAuditTime(DateUtils.getNowDate());
result = scrapApplyDetailsMapper.updateStatus(scrapApplyDetails);
if (result > 0) {
updateTaskStatus(scrapApplyDetails);
}
} else if (CollectionUtils.isNotEmpty(scrapApplyDetails.getScrapApplyDetailsList())) {
for (ScrapApplyDetails applyDetails : scrapApplyDetails.getScrapApplyDetailsList()) {
applyDetails.setStatus("1");
applyDetails.setAuditBy(SecurityUtils.getUserId());
applyDetails.setAuditTime(DateUtils.getNowDate());
result = scrapApplyDetailsMapper.updateStatus(applyDetails);
}
if (result > 0) {
updateTaskStatus(scrapApplyDetails.getScrapApplyDetailsList().get(0));
}
// TODO: 报废审核一级页面通过
} else if (CollectionUtils.isNotEmpty(scrapApplyDetails.getScrapTaskListVoList())) {
for (ScrapTaskListVo taskListVo : scrapApplyDetails.getScrapTaskListVoList()) {
// 根据任务id 查询任务详情
ScrapApplyDetails applyDetails = new ScrapApplyDetails();
applyDetails.setTaskId(taskListVo.getTaskId());
List<ScrapApplyDetails> scrapApplyDetailsList = scrapApplyDetailsMapper.selectRepairQuestListByTaskId(applyDetails);
// 将集合中status为0的筛选出来
List<ScrapApplyDetails> applyDetailsList = scrapApplyDetailsList.stream().filter(applyDetails1 -> "0".equals(applyDetails1.getStatus())).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(applyDetailsList)) {
for (ScrapApplyDetails applyDetails1 : applyDetailsList) {
applyDetails1.setStatus("1");
applyDetails1.setAuditBy(SecurityUtils.getUserId());
applyDetails1.setAuditTime(DateUtils.getNowDate());
result = scrapApplyDetailsMapper.updateStatus(applyDetails1);
}
}
if (result > 0) {
updateTaskStatus(applyDetails);
}
}
}
}
if (result > 0) {
return AjaxResult.success("审核通过");
}
return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg());
}
/**
* 更新任务状态
* @param scrapApplyDetails
*/
private void updateTaskStatus(ScrapApplyDetails scrapApplyDetails) {
List<ScrapApplyDetails> list = scrapApplyDetailsMapper.selectRepairQuestListByTaskId(scrapApplyDetails);
List<Integer> statusList = list.stream()
.map(scrapApplyDetail -> Integer.parseInt(scrapApplyDetail.getStatus()))
.collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(statusList)) {
if (!statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_NO_FINISHED.getStatus()) &&
statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_TO_REJECT.getStatus())) {
taskMapper.updateTaskStatus(scrapApplyDetails.getTaskId().toString(), ScrapTaskStatusEnum.SCRAP_TASK_TO_REJECT.getStatus());
} else if (!statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_NO_FINISHED.getStatus()) &&
!statusList.contains(ScrapTaskStatusEnum.SCRAP_TASK_TO_REJECT.getStatus()) &&
statusList.stream().allMatch(status -> status.equals(ScrapTaskStatusEnum.SCRAP_TASK_IN_FINISHED.getStatus()))) {
taskMapper.updateTaskStatus(scrapApplyDetails.getTaskId().toString(), ScrapTaskStatusEnum.SCRAP_TASK_IN_FINISHED.getStatus());
}
}
}
/**
* 报废审核驳回
* @param scrapApplyDetails
* @return
*/
@Override
public AjaxResult reject(ScrapApplyDetails scrapApplyDetails) {
return null;
}
}

View File

@ -34,12 +34,19 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectScrapApplyDetailsList" parameterType="com.bonus.material.scrap.domain.ScrapApplyDetails" resultType="com.bonus.material.scrap.domain.vo.ScrapTaskListVo">
SELECT
sad.task_id, sad.create_by, sad.create_time,sad.update_time,sad.company_id,
sad.task_id as taskId, sad.create_by, sad.create_time as createTime,sad.update_time,sad.company_id,
tt.`code` AS scrapCode, tt2.`code` as repairCode ,tt.task_status AS taskStatus,tt.task_type as taskType,tt.company_id AS companyId,tt.remark,
bui.unit_name AS backUnit,
bpi.pro_name AS backPro,
su.nick_name AS createName,
GROUP_CONCAT(DISTINCT mt2.type_name) as type
tta.agreement_id as agreementId,
GROUP_CONCAT(DISTINCT mt2.type_name) as type,
CASE tt.task_status
when 0 then '报废审核进行中'
when 1 then '报废审核通过'
when 2 then '报废审核驳回'
else '未知'
END as taskStatusName
FROM
scrap_apply_details sad
LEFT JOIN ma_type mt on sad.type_id = mt.type_id
@ -52,22 +59,28 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
left join sys_user su on sad.create_by = su.user_id
left join repair_audit_details rad ON sad.parent_id = rad.id
left join tm_task tt2 ON tt2.task_id = rad.task_id
<!-- <where> -->
<!-- <if test="taskId != null "> and task_id = #{taskId}</if>-->
<!-- <if test="parentId != null "> and parent_id = #{parentId}</if>-->
<!-- <if test="maId != null "> and ma_id = #{maId}</if>-->
<!-- <if test="typeId != null "> and type_id = #{typeId}</if>-->
<!-- <if test="scrapNum != null "> and scrap_num = #{scrapNum}</if>-->
<!-- <if test="scrapSource != null and scrapSource != ''"> and scrap_source = #{scrapSource}</if>-->
<!-- <if test="scrapType != null and scrapType != ''"> and scrap_type = #{scrapType}</if>-->
<!-- <if test="status != null and status != ''"> and status = #{status}</if>-->
<!-- <if test="auditBy != null "> and audit_by = #{auditBy}</if>-->
<!-- <if test="auditTime != null "> and audit_time = #{auditTime}</if>-->
<!-- <if test="auditRemark != null and auditRemark != ''"> and audit_remark = #{auditRemark}</if>-->
<!-- <if test="companyId != null "> and company_id = #{companyId}</if>-->
<!-- <if test="fileName != null and fileName != ''"> and file_name like concat('%', #{fileName}, '%')</if>-->
<!-- <if test="fileUrl != null and fileUrl != ''"> and file_url = #{fileUrl}</if>-->
<!-- </where>-->
<where>
<if test="typeId != null "> and type_id = #{typeId}</if>
<if test="scrapNum != null "> and scrap_num = #{scrapNum}</if>
<if test="scrapSource != null and scrapSource != ''"> and scrap_source = #{scrapSource}</if>
<if test="scrapType != null and scrapType != ''"> and scrap_type = #{scrapType}</if>
<if test="status != null and status != ''"> and status = #{status}</if>
<if test="auditBy != null "> and audit_by = #{auditBy}</if>
<if test="taskStatus != null "> and tt.task_status = #{taskStatus}</if>
<if test="keyWord != null and keyWord != ''">
and (
bui.unit_name like concat('%', #{keyWord}, '%') or
bpi.pro_name like concat('%', #{keyWord}, '%') or
tt.`code` like concat('%', #{keyWord}, '%') or
tt2.`code` like concat('%', #{keyWord}, '%') or
tt.remark like concat('%', #{keyWord}, '%') or
su.nick_name like concat('%', #{keyWord}, '%') or
)
</if>
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
<![CDATA[and DATE_FORMAT( sad.create_time, '%Y-%m-%d' ) BETWEEN #{startTime} AND #{endTime} ]]>
</if>
</where>
GROUP BY sad.task_id,bui.unit_name,bpi.pro_name,su.nick_name
order by tt.create_time desc
</select>
@ -77,25 +90,29 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<select id="selectRepairQuestListByTaskId" resultType="com.bonus.material.scrap.domain.ScrapApplyDetails">
select
sad.id as id,sad.task_id as taskId,sad.parent_id,sad.ma_id as maId,
sad.scrap_source,sad.scrap_type,
sad.status as status,ifnull(sad.scrap_num,0) as scrapNum,
sad.audit_by,sad.audit_remark,sad.audit_time,
sad.status as status,
sad.scrap_source,sad.scrap_type,ifnull(sad.scrap_num,0) as scrapNum,
sad.audit_by,sad.audit_remark,sad.audit_time as auditTime,
sad.update_time as updateTime,sad.type_id as typeId,
sad.create_by,sad.create_time,sad.file_name,sad.file_url,
mt2.type_name as typeName,mt2.type_id as typeNameId,
mt.type_name as type,mt.unit_name as unitName,mt.manage_type as manageType,
mm.ma_code as code,
su.nick_name as scraper
su.nick_name as scraper,
CASE sad.status
when 0 then '报废审核进行中'
when 1 then '报废审核通过'
when 2 then '报废审核驳回'
else '未知'
END as statusName
from
scrap_apply_details sad
left join ma_type mt on sad.type_id = mt.type_id
left join ma_machine mm on mm.ma_id = sad.ma_id
left join sys_user su on sad.create_by = su.user_id
left join ma_type mt2 on mt.parent_id = mt2.type_id
where
sad.task_id = #{taskId}
GROUP BY sad.id
order by sad.create_time desc
</select>
@ -177,6 +194,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
where id = #{id}
</update>
<update id="updateStatus">
update scrap_apply_details
set status = #{status},
audit_by = #{auditBy},
audit_time = #{auditTime}
where id = #{id}
</update>
<delete id="deleteScrapApplyDetailsById" parameterType="Long">
delete from scrap_apply_details where id = #{id}
</delete>