部件入庫接口實現優化

This commit is contained in:
dzl 2025-05-23 16:58:57 +08:00
parent 5486d9ffc5
commit 9b33215a48

View File

@ -27,9 +27,9 @@ import java.util.List;
public class EbikeComponentServiceImpl implements EbikeComponentService {
@Resource
private EbikeEcuEnterRecordsMapper ebikeEcuEnterRecordsMapper;
private EbikeEcuEnterRecordsMapper ebikeEcuEnterRecordsMapper;
@Resource
private EbikeComponentProductionMapper ebikeComponentProductionMapper;
private EbikeComponentProductionMapper ebikeComponentProductionMapper;
@Resource
private StaffFeignClient staffFeignClient;
@ -39,17 +39,17 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
private EbikeComponentEnterRecordsMapper ebikeComponentEnterRecordsMapper;
@Resource
private EbikeComponentInventoryMapper ebikeComponentInventoryMapper;
private EbikeComponentInventoryMapper ebikeComponentInventoryMapper;
@Resource
private EbikeComponentInventorycountMapper ebikeComponentInventorycountMapper;
private EbikeComponentInventorycountMapper ebikeComponentInventorycountMapper;
@Resource
private EbikeBatteryEnterRecordsMapper ebikeBatteryEnterRecordsMapper;
private EbikeBatteryEnterRecordsMapper ebikeBatteryEnterRecordsMapper;
@Resource
private EbikeHelmetEnterRecordsMapper ebikeHelmetEnterRecordsMapper;
private EbikeHelmetEnterRecordsMapper ebikeHelmetEnterRecordsMapper;
@Resource
private EbikeComponentOutRecordsMapper ebikeComponentOutRecordsMapper;
@Resource
private EbikeEcuOutRecordsMapper ebikeEcuOutRecordsMapper;
private EbikeEcuOutRecordsMapper ebikeEcuOutRecordsMapper;
@Autowired
private EbikeHelmetOutRecordsMapper ebikeHelmetOutRecordsMapper;
@Autowired
@ -75,38 +75,39 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
EbikeComponentTypeInfo ebikeComponentTypeInfo = getComponentTypeInfo(params.getComponentType()); // 获取部件信息
// 获取或新增部件记录
EbikeComponentEnterRecords ebikeComponentEnterRecords = buildEnterRecord(params, ebikeComponentTypeInfo,stockInType,orgId);
EbikeComponentEnterRecords ebikeComponentEnterRecords = buildEnterRecord(params, ebikeComponentTypeInfo, stockInType, orgId);
saveOrUpdateEnterRecord(ebikeComponentEnterRecords, params.getComponentEnterRecordId(), userId);
String componentEnterRecordId = ebikeComponentEnterRecords.getComponentEnterRecordId();
if(params.getEbikeEcuEnterRecords().size()>0){
if (params.getEbikeEcuEnterRecords() != null && !params.getEbikeEcuEnterRecords().isEmpty()) {
// 删除原有的ECU入库记录并保存新的记录
deleteAndInsertEcuEnterRecords(componentEnterRecordId, params.getEbikeEcuEnterRecords(), stockInType, ebikeComponentTypeInfo, userId, orgId);
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeEcuEnterRecords().size(),1);
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeEcuEnterRecords().size(), 1);
}
}else if(params.getEbikeBatteryEnterRecords().size()>0){
} else if (params.getEbikeBatteryEnterRecords() != null && !params.getEbikeBatteryEnterRecords().isEmpty()) {
// 删除原有的电池入库记录并保存新的记录
deleteAndInsertBatteryRecords(componentEnterRecordId, params.getEbikeBatteryEnterRecords(), stockInType, ebikeComponentTypeInfo, userId, orgId);
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeBatteryEnterRecords().size(),1);
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeBatteryEnterRecords().size(), 1);
}
}else if(params.getEbikeHelmetEnterRecords().size()>0){
} else if (params.getEbikeHelmetEnterRecords() != null && !params.getEbikeHelmetEnterRecords().isEmpty()) {
// 删除原有的头盔入库记录并保存新的记录
deleteAndInsertHelmetEnterRecords(componentEnterRecordId, params.getEbikeHelmetEnterRecords(), stockInType, ebikeComponentTypeInfo, userId, orgId);
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeHelmetEnterRecords().size(),1);
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeHelmetEnterRecords().size(), 1);
}
}else {
} else {
//部件数量 enterQuantity 更新部件库
Integer enterQuantity = params.getEnterQuantity();
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId,enterQuantity,1);
updateInventoryCount(ebikeComponentTypeInfo, orgId, enterQuantity, 1);
}
}
return JsonResult.success(componentEnterRecordId);
return JsonResult.success("", componentEnterRecordId);
}
/*
获取用户Id
*/
@ -114,6 +115,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
StaffFeign staffFeign = getStaffFeignInfo();
return staffFeign.getStaffId().toString();
}
/*
获取组织Id
*/
@ -124,6 +126,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
/**
* 获取车辆部件类型表信息
*
* @param componentType
* @return
*/
@ -131,18 +134,18 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
return ebikeComponentTypeInfoMapper.selectOneById(componentType);
}
private EbikeComponentEnterRecords buildEnterRecord(ReqComponentEnterRecordDto params, EbikeComponentTypeInfo ebikeComponentTypeInfo,Integer stockInType,Long orgId) {
private EbikeComponentEnterRecords buildEnterRecord(ReqComponentEnterRecordDto params, EbikeComponentTypeInfo ebikeComponentTypeInfo, Integer stockInType, Long orgId) {
EbikeComponentEnterRecords ebikeComponentEnterRecords = new EbikeComponentEnterRecords();
ebikeComponentEnterRecords.setOwningRegion(params.getOwningRegion());
ebikeComponentEnterRecords.setOrgId(orgId);
ebikeComponentEnterRecords.setComponentEnterRecordId(params.getComponentType());
ebikeComponentEnterRecords.setComponentType(params.getComponentType());
ebikeComponentEnterRecords.setEnterQuantity(params.getEnterQuantity());
ebikeComponentEnterRecords.setComponentPrice(ebikeComponentTypeInfo.getPrice());
ebikeComponentEnterRecords.setState(stockInType==1 ? "1":"0"); // 暂存为 0 入库为1
ebikeComponentEnterRecords.setState(stockInType == 1 ? "1" : "0"); // 暂存为 0 入库为1
return ebikeComponentEnterRecords;
}
private void saveOrUpdateEnterRecord(EbikeComponentEnterRecords ebikeComponentEnterRecords, String componentEnterRecordId,String userId) {
private void saveOrUpdateEnterRecord(EbikeComponentEnterRecords ebikeComponentEnterRecords, String componentEnterRecordId, String userId) {
if (componentEnterRecordId == null) { // 新增
ebikeComponentEnterRecords.setCreatedUser(userId);
ebikeComponentEnterRecords.setCreatedAt(LocalDateTime.now());
@ -174,10 +177,11 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
record.setComponentEnterRecordId(componentEnterRecordId);
ebikeEcuEnterRecordsMapper.insert(record);
if (stockInType == 1) { // 仅在入库时执行
saveComponentInventory(record.getEcuSn(),record.getEcuCode(), ebikeComponentTypeInfo, userId, orgId,1);
saveComponentInventory(record.getEcuSn(), record.getEcuCode(), ebikeComponentTypeInfo, userId, orgId, 1);
}
}
}
private void deleteAndInsertHelmetEnterRecords(String componentEnterRecordId, List<EbikeHelmetEnterRecords> ebikeHelmetEnterRecords, Integer stockInType, EbikeComponentTypeInfo ebikeComponentTypeInfo, String userId, Long orgId) {
// 删除原有的头盔入库记录
QueryWrapper query = new QueryWrapper();
@ -188,7 +192,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
record.setComponentEnterRecordId(componentEnterRecordId);
ebikeHelmetEnterRecordsMapper.insert(record);
if (stockInType == 1) { // 仅在入库时执行
saveComponentInventory(record.getHelmetCode(),"", ebikeComponentTypeInfo, userId, orgId,1);
saveComponentInventory(record.getHelmetCode(), "", ebikeComponentTypeInfo, userId, orgId, 1);
}
}
}
@ -203,11 +207,12 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
record.setComponentEnterRecordId(componentEnterRecordId);
ebikeBatteryEnterRecordsMapper.insert(record);
if (stockInType == 1) { // 仅在入库时执行
saveComponentInventory(record.getBatteryCode(),"", ebikeComponentTypeInfo, userId, orgId,1);
saveComponentInventory(record.getBatteryCode(), "", ebikeComponentTypeInfo, userId, orgId, 1);
}
}
}
private void saveComponentInventory(String ItemCode,String SerialNumber, EbikeComponentTypeInfo ebikeComponentTypeInfo, String userId, Long orgId,Integer state) {
private void saveComponentInventory(String ItemCode, String SerialNumber, EbikeComponentTypeInfo ebikeComponentTypeInfo, String userId, Long orgId, Integer state) {
EbikeComponentInventory ebikeComponentInventory = new EbikeComponentInventory();
ebikeComponentInventory.setItemCode(ItemCode);
ebikeComponentInventory.setSerialNumber(SerialNumber);
@ -223,7 +228,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
}
//入库记录更新数量 type 1 入库 2 出库
private void updateInventoryCount(EbikeComponentTypeInfo ebikeComponentTypeInfo, Long orgId, int size,Integer type) {
private void updateInventoryCount(EbikeComponentTypeInfo ebikeComponentTypeInfo, Long orgId, int size, Integer type) {
QueryWrapper query1 = new QueryWrapper();
query1.eq("code", ebikeComponentTypeInfo.getId());
EbikeComponentInventorycount ebikeComponentInventorycount = ebikeComponentInventorycountMapper.selectOneByQuery(query1);
@ -238,9 +243,9 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventorycount.setCount(size);
ebikeComponentInventorycountMapper.insert(ebikeComponentInventorycount);
} else {
if(type==1){//入库
if (type == 1) {//入库
ebikeComponentInventorycount.setCount(ebikeComponentInventorycount.getCount() + size);
}else {//出库
} else {//出库
ebikeComponentInventorycount.setCount(ebikeComponentInventorycount.getCount() - size);
}
ebikeComponentInventorycountMapper.update(ebikeComponentInventorycount);
@ -254,7 +259,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
*/
@Override
@Transactional
public JsonResult<?> invalidateDevicePart(String componentEnterRecordId){
public JsonResult<?> invalidateDevicePart(String componentEnterRecordId) {
QueryWrapper query = new QueryWrapper();
query.eq("component_enter_record_id", componentEnterRecordId);
EbikeComponentEnterRecords ebikeComponentEnterRecords = ebikeComponentEnterRecordsMapper.selectOneByQuery(query);
@ -290,7 +295,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
*/
@Override
@Transactional
public JsonResult<?> cancelDevicePart(String componentEnterRecordId){
public JsonResult<?> cancelDevicePart(String componentEnterRecordId) {
QueryWrapper query = new QueryWrapper();
query.eq("component_enter_record_id", componentEnterRecordId);
EbikeComponentEnterRecords ebikeComponentEnterRecords = ebikeComponentEnterRecordsMapper.selectOneByQuery(query);
@ -301,13 +306,13 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
}
// 方法实现
private void updateBatteryDetails(String componentEnterRecordId,String componentType,Integer state) {
// 方法实现
private void updateBatteryDetails(String componentEnterRecordId, String componentType, Integer state) {
// 具体更新电池仓库明细状态和仓库总数量的逻辑
QueryWrapper query = new QueryWrapper();
query.eq("component_enter_record_id", componentEnterRecordId);
List<EbikeBatteryEnterRecords> ebikeBatteryEnterRecords = ebikeBatteryEnterRecordsMapper.selectListWithRelationsByQuery(query);
for(EbikeBatteryEnterRecords record:ebikeBatteryEnterRecords){
for (EbikeBatteryEnterRecords record : ebikeBatteryEnterRecords) {
query = new QueryWrapper();
query.eq("item_code", record.getBatteryCode());
EbikeComponentInventory ebikeComponentInventory = ebikeComponentInventoryMapper.selectOneByQuery(query);
@ -315,15 +320,16 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventoryMapper.update(ebikeComponentInventory);
}
int size = ebikeBatteryEnterRecords.size();
updateOtherComponentStock(componentType,size);
updateOtherComponentStock(componentType, size);
}
private void updateHelmetDetails(String componentEnterRecordId,String componentType,Integer state) {
private void updateHelmetDetails(String componentEnterRecordId, String componentType, Integer state) {
// 具体更新头盔仓库明细状态和仓库总数量的逻辑
QueryWrapper query = new QueryWrapper();
query.eq("component_enter_record_id", componentEnterRecordId);
List<EbikeHelmetEnterRecords> ebikeHelmetEnterRecords = ebikeHelmetEnterRecordsMapper.selectListWithRelationsByQuery(query);
for(EbikeHelmetEnterRecords record:ebikeHelmetEnterRecords){
for (EbikeHelmetEnterRecords record : ebikeHelmetEnterRecords) {
query = new QueryWrapper();
query.eq("item_code", record.getHelmetCode());
EbikeComponentInventory ebikeComponentInventory = ebikeComponentInventoryMapper.selectOneByQuery(query);
@ -331,15 +337,15 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventoryMapper.update(ebikeComponentInventory);
}
int size = ebikeHelmetEnterRecords.size();
updateOtherComponentStock(componentType,size);
updateOtherComponentStock(componentType, size);
}
private void updateCentralControlDetails(String componentEnterRecordId,String componentType,Integer state) {
private void updateCentralControlDetails(String componentEnterRecordId, String componentType, Integer state) {
// 具体更新中控仓库明细状态和仓库总数量的逻辑
QueryWrapper query = new QueryWrapper();
query.eq("component_enter_record_id", componentEnterRecordId);
List<EbikeEcuEnterRecords> ebikeEcuEnterRecords = ebikeEcuEnterRecordsMapper.selectListWithRelationsByQuery(query);
for(EbikeEcuEnterRecords record:ebikeEcuEnterRecords){
for (EbikeEcuEnterRecords record : ebikeEcuEnterRecords) {
query = new QueryWrapper();
query.eq("item_code", record.getEcuSn());
query.eq("serial_number", record.getEcuCode());
@ -348,36 +354,40 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventoryMapper.update(ebikeComponentInventory);
}
int size = ebikeEcuEnterRecords.size();
updateOtherComponentStock(componentType,size);
updateOtherComponentStock(componentType, size);
}
private void updateOtherComponentStock(String componentType,Integer size) {
private void updateOtherComponentStock(String componentType, Integer size) {
// 具体更新其他组件仓库总数量的逻辑
QueryWrapper query1 = new QueryWrapper();
query1.eq("code", componentType);
EbikeComponentInventorycount ebikeComponentInventorycount = ebikeComponentInventorycountMapper.selectOneByQuery(query1);
if(ebikeComponentInventorycount !=null){
ebikeComponentInventorycount.setCount(ebikeComponentInventorycount.getCount()-size);
if (ebikeComponentInventorycount != null) {
ebikeComponentInventorycount.setCount(ebikeComponentInventorycount.getCount() - size);
ebikeComponentInventorycountMapper.update(ebikeComponentInventorycount);
}
}
/**
* 出库作废增加部件数量
*
* @param componentType
* @param size
*/
private void updateOtherOutComponentStock(String componentType,Integer size) {
private void updateOtherOutComponentStock(String componentType, Integer size) {
// 具体更新其他组件仓库总数量的逻辑
QueryWrapper query1 = new QueryWrapper();
query1.eq("code", componentType);
EbikeComponentInventorycount ebikeComponentInventorycount = ebikeComponentInventorycountMapper.selectOneByQuery(query1);
if(ebikeComponentInventorycount !=null){
ebikeComponentInventorycount.setCount(ebikeComponentInventorycount.getCount()+size);
if (ebikeComponentInventorycount != null) {
ebikeComponentInventorycount.setCount(ebikeComponentInventorycount.getCount() + size);
ebikeComponentInventorycountMapper.update(ebikeComponentInventorycount);
}
}
/**
* 部件出库出库暂存 stockInType 0或空 表示暂存1 表示入库
*
* @param params
* @return
*/
@ -400,43 +410,44 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
Integer count = ebikeComponentInventorycount.getCount();
String name = ebikeComponentInventorycount.getName();
// String brand = ebikeComponentInventorycount.getBrand();
if(count<outQuantity){
return JsonResult.failed(String.format("%s 的库存数量不足!剩余数量:%s",name, count));
if (count < outQuantity) {
return JsonResult.failed(String.format("%s 的库存数量不足!剩余数量:%s", name, count));
}
// 获取或新增部件记录
EbikeComponentOutRecords ebikeComponentOutRecords = buildOutRecord(params,ebikeComponentTypeInfo,stockInType,orgId);
saveOrUpdateOutRecord(ebikeComponentOutRecords, params.getComponentOutRecordId(),userId);
EbikeComponentOutRecords ebikeComponentOutRecords = buildOutRecord(params, ebikeComponentTypeInfo, stockInType, orgId);
saveOrUpdateOutRecord(ebikeComponentOutRecords, params.getComponentOutRecordId(), userId);
String componentOutRecordId = ebikeComponentOutRecords.getComponentOutRecordId();
if(params.getEbikeEcuOutRecords().size()>0){
if (params.getEbikeEcuOutRecords().size() > 0) {
// 删除原有的ECU入库记录并保存新的记录
deleteAndInsertEcuOutRecords(componentOutRecordId, params.getEbikeEcuOutRecords(), stockInType, ebikeComponentTypeInfo, userId, orgId);
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeEcuOutRecords().size(),2);
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeEcuOutRecords().size(), 2);
}
}else if(params.getEbikeBatteryOutRecords().size()>0){
} else if (params.getEbikeBatteryOutRecords().size() > 0) {
// 删除原有的电池入库记录并保存新的记录
deleteAndInsertBatteryOutRecords(componentOutRecordId, params.getEbikeBatteryOutRecords(), stockInType, ebikeComponentTypeInfo, userId, orgId);
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeBatteryOutRecords().size(),2);
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeBatteryOutRecords().size(), 2);
}
}else if(params.getEbikeHelmetOutRecords().size()>0){
} else if (params.getEbikeHelmetOutRecords().size() > 0) {
// 删除原有的头盔入库记录并保存新的记录
deleteAndInsertHelmetOutRecords(componentOutRecordId, params.getEbikeHelmetOutRecords(), stockInType, ebikeComponentTypeInfo, userId, orgId);
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeHelmetOutRecords().size(),2);
updateInventoryCount(ebikeComponentTypeInfo, orgId, params.getEbikeHelmetOutRecords().size(), 2);
}
}else {
} else {
//部件数量 enterQuantity 更新部件库
Integer enterQuantity = params.getEnterQuantity();
if (stockInType == 1) {
updateInventoryCount(ebikeComponentTypeInfo, orgId,enterQuantity,2);
updateInventoryCount(ebikeComponentTypeInfo, orgId, enterQuantity, 2);
}
}
return JsonResult.success(componentOutRecordId);
}
private EbikeComponentOutRecords buildOutRecord(ReqComponentOutRecordDto params, EbikeComponentTypeInfo ebikeComponentTypeInfo,Integer stockInType,Long orgId) {
private EbikeComponentOutRecords buildOutRecord(ReqComponentOutRecordDto params, EbikeComponentTypeInfo ebikeComponentTypeInfo, Integer stockInType, Long orgId) {
EbikeComponentOutRecords ebikeComponentOutRecords = new EbikeComponentOutRecords();
ebikeComponentOutRecords.setOwningRegion(params.getOwningRegion());
ebikeComponentOutRecords.setOrgId(orgId);
@ -444,10 +455,11 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentOutRecords.setOutQuantity(params.getOutQuantity());
ebikeComponentOutRecords.setOldComponentHandleOption(params.getOldComponentHandleOption());
ebikeComponentOutRecords.setEnterQuantity(params.getEnterQuantity());
ebikeComponentOutRecords.setState(stockInType==1 ? "1":"0"); // 暂存为 0 出库库为1
ebikeComponentOutRecords.setState(stockInType == 1 ? "1" : "0"); // 暂存为 0 出库库为1
return ebikeComponentOutRecords;
}
private void saveOrUpdateOutRecord(EbikeComponentOutRecords ebikeComponentOutRecords, String componentEnterRecordId,String userId) {
private void saveOrUpdateOutRecord(EbikeComponentOutRecords ebikeComponentOutRecords, String componentEnterRecordId, String userId) {
if (componentEnterRecordId == null) { // 新增
ebikeComponentOutRecords.setCreatedUser(userId);
ebikeComponentOutRecords.setCreatedAt(LocalDateTime.now());
@ -468,6 +480,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
}
}
}
private void deleteAndInsertEcuOutRecords(String componentOutRecordId, List<EbikeEcuOutRecords> outRecords, Integer stockInType, EbikeComponentTypeInfo ebikeComponentTypeInfo, String userId, Long orgId) {
// 删除原有的ECU入库记录
QueryWrapper query = new QueryWrapper();
@ -478,7 +491,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
record.setComponentOutRecordId(componentOutRecordId);
ebikeEcuOutRecordsMapper.insert(record);
if (stockInType == 1) { // 仅在出库时执行
saveComponentInventory(record.getEcuSn(),record.getEcuCode(), ebikeComponentTypeInfo, userId, orgId,2);
saveComponentInventory(record.getEcuSn(), record.getEcuCode(), ebikeComponentTypeInfo, userId, orgId, 2);
}
}
}
@ -493,7 +506,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
record.setComponentOutRecordId(componentOutRecordId);
ebikeHelmetOutRecordsMapper.insert(record);
if (stockInType == 1) { // 仅在出库时执行
saveComponentInventory(record.getHelmetCode(),"", ebikeComponentTypeInfo, userId, orgId,2);
saveComponentInventory(record.getHelmetCode(), "", ebikeComponentTypeInfo, userId, orgId, 2);
}
}
}
@ -508,17 +521,19 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
record.setComponentOutRecordId(componentOutRecordId);
ebikeBatteryOutRecordsMapper.insert(record);
if (stockInType == 1) { // 仅在出库时执行
saveComponentInventory(record.getBatteryCode(),"", ebikeComponentTypeInfo, userId, orgId,2);
saveComponentInventory(record.getBatteryCode(), "", ebikeComponentTypeInfo, userId, orgId, 2);
}
}
}
/**
* 设备部件出库取消通用
*
* @param componentOutRecordId
* @return
*/
@Override
public JsonResult<?> cancelOutDevicePart(String componentOutRecordId){
public JsonResult<?> cancelOutDevicePart(String componentOutRecordId) {
QueryWrapper query = new QueryWrapper();
query.eq("component_out_record_id", componentOutRecordId);
EbikeComponentOutRecords ebikeComponentOutRecords = ebikeComponentOutRecordsMapper.selectOneByQuery(query);
@ -527,14 +542,16 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentOutRecordsMapper.update(ebikeComponentOutRecords);
return JsonResult.success("成功");
}
/**
* 设备部件出库作废 通用
*
* @param componentOutRecordId
* @return
*/
@Override
@Transactional
public JsonResult<?> invalidateOutDevicePart(String componentOutRecordId){
public JsonResult<?> invalidateOutDevicePart(String componentOutRecordId) {
QueryWrapper query = new QueryWrapper();
query.eq("component_out_record_id", componentOutRecordId);
EbikeComponentOutRecords ebikeComponentOutRecords = ebikeComponentOutRecordsMapper.selectOneByQuery(query);
@ -561,12 +578,13 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
}
return JsonResult.success("成功");
}
private void updateBatteryOutDetails(String componentOutRecordId,String componentType,Integer state) {
private void updateBatteryOutDetails(String componentOutRecordId, String componentType, Integer state) {
// 具体更新电池仓库明细状态和仓库总数量的逻辑
QueryWrapper query = new QueryWrapper();
query.eq("component_out_record_id", componentOutRecordId);
List<EbikeBatteryOutRecords> ebikeBatteryOutRecords = ebikeBatteryOutRecordsMapper.selectListWithRelationsByQuery(query);
for(EbikeBatteryOutRecords record:ebikeBatteryOutRecords){
for (EbikeBatteryOutRecords record : ebikeBatteryOutRecords) {
query = new QueryWrapper();
query.eq("item_code", record.getBatteryCode());
EbikeComponentInventory ebikeComponentInventory = ebikeComponentInventoryMapper.selectOneByQuery(query);
@ -574,16 +592,16 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventoryMapper.update(ebikeComponentInventory);
}
int size = ebikeBatteryOutRecords.size();
updateOtherOutComponentStock(componentType,size);
updateOtherOutComponentStock(componentType, size);
}
private void updateHelmetOutDetails(String componentOutRecordId,String componentType,Integer state) {
private void updateHelmetOutDetails(String componentOutRecordId, String componentType, Integer state) {
// 具体更新头盔仓库明细状态和仓库总数量的逻辑
QueryWrapper query = new QueryWrapper();
query.eq("component_out_record_id", componentOutRecordId);
List<EbikeHelmetOutRecords> ebikeHelmetOutRecords = ebikeHelmetOutRecordsMapper.selectListWithRelationsByQuery(query);
for(EbikeHelmetOutRecords record:ebikeHelmetOutRecords){
for (EbikeHelmetOutRecords record : ebikeHelmetOutRecords) {
query = new QueryWrapper();
query.eq("item_code", record.getHelmetCode());
EbikeComponentInventory ebikeComponentInventory = ebikeComponentInventoryMapper.selectOneByQuery(query);
@ -591,14 +609,15 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventoryMapper.update(ebikeComponentInventory);
}
int size = ebikeHelmetOutRecords.size();
updateOtherOutComponentStock(componentType,size);
updateOtherOutComponentStock(componentType, size);
}
private void updateCentralControlOutDetails(String componentOutRecordId,String componentType,Integer state) {
private void updateCentralControlOutDetails(String componentOutRecordId, String componentType, Integer state) {
// 具体更新中控仓库明细状态和仓库总数量的逻辑
QueryWrapper query = new QueryWrapper();
query.eq("component_out_record_id", componentOutRecordId);
List<EbikeEcuOutRecords> ebikeEcuOutRecords = ebikeEcuOutRecordsMapper.selectListWithRelationsByQuery(query);
for(EbikeEcuOutRecords record:ebikeEcuOutRecords){
for (EbikeEcuOutRecords record : ebikeEcuOutRecords) {
query = new QueryWrapper();
query.eq("item_code", record.getEcuSn());
query.eq("serial_number", record.getEcuCode());
@ -607,8 +626,9 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
ebikeComponentInventoryMapper.update(ebikeComponentInventory);
}
int size = ebikeEcuOutRecords.size();
updateOtherOutComponentStock(componentType,size);
updateOtherOutComponentStock(componentType, size);
}
public StaffFeign getStaffFeignInfo() {
String tokenValue = StpUtil.getTokenValue();
// 调用 Feign 客户端获取用户信息