Merge branch 'master' of http://192.168.0.56:3000/bonus/Bonus-Cloud-Material
This commit is contained in:
commit
8e6d9f754e
|
|
@ -53,6 +53,21 @@ public class RepairInputDetails extends BaseEntity {
|
|||
@ApiModelProperty(value = "规格ID")
|
||||
private Long typeId;
|
||||
|
||||
@ApiModelProperty(value = "物资名称")
|
||||
private String typeName;
|
||||
|
||||
@ApiModelProperty(value = "规格型号")
|
||||
private String typeModelName;
|
||||
|
||||
@ApiModelProperty(value = "机具状态")
|
||||
private String maStatus;
|
||||
|
||||
@ApiModelProperty(value = "机具状态名称")
|
||||
private String inputType;
|
||||
|
||||
@ApiModelProperty(value = "二维码code")
|
||||
private String qrCode;
|
||||
|
||||
/**
|
||||
* 退料单位名称
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -1,6 +1,9 @@
|
|||
package com.bonus.material.basic.controller;
|
||||
|
||||
import cn.hutool.core.convert.Convert;
|
||||
import com.alibaba.nacos.common.utils.CollectionUtils;
|
||||
import com.bonus.common.biz.config.ListPagingUtil;
|
||||
import com.bonus.common.core.utils.ServletUtils;
|
||||
import com.bonus.common.core.utils.poi.ExcelUtil;
|
||||
import com.bonus.common.core.web.controller.BaseController;
|
||||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
|
|
@ -293,9 +296,10 @@ public class ComplexQueryController extends BaseController {
|
|||
@ApiOperation(value = "综合查询--机具入库查询列表")
|
||||
@GetMapping("/getInputRecordList")
|
||||
public AjaxResult getInputRecordList(InputRecordInfo bean) {
|
||||
startPage();
|
||||
Integer pageIndex = Convert.toInt(ServletUtils.getParameter("pageNum"), 1);
|
||||
Integer pageSize = Convert.toInt(ServletUtils.getParameter("pageSize"), 10);
|
||||
List<InputRecordInfo> list = complexQueryService.getInputRecordList(bean);
|
||||
return AjaxResult.success(getDataTable(list));
|
||||
return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, list));
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
@ -320,9 +324,10 @@ public class ComplexQueryController extends BaseController {
|
|||
@ApiOperation(value = "综合查询--机具出库查询列表")
|
||||
@GetMapping("/getOutRecordList")
|
||||
public AjaxResult getOutRecordList(OutRecordInfo bean) {
|
||||
startPage();
|
||||
Integer pageIndex = Convert.toInt(ServletUtils.getParameter("pageNum"), 1);
|
||||
Integer pageSize = Convert.toInt(ServletUtils.getParameter("pageSize"), 10);
|
||||
List<OutRecordInfo> list = complexQueryService.getOutRecordList(bean);
|
||||
return AjaxResult.success(getDataTable(list));
|
||||
return AjaxResult.success(ListPagingUtil.paging(pageIndex, pageSize, list));
|
||||
}
|
||||
|
||||
@ApiOperation("导出综合查询机具出库查询")
|
||||
|
|
|
|||
|
|
@ -168,8 +168,6 @@ public class LeaseOutDetailsServiceImpl implements ILeaseOutDetailsService {
|
|||
if ((record.getManageType().equals(MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId())) && record.getInputNum() != null) {
|
||||
record.setOutNum(record.getInputNum());
|
||||
record.setOutType(InputOutEnum.NUMBER_DEVICE.getTypeId());
|
||||
} else if (record.getManageType().equals(MaTypeManageTypeEnum.CODE_DEVICE.getTypeId())) {
|
||||
record.setOutType(InputOutEnum.CODE_DEVICE.getTypeId());
|
||||
}
|
||||
res = checkStorageNum(record);
|
||||
|
||||
|
|
|
|||
|
|
@ -41,6 +41,12 @@ public interface PurchaseBindMapper {
|
|||
*/
|
||||
List<PurchaseDto> selectByCode(PurchaseDto purchaseDto);
|
||||
|
||||
/**
|
||||
* 判断QrCode二维码是否绑定
|
||||
* @return true 已绑定 false 未绑定
|
||||
*/
|
||||
boolean checkQrCodeIsBind(String qrCode);
|
||||
|
||||
/**
|
||||
* 新增绑定信息
|
||||
* @param purchaseDto
|
||||
|
|
|
|||
|
|
@ -107,15 +107,14 @@ public class PurchaseBindServiceImpl implements IPurchaseBindService {
|
|||
*/
|
||||
@Override
|
||||
public List<PurchaseVo> getDetails(PurchaseDto dto) {
|
||||
List<PurchaseVo> list = purchaseBindMapper.getDetails(dto);
|
||||
Map<String, String> labelMap = remoteConfig.getDictValue("purchase_task_status");
|
||||
final List<PurchaseVo> list = purchaseBindMapper.getDetails(dto);
|
||||
final Map<String, String> labelMap = remoteConfig.getDictValue("purchase_task_status");
|
||||
if (CollectionUtils.isNotEmpty(list)) {
|
||||
for (PurchaseVo purchaseVo : list) {
|
||||
for (final PurchaseVo purchaseVo : list) {
|
||||
// 更新状态名称
|
||||
Integer status = purchaseVo.getStatus();
|
||||
if (status != null) {
|
||||
String dictValue = labelMap.get(status.toString());
|
||||
purchaseVo.setStatusName(dictValue);
|
||||
final Integer status = purchaseVo.getStatus();
|
||||
if (null != status) {
|
||||
purchaseVo.setStatusName(labelMap.get(status.toString()));
|
||||
}
|
||||
}
|
||||
}
|
||||
|
|
@ -131,48 +130,51 @@ public class PurchaseBindServiceImpl implements IPurchaseBindService {
|
|||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult bind(PurchaseDto dto) {
|
||||
//先查询提交的编码中是否存在重复提交
|
||||
long distinctCodes = dto.getDtoList().stream().map(PurchaseDto::getMaCode).distinct().count();
|
||||
final long distinctCodes = dto.getDtoList().stream().map(PurchaseDto::getMaCode).distinct().count();
|
||||
if (distinctCodes < dto.getDtoList().size()) {
|
||||
return AjaxResult.error(1113,"提交的数据中设备编码存在重复,请勿重复添加");
|
||||
}
|
||||
for (PurchaseDto purchaseDto : dto.getDtoList()) {
|
||||
for (final PurchaseDto purchaseDto : dto.getDtoList()) {
|
||||
//根据设备编码唯一校验
|
||||
List<PurchaseDto> tbBdDeviceRecord = purchaseBindMapper.selectByCode(purchaseDto);
|
||||
final List<PurchaseDto> tbBdDeviceRecord = purchaseBindMapper.selectByCode(purchaseDto);
|
||||
if (purchaseBindMapper.checkQrCodeIsBind(purchaseDto.getQrCode())) {
|
||||
return AjaxResult.error(1114,"二维码已绑定物资,请勿重复绑定");
|
||||
}
|
||||
if (CollectionUtils.isNotEmpty(tbBdDeviceRecord)) {
|
||||
return AjaxResult.error(1114,"设备编码与库中重复,请勿重复添加");
|
||||
}
|
||||
}
|
||||
for (PurchaseDto purchaseDto : dto.getDtoList()) {
|
||||
for (final PurchaseDto purchaseDto : dto.getDtoList()) {
|
||||
purchaseDto.setCreateBy(SecurityUtils.getUserId().toString()).setCreateTime(DateUtils.getNowDate());
|
||||
purchaseDto.setTaskId(dto.getTaskId()).setTypeId(dto.getTypeId()).setStatus(0);
|
||||
if (purchaseDto.getQrCode() != null) {
|
||||
if (purchaseBindMapper.bindMaCodeByQrCode(purchaseDto) != 1) {
|
||||
if (null != purchaseDto.getQrCode()) {
|
||||
if (1 != purchaseBindMapper.bindMaCodeByQrCode(purchaseDto)) {
|
||||
return AjaxResult.error(1115,"绑定maCode时SQL执行失败!");
|
||||
}
|
||||
} else {
|
||||
if (dto.getTypeId() != null) {
|
||||
if (null != dto.getTypeId()) {
|
||||
purchaseDto.setTypeId(dto.getTypeId());
|
||||
}
|
||||
purchaseBindMapper.insert(purchaseDto);
|
||||
}
|
||||
if (purchaseStorageMapper.insertMachine(purchaseDto) != 1) {
|
||||
if (1 != purchaseStorageMapper.insertMachine(purchaseDto)) {
|
||||
return AjaxResult.error(1116,"插入maMachine时SQL执行失败!");
|
||||
}
|
||||
}
|
||||
// 更新绑定数量,并刷新状态
|
||||
if (purchaseBindMapper.updateNum(dto, dto.getDtoList().size()) < 1) {
|
||||
if (1 > purchaseBindMapper.updateNum(dto, dto.getDtoList().size())) {
|
||||
return AjaxResult.error(1117,"更新绑定数量时SQL执行失败!");
|
||||
} else {
|
||||
purchaseBindMapper.updateStatusWhereNum(dto);
|
||||
}
|
||||
|
||||
//根据任务id和类型id查询状态
|
||||
List<PurchaseVo> voList = purchaseBindMapper.selectPurchaseCheckInfoById(dto);
|
||||
final List<PurchaseVo> voList = purchaseBindMapper.selectPurchaseCheckInfoById(dto);
|
||||
if (CollectionUtils.isNotEmpty(voList)) {
|
||||
for (PurchaseVo purchaseVo : voList) {
|
||||
if (purchaseVo.getBindNum().compareTo(purchaseVo.getCheckNum()) == 0) {
|
||||
for (final PurchaseVo purchaseVo : voList) {
|
||||
if (0 == purchaseVo.getBindNum().compareTo(purchaseVo.getCheckNum())) {
|
||||
purchaseBindMapper.updateStatusById(PurchaseTaskStatusEnum.TO_STORE.getStatus(), purchaseVo.getPurchaseId());
|
||||
} else if (purchaseVo.getBindNum().compareTo(purchaseVo.getCheckNum()) < 0) {
|
||||
} else if (0 > purchaseVo.getBindNum().compareTo(purchaseVo.getCheckNum())) {
|
||||
purchaseBindMapper.updateStatusById(PurchaseTaskStatusEnum.TO_BIND.getStatus(), purchaseVo.getPurchaseId());
|
||||
} else {
|
||||
// 抛出异常 执行回滚
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import javax.servlet.http.HttpServletResponse;
|
|||
import com.bonus.common.biz.annotation.StoreLog;
|
||||
import com.bonus.common.log.enums.OperaType;
|
||||
import com.bonus.material.back.domain.vo.MaCodeVo;
|
||||
import com.bonus.material.basic.domain.BmQrcodeInfo;
|
||||
import com.bonus.material.common.annotation.PreventRepeatSubmit;
|
||||
import io.swagger.annotations.Api;
|
||||
import io.swagger.annotations.ApiOperation;
|
||||
|
|
@ -134,6 +135,16 @@ public class RepairInputDetailsController extends BaseController {
|
|||
return repairInputDetailsService.warehouse(repairInputDetails);
|
||||
}
|
||||
|
||||
/**
|
||||
* 二维码出库:根据qrcode查询在库机具信息
|
||||
* @param bmQrcodeInfo
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/getInfoByQrcode")
|
||||
public AjaxResult getInfoByQrcode(BmQrcodeInfo bmQrcodeInfo) {
|
||||
return repairInputDetailsService.getInfoByQrcode(bmQrcodeInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询修试待入库机具编码
|
||||
* @param mdCodeVo
|
||||
|
|
|
|||
|
|
@ -20,6 +20,9 @@ public class RepairTask {
|
|||
@ApiModelProperty(value = "任务id")
|
||||
private Long taskId;
|
||||
|
||||
@ApiModelProperty(value = "前置任务id")
|
||||
private Long preTaskId;
|
||||
|
||||
@ApiModelProperty(value = "任务状态")
|
||||
private Integer taskStatus;
|
||||
|
||||
|
|
|
|||
|
|
@ -24,6 +24,9 @@ public class ScrapApplyDetailsVO {
|
|||
@Excel(name = "报废审核单号",sort = 1)
|
||||
private String scrapNum;
|
||||
|
||||
@ApiModelProperty(value = "维修任务单号")
|
||||
private String repairTaskCode;
|
||||
|
||||
/**
|
||||
* 单位名称
|
||||
*/
|
||||
|
|
|
|||
|
|
@ -4,6 +4,7 @@ import java.util.List;
|
|||
|
||||
import com.bonus.material.back.domain.vo.MaCodeVo;
|
||||
import com.bonus.common.biz.domain.repair.RepairInputDetails;
|
||||
import com.bonus.material.basic.domain.BmQrcodeInfo;
|
||||
import com.bonus.material.repair.domain.RepairInputInfo;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
|
||||
|
|
@ -122,4 +123,11 @@ public interface RepairInputDetailsMapper {
|
|||
* @return
|
||||
*/
|
||||
List<RepairInputDetails> selectRepairDetails(@Param("list") List<Long> taskIdList);
|
||||
|
||||
/**
|
||||
* 根据二维码查询详情
|
||||
* @param bmQrcodeInfo
|
||||
* @return
|
||||
*/
|
||||
List<RepairInputDetails> getInfoByQrcode(BmQrcodeInfo bmQrcodeInfo);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -5,6 +5,7 @@ import java.util.List;
|
|||
import com.bonus.common.core.web.domain.AjaxResult;
|
||||
import com.bonus.material.back.domain.vo.MaCodeVo;
|
||||
import com.bonus.common.biz.domain.repair.RepairInputDetails;
|
||||
import com.bonus.material.basic.domain.BmQrcodeInfo;
|
||||
import com.bonus.material.repair.domain.RepairInputInfo;
|
||||
|
||||
/**
|
||||
|
|
@ -82,4 +83,11 @@ public interface IRepairInputDetailsService {
|
|||
* @return
|
||||
*/
|
||||
AjaxResult reject(RepairInputDetails repairInputDetails);
|
||||
|
||||
/**
|
||||
* 根据二维码查询机具信息
|
||||
* @param bmQrcodeInfo
|
||||
* @return
|
||||
*/
|
||||
AjaxResult getInfoByQrcode(BmQrcodeInfo bmQrcodeInfo);
|
||||
}
|
||||
|
|
|
|||
|
|
@ -469,7 +469,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
|
|||
*/
|
||||
@Override
|
||||
public int outerAudit(@NotNull List<RepairAuditDetails> repairAuditDetails) {
|
||||
List<Long> taskIds = repairAuditDetails.stream()
|
||||
final List<Long> taskIds = repairAuditDetails.stream()
|
||||
.filter(Objects::nonNull)
|
||||
.map(RepairAuditDetails::getTaskId)
|
||||
.filter(Objects::nonNull)
|
||||
|
|
@ -477,38 +477,41 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
|
|||
if (taskIds.isEmpty()) {
|
||||
return 0;
|
||||
}
|
||||
List<RepairAuditDetails> repairAuditDetailsByQuery = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(taskIds);
|
||||
final List<RepairAuditDetails> repairAuditDetailsByQuery = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(taskIds);
|
||||
if (CollectionUtils.isEmpty(repairAuditDetailsByQuery)) {
|
||||
return 0;
|
||||
}
|
||||
|
||||
String status = repairAuditDetails.get(0).getStatus(); // 1通过 2驳回
|
||||
// 1:通过 2:驳回 0:未处理
|
||||
final String status = repairAuditDetails.get(0).getStatus();
|
||||
if ("1".equals(status)) {
|
||||
for (RepairAuditDetails repairAuditDetail : repairAuditDetails) {
|
||||
for (final RepairAuditDetails repairAuditDetail : repairAuditDetails) {
|
||||
// 删除repair_input_details 维修入库明细?
|
||||
repairInputDetailsMapper.deleteRepairInputDetailsByTaskId(repairAuditDetail.getTaskId());
|
||||
// 查询协议ID
|
||||
Long agreementId = taskAgreementMapper.selectAgreementIdByTaskId(repairAuditDetail.getTaskId());
|
||||
List<Long> taskIdList = new ArrayList<>();
|
||||
taskIdList.add(repairAuditDetail.getTaskId());
|
||||
List<RepairAuditDetails> repairAuditDetailList = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(taskIdList);
|
||||
// 查询维修审核明细
|
||||
final List<RepairAuditDetails> repairAuditDetailList = repairAuditDetailsMapper.selectRepairAuditDetailsByTaskIds(Collections.singletonList(repairAuditDetail.getTaskId()));
|
||||
batchInsertRepairInputDetails(repairAuditDetailList, agreementId);
|
||||
taskMapper.updateTaskStatus(String.valueOf(repairAuditDetail.getTaskId()), RepairTaskStatusEnum.TASK_STATUS_REVIEW.getStatus());
|
||||
}
|
||||
} else if ("2".equals(status)) {
|
||||
for (RepairAuditDetails auditDetails : repairAuditDetails) {
|
||||
repairApplyDetailsMapper.updateRepairApplyDetailsAfterReject(
|
||||
ObjectUtils.defaultIfNull(auditDetails.getRepairedNum(),0).longValue(),
|
||||
ObjectUtils.defaultIfNull(auditDetails.getScrapNum(),0).longValue(), auditDetails.getRepairId());
|
||||
taskMapper.updateTaskStatus(String.valueOf(auditDetails.getTaskId()), RepairTaskStatusEnum.TASK_STATUS_NO_REVIEW.getStatus());
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
try {
|
||||
List<Long> ids = repairAuditDetailsByQuery.stream()
|
||||
final List<Long> ids = repairAuditDetailsByQuery.stream()
|
||||
.filter(Objects::nonNull)
|
||||
.map(RepairAuditDetails::getId)
|
||||
.filter(Objects::nonNull)
|
||||
.collect(Collectors.toList());
|
||||
return repairAuditDetailsMapper.updateRepairAuditDetailsBatch(ids, String.valueOf(status));
|
||||
} catch (Exception e) {
|
||||
} catch (final Exception e) {
|
||||
throw new ServiceException("错误信息描述");
|
||||
}
|
||||
}
|
||||
|
|
@ -529,13 +532,14 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
|
|||
if (ids.isEmpty()) {
|
||||
return 0;
|
||||
}
|
||||
String status = repairAuditDetails.get(0).getStatus(); // 1通过 2驳回
|
||||
final RepairAuditDetails auditDetails1 = repairAuditDetails.get(0);
|
||||
final String status = auditDetails1.getStatus(); // 1通过 2驳回
|
||||
if ("1".equals(status)) {
|
||||
//根据任务id查询协议id
|
||||
Long agreementId = taskAgreementMapper.selectAgreementIdByTaskId(repairAuditDetails.get(0).getTaskId());
|
||||
final Long agreementId = taskAgreementMapper.selectAgreementIdByTaskId(auditDetails1.getTaskId());
|
||||
batchInsertRepairInputDetails(repairAuditDetails, agreementId);
|
||||
} else if ("2".equals(status)) {
|
||||
for (RepairAuditDetails auditDetails : repairAuditDetails) {
|
||||
for (final RepairAuditDetails auditDetails : repairAuditDetails) {
|
||||
repairApplyDetailsMapper.updateRepairApplyDetailsAfterReject(
|
||||
ObjectUtils.defaultIfNull(auditDetails.getRepairedNum(),0).longValue(),
|
||||
ObjectUtils.defaultIfNull(auditDetails.getScrapNum(),0).longValue(), auditDetails.getRepairId());
|
||||
|
|
@ -544,7 +548,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
|
|||
|
||||
try {
|
||||
return repairAuditDetailsMapper.updateRepairAuditDetailsBatch(ids, status);
|
||||
} catch (Exception e) {
|
||||
} catch (final Exception e) {
|
||||
throw new ServiceException("错误信息描述");
|
||||
}
|
||||
}
|
||||
|
|
@ -557,23 +561,24 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
|
|||
|
||||
private void batchInsertRepairInputDetails(List<RepairAuditDetails> repairAuditDetailsByQuery, Long agreementId) {
|
||||
//插入任务表
|
||||
Long newTaskId = insertTt();
|
||||
final Long newTaskId = insertTt();
|
||||
insertTta(newTaskId, agreementId);
|
||||
List<RepairInputDetails> inputList = new ArrayList<>();
|
||||
for (RepairAuditDetails details : repairAuditDetailsByQuery) {
|
||||
final List<RepairInputDetails> inputList = new ArrayList<>();
|
||||
for (final RepairAuditDetails details : repairAuditDetailsByQuery) {
|
||||
//修改机具状态
|
||||
if (details.getMaId() != null) {
|
||||
if (null != details.getMaId()) {
|
||||
repairAuditDetailsMapper.updateMachine(details);
|
||||
}
|
||||
RepairInputDetails inputVo = new RepairInputDetails();
|
||||
final RepairInputDetails inputVo = new RepairInputDetails();
|
||||
BeanUtils.copyProperties(details, inputVo);
|
||||
inputVo.setRepairNum(details.getRepairedNum());
|
||||
inputVo.setAuditId(details.getId());
|
||||
inputVo.setStatus("0");
|
||||
inputVo.setTaskId(newTaskId);
|
||||
inputVo.setCreateBy(SecurityUtils.getUserId().toString());
|
||||
inputVo.setCreateBy(String.valueOf(SecurityUtils.getUserId()));
|
||||
inputList.add(inputVo);
|
||||
}
|
||||
// 插入维修入库明细
|
||||
repairInputDetailsMapper.batchInsertRepairInputDetails(inputList);
|
||||
}
|
||||
|
||||
|
|
@ -583,7 +588,7 @@ public class RepairAuditDetailsServiceImpl implements IRepairAuditDetailsService
|
|||
* @param agreementId
|
||||
*/
|
||||
private void insertTta(Long newTaskId, Long agreementId) {
|
||||
TmTaskAgreement tmTaskAgreement = new TmTaskAgreement(newTaskId, agreementId);
|
||||
final TmTaskAgreement tmTaskAgreement = new TmTaskAgreement(newTaskId, agreementId);
|
||||
tmTaskAgreement.setCreateTime(DateUtils.getNowDate());
|
||||
tmTaskAgreement.setCreateBy(SecurityUtils.getUsername());
|
||||
taskAgreementMapper.insertTmTaskAgreement(tmTaskAgreement);
|
||||
|
|
|
|||
|
|
@ -6,6 +6,7 @@ import java.util.Date;
|
|||
import java.util.List;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
import cn.hutool.core.collection.CollectionUtil;
|
||||
import com.alibaba.nacos.common.utils.CollectionUtils;
|
||||
import com.bonus.common.biz.constant.MaterialConstants;
|
||||
import com.bonus.common.biz.domain.lease.LeaseOutDetails;
|
||||
|
|
@ -17,6 +18,7 @@ import com.bonus.common.core.web.domain.AjaxResult;
|
|||
import com.bonus.common.security.utils.SecurityUtils;
|
||||
import com.bonus.material.back.domain.vo.MaCodeVo;
|
||||
import com.bonus.common.biz.domain.repair.RePairDto;
|
||||
import com.bonus.material.basic.domain.BmQrcodeInfo;
|
||||
import com.bonus.material.lease.mapper.LeaseOutDetailsMapper;
|
||||
import com.bonus.material.ma.domain.Type;
|
||||
import com.bonus.material.repair.domain.RepairInputInfo;
|
||||
|
|
@ -246,6 +248,23 @@ public class RepairInputDetailsServiceImpl implements IRepairInputDetailsService
|
|||
return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取二维码信息
|
||||
* @param bmQrcodeInfo
|
||||
* @return
|
||||
*/
|
||||
@Override
|
||||
public AjaxResult getInfoByQrcode(BmQrcodeInfo bmQrcodeInfo) {
|
||||
if (bmQrcodeInfo.getQrCode() == null) {
|
||||
return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), "二维码code不能为空");
|
||||
}
|
||||
List<RepairInputDetails> recordList = repairInputDetailsMapper.getInfoByQrcode(bmQrcodeInfo);
|
||||
if (CollectionUtil.isNotEmpty(recordList)) {
|
||||
return AjaxResult.success(recordList);
|
||||
}
|
||||
return AjaxResult.error(HttpCodeEnum.SYSTEM_ERROR.getCode(), "该二维码处于非修试待入库状态");
|
||||
}
|
||||
|
||||
/**
|
||||
* 外部驳回
|
||||
* @param repairInputDetails
|
||||
|
|
|
|||
|
|
@ -817,9 +817,9 @@ public class RepairServiceImpl implements RepairService {
|
|||
// 查询维修任务的详情表
|
||||
Long oldWxTaskId = task.getTaskId();
|
||||
List<RepairTaskDetails> detailsList = repairApplyDetailsMapper.getRepairDetailsWhichNotSent(oldWxTaskId);
|
||||
BigDecimal thisRepairedNum = detailsList.stream().map(RepairTaskDetails::getThisRepairedNum).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
BigDecimal thisScrapNum = detailsList.stream().map(RepairTaskDetails::getThisScrapNum).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
if (!CollectionUtils.isEmpty(detailsList) && (thisRepairedNum.add(thisScrapNum)).compareTo(BigDecimal.valueOf(0)) > 0) {
|
||||
BigDecimal thisRepairedNum = detailsList.stream().map(RepairTaskDetails::getRepairedNum).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
BigDecimal thisScrapNum = detailsList.stream().map(RepairTaskDetails::getScrapNum).reduce(BigDecimal.ZERO, BigDecimal::add);
|
||||
if (!CollectionUtils.isEmpty(detailsList) && (thisRepairedNum.add(thisScrapNum)).compareTo(BigDecimal.ZERO) > 0) {
|
||||
task.setCreateBy(loginUser.getUserid());
|
||||
Long agreementId = repairMapper.getAgreementId(task);
|
||||
// 新增tm_task表数据、修饰审核任务、状态是待审核
|
||||
|
|
@ -829,6 +829,8 @@ public class RepairServiceImpl implements RepairService {
|
|||
// 生成维修单号
|
||||
String code = genderWxTaskCode(thisMonthMaxOrder);
|
||||
task.setRepairCode(code);
|
||||
// 插入之前的维修任务id标记前置任务
|
||||
task.setPreTaskId(task.getTaskId());
|
||||
// 注意:此处将会生成新的 taskId (审核入库用的)
|
||||
repairMapper.addTask(task);
|
||||
// 新增协议任务表tm_task_agreement--关联修饰任务与协议
|
||||
|
|
@ -837,23 +839,28 @@ public class RepairServiceImpl implements RepairService {
|
|||
|
||||
// 新增审计记录
|
||||
for (RepairTaskDetails details : detailsList) {
|
||||
RepairApplyDetails repairApplyDetails = createRepairDetailsCope(details);
|
||||
repairApplyDetailsMapper.updateRepairApplyDetails(repairApplyDetails);
|
||||
details.setCreateBy(String.valueOf(loginUser.getUserid()));
|
||||
details.setTaskId(task.getTaskId());
|
||||
details.setRepairNum(details.getRepairNum());
|
||||
details.setRepairedNum(details.getRepairedNum());
|
||||
details.setScrapNum(details.getScrapNum());
|
||||
repairMapper.addAuditDetails(details);
|
||||
}
|
||||
}
|
||||
}
|
||||
return AjaxResult.success("执行完毕");
|
||||
}
|
||||
|
||||
private static RepairApplyDetails createRepairDetailsCope(RepairTaskDetails details) {
|
||||
RepairApplyDetails repairApplyDetails = new RepairApplyDetails();
|
||||
repairApplyDetails.setId(details.getId());
|
||||
repairApplyDetails.setRepairedNum( (details.getRepairedNum().add(details.getThisRepairedNum()) ));
|
||||
repairApplyDetails.setThisRepairedNum(BigDecimal.valueOf(0));
|
||||
repairApplyDetails.setScrapNum( (details.getScrapNum().add( details.getThisScrapNum())));
|
||||
repairApplyDetails.setThisScrapNum(BigDecimal.valueOf(0));
|
||||
repairApplyDetailsMapper.updateRepairApplyDetails(repairApplyDetails);
|
||||
details.setCreateBy(String.valueOf(loginUser.getUserid()));
|
||||
details.setTaskId(task.getTaskId());
|
||||
details.setRepairNum(details.getThisRepairedNum().add(details.getThisScrapNum()) );
|
||||
details.setRepairedNum(details.getThisRepairedNum());
|
||||
details.setScrapNum(details.getThisScrapNum());
|
||||
repairMapper.addAuditDetails(details);
|
||||
}
|
||||
}
|
||||
}
|
||||
return AjaxResult.success();
|
||||
return repairApplyDetails;
|
||||
}
|
||||
|
||||
/**
|
||||
|
|
|
|||
|
|
@ -242,7 +242,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
tt.`code` as inputCode,
|
||||
CASE
|
||||
WHEN tt.`code` LIKE 'XG%' THEN '新购入库'
|
||||
WHEN tt.`code` LIKE 'R%' THEN '修饰入库'
|
||||
WHEN tt.`code` LIKE 'R%' THEN '修试入库'
|
||||
WHEN tt.`code` LIKE 'PD%' THEN '盘点入库'
|
||||
ELSE '未知入库类型'
|
||||
END AS inputType,
|
||||
|
|
@ -265,7 +265,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
and (
|
||||
CASE
|
||||
WHEN tt.`code` LIKE 'XG%' THEN '新购入库'
|
||||
WHEN tt.`code` LIKE 'R%' THEN '修饰入库'
|
||||
WHEN tt.`code` LIKE 'R%' THEN '修试入库'
|
||||
WHEN tt.`code` LIKE 'PD%' THEN '盘点入库'
|
||||
ELSE '未知入库类型'
|
||||
END = #{inputType}
|
||||
|
|
|
|||
|
|
@ -382,4 +382,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
and ma_code is null
|
||||
and del_flag = '0'
|
||||
</update>
|
||||
|
||||
<select id="checkQrCodeIsBind" resultType="boolean">
|
||||
select count(1) > 0 from bm_qrcode_info where qr_code = #{qrCode} and is_bind = '1' and del_flag = '0'
|
||||
</select>
|
||||
</mapper>
|
||||
|
|
|
|||
|
|
@ -296,7 +296,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
<select id="selectRepairQuestList" resultType="com.bonus.material.repair.domain.vo.ScrapApplyDetailsVO">
|
||||
SELECT DISTINCT
|
||||
tk.task_id taskId,
|
||||
tk.CODE scrapNum,
|
||||
tk.CODE scrapNum,tt.code as repairTaskCode,
|
||||
tk.task_status taskStatus,
|
||||
bui.unit_name unitName,
|
||||
bpl.pro_name projectName,
|
||||
|
|
@ -304,9 +304,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
tk.create_time createTime,
|
||||
tk.remark,
|
||||
tk.CODE repairNum
|
||||
-- su1.user_name as teamName
|
||||
FROM
|
||||
tm_task tk
|
||||
LEFT JOIN tm_task tt on tk.pre_task_id = tt.task_id
|
||||
LEFT JOIN tm_task_agreement tta ON tk.task_id = tta.task_id
|
||||
LEFT JOIN bm_agreement_info bai ON tta.agreement_id = bai.agreement_id
|
||||
LEFT JOIN bm_project bpl ON bai.project_id = bpl.pro_id
|
||||
|
|
@ -316,7 +316,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id
|
||||
LEFT JOIN sys_user su ON su.user_id = tk.create_by
|
||||
LEFT JOIN ma_type_repair mtr ON mtr.type_id = rad.type_id
|
||||
-- LEFT JOIN sys_user su1 ON su1.user_id = mtr.user_id
|
||||
WHERE
|
||||
tk.task_type = #{taskType}
|
||||
<if test="keyword != null and keyword != ''">
|
||||
|
|
@ -510,7 +509,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</update>
|
||||
|
||||
<update id="updateMachine">
|
||||
UPDATE ma_machine SET ma_status = '5' WHERE ma_id = #{maId}
|
||||
UPDATE ma_machine SET ma_status = 5 WHERE ma_id = #{maId}
|
||||
</update>
|
||||
|
||||
<select id="getPartDetailsByTaskId" resultType="com.bonus.material.repair.domain.RepairPart">
|
||||
|
|
|
|||
|
|
@ -190,6 +190,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
LEFT JOIN repair_apply_details rad ON rid.repair_id = rad.id
|
||||
WHERE
|
||||
rid.task_id = #{taskId}
|
||||
LIMIT 1
|
||||
</select>
|
||||
|
||||
<select id="selectRepairDetails" resultType="com.bonus.common.biz.domain.repair.RepairInputDetails">
|
||||
|
|
@ -221,6 +222,40 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
mt.type_id
|
||||
</select>
|
||||
|
||||
<select id="getInfoByQrcode" resultType="com.bonus.common.biz.domain.repair.RepairInputDetails">
|
||||
SELECT
|
||||
mt1.type_name as typeName,
|
||||
mt.type_name as typeModelName,
|
||||
mm.ma_id as maId,
|
||||
mm.ma_code as maCode,
|
||||
mm.type_id as typeId,
|
||||
mm.ma_status as maStatus,
|
||||
mm.qr_code as qrCode,
|
||||
case when mm.ma_status = '5' then '修试后待入库'
|
||||
else ''
|
||||
end as statusName,
|
||||
mt.manage_type as manageType,
|
||||
rid.task_id as taskId,
|
||||
bp.pro_name as backPro,
|
||||
bu.unit_name as backUnit,
|
||||
tt.CODE AS inputCode,
|
||||
tt1.CODE AS repairCode,
|
||||
bai.agreement_id as agreementId
|
||||
FROM ma_machine mm
|
||||
LEFT JOIN ma_type mt ON mm.type_id = mt.type_id AND mt.del_flag = '0'
|
||||
LEFT JOIN ma_type mt1 ON mt.parent_id = mt1.type_id AND mt1.del_flag = '0'
|
||||
LEFT JOIN repair_input_details rid ON mm.ma_id = rid.ma_id
|
||||
LEFT JOIN tm_task_agreement tta ON rid.task_id = tta.task_id
|
||||
LEFT JOIN bm_agreement_info bai ON tta.agreement_id = bai.agreement_id
|
||||
LEFT JOIN bm_project bp ON bai.project_id = bp.pro_id
|
||||
LEFT JOIN bm_unit bu ON bai.unit_id = bu.unit_id
|
||||
LEFT JOIN tm_task tt on rid.task_id = tt.task_id
|
||||
LEFT JOIN repair_apply_details rad ON rad.id = rid.repair_id
|
||||
LEFT JOIN tm_task tt1 on rad.task_id = tt1.task_id
|
||||
WHERE
|
||||
mm.ma_status = '5' and mm.qr_code = #{qrCode}
|
||||
</select>
|
||||
|
||||
<insert id="batchInsertRepairInputDetails" parameterType="com.bonus.common.biz.domain.repair.RepairInputDetails">
|
||||
insert into repair_input_details
|
||||
(task_id, audit_id, repair_id, ma_id, type_id, repair_num, input_num, create_by, create_time,
|
||||
|
|
|
|||
|
|
@ -12,8 +12,8 @@
|
|||
</insert>
|
||||
|
||||
<insert id="addTask" useGeneratedKeys="true" keyProperty="taskId">
|
||||
insert into tm_task (task_status,task_type,code,create_by,create_time,company_id)
|
||||
values (#{taskStatus},#{taskType},#{repairCode},#{createBy},now(),#{companyId});
|
||||
insert into tm_task (pre_task_id,task_status,task_type,code,create_by,create_time,company_id)
|
||||
values (#{preTaskId},#{taskStatus},#{taskType},#{repairCode},#{createBy},now(),#{companyId});
|
||||
</insert>
|
||||
|
||||
<insert id="createAgreementTask">
|
||||
|
|
|
|||
|
|
@ -102,8 +102,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
</select>
|
||||
|
||||
<select id="selectAgreementIdByTaskId" resultType="java.lang.Long">
|
||||
select agreement_id
|
||||
from tm_task_agreement
|
||||
where task_id = #{taskId}
|
||||
select agreement_id from tm_task_agreement where task_id = #{taskId}
|
||||
</select>
|
||||
</mapper>
|
||||
Loading…
Reference in New Issue