Commit 237fed53 by 赵剑炜

盘点接口上报

parent 01a0e6c2
...@@ -34,7 +34,7 @@ public class BussinessInventory implements Serializable { ...@@ -34,7 +34,7 @@ public class BussinessInventory implements Serializable {
* 工作流id * 工作流id
*/ */
@TableField(value = "process_id") @TableField(value = "process_id")
private Long processId; private String processId;
/** /**
* 工作流id * 工作流id
*/ */
......
...@@ -26,6 +26,7 @@ import com.junmp.jyzb.api.exception.enums.OrderExceptionEnum; ...@@ -26,6 +26,7 @@ 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.jyzb.utils.RabbitMQSendMsg;
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.message.api.MessageApi; import com.junmp.v2.message.api.MessageApi;
...@@ -47,6 +48,7 @@ import org.flowable.task.service.impl.persistence.entity.TaskEntity; ...@@ -47,6 +48,7 @@ import org.flowable.task.service.impl.persistence.entity.TaskEntity;
import org.flowable.variable.api.history.HistoricVariableInstance; import org.flowable.variable.api.history.HistoricVariableInstance;
import org.slf4j.Logger; import org.slf4j.Logger;
import org.slf4j.LoggerFactory; import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component; import org.springframework.stereotype.Component;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -90,7 +92,9 @@ import static com.junmp.junmpProcess.common.CommonConstants.*; ...@@ -90,7 +92,9 @@ import static com.junmp.junmpProcess.common.CommonConstants.*;
@Resource @Resource
private MessageApi messageApi; private MessageApi messageApi;
@Resource @Resource
private InventoryService inventoryService; private BussinessInventoryService bussinessInventoryService;
@Autowired
private RabbitMQSendMsg MQ;
@Resource @Resource
private RepositoryService repositoryService; private RepositoryService repositoryService;
protected Logger logger = LoggerFactory.getLogger(this.getClass()); protected Logger logger = LoggerFactory.getLogger(this.getClass());
...@@ -119,10 +123,7 @@ import static com.junmp.junmpProcess.common.CommonConstants.*; ...@@ -119,10 +123,7 @@ import static com.junmp.junmpProcess.common.CommonConstants.*;
String Type= orderType.get(0).getValue().toString(); String Type= orderType.get(0).getValue().toString();
if (Type.equals("workOrder") )//出入库单据 if (Type.equals("workOrder") )//出入库单据
// if (Type.equals("workOrder") || Type.equals("quickOrder"))//出入库单据
{ {
// OrderMainReq req=new OrderMainReq();
// req.setProcessId(processInstanceId);
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");
...@@ -146,7 +147,7 @@ import static com.junmp.junmpProcess.common.CommonConstants.*; ...@@ -146,7 +147,7 @@ import static com.junmp.junmpProcess.common.CommonConstants.*;
updateOrderReq.setDetailList(collect); updateOrderReq.setDetailList(collect);
//将单据上传到rabbitmq //将单据上传到rabbitmq
orderMainService.AddFinishOrder(updateOrderReq); orderMainService.AddFinishOrder(updateOrderReq);
} } else
//业务单据 //业务单据
if (Type.equals("bussinessOrder")){ if (Type.equals("bussinessOrder")){
BusForm busForm = busFormService.getOne(new LambdaQueryWrapper<BusForm>() BusForm busForm = busFormService.getOne(new LambdaQueryWrapper<BusForm>()
...@@ -156,7 +157,7 @@ import static com.junmp.junmpProcess.common.CommonConstants.*; ...@@ -156,7 +157,7 @@ import static com.junmp.junmpProcess.common.CommonConstants.*;
busFormService.updateBrokenResult(busForm); busFormService.updateBrokenResult(busForm);
} }
busFormService.updateById(busForm); busFormService.updateById(busForm);
} } else
if (Type.equals("reassigment")){//调岗申请单 if (Type.equals("reassigment")){//调岗申请单
Reassignment one = reassignmentService.getOne(new LambdaQueryWrapper<Reassignment>() Reassignment one = reassignmentService.getOne(new LambdaQueryWrapper<Reassignment>()
.eq(Reassignment::getProcessId, processInstanceId)); .eq(Reassignment::getProcessId, processInstanceId));
...@@ -165,22 +166,37 @@ import static com.junmp.junmpProcess.common.CommonConstants.*; ...@@ -165,22 +166,37 @@ import static com.junmp.junmpProcess.common.CommonConstants.*;
BeanPlusUtil.copyProperties(one,updateReassignmentReq); BeanPlusUtil.copyProperties(one,updateReassignmentReq);
policemanService.changePoliceOrg(updateReassignmentReq); policemanService.changePoliceOrg(updateReassignmentReq);
reassignmentService.updateById(one); reassignmentService.updateById(one);
} } else
if (Type.equals("stocktakeOrder")){//盘库申请单 if (Type.equals("stocktakeOrder")){//盘库申请单
} String exchangeName="orderExchange";
//需要判断是入库单还是出库单,入库单传收物单位id,出库单传发物单位id
BussinessInventory BI = bussinessInventoryService.getOne(new LambdaQueryWrapper<BussinessInventory>()
.eq(BussinessInventory::getProcessId, processInstanceId));
BI.setExamineState("finished");
bussinessInventoryService.updateById(BI);
MQ.SendMsg(exchangeName,BI.getOrgId().toString(),BI);
}
//消息推送 //消息推送
MessageSendReq sendReq = new MessageSendReq(); MessageSendReq sendReq = new MessageSendReq();
String startUser= MapUtil.getStr(historicProcessInstance.getProcessVariables(),START_USER_INFO); String startUser= MapUtil.getStr(historicProcessInstance.getProcessVariables(),START_USER_INFO);
UserInfo user= JSONObject.parseObject(startUser, UserInfo.class); UserInfo user= JSONObject.parseObject(startUser, UserInfo.class);
String Types= MapUtil.getStr(historicProcessInstance.getProcessVariables(),ORDER_TYPE); String Types= MapUtil.getStr(historicProcessInstance.getProcessVariables(),ORDER_TYPE);
sendReq.setReceiveUserIds(String.valueOf(user.getUserId())); sendReq.setReceiveUserIds(String.valueOf(user.getUserId()));
sendReq.setMsgTitle("您的审批已通过");
sendReq.setBizType("pass/"+Types); sendReq.setBizType("pass/"+Types);
sendReq.setBizId(Long.valueOf(processInstanceId)); sendReq.setBizId(Long.valueOf(processInstanceId));
if (Type.equals("stocktakeOrder"))//整理需要下发的消息
{
sendReq.setMsgTitle("盘点提醒");
sendReq.setMsgContent("【盘库单】已下发");
}
else
{
sendReq.setMsgTitle("您的审批已通过");
sendReq.setMsgContent("您提交的审批【"+mainProcess.getName()+"】已经通过"); sendReq.setMsgContent("您提交的审批【"+mainProcess.getName()+"】已经通过");
}
sendReq.setPriority("0"); sendReq.setPriority("0");
sendReq.setSendTime(DateTime.now()); sendReq.setSendTime(DateTime.now());
messageApi.sendMessage(sendReq); messageApi.sendMessage(sendReq);
......
...@@ -39,6 +39,8 @@ import com.junmp.v2.dict.service.SysDictItemService; ...@@ -39,6 +39,8 @@ import com.junmp.v2.dict.service.SysDictItemService;
import com.junmp.v2.dict.service.SysDictService; import com.junmp.v2.dict.service.SysDictService;
import com.junmp.v2.sys.api.OrganizationServiceApi; import com.junmp.v2.sys.api.OrganizationServiceApi;
import com.sun.org.apache.xpath.internal.operations.Bool; import com.sun.org.apache.xpath.internal.operations.Bool;
import org.flowable.engine.TaskService;
import org.flowable.task.api.Task;
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;
...@@ -61,6 +63,8 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -61,6 +63,8 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
@Resource @Resource
private IFlowInstanceService FlowInstanceService; private IFlowInstanceService FlowInstanceService;
@Resource @Resource
private TaskService taskService;
@Resource
private InventorySummaryService inventorySummaryService; private InventorySummaryService inventorySummaryService;
@Resource @Resource
private SysDictItemService sysDictItemService; private SysDictItemService sysDictItemService;
...@@ -87,7 +91,7 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -87,7 +91,7 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
Warehouse warehouse= warehouseService.getById(req.getWarehouseId()); Warehouse warehouse= warehouseService.getById(req.getWarehouseId());
PubOrg pubOrg=orgService.getById(req.getOrgId()); PubOrg pubOrg=orgService.getById(req.getOrgId());
BeanPlusUtil.copyProperties(req,BI); BeanPlusUtil.copyProperties(req,BI);
BI.setResult("ready");
BI.setWarehouseName(warehouse.getName()); BI.setWarehouseName(warehouse.getName());
if (StringUtils.isNotBlank(pubOrg.getDName()) ) if (StringUtils.isNotBlank(pubOrg.getDName()) )
{ {
...@@ -106,7 +110,7 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -106,7 +110,7 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
startProcessInstanceDTO.setOrderId(BI.getId()); startProcessInstanceDTO.setOrderId(BI.getId());
startProcessInstanceDTO.setOrderType("stocktakeOrder"); startProcessInstanceDTO.setOrderType("stocktakeOrder");
String ProcessInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO); String ProcessInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO);
BI.setProcessId(Long.valueOf(ProcessInstanceId)); BI.setProcessId(ProcessInstanceId);
String assigns= FlowInstanceService.GetNextAssign(ProcessInstanceId);//这里需要手动更新审核人信息 String assigns= FlowInstanceService.GetNextAssign(ProcessInstanceId);//这里需要手动更新审核人信息
BI.setCurrentAssign(assigns); BI.setCurrentAssign(assigns);
...@@ -120,11 +124,13 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -120,11 +124,13 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
return BI.getId(); return BI.getId();
} }
else else
{ BussinessInventory BI = new BussinessInventory(); {
BussinessInventory BI = new BussinessInventory();
Warehouse warehouse= warehouseService.getById(req.getWarehouseId()); Warehouse warehouse= warehouseService.getById(req.getWarehouseId());
PubOrg pubOrg=orgService.getById(req.getOrgId()); PubOrg pubOrg=orgService.getById(req.getOrgId());
BeanPlusUtil.copyProperties(req,BI); BeanPlusUtil.copyProperties(req,BI);
BI.setWarehouseName(warehouse.getName()); BI.setWarehouseName(warehouse.getName());
BI.setResult("ready");
//设置单号 //设置单号
if (ObjectUtil.isNull(pubOrg.getDName()) ) if (ObjectUtil.isNull(pubOrg.getDName()) )
{ {
...@@ -154,12 +160,35 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -154,12 +160,35 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
startProcessInstanceDTO.setOrderId(BI.getId()); startProcessInstanceDTO.setOrderId(BI.getId());
startProcessInstanceDTO.setOrderType("stocktakeOrder"); startProcessInstanceDTO.setOrderType("stocktakeOrder");
// startProcessInstanceDTO.setUserId(req.getUserId()); // startProcessInstanceDTO.setUserId(req.getUserId());
String ProcessInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO); String processInstanceId= FlowInstanceService.startProcessInstanceById(startProcessInstanceDTO);
BI.setProcessId(Long.valueOf(ProcessInstanceId));
String assigns= FlowInstanceService.GetNextAssign(ProcessInstanceId);//这里需要手动更新审核人信息 //list返回数据
BI.setCurrentAssign(assigns); List<String> list=new ArrayList<>();
//当前审核是否跳过
if (processInstanceId!=null && processInstanceId.substring(0,4).equals("skip") ){
String substring = processInstanceId.substring(4);
BI.setProcessId(substring);
if (ObjectUtil.isNotNull(req.getId()) && !req.getId().trim().isEmpty()) {
updateById(BI);
} else {
//保存
this.save(BI);
}
Task currentTask = taskService.createTaskQuery().processInstanceId(substring).singleResult();
// 直接完成当前任务
taskService.complete(currentTask.getId());
}else {
BI.setProcessId(processInstanceId);
if (StringUtils.isNotBlank(req.getId())) {
updateById(BI); updateById(BI);
} else {
//保存
this.save(BI);
}
}
list.add(BI.getId());
}else { }else {
...@@ -257,7 +286,6 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -257,7 +286,6 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
else else
{ {
throw new ServiceException(InventoryExceptionEnum.ORDER_NOT_EXIST); throw new ServiceException(InventoryExceptionEnum.ORDER_NOT_EXIST);
} }
return true; return true;
} }
...@@ -509,8 +537,21 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor ...@@ -509,8 +537,21 @@ public class BussinessInventoryServiceImpl extends ServiceImpl<BussinessInventor
wrapper.eq(BussinessInventory::getOrgId, req.getOrgId()); wrapper.eq(BussinessInventory::getOrgId, req.getOrgId());
wrapper.eq(StringUtils.isNotBlank(req.getWarehouseId()), BussinessInventory::getWarehouseId, req.getWarehouseId()); wrapper.eq(StringUtils.isNotBlank(req.getWarehouseId()), BussinessInventory::getWarehouseId, req.getWarehouseId());
wrapper.eq(StringUtils.isNotBlank(req.getInventoryState()), BussinessInventory::getInventoryState, req.getInventoryState()); wrapper.eq(StringUtils.isNotBlank(req.getInventoryState()), BussinessInventory::getInventoryState, req.getInventoryState());
wrapper.eq(StringUtils.isNotBlank(req.getExamineState()), BussinessInventory::getExamineState, req.getExamineState()); if (StringUtils.isNotBlank(req.getExamineState())) {
if (req.getExamineState().equals("unaudited")) {
wrapper.and(
i -> i.eq(BussinessInventory::getExamineState, "none")
.or()
.eq(BussinessInventory::getExamineState, "working")
);
}
else
{
wrapper.eq( BussinessInventory::getExamineState, "finished");
}
}
wrapper.eq(StringUtils.isNotBlank(req.getInventoryType()), BussinessInventory::getInventoryType, req.getInventoryType()); wrapper.eq(StringUtils.isNotBlank(req.getInventoryType()), BussinessInventory::getInventoryType, req.getInventoryType());
wrapper.orderByDesc(BussinessInventory::getApplyTime);
return wrapper; return wrapper;
} }
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论