|
@@ -0,0 +1,82 @@
|
|
|
|
+package com.yh.saas.plugin.yiliangyiyun.workflow;
|
|
|
|
+
|
|
|
|
+import com.baomidou.mybatisplus.mapper.EntityWrapper;
|
|
|
|
+import com.google.common.collect.Lists;
|
|
|
|
+import com.yh.saas.common.support.workflow.IWorkflowTaskChecklist;
|
|
|
|
+import com.yh.saas.common.support.workflow.annotation.WorkflowTaskChecklist;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.entity.ContractManagementInfo;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.entity.InOutWarehouseTask;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.entity.WarehouseBaseInfo;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.service.IContractManagementInfoService;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.service.IInOutWarehouseTaskService;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.service.ILeaveInfoService;
|
|
|
|
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehouseBaseInfoService;
|
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
|
+
|
|
|
|
+import java.util.HashMap;
|
|
|
|
+import java.util.List;
|
|
|
|
+import java.util.Map;
|
|
|
|
+import java.util.stream.Collectors;
|
|
|
|
+
|
|
|
|
+@WorkflowTaskChecklist(name = "仓库管理", group = "出入库任务")
|
|
|
|
+public class InOutWharehoseTaskCheckList implements IWorkflowTaskChecklist<InOutWarehouseTask> {
|
|
|
|
+
|
|
|
|
+ @Autowired
|
|
|
|
+ private IInOutWarehouseTaskService iInOutWarehouseTaskService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IContractManagementInfoService contractManagementInfoService;
|
|
|
|
+ @Autowired
|
|
|
|
+ private IWarehouseBaseInfoService warehouseBaseInfoService;
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public List<InOutWarehouseTask> getRecords(List<String> ids) {
|
|
|
|
+ return ids.stream().map(id -> iInOutWarehouseTaskService.selectById(id)).collect(Collectors.toList());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public List<String> getConditions() {
|
|
|
|
+ return Lists.newArrayList("jointVentureParties");
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ @Override
|
|
|
|
+ public Map<String, Object> getCondtionValueMap(String id) {
|
|
|
|
+ InOutWarehouseTask inOutWarehouseTask = iInOutWarehouseTaskService.selectById(id);
|
|
|
|
+ Map<String, Object> variableMap = new HashMap<>();
|
|
|
|
+ //销售出库:看销售合同
|
|
|
|
+ //采购入库:看采购合同
|
|
|
|
+ if("销售出库".equals(inOutWarehouseTask.getInOutType())||"采购入库".equals(inOutWarehouseTask.getInOutType())){
|
|
|
|
+ ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
|
|
|
|
+ .eq("contract_no",inOutWarehouseTask.getContractNo()));
|
|
|
|
+ variableMap.put("jointVentureParties", contractManagementInfo.getJointVentureParties());
|
|
|
|
+ }
|
|
|
|
+ //移库任务:
|
|
|
|
+ //1.常用库移库:看发货库
|
|
|
|
+ //2.临时库移库:看临时库库名关联的合同
|
|
|
|
+ else if("移库入库".equals(inOutWarehouseTask.getInOutType())||"移库出库".equals(inOutWarehouseTask.getInOutType())){
|
|
|
|
+ WarehouseBaseInfo warehouseBaseInfo = warehouseBaseInfoService.selectOne(new EntityWrapper<WarehouseBaseInfo>()
|
|
|
|
+ .eq("warehouse_name",inOutWarehouseTask.getWarehouseName())
|
|
|
|
+ .eq("comp_id",inOutWarehouseTask.getCompId()));
|
|
|
|
+ if(warehouseBaseInfo != null){
|
|
|
|
+ ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
|
|
|
|
+ .eq("contract_no",inOutWarehouseTask.getWarehouseName()));
|
|
|
|
+ if(contractManagementInfo != null){
|
|
|
|
+
|
|
|
|
+ variableMap.put("jointVentureParties", contractManagementInfo.getJointVentureParties());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ else {
|
|
|
|
+ variableMap.put("jointVentureParties", warehouseBaseInfo.getJointVentureParties());
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //退库任务:看入货库
|
|
|
|
+ else {
|
|
|
|
+ WarehouseBaseInfo warehouseBaseInfo = warehouseBaseInfoService.selectOne(new EntityWrapper<WarehouseBaseInfo>()
|
|
|
|
+ .eq("warehouse_name",inOutWarehouseTask.getWarehouseName())
|
|
|
|
+ .eq("comp_id",inOutWarehouseTask.getCompId()));
|
|
|
|
+ variableMap.put("jointVentureParties", warehouseBaseInfo.getJointVentureParties());
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ return variableMap;
|
|
|
|
+ }
|
|
|
|
+}
|