Commit e81973a5 by 李小惠

上传业务模块代码,对其进行了新增和修改

parent 1525bb9c
......@@ -80,3 +80,23 @@ Thumbs.db
/.idea/compiler.xml
/.idea/modules.xml
/pom.xml
/jyzb-biz/jyzb-biz.iml
/jyzb-biz/jyzb-biz.iml
/jyzb-mq/jyzb-mq-producer/pom.xml
/jyzb-biz/jyzb-biz.iml
/jyzb-mq/pom.xml
/jyzb-mq/jyzb-mq.iml
/jyzb-mq/jyzb-mq-consumer/pom.xml
/jyzb-mq/jyzb-mq-consumer/src/main/java/com/junmp/jyzb/config/DirectRabbitConfig.java
/jyzb-mq/jyzb-mq-consumer/src/main/java/com/junmp/jyzb/config/DirectReceiver.java
/jyzb-mq/jyzb-mq-consumer/src/main/java/com/junmp/jyzb/config/DirectReceiver.java.orig
/jyzb-mq/jyzb-mq-consumer/src/main/java/com/junmp/jyzb/controller/SendMsgController.java
/jyzb-mq/jyzb-mq-consumer/src/main/java/com/junmp/jyzb/MqConsumerApplication.java
/jyzb-mq/jyzb-mq-consumer/src/main/resources/application.yml
/jyzb-mq/jyzb-mq-consumer/target/maven-archiver/pom.properties
/jyzb-mq/jyzb-mq-producer/src/main/java/com/junmp/jyzb/config/DirectRabbitConfig.java
/jyzb-mq/jyzb-mq-producer/src/main/java/com/junmp/jyzb/controller/SendMsgController.java
/jyzb-mq/jyzb-mq-producer/src/main/java/com/junmp/jyzb/MqProducerApplication.java
/jyzb-mq/jyzb-mq-producer/src/main/resources/application.yml
/jyzb-mq/jyzb-mq-producer/target/maven-archiver/pom.properties
/jyzb-biz/jyzb-biz.iml
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.util.List;
/**
* 根据区域id查询装备详细信息输出实体类
*/
@Data
public class AreaInsDto {
/**
* 仓库id
*/
private String warehouseId;
/**
* warehouseName
*/
private String warehouseName;
/**
*location 仓库地点
*/
private String warehouseLocation;
/**
*list 装备汇总列表
*/
private List<InventorySumDto> list;
}
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
/**
* 根据区域id查询装备汇总输出实体类
*/
@Data
public class AreaInventoryDto implements Serializable {
/**
* 仓库id
*/
private String warehouseId;
/**
* warehouseName
*/
private String warehouseName;
/**
*location 仓库地点
*/
private String warehouseLocation;
/**
* 区域名称
*/
private String warehouseAreaName;
/**
*list 装备汇总列表
*/
private List<InventorySumDto> list;
}
package com.junmp.jyzb.api.bean.dto;
import cn.hutool.core.date.DateTime;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import java.io.Serializable;
......
package com.junmp.jyzb.api.bean.dto;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class LogDetailDto implements Serializable {
/**
* 物资id
*/
@ApiModelProperty(value = "物资id")
private String inventoryId;
/**
* 单据ID
*/
@ApiModelProperty(value = "单据ID")
private String orderMainId;
/**
* EPC信息
*/
@ApiModelProperty(value = "EPC信息")
private String epc;
/**
* 装备名称
*/
@ApiModelProperty(value = "装备名称")
private String equipmentName;
/**
* 装备号型
*/
@ApiModelProperty(value = "装备号型")
private String equipmentSize;
/**
* 供应商
*/
@ApiModelProperty(value = "供应商")
private String equipmentSupplier;
/**
* 装备类型:0单件/1装备包
*/
@ApiModelProperty(value = "装备类型:0单件/1装备包")
private Integer equipmentType;
/**
* 状态,0正常/1异常
*/
@ApiModelProperty(value = "状态,0正常/1异常")
private Integer errorState;
}
package com.junmp.jyzb.api.bean.dto;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@Data
public class LogSummaryDto implements Serializable {
/**
* 组织机构ID
*/
@ApiModelProperty(value = "组织机构ID")
private String orgId;
/**
* 组织机构名称
*/
@ApiModelProperty(value = "组织机构名称")
private String orgName;
/**
* 单据id
*/
@ApiModelProperty(value = "单据id")
private String orderMainId;
/**
* 存储ID
*/
@ApiModelProperty(value = "存储ID")
private String locationId;
/**
* 存储名称:XX仓库,XX单警柜
*/
@ApiModelProperty(value = "存储名称")
private String locationName;
/**
* 设备标识
*/
@ApiModelProperty(value = "设备标识")
private String device;
/**
* 出入设备:0手持机/1单警柜/2通道
*/
@ApiModelProperty(value = "出入设备:0手持机/1单警柜/2通道")
private Integer deviceType;
/**
* 操作时间
*/
@ApiModelProperty(value = "操作时间")
private Date useTime;
/**
* 业务类型
*/
@ApiModelProperty(value = "业务类型")
private String bussinessType;
/**
* 操作人员姓名
*/
@ApiModelProperty(value = "操作人员姓名")
private String userName;
/**
* 出入库类型:0出库/1入库
*/
@ApiModelProperty(value = "出入库类型:0出库/1入库")
private Integer outInState;
/**
* 照片信息
*/
@ApiModelProperty(value = "照片信息")
private String picture;
/**
* 装备记录集合,警棍、盾牌
*/
@ApiModelProperty(value = "装备记录集合")
private String equipments;
/**
* 装备详细信息
*/
@ApiModelProperty(value = "装备详细信息")
private List<LogDetailDto> equipmentList;
}
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
public class OrderDetailDto implements Serializable {
private Long id;
private String orderId;
private String type;
private String equipmentType;
private String equipmentTypeName;
private Long equipmentSize;
private String equipmentSizeName;
private Long equipment_supplier;
private String equipmentSupplierName;
private String planNum;
private String actualNum;
private String price;
private String orderType;
private Date createTime;
private Date updateTime;
private String createUser;
private String updateUser;
}
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.io.Serializable;
import java.util.List;
@Data
public class OrderDto implements Serializable {
private String id;
private String examineState;
private String processType;
/**
* 单据类型:入库单/出库单
*/
private String orderType;
/**
* 工作流ID
*/
private String processId;
/**
* 单据业务类型
*/
private String bussinessType;
/**
* 订单号
*/
private String orderCode;
/**
* 发物单位
*/
private String startOrgId;
/**
* 发物单位名称
*/
private String startOrgName;
/**
* 收物单位
*/
private String endOrgId;
/**
* 收物单位名称
*/
private String endOrgName;
/**
* 发物单位负责人id
*/
private String startOrgUserId;
/**
* 发物单位负责人姓名
*/
private String startOrgUserName;
/**
* 收物单位负责人id
*/
private String endOrgUserId;
/**
* 收物单位负责人姓名
*/
private String endOrgUserName;
/**
* 总价格
*/
private String price;
/**
* 应入库数量
*/
private String inventoryQuantity;
/**
* 附件地址
*/
private String attachmentLocation;
/**
* 单据包含的物资集合
*/
private String invList;
/**
* 明细列表
*/
private List<OrderDetailDto> detailList;
}
package com.junmp.jyzb.api.bean.dto;
import lombok.Data;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@Data
public class OrderMainDto implements Serializable {
private String id;
private String orderType;
private String processId;
private String bussinessType;
private String orderCode;
private Long startOrgId;
private String startOrgName;
private Long endOrgId;
private String endOrgName;
private String startOrgUserId;
private String startOrgUserName;
private String endOrgUserId;
private String endOrgUserName;
private String examineState;
private BigDecimal price;
private Integer inventoryQuantity;
private Integer actualQuantity;
private Integer manualState;
private Integer orderState;
private String attachmentLocation;
private String invList;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
private String createUser;
private String updateUser;
}
......@@ -20,6 +20,7 @@ import java.util.List;
public class InventoryReq extends BaseRequest {
@NotBlank(message = "装备id不能为空",groups = {detail.class})
private String id;
/**
* 装备包ID
......@@ -69,7 +70,6 @@ public class InventoryReq extends BaseRequest {
/**
* 组织机构ID
*/
@NotNull(message = "组织机构id不能为空", groups = {detail.class})
private Long orgId;
/**
* 单警柜id
......
package com.junmp.jyzb.api.bean.query;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import java.util.Date;
@Data
@EqualsAndHashCode(callSuper = true)
public class OrderDetailReq extends BaseRequest {
private Long id;
@NotBlank(message = "任务单id不能为空",groups = {detail.class})
private String orderId;
private String type;
private String equipmentType;
private String equipmentTypeName;
private Long equipmentSize;
private String equipmentSizeName;
private Long equipment_supplier;
private String equipmentSupplierName;
private String planNum;
private String actualNum;
private String price;
private String orderType;
private Date createTime;
private Date updateTime;
private String createUser;
private String updateUser;
}
package com.junmp.jyzb.api.bean.query;
import com.junmp.v2.common.bean.request.BaseRequest;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import java.math.BigDecimal;
import java.util.Date;
@Data
@EqualsAndHashCode(callSuper = true)
public class OrderMainReq extends BaseRequest {
@NotBlank(message = "任务单id不能为空",groups = {detail.class})
private String id;
private String orderType;
private String processId;
private String bussinessType;
private String orderCode;
private Long startOrgId;
private String startOrgName;
private Long endOrgId;
private String endOrgName;
private String startOrgUserId;
private String startOrgUserName;
private String endOrgUserId;
private String endOrgUserName;
private String examineState;
private BigDecimal price;
private Integer inventoryQuantity;
private Integer actualQuantity;
private Integer manualState;
private Integer orderState;
private String attachmentLocation;
private String invList;
/**
* 创建时间
*/
private Date createTime;
/**
* 更新时间
*/
private Date updateTime;
private String createUser;
private String updateUser;
}
package com.junmp.jyzb.api.bean.req;
import lombok.Data;
@Data
public class DetailListReq {
/**
* 类型
*/
private String Id;
/**
* 单据类型,out出库,in入库
*/
private String type;
/**
* 类型id
*/
private String equipmentType;
/**
* 类型名称
*/
private String equipmentTypeName;
/**
* 号型
*/
private String equipmentSize;
private String equipmentSizeName;
private Long equipmentSupplier;
private String equipmentSupplierName;
private String planNum;
private String price;
}
......@@ -18,15 +18,7 @@ public class EquipmentBindReq extends BaseRequest {
@NotBlank(message = "箱号id不能为空",groups = {edit.class})
private String cabinetBoxId;
/**
* 单警柜箱号id
*/
private String cabinetId;
/**
* 单警柜箱号id
*/
private Long orgId;
/**
* 装备集合
* 装备id集合
*/
List<InventoryReq> equipmentList;
List<String> equipmentList;
}
package com.junmp.jyzb.api.bean.req;
import com.junmp.v2.common.bean.request.BaseRequest;
import com.junmp.v2.common.bean.request.ValidationApi;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.validation.constraints.NotBlank;
import javax.validation.constraints.NotNull;
import java.util.List;
@Data
public class UpdateOrderReq {
@EqualsAndHashCode(callSuper = true)
public class UpdateOrderReq extends BaseRequest {
@NotBlank(message = "id不能为空",groups = {edit.class})
private String Id;
private String examineState;
private String processType;
/**
* 状态
* 单据类型:入库单/出库单
*/
@NotNull(message = "状态不能为空", groups = {ValidationApi.updateStatus.class})
@NotNull(message = "状态不能为空", groups = {updateStatus.class})
private String orderType;
/**
* 单据类型:入库单/出库单
* 工作流ID
*/
private String processId;
/**
* 工作流ID
* 单据业务类型
*/
private String bussinessType;
/**
* 单据业务类型
* 订单号
*/
private String orderCode;
/**
* 订单号
* 发物单位
*/
private String startOrgId;
/**
* 发物单位
* 发物单位名称
*/
private String startOrgName;
/**
* 发物单位名称
* 收物单位
*/
private String endOrgId;
/**
* 收物单位
* 收物单位名称
*/
private String endOrgName;
/**
......@@ -87,41 +92,13 @@ public class UpdateOrderReq {
// */
// private String detailList;
/**
* 组织机构列表
* 删除装备列表
*/
private List<String> deleteList;
/**
* 组织机构列表
*/
private List<DetailList> detailList;
@Data
public class DetailList {
/**
* 类型
*/
private String Id;
/**
* 类型
*/
private String typeId;
/**
* 类型名称
*/
private String typeName;
/**
* 号型
*/
private String sizeId;
private String sizeName;
private String supplierId;
private String supplierName;
private String planNum;
* 明细列表
*/
private List<DetailListReq> detailList;
private String price;
}
}
......@@ -8,7 +8,7 @@ import lombok.Getter;
public enum OrderExceptionEnum implements IExceptionEnum {
ORDER_NOT_EXIST(CommonConstant.DEFAULT_USER_ERROR_CODE,"单据不存在"),
ERROR_COMMOAND(CommonConstant.DEFAULT_USER_ERROR_CODE,"操作有误,无法既删除又修改"),
ORDER_CAN_NOT_UPDATE(CommonConstant.DEFAULT_USER_ERROR_CODE,"进行中的单据无法修改");
ORDER_CAN_NOT_UPDATE(CommonConstant.DEFAULT_USER_ERROR_CODE,"进行中的单据或已完成的单据无法修改");
/**
* 错误编码
*/
......
<?xml version="1.0" encoding="UTF-8"?>
<module version="4">
<component name="AdditionalModuleElements">
<content url="file://$MODULE_DIR$" dumb="true">
<sourceFolder url="file://$MODULE_DIR$/src/main/test" isTestSource="true" />
</content>
</component>
<component name="FacetManager">
<facet type="Spring" name="Spring">
<configuration />
......
package com.junmp.jyzb.config.rabbitMQ;
import org.springframework.amqp.core.Binding;
import org.springframework.amqp.core.BindingBuilder;
import org.springframework.amqp.core.DirectExchange;
import org.springframework.amqp.core.Queue;
import org.springframework.amqp.core.*;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
......@@ -11,21 +8,21 @@ import org.springframework.context.annotation.Configuration;
public class DirectRabbitConfig {
// 死信交换机名称
private static final String DEAD_EXCHANGE = "dead_exchange";
//队列 起名:TestDirectQueue
//队列 起名:
@Bean
public Queue TestDirectQueue() {
return new Queue("Test1Queue",true);
public Queue TestQueue() {
return new Queue("TestQueue",true);
}
//Direct交换机 起名:TestDirectExchange
//Direct交换机 起名
@Bean
DirectExchange TestDirectExchange() {
return new DirectExchange("OrderExchange");
public DirectExchange TestExchange() {
return new DirectExchange("TestExchange",true,false);
}
//绑定 将队列和交换机绑定, 并设置用于匹配键:TestDirectRouting
//绑定 将队列和交换机绑定, 并设置用于匹配键:Test1Routing
@Bean
Binding bindingDirect() {
return BindingBuilder.bind(TestDirectQueue()).to(TestDirectExchange()).with("Test1Routing");
return BindingBuilder.bind(TestQueue()).to(TestExchange()).with("Test1Routing");
}
}
\ No newline at end of file
......@@ -10,7 +10,7 @@ import org.springframework.context.annotation.Configuration;
@Configuration
public class ProductRabbitConfig {
//队列 起名:TestDirectQueue
//队列 起名:Test1Queue
@Bean
public Queue TestDirectQueue() {
// durable:是否持久化,默认是false,持久化队列:会被存储在磁盘上,当消息代理重启时仍然存在,暂存队列:当前连接有效
......@@ -21,14 +21,14 @@ public class ProductRabbitConfig {
return new Queue("Test1Queue",true);
}
//Direct交换机 起名:TestDirectExchange
//Direct交换机 起名:Test1Exchange
@Bean
DirectExchange TestDirectExchange() {
// return new DirectExchange("TestDirectExchange",true,true);
return new DirectExchange("Test1Exchange",true,false);
}
//绑定 将队列和交换机绑定, 并设置用于匹配键:TestDirectRouting
//绑定 将队列和交换机绑定, 并设置用于匹配键:Test1Routing
@Bean
Binding bindingDirect() {
return BindingBuilder.bind(TestDirectQueue()).to(TestDirectExchange()).with("Test1Routing");
......
package com.junmp.jyzb.config.rabbitMQ;
import org.springframework.amqp.core.*;
import org.springframework.beans.factory.annotation.Qualifier;
import org.springframework.context.annotation.Bean;
import org.springframework.context.annotation.Configuration;
@Configuration
public class RabbitmqConfig {
//1.交换机
@Bean("LogExchange")
public Exchange bootExchange(){
return ExchangeBuilder.directExchange("LogExchange").durable(true).build();
}
//2.队列
@Bean("LogQueue")
public Queue bootQueue(){
return QueueBuilder.durable("LogQueue").build();
}
//3.队列和交换机的绑定关系(队列,交换机,rountingkey)
@Bean
public Binding bingQueueExchange(@Qualifier("LogQueue") Queue queue, @Qualifier("LogExchange")Exchange exchange){
return BindingBuilder.bind(queue).to(exchange).with("log").noargs();
}
@Bean("OrderExchange")
public Exchange OrderExchange(){
return ExchangeBuilder.directExchange("OrderExchange").durable(true).build();
}
//2.队列
@Bean("OrderQueue")
public Queue OrderQueue(){
return QueueBuilder.durable("OrderQueue").build();
}
//3.队列和交换机的绑定关系(队列,交换机,rountingkey)
@Bean
public Binding bindQueueExchange(@Qualifier("OrderQueue") Queue queue, @Qualifier("OrderExchange")Exchange exchange){
return BindingBuilder.bind(queue).to(exchange).with("1").noargs();
}
}
......@@ -38,15 +38,9 @@ public class InventoryController {
String aa="";
return ApiRes.success(mqProductService.sendMessage());
}
//根据组织机构id/单警柜id/仓库id查询出库存的汇总信息
@PostMapping("/GetEquipmentInfo")
@ApiOperation("根据条件查询库存汇总信息")
public ApiRes<PageResult<InventorySummary>> getEquipmentInfo(@RequestBody @Validated(ValidationApi.edit.class) InventorySumReq req) {
return ApiRes.success(inventorySummaryService.getEquipmentInfo(req));
}
//填充汇总信息
//填充汇总信息(将表中的数据base_inventory_summary进行删除并且根据base_inventory表中数据同步)
@PostMapping("/SetInventoryMsg")
@ApiOperation("填充汇总表信息")
public ApiRes<Boolean> setInventoryMsg() {
......@@ -57,62 +51,55 @@ public class InventoryController {
return ApiRes.success(result);
}
@PostMapping("/getEquipmentInfo")
@ApiOperation("查询库存明细信息")
public ResponseResult getEquipmentInfo(@RequestBody Map<String, Object> msg) {
ResponseResult returnMsg = inventoryService.getEquipmentInfo(msg);
return returnMsg;
}
//装备绑定箱门
@PostMapping("/EquipmentBind")
@ApiOperation("装备绑定箱门")
public ApiRes<Boolean> InventoryBind(@RequestBody @Validated(ValidationApi.edit.class) EquipmentBindReq req){
return ApiRes.success(inventoryService.InventoryBind(req));
}
//手动修改仓库数量信息,修改的是base_warehouse中的个别字段(总数,总价,入库数,出库数),是通过inventory_summary进行统计的
@PostMapping("/UpdateWarehouseInsNum")
@ApiOperation("手动重置仓库库存数量信息")
public ApiRes<Boolean> UpdateWarehouseInsNum(@RequestBody @Validated(ValidationApi.detail.class) WarehouseReq req){
return ApiRes.success(inventoryService.UpdateWarehouseInsNum(req));
}
//手动修改单警柜数量信息,修改的是base_cabinet中的个别字段(总数,总价,入库数,出库数),是通过inventory_summary进行统计的
@PostMapping("/UpdateCabinetInsNum")
@ApiOperation("手动重置单警柜库存数量信息")
public ApiRes<Boolean> UpdateCabinetInsNum(@RequestBody @Validated(ValidationApi.detail.class)CabinetReq req){
return ApiRes.success(inventoryService.UpdateCabinetInsNum(req));
}
//根据Epc获取装备简要信息
@PostMapping("/GetInvInfoByEpc")
@ApiOperation("根据EPC列表获取装备信息(简要)")
public ApiRes<List<EqsBriefDto>> GetInvInfoByEpc(@RequestBody InventoryReq req){
public ApiRes<List<InventoryDto>> GetInvInfoByEpc(@RequestBody InventoryReq req){
return ApiRes.success(inventoryService.GetInvInfoByEpc(req));
}
//通过组织机构id获取装备详情信息(不是装备汇总信息)
@PostMapping("/GetInventoryByOrgId")
@ApiOperation("查询组织机构拥有装备详情列表")
public ApiRes<List<InventoryDto>> getInventoryByOrgId(@RequestBody @Validated(ValidationApi.detail.class) InventoryReq req){
return ApiRes.success(inventoryService.getInventoryByOrgId(req));
//根据组织机构id/单警柜id/仓库id查询出库存的汇总信息√
@PostMapping("/GetEquipmentInfo")
@ApiOperation("根据条件查询库存汇总信息")
public ApiRes<PageResult<InventorySummary>> getEquipmentInfo(@RequestBody InventorySumReq req) {
return ApiRes.success(inventorySummaryService.getEquipmentInfo(req));
}
//根据组织机构/单警柜id/仓库id查询每件装备细信的详息
//根据组织机构/单警柜id/仓库id查询每件装备细信的详息
@PostMapping("/EqsBySearchType")
@ApiOperation("根据传入信息查询装备信息")
@ApiOperation("查询库存装备详细信息")
public ApiRes<List<InventoryDto>> EqsBySearchType(@RequestBody @Validated(ValidationApi.edit.class) InventoryReq req ){
return ApiRes.success(inventoryService.EqsBySearchType(req));
}
//查询箱门 的装备汇总信息(传递cabinetBoxId)
//查询单警柜下的装备信息汇总(传递cabinetId)
//通过装备id获取该装备的详细信息
//根据装备id查询出装备的详细信息
@PostMapping("/GetDetail")
@ApiOperation("根据装备id查询装备明细信息")
public ApiRes<InventoryDto> getInventoryDetail(@RequestBody InventoryReq req) {
public ApiRes<InventoryDto> getInventoryDetail(@RequestBody @Validated(ValidationApi.detail.class) InventoryReq req) {
return ApiRes.success(inventoryService.getInventoryDetail(req));
}
......@@ -122,16 +109,18 @@ public class InventoryController {
public ApiRes<List<EqsBriefDto>> searchEqsByBoxId(@RequestBody @Validated(ValidationApi.detail.class) CabinetBoxReq req){
return ApiRes.success(inventoryService.searchEqsByBoxId(req));
}
//查询单警柜下的汇总信息(通过单警柜id进行获取)
// @PostMapping("/EqsByCabinetId")
// @ApiOperation("查询单警柜下的汇总信息")
// public ApiRes<List<EqsBriefDto>> EqsByCabinetId(){
// return ApiRes.success(inventoryService.EqsByCabinetId());
// }
//查询单警柜箱门下的汇总信息(传递cabinetBoxId)
@PostMapping("/EqsByCabinetBoxId")
@ApiOperation("查询箱门下的汇总信息")
public ApiRes<List<InventorySummary>> EqsByCabinetId(@RequestBody @Validated(ValidationApi.detail.class)CabinetBoxReq req){
return ApiRes.success(inventoryService.EqsByCabinetBoxId(req));
}
@PostMapping("/ShelfInventoryList")
@ApiOperation("根据货架id查询装备信息汇总")
public ApiRes<ShelfInventoryDto> ShelfInventoryList(@RequestBody @Validated(ValidationApi.edit.class) ShelfReq req){
public ApiRes<List<InventorySummary>> ShelfInventoryList(@RequestBody @Validated(ValidationApi.edit.class) ShelfReq req){
return ApiRes.success(inventoryService.ShelfInventoryList(req));
}
......@@ -143,9 +132,10 @@ public class InventoryController {
@PostMapping("/AreaInventoryList")
@ApiOperation("根据区域id查询装备信息汇总")
public ApiRes<AreaInventoryDto> AreaInventoryList(@RequestBody @Validated(ValidationApi.edit.class) WarehouseAreaReq req){
public ApiRes<List<InventorySummary>> AreaInventoryList(@RequestBody @Validated(ValidationApi.edit.class) WarehouseAreaReq req){
return ApiRes.success(inventoryService.AreaInventoryList(req));
}
}
package com.junmp.jyzb.controller;
import cn.hutool.core.util.ObjectUtil;
import com.junmp.jyzb.api.bean.dto.LogSummaryDto;
import com.junmp.jyzb.api.bean.dto.OrderDetailDto;
import com.junmp.jyzb.api.bean.dto.OrderDto;
import com.junmp.jyzb.api.bean.dto.OrderMainDto;
import com.junmp.jyzb.api.bean.query.OrderDetailReq;
import com.junmp.jyzb.api.bean.query.OrderMainReq;
import com.junmp.jyzb.api.bean.query.ProductSkuReq;
import com.junmp.jyzb.api.bean.req.UpdateOrderReq;
import com.junmp.jyzb.config.rabbitMQ.RabbitmqConfig;
import com.junmp.jyzb.rabbitmq.OrderMQSender;
import com.junmp.jyzb.service.LogSummaryService;
import com.junmp.jyzb.service.OrderLogService;
import com.junmp.jyzb.service.OrderService;
import com.junmp.jyzb.utils.ResponseResult;
import com.junmp.v2.common.bean.request.ValidationApi;
......@@ -10,6 +20,7 @@ import com.junmp.v2.common.bean.response.ApiRes;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
......@@ -17,6 +28,8 @@ import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
@RestController
......@@ -26,11 +39,20 @@ import java.util.Map;
public class OrderController {
@Resource
public OrderService orderService;
@Resource
private RabbitTemplate rabbitTemplate;
@Resource
private LogSummaryService logSummaryService;
@Resource
private OrderLogService orderLogService;
//通过工作流进行操作处理的
@PostMapping("/AddOrder")
@ApiOperation("新增任务单")
public ApiRes<String> addOrder(@RequestBody UpdateOrderReq req) {
if (ObjectUtil.isNotEmpty(req.getProcessId()))
//判断是否有工作流id,如果有则将状态进行修改
if (ObjectUtil.isEmpty(req.getProcessId()))
{
req.setExamineState("none");
}
......@@ -40,29 +62,62 @@ public class OrderController {
}
return ApiRes.success(orderService.AddOrder(req));
}
//内部处理,任务单状态直接设置成finished 添加到数据并且直接推送到消息队列中去
@PostMapping("/AddFinishOrder")
@ApiOperation("新增已完成的任务单")
public ApiRes<String> AddFinishOrder(@RequestBody @Validated(ValidationApi.add.class) UpdateOrderReq req) {
public ApiRes<String> AddFinishOrder(@RequestBody UpdateOrderReq req) {
req.setExamineState("finished");
return ApiRes.success(orderService.AddOrder(req));
}
@PostMapping("/ShowOrder")
@ApiOperation("查询任务列表")
public ResponseResult showOrder(@RequestBody Map<String,Object> msg) {
ResponseResult returnMsg = orderService.showOrder(msg);
return null;
//将工作流添加到rabbitmq中去
@PostMapping("/AddOrderRabbitMq")
@ApiOperation("将工作流添加到rabbitmq消息队列中去")
public ApiRes<Boolean> AddOrderRabbitMq(){
List<OrderDto> order = orderService.getOrder();
List<String> orderId=new ArrayList<>();
for (OrderDto orderDto:order) {
rabbitTemplate.convertAndSend("OrderExchange","1",orderDto);
orderId.add(orderDto.getId());
}
//将未被上传的数据进行上传到rabbitmq中,同时添加到数据库,标记为已上传数据,比避免同意数据多次或者重复上传
boolean b = orderLogService.addOrder(orderId);
return ApiRes.success(b);
}
//修改任务单只允许工作流id为空的时候(视为草稿可以进行修改)
@PostMapping("/UpdateOrder")
@ApiOperation("修改任务单")
public ApiRes<Boolean> updateOrder(@RequestBody @Validated(ValidationApi.add.class) UpdateOrderReq req) {
public ApiRes<Boolean> updateOrder(@RequestBody @Validated(ValidationApi.edit.class) UpdateOrderReq req) {
return ApiRes.success(orderService.updateOrder(req));
}
//根据任务单id查询对应的任务单信息
@PostMapping("/GetOrderMain")
@ApiOperation("查询任务单信息")
public ApiRes<OrderMainDto> getOrderMain(@RequestBody @Validated(ValidationApi.detail.class)OrderMainReq req) {
OrderMainDto orderMainDto = orderService.showOrderMain(req);
return ApiRes.success(orderMainDto);
}
//根据任务单id查询详细信息
@PostMapping("/GetOrderDetail")
@ApiOperation("根据订单id查看业务明细")
public ResponseResult getOrderDetail(@RequestBody Map<String, Object> msg){
ResponseResult returnMsg = orderService.getOrderDetail(msg);
return null;
@ApiOperation("根据任务单id查看业务明细")
public ApiRes<List<OrderDetailDto>> getOrderDetail(@RequestBody @Validated(ValidationApi.detail.class) OrderDetailReq req){
List<OrderDetailDto> orderDetail = orderService.getOrderDetail(req);
return ApiRes.success(orderDetail);
}
//出入日志上报
@PostMapping("/UploadLogs")
@ApiOperation("出入日志上传")
public void AddLogsRabbitMq(){
List<LogSummaryDto> logs = logSummaryService.getLogs();
for (LogSummaryDto logSummaryDto:logs) {
rabbitTemplate.convertAndSend("LogExchange","log",logSummaryDto);
}
}
}
......@@ -63,6 +63,11 @@ public class Inventory implements Serializable {
private String shelfId;
/**
* 区域id
*/
@TableField("area_id")
private String areaId;
/**
* epc
*/
private String epc;
......
......@@ -28,8 +28,8 @@ public class LogDetail implements Serializable {
* 物资id
*/
@ApiModelProperty(value = "物资id")
@TableField("inverntory_id")
private String inverntoryId;
@TableField("inventory_id")
private String inventoryId;
/**
* 出入库汇总ID
......@@ -43,7 +43,7 @@ public class LogDetail implements Serializable {
*/
@ApiModelProperty(value = "单据ID")
@TableField("order_main_id")
private String orderId;
private String orderMainId;
/**
* EPC信息
......@@ -86,18 +86,6 @@ public class LogDetail implements Serializable {
@TableField("error_state")
private Integer errorState;
/**
* 备注信息
*/
@ApiModelProperty(value = "备注信息")
private String note;
/**
* 业务类型
*/
@ApiModelProperty(value = "业务类型")
@TableField("bussiness_type")
private String bussinessType;
/**
* 创建时间
......
......@@ -27,14 +27,14 @@ public class LogSummary implements Serializable {
* 组织机构ID
*/
@ApiModelProperty(value = "组织机构ID")
@TableField("error_state")
@TableField("org_id")
private String orgId;
/**
* 组织机构名称
*/
@ApiModelProperty(value = "组织机构名称")
@TableField("error_state")
@TableField("org_name")
private String orgName;
/**
......
......@@ -8,7 +8,6 @@ import lombok.Data;
import lombok.NoArgsConstructor;
import java.io.Serializable;
import java.math.BigDecimal;
import java.util.Date;
@Data
......@@ -38,7 +37,7 @@ import java.util.Date;
private String equipmentSizeName;
@TableField("equipment_supplier")
private Long equipment_supplier;
private Long equipmentSupplier;
@TableField("equipment_supplier_name")
private String equipmentSupplierName;
......
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.io.Serializable;
import java.util.Date;
import lombok.Data;
/**
*
* @TableName bussiness_order_log
*/
@TableName(value ="bussiness_order_log")
@Data
public class OrderLog implements Serializable {
/**
* 主键
*/
@TableId
private Long id;
/**
* 单据id
*/
@TableField("order_id")
private String orderId;
/**
* 操作记录(upload上传消息)
*/
@TableField("history_msg")
private String historyMsg;
/**
* 创建时间
*/
@TableField(value = "create_time",fill = FieldFill.INSERT)
private Date createTime;
/**
* 更新时间
*/
@TableField(value = "update_time",fill =FieldFill.UPDATE)
private Date updateTime;
/**
* 创建人员
*/
@TableField("create_user")
private String createUser;
/**
* 修改人员
*/
@TableField("update_user")
private String updateUser;
private static final long serialVersionUID = 1L;
}
\ No newline at end of file
package com.junmp.jyzb.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.baomidou.mybatisplus.annotation.*;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.AllArgsConstructor;
......@@ -20,7 +18,7 @@ import java.util.Date;
@NoArgsConstructor
@TableName("bussiness_order_main")
public class OrderMain implements Serializable {
@TableField("id")
@TableId(value = "id",type = IdType.ASSIGN_UUID )
private String id;
@TableField("order_type")
......@@ -28,9 +26,6 @@ public class OrderMain implements Serializable {
@TableField("process_id")
private String processId;
@TableField("examine_state")
private String examineState;
@TableField("bussiness_type")
private String bussinessType;
......@@ -62,6 +57,9 @@ public class OrderMain implements Serializable {
@TableField("end_org_user_name")
private String endOrgUserName;
@TableField("examine_state")
private String examineState;
@TableField("price")
private BigDecimal price;
......@@ -83,10 +81,6 @@ public class OrderMain implements Serializable {
@TableField("inv_list")
private String invList;
@TableField("form_item")
private String formItem;
@TableField("order_detail")
private Text orderDetail;
/**
* 创建时间
*/
......
package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.junmp.jyzb.api.bean.dto.EqsBriefDto;
import com.junmp.jyzb.api.bean.dto.InventoryDto;
import com.junmp.jyzb.api.bean.query.InventoryReq;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.entity.InventorySummary;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
......@@ -12,19 +14,28 @@ import java.util.Map;
@Mapper
public interface InventoryMapper extends BaseMapper<Inventory> {
Map<String, Object> getSum(String queryType, String typeId);
Map<String, Object> getOrgNum(String typeId);
List<Map<String, Object>> getLocationInventory(@Param("queryType")String queryType, @Param("idMsg")String idMsg);
//将表中数据全部删除(base_inventory_summary)
boolean deleteAllMsg();
//根据单警柜统计装备信息
boolean SetCabinetInventory();
//根据仓库统计装备信息
boolean SetWarehouseInventory();
List<InventoryDto> EqsBySearchType(InventoryReq req);
//根据货架id查询汇总信息
List<InventorySummary> getSumByShelf(String shelfId);
//根据区域id查询汇总信息
List<InventorySummary> getSumByArea(String id);
//通过单警柜箱门id获取箱门下的装备汇总信息
List<InventorySummary> getSumByCabinetBox(String id);
}
\ No newline at end of file
package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.junmp.jyzb.entity.LogDetail;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface LogDetailMapper {
public interface LogDetailMapper extends BaseMapper<LogDetail> {
}
\ No newline at end of file
package com.junmp.jyzb.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.junmp.jyzb.entity.LogSummary;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface LogSummaryMapper {
public interface LogSummaryMapper extends BaseMapper<LogSummary> {
}
\ No newline at end of file
package com.junmp.jyzb.mapper;
import com.junmp.jyzb.entity.OrderLog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* @author lxh专属坐骑
* @description 针对表【bussiness_order_log】的数据库操作Mapper
* @createDate 2023-08-18 16:49:39
* @Entity generator.domain.BussinessOrderLog
*/
public interface OrderLogMapper extends BaseMapper<OrderLog> {
}
......@@ -12,9 +12,9 @@ import java.util.Map;
public interface OrderMainMapper extends BaseMapper<OrderMain> {
Long addOrder(OrderMain order);
List<Map<String, Object>> showOrder(String orgId);
Map<String, Object> getOrderDetail(String id);
void updateOrder(OrderMain order);
//生成没有被上传过的任务单
List<OrderMain> getList();
}
\ No newline at end of file
package com.junmp.jyzb.rabbitmq;
import com.junmp.jyzb.api.bean.dto.OrderDto;
import com.junmp.jyzb.service.OrderService;
import org.springframework.amqp.rabbit.core.RabbitTemplate;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
//将工作单上传到rabbitmq中
@Component
public class OrderMQSender {
@Resource
private RabbitTemplate rabbitTemplate;
@Resource
private OrderService orderService;
public void send(){
//将审核状态为finished的任务单放入rabbitmq中
List<OrderDto> order = orderService.getOrder();
rabbitTemplate.convertAndSend("OrderExchange","Test1Routing",order);
}
}
......@@ -6,6 +6,7 @@ import com.junmp.jyzb.api.bean.query.*;
import com.junmp.jyzb.api.bean.req.EquipmentBindReq;
import com.junmp.jyzb.entity.Inventory;
import com.junmp.jyzb.entity.InventorySummary;
import com.junmp.jyzb.utils.ResponseResult;
import java.util.List;
......@@ -14,13 +15,11 @@ import java.util.Map;
public interface InventoryService extends IService<Inventory> {
InventoryDto getInventoryDetail(InventoryReq msg);
ResponseResult getEquipmentInfo(Map<String, Object> msg);
//计算更新库存汇总表信息
boolean setInventoryMsg();
List<InventoryDto> getInventoryByOrgId(InventoryReq req);
boolean UpdateWarehouseInsNum(WarehouseReq req);
......@@ -29,7 +28,7 @@ public interface InventoryService extends IService<Inventory> {
boolean InventoryBind(EquipmentBindReq req);
List<EqsBriefDto> GetInvInfoByEpc(InventoryReq req);
List<InventoryDto> GetInvInfoByEpc(InventoryReq req);
List<InventoryDto> EqsBySearchType(InventoryReq req);
......@@ -39,14 +38,20 @@ public interface InventoryService extends IService<Inventory> {
//通过货架id查询装备信息汇总
ShelfInventoryDto ShelfInventoryList(ShelfReq req);
List<InventorySummary> ShelfInventoryList(ShelfReq req);
//通过货架id查询装备简要信息
List<EqsBriefDto> ShelfInventoryDetail(ShelfReq req);
//通过区域id查询装备信息汇总
AreaInventoryDto AreaInventoryList(WarehouseAreaReq req);
List<InventorySummary> AreaInventoryList(WarehouseAreaReq req);
//通过装备id判断装备是否存在
Inventory InventoryExist(String id);
//通过单警柜箱门id获取箱门下的装备汇总信息
List<InventorySummary> EqsByCabinetBoxId(CabinetBoxReq req);
}
package com.junmp.jyzb.service;
public interface LogDetailService{
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.entity.LogDetail;
public interface LogDetailService extends IService<LogDetail> {
}
package com.junmp.jyzb.service;
public interface LogSummaryService{
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.api.bean.dto.LogSummaryDto;
import com.junmp.jyzb.entity.LogSummary;
import java.util.List;
public interface LogSummaryService extends IService<LogSummary> {
//上传操作日志
List<LogSummaryDto> getLogs();
}
package com.junmp.jyzb.service;
import com.junmp.jyzb.entity.OrderLog;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
/**
* @author lxh专属坐骑
* @description 针对表【bussiness_order_log】的数据库操作Service
* @createDate 2023-08-18 16:49:39
*/
public interface OrderLogService extends IService<OrderLog> {
boolean addOrder(List<String> orderId);
}
package com.junmp.jyzb.service;
import com.baomidou.mybatisplus.extension.service.IService;
import com.junmp.jyzb.api.bean.dto.OrderDetailDto;
import com.junmp.jyzb.api.bean.dto.OrderDto;
import com.junmp.jyzb.api.bean.dto.OrderMainDto;
import com.junmp.jyzb.api.bean.query.OrderDetailReq;
import com.junmp.jyzb.api.bean.query.OrderMainReq;
import com.junmp.jyzb.api.bean.req.UpdateOrderReq;
import com.junmp.jyzb.entity.OrderDetail;
import com.junmp.jyzb.entity.OrderMain;
import com.junmp.jyzb.utils.ResponseResult;
import java.util.List;
import java.util.Map;
public interface OrderService extends IService<OrderMain> {
String AddOrder(UpdateOrderReq req);
ResponseResult showOrder(Map<String, Object> msg);
Boolean updateOrder(UpdateOrderReq req);
ResponseResult getOrderDetail(Map<String, Object> msg);
//通过任务单id获取任务单信息orderMain
OrderMainDto showOrderMain(OrderMainReq req);
//判断任务单是否存在
OrderMain orderMainExist(String id);
//根据任务单id查询详细信息
List<OrderDetailDto> getOrderDetail(OrderDetailReq req);
//获取审核状态为finished的任务单,将其推送到rabbitmq中
List<OrderDto> getOrder();
}
......@@ -83,8 +83,7 @@ public class CabinetBoxServiceImpl extends ServiceImpl<CabinetBoxMapper, Cabinet
//判断箱子信息是否存在
@Override
public CabinetBox CabinetBoxExist(String id) {
CabinetBox cabinetBox = getOne(new LambdaQueryWrapper<CabinetBox>()
.eq(CabinetBox::getId,id));
CabinetBox cabinetBox = getById(id);
if (ObjectUtil.isNull(cabinetBox)) {
throw new ServiceException(CabinetBoxExceptionEnum.CABINETBOX_ISNOT_EXISTS);
}
......
......@@ -91,8 +91,6 @@ public class CabinetServiceImpl extends ServiceImpl<CabinetMapper, Cabinet> impl
//添加单警柜
save(cabinet);
List<CabinetBox> objects = new ArrayList<>();
System.out.println("ObjectUtil.isNotNull(req.getNum()) = " + ObjectUtil.isNotNull(req.getNum()));
System.out.println("ObjectUtil.isNotEmpty(req.getNum()) = " + ObjectUtil.isNotEmpty(req.getNum()));
//判断num值是否传递,如果没有不做操作
if (ObjectUtil.isNotNull(req.getNum()) && req.getNum().intValue()>=1){
for (int i = 1; i <= req.getNum(); i++) {
......@@ -326,7 +324,7 @@ public class CabinetServiceImpl extends ServiceImpl<CabinetMapper, Cabinet> impl
//根据单警柜id判断单警柜是否存在
@Override
public Cabinet CabinetExist(String id) {
Cabinet one = getOne(new LambdaQueryWrapper<Cabinet>().eq(Cabinet::getId, id));
Cabinet one = getById(id);
if (ObjectUtil.isNull(one)){
throw new ServiceException(CabinetExceptionEnum.CABINET_ISNOT_EXISTS);
}
......
package com.junmp.jyzb.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.entity.LogDetail;
import com.junmp.jyzb.service.LogDetailService;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import com.junmp.jyzb.mapper.LogDetailMapper;
@Service
public class LogDetailServiceImpl implements LogDetailService {
public class LogDetailServiceImpl extends ServiceImpl<LogDetailMapper, LogDetail> implements LogDetailService {
@Resource
private LogDetailMapper logDetailMapper;
......
package com.junmp.jyzb.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.api.bean.dto.LogDetailDto;
import com.junmp.jyzb.api.bean.dto.LogSummaryDto;
import com.junmp.jyzb.entity.LogDetail;
import com.junmp.jyzb.entity.LogSummary;
import com.junmp.jyzb.mapper.LogSummaryMapper;
import com.junmp.jyzb.service.LogDetailService;
import com.junmp.jyzb.service.LogSummaryService;
import com.junmp.v2.common.util.BeanPlusUtil;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import com.junmp.jyzb.mapper.LogSummaryMapper;
@Service
public class LogSummaryServiceImpl implements LogSummaryService {
import java.util.ArrayList;
import java.util.List;
@Service
public class LogSummaryServiceImpl extends ServiceImpl<LogSummaryMapper, LogSummary> implements LogSummaryService {
@Resource
private LogSummaryMapper logSummaryMapper;
private LogDetailService logDetailService;
@Override
public List<LogSummaryDto> getLogs() {
List<LogSummary> list = list(new LambdaQueryWrapper<LogSummary>().orderByDesc(LogSummary::getCreateTime));
List<LogSummaryDto> logSummaryDtoList=new ArrayList<>();
List<LogDetailDto> logDetailDtoList=new ArrayList<>();
for (LogSummary logSummary:list) {
LogSummaryDto logSummaryDto = new LogSummaryDto();
BeanPlusUtil.copyProperties(logSummary,logSummaryDto);
List<LogDetail> list1 = logDetailService.list(new LambdaQueryWrapper<LogDetail>()
.eq(LogDetail::getSummaryId, logSummary.getId()));
for (LogDetail logDetail:list1) {
LogDetailDto logDetailDto = new LogDetailDto();
BeanPlusUtil.copyProperties(logDetail,logDetailDto);
logDetailDtoList.add(logDetailDto);
}
logSummaryDto.setEquipmentList(logDetailDtoList);
logSummaryDtoList.add(logSummaryDto);
}
return logSummaryDtoList;
}
}
package com.junmp.jyzb.service.impl;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.junmp.jyzb.entity.OrderLog;
import com.junmp.jyzb.service.OrderLogService;
import com.junmp.jyzb.mapper.OrderLogMapper;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.ArrayList;
import java.util.List;
/**
* @author lxh专属坐骑
* @description 针对表【bussiness_order_log】的数据库操作Service实现
* @createDate 2023-08-18 16:49:39
*/
@Service
public class OrderLogServiceImpl extends ServiceImpl<OrderLogMapper, OrderLog>
implements OrderLogService {
@Override
@Transactional(rollbackFor = Exception.class)
public boolean addOrder(List<String> orderId) {
List<OrderLog> orderLogList=new ArrayList<>();
for (String s:orderId) {
OrderLog orderLog = new OrderLog();
orderLog.setOrderId(s);
orderLog.setHistoryMsg("upload");
orderLogList.add(orderLog);
}
return this.saveBatch(orderLogList);
}
}
......@@ -366,8 +366,7 @@ public class PubOrgServiceImpl extends ServiceImpl<PubOrgMapper, PubOrg> implem
//根据组织机构id查询出组织机构是否存在
@Override
public PubOrg PubOrgExist(Long id) {
PubOrg puborg = getOne(new LambdaQueryWrapper<PubOrg>()
.eq(PubOrg::getOrgId,id));
PubOrg puborg = getById(id);
if (ObjectUtil.isEmpty(puborg)) {
//抛出组织机构不存在异常
throw new ServiceException(PubOrgExceptionEnum.PUBORG_NOT_EXIST);
......
package com.junmp.jyzb.task;
public class UpdateSummaryAction {
import com.junmp.jyzb.service.InventoryService;
import com.junmp.v2.job.api.JobAction;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
@Component
public class UpdateSummaryAction implements JobAction {
@Resource
private InventoryService inventoryService;
public void action(){
inventoryService.setInventoryMsg();
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.junmp.jyzb.mapper.OrderLogMapper">
<resultMap id="BaseResultMap" type="com.junmp.jyzb.entity.OrderLog">
<id property="id" column="id" jdbcType="BIGINT"/>
<result property="orderId" column="order_id" jdbcType="INTEGER"/>
<result property="historyMsg" column="history_msg" jdbcType="VARCHAR"/>
<result property="createTime" column="create_time" jdbcType="TIMESTAMP"/>
<result property="updateTime" column="update_time" jdbcType="TIMESTAMP"/>
<result property="createUser" column="create_user" jdbcType="VARCHAR"/>
<result property="updateUser" column="update_user" jdbcType="VARCHAR"/>
</resultMap>
<sql id="Base_Column_List">
id,order_id,history_msg,
create_time,update_time,create_user,
update_user
</sql>
</mapper>
......@@ -7,10 +7,18 @@
<id column="id" jdbcType="BIGINT" property="id" />
<result column="order_type" jdbcType="VARCHAR" property="orderType" />
<result column="bussiness_type" jdbcType="VARCHAR" property="bussinessType" />
<result column="process_id" jdbcType="VARCHAR" property="processId" />
<result column="order_code" jdbcType="VARCHAR" property="orderCode" />
<result column="approve_type" jdbcType="VARCHAR" property="approveType" />
<result column="send_org_id" jdbcType="VARCHAR" property="sendOrgId" />
<result column="send_org_name" jdbcType="VARCHAR" property="sendOrgName" />
<result column="start_org_id" jdbcType="VARCHAR" property="startOrgId" />
<result column="start_org_name" jdbcType="VARCHAR" property="startOrgName" />
<result column="end_org_id" jdbcType="VARCHAR" property="endOrgId" />
<result column="end_org_name" jdbcType="VARCHAR" property="endOrgName" />
<result column="start_org_user_id" jdbcType="VARCHAR" property="startOrgUserId" />
<result column="start_org_user_name" jdbcType="VARCHAR" property="startOrgUserName" />
<result column="end_org_user_id" jdbcType="VARCHAR" property="endOrgUserId" />
<result column="end_org_user_name" jdbcType="VARCHAR" property="endOrgUserName" />
<result column="examine_state" jdbcType="VARCHAR" property="examineState" />
<result column="price" jdbcType="DECIMAL" property="price" />
<result column="inventory_quantity" jdbcType="INTEGER" property="inventoryQuantity" />
<result column="actual_quantity" jdbcType="INTEGER" property="actualQuantity" />
<result column="manual_state" jdbcType="INTEGER" property="manualState" />
......@@ -36,25 +44,7 @@
(#{orderType},#{processId},#{bussinessType},#{orderCode},#{orgId},#{inventoryQuantity},#{manualState},#{orderState},#{attachmentLocation},#{invList},#{createTime},#{updateTime})
</insert>
<select id="showOrder" resultType="Map">
SELECT
id as id,
order_type as orderType,
process_id as processId,
bussiness_type as bussinessType,
order_code as orderCode,
org_id as orgId,
inventory_quantity as inventoryQuantity,
actual_quantity as actualQuantity,
manual_state as manualState,
order_state as orderState,
attachment_location as attachmentLocation,
inv_list as invList,
create_time as createTime,
update_time as updateTime
FROM business_order_main
where org_id =#{orgId}
</select>
<update id="updateOrder">
update business_order_main o
......@@ -73,25 +63,10 @@
update_time=#{updateTime}
where o.id =#{id}
</update>
<select id="getOrderDetail" resultType="Map">
SELECT
id as id,
order_type as orderType,
process_id as processId,
bussiness_type as bussinessType,
order_code as orderCode,
org_id as orgId,
inventory_quantity as inventoryQuantity,
actual_quantity as actualQuantity,
manual_state as manualState,
order_state as orderState,
attachment_location as attachmentLocation,
inv_list as invList,
create_time as createTime,
update_time as updateTime
FROM business_order_main
WHERE id = #{id}
<select id="getList" resultType="com.junmp.jyzb.entity.OrderMain">
select * from bussiness_order_main
WHERE examine_state="finished" and id not in (select order_id FROM bussiness_order_log )
</select>
</mapper>
\ No newline at end of file
......@@ -15,7 +15,6 @@
<module>jyzb-biz</module>
<module>jyzb-process</module>
<module>jyzb-common</module>
<module>jyzb-mq</module>
</modules>
<parent>
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论