gongdecai 2 years ago
parent
commit
008a47f8f9

+ 60 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/AcquisitionCheckList.java

@@ -0,0 +1,60 @@
+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.PurchasePrice;
+import com.yh.saas.plugin.yiliangyiyun.entity.WarehouseBaseInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.WarehousingOrder;
+import com.yh.saas.plugin.yiliangyiyun.service.IContractManagementInfoService;
+import com.yh.saas.plugin.yiliangyiyun.service.IPurchasePriceService;
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehouseBaseInfoService;
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehousingOrderService;
+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 AcquisitionCheckList implements IWorkflowTaskChecklist<PurchasePrice> {
+
+    @Autowired
+    private IPurchasePriceService purchasePriceService;
+
+    @Autowired
+    private IWarehouseBaseInfoService warehouseBaseInfoService;
+    @Autowired
+    private IContractManagementInfoService contractManagementInfoService;
+    @Override
+    public List<PurchasePrice> getRecords(List<String> ids) {
+
+        return ids.stream().map(id -> purchasePriceService.selectById(id)).collect(Collectors.toList());
+    }
+
+    @Override
+    public List<String> getConditions() {
+        return Lists.newArrayList("jointVentureParties");
+    }
+
+    @Override
+    public Map<String, Object> getCondtionValueMap(String id) {
+        PurchasePrice purchasePrice = purchasePriceService.selectById(id);
+        Map<String, Object> variableMap = new HashMap<>();
+        ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
+                .eq("contract_no",purchasePrice.getWarehouseName()));
+        if(contractManagementInfo != null){
+            variableMap.put("jointVentureParties", contractManagementInfo.getJointVentureParties());
+        }
+        else{
+            WarehouseBaseInfo warehouseBaseInfo = warehouseBaseInfoService.selectOne(new EntityWrapper<WarehouseBaseInfo>()
+                    .eq("warehouse_name",purchasePrice.getWarehouseName())
+                    .eq("comp_id",purchasePrice.getCompId()));
+            variableMap.put("jointVentureParties", warehouseBaseInfo.getJointVentureParties());
+        }
+        return variableMap;
+    }
+}

+ 57 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/ExepenseList.java

@@ -0,0 +1,57 @@
+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.ExpenseInfo;
+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.IExpenseInfoService;
+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 ExepenseList implements IWorkflowTaskChecklist<ExpenseInfo> {
+    @Autowired
+    private IExpenseInfoService expenseInfoService;
+    @Autowired
+    private IContractManagementInfoService contractManagementInfoService;
+    @Autowired
+    private IWarehouseBaseInfoService warehouseBaseInfoService;
+    @Override
+    public List<ExpenseInfo> getRecords(List<String> ids) {
+        return ids.stream().map(id -> expenseInfoService.selectById(id)).collect(Collectors.toList());
+    }
+
+    @Override
+    public List<String> getConditions() {
+        return Lists.newArrayList("leaveTypeKey");
+    }
+
+    @Override
+    public Map<String, Object> getCondtionValueMap(String id) {
+        ExpenseInfo expenseInfo = expenseInfoService.selectById(id);
+        Map<String, Object> variableMap = new HashMap<>();
+        ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
+                .eq("contract_no",expenseInfo.getContractNo()));
+        if(contractManagementInfo != null){
+            variableMap.put("jointVentureParties", contractManagementInfo.getJointVentureParties());
+        }
+        else{
+            WarehouseBaseInfo warehouseBaseInfo = warehouseBaseInfoService.selectOne(new EntityWrapper<WarehouseBaseInfo>()
+                    .eq("warehouse_name",expenseInfo.getWarehouseName())
+                    .eq("comp_id",expenseInfo.getCompId()));
+            variableMap.put("jointVentureParties", warehouseBaseInfo.getJointVentureParties());
+        }
+        return variableMap;
+    }
+}

+ 82 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/InOutWharehoseTaskCheckList.java

@@ -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;
+    }
+}

+ 41 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/QingjiaCheckList.java

@@ -0,0 +1,41 @@
+package com.yh.saas.plugin.yiliangyiyun.workflow;
+
+import com.google.common.collect.Lists;
+import com.yh.saas.common.support.workflow.AbstractWorkflowTaskListener;
+import com.yh.saas.common.support.workflow.IWorkflowTaskChecklist;
+import com.yh.saas.common.support.workflow.annotation.WorkflowTaskChecklist;
+import com.yh.saas.common.support.workflow.annotation.WorkflowTaskListener;
+import com.yh.saas.plugin.yiliangyiyun.constant.StatusEnum;
+import com.yh.saas.plugin.yiliangyiyun.entity.LeaveInfo;
+import com.yh.saas.plugin.yiliangyiyun.service.ILeaveInfoService;
+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 QingjiaCheckList implements IWorkflowTaskChecklist<LeaveInfo> {
+
+    @Autowired
+    private ILeaveInfoService leaveInfoService;
+
+    @Override
+    public List<LeaveInfo> getRecords(List<String> ids) {
+        return ids.stream().map(id -> leaveInfoService.selectById(id)).collect(Collectors.toList());
+    }
+
+    @Override
+    public List<String> getConditions() {
+        return Lists.newArrayList("leaveTypeKey");
+    }
+
+    @Override
+    public Map<String, Object> getCondtionValueMap(String id) {
+        LeaveInfo applyInfo = leaveInfoService.selectById(id);
+        Map<String, Object> variableMap = new HashMap<>();
+        variableMap.put("leaveTypeKey", applyInfo.getLeaveTypeKey());
+        return variableMap;
+    }
+}

+ 40 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/ShouContractCheckList.java

@@ -0,0 +1,40 @@
+package com.yh.saas.plugin.yiliangyiyun.workflow;
+
+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.LeaveInfo;
+import com.yh.saas.plugin.yiliangyiyun.service.IContractManagementInfoService;
+import com.yh.saas.plugin.yiliangyiyun.service.ILeaveInfoService;
+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 ShouContractCheckList implements IWorkflowTaskChecklist<ContractManagementInfo> {
+
+    @Autowired
+    private IContractManagementInfoService contractManagementInfoService;
+
+    @Override
+    public List<ContractManagementInfo> getRecords(List<String> ids) {
+        return ids.stream().map(id -> contractManagementInfoService.selectById(id)).collect(Collectors.toList());
+    }
+
+    @Override
+    public List<String> getConditions() {
+        return Lists.newArrayList("jointVentureParties");
+    }
+
+    @Override
+    public Map<String, Object> getCondtionValueMap(String id) {
+        ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectById(id);
+        Map<String, Object> variableMap = new HashMap<>();
+        variableMap.put("jointVentureParties", contractManagementInfo.getJointVentureParties());
+        return variableMap;
+    }
+}

+ 48 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/TranSettlementReportCheckList.java

@@ -0,0 +1,48 @@
+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.*;
+import com.yh.saas.plugin.yiliangyiyun.entity.BatchReviewInfo;
+import com.yh.saas.plugin.yiliangyiyun.service.*;
+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 TranSettlementReportCheckList implements IWorkflowTaskChecklist<BatchReviewInfo> {
+    @Autowired
+    private ITranSettlementReportService tranSettlementReportService;
+    @Autowired
+    private IBatchReviewInfoService batchReviewInfoService;
+    @Autowired
+    private IContractManagementInfoService contractManagementInfoService;
+
+    @Override
+    public List<BatchReviewInfo> getRecords(List<String> ids) {
+
+        return ids.stream().map(id -> batchReviewInfoService.selectById(id)).collect(Collectors.toList());
+    }
+
+    @Override
+    public List<String> getConditions() {
+        return Lists.newArrayList("jointVentureParties");
+    }
+
+    @Override
+    public Map<String, Object> getCondtionValueMap(String id) {
+//        BatchReviewInfo BatchReviewInfo = batchReviewInfoService.selectById(id);
+        TranSettlementReport tranSettlementReport = tranSettlementReportService.selectOne(new EntityWrapper<TranSettlementReport>()
+                .eq("batch_id",id));
+        ContractManagementInfo contractManagementInfo = contractManagementInfoService.selectOne(new EntityWrapper<ContractManagementInfo>()
+                .eq("contract_no",tranSettlementReport.getContractNo()));
+        Map<String, Object> variableMap = new HashMap<>();
+        variableMap.put("jointVentureParties", contractManagementInfo.getJointVentureParties());
+        return variableMap;
+    }
+}

+ 49 - 0
winsea-haixin-plugin-yiliangyiyun/src/main/java/com/yh/saas/plugin/yiliangyiyun/workflow/WarehousingOrderCheckList.java

@@ -0,0 +1,49 @@
+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.WarehouseBaseInfo;
+import com.yh.saas.plugin.yiliangyiyun.entity.WarehousingOrder;
+import com.yh.saas.plugin.yiliangyiyun.service.IContractManagementInfoService;
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehouseBaseInfoService;
+import com.yh.saas.plugin.yiliangyiyun.service.IWarehousingOrderService;
+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 WarehousingOrderCheckList implements IWorkflowTaskChecklist<WarehousingOrder> {
+
+    @Autowired
+    private IWarehousingOrderService warehousingOrderService;
+    @Autowired
+    private IWarehouseBaseInfoService warehouseBaseInfoService;
+
+    @Override
+    public List<WarehousingOrder> getRecords(List<String> ids) {
+
+        return ids.stream().map(id -> warehousingOrderService.selectOne(new EntityWrapper<WarehousingOrder>()
+                .eq("batch_id",id))).collect(Collectors.toList());
+    }
+
+    @Override
+    public List<String> getConditions() {
+        return Lists.newArrayList("jointVentureParties");
+    }
+
+    @Override
+    public Map<String, Object> getCondtionValueMap(String id) {
+        WarehousingOrder warehousingOrder = warehousingOrderService.selectOne(new EntityWrapper<WarehousingOrder>()
+        .eq("batch_id",id));
+        WarehouseBaseInfo warehouseBaseInfo = warehouseBaseInfoService.selectById(warehousingOrder.getBaseId());
+        Map<String, Object> variableMap = new HashMap<>();
+        variableMap.put("jointVentureParties", warehouseBaseInfo.getJointVentureParties());
+        return variableMap;
+    }
+}