futian.liu
2023-12-18 3884e330379c96e7576ada6b7a988a84e8757886
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
package com.consum.base.core;
 
import java.util.HashMap;
import java.util.Map;
 
/**
 * @ClassName WhBusinessEnum
 * @Date 2023/10/24
 * @Description 单据类型
 * @Version 1.0
 **/
public enum WhBusinessEnum {
    /**
     * 1 采购
     */
    CAIGOU(1),
    /**
     * 2 调拨
     */
    DIAOBO(2),
    /**
     * 3出库
     */
    CHUKU(3),
    /**
     * 4部门分发
     */
    BUMENFENFA(4),
    /**
     * 报废
     */
    BAOFEI(5),
    /**
     * 部门物品回退仓库
     */
    BUMENTUIHUI(6),
    /**
     * 物品盘点
     */
    PANDIAN(7),;
 
    private Integer value;
 
    WhBusinessEnum(Integer value) {
        this.value = value;
    }
 
    public Integer getValue() {
        return value;
    }
 
    /**
     * flowType转为 进出库流水总表[L_WAREHOUSE_FLOW] 的 THIS_TYPE:本次调整类型 和 BUSINESS_TYPE:单据类型
     *
     * @param flowType 同码表,1采购入库 2退还入库 3调拨入库 4盘盈入库 5申领出库 6调拨出库 7盘亏出库 8报废出库 9其他出库
     * @return flowThisType:本次调整类型(1=调增;2=调减) flowBusinessType:单据类型 1 采购2 调拨 3出库4部门分发5报废6部门物品回退仓库7物品盘点
     */
    public static Map<String, Short> getTypeByFlowType(Short flowType) {
        // 单据类型 1 采购2 调拨 3出库4部门分发5报废6部门物品回退仓库7物品盘点
        Short flowBusinessType = null;
        // 1=调增;2=调减
        Short flowThisType = null;
        // 单据类型。0仓库调拨;1部门分发;2部门物品回退
        Short transferBusinessType = null;
        switch (flowType) {
            // 1采购入库
            case 1:
                flowThisType = 1;
                flowBusinessType = 1;
                break;
            // 2退还入库
            case 2:
                flowThisType = 1;
                flowBusinessType = 2;
                break;
            // 3调拨入库
            case 3:
                flowThisType = 1;
                flowBusinessType = 3;
                break;
            // 4盘盈入库
            case 4:
                flowThisType = 1;
                flowBusinessType = 7;
                break;
            // 5申领出库
            case 5:
                flowThisType = 2;
                flowBusinessType = 4;
                // transferBusinessType = 1;
                break;
            // 6调拨出库
            case 6:
                flowThisType = 2;
                flowBusinessType = 2;
                // transferBusinessType = 1;
                break;
            // 7盘亏出库
            case 7:
                flowThisType = 2;
                flowBusinessType = 7;
                break;
            // 8报废出库
            case 8:
                flowThisType = 2;
                flowBusinessType = 5;
                break;
            // 9其他出库
            case 9:
                flowThisType = 2;
                flowBusinessType = 3;
                break;
        }
        Map<String, Short> rtnMap = new HashMap<>();
        rtnMap.put("flowBusinessType", flowBusinessType);
        rtnMap.put("flowThisType", flowThisType);
        return rtnMap;
    }
 
    /**
     * flowType转为 进出库流水总表[L_WAREHOUSE_FLOW] 的 THIS_TYPE:本次调整类型 和 BUSINESS_TYPE:单据类型
     *
     * @param deptFlowType // 同码表,1 物品申领 2 物品分发 3 物品退还 4 物品报废
     * @return flowThisType:本次调整类型(1=调增;2=调减) flowBusinessType:单据类型 1 采购2 调拨 3出库4部门分发5报废6部门物品回退仓库7物品盘点
     */
    public static Map<String, Short> getTypeByDeptFlowType(Short deptFlowType) {
        // 单据类型 1 采购 2 调拨 3出库4部门分发5报废6部门物品回退仓库7物品盘点
        Short flowBusinessType = null;
        // 1=调增;2=调减
        Short flowThisType = null;
        // 单据类型。0仓库调拨;1部门分发;2部门物品回退
        Short transferBusinessType = null;
        switch (deptFlowType) {
            // 物品申领
            case 1:
                // flowThisType = 2;
                // flowBusinessType = 2;
                break;
            // 2 物品分发
            case 2:
                flowThisType = 1;
                flowBusinessType = 4;
                // transferBusinessType = 1;
                break;
            // 3 物品退还
            case 3:
                flowThisType = 2;
                flowBusinessType = 6;
                // transferBusinessType = 2;
                break;
            // 4 物品报废
            case 4:
                flowThisType = 2;
                flowBusinessType = 5;
                break;
        }
        Map<String, Short> rtnMap = new HashMap<>();
        rtnMap.put("flowBusinessType", flowBusinessType);
        rtnMap.put("flowThisType", flowThisType);
        // rtnMap.put("transferBusinessType", transferBusinessType);
        return rtnMap;
    }
}