08-20-供应商入库监听器,供应商入库新增字段
This commit is contained in:
@ -17,6 +17,7 @@ public class constant {
|
||||
public static final String EquipmentOrdering = "equipmentOrdering"; //订货
|
||||
public static final String PURCHASE_DOC_FILE_URL = "docs/purchase/doc/"; // 采购联系单文件路径
|
||||
public static final String PURCHASE_DOC_TEMPLATE_PATH = "template/物资采购联系单模版.docx"; // 采购联系单文件路径
|
||||
public static final String SUPPLIER_INPUT = "supplierInput";//供应商入库
|
||||
|
||||
/**
|
||||
* 获取物资采购联系单文件名
|
||||
|
@ -2,10 +2,15 @@ package org.dromara.tender.controller;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import jakarta.servlet.http.HttpServletResponse;
|
||||
import jakarta.validation.constraints.*;
|
||||
import cn.dev33.satoken.annotation.SaCheckPermission;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.cailiaoshebei.controller.constant;
|
||||
import org.dromara.cailiaoshebei.domain.BusCailiaoshebeiPici;
|
||||
import org.dromara.common.core.domain.event.ProcessEvent;
|
||||
import org.dromara.system.service.ISysOssService;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
@ -31,6 +36,7 @@ import org.springframework.web.multipart.MultipartFile;
|
||||
* @author Lion Li
|
||||
* @date 2025-08-19
|
||||
*/
|
||||
@Slf4j
|
||||
@Validated
|
||||
@RequiredArgsConstructor
|
||||
@RestController
|
||||
|
@ -32,6 +32,21 @@ public class TenderSupplierInput extends BaseEntity {
|
||||
*/
|
||||
private String supplierType;
|
||||
|
||||
/***
|
||||
* 供应商名称
|
||||
*/
|
||||
private String supplierName;
|
||||
|
||||
/***
|
||||
* 供应商负责人
|
||||
*/
|
||||
private String supplierPerson;
|
||||
|
||||
/***
|
||||
* 负责人电话
|
||||
*/
|
||||
private String personPhone;
|
||||
|
||||
/***
|
||||
* 资料文件ID
|
||||
*/
|
||||
@ -42,5 +57,10 @@ public class TenderSupplierInput extends BaseEntity {
|
||||
*/
|
||||
private String inputFile;
|
||||
|
||||
/***
|
||||
* 审核状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
|
||||
}
|
||||
|
@ -31,10 +31,30 @@ public class TenderSupplierInputBo extends BaseEntity {
|
||||
*/
|
||||
private String supplierType;
|
||||
|
||||
/***
|
||||
* 供应商名称
|
||||
*/
|
||||
private String supplierName;
|
||||
|
||||
/***
|
||||
* 供应商负责人
|
||||
*/
|
||||
private String supplierPerson;
|
||||
|
||||
/***
|
||||
* 负责人电话
|
||||
*/
|
||||
private String personPhone;
|
||||
|
||||
/**
|
||||
* 入库资料
|
||||
*/
|
||||
private String inputFile;
|
||||
|
||||
/***
|
||||
* 审核状态
|
||||
*/
|
||||
private String state;
|
||||
|
||||
|
||||
}
|
||||
|
@ -40,11 +40,34 @@ public class TenderSupplierInputVo implements Serializable {
|
||||
@ExcelProperty(value = "供应商类型")
|
||||
private String supplierType;
|
||||
|
||||
/***
|
||||
* 供应商名称
|
||||
*/
|
||||
@ExcelProperty(value = "供应商名称")
|
||||
private String supplierName;
|
||||
|
||||
/***
|
||||
* 供应商负责人
|
||||
*/
|
||||
@ExcelProperty(value = "供应商负责人")
|
||||
private String supplierPerson;
|
||||
|
||||
/***
|
||||
* 负责人电话
|
||||
*/
|
||||
@ExcelProperty(value = "负责人电话")
|
||||
private String personPhone;
|
||||
|
||||
/**
|
||||
* 入库资料
|
||||
*/
|
||||
@ExcelProperty(value = "入库资料")
|
||||
private String inputFile;
|
||||
|
||||
/***
|
||||
* 审核状态
|
||||
*/
|
||||
@ExcelProperty(value = "审核状态")
|
||||
private String state;
|
||||
|
||||
}
|
||||
|
@ -18,7 +18,8 @@ import java.util.List;
|
||||
* @author Lion Li
|
||||
* @date 2025-08-19
|
||||
*/
|
||||
public interface ITenderSupplierInputService extends IService<TenderSupplierInput>{
|
||||
public interface
|
||||
ITenderSupplierInputService extends IService<TenderSupplierInput>{
|
||||
|
||||
/**
|
||||
* 查询供应商入库
|
||||
|
@ -1,6 +1,10 @@
|
||||
package org.dromara.tender.service.impl;
|
||||
|
||||
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.dromara.cailiaoshebei.controller.constant;
|
||||
import org.dromara.cailiaoshebei.domain.BusCailiaoshebeiPici;
|
||||
import org.dromara.common.core.domain.event.ProcessEvent;
|
||||
import org.dromara.common.core.service.OssService;
|
||||
import org.dromara.common.core.utils.MapstructUtils;
|
||||
import org.dromara.common.core.utils.StringUtils;
|
||||
@ -35,6 +39,7 @@ import static org.dromara.common.constant.MinioPathConstant.SupplierInput;
|
||||
* @author Lion Li
|
||||
* @date 2025-08-19
|
||||
*/
|
||||
@Slf4j
|
||||
@RequiredArgsConstructor
|
||||
@Service
|
||||
public class TenderSupplierInputServiceImpl extends ServiceImpl<TenderSupplierInputMapper, TenderSupplierInput> implements ITenderSupplierInputService {
|
||||
@ -99,7 +104,7 @@ public class TenderSupplierInputServiceImpl extends ServiceImpl<TenderSupplierIn
|
||||
TenderSupplierInput add = MapstructUtils.convert(bo, TenderSupplierInput.class);
|
||||
SysOssUploadVo sysOssUploadVo = ossService.uploadWithNoSave(file, ossService.minioFileName(SupplierInput, file));
|
||||
add.setInputFile(sysOssUploadVo.getUrl());
|
||||
add.setFileId(Long.valueOf(sysOssUploadVo.getOssId()));
|
||||
// add.setFileId(Long.valueOf(sysOssUploadVo.getOssId()));
|
||||
validEntityBeforeSave(add);
|
||||
boolean flag = baseMapper.insert(add) > 0;
|
||||
if (flag) {
|
||||
@ -118,11 +123,11 @@ public class TenderSupplierInputServiceImpl extends ServiceImpl<TenderSupplierIn
|
||||
public Boolean updateByBo(TenderSupplierInputBo bo,MultipartFile file) {
|
||||
TenderSupplierInput update = MapstructUtils.convert(bo, TenderSupplierInput.class);
|
||||
TenderSupplierInput byId = getById(update.getId());
|
||||
ossService.deleteWithValidByIds(List.of(byId.getFileId()), false);
|
||||
// ossService.deleteWithValidByIds(List.of(byId.getFileId()), false);
|
||||
|
||||
SysOssUploadVo sysOssUploadVo = ossService.uploadWithNoSave(file, ossService.minioFileName(SupplierInput, file));
|
||||
update.setInputFile(sysOssUploadVo.getUrl());
|
||||
update.setFileId(Long.valueOf(sysOssUploadVo.getOssId()));
|
||||
// update.setFileId(Long.valueOf(sysOssUploadVo.getOssId()));
|
||||
validEntityBeforeSave(update);
|
||||
return baseMapper.updateById(update) > 0;
|
||||
}
|
||||
@ -145,15 +150,40 @@ public class TenderSupplierInputServiceImpl extends ServiceImpl<TenderSupplierIn
|
||||
public Boolean deleteWithValidByIds(Collection<Long> ids, Boolean isValid) {
|
||||
if(isValid){
|
||||
//TODO 做一些业务上的校验,判断是否需要校验
|
||||
List<Long> fileIds = new ArrayList<>();
|
||||
for (Long id : ids) {
|
||||
TenderSupplierInput byId = getById(id);
|
||||
if (byId.getFileId() != null){
|
||||
fileIds.add(byId.getFileId());
|
||||
}
|
||||
}
|
||||
ossService.deleteWithValidByIds(fileIds, false);
|
||||
// List<Long> fileIds = new ArrayList<>();
|
||||
// for (Long id : ids) {
|
||||
// TenderSupplierInput byId = getById(id);
|
||||
// if (byId.getFileId() != null){
|
||||
// fileIds.add(byId.getFileId());
|
||||
// }
|
||||
// }
|
||||
// ossService.deleteWithValidByIds(fileIds, false);
|
||||
}
|
||||
return baseMapper.deleteByIds(ids) > 0;
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 总体流程监听(例如: 草稿,撤销,退回,作废,终止,已完成,单任务完成等)
|
||||
* 正常使用只需#processEvent.flowCode=='leave1'
|
||||
* 示例为了方便则使用startsWith匹配了全部示例key
|
||||
*
|
||||
* @param processEvent 参数
|
||||
*/
|
||||
@org.springframework.context.event.EventListener(condition = "#processEvent.flowCode.endsWith('"+ constant.SUPPLIER_INPUT+"')")
|
||||
public void processPlansHandler(ProcessEvent processEvent) {
|
||||
log.info("物资计划审核任务执行了{}", processEvent.toString());
|
||||
TenderSupplierInput byId = getById(processEvent.getBusinessId());
|
||||
byId.setState(processEvent.getStatus());
|
||||
boolean b = updateById(byId);
|
||||
if (!b){
|
||||
log.error("更改供应商入库状态失败");
|
||||
}
|
||||
// String batchNumber = processEvent.getBusinessId().split("_")[0];
|
||||
// //1、根据批次ID改编审核状态
|
||||
// BusCailiaoshebeiPici busCailiaoshebeiPici = new BusCailiaoshebeiPici().setApprovalPlan(processEvent.getStatus());
|
||||
// busCailiaoshebeiPiciService.update(busCailiaoshebeiPici, new LambdaQueryWrapper<BusCailiaoshebeiPici>()
|
||||
// .eq(BusCailiaoshebeiPici::getBatchNumber, batchNumber));
|
||||
}
|
||||
|
||||
}
|
||||
|
Reference in New Issue
Block a user