修试查询接口调试
This commit is contained in:
parent
c6eaf1deab
commit
ac845e3c5c
|
|
@ -8,11 +8,9 @@ import com.bonus.common.core.utils.poi.ExcelUtil;
|
||||||
import com.bonus.common.core.web.controller.BaseController;
|
import com.bonus.common.core.web.controller.BaseController;
|
||||||
import com.bonus.common.core.web.domain.AjaxResult;
|
import com.bonus.common.core.web.domain.AjaxResult;
|
||||||
import com.bonus.common.core.web.page.TableDataInfo;
|
import com.bonus.common.core.web.page.TableDataInfo;
|
||||||
|
import com.bonus.material.back.domain.vo.BackApplyVo;
|
||||||
import com.bonus.material.repair.domain.*;
|
import com.bonus.material.repair.domain.*;
|
||||||
import com.bonus.material.repair.domain.vo.OCRBean;
|
import com.bonus.material.repair.domain.vo.*;
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceSummaryVo;
|
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceVO;
|
|
||||||
import com.bonus.material.repair.domain.vo.RepairInputDetailsVo;
|
|
||||||
import com.bonus.material.repair.service.RepairService;
|
import com.bonus.material.repair.service.RepairService;
|
||||||
import com.bonus.system.api.domain.SysUser;
|
import com.bonus.system.api.domain.SysUser;
|
||||||
import com.fasterxml.jackson.core.JsonProcessingException;
|
import com.fasterxml.jackson.core.JsonProcessingException;
|
||||||
|
|
@ -232,4 +230,44 @@ public class RepairController extends BaseController {
|
||||||
return js;
|
return js;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@ApiOperation(value = "查询修试查询-维修配件查询列表")
|
||||||
|
@GetMapping("/selectRepairPartList")
|
||||||
|
public AjaxResult selectRepairPartList(RepairPartVo dto) {
|
||||||
|
Integer pageIndex = Convert.toInt(ServletUtils.getParameter("pageNum"), 1);
|
||||||
|
Integer pageSize = Convert.toInt(ServletUtils.getParameter("pageSize"), 10);
|
||||||
|
List<RepairPartVo> list = service.selectRepairPartList(dto);
|
||||||
|
return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, list));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 导出修试查询-维修配件查询列表
|
||||||
|
* @param response
|
||||||
|
* @param dto
|
||||||
|
*/
|
||||||
|
@PostMapping("/exportRepairPartList")
|
||||||
|
public void exportBackApplyList(HttpServletResponse response, RepairPartVo dto) {
|
||||||
|
List<RepairPartVo> list = service.selectRepairPartList(dto);
|
||||||
|
ExcelUtil<RepairPartVo> util = new ExcelUtil<RepairPartVo>(RepairPartVo.class);
|
||||||
|
util.exportExcel(response, list, "退维修配件查询数据");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询二级列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@ApiOperation(value = "查询修试查询-维修配件查询二级列表")
|
||||||
|
@GetMapping("/selectSecondRepairPartList")
|
||||||
|
public AjaxResult selectSecondRepairPartList(RepairPartInfo dto) {
|
||||||
|
Integer pageIndex = Convert.toInt(ServletUtils.getParameter("pageNum"), 1);
|
||||||
|
Integer pageSize = Convert.toInt(ServletUtils.getParameter("pageSize"), 10);
|
||||||
|
List<RepairPartInfo> list = service.selectSecondRepairPartList(dto);
|
||||||
|
return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, list));
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,49 @@
|
||||||
|
package com.bonus.material.repair.domain.vo;
|
||||||
|
|
||||||
|
import com.bonus.common.core.annotation.Excel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 维修配件查询二级页面
|
||||||
|
* @Author ma_sh
|
||||||
|
* @create 2025/4/1 14:19
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RepairPartInfo {
|
||||||
|
|
||||||
|
private Long typeId;
|
||||||
|
|
||||||
|
private Long taskId;
|
||||||
|
|
||||||
|
private Long maId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value="关键字")
|
||||||
|
private String keyWord;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "配件名称")
|
||||||
|
@Excel(name = "配件名称")
|
||||||
|
private String partName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "规格型号")
|
||||||
|
@Excel(name = "规格型号")
|
||||||
|
private String partModelName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "使用数量")
|
||||||
|
@Excel(name = "使用数量")
|
||||||
|
private BigDecimal partNum;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "单价")
|
||||||
|
@Excel(name = "单价(元)")
|
||||||
|
private BigDecimal partPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "收费金额(元)")
|
||||||
|
@Excel(name = "收费金额(元)")
|
||||||
|
private BigDecimal partTotalPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "不收费金额(元)")
|
||||||
|
@Excel(name = "不收费金额(元)")
|
||||||
|
private BigDecimal partNoTotalPrice;
|
||||||
|
}
|
||||||
|
|
@ -0,0 +1,94 @@
|
||||||
|
package com.bonus.material.repair.domain.vo;
|
||||||
|
|
||||||
|
import com.bonus.common.core.annotation.Excel;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修试查询-维修配件查询
|
||||||
|
* @Author ma_sh
|
||||||
|
* @create 2025/4/1 11:10
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RepairPartVo {
|
||||||
|
/** ID */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "维修单号")
|
||||||
|
@Excel(name = "维修单号")
|
||||||
|
private String repairCode;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "单位id")
|
||||||
|
private Long unitId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "单位名称")
|
||||||
|
@Excel(name = "退料单位")
|
||||||
|
private String backUnitName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value="工程id")
|
||||||
|
private Long proId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value="工程名称")
|
||||||
|
@Excel(name = "工程名称")
|
||||||
|
private String backProName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "类型名称")
|
||||||
|
@Excel(name = "类型名称")
|
||||||
|
private String typeName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "规格型号")
|
||||||
|
@Excel(name = "规格型号")
|
||||||
|
private String typeModelName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "设备编码")
|
||||||
|
@Excel(name = "设备编码")
|
||||||
|
private String maCode;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "维修数量")
|
||||||
|
@Excel(name = "维修数量")
|
||||||
|
private BigDecimal repairNum;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "计量单位")
|
||||||
|
@Excel(name = "单位")
|
||||||
|
private String unitName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "配件名称")
|
||||||
|
@Excel(name = "配件名称")
|
||||||
|
private String partName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "配件规格")
|
||||||
|
@Excel(name = "配件规格")
|
||||||
|
private String partModelName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "使用数量")
|
||||||
|
@Excel(name = "使用数量")
|
||||||
|
private BigDecimal partNum;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "维修人员")
|
||||||
|
@Excel(name = "维修人员")
|
||||||
|
private String repairPerson;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "维修时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "维修时间", dateFormat = "yyyy-MM-dd", width = 20)
|
||||||
|
private Date repairTime;
|
||||||
|
|
||||||
|
@ApiModelProperty(value="开始时间")
|
||||||
|
private String startTime;
|
||||||
|
|
||||||
|
@ApiModelProperty(value="结束时间")
|
||||||
|
private String endTime;
|
||||||
|
|
||||||
|
@ApiModelProperty(value="关键字")
|
||||||
|
private String keyWord;
|
||||||
|
|
||||||
|
private Long typeId;
|
||||||
|
|
||||||
|
private Long taskId;
|
||||||
|
|
||||||
|
private Long maId;
|
||||||
|
}
|
||||||
|
|
@ -3,6 +3,8 @@ package com.bonus.material.repair.mapper;
|
||||||
import com.bonus.material.repair.domain.*;
|
import com.bonus.material.repair.domain.*;
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceVO;
|
import com.bonus.material.repair.domain.vo.RepairDeviceVO;
|
||||||
import com.bonus.material.repair.domain.vo.RepairInputDetailsVo;
|
import com.bonus.material.repair.domain.vo.RepairInputDetailsVo;
|
||||||
|
import com.bonus.material.repair.domain.vo.RepairPartInfo;
|
||||||
|
import com.bonus.material.repair.domain.vo.RepairPartVo;
|
||||||
import com.bonus.system.api.domain.SysUser;
|
import com.bonus.system.api.domain.SysUser;
|
||||||
import org.apache.ibatis.annotations.Mapper;
|
import org.apache.ibatis.annotations.Mapper;
|
||||||
import org.apache.ibatis.annotations.Param;
|
import org.apache.ibatis.annotations.Param;
|
||||||
|
|
@ -240,4 +242,25 @@ public interface RepairMapper {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
int updateStatus(RepairTaskDetails details);
|
int updateStatus(RepairTaskDetails details);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<RepairPartVo> selectRepairPartList(RepairPartVo dto);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询配件相关信息
|
||||||
|
* @param repairPartVo
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
RepairPartVo selectRepairPartInfo(RepairPartVo repairPartVo);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询二级列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<RepairPartInfo> selectSecondRepairPartList(RepairPartInfo dto);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -6,9 +6,7 @@ import com.bonus.material.repair.domain.RepairApplyRecord;
|
||||||
import com.bonus.material.repair.domain.RepairPartDetails;
|
import com.bonus.material.repair.domain.RepairPartDetails;
|
||||||
import com.bonus.material.repair.domain.RepairTask;
|
import com.bonus.material.repair.domain.RepairTask;
|
||||||
import com.bonus.material.repair.domain.RepairTaskDetails;
|
import com.bonus.material.repair.domain.RepairTaskDetails;
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceSummaryVo;
|
import com.bonus.material.repair.domain.vo.*;
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceVO;
|
|
||||||
import com.bonus.material.repair.domain.vo.RepairInputDetailsVo;
|
|
||||||
import com.bonus.system.api.domain.SysUser;
|
import com.bonus.system.api.domain.SysUser;
|
||||||
|
|
||||||
import javax.validation.constraints.NotNull;
|
import javax.validation.constraints.NotNull;
|
||||||
|
|
@ -94,4 +92,18 @@ public interface RepairService {
|
||||||
* @return
|
* @return
|
||||||
*/
|
*/
|
||||||
List<RepairPartDetails> getDetailsList(RepairPartDetails bean);
|
List<RepairPartDetails> getDetailsList(RepairPartDetails bean);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<RepairPartVo> selectRepairPartList(RepairPartVo dto);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询二级列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
List<RepairPartInfo> selectSecondRepairPartList(RepairPartInfo dto);
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -15,10 +15,7 @@ import com.bonus.material.basic.mapper.BmFileInfoMapper;
|
||||||
import com.bonus.material.ma.domain.PartType;
|
import com.bonus.material.ma.domain.PartType;
|
||||||
import com.bonus.material.ma.mapper.PartTypeMapper;
|
import com.bonus.material.ma.mapper.PartTypeMapper;
|
||||||
import com.bonus.material.repair.domain.*;
|
import com.bonus.material.repair.domain.*;
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceSummaryVo;
|
import com.bonus.material.repair.domain.vo.*;
|
||||||
import com.bonus.material.repair.domain.vo.RepairDeviceVO;
|
|
||||||
import com.bonus.material.repair.domain.vo.RepairInputDetailsVo;
|
|
||||||
import com.bonus.material.repair.domain.vo.RepairTicketVo;
|
|
||||||
import com.bonus.material.repair.mapper.RepairApplyDetailsMapper;
|
import com.bonus.material.repair.mapper.RepairApplyDetailsMapper;
|
||||||
import com.bonus.material.repair.mapper.RepairAuditDetailsMapper;
|
import com.bonus.material.repair.mapper.RepairAuditDetailsMapper;
|
||||||
import com.bonus.material.repair.mapper.RepairMapper;
|
import com.bonus.material.repair.mapper.RepairMapper;
|
||||||
|
|
@ -1237,4 +1234,82 @@ public class RepairServiceImpl implements RepairService {
|
||||||
public List<RepairPartDetails> getDetailsList(RepairPartDetails bean) {
|
public List<RepairPartDetails> getDetailsList(RepairPartDetails bean) {
|
||||||
return repairMapper.getDetailsList(bean);
|
return repairMapper.getDetailsList(bean);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<RepairPartVo> selectRepairPartList(RepairPartVo dto) {
|
||||||
|
// 查询维修配件列表
|
||||||
|
List<RepairPartVo> list = repairMapper.selectRepairPartList(dto);
|
||||||
|
if (!CollectionUtils.isEmpty(list)) {
|
||||||
|
for (RepairPartVo repairPartVo : list) {
|
||||||
|
// 查询配件相关信息
|
||||||
|
RepairPartVo info = repairMapper.selectRepairPartInfo(repairPartVo);
|
||||||
|
if (info != null) {
|
||||||
|
repairPartVo.setPartName(StringUtils.isNotBlank(info.getPartName()) ? info.getPartName() : null);
|
||||||
|
repairPartVo.setPartModelName(StringUtils.isNotBlank(info.getPartModelName()) ? info.getPartModelName() : null);
|
||||||
|
repairPartVo.setPartNum(info.getPartNum());
|
||||||
|
repairPartVo.setRepairPerson(StringUtils.isNotBlank(info.getRepairPerson()) ? info.getRepairPerson() : null);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
// 如果关键字不为空,根据关键字查询
|
||||||
|
if (!StringUtils.isBlank(dto.getKeyWord())) {
|
||||||
|
list = list.stream()
|
||||||
|
.filter(item -> containsBackKeyword(item, dto.getKeyWord()))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 查询修试查询-维修配件查询二级列表
|
||||||
|
* @param dto
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
@Override
|
||||||
|
public List<RepairPartInfo> selectSecondRepairPartList(RepairPartInfo dto) {
|
||||||
|
List<RepairPartInfo> list = repairMapper.selectSecondRepairPartList(dto);
|
||||||
|
if (!CollectionUtils.isEmpty(list)) {
|
||||||
|
// 如果关键字不为空,根据关键字查询
|
||||||
|
if (!StringUtils.isBlank(dto.getKeyWord())) {
|
||||||
|
list = list.stream()
|
||||||
|
.filter(item -> containsRepairKeyword(item, dto.getKeyWord()))
|
||||||
|
.collect(Collectors.toList());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return list;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断维修配件查询二级列表是否包含关键字
|
||||||
|
* @param item
|
||||||
|
* @param keyWord
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private boolean containsRepairKeyword(RepairPartInfo item, String keyWord) {
|
||||||
|
return (item.getPartName() != null && item.getPartName().contains(keyWord)) ||
|
||||||
|
(item.getPartModelName() != null && item.getPartModelName().contains(keyWord));
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 判断维修配件查询列表是否包含关键字
|
||||||
|
* @param item
|
||||||
|
* @param keyWord
|
||||||
|
* @return
|
||||||
|
*/
|
||||||
|
private boolean containsBackKeyword(RepairPartVo item, String keyWord) {
|
||||||
|
return (item.getTypeName() != null && item.getTypeName().contains(keyWord)) ||
|
||||||
|
(item.getTypeModelName() != null && item.getTypeModelName().contains(keyWord)) ||
|
||||||
|
(item.getRepairPerson() != null && item.getRepairPerson().contains(keyWord)) ||
|
||||||
|
(item.getBackUnitName() != null && item.getBackUnitName().contains(keyWord)) ||
|
||||||
|
(item.getBackProName() != null && item.getBackProName().contains(keyWord)) ||
|
||||||
|
(item.getPartName() != null && item.getPartName().contains(keyWord)) ||
|
||||||
|
(item.getPartModelName() != null && item.getPartModelName().contains(keyWord)) ||
|
||||||
|
(item.getRepairCode() != null && item.getRepairCode().contains(keyWord)) ||
|
||||||
|
(item.getMaCode() != null && item.getMaCode().contains(keyWord));
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -878,6 +878,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
<if test="proId != null">
|
<if test="proId != null">
|
||||||
and bp.pro_id = #{proId}
|
and bp.pro_id = #{proId}
|
||||||
</if>
|
</if>
|
||||||
|
ORDER BY bcd.create_time DESC
|
||||||
</select>
|
</select>
|
||||||
<select id="selectRepairCode" resultType="com.bonus.material.back.domain.BackApplyInfo">
|
<select id="selectRepairCode" resultType="com.bonus.material.back.domain.BackApplyInfo">
|
||||||
SELECT
|
SELECT
|
||||||
|
|
@ -889,6 +890,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
WHERE
|
WHERE
|
||||||
rad.`status` = '1'
|
rad.`status` = '1'
|
||||||
AND ba.back_id = #{id}
|
AND ba.back_id = #{id}
|
||||||
|
<if test="typeId != null">
|
||||||
|
and ba.type_id = #{typeId}
|
||||||
|
</if>
|
||||||
|
<if test="maId != null">
|
||||||
|
and ba.ma_id = #{maId}
|
||||||
|
</if>
|
||||||
</select>
|
</select>
|
||||||
<select id="selectIdList" resultType="com.bonus.material.back.domain.vo.BackApplyInfoVo">
|
<select id="selectIdList" resultType="com.bonus.material.back.domain.vo.BackApplyInfoVo">
|
||||||
SELECT
|
SELECT
|
||||||
|
|
|
||||||
|
|
@ -690,6 +690,143 @@
|
||||||
rad.ma_id, rad.type_id
|
rad.ma_id, rad.type_id
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
|
<select id="selectRepairPartList" resultType="com.bonus.material.repair.domain.vo.RepairPartVo">
|
||||||
|
SELECT
|
||||||
|
tt.`code` AS repairCode,
|
||||||
|
bu.unit_name AS backUnitName,
|
||||||
|
bp.pro_name AS backProName,
|
||||||
|
mt2.type_name AS typeName,
|
||||||
|
mt1.type_name AS typeModelName,
|
||||||
|
mm.ma_code AS maCode,
|
||||||
|
mt1.unit_name AS unitName,
|
||||||
|
rad.repair_num AS repairNum,
|
||||||
|
rad.task_id AS taskId,
|
||||||
|
rad.type_id AS typeId,
|
||||||
|
rad.ma_id AS maId,
|
||||||
|
rad.update_time AS repairTime
|
||||||
|
FROM
|
||||||
|
repair_apply_details rad
|
||||||
|
LEFT JOIN repair_audit_details rd ON rad.id = rd.repair_id
|
||||||
|
LEFT JOIN tm_task tt ON tt.task_id = rad.task_id
|
||||||
|
LEFT JOIN tm_task_agreement tta ON tta.task_id = tt.task_id
|
||||||
|
LEFT JOIN bm_agreement_info bagi ON bagi.agreement_id = tta.agreement_id
|
||||||
|
AND bagi.`status` = '1'
|
||||||
|
LEFT JOIN bm_project bp ON bp.pro_id = bagi.project_id
|
||||||
|
AND bp.del_flag = '0'
|
||||||
|
LEFT JOIN bm_unit bu ON bu.unit_id = bagi.unit_id
|
||||||
|
AND bu.del_flag = '0'
|
||||||
|
LEFT JOIN ma_type mt1 ON mt1.type_id = rad.type_id
|
||||||
|
AND mt1.del_flag = '0'
|
||||||
|
LEFT JOIN ma_type mt2 ON mt2.type_id = mt1.parent_id
|
||||||
|
AND mt2.del_flag = '0'
|
||||||
|
LEFT JOIN ma_machine mm ON rad.ma_id = mm.ma_id
|
||||||
|
WHERE
|
||||||
|
rd.`status` = '1'
|
||||||
|
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
|
||||||
|
<![CDATA[and DATE_FORMAT( rad.create_time, '%Y-%m-%d' ) BETWEEN #{startTime} AND #{endTime} ]]>
|
||||||
|
</if>
|
||||||
|
<if test="typeName != null and typeName != ''">
|
||||||
|
and mt2.type_name like CONCAT('%', #{typeName}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="typeModelName != null and typeModelName != ''">
|
||||||
|
and mt1.type_name like CONCAT('%', #{typeModelName}, '%')
|
||||||
|
</if>
|
||||||
|
<if test="unitId != null">
|
||||||
|
and bu.unit_id = #{unitId}
|
||||||
|
</if>
|
||||||
|
<if test="proId != null">
|
||||||
|
and bp.pro_id = #{proId}
|
||||||
|
</if>
|
||||||
|
ORDER BY rad.update_time DESC
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectRepairPartInfo" resultType="com.bonus.material.repair.domain.vo.RepairPartVo">
|
||||||
|
SELECT
|
||||||
|
IFNULL( SUM( rar.part_num ), 0 ) AS partNum,
|
||||||
|
GROUP_CONCAT(
|
||||||
|
DISTINCT
|
||||||
|
CASE
|
||||||
|
WHEN rar.part_name IS NOT NULL OR rar.part_id IS NOT NULL
|
||||||
|
THEN CONCAT_WS(',', rar.part_name, CASE WHEN rar.part_id IS NOT NULL THEN mpt1.pa_name END)
|
||||||
|
ELSE NULL
|
||||||
|
END
|
||||||
|
) AS partName,
|
||||||
|
GROUP_CONCAT( DISTINCT rar.create_by ) AS repairPerson,
|
||||||
|
GROUP_CONCAT( DISTINCT CASE WHEN rar.part_id IS NOT NULL THEN mpt.pa_name END ) AS partModelName
|
||||||
|
FROM
|
||||||
|
repair_apply_record rar
|
||||||
|
LEFT JOIN ma_part_type mpt ON rar.part_id = mpt.pa_id
|
||||||
|
AND mpt.del_flag = '0'
|
||||||
|
LEFT JOIN ma_part_type mpt1 ON mpt.parent_id = mpt1.pa_id
|
||||||
|
AND mpt1.del_flag = '0'
|
||||||
|
WHERE
|
||||||
|
rar.`status` = '1'
|
||||||
|
AND rar.task_id = #{taskId}
|
||||||
|
<if test="typeId != null">
|
||||||
|
AND rar.type_id = #{typeId}
|
||||||
|
</if>
|
||||||
|
<if test="maId != null">
|
||||||
|
AND rar.ma_id = #{maId}
|
||||||
|
</if>
|
||||||
|
</select>
|
||||||
|
|
||||||
|
<select id="selectSecondRepairPartList" resultType="com.bonus.material.repair.domain.vo.RepairPartInfo">
|
||||||
|
SELECT
|
||||||
|
GROUP_CONCAT(
|
||||||
|
DISTINCT
|
||||||
|
CASE
|
||||||
|
WHEN rar.part_name IS NOT NULL OR rar.part_id IS NOT NULL
|
||||||
|
THEN CONCAT_WS(',', rar.part_name, CASE WHEN rar.part_id IS NOT NULL THEN mpt1.pa_name END)
|
||||||
|
ELSE NULL
|
||||||
|
END) AS partName,
|
||||||
|
GROUP_CONCAT( DISTINCT CASE WHEN rar.part_id IS NOT NULL THEN mpt.pa_name END ) AS partModelName,
|
||||||
|
IFNULL( SUM( rar.part_num ), 0 ) AS partNum,
|
||||||
|
CASE
|
||||||
|
WHEN rar.part_id IS NOT NULL THEN
|
||||||
|
rar.part_price
|
||||||
|
END AS partPrice,
|
||||||
|
SUM(
|
||||||
|
CASE
|
||||||
|
WHEN rar.part_type = 1
|
||||||
|
AND rar.part_id IS NOT NULL THEN
|
||||||
|
rar.part_num * rar.part_price
|
||||||
|
WHEN rar.part_type = 1
|
||||||
|
AND rar.part_id IS NULL THEN
|
||||||
|
rar.part_price ELSE 0
|
||||||
|
END
|
||||||
|
) AS partTotalPrice,
|
||||||
|
SUM(
|
||||||
|
CASE
|
||||||
|
WHEN rar.part_type = 0
|
||||||
|
AND rar.part_id IS NOT NULL THEN
|
||||||
|
rar.part_num * rar.part_price
|
||||||
|
WHEN rar.part_type = 0
|
||||||
|
AND rar.part_id IS NULL THEN
|
||||||
|
rar.part_price ELSE 0
|
||||||
|
END
|
||||||
|
) AS partNoTotalPrice
|
||||||
|
FROM
|
||||||
|
repair_apply_record rar
|
||||||
|
LEFT JOIN ma_part_type mpt ON rar.part_id = mpt.pa_id
|
||||||
|
AND mpt.del_flag = '0'
|
||||||
|
LEFT JOIN ma_part_type mpt1 ON mpt.parent_id = mpt1.pa_id
|
||||||
|
AND mpt1.del_flag = '0'
|
||||||
|
WHERE
|
||||||
|
rar.`status` = '1'
|
||||||
|
AND rar.task_id = #{taskId}
|
||||||
|
<if test="typeId != null">
|
||||||
|
AND rar.type_id = #{typeId}
|
||||||
|
</if>
|
||||||
|
<if test="maId != null">
|
||||||
|
AND rar.ma_id = #{maId}
|
||||||
|
</if>
|
||||||
|
GROUP BY
|
||||||
|
rar.part_id,
|
||||||
|
rar.part_name
|
||||||
|
HAVING
|
||||||
|
partName IS NOT NULL
|
||||||
|
</select>
|
||||||
|
|
||||||
<update id="updateRepairedAndScrapNum">
|
<update id="updateRepairedAndScrapNum">
|
||||||
update
|
update
|
||||||
repair_apply_details
|
repair_apply_details
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue