归还时候记录出库Id,根据部件出库记录表主键,查询部件出库记录信息以及归还部件信息
This commit is contained in:
parent
0ec8e431cc
commit
c9129438ae
@ -3,6 +3,7 @@ package com.cdzy.ebikeoperate.controller;
|
||||
import com.cdzy.common.model.JsonResult;
|
||||
import com.cdzy.ebikeoperate.mapper.EbikeEcuEnterRecordsMapper;
|
||||
import com.cdzy.ebikeoperate.model.dto.request.*;
|
||||
import com.cdzy.ebikeoperate.model.dto.response.ResComponentOutRecordInfoDto;
|
||||
import com.cdzy.ebikeoperate.model.pojo.EbikeEcuEnterRecords;
|
||||
import com.cdzy.ebikeoperate.model.pojo.EbikeEcuOutRecords;
|
||||
import com.cdzy.ebikeoperate.model.pojo.EbikeHelmetEnterRecords;
|
||||
@ -13,6 +14,7 @@ import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.Map;
|
||||
import java.util.Objects;
|
||||
|
||||
/**
|
||||
* 车辆部件的相关接口
|
||||
@ -107,4 +109,15 @@ public class EbikeComponentController {
|
||||
Page<EbikeEcuOutRecords> pageRecords = ebikeComponentService.ecuOutList(reqEbikeEcuOutRecordsDto);
|
||||
return JsonResult.success(pageRecords);
|
||||
}
|
||||
/**
|
||||
* 根据部件出库记录表主键,查询部件出库记录信息以及归还部件信息
|
||||
*
|
||||
* @param componentOutRecordId 部件出库记录ID
|
||||
* @return ResComponentOutRecordInfoDto
|
||||
*/
|
||||
@GetMapping("/getComponentOutRecordInfo")
|
||||
public JsonResult<?> getComponentOutRecordInfo(@RequestParam(name="componentOutRecordId") String componentOutRecordId) {
|
||||
return ebikeComponentService.getComponentOutRecordInfo(componentOutRecordId);
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
@ -30,6 +30,11 @@ public class ReqComponentEnterRecordDto {
|
||||
*/
|
||||
private String owningRegion;
|
||||
|
||||
/**
|
||||
* 关联出库记录Id 表示归还记录
|
||||
*/
|
||||
private String componentOutRecordId;
|
||||
|
||||
/**
|
||||
* 部件类型ID,表示部件的类别(如电池、ECU等,部件的编号)。
|
||||
*/
|
||||
|
||||
@ -24,7 +24,7 @@ public class ReqComponentOutRecordDto {
|
||||
private String componentOutRecordId;
|
||||
|
||||
/**
|
||||
* 所属区域,表示设备部件入库的区域。
|
||||
* 所属区域,表示设备部件出库的区域。
|
||||
*/
|
||||
private String owningRegion;
|
||||
|
||||
@ -47,22 +47,22 @@ public class ReqComponentOutRecordDto {
|
||||
*/
|
||||
private Integer enterQuantity;
|
||||
/**
|
||||
* 入库类型:0或空 表示暂存,1 表示入库。
|
||||
* 入库类型:0或空 表示暂存,1 表示出库。
|
||||
*/
|
||||
private Integer stockInType;
|
||||
|
||||
/**
|
||||
* 中控信息列表,包含所有ECU部件的入库记录。
|
||||
* 中控信息列表,包含所有ECU部件的出库记录。
|
||||
*/
|
||||
private List<EbikeEcuOutRecords> ebikeEcuOutRecords;
|
||||
|
||||
/**
|
||||
* 头盔信息列表,包含所有头盔部件的入库记录。
|
||||
* 头盔信息列表,包含所有头盔部件的出库记录。
|
||||
*/
|
||||
private List<EbikeHelmetOutRecords> ebikeHelmetOutRecords;
|
||||
|
||||
/**
|
||||
* 电池信息列表,包含所有电池部件的入库记录。
|
||||
* 电池信息列表,包含所有电池部件的出库记录。
|
||||
*/
|
||||
private List<EbikeBatteryOutRecords> ebikeBatteryOutRecords;
|
||||
}
|
||||
|
||||
@ -0,0 +1,67 @@
|
||||
package com.cdzy.ebikeoperate.model.dto.response;
|
||||
|
||||
import com.cdzy.ebikeoperate.model.pojo.*;
|
||||
import com.mybatisflex.annotation.Id;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
public class ResComponentOutRecordInfoDto {
|
||||
|
||||
/**
|
||||
* ID
|
||||
*/
|
||||
@Id
|
||||
private String componentOutRecordId;
|
||||
/**
|
||||
* 组织id(运营商id
|
||||
*/
|
||||
private Long orgId;
|
||||
|
||||
/**
|
||||
* 所属区域
|
||||
*/
|
||||
private String owningRegion;
|
||||
/**
|
||||
* 部件类型
|
||||
*/
|
||||
private String componentType;
|
||||
|
||||
/**
|
||||
* 出库数量
|
||||
*/
|
||||
private Integer outQuantity;
|
||||
|
||||
/**
|
||||
* 原部件处理方案
|
||||
*/
|
||||
private String oldComponentHandleOption;
|
||||
/**
|
||||
* 中控信息列表,包含所有ECU部件的出库记录。
|
||||
*/
|
||||
private List<EbikeEcuOutRecords> ebikeEcuOutRecords;
|
||||
|
||||
/**
|
||||
* 头盔信息列表,包含所有头盔部件的出库记录。
|
||||
*/
|
||||
private List<EbikeHelmetOutRecords> ebikeHelmetOutRecords;
|
||||
|
||||
/**
|
||||
* 电池信息列表,包含所有电池部件的出库记录。
|
||||
*/
|
||||
private List<EbikeBatteryOutRecords> ebikeBatteryOutRecords;
|
||||
/**
|
||||
* 中控信息列表,包含所有ECU部件的归还记录。
|
||||
*/
|
||||
private List<EbikeEcuEnterRecords> ebikeEcuEnterRecords;
|
||||
|
||||
/**
|
||||
* 头盔信息列表,包含所有头盔部件的归还记录。
|
||||
*/
|
||||
private List<EbikeHelmetEnterRecords> ebikeHelmetEnterRecords;
|
||||
|
||||
/**
|
||||
* 电池信息列表,包含所有电池部件的归还记录。
|
||||
*/
|
||||
private List<EbikeBatteryEnterRecords> ebikeBatteryEnterRecords;
|
||||
|
||||
}
|
||||
@ -41,6 +41,10 @@ public class EbikeComponentEnterRecords implements Serializable {
|
||||
*/
|
||||
private Long orgId;
|
||||
|
||||
/**
|
||||
* 关联出库记录Id 表示归还记录
|
||||
*/
|
||||
private String componentOutRecordId;
|
||||
/**
|
||||
* 所属区域
|
||||
*/
|
||||
|
||||
@ -2,6 +2,7 @@ package com.cdzy.ebikeoperate.service;
|
||||
|
||||
import com.cdzy.common.model.JsonResult;
|
||||
import com.cdzy.ebikeoperate.model.dto.request.*;
|
||||
import com.cdzy.ebikeoperate.model.dto.response.ResComponentOutRecordInfoDto;
|
||||
import com.cdzy.ebikeoperate.model.pojo.EbikeEcuEnterRecords;
|
||||
import com.cdzy.ebikeoperate.model.pojo.EbikeEcuOutRecords;
|
||||
import com.cdzy.ebikeoperate.model.pojo.EbikeHelmetEnterRecords;
|
||||
@ -74,4 +75,11 @@ public interface EbikeComponentService {
|
||||
*/
|
||||
Page<EbikeEcuOutRecords> ecuOutList(ReqEbikeEcuOutRecordsDto reqEbikeEcuOutRecordsDto);
|
||||
|
||||
/**
|
||||
* 根据部件出库记录表主键,查询部件出库记录信息以及归还部件信息
|
||||
*
|
||||
* @param componentOutRecordId 部件出库记录ID
|
||||
* @return ResComponentOutRecordInfoDto
|
||||
*/
|
||||
JsonResult<?> getComponentOutRecordInfo(String componentOutRecordId);
|
||||
}
|
||||
@ -6,6 +6,7 @@ import com.cdzy.common.model.JsonResult;
|
||||
import com.cdzy.ebikeoperate.enums.ComponentType;
|
||||
import com.cdzy.ebikeoperate.mapper.*;
|
||||
import com.cdzy.ebikeoperate.model.dto.request.*;
|
||||
import com.cdzy.ebikeoperate.model.dto.response.ResComponentOutRecordInfoDto;
|
||||
import com.cdzy.ebikeoperate.model.pojo.*;
|
||||
import com.cdzy.ebikeoperate.service.EbikeComponentService;
|
||||
import com.ebike.feign.clients.StaffFeignClient;
|
||||
@ -19,6 +20,7 @@ import org.springframework.transaction.annotation.Transactional;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
|
||||
import static com.cdzy.ebikeoperate.model.pojo.table.EbikeEcuEnterRecordsTableDef.EBIKE_ECU_ENTER_RECORDS;
|
||||
import static com.cdzy.ebikeoperate.model.pojo.table.EbikeEcuOutRecordsTableDef.EBIKE_ECU_OUT_RECORDS;
|
||||
@ -143,6 +145,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
|
||||
ebikeComponentEnterRecords.setOrgId(orgId);
|
||||
ebikeComponentEnterRecords.setComponentType(params.getComponentType());
|
||||
ebikeComponentEnterRecords.setEnterQuantity(params.getEnterQuantity());
|
||||
ebikeComponentEnterRecords.setComponentOutRecordId(params.getComponentOutRecordId());
|
||||
ebikeComponentEnterRecords.setComponentPrice(ebikeComponentTypeInfo.getPrice());
|
||||
ebikeComponentEnterRecords.setState(stockInType == 1 ? "1" : "0"); // 暂存为 0 入库为1
|
||||
return ebikeComponentEnterRecords;
|
||||
@ -232,9 +235,9 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
|
||||
|
||||
//入库记录更新数量 type 1 入库 2 出库
|
||||
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);
|
||||
QueryWrapper query = new QueryWrapper();
|
||||
query.eq("code", ebikeComponentTypeInfo.getId());
|
||||
EbikeComponentInventorycount ebikeComponentInventorycount = ebikeComponentInventorycountMapper.selectOneByQuery(query);
|
||||
if (ebikeComponentInventorycount == null) {
|
||||
ebikeComponentInventorycount = new EbikeComponentInventorycount();
|
||||
ebikeComponentInventorycount.setOrgId(orgId);
|
||||
@ -243,7 +246,6 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
|
||||
ebikeComponentInventorycount.setBrand(ebikeComponentTypeInfo.getBrand());
|
||||
ebikeComponentInventorycount.setUnit(ebikeComponentTypeInfo.getUnit());
|
||||
ebikeComponentInventorycount.setPrice(ebikeComponentTypeInfo.getPrice());
|
||||
ebikeComponentInventorycount.setCount(size);
|
||||
ebikeComponentInventorycountMapper.insert(ebikeComponentInventorycount);
|
||||
} else {
|
||||
if (type == 1) {//入库
|
||||
@ -413,7 +415,7 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
|
||||
Integer count = ebikeComponentInventorycount.getCount();
|
||||
String name = ebikeComponentInventorycount.getName();
|
||||
// String brand = ebikeComponentInventorycount.getBrand();
|
||||
if (count < outQuantity) {
|
||||
if (stockInType ==1 && count < outQuantity) {
|
||||
return JsonResult.failed(String.format("%s 的库存数量不足!剩余数量:%s", name, count));
|
||||
}
|
||||
// 获取或新增部件记录
|
||||
@ -631,18 +633,6 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
|
||||
int size = ebikeEcuOutRecords.size();
|
||||
updateOtherOutComponentStock(componentType, size);
|
||||
}
|
||||
|
||||
public StaffFeign getStaffFeignInfo() {
|
||||
String tokenValue = StpUtil.getTokenValue();
|
||||
// 调用 Feign 客户端获取用户信息
|
||||
JsonResult<StaffFeign> result = staffFeignClient.getInfoByToken(tokenValue);
|
||||
// 判断返回码,若失败则抛出异常
|
||||
if (result.getCode() != Code.SUCCESS) {
|
||||
throw new RuntimeException("获取用户信息失败");
|
||||
}
|
||||
// 返回获取到的 StaffFeign 数据
|
||||
return result.getData();
|
||||
}
|
||||
/**
|
||||
* 分页查询Ecu入库记录。
|
||||
*
|
||||
@ -673,6 +663,30 @@ public class EbikeComponentServiceImpl implements EbikeComponentService {
|
||||
Page<EbikeEcuOutRecords> page = reqEbikeEcuOutRecordsDto.getPageParam().getPage();
|
||||
return ebikeEcuOutRecordsMapper.paginate(page, query);
|
||||
}
|
||||
/**
|
||||
* 根据部件出库记录表主键,查询部件出库记录信息以及归还部件信息
|
||||
*
|
||||
* @param componentOutRecordId 部件出库记录ID
|
||||
* @return ResComponentOutRecordInfoDto
|
||||
*/
|
||||
@Override
|
||||
@Transactional
|
||||
public JsonResult<?> getComponentOutRecordInfo(String componentOutRecordId) {
|
||||
QueryWrapper query = new QueryWrapper();
|
||||
ResComponentOutRecordInfoDto resComponentOutRecordInfoDto = new ResComponentOutRecordInfoDto();
|
||||
return JsonResult.success(resComponentOutRecordInfoDto);
|
||||
}
|
||||
public StaffFeign getStaffFeignInfo() {
|
||||
String tokenValue = StpUtil.getTokenValue();
|
||||
// 调用 Feign 客户端获取用户信息
|
||||
JsonResult<StaffFeign> result = staffFeignClient.getInfoByToken(tokenValue);
|
||||
// 判断返回码,若失败则抛出异常
|
||||
if (result.getCode() != Code.SUCCESS) {
|
||||
throw new RuntimeException("获取用户信息失败");
|
||||
}
|
||||
// 返回获取到的 StaffFeign 数据
|
||||
return result.getData();
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user