Merge remote-tracking branch 'origin/master'

This commit is contained in:
jjLv 2024-11-18 08:58:11 +08:00
commit 7cc9775282
7 changed files with 61 additions and 41 deletions

View File

@ -43,6 +43,7 @@ public class Machine extends BaseEntity
/** 机具状态(数据字典) */ /** 机具状态(数据字典) */
@Excel(name = "机具状态") @Excel(name = "机具状态")
@ApiModelProperty(value = "机具状态")
private String maStatus; private String maStatus;
/** 二维码 */ /** 二维码 */

View File

@ -9,9 +9,9 @@ import com.bonus.common.log.enums.OperaType;
import com.bonus.material.common.annotation.PreventRepeatSubmit; import com.bonus.material.common.annotation.PreventRepeatSubmit;
import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.PurchaseCheckDetails;
import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto;
import com.bonus.material.purchase.domain.dto.PurchaseDto;
import com.bonus.material.purchase.domain.dto.PurchaseQueryDto; import com.bonus.material.purchase.domain.dto.PurchaseQueryDto;
import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo; import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo;
import com.bonus.material.purchase.domain.vo.PurchaseVerifyVo;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
@ -99,8 +99,8 @@ public class PurchaseCheckInfoController extends BaseController {
//@RequiresPermissions("purchase:info:edit") //@RequiresPermissions("purchase:info:edit")
@SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->外层批量验收API") @SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->外层批量验收API")
@PutMapping("/outerVerify") @PutMapping("/outerVerify")
public AjaxResult outerVerify(@RequestBody PurchaseDto purchaseDto) { public AjaxResult outerVerify(@RequestBody PurchaseVerifyVo purchaseVerifyVo) {
return purchaseCheckInfoService.outVerify(purchaseDto); return purchaseCheckInfoService.outVerify(purchaseVerifyVo);
} }
/** /**
@ -111,8 +111,8 @@ public class PurchaseCheckInfoController extends BaseController {
//@RequiresPermissions("purchase:info:edit") //@RequiresPermissions("purchase:info:edit")
@SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->内层批量验收API") @SysLog(title = "新购验收任务", businessType = OperaType.UPDATE, module = "物资新购->内层批量验收API")
@PutMapping("/innerVerify") @PutMapping("/innerVerify")
public AjaxResult innerVerify(@RequestBody List<PurchaseCheckDetails> purchaseCheckDetailsList) { public AjaxResult innerVerify(@RequestBody PurchaseVerifyVo purchaseVerifyVo) {
return purchaseCheckInfoService.innerVerify(purchaseCheckDetailsList); return purchaseCheckInfoService.innerVerify(purchaseVerifyVo);
} }

View File

@ -0,0 +1,25 @@
package com.bonus.material.purchase.domain.vo;
import com.bonus.material.purchase.domain.PurchaseCheckDetails;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class PurchaseVerifyVo {
@ApiModelProperty(value = "id列表")
private List<Long> taskIds;
@ApiModelProperty(value = "验收是否通过")
private Boolean verifyPass;
/** 验收结论 */
//@Excel(name = "验收结论")
@ApiModelProperty(value = "验收结论")
private String checkResult;
@ApiModelProperty(value = "新购物资列表")
List<PurchaseCheckDetails> purchaseCheckDetailsList;
}

View File

@ -6,9 +6,9 @@ import com.bonus.common.core.web.domain.AjaxResult;
import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.PurchaseCheckDetails;
import com.bonus.material.purchase.domain.PurchaseCheckInfo; import com.bonus.material.purchase.domain.PurchaseCheckInfo;
import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto;
import com.bonus.material.purchase.domain.dto.PurchaseDto;
import com.bonus.material.purchase.domain.dto.PurchaseQueryDto; import com.bonus.material.purchase.domain.dto.PurchaseQueryDto;
import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo; import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo;
import com.bonus.material.purchase.domain.vo.PurchaseVerifyVo;
/** /**
* 新购验收任务Service接口 * 新购验收任务Service接口
@ -48,9 +48,9 @@ public interface IPurchaseCheckInfoService {
// */ // */
// AjaxResult acceptance(List<Long> taskId); // AjaxResult acceptance(List<Long> taskId);
AjaxResult outVerify(PurchaseDto purchaseDto); AjaxResult outVerify(PurchaseVerifyVo purchaseVerifyVo);
AjaxResult innerVerify(List<PurchaseCheckDetails> purchaseCheckDetailsList); AjaxResult innerVerify(PurchaseVerifyVo purchaseVerifyVo);
/** /**
* 根据任务id查询验收单 * 根据任务id查询验收单

View File

@ -19,12 +19,13 @@ import com.bonus.material.basic.mapper.BmFileInfoMapper;
import com.bonus.material.basic.service.IBmConfigService; import com.bonus.material.basic.service.IBmConfigService;
import com.bonus.material.purchase.domain.PurchaseCheckDetails; import com.bonus.material.purchase.domain.PurchaseCheckDetails;
import com.bonus.material.purchase.domain.dto.PurchaseCheckDto; import com.bonus.material.purchase.domain.dto.PurchaseCheckDto;
import com.bonus.material.purchase.domain.dto.PurchaseDto;
import com.bonus.material.purchase.domain.dto.PurchaseQueryDto; import com.bonus.material.purchase.domain.dto.PurchaseQueryDto;
import com.bonus.material.purchase.domain.vo.PurchaseVerifyVo;
import com.bonus.material.purchase.mapper.PurchaseCheckDetailsMapper; import com.bonus.material.purchase.mapper.PurchaseCheckDetailsMapper;
import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo; import com.bonus.material.purchase.domain.vo.PurchaseCheckFormVo;
import com.bonus.material.task.domain.TmTask; import com.bonus.material.task.domain.TmTask;
import com.bonus.material.task.mapper.TmTaskMapper; import com.bonus.material.task.mapper.TmTaskMapper;
import org.apache.commons.lang3.BooleanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.dao.DataAccessException; import org.springframework.dao.DataAccessException;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
@ -235,12 +236,11 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
@Override @Override
@Transactional @Transactional
public AjaxResult outVerify(PurchaseDto purchaseDto) { public AjaxResult outVerify(PurchaseVerifyVo purchaseVerifyVo) {
try { try {
AjaxResult result = new AjaxResult(); purchaseVerifyVo.getTaskIds().removeIf(Objects::isNull);
purchaseDto.getTaskIds().removeIf(Objects::isNull);
int updateCount = 0; int updateCount = 0;
for (Long taskId : purchaseDto.getTaskIds()) { for (Long taskId : purchaseVerifyVo.getTaskIds()) {
PurchaseQueryDto purchaseQueryDto = new PurchaseQueryDto(); PurchaseQueryDto purchaseQueryDto = new PurchaseQueryDto();
purchaseQueryDto.setTaskId(taskId); purchaseQueryDto.setTaskId(taskId);
List<PurchaseCheckDetails> purchaseCheckDetails = purchaseCheckDetailsMapper.selectPurchaseCheckDetailsListByQueryDto(purchaseQueryDto); List<PurchaseCheckDetails> purchaseCheckDetails = purchaseCheckDetailsMapper.selectPurchaseCheckDetailsListByQueryDto(purchaseQueryDto);
@ -258,14 +258,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
updateCount += purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details); updateCount += purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details);
} }
} }
// // 维护tm_task的状态但因为新购任务中的物资可以部分流转所以汇总的状态失去意义不再维护 // 注意 维护tm_task的状态但因为新购任务中的物资可以部分流转所以汇总的状态失去意义不再维护
// if (!CollectionUtils.isEmpty(codeList) && codeList.size() > 0) {
// int taskCount = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_BIND.getStatus());
// result = taskCount > 0 ? AjaxResult.success("task绑定状态更改成功") : AjaxResult.error("task绑定状态更改失败");
// } if (!CollectionUtils.isEmpty(numList) && numList.size() > 0) {
// int taskCount = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_STORE.getStatus());
// result = taskCount > 0 ? AjaxResult.success("task待入库状态更改成功") : AjaxResult.error("task待入库状态更改失败");
// }
} }
return updateCount > 0 ? AjaxResult.success("验证成功") : AjaxResult.error("无验证信息"); return updateCount > 0 ? AjaxResult.success("验证成功") : AjaxResult.error("无验证信息");
} catch (Exception e) { } catch (Exception e) {
@ -275,13 +268,14 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
@Override @Override
@Transactional @Transactional
public AjaxResult innerVerify(List<PurchaseCheckDetails> purchaseCheckDetailsList) { public AjaxResult innerVerify(PurchaseVerifyVo purchaseVerifyVo) {
try { try {
AjaxResult result = new AjaxResult(); AjaxResult result = new AjaxResult();
if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) { if (!CollectionUtils.isEmpty(purchaseVerifyVo.getPurchaseCheckDetailsList())) {
Long taskId = purchaseCheckDetailsList.get(0).getTaskId(); //Long taskId = purchaseVerifyVo.getPurchaseCheckDetailsList().get(0).getTaskId();
//Integer status = purchaseCheckDetailsList.get(0).getStatus(); //Integer status = purchaseCheckDetailsList.get(0).getStatus();
for (PurchaseCheckDetails details : purchaseCheckDetailsList) { if (BooleanUtils.isTrue(purchaseVerifyVo.getVerifyPass())) {
for (PurchaseCheckDetails details : purchaseVerifyVo.getPurchaseCheckDetailsList()) {
if (MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(details.getManageType())) { if (MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(details.getManageType())) {
details.setStatus(PurchaseTaskStatusEnum.TO_BIND.getStatus()); details.setStatus(PurchaseTaskStatusEnum.TO_BIND.getStatus());
} else if (MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(details.getManageType())) { } else if (MaTypeManageTypeEnum.NUMBER_DEVICE.getTypeId().equals(details.getManageType())) {
@ -289,16 +283,13 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
} }
result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证成功") : AjaxResult.error("details无验证信息"); result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证成功") : AjaxResult.error("details无验证信息");
} }
// // 维护tm_task的状态但因为新购任务中的物资可以部分流转所以汇总的状态失去意义不再维护 } else {
// int count = purchaseCheckDetailsMapper.getCountOfNoneThisStatus(taskId, PurchaseTaskStatusEnum.TO_CHECK.getStatus()); for (PurchaseCheckDetails details : purchaseVerifyVo.getPurchaseCheckDetailsList()) {
// if (count == 0) { details.setStatus(PurchaseTaskStatusEnum.TO_NOTICE.getStatus());
// int toCheckCount = purchaseCheckDetailsMapper.getCountOfNoneThisStatus(taskId, PurchaseTaskStatusEnum.TO_BIND.getStatus()); result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证驳回成功") : AjaxResult.error("details无验证信息");
// if (toCheckCount == 0) { }
// result = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_STORE.getStatus()) > 0 ? AjaxResult.success("task待入库状态更改成功") : AjaxResult.error("task待入库状态更改失败"); }
// } else { // 注意 维护tm_task的状态但因为新购任务中的物资可以部分流转所以汇总的状态失去意义不再维护
// result = tmTaskMapper.updateTmTaskStatusByTaskId(taskId, PurchaseTaskStatusEnum.TO_BIND.getStatus()) > 0 ? AjaxResult.success("task绑定状态更改成功") : AjaxResult.error("task绑定状态更改失败");
// }
// }
} }
return result; return result;
} catch (Exception e) { } catch (Exception e) {

View File

@ -193,7 +193,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
LEFT JOIN slt_agreement_info sai ON mt.type_id = sai.type_id LEFT JOIN slt_agreement_info sai ON mt.type_id = sai.type_id
WHERE WHERE
EXISTS ( SELECT 1 FROM slt_agreement_info sai2 WHERE sai2.type_id = mt.type_id AND sai2.agreement_id = #{agreementId} EXISTS ( SELECT 1 FROM slt_agreement_info sai2 WHERE sai2.type_id = mt.type_id AND sai2.agreement_id = #{agreementId}
AND sai2.STATUS = '0' and sai.lease_type = 0 and sai2.num > 0) AND sai2.STATUS = '0' and IFNULL(sai.lease_type,0) = 0 and sai2.num > 0)
GROUP BY GROUP BY
mt.type_id mt.type_id
</select> </select>

View File

@ -95,6 +95,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="typeId != null"> <if test="typeId != null">
and ma.type_id = #{typeId} and ma.type_id = #{typeId}
</if> </if>
<if test="maStatus != null and maStatus != ''">
and ma.ma_status = #{maStatus}
</if>
<if test="materialType != null and materialType != ''"> <if test="materialType != null and materialType != ''">
and mt3.type_name like concat('%', #{materialType}, '%') and mt3.type_name like concat('%', #{materialType}, '%')
</if> </if>