Skip to content
项目
群组
代码片段
帮助
当前项目
正在载入...
登录 / 注册
切换导航面板
J
jyzb_platformV2
概览
Overview
Details
Activity
Cycle Analytics
版本库
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
问题
0
Issues
0
列表
Board
标记
里程碑
合并请求
0
Merge Requests
0
CI / CD
CI / CD
流水线
作业
日程表
图表
维基
Wiki
代码片段
Snippets
成员
Members
Collapse sidebar
Close sidebar
活动
图像
聊天
创建新问题
作业
提交
Issue Boards
Open sidebar
赵剑炜
jyzb_platformV2
Commits
da74ef9b
Commit
da74ef9b
authored
Nov 13, 2023
by
李小惠
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
修改快速出入库业务功能
parent
bd6bb885
显示空白字符变更
内嵌
并排
正在显示
15 个修改的文件
包含
230 行增加
和
61 行删除
+230
-61
OrderExceptionEnum.java
jyzb-api/src/main/java/com/junmp/jyzb/api/exception/enums/OrderExceptionEnum.java
+1
-0
InventorySummary.java
jyzb-biz/src/main/java/com/junmp/jyzb/entity/InventorySummary.java
+7
-0
GlobalEndListener.java
jyzb-biz/src/main/java/com/junmp/jyzb/listener/GlobalEndListener.java
+14
-45
InventoryMapper.java
jyzb-biz/src/main/java/com/junmp/jyzb/mapper/InventoryMapper.java
+5
-0
InventorySummaryMapper.java
jyzb-biz/src/main/java/com/junmp/jyzb/mapper/InventorySummaryMapper.java
+1
-1
InventoryService.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/InventoryService.java
+3
-0
InventorySummaryService.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/InventorySummaryService.java
+1
-1
OrderMainService.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/OrderMainService.java
+2
-0
InventoryServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/InventoryServiceImpl.java
+6
-0
InventorySummaryServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/InventorySummaryServiceImpl.java
+2
-2
LogSummaryServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/LogSummaryServiceImpl.java
+1
-1
OrderMainServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/OrderMainServiceImpl.java
+176
-9
PolicemanServiceImpl.java
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/PolicemanServiceImpl.java
+1
-1
InventoryMapper.xml
jyzb-biz/src/main/resources/mapper/InventoryMapper.xml
+9
-0
InventorySummaryMapper.xml
jyzb-biz/src/main/resources/mapper/InventorySummaryMapper.xml
+1
-1
没有找到文件。
jyzb-api/src/main/java/com/junmp/jyzb/api/exception/enums/OrderExceptionEnum.java
View file @
da74ef9b
...
@@ -13,6 +13,7 @@ public enum OrderExceptionEnum implements IExceptionEnum {
...
@@ -13,6 +13,7 @@ public enum OrderExceptionEnum implements IExceptionEnum {
ORDERDETAIL_NOT_EXIST
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"子单据不存在"
),
ORDERDETAIL_NOT_EXIST
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"子单据不存在"
),
ORDERDETAIL_ERROR
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"子单据不一致,操作失败"
),
ORDERDETAIL_ERROR
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"子单据不一致,操作失败"
),
ROLE_ERROR
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"审核组织机构用户配置异常!请检查日志"
),
ROLE_ERROR
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"审核组织机构用户配置异常!请检查日志"
),
ORDER_CREATE_ERROR
(
CommonConstant
.
DEFAULT_USER_ERROR_CODE
,
"单子创建失败"
),
;
;
/**
/**
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/entity/InventorySummary.java
View file @
da74ef9b
...
@@ -36,6 +36,13 @@ public class InventorySummary implements Serializable {
...
@@ -36,6 +36,13 @@ public class InventorySummary implements Serializable {
@TableField
(
"org_name"
)
@TableField
(
"org_name"
)
private
String
orgName
;
private
String
orgName
;
/**
* 组织机构编码
*/
@ApiModelProperty
(
value
=
"组织机构编码"
)
@TableField
(
"org_code"
)
private
String
orgCode
;
/**
/**
* 装备类型id
* 装备类型id
*/
*/
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/listener/GlobalEndListener.java
View file @
da74ef9b
...
@@ -13,9 +13,11 @@ import com.junmp.jyzb.api.bean.req.UpdateBusFormReq;
...
@@ -13,9 +13,11 @@ import com.junmp.jyzb.api.bean.req.UpdateBusFormReq;
import
com.junmp.jyzb.api.bean.req.UpdateOrderDetailReq
;
import
com.junmp.jyzb.api.bean.req.UpdateOrderDetailReq
;
import
com.junmp.jyzb.api.bean.req.UpdateOrderReq
;
import
com.junmp.jyzb.api.bean.req.UpdateOrderReq
;
import
com.junmp.jyzb.api.bean.req.UpdateReassignmentReq
;
import
com.junmp.jyzb.api.bean.req.UpdateReassignmentReq
;
import
com.junmp.jyzb.api.exception.enums.OrderExceptionEnum
;
import
com.junmp.jyzb.entity.*
;
import
com.junmp.jyzb.entity.*
;
import
com.junmp.jyzb.service.*
;
import
com.junmp.jyzb.service.*
;
import
com.junmp.jyzb.utils.DateTimeUtil
;
import
com.junmp.jyzb.utils.DateTimeUtil
;
import
com.junmp.v2.common.exception.base.ServiceException
;
import
com.junmp.v2.common.util.BeanPlusUtil
;
import
com.junmp.v2.common.util.BeanPlusUtil
;
import
com.rabbitmq.client.Channel
;
import
com.rabbitmq.client.Channel
;
import
com.rabbitmq.client.Connection
;
import
com.rabbitmq.client.Connection
;
...
@@ -81,18 +83,19 @@ import java.util.stream.Collectors;
...
@@ -81,18 +83,19 @@ import java.util.stream.Collectors;
String
Type
=
orderType
.
get
(
0
).
getValue
().
toString
();
String
Type
=
orderType
.
get
(
0
).
getValue
().
toString
();
if
(
Type
.
equals
(
"workOrder"
))
//出入库单据
if
(
Type
.
equals
(
"workOrder"
))
//出入库单据
{
{
OrderMainReq
req
=
new
OrderMainReq
();
//
OrderMainReq req=new OrderMainReq();
req
.
setProcessId
(
processInstanceId
);
//
req.setProcessId(processInstanceId);
OrderMain
existOrder
=
orderMainService
.
getOne
(
new
LambdaQueryWrapper
<
OrderMain
>()
OrderMain
existOrder
=
orderMainService
.
getOne
(
new
LambdaQueryWrapper
<
OrderMain
>()
.
eq
(
OrderMain:
:
getProcessId
,
req
.
getProcessId
()));
.
eq
(
OrderMain:
:
getProcessId
,
processInstanceId
));
existOrder
.
setExamineState
(
"finished"
);
existOrder
.
setOrderState
(
"ready"
);
UpdateOrderReq
updateOrderReq
=
new
UpdateOrderReq
();
UpdateOrderReq
updateOrderReq
=
new
UpdateOrderReq
();
BeanPlusUtil
.
copyProperties
(
existOrder
,
updateOrderReq
);
BeanPlusUtil
.
copyProperties
(
existOrder
,
updateOrderReq
);
List
<
OrderDetail
>
list
=
orderDetailService
.
list
(
new
LambdaQueryWrapper
<
OrderDetail
>()
List
<
OrderDetail
>
list
=
orderDetailService
.
list
(
new
LambdaQueryWrapper
<
OrderDetail
>()
.
eq
(
OrderDetail:
:
getOrderId
,
updateOrderReq
.
getId
()));
.
eq
(
OrderDetail:
:
getOrderId
,
updateOrderReq
.
getId
()));
updateOrderReq
.
setId
(
existOrder
.
getId
());
updateOrderReq
.
setId
(
existOrder
.
getId
());
updateOrderReq
.
setExamineState
(
"finished"
);
orderMainService
.
updateById
(
existOrder
);
updateOrderReq
.
setOrderState
(
"ready"
);
// orderMainService.ChangeOrderState(updateOrderReq);
orderMainService
.
ChangeOrderState
(
updateOrderReq
);
List
<
UpdateOrderDetailReq
>
collect
=
list
.
stream
().
map
(
orderDetail
->
{
List
<
UpdateOrderDetailReq
>
collect
=
list
.
stream
().
map
(
orderDetail
->
{
UpdateOrderDetailReq
updateOrderDetailReq
=
new
UpdateOrderDetailReq
();
UpdateOrderDetailReq
updateOrderDetailReq
=
new
UpdateOrderDetailReq
();
BeanPlusUtil
.
copyProperties
(
orderDetail
,
updateOrderDetailReq
);
BeanPlusUtil
.
copyProperties
(
orderDetail
,
updateOrderDetailReq
);
...
@@ -120,52 +123,18 @@ import java.util.stream.Collectors;
...
@@ -120,52 +123,18 @@ import java.util.stream.Collectors;
}
}
if
(
Type
.
equals
(
"quickOrder"
)){
if
(
Type
.
equals
(
"quickOrder"
)){
//创建快速出库单并且通过快速出库单再去创建入库单(主单)
OrderMain
orderMain
=
new
OrderMain
();
OrderMain
existOrder
=
orderMainService
.
getOne
(
new
LambdaQueryWrapper
<
OrderMain
>()
OrderMain
existOrder
=
orderMainService
.
getOne
(
new
LambdaQueryWrapper
<
OrderMain
>()
.
eq
(
OrderMain:
:
getProcessId
,
processInstanceId
));
.
eq
(
OrderMain:
:
getProcessId
,
processInstanceId
));
existOrder
.
setExamineState
(
"finished"
);
existOrder
.
setExamineState
(
"finished"
);
existOrder
.
setOrderState
(
"ready"
);
existOrder
.
setOrderState
(
"ready"
);
BeanPlusUtil
.
copyProperties
(
existOrder
,
orderMain
);
orderMain
.
setEndOrgId
(
existOrder
.
getStartOrgId
());
orderMain
.
setEndOrgName
(
existOrder
.
getStartOrgName
());
orderMain
.
setOrderType
(
"in"
);
orderMain
.
setId
(
UUID
.
randomUUID
().
toString
());
//修改订单编号
UpdateOrderReq
req
=
new
UpdateOrderReq
();
BeanPlusUtil
.
copyProperties
(
orderMain
,
req
);
OrderNum
orderNum
=
orderMainService
.
setOrderCode
(
req
);
String
codeValue
=
String
.
format
(
"%04d"
,
orderNum
.
getNum
());
orderMain
.
setOrderCode
(
orderNum
.
getBussinessType
()+
orderNum
.
getYear
()+
String
.
format
(
"%02d"
,
LocalDateTime
.
now
().
getMonth
().
getValue
())+
String
.
format
(
"%02d"
,
LocalDateTime
.
now
().
getDayOfMonth
())+
codeValue
);
orderMainService
.
updateById
(
existOrder
);
orderMainService
.
updateById
(
existOrder
);
orderMainService
.
save
(
orderMain
);
//创建子单
List
<
OrderDetail
>
list
=
orderDetailService
.
list
(
new
LambdaQueryWrapper
<
OrderDetail
>()
.
eq
(
OrderDetail:
:
getOrderId
,
existOrder
.
getId
()));
List
<
Object
[]>
searchCriteria
=
new
ArrayList
<>();
List
<
OrderDetail
>
collect
=
list
.
stream
().
map
(
orderDetail
->
{
OrderDetail
orderDetail1
=
new
OrderDetail
();
BeanPlusUtil
.
copyProperties
(
orderDetail
,
orderDetail1
);
//修改主单据id
orderDetail1
.
setOrderId
(
orderMain
.
getId
());
//修改单据出入状态
orderDetail1
.
setType
(
"in"
);
//修改仓库id
orderDetail1
.
setWarehouseId
(
orderMain
.
getLocationId
());
orderDetail1
.
setWarehouseName
(
orderMain
.
getLocationName
());
//新增创建时间
orderDetail1
.
setCreateTime
(
DateTimeUtil
.
getCurrentDateTime
());
Object
[]
criteria
=
new
Object
[]{
existOrder
.
getStartOrgId
(),
orderDetail
.
getWarehouseId
(),
orderDetail
.
getTypeId
(),
orderDetail
.
getSizeId
(),
orderDetail
.
getPrice
()};
searchCriteria
.
add
(
criteria
);
return
orderDetail1
;
}).
collect
(
Collectors
.
toList
());
orderDetailService
.
saveBatch
(
collect
);
//将库存表中的装备的仓库id进行修改
//创建快速出库单并且通过快速出库单再去创建入库单(主单)
boolean
b
=
orderMainService
.
addQuickOrder
(
existOrder
);
if
(!
b
){
throw
new
ServiceException
(
OrderExceptionEnum
.
ORDER_CREATE_ERROR
);
}
//将summary汇总表中数据进行修改
}
}
}
}
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/mapper/InventoryMapper.java
View file @
da74ef9b
...
@@ -60,4 +60,8 @@ public interface InventoryMapper extends BaseMapper<Inventory> {
...
@@ -60,4 +60,8 @@ public interface InventoryMapper extends BaseMapper<Inventory> {
//判断epc是否存在
//判断epc是否存在
List
<
String
>
checkEPCList
(
@Param
(
"list"
)
List
<
String
>
epcList
);
List
<
String
>
checkEPCList
(
@Param
(
"list"
)
List
<
String
>
epcList
);
//根据条件查询满足条件的数据(用于快速移库修改装备仓库id)
List
<
Inventory
>
selectEqsByItem
(
@Param
(
"list"
)
List
<
Object
[]>
searchCriteria
);
}
}
\ No newline at end of file
jyzb-biz/src/main/java/com/junmp/jyzb/mapper/InventorySummaryMapper.java
View file @
da74ef9b
...
@@ -35,7 +35,7 @@ public interface InventorySummaryMapper extends BaseMapper<InventorySummary> {
...
@@ -35,7 +35,7 @@ public interface InventorySummaryMapper extends BaseMapper<InventorySummary> {
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
List
<
InventorySummary
>
selectByItems
(
@Param
(
"list"
)
List
<
Object
[]>
searchCriteria
);
List
<
InventorySummary
>
select
Sum
ByItems
(
@Param
(
"list"
)
List
<
Object
[]>
searchCriteria
);
//根据组织机构查询报表中的本级及下一级信息
//根据组织机构查询报表中的本级及下一级信息
List
<
TjOrgEqsDto
>
getByOrgId
(
@Param
(
"orgId"
)
Long
orgId
);
List
<
TjOrgEqsDto
>
getByOrgId
(
@Param
(
"orgId"
)
Long
orgId
);
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/service/InventoryService.java
View file @
da74ef9b
...
@@ -81,4 +81,7 @@ public interface InventoryService extends IService<Inventory> {
...
@@ -81,4 +81,7 @@ public interface InventoryService extends IService<Inventory> {
//判断epc是否存在
//判断epc是否存在
List
<
String
>
checkEPCList
(
EpcCheckReq
req
);
List
<
String
>
checkEPCList
(
EpcCheckReq
req
);
//根据条件查询满足条件的数据(用于快速移库修改装备仓库id)
List
<
Inventory
>
selectEqsByItem
(
List
<
Object
[]>
searchCriteria
);
}
}
jyzb-biz/src/main/java/com/junmp/jyzb/service/InventorySummaryService.java
View file @
da74ef9b
...
@@ -35,6 +35,6 @@ public interface InventorySummaryService extends IService<InventorySummary> {
...
@@ -35,6 +35,6 @@ public interface InventorySummaryService extends IService<InventorySummary> {
List
<
InventorySummary
>
EquipmentStatistics
(
InventorySumReq
req
);
List
<
InventorySummary
>
EquipmentStatistics
(
InventorySumReq
req
);
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
List
<
InventorySummary
>
selectByItems
(
List
<
Object
[]>
searchCriteria
);
List
<
InventorySummary
>
select
Sum
ByItems
(
List
<
Object
[]>
searchCriteria
);
}
}
jyzb-biz/src/main/java/com/junmp/jyzb/service/OrderMainService.java
View file @
da74ef9b
...
@@ -53,4 +53,6 @@ public interface OrderMainService extends IService<OrderMain> {
...
@@ -53,4 +53,6 @@ public interface OrderMainService extends IService<OrderMain> {
OrderNum
setOrderCode
(
UpdateOrderReq
req
);
OrderNum
setOrderCode
(
UpdateOrderReq
req
);
//快速创建入库单(快速移库内容)
boolean
addQuickOrder
(
OrderMain
existOrder
);
}
}
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/InventoryServiceImpl.java
View file @
da74ef9b
...
@@ -601,6 +601,11 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
...
@@ -601,6 +601,11 @@ public class InventoryServiceImpl extends ServiceImpl<InventoryMapper, Inventory
return
inventoryMapper
.
checkEPCList
(
req
.
getEpcList
());
return
inventoryMapper
.
checkEPCList
(
req
.
getEpcList
());
}
}
//根据条件查询满足条件的数据(用于快速移库修改装备仓库id)
@Override
public
List
<
Inventory
>
selectEqsByItem
(
List
<
Object
[]>
searchCriteria
)
{
return
inventoryMapper
.
selectEqsByItem
(
searchCriteria
);
}
}
}
\ No newline at end of file
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/InventorySummaryServiceImpl.java
View file @
da74ef9b
...
@@ -225,8 +225,8 @@ public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMa
...
@@ -225,8 +225,8 @@ public class InventorySummaryServiceImpl extends ServiceImpl<InventorySummaryMa
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
//出入库时无单据查询库存汇总并统计更新或者记账时根据单据查询库存汇总并统计更新
@Override
@Override
public
List
<
InventorySummary
>
selectByItems
(
List
<
Object
[]>
searchCriteria
)
{
public
List
<
InventorySummary
>
select
Sum
ByItems
(
List
<
Object
[]>
searchCriteria
)
{
return
inventorySummaryMapper
.
selectByItems
(
searchCriteria
);
return
inventorySummaryMapper
.
select
Sum
ByItems
(
searchCriteria
);
}
}
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/LogSummaryServiceImpl.java
View file @
da74ef9b
...
@@ -157,7 +157,7 @@ public class LogSummaryServiceImpl extends ServiceImpl<LogSummaryMapper, LogSumm
...
@@ -157,7 +157,7 @@ public class LogSummaryServiceImpl extends ServiceImpl<LogSummaryMapper, LogSumm
searchCriteria
.
add
(
criteria
);
searchCriteria
.
add
(
criteria
);
}
}
//满足条件的数据
//满足条件的数据
List
<
InventorySummary
>
inventorySummaryList
=
inventorySummaryMapper
.
selectByItems
(
searchCriteria
);
List
<
InventorySummary
>
inventorySummaryList
=
inventorySummaryMapper
.
select
Sum
ByItems
(
searchCriteria
);
List
<
InventorySummary
>
addList
=
new
ArrayList
<>();
List
<
InventorySummary
>
addList
=
new
ArrayList
<>();
List
<
InventorySummary
>
updateList
=
new
ArrayList
<>();
List
<
InventorySummary
>
updateList
=
new
ArrayList
<>();
//遍历两者,判断数据库中是否全部存在,如果不存在,则进行增加数据操作,如果存在,则更新数据即可
//遍历两者,判断数据库中是否全部存在,如果不存在,则进行增加数据操作,如果存在,则更新数据即可
...
...
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/OrderMainServiceImpl.java
View file @
da74ef9b
...
@@ -87,6 +87,9 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
...
@@ -87,6 +87,9 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
private
InventorySummaryService
inventorySummaryService
;
private
InventorySummaryService
inventorySummaryService
;
@Resource
@Resource
private
InventoryService
inventoryService
;
@Resource
private
WarehouseService
warehouseService
;
private
WarehouseService
warehouseService
;
@Resource
@Resource
private
BusFormService
busFormService
;
private
BusFormService
busFormService
;
...
@@ -158,25 +161,24 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
...
@@ -158,25 +161,24 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
order
.
setCreateTime
(
DateTimeUtil
.
getCurrentDateTime
());
order
.
setCreateTime
(
DateTimeUtil
.
getCurrentDateTime
());
//执行工作流
//执行工作流
String
processInstanceId
=
null
;
String
processInstanceId
=
null
;
if
(
req
.
getExamineState
().
equals
(
"working"
)
&&
!
req
.
getBussinessType
().
equals
(
"quick"
))
//其他出入库单
{
StartProcessInstanceDTO
startProcessInstanceDTO
=
new
StartProcessInstanceDTO
();
StartProcessInstanceDTO
startProcessInstanceDTO
=
new
StartProcessInstanceDTO
();
//业务单走审核流
startProcessInstanceDTO
.
setProcessDefinitionId
(
req
.
getProcessDefinitionId
());
startProcessInstanceDTO
.
setProcessDefinitionId
(
req
.
getProcessDefinitionId
());
startProcessInstanceDTO
.
setOrderId
(
order
.
getId
());
startProcessInstanceDTO
.
setOrderId
(
order
.
getId
());
startProcessInstanceDTO
.
setOrderType
(
"workOrder"
);
startProcessInstanceDTO
.
setUserId
(
req
.
getUserId
());
startProcessInstanceDTO
.
setUserId
(
req
.
getUserId
());
if
(!
req
.
getBussinessType
().
equals
(
"quick"
)
&&
req
.
getExamineState
().
equals
(
"working"
))
//其他出入库单
{
startProcessInstanceDTO
.
setOrderType
(
"workOrder"
);
processInstanceId
=
FlowInstanceService
.
startProcessInstanceById
(
startProcessInstanceDTO
);
processInstanceId
=
FlowInstanceService
.
startProcessInstanceById
(
startProcessInstanceDTO
);
}
else
{
//快速移库单
}
else
{
//快速移库单
StartProcessInstanceDTO
startProcessInstanceDTO
=
new
StartProcessInstanceDTO
();
startProcessInstanceDTO
.
setProcessDefinitionId
(
req
.
getProcessDefinitionId
());
startProcessInstanceDTO
.
setOrderId
(
order
.
getId
());
startProcessInstanceDTO
.
setOrderType
(
"quickOrder"
);
startProcessInstanceDTO
.
setOrderType
(
"quickOrder"
);
startProcessInstanceDTO
.
setUserId
(
req
.
getUserId
());
processInstanceId
=
FlowInstanceService
.
startProcessInstanceById
(
startProcessInstanceDTO
);
processInstanceId
=
FlowInstanceService
.
startProcessInstanceById
(
startProcessInstanceDTO
);
}
}
//list返回数据
//list返回数据
List
<
String
>
list
=
new
ArrayList
<>();
List
<
String
>
list
=
new
ArrayList
<>();
//当前审核是否跳过
if
(
processInstanceId
.
substring
(
0
,
2
).
equals
(
"TG"
)){
if
(
processInstanceId
.
substring
(
0
,
2
).
equals
(
"TG"
)){
String
substring
=
processInstanceId
.
substring
(
2
);
String
substring
=
processInstanceId
.
substring
(
2
);
order
.
setProcessId
(
substring
);
order
.
setProcessId
(
substring
);
...
@@ -253,6 +255,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
...
@@ -253,6 +255,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
}
}
//新增默认审核通过的任务单(可以没有工作流)
//新增默认审核通过的任务单(可以没有工作流)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
@Override
...
@@ -601,7 +604,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
...
@@ -601,7 +604,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
Object
[]
criteria
=
new
Object
[]{
orgId
,
upReq
.
getWarehouseId
(),
upReq
.
getTypeId
(),
upReq
.
getSizeId
(),
upReq
.
getPrice
()};
Object
[]
criteria
=
new
Object
[]{
orgId
,
upReq
.
getWarehouseId
(),
upReq
.
getTypeId
(),
upReq
.
getSizeId
(),
upReq
.
getPrice
()};
searchCriteria
.
add
(
criteria
);
searchCriteria
.
add
(
criteria
);
}
}
List
<
InventorySummary
>
inventorySummaryList
=
inventorySummaryService
.
selectByItems
(
searchCriteria
);
List
<
InventorySummary
>
inventorySummaryList
=
inventorySummaryService
.
select
Sum
ByItems
(
searchCriteria
);
List
<
InventorySummary
>
addList
=
new
ArrayList
<>();
List
<
InventorySummary
>
addList
=
new
ArrayList
<>();
List
<
InventorySummary
>
updateList
=
new
ArrayList
<>();
List
<
InventorySummary
>
updateList
=
new
ArrayList
<>();
for
(
UpdateOrderDetailReq
upReq:
orderDetailReqList
)
{
for
(
UpdateOrderDetailReq
upReq:
orderDetailReqList
)
{
...
@@ -833,7 +836,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
...
@@ -833,7 +836,7 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
.
eq
(
Stocktake:
:
getProcessId
,
req
.
getProcessInstanceId
()));
.
eq
(
Stocktake:
:
getProcessId
,
req
.
getProcessInstanceId
()));
BeanPlusUtil
.
copyProperties
(
one
,
stocktakeDto
);
BeanPlusUtil
.
copyProperties
(
one
,
stocktakeDto
);
processOrderDto
.
setStocktakeDto
(
stocktakeDto
);
processOrderDto
.
setStocktakeDto
(
stocktakeDto
);
}
else
if
(
req
.
getOrderType
().
equals
(
"reassigment
Order
"
))
{
}
else
if
(
req
.
getOrderType
().
equals
(
"reassigment"
))
{
ReassignmentDto
reassignmentDto
=
new
ReassignmentDto
();
ReassignmentDto
reassignmentDto
=
new
ReassignmentDto
();
Reassignment
one
=
reassignmentService
.
getOne
(
new
LambdaQueryWrapper
<
Reassignment
>()
Reassignment
one
=
reassignmentService
.
getOne
(
new
LambdaQueryWrapper
<
Reassignment
>()
.
eq
(
Reassignment:
:
getProcessId
,
req
.
getProcessInstanceId
()));
.
eq
(
Reassignment:
:
getProcessId
,
req
.
getProcessInstanceId
()));
...
@@ -844,5 +847,169 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
...
@@ -844,5 +847,169 @@ public class OrderMainServiceImpl extends ServiceImpl<OrderMainMapper, OrderMain
}
}
//快速生成入库单
@Override
public
boolean
addQuickOrder
(
OrderMain
existOrder
)
{
//orderMain入库单
OrderMain
orderMain
=
new
OrderMain
();
BeanPlusUtil
.
copyProperties
(
existOrder
,
orderMain
);
orderMain
.
setEndOrgId
(
existOrder
.
getStartOrgId
());
orderMain
.
setEndOrgName
(
existOrder
.
getStartOrgName
());
orderMain
.
setOrderType
(
"in"
);
orderMain
.
setId
(
UUID
.
randomUUID
().
toString
());
//修改订单编号
UpdateOrderReq
req
=
new
UpdateOrderReq
();
BeanPlusUtil
.
copyProperties
(
orderMain
,
req
);
OrderNum
orderNum
=
setOrderCode
(
req
);
String
codeValue
=
String
.
format
(
"%04d"
,
orderNum
.
getNum
());
orderMain
.
setOrderCode
(
orderNum
.
getBussinessType
()+
orderNum
.
getYear
()+
String
.
format
(
"%02d"
,
LocalDateTime
.
now
().
getMonth
().
getValue
())+
String
.
format
(
"%02d"
,
LocalDateTime
.
now
().
getDayOfMonth
())+
codeValue
);
//保存入库单
save
(
orderMain
);
//查询出库子单
List
<
OrderDetail
>
list
=
orderDetailService
.
list
(
new
LambdaQueryWrapper
<
OrderDetail
>()
.
eq
(
OrderDetail:
:
getOrderId
,
existOrder
.
getId
()));
//查询条件,将所有查询条件放在searchCriteria中,用于修改库存表中的装备的仓库位置
//原来出库单的查询条件list
List
<
Object
[]>
searchCriteria
=
new
ArrayList
<>();
//新建的入库单查询条件list
List
<
Object
[]>
updateCriteria
=
new
ArrayList
<>();
//创建入库单子单
List
<
OrderDetail
>
collect
=
list
.
stream
().
map
(
orderDetail
->
{
OrderDetail
orderDetail1
=
new
OrderDetail
();
BeanPlusUtil
.
copyProperties
(
orderDetail
,
orderDetail1
);
//修改主单据id
orderDetail1
.
setOrderId
(
orderMain
.
getId
());
//修改单据出入状态
orderDetail1
.
setType
(
"in"
);
//修改仓库id
orderDetail1
.
setWarehouseId
(
orderMain
.
getLocationId
());
orderDetail1
.
setWarehouseName
(
orderMain
.
getLocationName
());
//新增创建时间
orderDetail1
.
setCreateTime
(
DateTimeUtil
.
getCurrentDateTime
());
Object
[]
criteria
=
new
Object
[]{
existOrder
.
getStartOrgId
(),
orderDetail
.
getWarehouseId
(),
orderDetail
.
getTypeId
(),
orderDetail
.
getSizeId
(),
orderDetail
.
getPrice
()};
searchCriteria
.
add
(
criteria
);
Object
[]
update
=
new
Object
[]{
orderMain
.
getEndOrgId
(),
orderDetail1
.
getWarehouseId
(),
orderDetail1
.
getTypeId
(),
orderDetail1
.
getSizeId
(),
orderDetail1
.
getPrice
()};
updateCriteria
.
add
(
update
);
return
orderDetail1
;
}).
collect
(
Collectors
.
toList
());
orderDetailService
.
saveBatch
(
collect
);
//将库存表中的装备的仓库id进行修改
List
<
Inventory
>
eqsList
=
inventoryService
.
selectEqsByItem
(
searchCriteria
);
for
(
Inventory
inventory
:
eqsList
)
{
for
(
OrderDetail
detail2
:
collect
)
{
if
(
inventory
.
getOrgId
().
equals
(
existOrder
.
getStartOrgId
())
&&
inventory
.
getSizeId
().
equals
(
detail2
.
getSizeId
())
&&
inventory
.
getTypeId
().
equals
(
detail2
.
getTypeId
())
&&
inventory
.
getPrice
().
equals
(
detail2
.
getPrice
()))
{
// 修改 仓库id
inventory
.
setLocationId
(
detail2
.
getWarehouseId
());
break
;
// 找到匹配的对象后跳出内循环
}
}
}
inventoryService
.
updateBatchById
(
eqsList
);
//将summary汇总表中数据进行修改(修改该组织机构下的装备汇总信息将库存信息的在库数,库存总数,总价还有其他数据数量进行修改)
//那么首先将原来的仓库下的装备汇总信息进行查询出来,对其进行修改
List
<
InventorySummary
>
oldSummaryList
=
inventorySummaryService
.
selectSumByItems
(
searchCriteria
);
//创建删除列表用于将没用的数据汇总信息进行删除
List
<
InventorySummary
>
deleteList
=
new
ArrayList
<>();
for
(
OrderDetail
orderDetail:
list
)
{
for
(
InventorySummary
oldSum:
oldSummaryList
)
{
//如果组织机构、仓库id、sizeId、typeId、unitPrice相同,那么修改其各项数值(不会存在两个列表长度不对等的情况,一定是一对一的,只不过是顺序问题,所以需要进行遍历)
if
(
orderDetail
.
getSizeId
().
equals
(
oldSum
.
getSizeId
())
&&
orderDetail
.
getTypeId
().
equals
(
oldSum
.
getTypeId
())
&&
orderDetail
.
getPrice
().
compareTo
(
oldSum
.
getUnitPrice
())==
0
){
//直接修改各项数据,并且判断库存总数是否为0,如果为0 ,判断其他数据是否为0,只有当所有数据为0才能将这条信息进行删除,否则装备数据会不准确(销毁数量)
oldSum
.
setNumber
(
oldSum
.
getNumber
()-
orderDetail
.
getPlanNum
());
oldSum
.
setPrice
(
oldSum
.
getPrice
().
subtract
(
orderDetail
.
getPrice
().
multiply
(
BigDecimal
.
valueOf
(
orderDetail
.
getPlanNum
()))));
oldSum
.
setStockNumber
(
oldSum
.
getStockNumber
()-
orderDetail
.
getPlanNum
());
//如果存在删减数量完成之后所有的数量值都是0的情况,那么将这一条数据进行删除操作
if
(
oldSum
.
getStockNumber
()==
0
&&
oldSum
.
getNumber
()==
0
&&
oldSum
.
getOutboundNumber
()==
0
&&
oldSum
.
getDestructionNumber
()!=
0
){
deleteList
.
add
(
oldSum
);
}
break
;
}
}
}
//其次查询出修改后的仓库下面的汇总信息,判断该仓库下是否已经存在该号型、类型、单价相同的装备数据
List
<
InventorySummary
>
newSummaryList
=
inventorySummaryService
.
selectSumByItems
(
updateCriteria
);
// 如果存在那么只需要修改在库数,出库数,库存总数和单价;
// 如果不存在那么新增一条该型号,类型和单价的数据,并且对在库数,出库数,库存总数和单价进行赋值添加;
//判断查询的汇总表中是否存在数据,如果list为空,那么直接进行新增即可,如果不为空,那么需要遍历哪些满足条件,如果满足条件只需要进行修改更新,如果未找到那么则进行新增
//查询组织机构编码
String
orgCode
=
pubOrgService
.
PubOrgExist
(
orderMain
.
getEndOrgId
()).
getOrgCode
();
//新建list用于存放新的汇总数据
List
<
InventorySummary
>
newList
=
new
ArrayList
<>();
if
(
newSummaryList
.
size
()==
0
){
for
(
OrderDetail
orderDetail1:
collect
)
{
InventorySummary
newSummary
=
addNewSum
(
orderMain
,
orderDetail1
,
orgCode
);
newList
.
add
(
newSummary
);
}
}
else
{
//遍历两个list,判断是否存在,如果不存在,那么将新增数据放在newList中最后进行批量新增,如果存在,那么修改数据,还是放在newSummaryList中,之后同老的数据一起进行修改
for
(
OrderDetail
orderDetail1:
collect
)
{
boolean
flag
=
false
;
for
(
InventorySummary
newSum:
newSummaryList
)
{
if
(
orderDetail1
.
getSizeId
().
equals
(
newSum
.
getSizeId
())
&&
orderDetail1
.
getTypeId
().
equals
(
newSum
.
getTypeId
())
&&
orderDetail1
.
getPrice
().
compareTo
(
newSum
.
getUnitPrice
())==
0
){
newSum
.
setNumber
(
newSum
.
getNumber
()-
orderDetail1
.
getPlanNum
());
newSum
.
setPrice
(
newSum
.
getPrice
().
subtract
(
orderDetail1
.
getPrice
().
multiply
(
BigDecimal
.
valueOf
(
orderDetail1
.
getPlanNum
()))));
newSum
.
setStockNumber
(
newSum
.
getStockNumber
()-
orderDetail1
.
getPlanNum
());
//过质保数?临近质保?报废数?
flag
=
true
;
break
;
}
}
if
(!
flag
){
//新增一条数据并且返回
InventorySummary
newSummary
=
addNewSum
(
orderMain
,
orderDetail1
,
orgCode
);
newList
.
add
(
newSummary
);
}
}
}
//保存新的inventorySummary数据
//如果newList不为空则save
if
(
newList
.
size
()>
0
){
inventorySummaryService
.
saveBatch
(
newList
);
}
//如果删除list不为空,那么进行批量删除
if
(
deleteList
.
size
()>
0
){
inventorySummaryService
.
removeBatchByIds
(
deleteList
);
}
//将orderSum和newSum两个列表进行拼接,最终得到一个更新的list进行更新
List
<
InventorySummary
>
totalSumList
=
new
ArrayList
<>();
totalSumList
.
addAll
(
oldSummaryList
);
totalSumList
.
addAll
(
newSummaryList
);
return
inventorySummaryService
.
updateBatchById
(
totalSumList
);
}
//新增一条inventorysummary数据
public
InventorySummary
addNewSum
(
OrderMain
orderMain
,
OrderDetail
orderDetail1
,
String
orgCode
){
InventorySummary
newSummary
=
new
InventorySummary
();
newSummary
.
setOrgId
(
orderMain
.
getEndOrgId
());
newSummary
.
setOrgName
(
orderMain
.
getEndOrgName
());
newSummary
.
setOrgCode
(
orgCode
);
newSummary
.
setTypeId
(
orderDetail1
.
getTypeId
());
newSummary
.
setTypeName
(
orderDetail1
.
getTypeName
());
newSummary
.
setSizeId
(
orderDetail1
.
getSizeId
());
newSummary
.
setSizeName
(
orderDetail1
.
getSizeName
());
newSummary
.
setLocationId
(
orderMain
.
getLocationId
());
newSummary
.
setLocationName
(
orderMain
.
getLocationName
());
newSummary
.
setLocationType
(
"0"
);
newSummary
.
setNumber
(
orderDetail1
.
getPlanNum
());
newSummary
.
setPrice
(
orderDetail1
.
getPrice
().
multiply
(
BigDecimal
.
valueOf
(
orderDetail1
.
getPlanNum
())));
newSummary
.
setUnitPrice
(
orderDetail1
.
getPrice
());
newSummary
.
setStockNumber
(
orderDetail1
.
getPlanNum
());
newSummary
.
setCreateTime
(
DateTimeUtil
.
getCurrentDateTime
());
return
newSummary
;
}
}
}
jyzb-biz/src/main/java/com/junmp/jyzb/service/impl/PolicemanServiceImpl.java
View file @
da74ef9b
...
@@ -720,7 +720,7 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman
...
@@ -720,7 +720,7 @@ public class PolicemanServiceImpl extends ServiceImpl<PolicemanMapper, Policeman
StartProcessInstanceDTO
startProcessInstanceDTO
=
new
StartProcessInstanceDTO
();
StartProcessInstanceDTO
startProcessInstanceDTO
=
new
StartProcessInstanceDTO
();
startProcessInstanceDTO
.
setProcessDefinitionId
(
req
.
getProcessDefinitionId
());
startProcessInstanceDTO
.
setProcessDefinitionId
(
req
.
getProcessDefinitionId
());
startProcessInstanceDTO
.
setOrderId
(
reassignment
.
getId
());
startProcessInstanceDTO
.
setOrderId
(
reassignment
.
getId
());
startProcessInstanceDTO
.
setOrderType
(
"reassigment
Order
"
);
startProcessInstanceDTO
.
setOrderType
(
"reassigment"
);
startProcessInstanceDTO
.
setUserId
(
req
.
getUserId
());
startProcessInstanceDTO
.
setUserId
(
req
.
getUserId
());
String
ProcessInstanceId
=
FlowInstanceService
.
startProcessInstanceById
(
startProcessInstanceDTO
);
String
ProcessInstanceId
=
FlowInstanceService
.
startProcessInstanceById
(
startProcessInstanceDTO
);
reassignment
.
setProcessId
(
ProcessInstanceId
);
reassignment
.
setProcessId
(
ProcessInstanceId
);
...
...
jyzb-biz/src/main/resources/mapper/InventoryMapper.xml
View file @
da74ef9b
...
@@ -466,6 +466,14 @@
...
@@ -466,6 +466,14 @@
#{item}
#{item}
</foreach>
</foreach>
</select>
</select>
<select
id=
"selectEqsByItem"
resultType=
"com.junmp.jyzb.entity.Inventory"
>
select * from base_inventory where
<foreach
collection=
"list"
item=
"item"
separator=
"or"
>
(
location_state = 'in' AND state = 'normal' AND org_id_int = ${item[0]} AND location_id = '${item[1]}' AND type_id = ${item[3]} AND size_id = '${item[2]}' AND unit_price = ${item[4]}
)
</foreach>
</select>
</mapper>
</mapper>
\ No newline at end of file
jyzb-biz/src/main/resources/mapper/InventorySummaryMapper.xml
View file @
da74ef9b
...
@@ -264,7 +264,7 @@
...
@@ -264,7 +264,7 @@
GROUP BY size_id,type_id
GROUP BY size_id,type_id
HAVING stockNumber>0
HAVING stockNumber>0
</select>
</select>
<select
id=
"selectByItems"
resultType=
"com.junmp.jyzb.entity.InventorySummary"
>
<select
id=
"select
Sum
ByItems"
resultType=
"com.junmp.jyzb.entity.InventorySummary"
>
select * from base_inventory_summary where
select * from base_inventory_summary where
<foreach
collection=
"list"
item=
"item"
separator=
"or"
>
<foreach
collection=
"list"
item=
"item"
separator=
"or"
>
(
(
...
...
编写
预览
Markdown
格式
0%
重试
或
添加新文件
添加附件
取消
您添加了
0
人
到此讨论。请谨慎行事。
请先完成此评论的编辑!
取消
请
注册
或者
登录
后发表评论