Merge remote-tracking branch 'origin/master'
This commit is contained in:
commit
99a9422d8e
|
|
@ -158,10 +158,10 @@ public interface BackApplyInfoMapper {
|
|||
|
||||
/**
|
||||
* 查询详情
|
||||
* @param id
|
||||
* @param backApplyInfo
|
||||
* @return
|
||||
*/
|
||||
List<BackApplyInfo> selectBackDetails(Long id);
|
||||
List<BackApplyInfo> selectBackDetails(BackApplyInfo backApplyInfo);
|
||||
|
||||
/**
|
||||
* 更新任务状态
|
||||
|
|
|
|||
|
|
@ -556,7 +556,7 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
|
|||
@Transactional(rollbackFor = Exception.class)
|
||||
public AjaxResult submitBackApply(BackApplyInfo backApplyInfo) {
|
||||
// 根据传入的id查询退料申请信息
|
||||
List<BackApplyInfo> applyInfoList = backApplyInfoMapper.selectBackDetails(backApplyInfo.getId());
|
||||
List<BackApplyInfo> applyInfoList = backApplyInfoMapper.selectBackDetails(backApplyInfo);
|
||||
// 设置更新信息
|
||||
backApplyInfo.setUpdateBy(SecurityUtils.getUsername());
|
||||
backApplyInfo.setUpdateTime(DateUtils.getNowDate());
|
||||
|
|
@ -564,22 +564,29 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
|
|||
// 更新任务表及退料申请表状态
|
||||
int result = updateTaskAndBackInfo(backApplyInfo);
|
||||
if (result > 0 && CollectionUtils.isNotEmpty(applyInfoList)) {
|
||||
for (BackApplyInfo applyInfo : applyInfoList) {
|
||||
// 获取applyInfoList的typeId并生成集合
|
||||
List<String> typeIdList = applyInfoList.stream()
|
||||
.map(BackApplyInfo::getTypeId).distinct()
|
||||
.collect(Collectors.toList());
|
||||
// 插入任务表
|
||||
Long newTaskId = insertTt(SecurityUtils.getUsername());
|
||||
// 插入协议任务表
|
||||
result += insertTta(newTaskId, applyInfoList);
|
||||
for (String typeId : typeIdList) {
|
||||
// 查询待维修的机具设备
|
||||
backApplyInfo.setTypeId(applyInfo.getTypeId());
|
||||
backApplyInfo.setTypeId(typeId);
|
||||
List<BackApplyInfo> wxList = backApplyInfoMapper.getWxList(backApplyInfo);
|
||||
if (CollectionUtils.isNotEmpty(wxList)) {
|
||||
// 插入任务表
|
||||
Long newTaskId = insertTt(SecurityUtils.getUsername());
|
||||
// 插入协议任务表
|
||||
result += insertTta(newTaskId, wxList);
|
||||
// 插入维修记录表
|
||||
result += insertRad(newTaskId, wxList);
|
||||
// 更新结算表
|
||||
int res = updateSlt4Bean(backApplyInfo, applyInfo);
|
||||
// 检查机具是否领料
|
||||
if (res == 0) {
|
||||
throw new RuntimeException("该机具未被领料使用");
|
||||
List<BackApplyInfo> allList = backApplyInfoMapper.selectBackDetails(backApplyInfo);
|
||||
if (CollectionUtils.isNotEmpty(allList)) {
|
||||
int res = updateSlt4Bean(backApplyInfo, allList);
|
||||
// 检查机具是否领料
|
||||
if (res == 0) {
|
||||
throw new RuntimeException("该机具未被领料使用");
|
||||
}
|
||||
}
|
||||
// 完成退料部分,更新 back_check_details
|
||||
finishBackCheckDetails(backApplyInfo);
|
||||
|
|
@ -620,30 +627,32 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
|
|||
/**
|
||||
* 更新结算表
|
||||
* @param record
|
||||
* @param bean
|
||||
* @param allList
|
||||
* @return
|
||||
*/
|
||||
private int updateSlt4Bean(BackApplyInfo record, BackApplyInfo bean) {
|
||||
List<SltAgreementInfo> infoList = backApplyInfoMapper.getStlInfo(bean);
|
||||
if (infoList.size() > 0) {
|
||||
Integer backNum = bean.getBackNum();
|
||||
for (SltAgreementInfo info : infoList) {
|
||||
Integer num = info.getBackNum();
|
||||
if (backNum.equals(num)) {
|
||||
backApplyInfoMapper.updateStlInfo(info, record);
|
||||
break;
|
||||
} else if (backNum > num) {
|
||||
backNum = backNum - num;
|
||||
backApplyInfoMapper.updateStlInfo(info, record);
|
||||
} else {
|
||||
Integer many = num - backNum;
|
||||
backApplyInfoMapper.updateStlInfoTwo(info, record, backNum);
|
||||
backApplyInfoMapper.insStlInfoTwo(info, many);
|
||||
break;
|
||||
private int updateSlt4Bean(BackApplyInfo record, List<BackApplyInfo> allList) {
|
||||
for (BackApplyInfo bean : allList) {
|
||||
List<SltAgreementInfo> infoList = backApplyInfoMapper.getStlInfo(bean);
|
||||
if (infoList.size() > 0) {
|
||||
Integer backNum = bean.getBackNum();
|
||||
for (SltAgreementInfo info : infoList) {
|
||||
Integer num = info.getBackNum();
|
||||
if (backNum.equals(num)) {
|
||||
backApplyInfoMapper.updateStlInfo(info, record);
|
||||
break;
|
||||
} else if (backNum > num) {
|
||||
backNum = backNum - num;
|
||||
backApplyInfoMapper.updateStlInfo(info, record);
|
||||
} else {
|
||||
Integer many = num - backNum;
|
||||
backApplyInfoMapper.updateStlInfoTwo(info, record, backNum);
|
||||
backApplyInfoMapper.insStlInfoTwo(info, many);
|
||||
break;
|
||||
}
|
||||
}
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
} else {
|
||||
return 0;
|
||||
}
|
||||
return 1;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -213,6 +213,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
|||
LEFT JOIN tm_task_agreement tta ON tta.task_id = bai.task_id
|
||||
WHERE
|
||||
bcd.parent_id = #{id} and (bcd.is_finished is null or bcd.is_finished != 1)
|
||||
<if test="typeId != '' and typeId != null">
|
||||
and bcd.type_id = #{typeId}
|
||||
</if>
|
||||
GROUP By bcd.type_id,bcd.ma_id
|
||||
</select>
|
||||
|
||||
|
|
|
|||
Loading…
Reference in New Issue