接口优化

This commit is contained in:
mashuai 2024-11-19 17:03:01 +08:00
parent 1658a72fd0
commit 41b7547bae
13 changed files with 188 additions and 65 deletions

View File

@ -100,6 +100,24 @@ public class BackApplyInfoController extends BaseController {
}
}
/**
* 新增退料任务app
* @param dto
* @return
*/
@ApiOperation(value = "新增退料任务app")
@PreventRepeatSubmit
@RequiresPermissions("back:info:add")
@SysLog(title = "退料任务", businessType = OperaType.INSERT, logType = 1,module = "仓储管理->新增退料任务app")
@PostMapping("/insertApp")
public AjaxResult insertApp(@RequestBody BackApplyRequestVo dto) {
try {
return backApplyInfoService.insertApp(dto);
} catch (Exception e) {
return error("系统错误, " + e.getMessage());
}
}
/**
* 修改退料任务
*/

View File

@ -56,14 +56,6 @@ public interface BackApplyInfoMapper {
*/
public int deleteBackApplyInfoById(Long id);
/**
* 批量删除退料任务
*
* @param ids 需要删除的数据主键集合
* @return 结果
*/
public int deleteBackApplyInfoByIds(Long[] ids);
/**
* 查询任务编号
* @param date
@ -121,20 +113,6 @@ public interface BackApplyInfoMapper {
*/
int insertCheckDetails(BackApplyDetails details);
/**
* 删除任务
* @param taskId
* @return
*/
int deleteTask(Long taskId);
/**
* 删除任务关联协议
* @param taskId
* @return
*/
int deleteTaskAgreement(Long taskId);
/**
* 删除退料主表
* @param id

View File

@ -45,14 +45,6 @@ public interface IBackApplyInfoService {
*/
public AjaxResult updateBackApplyInfo(BackApplyRequestVo dto);
/**
* 批量删除退料任务
*
* @param ids 需要删除的退料任务主键集合
* @return 结果
*/
public int deleteBackApplyInfoByIds(Long[] ids);
/**
* 删除退料任务信息
*
@ -81,4 +73,11 @@ public interface IBackApplyInfoService {
* @return
*/
AjaxResult editPrintStatus(BackApplyInfo dto);
/**
* 新增退料任务app
* @param dto
* @return
*/
AjaxResult insertApp(BackApplyRequestVo dto);
}

View File

@ -19,6 +19,8 @@ import com.bonus.material.back.domain.vo.MaCodeVo;
import com.bonus.material.basic.domain.BmFileInfo;
import com.bonus.material.basic.mapper.BmFileInfoMapper;
import com.bonus.material.settlement.domain.SltAgreementInfo;
import com.bonus.material.task.mapper.TmTaskAgreementMapper;
import com.bonus.material.task.mapper.TmTaskMapper;
import lombok.extern.slf4j.Slf4j;
import org.springframework.stereotype.Service;
import com.bonus.material.back.mapper.BackApplyInfoMapper;
@ -44,6 +46,12 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
@Resource
private BmFileInfoMapper bmFileInfoMapper;
@Resource
private TmTaskMapper taskMapper;
@Resource
private TmTaskAgreementMapper taskAgreementMapper;
/**
* 查询退料任务
*
@ -212,7 +220,7 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
if (StringUtils.isNotBlank(dto.getBackApplyInfo().getPhone()) && !PhoneUtil.isMobile(dto.getBackApplyInfo().getPhone())) {
return AjaxResult.error("手机号格式不正确,请重新填写!");
}
//对提交的退料详情树木进行校验
//对提交的退料详情数目进行校验
for (BackApplyDetails backApplyDetails : dto.getBackApplyDetailsList()) {
if (backApplyDetails.getNum() != null && backApplyDetails.getPreNum() != null) {
if (backApplyDetails.getNum() < backApplyDetails.getPreNum()) {
@ -403,8 +411,8 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
List<MaCodeVo> maCodeList = backApplyInfoMapper.selectByCode(id);
// 删除相关任务信息
int result = 0;
result += backApplyInfoMapper.deleteTask(backApplyInfo.getTaskId());
result += backApplyInfoMapper.deleteTaskAgreement(backApplyInfo.getTaskId());
result += taskMapper.deleteTmTaskByTaskId(backApplyInfo.getTaskId());
result += taskAgreementMapper.deleteTmTaskAgreementByTaskId(backApplyInfo.getTaskId());
result += backApplyInfoMapper.deleteBackApplyDetails(backApplyInfo.getId());
result += backApplyInfoMapper.deleteCheckDetails(backApplyInfo.getId());
// 删除退料详情附件
@ -440,17 +448,6 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
return AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg());
}
/**
* 批量删除退料任务
*
* @param ids 需要删除的退料任务主键
* @return 结果
*/
@Override
public int deleteBackApplyInfoByIds(Long[] ids) {
return backApplyInfoMapper.deleteBackApplyInfoByIds(ids);
}
/**
* 删除退料任务信息
*
@ -488,8 +485,8 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
private int deleteTaskInfo(BackApplyInfo backApplyInfo) {
// 删除任务任务协议及相关信息
int result = 0;
result += backApplyInfoMapper.deleteTask(backApplyInfo.getTaskId());
result += backApplyInfoMapper.deleteTaskAgreement(backApplyInfo.getTaskId());
result += taskMapper.deleteTmTaskByTaskId(backApplyInfo.getTaskId());
result += taskAgreementMapper.deleteTmTaskAgreementByTaskId(backApplyInfo.getTaskId());
result += backApplyInfoMapper.deleteBackApply(backApplyInfo.getId());
result += backApplyInfoMapper.deleteBackApplyDetails(backApplyInfo.getId());
result += backApplyInfoMapper.deleteCheckDetails(backApplyInfo.getId());
@ -627,6 +624,16 @@ public class BackApplyInfoServiceImpl implements IBackApplyInfoService {
return result > 0 ? AjaxResult.success() : AjaxResult.error(HttpCodeEnum.FAIL.getCode(), HttpCodeEnum.FAIL.getMsg());
}
/**
* 新增退料申请app
* @param dto
* @return
*/
@Override
public AjaxResult insertApp(BackApplyRequestVo dto) {
return null;
}
/**
* 更新任务表及退料申请表状态
* @param backApplyInfo

View File

@ -25,6 +25,11 @@ public class BmProject extends BaseEntity
{
private static final long serialVersionUID = 1L;
/**
* 是否app (app采有非下拉树)
*/
private Boolean isApp;
/** 主键ID */
private Long proId;

View File

@ -23,6 +23,10 @@ import javax.validation.constraints.Size;
public class BmUnit extends BaseEntity
{
private static final long serialVersionUID = 1L;
/**
* 是否app (app采有非下拉树)
*/
private Boolean isApp;
/** 类型ID */
private Long unitId;

View File

@ -137,4 +137,18 @@ public interface SelectMapper {
* @return
*/
List<TypeTreeNode> getUseTypeTreeL21(List<Long> list);
/**
* 获取单位下拉选app
* @param bmUnit
* @return
*/
List<BmUnit> getUnitListApp(BmUnit bmUnit);
/**
* 获取工程下拉选app
* @param bmProject
* @return
*/
List<BmProject> getProjectListApp(BmProject bmProject);
}

View File

@ -16,6 +16,7 @@ import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
/**
@ -36,6 +37,10 @@ public class SelectServiceImpl implements SelectService {
*/
@Override
public AjaxResult getUnitList(BmUnit bmUnit) {
if (bmUnit.getIsApp() != null && bmUnit.getIsApp()) {
List<BmUnit> list = mapper.getUnitListApp(bmUnit);
return AjaxResult.success(list);
}
List<ProjectTreeNode> groupList = new ArrayList<>();
List<ProjectTreeNode> list = new ArrayList<>();
try {
@ -59,6 +64,11 @@ public class SelectServiceImpl implements SelectService {
*/
@Override
public AjaxResult getProjectList(BmProject bmProject) {
if (bmProject.getIsApp() != null && bmProject.getIsApp()) {
List<BmProject> list = mapper.getProjectListApp(bmProject);
list.removeIf(Objects::isNull);
return AjaxResult.success(list);
}
List<ProjectTreeNode> groupList = new ArrayList<>();
List<ProjectTreeNode> list = new ArrayList<>();
try {

View File

@ -79,6 +79,14 @@ public class PurchaseCheckDetails extends BaseEntity {
@ApiModelProperty(value = "验收结论")
private String checkResult;
/** 质保材料 */
@ApiModelProperty(value = "质保材料")
private String warnDocuments;
/** 原因 */
@ApiModelProperty(value = "原因")
private String reason;
/** 物资厂家id */
//@Excel(name = "物资厂家id")
@ApiModelProperty(value = "物资厂家id")

View File

@ -87,15 +87,38 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
MaTypeManageTypeEnum.CODE_DEVICE.getTypeId().equals(o.getManageType()) && getPurchaseMaCodeCount(o.getTaskId(), o.getTypeId()) > 0)
.collect(Collectors.toList());
}
//针对于app查询可能存在的验收图片
extractedFile(purchaseCheckDetailsList);
} else {
purchaseQueryDto.setStatusList(null);
purchaseCheckDetailsList = purchaseCheckDetailsMapper.selectPurchaseCheckDetailsListByQueryDto(purchaseQueryDto);
//针对于app查询可能存在的验收图片
extractedFile(purchaseCheckDetailsList);
}
purchaseCheckDtoResult.setPurchaseCheckDetailsList(purchaseCheckDetailsList);
}
return purchaseCheckDtoResult;
}
/**
* 提取app新购验收文件信息
* @param purchaseCheckDetailsList
*/
private void extractedFile(List<PurchaseCheckDetails> purchaseCheckDetailsList) {
if (!CollectionUtils.isEmpty(purchaseCheckDetailsList)) {
for (PurchaseCheckDetails purchaseCheckDetails : purchaseCheckDetailsList) {
BmFileInfo fileInfo = new BmFileInfo();
fileInfo.setTaskType(10);
fileInfo.setModelId(purchaseCheckDetails.getId());
fileInfo.setTaskId(purchaseCheckDetails.getTaskId());
List<BmFileInfo> bmFileInfoList = bmFileInfoMapper.selectBmFileInfoList(fileInfo);
if (!CollectionUtils.isEmpty(bmFileInfoList)) {
purchaseCheckDetails.setBmFileInfos(bmFileInfoList);
}
}
}
}
private int getPurchaseMaCodeCount(Long taskId, Long typeId) {
return purchaseMacodeInfoMapper.getPurchaseMaCodeCount(taskId, typeId);
}
@ -285,6 +308,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
details.setStatus(PurchaseTaskStatusEnum.TO_STORE.getStatus());
}
result = purchaseCheckDetailsMapper.updatePurchaseDetails4Check(details) > 0 ? AjaxResult.success("detail验证成功") : AjaxResult.error("details无验证信息");
extractedFile(details);
}
} else {
for (PurchaseCheckDetails details : purchaseVerifyVo.getPurchaseCheckDetailsList()) {
@ -294,6 +318,7 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
.setTaskId(details.getTaskId())
.setTaskType(TmTaskTypeEnum.TM_TASK_PURCHASE.getTaskTypeId())
.setTaskStatus(PurchaseTaskStatusEnum.TASK_TO_START.getStatus()));
extractedFile(details);
}
}
}
@ -303,6 +328,24 @@ public class PurchaseCheckInfoServiceImpl implements IPurchaseCheckInfoService {
}
}
/**
* app新购验收图片上传方法抽取
* @param details
*/
private void extractedFile(PurchaseCheckDetails details) {
if (!CollectionUtils.isEmpty(details.getBmFileInfos())) {
for (BmFileInfo bmFileInfo : details.getBmFileInfos()) {
if (bmFileInfo.getTaskType() != null && bmFileInfo.getTaskType() == 10) {
bmFileInfo.setTaskId(details.getTaskId());
bmFileInfo.setModelId(details.getId());
bmFileInfo.setCreateBy(SecurityUtils.getUsername());
bmFileInfo.setCreateTime(DateUtils.getNowDate());
bmFileInfoMapper.insertBmFileInfo(bmFileInfo);
}
}
}
}
/**
* 根据任务id查询验收单
*

View File

@ -71,11 +71,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
bai.phone like concat('%', #{keyWord}, '%')
)
</if>
<if test="unitId != null">
and bu.unit_id = #{unitId}
</if>
<if test="proId != null">
and bp.pro_id = #{proId}
</if>
<if test="startTime != null and startTime != '' and endTime != null and endTime != ''">
<![CDATA[and bai.create_time BETWEEN #{startTime} AND #{endTime} ]]>
</if>
<if test="status != null">
and bai.status = #{status}
and tt.task_status = #{status}
</if>
GROUP BY bai.`code`
ORDER BY bai.create_time desc
@ -565,21 +571,6 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
delete from back_apply_info where id = #{id}
</delete>
<delete id="deleteBackApplyInfoByIds" parameterType="String">
delete from back_apply_info where id in
<foreach item="id" collection="array" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
<delete id="deleteTask">
update tm_task set status = 0 where task_id = #{taskId}
</delete>
<delete id="deleteTaskAgreement">
delete from tm_task_agreement where task_id = #{taskId}
</delete>
<delete id="deleteBackApply">
delete from back_apply_info where id = #{id}
</delete>

View File

@ -305,4 +305,40 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
ORDER BY
level
</select>
<select id="getUnitListApp" resultType="com.bonus.material.basic.domain.BmUnit">
/*根据标段工程id关联协议查询往来单位*/
<if test="projectId != null">
SELECT DISTINCT bu.unit_id AS unitId,
bu.unit_name AS unitName
FROM bm_project bpl
LEFT JOIN bm_agreement_info bai ON bpl.pro_id = bai.project_id AND bai.`status` = '1'
LEFT JOIN bm_unit bu ON bai.unit_id = bu.unit_id AND bu.del_flag = '0'
WHERE bpl.pro_id = #{projectId} AND bpl.del_flag = '0'
</if>
<if test="projectId == null">
SELECT unit_id AS unitId,
unit_name AS unitName
FROM bm_unit
WHERE del_flag = '0'
</if>
</select>
<select id="getProjectListApp" resultType="com.bonus.material.basic.domain.BmProject">
/*根据往来单位id关联协议查询工程*/
<if test="unitId != null">
SELECT DISTINCT bp.pro_id AS proId,
bp.pro_name AS proName
FROM bm_unit bu
LEFT JOIN bm_agreement_info bai ON bu.unit_id = bai.unit_id AND bai.`status` = '1'
LEFT JOIN bm_project bp ON bai.project_id = bp.pro_id AND bp.del_flag = '0'
WHERE bu.unit_id = #{unitId} AND bu.del_flag = '0'
</if>
<if test="unitId == null">
SELECT pro_id AS proId,
pro_name AS proName
FROM bm_project
WHERE del_flag = '0'
</if>
</select>
</mapper>

View File

@ -44,7 +44,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select pcd.id, pcd.task_id, pcd.type_id, pcd.purchase_price, pcd.purchase_tax_price, pcd.purchase_num, pcd.check_num, pcd.bind_num, pcd.check_result,
pcd.supplier_id, pcd.status, pcd.create_by, pcd.production_time, pcd.create_time, pcd.update_by, pcd.update_time,
pcd.remark, pcd.check_url_name, pcd.check_url, pcd.input_num, pcd.input_status, pcd.input_time, pcd.file_name,
pcd.file_url, pcd.company_id, pcd.fix_code, mt.type_name, mt.unit_name, mtp.type_name as ma_type_name, mt.manage_type as manage_type
pcd.file_url, pcd.company_id, pcd.fix_code, mt.type_name, mt.unit_name, mtp.type_name as ma_type_name, mt.manage_type as manage_type,
pcd.warn_documents as warnDocuments, pcd.reason as reason
from purchase_check_details pcd
left join ma_type mt on pcd.type_id = mt.type_id
left join ma_type mtp on mt.parent_id = mtp.type_id
@ -331,8 +332,17 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<update id="updatePurchaseDetails4Check">
update
purchase_check_details
set
`status` = #{status}, check_result = #{checkResult}, check_num = purchase_num
<set>
`status` = #{status},
check_result = #{checkResult},
check_num = purchase_num,
<if test="warnDocuments != null and warnDocuments != ''">
warn_documents = #{warnDocuments},
</if>
<if test="reason != null and reason != ''">
reason = #{reason}
</if>
</set>
where
1=1
<if test="taskId != null">