Commit 1d1f75d6 by 李小惠

11

parent 93eea402
...@@ -48,7 +48,6 @@ public class CabinetController111 implements CabinetDoc { ...@@ -48,7 +48,6 @@ public class CabinetController111 implements CabinetDoc {
} }
@PostMapping("/UpdateCabinet") @PostMapping("/UpdateCabinet")
@ApiOperation("修改单警柜信息") @ApiOperation("修改单警柜信息")
public ApiRes<Boolean> updateCabinet(@RequestBody @Validated(ValidationApi.edit.class) CabinetReq req) throws Exception { public ApiRes<Boolean> updateCabinet(@RequestBody @Validated(ValidationApi.edit.class) CabinetReq req) throws Exception {
......
package com.junmp.jyzb.mapper; package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.junmp.jyzb.entity.Inventory;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
...@@ -7,7 +9,7 @@ import java.util.List; ...@@ -7,7 +9,7 @@ import java.util.List;
import java.util.Map; import java.util.Map;
@Mapper @Mapper
public interface InventoryMapper { public interface InventoryMapper extends BaseMapper<Inventory> {
Map<String, Object> getSum(String queryType, String typeId); Map<String, Object> getSum(String queryType, String typeId);
Map<String, Object> getOrgNum(String typeId); Map<String, Object> getOrgNum(String typeId);
......
package com.junmp.jyzb.service.impl; package com.junmp.jyzb.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.api.bean.req.InventoryReq;
import com.junmp.jyzb.domain.EquipmentSize;
import com.junmp.jyzb.domain.EquipmentType;
import com.junmp.jyzb.domain.PubOrg; import com.junmp.jyzb.domain.PubOrg;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.service.CabinetService; import com.junmp.jyzb.service.CabinetService;
import com.junmp.jyzb.service.InventoryService; import com.junmp.jyzb.service.InventoryService;
import com.junmp.jyzb.service.WarehouseService; import com.junmp.jyzb.service.WarehouseService;
import com.junmp.jyzb.utils.HttpStatus; import com.junmp.jyzb.utils.HttpStatus;
import com.junmp.jyzb.utils.ResponseResult; import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.jyzb.utils.ReturnData;
import com.junmp.jyzb.utils.ReturnMsg; import com.junmp.jyzb.utils.ReturnMsg;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import javax.annotation.Resource; import javax.annotation.Resource;
import com.junmp.jyzb.mapper.InventoryMapper; import com.junmp.jyzb.mapper.InventoryMapper;
import java.math.BigDecimal; import java.math.BigDecimal;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import static com.junmp.jyzb.utils.CheckBlank.checkNotBlank; import static com.junmp.jyzb.utils.CheckBlank.checkNotBlank;
@Service @Service
public class InventoryServiceImpl implements InventoryService { public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory> implements InventoryService {
@Resource @Resource
private InventoryMapper inventoryMapper; private InventoryMapper inventoryMapper;
@Resource
private EquipmentTypeServiceImpl equipmentTypeService;
@Resource
private EquipmentSizeServiceImpl equipmentSizeService;
@Resource @Resource
private WarehouseService warehouseService; private WarehouseService warehouseService;
...@@ -32,6 +40,24 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -32,6 +40,24 @@ public class InventoryServiceImpl implements InventoryService {
private CabinetService cabinetService; private CabinetService cabinetService;
@Override @Override
public Inventory getInventoryDetail(InventoryReq req) {
Inventory invMap=this.getById(req.getID());
if (invMap == null) {
return null;
}
// 查询与库存表关联的其他数据
EquipmentType equipmentTypeInfo = equipmentTypeService.getById(invMap.getTypeId());
EquipmentSize equipmentSizeInfo = equipmentSizeService.getById(invMap.getSizeId());
// 创建并填充对象
invMap.setSizeName(equipmentSizeInfo.getName());
invMap.setTypeName(equipmentTypeInfo.getName());
// 填充其他关联信息的字段和对象引用
return invMap;
// return this.list(wrapper).get(0);
}
@Override
public ResponseResult getEquipmentInfo(Map<String, Object> inMsg) { public ResponseResult getEquipmentInfo(Map<String, Object> inMsg) {
//参数校验 //参数校验
try { try {
...@@ -45,7 +71,7 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -45,7 +71,7 @@ public class InventoryServiceImpl implements InventoryService {
String queryType = inMsg.get("queryType").toString(); String queryType = inMsg.get("queryType").toString();
String idMsg = inMsg.get("typeId").toString(); String idMsg = inMsg.get("typeId").toString();
//根据传入的queryType来辨别要查询什么信 //根据传入的queryType来辨别要查询什么信
if (queryType.equals("org") || queryType.equals("warehouse") || queryType.equals("cabinet")){ if (queryType.equals("org") || queryType.equals("warehouse") || queryType.equals("cabinet")){
Map<String,Object> returnMsg = getLocationEquipmentInfo(queryType,idMsg); Map<String,Object> returnMsg = getLocationEquipmentInfo(queryType,idMsg);
return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,returnMsg); return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,returnMsg);
...@@ -72,7 +98,7 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -72,7 +98,7 @@ public class InventoryServiceImpl implements InventoryService {
//检查resultMap中是否存在orgId //检查resultMap中是否存在orgId
if (resultMap.containsKey(locationId)) { if (resultMap.containsKey(locationId)) {
// 获取现有组织级数 // 获取现有组织级数
Map<String, Object> orgData = (Map<String, Object>) resultMap.get(locationId); Map<String, Object> orgData = (Map<String, Object>) resultMap.get(locationId);
List<Map<String, Object>> orgTypeList = (List<Map<String, Object>>) orgData.get("typeList"); List<Map<String, Object>> orgTypeList = (List<Map<String, Object>>) orgData.get("typeList");
...@@ -80,9 +106,9 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -80,9 +106,9 @@ public class InventoryServiceImpl implements InventoryService {
boolean typeExist = false; boolean typeExist = false;
for (Map<String, Object> typeData : orgTypeList) { for (Map<String, Object> typeData : orgTypeList) {
if (typeId.equals(typeData.get("typeId"))) { if (typeId.equals(typeData.get("typeId"))) {
// 获取现有的类型级别数 // 获取现有的类型级别数
List<Map<String, Object>> sizeList = (List<Map<String, Object>>) typeData.get("sizeList"); List<Map<String, Object>> sizeList = (List<Map<String, Object>>) typeData.get("sizeList");
sizeList.add(createSizeData(sizeId,sizeName, number,price)); //向sizeList中记录number的信 sizeList.add(createSizeData(sizeId,sizeName, number,price)); //向sizeList中记录number的信
int typeNumber = (int) typeData.get("typeNum"); int typeNumber = (int) typeData.get("typeNum");
float typePrice = (float) typeData.get("typeTotalPrice"); float typePrice = (float) typeData.get("typeTotalPrice");
typeData.put("typeNum", typeNumber + number); //计算装备数量 typeData.put("typeNum", typeNumber + number); //计算装备数量
...@@ -149,11 +175,11 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -149,11 +175,11 @@ public class InventoryServiceImpl implements InventoryService {
public ResponseResult setInventoryMsg(){ public ResponseResult setInventoryMsg(){
inventoryMapper.deleteAllMsg(); //清空数据库中已存在的信息 inventoryMapper.deleteAllMsg(); //清空数据库中已存在的信息
inventoryMapper.setOrgInventory(); //放入组织机构信息汇 inventoryMapper.setOrgInventory(); //放入组织机构信息汇
inventoryMapper.setCabinetInventory(); //放入组织机构信息汇 inventoryMapper.setCabinetInventory(); //放入组织机构信息汇
inventoryMapper.setWarehouseInventory(); //放入组织机构信息汇 inventoryMapper.setWarehouseInventory(); //放入组织机构信息汇
return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS); return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS);
} }
...@@ -167,7 +193,7 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -167,7 +193,7 @@ public class InventoryServiceImpl implements InventoryService {
} }
String locationType = msg.get("locationType").toString(); String locationType = msg.get("locationType").toString();
if (!locationType.equals("warehouse") && !locationType.equals("cabinet")){ if (!locationType.equals("warehouse") && !locationType.equals("cabinet")){
return new ResponseResult(HttpStatus.ERROR, ReturnMsg.ERROR,"输入的locationType值有); return new ResponseResult(HttpStatus.ERROR, ReturnMsg.ERROR,"输入的locationType值有�");
}else if(locationType.equals("warehouse")){ }else if(locationType.equals("warehouse")){
warehouseService.setWarehouseInventory(msg); warehouseService.setWarehouseInventory(msg);
}else if(locationType.equals("cabinet")){ }else if(locationType.equals("cabinet")){
...@@ -194,7 +220,7 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -194,7 +220,7 @@ public class InventoryServiceImpl implements InventoryService {
String typeId = msg.get("typeId").toString(); String typeId = msg.get("typeId").toString();
String sizeId = msg.get("sizeId").toString(); String sizeId = msg.get("sizeId").toString();
//根据传入的queryType来辨别要查询什么信 //根据传入的queryType来辨别要查询什么信
if (queryType.equals("org") || queryType.equals("warehouse") || queryType.equals("cabinet")){ if (queryType.equals("org") || queryType.equals("warehouse") || queryType.equals("cabinet")){
List<Map<String,Object>> returnMsg = inventoryMapper.getInventoryList(queryType,typeCode,typeId,sizeId); List<Map<String,Object>> returnMsg = inventoryMapper.getInventoryList(queryType,typeCode,typeId,sizeId);
return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,returnMsg); return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,returnMsg);
...@@ -220,7 +246,6 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -220,7 +246,6 @@ public class InventoryServiceImpl implements InventoryService {
public ResponseResult getInventoryDevelop() { public ResponseResult getInventoryDevelop() {
return null; return null;
} }
}
@Override @Override
public ResponseResult InvertoryBindBox(Map<String, Object> msg) { public ResponseResult InvertoryBindBox(Map<String, Object> msg) {
...@@ -231,9 +256,9 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -231,9 +256,9 @@ public class InventoryServiceImpl implements InventoryService {
} catch (IllegalArgumentException e) { } catch (IllegalArgumentException e) {
return new ResponseResult(HttpStatus.ERROR, ReturnMsg.ERROR,e.getMessage()); return new ResponseResult(HttpStatus.ERROR, ReturnMsg.ERROR,e.getMessage());
} }
//将装备和箱门进行绑定(简单来 说就是更新数据库中的单条记录信息 //将装备和箱门进行绑定(简单来 说就是更新数据库中的单条记录信息
Inventory inventory = inventoryMapper.selectOne(new LambdaQueryWrapper<Inventory>() Inventory inventory = inventoryMapper.selectOne(new LambdaQueryWrapper<Inventory>()
.eq(Inventory::getId, msg.get("inventoryId")) .eq(Inventory::getID, msg.get("inventoryId"))
.eq(Inventory::getLocationId, msg.get("locationId"))); .eq(Inventory::getLocationId, msg.get("locationId")));
if (Objects.isNull(inventory)){ if (Objects.isNull(inventory)){
return new ResponseResult(HttpStatus.ERROR, ReturnMsg.ERROR, ReturnData.NO_DATA); return new ResponseResult(HttpStatus.ERROR, ReturnMsg.ERROR, ReturnData.NO_DATA);
...@@ -242,4 +267,27 @@ public class InventoryServiceImpl implements InventoryService { ...@@ -242,4 +267,27 @@ public class InventoryServiceImpl implements InventoryService {
inventoryMapper.updateById(inventory); inventoryMapper.updateById(inventory);
return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,"绑定成功"); return new ResponseResult(HttpStatus.SUCCESS, ReturnMsg.PASS,"绑定成功");
} }
/**
* @Author: Zhaojw
* @Description: 生成lambda表达式
* @DateTime: 2023/7/20 13:08
* @Params:
* @Return
*/
private LambdaQueryWrapper<Inventory> createWrapper(InventoryReq req) {
LambdaQueryWrapper<Inventory> wrapper = new LambdaQueryWrapper<>();
if (ObjectUtil.isEmpty(req)) {
return wrapper;
}
//根据库存ID查询
wrapper.eq(ObjectUtil.isNotEmpty(req.getID()), Inventory::getID, req.getID());
//根据epc模糊查询
wrapper.like(ObjectUtil.isNotEmpty(req.getEpc()), Inventory::getEpc, req.getEpc());
//根据位置
wrapper.eq(ObjectUtil.isNotEmpty(req.getLocationId()), Inventory::getLocationId, req.getLocationId());
wrapper.orderByDesc(Inventory::getUpdateTime);
return wrapper;
}
} }
...@@ -7,14 +7,13 @@ import org.springframework.stereotype.Component; ...@@ -7,14 +7,13 @@ import org.springframework.stereotype.Component;
import java.util.Map; import java.util.Map;
/** /**
* 创建消息接收监听 * 创建消息接收监听
* */ * */
@Component @Component
@RabbitListener(queues = "TestDirectQueue") //监听的队列名TestDirectQueue @RabbitListener(queues = "TestDirectQueue") //监听的队列名TestDirectQueue
public class DirectReceiver { public class DirectReceiver {
@RabbitHandler @RabbitHandler
public void process(Map testMessage) { public void process(Map testMessage) {
System.out.println("DirectReceiver消费者收到消 : " + testMessage.toString()); System.out.println("DirectReceiver消费者收到消 : " + testMessage.toString());
} }
} }
}
\ No newline at end of file
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论