Commit 73e7636e by 李小惠

Merge branch 'develop' of http://gitlab.sothing.top/843502640/jyzb_platformV2 into develop-lxh

parents 1ddc9c6c c92d5990
package com.junmp.jyzb.api.bean.req;
import lombok.Data;
@Data
public class OpenDoorReq {
private String warehouseId;
private String userId;
private String userName;
private String open;
}
\ No newline at end of file
...@@ -7,6 +7,7 @@ import com.junmp.jyzb.api.bean.query.PolicemanReq; ...@@ -7,6 +7,7 @@ import com.junmp.jyzb.api.bean.query.PolicemanReq;
import com.junmp.jyzb.api.bean.query.ShelfReq; import com.junmp.jyzb.api.bean.query.ShelfReq;
import com.junmp.jyzb.api.bean.query.WarehouseAreaReq; import com.junmp.jyzb.api.bean.query.WarehouseAreaReq;
import com.junmp.jyzb.api.bean.query.WarehouseReq; import com.junmp.jyzb.api.bean.query.WarehouseReq;
import com.junmp.jyzb.api.bean.req.OpenDoorReq;
import com.junmp.jyzb.api.bean.req.UpdateShelfReq; import com.junmp.jyzb.api.bean.req.UpdateShelfReq;
import com.junmp.jyzb.api.bean.req.UpdateWarehouseAreaReq; import com.junmp.jyzb.api.bean.req.UpdateWarehouseAreaReq;
import com.junmp.jyzb.api.bean.req.UpdateWarehouseReq; import com.junmp.jyzb.api.bean.req.UpdateWarehouseReq;
...@@ -27,6 +28,7 @@ import org.springframework.web.bind.annotation.RequestMapping; ...@@ -27,6 +28,7 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.io.UnsupportedEncodingException;
import java.util.List; import java.util.List;
@RestController @RestController
...@@ -44,6 +46,11 @@ public class WarehouseController { ...@@ -44,6 +46,11 @@ public class WarehouseController {
public ShelfService shelfService; public ShelfService shelfService;
@PostMapping(path="/OpenDoor",name="远程开门#logType=30")
@ApiOperation("远程开门")
public ApiRes<String> OpenDoor(@RequestBody @Validated(ValidationApi.add.class) OpenDoorReq req) throws UnsupportedEncodingException {
return ApiRes.success(warehouseService.OpenDoor(req));
}
@PostMapping(path="/AddWarehouse",name="添加仓库#logType=30") @PostMapping(path="/AddWarehouse",name="添加仓库#logType=30")
@ApiOperation("添加仓库") @ApiOperation("添加仓库")
......
...@@ -7,6 +7,7 @@ import com.junmp.jyzb.api.bean.dto.WarehouseDto; ...@@ -7,6 +7,7 @@ import com.junmp.jyzb.api.bean.dto.WarehouseDto;
import com.junmp.jyzb.api.bean.query.PolicemanReq; import com.junmp.jyzb.api.bean.query.PolicemanReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq; import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq;
import com.junmp.jyzb.api.bean.query.WarehouseReq; import com.junmp.jyzb.api.bean.query.WarehouseReq;
import com.junmp.jyzb.api.bean.req.OpenDoorReq;
import com.junmp.jyzb.api.bean.req.UpdateWarehouseReq; import com.junmp.jyzb.api.bean.req.UpdateWarehouseReq;
import com.junmp.jyzb.api.bean.req.WarrantyReq; import com.junmp.jyzb.api.bean.req.WarrantyReq;
import com.junmp.jyzb.api.util.WsWarehouseReq; import com.junmp.jyzb.api.util.WsWarehouseReq;
...@@ -16,6 +17,7 @@ import com.junmp.jyzb.entity.Warehouse; ...@@ -16,6 +17,7 @@ import com.junmp.jyzb.entity.Warehouse;
import com.junmp.jyzb.utils.ResponseResult; import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
import java.io.UnsupportedEncodingException;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -35,6 +37,12 @@ public interface WarehouseService extends IService<Warehouse> { ...@@ -35,6 +37,12 @@ public interface WarehouseService extends IService<Warehouse> {
String AddWarehouse(UpdateWarehouseReq req); String AddWarehouse(UpdateWarehouseReq req);
/** /**
* 远程开门
*
* @param req
*/
String OpenDoor(OpenDoorReq req) throws UnsupportedEncodingException;
/**
* 查询单个仓库信息 * 查询单个仓库信息
* *
* @param req * @param req
......
...@@ -15,6 +15,7 @@ import com.junmp.jyzb.api.bean.query.PolicemanReq; ...@@ -15,6 +15,7 @@ import com.junmp.jyzb.api.bean.query.PolicemanReq;
import com.junmp.jyzb.api.bean.query.QuerySupplierReq; import com.junmp.jyzb.api.bean.query.QuerySupplierReq;
import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq; import com.junmp.jyzb.api.bean.query.TjReq.TjOrgPriceReq;
import com.junmp.jyzb.api.bean.query.WarehouseReq; import com.junmp.jyzb.api.bean.query.WarehouseReq;
import com.junmp.jyzb.api.bean.req.OpenDoorReq;
import com.junmp.jyzb.api.bean.req.UpdateWarehouseReq; import com.junmp.jyzb.api.bean.req.UpdateWarehouseReq;
import com.junmp.jyzb.api.bean.req.WarrantyReq; import com.junmp.jyzb.api.bean.req.WarrantyReq;
import com.junmp.jyzb.api.bean.vo.InOrderInfoVo; import com.junmp.jyzb.api.bean.vo.InOrderInfoVo;
...@@ -29,6 +30,7 @@ import com.junmp.jyzb.mapper.*; ...@@ -29,6 +30,7 @@ import com.junmp.jyzb.mapper.*;
import com.junmp.jyzb.service.PubOrgService; import com.junmp.jyzb.service.PubOrgService;
import com.junmp.jyzb.service.WarehouseService; import com.junmp.jyzb.service.WarehouseService;
import com.junmp.jyzb.utils.*; import com.junmp.jyzb.utils.*;
import com.junmp.v2.auth.api.context.LoginContext;
import com.junmp.v2.common.exception.base.ServiceException; import com.junmp.v2.common.exception.base.ServiceException;
import com.junmp.v2.common.util.BeanPlusUtil; import com.junmp.v2.common.util.BeanPlusUtil;
import com.junmp.v2.common.util.HttpServletUtil; import com.junmp.v2.common.util.HttpServletUtil;
...@@ -37,7 +39,13 @@ import com.junmp.v2.db.api.factory.PageResultFactory; ...@@ -37,7 +39,13 @@ import com.junmp.v2.db.api.factory.PageResultFactory;
import com.junmp.v2.db.api.page.PageResult; import com.junmp.v2.db.api.page.PageResult;
import com.junmp.v2.office.api.OfficeExcelApi; import com.junmp.v2.office.api.OfficeExcelApi;
import com.junmp.v2.office.api.bean.ExcelExportParam; import com.junmp.v2.office.api.bean.ExcelExportParam;
import com.junmp.v2.sys.user.entity.SysUser;
import com.junmp.v2.sys.user.service.SysUserService;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.core.*;
import org.springframework.amqp.core.Queue;
import org.springframework.amqp.rabbit.core.RabbitAdmin;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -45,6 +53,7 @@ import org.springframework.transaction.annotation.Transactional; ...@@ -45,6 +53,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.UnsupportedEncodingException;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.*; import java.util.*;
...@@ -70,8 +79,13 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse> ...@@ -70,8 +79,13 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse>
private DeviceRedisCache redisCache; private DeviceRedisCache redisCache;
@Resource @Resource
private OfficeExcelApi officeExcelApi; private OfficeExcelApi officeExcelApi;
@Resource
private RabbitAdmin rabbitAdmin;
@Resource
private RabbitTemplate rabbitTemplate;
@Resource
private SysUserService sysUserService;
@Override @Override
...@@ -114,6 +128,32 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse> ...@@ -114,6 +128,32 @@ public class WarehouseServiceImpl extends ServiceImpl<WarehouseMapper,Warehouse>
} }
@Override @Override
public String OpenDoor(OpenDoorReq req) throws UnsupportedEncodingException {
if (ObjectUtil.isNull(req.getUserId()) ) {
// 人员信息没有传入,从上下文获取当前登录用户并设置到请求对象中
SysUser StartUser= sysUserService.getById(LoginContext.getContext().getLoginUser());
req.setUserId(String.valueOf(StartUser.getUserId()));
req.setUserName(StartUser.getRealName());
}
// 将请求对象序列化为JSON字符串
String jsonString = JSON.toJSONString(req);
// 创建广播交换器
FanoutExchange exchange = new FanoutExchange ("DeviceControl");
String exchangeName="DeviceControl";
rabbitAdmin.declareExchange(exchange);
// 将消息体封装到Message对象中
Message message = MessageBuilder.withBody(jsonString.getBytes())
.setExpiration("10000") // 设置消息的过期时间为10秒
.build();
// 发送消息到RabbitMQ
rabbitTemplate.convertAndSend(exchangeName, req.getWarehouseId(), message);
return null;
}
@Override
public WarehouseDto getOneWarehouse(WarehouseReq req) { public WarehouseDto getOneWarehouse(WarehouseReq req) {
Warehouse warehouse = WarehoustExist(req.getId()); Warehouse warehouse = WarehoustExist(req.getId());
WarehouseDto warehouseDto = new WarehouseDto(); WarehouseDto warehouseDto = new WarehouseDto();
......
...@@ -25,11 +25,11 @@ public class RabbitMQSendMsg { ...@@ -25,11 +25,11 @@ public class RabbitMQSendMsg {
rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(exchange).with(name).noargs()); rabbitAdmin.declareBinding(BindingBuilder.bind(queue).to(exchange).with(name).noargs());
String jsonString = JSON.toJSONString(msg); String jsonString = JSON.toJSONString(msg);
// // 创建 MessageProperties 对象,并设置 TTL //// // 创建 MessageProperties 对象,并设置 TTL
// MessageProperties messageProperties = new MessageProperties(); // MessageProperties messageProperties = new MessageProperties();
// messageProperties.setExpiration(String.valueOf(ttlMillis)); // messageProperties.setExpiration(String.valueOf(10));
// ////
// // 发送带有 TTL 的消息 //// // 发送带有 TTL 的消息
// rabbitTemplate.send(exchangeName, name, new Message(jsonString.getBytes(), messageProperties)); // rabbitTemplate.send(exchangeName, name, new Message(jsonString.getBytes(), messageProperties));
rabbitTemplate.convertAndSend(exchangeName, name, jsonString); rabbitTemplate.convertAndSend(exchangeName, name, jsonString);
} }
......
...@@ -99,9 +99,9 @@ public class WarehouseWebSocketServer implements WebSocketServerListener { ...@@ -99,9 +99,9 @@ public class WarehouseWebSocketServer implements WebSocketServerListener {
redisCache.put(channel, orgId); redisCache.put(channel, orgId);
} }
//推送消息到对应组织机构 //推送消息到对应组织机构
TopicExchange exchange = new TopicExchange("DevMonitorMsg"); TopicExchange exchange = new TopicExchange("topicExchange");
rabbitAdmin.declareExchange(exchange); rabbitAdmin.declareExchange(exchange);
String exchangeName="DevMonitorMsg"; String exchangeName="topicExchange";
rabbitTemplate.convertAndSend(exchangeName, orgId, "设备上线"); rabbitTemplate.convertAndSend(exchangeName, orgId, "设备上线");
protocol.response("true"); protocol.response("true");
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论