Compare commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
07393e43ff | ||
|
|
08858f24d6 | ||
|
|
a994241400 | ||
|
|
a9be03961a | ||
|
|
7f6006ca48 | ||
|
|
defc8c3709 | ||
|
|
3c21c2c848 | ||
|
|
71936b50a7 | ||
|
|
9cfffe1224 | ||
|
|
d7574d188a | ||
|
|
1c1b06c1bf | ||
|
|
117019c55c | ||
|
|
171909b68d | ||
|
|
31c27c16c6 | ||
|
|
8dfe9545aa | ||
|
|
028afb57d7 | ||
|
|
37dd374bda | ||
|
|
d69af9ef20 | ||
|
|
9704dbfb07 | ||
|
|
3276792bb5 | ||
|
|
b57db4b8cc | ||
|
|
8a31ed9974 | ||
|
|
9777156959 | ||
|
|
ba5d78b36c | ||
|
|
dea39a1a4b | ||
|
|
0493030620 | ||
|
|
3907b126d9 | ||
|
|
7b76d5c203 | ||
|
|
f02a2d52f2 | ||
|
|
a3c0f15e39 | ||
|
|
d2a6a5a4f6 | ||
|
|
752216ad45 | ||
|
|
6a8661da63 | ||
|
|
2b6777abe4 | ||
|
|
fd3a9afddf | ||
|
|
0358c694ea | ||
|
|
009dc5b3a6 | ||
|
|
178b7697af | ||
|
|
32364baba8 | ||
|
|
6c6a491ff8 | ||
|
|
a496fc235b | ||
|
|
06202b652a | ||
|
|
5d748a9ac6 | ||
|
|
361a91d701 | ||
|
|
3471874139 | ||
|
|
a38e28bb97 | ||
|
|
ab7a4e265f | ||
|
|
976ab715af | ||
|
|
6856899afc | ||
|
|
6d7be15d97 | ||
|
|
0babc7dbf8 | ||
|
|
1a80f715dd | ||
|
|
7742d11d1c | ||
|
|
c4df9b3403 | ||
|
|
7ed34df81e | ||
|
|
0ace96ea9f | ||
|
|
34014f40a5 | ||
|
|
acbf7c9fdf | ||
|
|
9e1c5d8570 | ||
|
|
98b5ce81cc | ||
|
|
b6a69411f1 | ||
|
|
34b27eabd2 | ||
|
|
1c4b520f5a | ||
|
|
32459fd443 | ||
|
|
625b195183 | ||
|
|
0c95470300 | ||
|
|
ba3a540a94 | ||
|
|
a484e81b32 | ||
|
|
627f63cbd3 | ||
|
|
f6c454765e | ||
|
|
25102b5207 | ||
|
|
6708353379 | ||
|
|
20d11dc9b2 | ||
|
|
fa7db5df0c | ||
|
|
cb1a1ec9a6 | ||
|
|
3abac7b3d6 | ||
|
|
3c81e37e32 | ||
|
|
cecfe3e777 | ||
|
|
104fc8bbef | ||
|
|
d9e5cede10 | ||
|
|
1689da1911 | ||
|
|
c043da88e4 | ||
|
|
d10a81fc42 | ||
|
|
10bba6fd9e | ||
|
|
bc09b77695 | ||
|
|
a7a387f215 | ||
|
|
4d0ea8522e | ||
|
|
700eb3ee95 | ||
|
|
fd62a7aff5 | ||
|
|
b05c87e291 | ||
|
|
7790850da3 | ||
|
|
8ddf20f3e7 | ||
|
|
9e186bc034 | ||
|
|
c0065074d3 | ||
|
|
be8ba45067 | ||
|
|
c0bcedbdc3 | ||
|
|
84558fe2f6 | ||
|
|
b46483263b | ||
|
|
4755d4e62b | ||
|
|
3081460143 | ||
|
|
6c6afe4342 | ||
|
|
befdb82b53 | ||
|
|
5a329904c3 | ||
|
|
c25a9a5f68 | ||
|
|
6b3912aae9 | ||
|
|
12e43080b8 | ||
|
|
77e0c77fbf | ||
|
|
03978d23d7 | ||
|
|
ee7dbfcfb9 | ||
|
|
94d05cca9c | ||
|
|
9fd3d34610 | ||
|
|
edb7a5343d | ||
|
|
6108606daa | ||
|
|
762c49cd0f | ||
|
|
1b8511c092 | ||
|
|
ce3bb036fa | ||
|
|
71515e74f5 | ||
|
|
7d3c229b9a | ||
|
|
a549ac1507 | ||
|
|
bf3f0a2bfe | ||
|
|
35b026c8bd | ||
|
|
0eb47793a8 | ||
|
|
fee891dad0 | ||
|
|
34496de969 | ||
|
|
7a3021f82a | ||
|
|
c9c3062789 | ||
|
|
4ad31a870a | ||
|
|
9447604c96 | ||
|
|
1577eddc7b | ||
|
|
f5300fdd5d | ||
|
|
3880755df0 | ||
|
|
28bf58e8d1 | ||
|
|
3a5af634dd | ||
|
|
4f45a73505 | ||
|
|
b5f710cd33 | ||
|
|
bfffc6bbf1 | ||
|
|
a8815ade02 | ||
|
|
57312753ed | ||
|
|
03ce38ed9b | ||
|
|
b09b07978f | ||
|
|
87dae51a15 | ||
|
|
49ab26a8e9 | ||
|
|
c1f483f0a0 | ||
|
|
6d7e42bcde | ||
|
|
61572c536a | ||
|
|
572b25ee88 | ||
|
|
3576d734af | ||
|
|
028af3dd2f | ||
|
|
3af78d5d7b | ||
|
|
e821619a96 | ||
|
|
434348f972 | ||
|
|
72cb1d8c07 | ||
|
|
f5a7c8c1f3 | ||
|
|
3989d75f05 | ||
|
|
471b515a45 | ||
|
|
19e897cae0 | ||
|
|
91bdb99ec2 | ||
|
|
004580e252 | ||
|
|
da3c58a366 | ||
|
|
1cec762930 | ||
|
|
4deaeaa89d | ||
|
|
1208e02fe7 | ||
|
|
2c60dc8f84 | ||
|
|
77fb71dab4 | ||
|
|
cd41c616bb | ||
|
|
a4f27ab643 | ||
|
|
c174ea8742 | ||
|
|
2bbd6784c4 | ||
|
|
923afda21c | ||
|
|
bb3ca932d2 | ||
|
|
a588264849 | ||
|
|
1300a4e1f8 | ||
|
|
bf96f5f005 | ||
|
|
a983ae639e | ||
|
|
a74afd837c | ||
|
|
bc3afbacb1 | ||
|
|
5ba6a3b73d | ||
|
|
da84b7bb69 | ||
|
|
2d1e4b5912 | ||
|
|
2781f0d8d9 | ||
|
|
8a9bbb3cef | ||
|
|
155f1866b4 | ||
|
|
d4446e8482 | ||
|
|
3349552e10 | ||
|
|
254a804a17 | ||
|
|
4c4b8f4e29 | ||
|
|
06cf5ce861 | ||
|
|
7a01315ca8 | ||
|
|
d0773a40d2 | ||
|
|
6349181cc3 | ||
|
|
e95feb5c24 | ||
|
|
afa502eeaf | ||
|
|
627376da07 | ||
|
|
5127123236 | ||
|
|
7b0d08a132 | ||
|
|
ccdbbda165 | ||
|
|
e3058d8eb1 | ||
|
|
5e3a0d86d0 | ||
|
|
76d95c1b2d | ||
|
|
e4b29858a4 | ||
|
|
f1dec2298d | ||
|
|
7b52764ae1 | ||
|
|
1006860698 | ||
|
|
1e00681289 | ||
|
|
353300b643 | ||
|
|
9eb2f347f7 | ||
|
|
182438e1dc | ||
|
|
0be73e9bfe | ||
|
|
5e369bdd99 | ||
|
|
a5a222a78e | ||
|
|
b1840c8965 | ||
|
|
02a0b7aab6 | ||
|
|
42ab5160ed | ||
|
|
df66287455 | ||
|
|
e2ce186aba | ||
|
|
9be0de0ae7 | ||
|
|
4410162f39 | ||
|
|
3060fcd6a4 | ||
|
|
7d8e1c3872 | ||
|
|
59249be9b0 | ||
|
|
8fe5e079dd | ||
|
|
d1d55ce52a | ||
|
|
b12517e5b5 | ||
|
|
09d24217b5 | ||
|
|
3c2f252347 | ||
|
|
940e4c56b0 | ||
|
|
09ab103d1d | ||
|
|
8dcb2334d5 | ||
|
|
7a5e124f98 | ||
|
|
c5a2508a36 | ||
|
|
7353021d92 | ||
|
|
735cf9af9f | ||
|
|
f2f3fb9c19 | ||
|
|
a62ed7c60f | ||
|
|
4168f921f6 | ||
|
|
1916152775 | ||
|
|
83f4cce451 | ||
|
|
f5f792d3f8 | ||
|
|
dbd61c0519 | ||
|
|
cb5d933e0a | ||
|
|
5298e9d4e3 | ||
|
|
06f61d7957 | ||
|
|
4567f00858 | ||
|
|
e8328b0159 | ||
|
|
bb3dfaed4a | ||
|
|
0eb2f323c7 | ||
|
|
a35030e2f5 | ||
|
|
d1b1b27ab0 | ||
|
|
4a6a2798e8 | ||
|
|
9068fa0e40 | ||
|
|
99cb355640 | ||
|
|
c9520c65be | ||
|
|
2a4e39f755 | ||
|
|
a08d8a7fd5 | ||
|
|
ab7219e600 | ||
|
|
1b3b1a6394 | ||
|
|
072a4f7d1f | ||
|
|
63a19fbbcd | ||
|
|
5fc491f612 | ||
|
|
b209d8cb6d | ||
|
|
06aae196c7 | ||
|
|
e91c5801eb | ||
|
|
8704df738c | ||
|
|
000092952f | ||
|
|
22f2b66ffa | ||
|
|
3aec384ba0 | ||
|
|
27f3fceb6e | ||
|
|
3e5ed28d69 | ||
|
|
78d40d35be | ||
|
|
8fedb6d6ed | ||
|
|
b8de1c00eb | ||
|
|
bf080609fe | ||
|
|
b415ed6fa0 | ||
|
|
694ed699ec | ||
|
|
0b26692a34 | ||
|
|
c2af421c7f | ||
|
|
57f87baf85 | ||
|
|
e23edadde6 | ||
|
|
530254e000 | ||
|
|
33d085f9b9 | ||
|
|
21fcc24e2e | ||
|
|
64350f565b | ||
|
|
ff2b1965f7 | ||
|
|
7a769071e4 | ||
|
|
b05f994e74 | ||
|
|
ef13d890be | ||
|
|
cc943d164b | ||
|
|
624b7d7d6e | ||
|
|
0b61b813a5 | ||
|
|
77420e9617 | ||
|
|
fa51580985 | ||
|
|
362f1b5e2f | ||
|
|
b859aa99d3 | ||
|
|
83f05dd11d | ||
|
|
6252866f7c | ||
|
|
dd0bf32c35 | ||
|
|
7ed12c9405 | ||
|
|
15c8a2b6e6 | ||
|
|
72e445ea16 | ||
|
|
f50a3e690a | ||
|
|
8692b38671 | ||
|
|
f77d89fa7f | ||
|
|
0ff327a071 | ||
|
|
6661c016e8 | ||
|
|
4b434a2cd2 | ||
|
|
0376f8328c | ||
|
|
bca8b5fbed | ||
|
|
58e3882ef4 | ||
|
|
e489015e3e | ||
|
|
1d96322370 | ||
|
|
19857686aa | ||
|
|
d079e35374 | ||
|
|
466a9fa31f | ||
|
|
d74a28bceb | ||
|
|
1cc123917b | ||
|
|
39ebcb70ed | ||
|
|
e7e64252e7 | ||
|
|
a400a34b0c | ||
|
|
ac349ea8a8 | ||
|
|
7356208228 | ||
|
|
5963f6ed3a | ||
|
|
6f28cfdda0 | ||
|
|
5c472ad04e | ||
|
|
070cdcd5de | ||
|
|
061c5bc600 | ||
|
|
e5fea50466 | ||
|
|
6a87c5a75a | ||
|
|
63dcfaf028 | ||
|
|
c80e4b3ca3 | ||
|
|
3240e57c3e | ||
|
|
e35fa7d48e | ||
|
|
d5bdb5b419 | ||
|
|
fd1436da9c | ||
|
|
802a2994cc | ||
|
|
3d3036cebf | ||
|
|
123a5af241 | ||
|
|
da31a81415 | ||
|
|
84d4df0809 | ||
|
|
d17146dc4b | ||
|
|
44e9eb47bc | ||
|
|
bc9a4f7204 | ||
|
|
b37edf7c63 | ||
|
|
f6125e68bf | ||
|
|
d6037d5846 | ||
|
|
df51abe33f | ||
|
|
5cf46604fa | ||
|
|
208024a6cc | ||
|
|
1d01431354 | ||
|
|
cbaab0ffee | ||
|
|
a310c9dfa6 | ||
|
|
3866bfee05 | ||
|
|
5032cf2413 | ||
|
|
a10cfb0f55 | ||
|
|
59ede5ceb7 | ||
|
|
de4d4fa70d | ||
|
|
7e496834ae | ||
|
|
300b5ac239 | ||
|
|
9519d8610b | ||
|
|
064a87e751 | ||
|
|
9e2dc508a8 | ||
|
|
6a84abf6dd | ||
|
|
8b4e785de3 | ||
|
|
c95fdfc067 | ||
|
|
40a906a9fb | ||
|
|
d91aadca0b | ||
|
|
898cc32452 | ||
|
|
6cf2a8bc74 | ||
|
|
bce9969589 | ||
|
|
b73eb84b87 | ||
|
|
7d0d24ea77 | ||
|
|
dd5280ab78 | ||
|
|
bc6b2ba777 | ||
|
|
f58691615b | ||
|
|
15fdace0bc | ||
|
|
0904b78846 | ||
|
|
734b51bfec | ||
|
|
784d04ebec | ||
|
|
b29632cebc | ||
|
|
3211cfe892 | ||
|
|
32e8be5363 | ||
|
|
207734c75e | ||
|
|
8eb280f2b9 | ||
|
|
14a5aedf15 | ||
|
|
d4f660bc7e | ||
|
|
64bb96c97c | ||
|
|
9df65779ad | ||
|
|
176a0aa879 | ||
|
|
1241256787 | ||
|
|
5e65d63a4f | ||
|
|
296176c85e | ||
|
|
993746ee41 | ||
|
|
6a0818350a | ||
|
|
1b8a75aea5 | ||
|
|
76a290dc58 | ||
|
|
969d90fff5 | ||
|
|
23b5f96a0c | ||
|
|
02de8706e2 | ||
|
|
e6aa8d59e2 | ||
|
|
4b29406701 | ||
|
|
1c29c7e5e4 | ||
|
|
add7ef60db | ||
|
|
d14cea759a | ||
|
|
4fde6e1a9c | ||
|
|
0f88ad75b9 | ||
|
|
067fe1c2c9 | ||
|
|
6b2adce82f | ||
|
|
bee31cf944 | ||
|
|
552a685bb1 | ||
|
|
1c46de4fb7 | ||
|
|
a66177e21b | ||
|
|
fedeece533 | ||
|
|
ae138915ae | ||
|
|
57b8dcfb02 | ||
|
|
b45af55cdd | ||
|
|
3991496617 | ||
|
|
261bb07fb0 | ||
|
|
b18fa5938a | ||
|
|
ba3a90471a | ||
|
|
c5a39d23f2 | ||
|
|
cb136a19b4 | ||
|
|
0f26cd3d0d | ||
|
|
57649dbdfa | ||
|
|
b55c890f7e | ||
|
|
315d96063a | ||
|
|
897e5f195f | ||
|
|
b5b7143d7c | ||
|
|
f06c210ae9 | ||
|
|
4f38ac7cd6 | ||
|
|
488fdfc50e | ||
|
|
1cdc1878a0 | ||
|
|
2c91368278 | ||
|
|
c0f70715c7 | ||
|
|
c93445ca4c | ||
|
|
cb9d09c899 | ||
|
|
f3aec5d42f | ||
|
|
bcd7991725 | ||
|
|
db5e0e1a66 | ||
|
|
ba8dbdd859 | ||
|
|
f1967dd40f | ||
|
|
505f0aff5e | ||
|
|
b9dd2999f1 | ||
|
|
091c971f30 | ||
|
|
2de4efbe65 | ||
|
|
e5ef8740de | ||
|
|
661e57ce62 | ||
|
|
49233cf19b | ||
|
|
b96db591f2 | ||
|
|
236b047f5e | ||
|
|
feba6ff672 | ||
|
|
8caf83b823 | ||
|
|
789c9ac29c | ||
|
|
925eeba899 | ||
|
|
568ce3f96d | ||
|
|
56b39702b5 | ||
|
|
0ee27d796f | ||
|
|
7842ceaf71 | ||
|
|
987a7c564d | ||
|
|
18c8c4d18d | ||
|
|
0f4da97358 | ||
|
|
2787f7651e | ||
|
|
b9fe4bc4d2 | ||
|
|
7a6c570a88 | ||
|
|
f1567eb81e | ||
|
|
885d38565c | ||
|
|
8414fa1509 | ||
|
|
4b382e4d8f | ||
|
|
b80668145a | ||
|
|
476d7c8b0e | ||
|
|
93dd653ca9 | ||
|
|
f84c7b0843 | ||
|
|
3feb3851e4 | ||
|
|
38a04d6d30 | ||
|
|
81841b7ad0 | ||
|
|
e366f78081 | ||
|
|
a12ac94dd3 | ||
|
|
d1ce20abae | ||
|
|
df6b11a8bb | ||
|
|
c58112a719 | ||
|
|
a4a29c7c8e | ||
|
|
9283cc9df8 | ||
|
|
076c915a4c | ||
|
|
55c958bde5 | ||
|
|
ef53355b87 | ||
|
|
c5babe103e | ||
|
|
287ae8f22b | ||
|
|
04545a8219 | ||
|
|
1779bc2b23 | ||
|
|
2a56ce433f | ||
|
|
2dd8e7f0a2 | ||
|
|
b8605c6b43 | ||
|
|
5fec54ac63 | ||
|
|
564b8ff8aa | ||
|
|
76a5c987b2 | ||
|
|
f6ee1a3eee | ||
|
|
1297f920be | ||
|
|
d4ba4f0c0b | ||
|
|
0ed45fee69 | ||
|
|
69412f7293 | ||
|
|
2bd4d5bb63 | ||
|
|
8b9b29dbf1 | ||
|
|
5890660fe4 | ||
|
|
fa6ccad965 | ||
|
|
95d232623b | ||
|
|
e12beb1e0c | ||
|
|
8c722deac6 | ||
|
|
a1494846db | ||
|
|
0d70450997 | ||
|
|
6c6649368c | ||
|
|
92d53ad90d | ||
|
|
8b9cd8c749 | ||
|
|
498574763b | ||
|
|
c200645a15 | ||
|
|
c852ef1b8b | ||
|
|
674f56b2c2 | ||
|
|
44e7581b2c | ||
|
|
01b2723e1f | ||
|
|
489515f865 | ||
|
|
d8aa1e9490 | ||
|
|
07d9dacded | ||
|
|
538a3b42bd | ||
|
|
f660c66027 | ||
|
|
c1e062082a | ||
|
|
55dfb6f4a1 | ||
|
|
1f84ad71d8 | ||
|
|
4d0eb901c9 | ||
|
|
23984e69d6 | ||
|
|
a1f4953fb5 | ||
|
|
25ed516000 | ||
|
|
9f2e8f1855 | ||
|
|
1488405397 | ||
|
|
ad55d49d6b | ||
|
|
7aa7576799 | ||
|
|
96c95dabc6 | ||
|
|
f3fc2b3093 | ||
|
|
a112aa1163 | ||
|
|
e77937fb89 | ||
|
|
6b78248531 | ||
|
|
57cce338b1 | ||
|
|
33a6e875ce | ||
|
|
cdc098fdd3 | ||
|
|
e544b76db6 | ||
|
|
4f727fadc1 | ||
|
|
5b98ae9435 | ||
|
|
82909efe6b | ||
|
|
21db85ef2b | ||
|
|
f32f43ab18 | ||
|
|
eb3ada8335 | ||
|
|
49f6832d3f | ||
|
|
60bc140195 | ||
|
|
d268718f9b | ||
|
|
895c8d6a4b | ||
|
|
914a751d96 | ||
|
|
fc16c1edf2 | ||
|
|
4bd655e4da | ||
|
|
a96b03a060 | ||
|
|
8681042a32 | ||
|
|
44c9953875 | ||
|
|
c48b8aa39a | ||
|
|
36b31e5d52 | ||
|
|
f5c096fe39 | ||
|
|
75e77c0476 | ||
|
|
709b151e3f | ||
|
|
fa731e1fa5 | ||
|
|
d1448b2746 | ||
|
|
32d38b7721 | ||
|
|
ebc7bee5be | ||
|
|
19ca4bbe6c | ||
|
|
2f6988abac | ||
|
|
e322e28d05 | ||
|
|
9f70b236a0 | ||
|
|
7dcedab498 | ||
|
|
e2f5896be2 | ||
|
|
effa681709 | ||
|
|
8ea6a82acd | ||
|
|
e7f2a79dee | ||
|
|
8a78122fcb | ||
|
|
49b3722328 | ||
|
|
cb96a3700d | ||
|
|
9250d03ab1 | ||
|
|
494f49ee1b | ||
|
|
be597775d9 | ||
|
|
9eff15e483 | ||
|
|
496548558b | ||
|
|
7bd2e0b87c | ||
|
|
266d416912 | ||
|
|
f2216adb06 | ||
|
|
b825f1a789 | ||
|
|
6177b70b34 | ||
|
|
30dd4abe43 | ||
|
|
5dd23e9f42 | ||
|
|
f91a2248af | ||
|
|
b4db0a8cdb | ||
|
|
65fd1e6a19 | ||
|
|
bab7f048eb | ||
|
|
f543c4a00f | ||
|
|
98004ba989 | ||
|
|
76c8b1f5aa | ||
|
|
8542a25238 | ||
|
|
22590abbb8 | ||
|
|
bb68e118fa | ||
|
|
1d28170d46 | ||
|
|
1b85098063 | ||
|
|
d6d9ee1d5e | ||
|
|
2d9a4eaad2 | ||
|
|
1423d5d140 | ||
|
|
80e1639b83 | ||
|
|
07862301e6 | ||
|
|
d6fae412cd | ||
|
|
7ee70dd06c | ||
|
|
6f33fc3b64 | ||
|
|
a9e3d6cb6b | ||
|
|
5fe5ce7e82 | ||
|
|
5cc987c2c4 | ||
|
|
9ed1797b59 | ||
|
|
2373be59e6 | ||
|
|
587550025d | ||
|
|
9dfcf4ef5a | ||
|
|
914957e683 | ||
|
|
a852c0844e | ||
|
|
50b10ad19f | ||
|
|
aff19e1536 | ||
|
|
4c58838842 | ||
|
|
d27cca0217 | ||
|
|
6f5fa138d9 | ||
|
|
cf0a42ec8a | ||
|
|
5c591d3b57 | ||
|
|
165927bc3d | ||
|
|
2d03084f0c | ||
|
|
1f0703bc64 | ||
|
|
9bb5a7c2cf | ||
|
|
a7eed8590f | ||
|
|
4fad415cb7 | ||
|
|
a23a4acef3 | ||
|
|
0cd0a9535d | ||
|
|
71765b339f | ||
|
|
521e4ca5bd | ||
|
|
47688bfe34 | ||
|
|
b0999402cd | ||
|
|
dde4698fc6 | ||
|
|
5513b0af08 | ||
|
|
357fb0bd65 | ||
|
|
16627950e2 | ||
|
|
81dc017b68 | ||
|
|
80b96b0f17 | ||
|
|
d683774b88 | ||
|
|
20f60d490f | ||
|
|
73f7bbd803 | ||
|
|
5029ae8d42 | ||
|
|
87eea6a8cd | ||
|
|
72b2a153a0 | ||
|
|
7326407d13 | ||
|
|
4091f20e7a | ||
|
|
7bcf11baaf | ||
|
|
11ad2ea20f | ||
|
|
b303c78b39 | ||
|
|
2fb7d117c0 | ||
|
|
cdb21fe961 | ||
|
|
2151555f31 | ||
|
|
ce4f56962f | ||
|
|
c3b4923ce9 | ||
|
|
c536d2c5c6 | ||
|
|
fad5eb66fa | ||
|
|
52172dc3d7 | ||
|
|
34a146514f | ||
|
|
8377d9f2a5 | ||
|
|
0f2e2e769b | ||
|
|
73b1a76cb6 | ||
|
|
81c30d752d | ||
|
|
38b2de852b | ||
|
|
35122c0fca | ||
|
|
f1c7dd453b | ||
|
|
f1aa799809 | ||
|
|
d5dfa96859 | ||
|
|
23fe5eca9c | ||
|
|
69d5276bd9 | ||
|
|
876430874c | ||
|
|
24c234bcb7 | ||
|
|
c52b9f092e | ||
|
|
61b68804f0 | ||
|
|
23bffb32b3 | ||
|
|
9f9b0867ac | ||
|
|
1a309cb042 | ||
|
|
226360ef3a | ||
|
|
444b6add0a | ||
|
|
46757ed2f1 | ||
|
|
1548a28c9e | ||
|
|
2755ed1a33 | ||
|
|
5030ca2a8a | ||
|
|
4852b4496a | ||
|
|
e2bfb032a7 | ||
|
|
762c9d4bf4 | ||
|
|
f4f2573af7 | ||
|
|
1381bcee72 | ||
|
|
bbe8ce3523 | ||
|
|
7ae6ed2aac | ||
|
|
d45206a644 | ||
|
|
f7faed5e44 | ||
|
|
fa5f8d68cc | ||
|
|
b0a28a101e | ||
|
|
b24d02f4a6 | ||
|
|
a9aba71e0c | ||
|
|
687404b47f | ||
|
|
d4e3b36974 | ||
|
|
162f35b752 | ||
|
|
9cb99c915d | ||
|
|
9a58a7b41c | ||
|
|
3c594d4a91 | ||
|
|
dc9d491d61 | ||
|
|
d0cde81dcd | ||
|
|
81cd4b3317 | ||
|
|
442ca4977c | ||
|
|
2abdb6e8d1 | ||
|
|
53e9f977a1 | ||
|
|
1dcd38aaa2 | ||
|
|
50b7be1e4f | ||
|
|
4ce7b3afec | ||
|
|
aeff793901 | ||
|
|
187bddc820 | ||
|
|
360cb8d95c | ||
|
|
a589cfd3af | ||
|
|
f80b0bbddb | ||
|
|
76596ac927 | ||
|
|
2a33823ef2 | ||
|
|
930894b37e | ||
|
|
02acda9e23 | ||
|
|
41fa3991d9 | ||
|
|
a221c05ec9 | ||
|
|
57fb245715 | ||
|
|
79cda62fb4 | ||
|
|
0fba417b77 | ||
|
|
ed8d3fafd9 | ||
|
|
fea9ac6277 | ||
|
|
8e1cd9b185 | ||
|
|
bc2fc833a2 | ||
|
|
196410331b | ||
|
|
9351bd8816 | ||
|
|
429c279b78 | ||
|
|
4a6421c9cf | ||
|
|
9e71401716 | ||
|
|
fceaf38db9 | ||
|
|
4a90bbd9ad | ||
|
|
4ced5f9b65 | ||
|
|
07d43b393d | ||
|
|
ab0c0fdc17 | ||
|
|
0425b41cf4 | ||
|
|
9e3cedb596 | ||
|
|
5678399a34 | ||
|
|
dc0416510b | ||
|
|
cf85ffa37f | ||
|
|
7d26d7915c | ||
|
|
185b68bde9 | ||
|
|
553e0eebee | ||
|
|
fb4c508873 | ||
|
|
ebfd3c3f2e | ||
|
|
62ecfddb95 | ||
|
|
19696cbb6a | ||
|
|
40c16f17cc | ||
|
|
bd2170e0be | ||
|
|
e4a3835ee0 | ||
|
|
98e94682eb | ||
|
|
eb07b799f6 | ||
|
|
615e0d34e4 | ||
|
|
8b66aea296 | ||
|
|
eec6752b9a | ||
|
|
2907a55c96 | ||
|
|
08762490dd | ||
|
|
9e2d84fc5c | ||
|
|
1c2bb30c44 | ||
|
|
268c00074f | ||
|
|
7f38da20e1 | ||
|
|
176bdbc633 | ||
|
|
c2a4b981e6 | ||
|
|
ecd5e89172 | ||
|
|
22ff97e045 | ||
|
|
afc26a798f | ||
|
|
b5914940df | ||
|
|
01ec70e3c2 | ||
|
|
b178e79c8f | ||
|
|
0d70cc8b4c | ||
|
|
55f089a7d6 | ||
|
|
b432ab0ac3 | ||
|
|
08b930e6d4 | ||
|
|
1ed10bf71b | ||
|
|
4772395daf | ||
|
|
11fa915e0e | ||
|
|
8c9ef2f083 | ||
|
|
193db96e63 | ||
|
|
ec43b3be8a | ||
|
|
9511a38946 | ||
|
|
bc962c3131 | ||
|
|
4f24096a0c | ||
|
|
20a7978729 | ||
|
|
7c18ccf3bb | ||
|
|
78c9ab191a | ||
|
|
8bec065f69 | ||
|
|
d82abe15bf | ||
|
|
4017c0a60d | ||
|
|
da0dae5f40 | ||
|
|
12999e6ffd | ||
|
|
8b186907e1 | ||
|
|
183c84cb5b | ||
|
|
9ca77a7d57 | ||
|
|
40ff9808b8 | ||
|
|
4afe929020 | ||
|
|
d982cc41c3 | ||
|
|
0497d8e96e | ||
|
|
b51bc17838 | ||
|
|
2516d86226 | ||
|
|
287575c622 | ||
|
|
374b26d023 | ||
|
|
a5489ceb5a | ||
|
|
de1ef5dec7 | ||
|
|
eed47e1f34 | ||
|
|
3cd16ddfac | ||
|
|
bf3e5c3e29 | ||
|
|
8f779f5e29 | ||
|
|
8ff0561a1f | ||
|
|
8be0813e21 | ||
|
|
f995d9e7c6 | ||
|
|
5c8c6251d6 | ||
|
|
dc589fdf3f | ||
|
|
1cf6d4492d | ||
|
|
8f0e71fe2a | ||
|
|
c6366ef728 | ||
|
|
b26d79bab0 | ||
|
|
2d424847c3 | ||
|
|
392e54d636 | ||
|
|
11c7fdc7de | ||
|
|
8893eda62d | ||
|
|
293fedda12 | ||
|
|
ed4d6111a5 | ||
|
|
92acdb4f20 | ||
|
|
f933aa9234 | ||
|
|
f704038362 | ||
|
|
3e90a8c5c4 | ||
|
|
db198dd2a2 | ||
|
|
a6e727e04a | ||
|
|
badb1b62da | ||
|
|
141686d743 | ||
|
|
ce8e340116 | ||
|
|
42e9f79b10 | ||
|
|
1520cd7aba | ||
|
|
c103884826 | ||
|
|
66d77910f3 | ||
|
|
e966726a0c | ||
|
|
89c3f398b8 | ||
|
|
84174a6639 | ||
|
|
92a5544891 | ||
|
|
81c7c9e9f7 | ||
|
|
bc9adf3f19 | ||
|
|
81157cc451 | ||
|
|
da4da4e61e | ||
|
|
3248aef4a9 | ||
|
|
242f56ae1a | ||
|
|
cf22323cfe | ||
|
|
fe2dcc027b | ||
|
|
6072ac272f | ||
|
|
6c71bff1ad | ||
|
|
2c16152c0b | ||
|
|
0b3df4bf32 | ||
|
|
1b5914a7d1 | ||
|
|
feb614e3e4 | ||
|
|
7650bd2eb9 | ||
|
|
7d13b42144 | ||
|
|
432fa3398d | ||
|
|
e84adc2d6f | ||
|
|
0ad41cd768 | ||
|
|
caac89e3db | ||
|
|
95c128b506 | ||
|
|
186d76f9fc | ||
|
|
bc3bdd669e | ||
|
|
6aeabc7be7 | ||
|
|
80b604a637 | ||
|
|
55c780caa1 | ||
|
|
af0f3e81b9 | ||
|
|
0ae37ac795 | ||
|
|
129cd393aa | ||
|
|
b4f685a25d | ||
|
|
a14c7776e8 | ||
|
|
3360e500dc | ||
|
|
41fc2d1805 | ||
|
|
7ccb06ad79 | ||
|
|
7a7038e794 | ||
|
|
d04df87e19 | ||
|
|
21aab4f17e | ||
|
|
ab10adb0d2 | ||
|
|
f32f5b48bc | ||
|
|
3224e87814 | ||
|
|
afa6ed0685 | ||
|
|
32efb1dfe5 | ||
|
|
0cf697a03b | ||
|
|
7babb53e90 | ||
|
|
31247d7faa | ||
|
|
4a07d1a0c4 | ||
|
|
e562dcf627 | ||
|
|
aa7315e239 | ||
|
|
01b75ac87e | ||
|
|
4fbe36f949 | ||
|
|
229540a720 | ||
|
|
0c9290c238 | ||
|
|
448d2ddc1a | ||
|
|
ff340a2819 | ||
|
|
4f2effe52b | ||
|
|
4d6dbc8f24 | ||
|
|
809876f4f0 | ||
|
|
eea6898404 | ||
|
|
ece8b6a2e1 | ||
|
|
8e6649a853 | ||
|
|
ece29d5f46 | ||
|
|
1642c50e0a | ||
|
|
0ec951ba7a | ||
|
|
b1a97b9eff | ||
|
|
b667abea83 | ||
|
|
ad3a128bad | ||
|
|
bd588a6709 | ||
|
|
e3c49b39d8 | ||
|
|
e328eeb5c8 | ||
|
|
e0b52b4434 | ||
|
|
74c6e7f440 | ||
|
|
f8a28c04f6 | ||
|
|
eea0208236 | ||
|
|
03444ed29d | ||
|
|
3fe9a444ae | ||
|
|
1667a86a19 | ||
|
|
ff523fc54a | ||
|
|
85068215e5 | ||
|
|
7cfb30e90c | ||
|
|
82d08f76c2 | ||
|
|
84c1e210d8 | ||
|
|
93a6f7228c | ||
|
|
23dc97f1d0 | ||
|
|
afa51fa5f2 | ||
|
|
0e5c9b97d2 | ||
|
|
81a7e2ae20 | ||
|
|
d1d02b7bc4 | ||
|
|
37a70bc624 | ||
|
|
ebec834284 | ||
|
|
3e9a08ef91 | ||
|
|
7ab7850d81 | ||
|
|
2491fdbdd1 | ||
|
|
280e465856 | ||
|
|
6bb28ce60f | ||
|
|
0000cfc82c | ||
|
|
0110f83797 | ||
|
|
4884347b4a | ||
|
|
27ebf1f440 | ||
|
|
883724ab8e | ||
|
|
16496f3c3f | ||
|
|
4e00c8d5d5 | ||
|
|
7f72ba410b | ||
|
|
544dc74b9e | ||
|
|
c6e4e76d82 | ||
|
|
ff5bc742aa | ||
|
|
861f2f845d | ||
|
|
c22fbc53c3 | ||
|
|
af15229ce5 | ||
|
|
dd4fc13adc | ||
|
|
9922fee6cc | ||
|
|
255be125d1 | ||
|
|
7ff8a2f108 | ||
|
|
b05baac0e5 | ||
|
|
230f17803d | ||
|
|
aaf56ceafb | ||
|
|
0a90591987 | ||
|
|
25a9f6de4b | ||
|
|
b487af3d4e | ||
|
|
a3420936db | ||
|
|
1cfed43f59 | ||
|
|
72e54bb219 | ||
|
|
192a406682 | ||
|
|
578e3b34d4 | ||
|
|
c83596a5e0 | ||
|
|
50bb444d83 | ||
|
|
a5af83ff33 | ||
|
|
d602b11802 | ||
|
|
ac469dd99b | ||
|
|
fe41f18d4f | ||
|
|
453b6b6263 | ||
|
|
494c2e3361 | ||
|
|
2441f4eb1c | ||
|
|
2d241848dc | ||
|
|
e80d62e104 | ||
|
|
8e0b728206 | ||
|
|
ece27b786f | ||
|
|
fa9682ae63 | ||
|
|
115f427ce7 | ||
|
|
bf616b3ee6 | ||
|
|
36cd52a701 | ||
|
|
35c2bb6899 | ||
|
|
e410a095f0 | ||
|
|
c0d3372e0c | ||
|
|
6752441e72 | ||
|
|
2608ba8da7 | ||
|
|
bba5c3ebe1 | ||
|
|
e63ef0996f | ||
|
|
9d9a85dae0 | ||
|
|
04d24f1c11 | ||
|
|
fb5da8eda1 | ||
|
|
3ea3063732 | ||
|
|
721710252e | ||
|
|
4eb986ba67 | ||
|
|
f79084ed58 | ||
|
|
22be593a83 | ||
|
|
42e70be592 | ||
|
|
e9a56f5a31 | ||
|
|
daf4faf890 | ||
|
|
801bfdff5f | ||
|
|
889f5f34bc | ||
|
|
92e0f43ffc | ||
|
|
e81a1fda06 | ||
|
|
4f2855a2c5 | ||
|
|
2912d10bbe | ||
|
|
473bcc02cd | ||
|
|
79f2ff3b54 | ||
|
|
8a463f52fc | ||
|
|
e6fcccc6f1 | ||
|
|
df558e0103 | ||
|
|
47edc63b27 | ||
|
|
c21ebcdc1b | ||
|
|
0c69a6ef36 | ||
|
|
cc37974239 | ||
|
|
b5f5f27b84 | ||
|
|
10a18545f8 | ||
|
|
141f238b28 | ||
|
|
7d5d25c632 | ||
|
|
ca97de7a65 | ||
|
|
2e1117728a | ||
|
|
f4e47fa0c9 | ||
|
|
d63191829e | ||
|
|
73348d8469 | ||
|
|
7ec8be59ff | ||
|
|
fdd0693072 | ||
|
|
ae2f671a9c | ||
|
|
97720dd3eb | ||
|
|
3017cb3106 | ||
|
|
42c08ca6f9 | ||
|
|
b3e2b3fc8c | ||
|
|
abb2c444ca | ||
|
|
5dfe90aa33 | ||
|
|
02978d8969 | ||
|
|
9d7cb80285 | ||
|
|
59acf6ec4c | ||
|
|
289c64be2f | ||
|
|
536077ec3a | ||
|
|
c59fa363ee | ||
|
|
734be2b825 | ||
|
|
e561af010f | ||
|
|
a960f8a6b9 | ||
|
|
67ee2bd6a2 | ||
|
|
f2950d5bb8 | ||
|
|
7d56f8008e | ||
|
|
be00edc7b2 | ||
|
|
1f05235c90 | ||
|
|
67a53147da | ||
|
|
de109a7551 | ||
|
|
2d91e755bd | ||
|
|
408f093952 | ||
|
|
232f33338e | ||
|
|
adf526bcc8 | ||
|
|
925b962790 | ||
|
|
c6d4b9c4b5 | ||
|
|
21b8114e83 | ||
|
|
3076c27699 | ||
|
|
b46784db9e | ||
|
|
0a9f5877cd | ||
|
|
1e23e60973 | ||
|
|
8a5841d13b | ||
|
|
661a17a44e | ||
|
|
3c481bc569 | ||
|
|
f4b0149605 | ||
|
|
9358be1a88 | ||
|
|
b4e087745c | ||
|
|
a96cffb30b | ||
|
|
bbf292a428 | ||
|
|
135f6af447 | ||
|
|
71b1faffb7 | ||
|
|
af83950e1a | ||
|
|
083eb04026 | ||
|
|
e3021854a1 | ||
|
|
c1fe11a982 | ||
|
|
c0506659bc | ||
|
|
bb27fd4034 | ||
|
|
87e3a83743 | ||
|
|
1c72ce2ba5 | ||
|
|
299a9fb91e | ||
|
|
b18c8566e8 | ||
|
|
3a004607b2 | ||
|
|
c7e4ced035 | ||
|
|
4b64a184ab | ||
|
|
3626af0c05 | ||
|
|
1b1a026adc | ||
|
|
88e6993dd6 | ||
|
|
5a0906f189 | ||
|
|
a299bacda9 | ||
|
|
0d7d52ef60 | ||
|
|
d7b2c73a57 | ||
|
|
fb4da52069 | ||
|
|
3aebb27258 | ||
|
|
95cdf38ab0 | ||
|
|
ffddd7d89c | ||
|
|
8964f5c087 | ||
|
|
03ca6a4212 | ||
|
|
28b1e0d497 | ||
|
|
08bd6ca59c | ||
|
|
eceb008912 | ||
|
|
bf075c57e7 | ||
|
|
4ab7c8b8b7 | ||
|
|
3e9da71550 | ||
|
|
aa5c19a16d | ||
|
|
711c177041 | ||
|
|
c467931fd6 | ||
|
|
ebcae62b5f | ||
|
|
10e149cf9d | ||
|
|
fd4aebd8b1 | ||
|
|
1109320018 | ||
|
|
5fee80e827 | ||
|
|
78c7fab57e | ||
|
|
b2c118af1e | ||
|
|
ed7a725ebb | ||
|
|
5d48d26d47 | ||
|
|
94b3c8b2fc | ||
|
|
5d9796cd55 | ||
|
|
0bfee37f11 | ||
|
|
dc14e04d9d | ||
|
|
0dd6615af7 | ||
|
|
ec600036e1 | ||
|
|
47afe0e0f7 | ||
|
|
1730e68275 | ||
|
|
e0f2e78d6d | ||
|
|
edbc2c089d | ||
|
|
9912352faa | ||
|
|
d9fe7d96bc | ||
|
|
1bec4678da | ||
|
|
db9eaeef15 | ||
|
|
1c56b7bc49 | ||
|
|
2c287e1bd1 | ||
|
|
9ec31a6727 | ||
|
|
68406e31e8 | ||
|
|
08ac9b2eba | ||
|
|
32dde06899 | ||
|
|
1382897b22 | ||
|
|
c724654e36 | ||
|
|
f1f3e8f5de | ||
|
|
f3715a9f99 | ||
|
|
047335ccbb | ||
|
|
3c25329187 | ||
|
|
8aea8c51b4 | ||
|
|
d8b10a53a8 | ||
|
|
7d4b3852ea | ||
|
|
6254b61739 | ||
|
|
9db78617fe | ||
|
|
1301e35ffa | ||
|
|
c87ca57efd | ||
|
|
488289f4d0 | ||
|
|
b6fd5fb08d | ||
|
|
07b1863680 | ||
|
|
c79fd1ea39 | ||
|
|
a372daee17 | ||
|
|
9bbe1c2b41 | ||
|
|
0c7a87ad10 | ||
|
|
12452e2eb0 | ||
|
|
c72df01037 | ||
|
|
c298f1feb1 | ||
|
|
dc3eaa63b3 | ||
|
|
e151c3cad0 | ||
|
|
c2171dd8cd | ||
|
|
051b6750c2 | ||
|
|
1366f9c461 | ||
|
|
394f392c67 | ||
|
|
894c6f2f87 | ||
|
|
40862795b7 | ||
|
|
3971da36e6 | ||
|
|
ca848be0c8 | ||
|
|
dce11ef539 | ||
|
|
4c43f2b6dc | ||
|
|
1a69457539 | ||
|
|
2e3e6a14ea | ||
|
|
adbcb4ef18 | ||
|
|
217cba876e | ||
|
|
919799ffc8 | ||
|
|
1bb9401546 | ||
|
|
4a531b536d | ||
|
|
d199f91e94 | ||
|
|
8a67f25673 | ||
|
|
51576d5eba | ||
|
|
b56cf5bc24 | ||
|
|
c2bcbc9961 | ||
|
|
cd1c3cbf82 | ||
|
|
298da1dbeb | ||
|
|
855a964336 | ||
|
|
712cf4ad05 | ||
|
|
8e1746f6ea | ||
|
|
d6b1fa49a2 | ||
|
|
fc7e05af5e | ||
|
|
ea15246ced | ||
|
|
cc77f0b5f8 | ||
|
|
44e4078753 | ||
|
|
bb5b0e1746 | ||
|
|
aef39a9555 | ||
|
|
df1d16a7ab | ||
|
|
3e31c560d6 | ||
|
|
a5444869bc | ||
|
|
08165d5018 | ||
|
|
19497d0681 | ||
|
|
84f6285903 | ||
|
|
13e770013a | ||
|
|
3ad3707c59 | ||
|
|
4768914b12 | ||
|
|
e8b5cb4084 | ||
|
|
bf612be0b2 | ||
|
|
9639238cfb | ||
|
|
2c73a0d727 | ||
|
|
eaf113043d | ||
|
|
2fe6a53dc4 | ||
|
|
b03e00cb3f | ||
|
|
19e352b302 | ||
|
|
1635acf337 | ||
|
|
2edbc12731 | ||
|
|
a8691776a3 | ||
|
|
d262858379 | ||
|
|
6a7641e45b | ||
|
|
4523b3064e | ||
|
|
d2483d9d0b | ||
|
|
bea7e0413b | ||
|
|
1851e0a64e | ||
|
|
f575c5db85 | ||
|
|
5d64986757 | ||
|
|
6141950a23 | ||
|
|
f8fb5ee4ce | ||
|
|
67a3c3b3d2 | ||
|
|
b5cdd42381 | ||
|
|
8daa7f3ff3 | ||
|
|
982717e459 | ||
|
|
ba6b38d8c6 | ||
|
|
7c000fda35 | ||
|
|
6315615cac | ||
|
|
fa612e9d7b | ||
|
|
b9a9ee8108 | ||
|
|
6b58811f4c | ||
|
|
a7f9c5f3a9 | ||
|
|
b5e6c62f02 | ||
|
|
a4c6dc7d18 | ||
|
|
f905b77316 | ||
|
|
cb9d573169 | ||
|
|
1a9e03bbba | ||
|
|
3b13d4222d | ||
|
|
c7cb8614ef | ||
|
|
b7c17be566 | ||
|
|
39503f9f3c | ||
|
|
ed90334752 | ||
|
|
955f2dd770 | ||
|
|
e8dc8cf0cc | ||
|
|
11f8f5b440 | ||
|
|
c3c2d0e569 | ||
|
|
1e61760d45 | ||
|
|
01c7e3f9b5 | ||
|
|
90a03ab8ec | ||
|
|
fa8e3ba49b | ||
|
|
fc7fb04fd9 | ||
|
|
f8149b7493 | ||
|
|
2dd375bf72 | ||
|
|
6586b1cd73 | ||
|
|
c5adb68fc9 | ||
|
|
5a263ed4d9 | ||
|
|
162b4f386c | ||
|
|
7fffad4db5 | ||
|
|
00afdddd44 | ||
|
|
e0e932d05c | ||
|
|
3478218e71 | ||
|
|
56b9743192 | ||
|
|
1143878466 | ||
|
|
c2102c2de1 | ||
|
|
a97d265503 | ||
|
|
27d6b7ab65 | ||
|
|
fbc225d1e0 | ||
|
|
88832114fa | ||
|
|
b98dcee352 | ||
|
|
54d943ea10 | ||
|
|
39e9ab66c3 | ||
|
|
b63ded7d67 | ||
|
|
731c3e9ea6 | ||
|
|
5ba32daf3c | ||
|
|
2a2037b2fb | ||
|
|
b5d0f91d95 | ||
|
|
346a7783fd | ||
|
|
d91d8e9801 | ||
|
|
e2d312a79c | ||
|
|
7a2174d626 | ||
|
|
1280bdd67d | ||
|
|
784ad7929d | ||
|
|
55c62ef7e5 | ||
|
|
1679403f56 | ||
|
|
1cca869a30 | ||
|
|
591763f99f | ||
|
|
531901f0ff | ||
|
|
fc87d5cefb | ||
|
|
77c57dcfc6 | ||
|
|
d46c8e7439 | ||
|
|
9a6e544d56 | ||
|
|
4b22e56b54 | ||
|
|
5f6cc41e6b | ||
|
|
b7335b33fb | ||
|
|
4d563c1394 | ||
|
|
735f7f9113 | ||
|
|
dc65b1ae12 | ||
|
|
6d4d3c8359 | ||
|
|
540b805546 | ||
|
|
dbb1cace5b | ||
|
|
591cfa57d1 | ||
|
|
447e26999b | ||
|
|
3ec47385be | ||
|
|
e76976622f | ||
|
|
8a4d72e4fb | ||
|
|
dc26614e68 | ||
|
|
57d5043ac2 | ||
|
|
8fcf0ece6f | ||
|
|
4f03f56126 | ||
|
|
e782cd05d1 | ||
|
|
a29ac3050e | ||
|
|
ff5f078a78 | ||
|
|
7bd3834e2b | ||
|
|
23e57976f3 | ||
|
|
65f8e6119b | ||
|
|
c8f527c9a6 | ||
|
|
b01e66c4a4 | ||
|
|
cd42d6be05 | ||
|
|
1f08d86746 | ||
|
|
5d81c89de7 | ||
|
|
cc8051b579 | ||
|
|
3b12c6fe0a | ||
|
|
bab277f244 | ||
|
|
fea6b30c16 | ||
|
|
95af50fe12 | ||
|
|
e784dd289c | ||
|
|
6b8fe67b72 | ||
|
|
ccebac5577 | ||
|
|
986808af9a | ||
|
|
9fcacbf9af | ||
|
|
187710f578 | ||
|
|
bb66a76762 | ||
|
|
10a3cd1740 | ||
|
|
abff686b32 | ||
|
|
99ceec0b77 | ||
|
|
658481e691 | ||
|
|
c539b86535 | ||
|
|
5aba02d478 | ||
|
|
20d67dfad1 | ||
|
|
3b5674b10c | ||
|
|
de9962a4de | ||
|
|
6d0211d686 | ||
|
|
9addf7c407 | ||
|
|
b883d5ba8f | ||
|
|
f4e1a1b316 | ||
|
|
64f68657e6 | ||
|
|
aa7130ddfe | ||
|
|
96c138a2a6 | ||
|
|
8948ffac58 | ||
|
|
5e3a7d364a | ||
|
|
e85cff8a54 | ||
|
|
151aa4f8b4 | ||
|
|
16fd402975 | ||
|
|
206c85aaf7 | ||
|
|
20e47e8cc4 | ||
|
|
226ded3ee9 | ||
|
|
3c9b3c5e68 | ||
|
|
6e78c30676 | ||
|
|
177be49131 | ||
|
|
dba352b2f2 | ||
|
|
e5a375f67c | ||
|
|
d0836cb5c6 | ||
|
|
6714278e3f | ||
|
|
d11bd2226c | ||
|
|
98a1eb49c6 | ||
|
|
563601c2b9 | ||
|
|
a8fbcf58fc | ||
|
|
d91f3b646d | ||
|
|
3a6cefa0f6 | ||
|
|
9d483e3cc1 | ||
|
|
32029b3f06 | ||
|
|
13caa83189 | ||
|
|
0ee57f9858 | ||
|
|
7e2d1d14a4 | ||
|
|
73c1cb999f | ||
|
|
3c2447e917 | ||
|
|
06abee70e3 | ||
|
|
f8c6be9db8 | ||
|
|
c7c536782f | ||
|
|
94fd0ddbb7 | ||
|
|
e8dfcd723f | ||
|
|
43c64779ce | ||
|
|
89a1eb13cc | ||
|
|
3867226d3f | ||
|
|
642cfc5c8c | ||
|
|
2f3de800a4 | ||
|
|
17bc4b1416 | ||
|
|
b15fd4f105 | ||
|
|
16d9b601da | ||
|
|
d97c837d91 | ||
|
|
237e743280 | ||
|
|
b24fa2cd3e | ||
|
|
80d93f2d7b | ||
|
|
0514d223bb | ||
|
|
bc2a040b80 | ||
|
|
c60dca7fe0 | ||
|
|
495bed1b71 | ||
|
|
2e652ca8bc | ||
|
|
a447e59096 | ||
|
|
7cc77eff09 | ||
|
|
29f0f55c73 | ||
|
|
6a3ebbeec4 | ||
|
|
032acfd468 | ||
|
|
6d26806d8b | ||
|
|
3883e2bff5 | ||
|
|
ff95284448 | ||
|
|
a2ebe5af25 | ||
|
|
00745d00b1 | ||
|
|
97b4e5028e | ||
|
|
3998efb77b | ||
|
|
4b609f32ec | ||
|
|
5958db4fc2 | ||
|
|
515ba88f80 | ||
|
|
2fb2f6e905 | ||
|
|
acbc8bfe02 | ||
|
|
62da999f94 | ||
|
|
e7202f100d | ||
|
|
594cd7a269 | ||
|
|
2b281bba90 | ||
|
|
7198b01a23 | ||
|
|
0e0bc88ecf | ||
|
|
836e058249 | ||
|
|
11a0b15d19 | ||
|
|
424621143d | ||
|
|
18f4f96359 | ||
|
|
56193f6d23 | ||
|
|
27af017450 | ||
|
|
93d0f258c3 | ||
|
|
0ca5bed1f9 | ||
|
|
f5b4b6acd1 | ||
|
|
b456fb45f7 | ||
|
|
1afddbe531 | ||
|
|
815ffc2a26 | ||
|
|
4d71a2e6e1 | ||
|
|
7f131c8790 | ||
|
|
f3e7317132 | ||
|
|
999bd1de3e | ||
|
|
8bc716dabf | ||
|
|
18f6d2eb6c | ||
|
|
e059b80071 | ||
|
|
2c92b9e641 | ||
|
|
5235076d2d | ||
|
|
506f9ef569 | ||
|
|
f9f2441b52 | ||
|
|
e8b4201a1c | ||
|
|
4b54c68ecb | ||
|
|
5539a7c39b | ||
|
|
c62ccf943e | ||
|
|
e467193f03 | ||
|
|
ab7534e134 | ||
|
|
32d56a9a1d | ||
|
|
326bd9089b | ||
|
|
ea2f070bfc | ||
|
|
84fdb36465 | ||
|
|
8c3d44d7da | ||
|
|
9b67df1e88 | ||
|
|
9139485e6d | ||
|
|
0c2dff7faf | ||
|
|
b754aaf949 | ||
|
|
afdea9dbf1 | ||
|
|
51df232625 | ||
|
|
da20e2a616 | ||
|
|
71defc2e0b | ||
|
|
03a9c47db5 | ||
|
|
4c32d4032e | ||
|
|
02da883a6b | ||
|
|
2109a1b5b3 | ||
|
|
c5a2d458df | ||
|
|
ee11318540 | ||
|
|
99d90a231d | ||
|
|
223da56807 | ||
|
|
13112db89c | ||
|
|
9d1b13d4d3 | ||
|
|
e5b836012b | ||
|
|
d32e7e97f6 | ||
|
|
d86639ba4b | ||
|
|
b843b27937 | ||
|
|
4d732b1bf8 | ||
|
|
b62fc345b0 | ||
|
|
0ec7e9b703 | ||
|
|
9b1bae354c | ||
|
|
b2a01f1738 | ||
|
|
2973c0c4b1 | ||
|
|
a9c27b9d4c | ||
|
|
0dc9dba78e | ||
|
|
6faccde5e6 | ||
|
|
0b141796a1 | ||
|
|
b934fe9628 | ||
|
|
7e00ca52c9 | ||
|
|
8a796aa432 | ||
|
|
d4748995b9 | ||
|
|
170e4e5d8d | ||
|
|
32ce218671 | ||
|
|
da120b5a64 | ||
|
|
20c4973df3 | ||
|
|
8f7d44d725 | ||
|
|
11244cf89f | ||
|
|
feafc19e17 | ||
|
|
7d1254d237 | ||
|
|
aa82c42190 | ||
|
|
18a3e79c8a | ||
|
|
3759a54b49 | ||
|
|
8f5bf53620 | ||
|
|
7a11d68b8f | ||
|
|
cfbef4bc30 | ||
|
|
a8f9d21805 | ||
|
|
269fef04b2 | ||
|
|
5f56c21b84 | ||
|
|
745bb12dba | ||
|
|
95cb22d2ca | ||
|
|
99f086fdfa | ||
|
|
4260ac5fce | ||
|
|
359c612c65 | ||
|
|
749cb50282 | ||
|
|
71e4188622 | ||
|
|
1ea3f13a99 | ||
|
|
6d61e14a5e | ||
|
|
484741e12b | ||
|
|
4416e2ecf5 | ||
|
|
ac2d2b9007 | ||
|
|
52d50506c8 | ||
|
|
6df0c40d0b | ||
|
|
1aeb57c91b | ||
|
|
f708fadb9a | ||
|
|
3ae19e5a55 | ||
|
|
eb3d7ad0c8 | ||
|
|
907e0128e6 | ||
|
|
467e3aed48 | ||
|
|
3a7d3c0532 | ||
|
|
3cefbecd69 | ||
|
|
3a02c2a1f2 | ||
|
|
293e6ee342 | ||
|
|
271a10be61 | ||
|
|
90652840bb | ||
|
|
a76e9c4367 | ||
|
|
4767cf986b | ||
|
|
28996dd549 | ||
|
|
4be0a804a4 | ||
|
|
0a116730ef | ||
|
|
14f981b7d1 | ||
|
|
b3c4fb521b | ||
|
|
5db994432f | ||
|
|
6bdbaa0fda | ||
|
|
b5bc44a619 | ||
|
|
7434307880 | ||
|
|
9484bc5e8d | ||
|
|
40d63d6fd8 | ||
|
|
4ff74f3664 | ||
|
|
60874e7322 | ||
|
|
87f64f0efa | ||
|
|
5f891c6226 | ||
|
|
4559bbc121 | ||
|
|
a468ba33e7 | ||
|
|
315c107fbb | ||
|
|
77477898d8 | ||
|
|
7dd5508006 | ||
|
|
724ae6c774 | ||
|
|
798e95521a | ||
|
|
23e9af4e11 | ||
|
|
3aa62897f4 | ||
|
|
336a33f6e7 | ||
|
|
3c8aea5093 | ||
|
|
48f53b2d35 | ||
|
|
e94fd329a1 | ||
|
|
676c95233e | ||
|
|
3ca94bc4cf | ||
|
|
5b792ccae5 | ||
|
|
5ced64b81b | ||
|
|
927e6a332a | ||
|
|
bf33392aed | ||
|
|
b7d14706d7 | ||
|
|
7b4d4cb9a9 | ||
|
|
38fb1c8ce5 | ||
|
|
cf5b1af88a | ||
|
|
c8a741eb14 | ||
|
|
62b4f69058 | ||
|
|
abd1545c15 | ||
|
|
f0bb9bcba1 | ||
|
|
cdc627dd06 | ||
|
|
f40ed734ac | ||
|
|
2864812f11 | ||
|
|
1f8b7ef0e8 | ||
|
|
7dd8e53927 | ||
|
|
6cbbf1305c | ||
|
|
a47e5aafca | ||
|
|
882aa8740e | ||
|
|
1cb6b79a52 | ||
|
|
39f1a6d891 | ||
|
|
f11c7aad9a | ||
|
|
88d8666d3b | ||
|
|
68d6f845a1 | ||
|
|
d2a09baf31 | ||
|
|
775dfecf9f | ||
|
|
51ec8e7fe0 | ||
|
|
93dfd9c97e | ||
|
|
64990d01ed | ||
|
|
33482d4ff2 | ||
|
|
7067476505 | ||
|
|
0238cf4489 | ||
|
|
4c1831ec6b | ||
|
|
3062adeca9 | ||
|
|
6899e642c7 | ||
|
|
3d5be9dd27 | ||
|
|
5508cd7ea1 | ||
|
|
404c1e1225 | ||
|
|
afe1cd5011 | ||
|
|
405bd43f34 | ||
|
|
f5451a51f0 | ||
|
|
838a7d6acd | ||
|
|
4b79294168 | ||
|
|
e667f22564 | ||
|
|
9a39d329e6 | ||
|
|
f394f03dd9 | ||
|
|
1f5aef417b | ||
|
|
69dc0581c2 | ||
|
|
54ca167884 | ||
|
|
c703c339fc | ||
|
|
d0a091e6a8 | ||
|
|
31f2bbcc8a | ||
|
|
2c3ed1149a | ||
|
|
70936024a8 | ||
|
|
9da405b7f2 | ||
|
|
9a5e63e6f0 | ||
|
|
fa400d2bc0 | ||
|
|
209d87409e | ||
|
|
7e5cb10e39 | ||
|
|
850202cb3a | ||
|
|
7c57a10321 | ||
|
|
34ebb4d992 | ||
|
|
1664781f51 | ||
|
|
f68a509d88 | ||
|
|
55c79e11d1 | ||
|
|
c22b28c484 | ||
|
|
8f28564265 | ||
|
|
3414785be3 | ||
|
|
2fa09050cc | ||
|
|
1f0f30923c | ||
|
|
1b9521e5e5 | ||
|
|
984f4628c5 | ||
|
|
2b28b2793a | ||
|
|
ad5efe0087 | ||
|
|
07b4c3cbcc | ||
|
|
951d2d98f5 | ||
|
|
76f2e87eae | ||
|
|
a4129199ee | ||
|
|
fffebc5003 | ||
|
|
c501c83cd5 | ||
|
|
5bd042ea8e | ||
|
|
842e5d79e5 | ||
|
|
1b4ce7db91 | ||
|
|
1b1312e7b4 | ||
|
|
c0f41e9db4 | ||
|
|
22c0090b0c | ||
|
|
19eb93377c | ||
|
|
80cf12c777 | ||
|
|
38d497392b | ||
|
|
e5441eb415 | ||
|
|
ffcb32f9a3 | ||
|
|
7501bde717 | ||
|
|
6f4d2ca742 | ||
|
|
70d86d490b | ||
|
|
c8fa72878b | ||
|
|
565eb609d1 | ||
|
|
5917caacd3 | ||
|
|
1d78832604 | ||
|
|
584ff7ba21 | ||
|
|
8898a4e798 | ||
|
|
041d71b425 | ||
|
|
92bd85405c | ||
|
|
a92b21403b | ||
|
|
89d6d76423 | ||
|
|
a47b1b8e65 | ||
|
|
b1cf9c118b | ||
|
|
dde4573682 | ||
|
|
3241b0fce2 | ||
|
|
83ff6c46ca | ||
|
|
aa441e0518 | ||
|
|
d6ee9fb2ec | ||
|
|
7f701ca701 | ||
|
|
bae0092ec0 | ||
|
|
f749c1e9ca | ||
|
|
e0b3ddff04 | ||
|
|
bd2a5915ba | ||
|
|
3acca20d16 | ||
|
|
90aa6a0aeb | ||
|
|
c987ee31d6 | ||
|
|
05a999e2e1 | ||
|
|
9a895b8fba | ||
|
|
5a2070bec9 | ||
|
|
b0fbbf7343 | ||
|
|
a334c99180 | ||
|
|
90ede30b14 | ||
|
|
d7cb562a9f | ||
|
|
19a1d192d5 | ||
|
|
3d235e48f6 | ||
|
|
c0fd835365 | ||
|
|
5ed590bfd2 | ||
|
|
dfb360e123 | ||
|
|
5d78a94f29 | ||
|
|
89d78e3275 | ||
|
|
4e62c80763 | ||
|
|
5733e839ad | ||
|
|
f7ad272b8c | ||
|
|
e658dfb56d | ||
|
|
ff32e5d32c | ||
|
|
7cc2081ad3 | ||
|
|
b86374786f | ||
|
|
290b87933e | ||
|
|
514cd7df61 | ||
|
|
3d4907f49c | ||
|
|
5b54f99b72 | ||
|
|
6916fbb9d2 | ||
|
|
f7434a592b | ||
|
|
ddc1f5d2ea | ||
|
|
2dbc309e35 | ||
|
|
84b467ef04 | ||
|
|
ce6d42ce61 | ||
|
|
94900ea8e4 | ||
|
|
9531d52ef0 | ||
|
|
c3b8779c85 | ||
|
|
62f09f74f6 | ||
|
|
6fb7d6b991 | ||
|
|
feeb10307c | ||
|
|
67a37c1458 | ||
|
|
e999675584 | ||
|
|
83dd741bbf | ||
|
|
636a96b0ed | ||
|
|
5446c3bece | ||
|
|
97c0fc386c | ||
|
|
2c35c39e52 | ||
|
|
ea4ee08353 | ||
|
|
5943463064 | ||
|
|
67413368de | ||
|
|
99e7c314a0 | ||
|
|
4ca0f10e61 | ||
|
|
5ee5dc28a5 | ||
|
|
b561342bed | ||
|
|
913dc6a885 | ||
|
|
4d9fe3dc40 | ||
|
|
eec90b054b | ||
|
|
96d81526d9 | ||
|
|
2b1170bde5 | ||
|
|
a8b039e52f | ||
|
|
e731394066 | ||
|
|
e17216eb7c | ||
|
|
22aef1d84d | ||
|
|
ad310f2fc2 | ||
|
|
551c618820 | ||
|
|
2a4c4b835a | ||
|
|
be323e975a | ||
|
|
0fac5143a7 | ||
|
|
662123cdb6 | ||
|
|
9e6357d6e6 | ||
|
|
ffa741d7ed | ||
|
|
10549fd4ec | ||
|
|
e5681bc510 | ||
|
|
ac51afdb7e | ||
|
|
7bc6843729 | ||
|
|
925b4ade1d | ||
|
|
1fbdaaaf51 | ||
|
|
fdb70db6f6 | ||
|
|
f89c948da4 | ||
|
|
54113c88be | ||
|
|
f56db21de4 | ||
|
|
6aee88748b | ||
|
|
f63917ed03 | ||
|
|
76e82f635a | ||
|
|
281bf9b965 | ||
|
|
1fa6d88545 | ||
|
|
d10d899a1c | ||
|
|
f6a58fefe6 | ||
|
|
aa0be69556 | ||
|
|
230edc73e4 | ||
|
|
47245a7dee | ||
|
|
0ee4ba6428 | ||
|
|
77879c31ff | ||
|
|
0f8e927cd2 | ||
|
|
bce84d0b4c | ||
|
|
972c5042cf | ||
|
|
5849be8e8f | ||
|
|
4053935dec | ||
|
|
287dd2242c | ||
|
|
0a9e127d64 | ||
|
|
e9d4f699ee | ||
|
|
9bf7a9c0c8 | ||
|
|
b2720fa655 | ||
|
|
51dc67957c | ||
|
|
6d3eb75f5c | ||
|
|
69543777da | ||
|
|
bfb3c92678 | ||
|
|
fd5e81e5ff | ||
|
|
42ec0ec4ad | ||
|
|
f66b11622d | ||
|
|
25d77bdb66 | ||
|
|
37644a72f3 | ||
|
|
2d3b1dfd0e | ||
|
|
e68138a990 | ||
|
|
0a66cb4ba1 | ||
|
|
d9e3b7cf2a | ||
|
|
bf9b441fbc | ||
|
|
7ca0de7d76 | ||
|
|
6b28715eaf | ||
|
|
0cfbe8db20 | ||
|
|
6a52f1e1e2 | ||
|
|
add0621be0 | ||
|
|
dc2d33c1d7 | ||
|
|
c21a336c12 | ||
|
|
9a6cd617fb | ||
|
|
300d6c3d8a | ||
|
|
a7e33200b4 | ||
|
|
cf5f955868 | ||
|
|
cdb5d52b4d | ||
|
|
f5e364093e | ||
|
|
d3870556af | ||
|
|
4705d8f2dc | ||
|
|
d8c956f9f4 | ||
|
|
74cb6b1dd8 | ||
|
|
65ae591f86 | ||
|
|
f49753b630 | ||
|
|
9e6ae389c2 | ||
|
|
d7b6394674 | ||
|
|
c8aade107b | ||
|
|
4a155cc95a | ||
|
|
01984812ed | ||
|
|
b535ad9bc6 | ||
|
|
0afadd336c | ||
|
|
91368e7468 | ||
|
|
1dab99f7c1 | ||
|
|
843e69ee84 | ||
|
|
b1f304bc54 | ||
|
|
fb0de024f8 | ||
|
|
9210f49500 | ||
|
|
b34bb5ce36 | ||
|
|
e5fa261eda | ||
|
|
11bca1f681 | ||
|
|
4fe5febdb0 | ||
|
|
571c41f6fe | ||
|
|
4977991974 | ||
|
|
7c314a796f | ||
|
|
92d252cbe0 | ||
|
|
4541ce287b | ||
|
|
ebb3d7c019 | ||
|
|
39541c7005 | ||
|
|
21ae63e78d | ||
|
|
ba5137899f | ||
|
|
35974b48c7 | ||
|
|
7f32271adc | ||
|
|
286072b190 | ||
|
|
9f02532892 | ||
|
|
e0e418f74c | ||
|
|
9378e2cd5b | ||
|
|
f83b9c8756 | ||
|
|
04875e1715 | ||
|
|
6b49339c23 | ||
|
|
2fe868bc51 | ||
|
|
11196e7cf5 | ||
|
|
56b18885af | ||
|
|
6e134ad086 | ||
|
|
9b08712b31 | ||
|
|
88a179c8c5 | ||
|
|
a1cce28da5 | ||
|
|
a9d5dcd89d | ||
|
|
66bb3fbee6 | ||
|
|
4f8445b4a4 | ||
|
|
c48ff1babd | ||
|
|
8dda7c17b6 | ||
|
|
d2415f2917 | ||
|
|
84223ef76b | ||
|
|
307add2f3e | ||
|
|
580b103b85 | ||
|
|
2af85ee22e | ||
|
|
71f86798e5 | ||
|
|
888a646c3e | ||
|
|
a8a2f15855 | ||
|
|
a21d3dbbe5 | ||
|
|
dfc0b0137a | ||
|
|
e604670bcf | ||
|
|
cc27711593 | ||
|
|
49d7c303a5 | ||
|
|
37b3301ddd | ||
|
|
5d9cf9f216 | ||
|
|
99285fa122 | ||
|
|
7790034fd0 | ||
|
|
02d2603087 | ||
|
|
97e41ffe1c | ||
|
|
c6e3cb22f6 | ||
|
|
4bf9a5aa38 | ||
|
|
97424bcc33 | ||
|
|
1c9fbf6622 | ||
|
|
e7768babec | ||
|
|
b10fd44cc4 | ||
|
|
6fd337268a | ||
|
|
260e853b12 | ||
|
|
708d80bcd3 | ||
|
|
62a84e8a19 | ||
|
|
4bd55c8a4d | ||
|
|
56a2749f7d | ||
|
|
273200ad83 | ||
|
|
1ac81881bc | ||
|
|
ac2f45ba89 | ||
|
|
e32ca3715e | ||
|
|
2ebfd8eab9 | ||
|
|
80d9167760 | ||
|
|
2dd77b2d32 | ||
|
|
97d45c725d | ||
|
|
8c97eed56c | ||
|
|
19c87ed20e | ||
|
|
cece439e0f | ||
|
|
f9d2e0ee33 | ||
|
|
ffd05d3081 | ||
|
|
580088b53c | ||
|
|
642a7d28ba | ||
|
|
cfb8af87c8 | ||
|
|
c5cfe8d2e3 | ||
|
|
623fdbbca0 | ||
|
|
59aa30411c | ||
|
|
8f41e0f3ea | ||
|
|
1bfb049ebd | ||
|
|
8195dcd449 | ||
|
|
2977cdddb1 | ||
|
|
eb1344ec96 | ||
|
|
b13791c922 | ||
|
|
17abc106ca | ||
|
|
a98bf7327f | ||
|
|
9825b64016 | ||
|
|
98023ce981 | ||
|
|
3ceb01c07e | ||
|
|
15b72ae970 | ||
|
|
6ec09d156d | ||
|
|
959bc18fe1 | ||
|
|
babad90aed | ||
|
|
9bc9314041 | ||
|
|
e2aec5a566 | ||
|
|
5fdd55f2de | ||
|
|
d6e6e2dc7c | ||
|
|
c2d4ce9610 | ||
|
|
04c1150c06 | ||
|
|
757da12c1c | ||
|
|
7d06b7c3d2 | ||
|
|
be914d6c22 | ||
|
|
1398cdc550 | ||
|
|
4f879e3d5a | ||
|
|
b7115fe3fe | ||
|
|
830f0c38ee | ||
|
|
bc52d57a7f | ||
|
|
eb01e42af6 | ||
|
|
399ca51d64 | ||
|
|
1cf989fe2b | ||
|
|
4afbd44f67 | ||
|
|
491a08470d | ||
|
|
caf5adfc3e | ||
|
|
f7ad001154 | ||
|
|
dee7ffa3d6 | ||
|
|
b7fcd42496 | ||
|
|
d2f309af6b | ||
|
|
e42b8d0ba9 | ||
|
|
8b36f8fb5c | ||
|
|
2061483171 | ||
|
|
1fb02bfd08 | ||
|
|
8fea8fe98e | ||
|
|
1b9d92ea76 | ||
|
|
95ad044e38 | ||
|
|
d5bd99a242 | ||
|
|
e5cea4e4c1 | ||
|
|
bbf26efb15 | ||
|
|
347c3dc4c7 | ||
|
|
775ed74712 | ||
|
|
b0c85db265 | ||
|
|
d8c7bd811f | ||
|
|
5f9504a4ce | ||
|
|
099ede2693 | ||
|
|
1977f441c3 | ||
|
|
f79407107c | ||
|
|
b094f57266 | ||
|
|
b2d65c734c | ||
|
|
38c4d486f6 | ||
|
|
9ea39acbbb | ||
|
|
2b29339cbb | ||
|
|
87cacef4f9 | ||
|
|
d9d485b26c | ||
|
|
0246957b27 | ||
|
|
f4cb9a5848 | ||
|
|
2b7a8d4173 | ||
|
|
e9df9c3841 | ||
|
|
9121eec116 | ||
|
|
3ad35af34b | ||
|
|
e3a8e36cf8 | ||
|
|
3f69f0c315 | ||
|
|
3e467e3b59 | ||
|
|
6eeb618634 | ||
|
|
ef5a1be76c | ||
|
|
742ef6ac1f | ||
|
|
cacb9ac39a | ||
|
|
91843478de | ||
|
|
cfc55a4ee5 | ||
|
|
28a20a7ff9 | ||
|
|
93125d3c36 | ||
|
|
9dbd591bb6 | ||
|
|
9ab680216d | ||
|
|
9b5075a6a9 | ||
|
|
86a2151330 | ||
|
|
e76b2b18df | ||
|
|
725f0538de | ||
|
|
b00a8ddbac | ||
|
|
6e1d62c71f | ||
|
|
7899379c22 | ||
|
|
cf869030f0 | ||
|
|
f637ec6f93 | ||
|
|
8b95275e72 | ||
|
|
b27f45fadb | ||
|
|
c0669f122d | ||
|
|
7dd32e8676 | ||
|
|
3d53cf8c13 | ||
|
|
9ae80406e2 | ||
|
|
b738a6719c | ||
|
|
9dafdfc051 | ||
|
|
f9670d580b | ||
|
|
1c582c0895 | ||
|
|
0e080ed32e | ||
|
|
aaf44fe929 | ||
|
|
17103690aa | ||
|
|
5aaef4db70 | ||
|
|
7f6933b05a | ||
|
|
5e79ee6735 | ||
|
|
3a8028df99 | ||
|
|
3c69971c6c | ||
|
|
474a8b2ad0 | ||
|
|
5017c6a836 | ||
|
|
f01bf43c8b | ||
|
|
90c14938bf | ||
|
|
2d026b543c | ||
|
|
67e56ba722 | ||
|
|
a7674084e4 | ||
|
|
5998f1b056 | ||
|
|
388d763296 | ||
|
|
5eebfb4dd5 | ||
|
|
8aa0c66cf4 | ||
|
|
02bd2275a8 | ||
|
|
187a716175 | ||
|
|
1d3924d3ce | ||
|
|
1a9bd1bcbf | ||
|
|
02d4eca559 | ||
|
|
984270cb53 | ||
|
|
099667fd5d | ||
|
|
3a8740d57f | ||
|
|
bcb28e40e1 | ||
|
|
4ff70dc152 | ||
|
|
fdff381b09 | ||
|
|
bd1449f177 | ||
|
|
9c651d042d | ||
|
|
93b24f02d8 | ||
|
|
665c02b18a | ||
|
|
89e2ec3f3f | ||
|
|
8b09d1b2e0 | ||
|
|
86700813ae | ||
|
|
1250e24e71 | ||
|
|
c2a29490a8 | ||
|
|
f280127214 | ||
|
|
4ddde5f07d | ||
|
|
ed1566f1ad | ||
|
|
998f58c586 | ||
|
|
0d61ae880b | ||
|
|
e029cbcb1f | ||
|
|
dab24d7b58 | ||
|
|
1ee50cdfed | ||
|
|
78dc49df94 | ||
|
|
0393c2ee1f | ||
|
|
a83ef892b0 | ||
|
|
2dbec965bc | ||
|
|
ee33775265 | ||
|
|
b06ae1c7cd | ||
|
|
4649e53b78 | ||
|
|
85c0ef48ae | ||
|
|
f83ff9ceef | ||
|
|
f3455d34eb | ||
|
|
e0d519d94a | ||
|
|
977cbd683b | ||
|
|
360ffdc0d3 | ||
|
|
7dac63da34 | ||
|
|
22efdd5ac8 | ||
|
|
91c74eed8b | ||
|
|
24486e416f | ||
|
|
809a190ccf | ||
|
|
e938b3fedc | ||
|
|
2870e6729f | ||
|
|
23ec38d4a3 | ||
|
|
c7a7afb5ce | ||
|
|
f060b981f6 | ||
|
|
5eaa77e6eb | ||
|
|
7fac8be315 | ||
|
|
fb2b24aa94 | ||
|
|
4cd297acbc | ||
|
|
540a47e3a8 | ||
|
|
cf5ad7ca3f | ||
|
|
1ece948a38 | ||
|
|
4aa41a0366 | ||
|
|
51a7501da6 | ||
|
|
ea7f4bca56 | ||
|
|
d6d428777b | ||
|
|
2f0c9db111 | ||
|
|
5bf7533353 | ||
|
|
6db8a47b4c | ||
|
|
d7dd8a4567 | ||
|
|
f7fea55e23 | ||
|
|
f9497f7c15 | ||
|
|
3029e9fee1 | ||
|
|
89db83dd05 | ||
|
|
63b3e26d5f | ||
|
|
1d1adc61e8 | ||
|
|
b568bccf02 | ||
|
|
8e6a88bd7f | ||
|
|
b90b27fd2c | ||
|
|
4bd8005e1e | ||
|
|
ab9a8ced81 | ||
|
|
a4aeb1489a | ||
|
|
e3bc0b14fc | ||
|
|
3dd1bf138c | ||
|
|
6b1097bcb8 | ||
|
|
03a5c1fac8 | ||
|
|
876260d8c7 | ||
|
|
da08d15151 | ||
|
|
5e413e36bd | ||
|
|
482f642652 | ||
|
|
4ef1a02933 | ||
|
|
d0d5c4a15b | ||
|
|
18bdc2f931 | ||
|
|
ea29156a35 | ||
|
|
4433f83ea1 | ||
|
|
2c2a837ea8 | ||
|
|
c14f3f766b | ||
|
|
b24e26c138 | ||
|
|
17e9f43494 | ||
|
|
b9c1821409 | ||
|
|
e408266f75 | ||
|
|
90136fc654 | ||
|
|
56dd366ec5 | ||
|
|
5517951010 | ||
|
|
6f6fa74908 | ||
|
|
9912271a7a | ||
|
|
2631d298ac | ||
|
|
7b8d3250b9 | ||
|
|
0242a5416d | ||
|
|
51fe38dfde | ||
|
|
cc17d1d0e2 | ||
|
|
eabbec3cc1 | ||
|
|
5be1ea50c2 | ||
|
|
9e3b087c9c | ||
|
|
2c806bc45a | ||
|
|
5205b1aca2 | ||
|
|
92e1a09b50 | ||
|
|
5fdf55ec6e | ||
|
|
ed22a48de7 | ||
|
|
5c4d962792 | ||
|
|
af7f980735 | ||
|
|
8c32d347c6 | ||
|
|
7067220f7f | ||
|
|
feb13e3ece | ||
|
|
6ad6a1a5a0 | ||
|
|
62672a60f7 | ||
|
|
e3e73a307c | ||
|
|
df320e9bc4 | ||
|
|
106fbe9a90 | ||
|
|
80353a9699 | ||
|
|
27fdb5cd3b | ||
|
|
906c65c164 | ||
|
|
0924e1466b | ||
|
|
f6e294d5ca | ||
|
|
6f2e748284 | ||
|
|
eb01373383 | ||
|
|
285816055e | ||
|
|
8483bc3d5e | ||
|
|
5e28c10342 | ||
|
|
6e52d85cbf | ||
|
|
c85adcf878 | ||
|
|
a0c250cce8 | ||
|
|
d7ebb21f3b | ||
|
|
b210c08863 | ||
|
|
d991861d03 | ||
|
|
d87de81d82 | ||
|
|
6d17c91500 | ||
|
|
38b2868c35 | ||
|
|
1f8085709b | ||
|
|
c91aedb344 | ||
|
|
6a25f97ddb | ||
|
|
78578046ae | ||
|
|
81adc97084 | ||
|
|
33a62a6a68 | ||
|
|
41f7898d17 | ||
|
|
006b1a43a2 | ||
|
|
0b2340b135 | ||
|
|
ffcb1ef792 | ||
|
|
624b081cc4 | ||
|
|
48cf3b9345 | ||
|
|
a36bf7dd06 | ||
|
|
cd38a52ca0 | ||
|
|
b6e8598596 | ||
|
|
c02261a74f | ||
|
|
2f31cc736a | ||
|
|
4371be3999 | ||
|
|
6dfb747120 | ||
|
|
750fdbe96f | ||
|
|
5ae7149ea5 | ||
|
|
e75e3cd08d | ||
|
|
401b1f7097 | ||
|
|
f6b20441bc | ||
|
|
e7e5fb0101 | ||
|
|
0c70264d2b | ||
|
|
df04d5d36d | ||
|
|
fee62b0b35 | ||
|
|
ca4af50c0b | ||
|
|
aa17effc4b | ||
|
|
50a32c176d | ||
|
|
44982e97c6 | ||
|
|
02c8e16242 | ||
|
|
849b8da2dc | ||
|
|
7e3228807b | ||
|
|
e720d006ce | ||
|
|
5c84eb2095 | ||
|
|
485db7adcc | ||
|
|
7929d25e10 | ||
|
|
2a7091a63e | ||
|
|
2248325be0 | ||
|
|
d90d905ca3 | ||
|
|
28932f1756 | ||
|
|
a44bc6e40d | ||
|
|
af708880e3 | ||
|
|
ebe7db159f | ||
|
|
808134ce86 | ||
|
|
2b4b7cb0e1 | ||
|
|
8e51377db1 | ||
|
|
744385db91 | ||
|
|
a9d8e2528f | ||
|
|
878d9ab1cf | ||
|
|
2ad2f9d0ab | ||
|
|
e1dfb71da4 | ||
|
|
6b3c73f25a | ||
|
|
cf0e49ebb0 | ||
|
|
1abe3346f1 | ||
|
|
f32c2a69d5 | ||
|
|
bf79be6d81 | ||
|
|
962839b8ae | ||
|
|
07d53c1274 | ||
|
|
0227379e07 | ||
|
|
e0f8bdffd5 | ||
|
|
b5285d9ebb | ||
|
|
5377016c18 | ||
|
|
c6484779ea | ||
|
|
fc7cfca8e6 | ||
|
|
a663831911 | ||
|
|
27797ddb73 | ||
|
|
3c42db9a14 | ||
|
|
ddb7936211 | ||
|
|
6175209aad | ||
|
|
6bde657310 | ||
|
|
c92e3e0ec6 | ||
|
|
3875a92299 | ||
|
|
9bf5187d42 | ||
|
|
136da13999 | ||
|
|
5cdc8ccc3b | ||
|
|
48ca441674 | ||
|
|
b8f9156200 | ||
|
|
5b4c10b98e | ||
|
|
0c91ea98c7 | ||
|
|
b25474a9ff | ||
|
|
89204321d4 | ||
|
|
a146565949 | ||
|
|
6ddea54bf8 | ||
|
|
8bcb3aab37 | ||
|
|
32fcc9e858 | ||
|
|
036cd27794 | ||
|
|
ff3affb764 | ||
|
|
2eddba62e4 | ||
|
|
d748f5a467 | ||
|
|
5d108b0702 | ||
|
|
4e6b6e01c8 | ||
|
|
826c1c2513 | ||
|
|
6dc56bec21 | ||
|
|
13f257c19e | ||
|
|
046fa29116 | ||
|
|
b809538934 | ||
|
|
d1864f45a4 | ||
|
|
5c9650fb50 | ||
|
|
9088c0946b | ||
|
|
c4e5ed9e65 | ||
|
|
1f2c6bc46e | ||
|
|
74c37ad0d4 | ||
|
|
3790cb6c54 | ||
|
|
e1f77fee3a | ||
|
|
5ed4ded0bd | ||
|
|
43e9f68ac1 | ||
|
|
1176add6ad | ||
|
|
7d9f215d4e | ||
|
|
1e8b71fbea | ||
|
|
16b0eaf50a | ||
|
|
1738f12bdd | ||
|
|
cfc7894ab5 | ||
|
|
17d6209239 | ||
|
|
aa5fb467f8 | ||
|
|
f9fb210047 | ||
|
|
af4c93fd42 | ||
|
|
17c1751474 | ||
|
|
012ff4de91 | ||
|
|
e966796927 | ||
|
|
4048305d31 | ||
|
|
3091d44031 | ||
|
|
03181717f9 | ||
|
|
51c460696b | ||
|
|
54fc047bf2 | ||
|
|
56cb0f76bc | ||
|
|
bb6ecf4651 | ||
|
|
d266742b28 | ||
|
|
54cd738bd6 | ||
|
|
ca5044aa04 | ||
|
|
24b1f52110 | ||
|
|
1fc23af95b | ||
|
|
961d8a462d | ||
|
|
8b57e2178c | ||
|
|
8b35c96716 | ||
|
|
aa33331616 | ||
|
|
7fb245b8c2 | ||
|
|
442f95cbc6 | ||
|
|
cc56ae5f2f | ||
|
|
a074205643 | ||
|
|
33575a102c | ||
|
|
83470dbf64 | ||
|
|
fbecd9d970 | ||
|
|
ec4e20fbe7 | ||
|
|
333b21935d | ||
|
|
2250f8f5f3 | ||
|
|
90b701c1f3 | ||
|
|
9621deccf1 | ||
|
|
71353cd299 | ||
|
|
2a570fbefc | ||
|
|
d4a30d8b40 | ||
|
|
fb39852c1f | ||
|
|
50e7568736 | ||
|
|
d3f169bd51 | ||
|
|
7a65bd072c | ||
|
|
b928376a7f | ||
|
|
4a75dfd313 | ||
|
|
2706bb3225 | ||
|
|
e30aef6305 | ||
|
|
280ceaaa7c | ||
|
|
69d6952315 | ||
|
|
8443d739d1 | ||
|
|
3ce2c06105 | ||
|
|
416ac1367a | ||
|
|
81b8bb86bd | ||
|
|
ce0ccc49ee | ||
|
|
b8732e7139 | ||
|
|
a42c2fde3f | ||
|
|
bcc777539a | ||
|
|
1426aa9d11 | ||
|
|
635500135f | ||
|
|
d4cbbd17cc | ||
|
|
a6aa766f3c | ||
|
|
1dc73121d5 | ||
|
|
afac3b8c15 | ||
|
|
875a5fadd1 | ||
|
|
397a49a146 | ||
|
|
785bf76383 | ||
|
|
4110be97bb | ||
|
|
d3875cf0d2 | ||
|
|
6ec0e5b3f5 | ||
|
|
219db303d0 | ||
|
|
c13edc0f2f | ||
|
|
6a26160f4a | ||
|
|
e6ab5c51df | ||
|
|
27cc5986e1 | ||
|
|
b7b81d07e6 | ||
|
|
e848336562 | ||
|
|
e7dba4d672 | ||
|
|
6ef3f487a9 | ||
|
|
ea9689d2a7 | ||
|
|
d6cd44b076 | ||
|
|
cd959bba91 | ||
|
|
7967b54a1b | ||
|
|
08046eeee2 | ||
|
|
4fce6f7c4f | ||
|
|
cf561f2269 | ||
|
|
601ae6e3cf | ||
|
|
7f5f1615ae | ||
|
|
f20bab8de3 | ||
|
|
fda82412df | ||
|
|
e5288c92a9 | ||
|
|
90a4537571 | ||
|
|
aa76e07cdc | ||
|
|
4b85f3420e | ||
|
|
8ad6883ec0 | ||
|
|
79914169d3 | ||
|
|
38b4595d9d | ||
|
|
3a577b5ed7 | ||
|
|
a3a1ec190b | ||
|
|
1fb2a21e97 | ||
|
|
135bd5d380 | ||
|
|
c110ab5dcc | ||
|
|
b274923993 | ||
|
|
766a401d9a | ||
|
|
9793c0fd71 | ||
|
|
86db4db68e | ||
|
|
cb773d1cc8 | ||
|
|
fc6a36a6d9 | ||
|
|
9c75a8dd03 | ||
|
|
53f8ed1014 | ||
|
|
240e18d81e | ||
|
|
3c3c21f02e | ||
|
|
d970a01169 | ||
|
|
02a95d6095 | ||
|
|
3d35fef0e8 | ||
|
|
801c9fec3d | ||
|
|
d8400d3a9d | ||
|
|
49ba1cc8fd | ||
|
|
507cbf0f1e | ||
|
|
543fca9d38 | ||
|
|
c2af92f1a3 | ||
|
|
fcb997d4ca | ||
|
|
f260b73b80 | ||
|
|
8c21c6bfa8 | ||
|
|
ee4cd312ab | ||
|
|
51e5b871e7 | ||
|
|
1e8a823887 | ||
|
|
308f79b804 | ||
|
|
144a5f625a |
Binary file not shown.
@@ -3,6 +3,7 @@ package com.mhd.system.api;
|
|||||||
import com.mhd.common.core.constant.ServiceNameConstants;
|
import com.mhd.common.core.constant.ServiceNameConstants;
|
||||||
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
|
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.system.api.domain.BusinessDocumentFeign;
|
||||||
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
|
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
|
||||||
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
@@ -18,7 +19,8 @@ import java.util.Set;
|
|||||||
/**
|
/**
|
||||||
* bms财务结算系统feign调用接口
|
* bms财务结算系统feign调用接口
|
||||||
*/
|
*/
|
||||||
@FeignClient(contextId = "BmsService", value = ServiceNameConstants.BMS_SERVICE, fallbackFactory = RemoteBmsFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
// 目标地址由 nacos 配置项 feign.url.mhd-bms-service 指定,未配置时按服务名走服务发现
|
||||||
|
@FeignClient(contextId = "BmsService", value = ServiceNameConstants.BMS_SERVICE, url = "http://10.102.192.32:8019",fallbackFactory = RemoteBmsFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||||
public interface BmsServiceFeign {
|
public interface BmsServiceFeign {
|
||||||
|
|
||||||
|
|
||||||
@@ -35,6 +37,13 @@ public interface BmsServiceFeign {
|
|||||||
@GetMapping("/settlementCustomersApi/getInfoByCode")
|
@GetMapping("/settlementCustomersApi/getInfoByCode")
|
||||||
public AjaxResult getCustomersInfoByCode(@RequestParam("settlementCustomersCode")String settlementCustomersCode);
|
public AjaxResult getCustomersInfoByCode(@RequestParam("settlementCustomersCode")String settlementCustomersCode);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 按结算主体ID(如货主ID,对应 settlement_customers.settlement_entity_id)查询结算对象
|
||||||
|
*/
|
||||||
|
@GetMapping("/settlementCustomersApi/getInfoBySettlementEntityId")
|
||||||
|
AjaxResult getCustomersInfoBySettlementEntityId(@RequestParam("settlementEntityId") Long settlementEntityId,
|
||||||
|
@RequestParam(value = "topOrganizationId", required = false) Long topOrganizationId);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 推送同步业务单据
|
* 推送同步业务单据
|
||||||
@@ -49,4 +58,29 @@ public interface BmsServiceFeign {
|
|||||||
*/
|
*/
|
||||||
@GetMapping("/documentTypeApi/getDocumentInfoByCodeSet")
|
@GetMapping("/documentTypeApi/getDocumentInfoByCodeSet")
|
||||||
AjaxResult getDocumentInfoByCodeSet(@RequestParam("documentTypeCodeSet") Set<String> documentTypeCodeSet);
|
AjaxResult getDocumentInfoByCodeSet(@RequestParam("documentTypeCodeSet") Set<String> documentTypeCodeSet);
|
||||||
}
|
|
||||||
|
/**
|
||||||
|
* 定时任务整租推送到bms
|
||||||
|
*/
|
||||||
|
@PostMapping("/businessDocumentApi/wholeRentSynchronization")
|
||||||
|
public AjaxResult businessDocumentApiSave(@RequestBody BusinessDataPushDTO businessDataPushDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 定时任务整租推送到bms
|
||||||
|
*/
|
||||||
|
@PostMapping("/businessDocumentApi/wholeRentSynchronizationZXF")
|
||||||
|
public AjaxResult wholeRentSynchronizationZXF(@RequestBody BusinessDataPushDTO businessDataPushDTO);
|
||||||
|
|
||||||
|
@PostMapping("/businessDocumentApi/feignSave")
|
||||||
|
public AjaxResult feignSaveBusinessDocument(@RequestBody BusinessDocumentFeign businessDocumentFeign);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据结算对象id查询结算对象参数列表
|
||||||
|
*/
|
||||||
|
@GetMapping("/settlementCustomersParametersApi/getListBySettlementCustomersId")
|
||||||
|
AjaxResult getListBySettlementCustomersId(@RequestParam("settlementCustomersId") Long settlementCustomersId);
|
||||||
|
|
||||||
|
@PostMapping("/settlementCustomersApi/updatePushContractManageJobId")
|
||||||
|
AjaxResult updatePushContractManageJobId(@RequestParam("settlementCustomersId") Long settlementCustomersId,
|
||||||
|
@RequestParam("jobId") Integer jobId);
|
||||||
|
}
|
||||||
@@ -0,0 +1,79 @@
|
|||||||
|
package com.mhd.system.api;
|
||||||
|
|
||||||
|
import com.mhd.common.core.constant.ServiceNameConstants;
|
||||||
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.system.api.domain.*;
|
||||||
|
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
|
||||||
|
import com.mhd.system.api.factory.RemoteOmsFeignFallbackFactory;
|
||||||
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.scheduling.annotation.Async;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.PostMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
|
// 目标地址由 nacos 配置项 feign.url.mhd-oms-service 指定,未配置时按服务名走服务发现
|
||||||
|
@FeignClient(contextId = "OmsService", value = ServiceNameConstants.OMS_SERVICE,url = "http://10.102.192.33:8017",fallbackFactory = RemoteOmsFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||||
|
public interface OmsServiceFeign {
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("wms推送入库单")
|
||||||
|
@PostMapping(value = "/reservationStockInOrderApi/pushInOrder")
|
||||||
|
public AjaxResult pushInOrder(@RequestBody StockInOrderTZPD stockInOrder);
|
||||||
|
|
||||||
|
@ApiOperation("wms推送入库单明细")
|
||||||
|
@PostMapping(value = "/reservationStockInOrderApi/pushInOrderDetail")
|
||||||
|
public AjaxResult pushInOrderDetail(@RequestBody InMaterialDetailTZPD inMaterialDetail);
|
||||||
|
|
||||||
|
@ApiOperation("wms回传入库结果:按入库单号同步入库状态(3-收货中 4-上架中 5-已入库)到OMS入库业务单,type非1为入库")
|
||||||
|
@GetMapping(value = "/executionStockInOrderApi/returnResult")
|
||||||
|
public AjaxResult returnInResult(@RequestParam("orderNumber") String orderNumber, @RequestParam("status") Long status, @RequestParam("type") String type);
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("wms推送入库单")
|
||||||
|
@PostMapping(value = "/reservationStockOutOrderApi/pushOutOrder")
|
||||||
|
public AjaxResult pushOutOrder(@RequestBody StockOutOrderTZPD stockOutOrder);
|
||||||
|
|
||||||
|
@ApiOperation("wms推送入库单明细")
|
||||||
|
@PostMapping(value = "/reservationStockOutOrderApi/pushOutOrderDetail")
|
||||||
|
public AjaxResult pushOutOrderDetail(@RequestBody OutMaterialDetailTZPD outMaterialDetail);
|
||||||
|
|
||||||
|
@ApiOperation("编辑物料库存")
|
||||||
|
@PostMapping("/reservationMaterialInventoryApi/omsEdit")
|
||||||
|
@Async
|
||||||
|
public CompletableFuture<Void> omsEdit(@RequestBody MaterialInventoryOmsParamDO materialInventoryOmsParamDO);
|
||||||
|
|
||||||
|
@ApiOperation("查询企业单位列表-新增物料时显示下拉框数据")
|
||||||
|
@GetMapping("/erpEnterpriseUnitApi/unitList")
|
||||||
|
public AjaxResult getUnitList(ErpEnterpriseUnitDTO erpEnterpriseUnitDTO);
|
||||||
|
|
||||||
|
//查询企业国别列表-新增物料时显示下拉框数据
|
||||||
|
@ApiOperation("查询企业国别列表-新增物料时显示下拉框数据")
|
||||||
|
@GetMapping("/erpCountryApi/countryList")
|
||||||
|
public AjaxResult getCountryList(ErpCountryDTO erpCountryDTO);
|
||||||
|
|
||||||
|
@ApiOperation("保存gwlog")
|
||||||
|
@PostMapping("/gwLogApi/saveGwLog")
|
||||||
|
AjaxResult insertGwLog(@RequestBody GwLogDTO gwLogDTO);
|
||||||
|
|
||||||
|
@ApiOperation("修改gwlog")
|
||||||
|
@PostMapping("/gwLogApi/updateGwLog")
|
||||||
|
AjaxResult updateGwLog(@RequestBody GwLogDTO gwLogDTO);
|
||||||
|
|
||||||
|
@ApiOperation("批量推送")
|
||||||
|
@PostMapping("/reservationStockOutOrderApi/batchPush")
|
||||||
|
public AjaxResult batchPush(@RequestBody List<Long> idList);
|
||||||
|
|
||||||
|
@ApiOperation("批量推送")
|
||||||
|
@PostMapping("/reservationStockOutOrderApi/batchPushByNumber")
|
||||||
|
public AjaxResult batchPushByNumber(@RequestBody List<String> numberList);
|
||||||
|
|
||||||
|
@ApiOperation("保存电子签名记录")
|
||||||
|
@PostMapping("/electronicSignatureApi/saveSignature")
|
||||||
|
public AjaxResult saveSignature(@RequestBody ElectronicSignatureSyncDTO saveDTO);
|
||||||
|
}
|
||||||
@@ -12,6 +12,8 @@ import com.mhd.common.core.domain.entity.R;
|
|||||||
import com.mhd.common.core.domain.po.SysMultistageDictPo;
|
import com.mhd.common.core.domain.po.SysMultistageDictPo;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
import com.mhd.system.api.domain.ContainerFeignPO;
|
import com.mhd.system.api.domain.ContainerFeignPO;
|
||||||
|
import com.mhd.system.api.domain.ContractManageFeignDTO;
|
||||||
|
import com.mhd.system.api.domain.ContractManageParametersFeign;
|
||||||
import com.mhd.system.api.domain.SysDictData;
|
import com.mhd.system.api.domain.SysDictData;
|
||||||
import com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory;
|
import com.mhd.system.api.factory.RemoteSystemFeignFallbackFactory;
|
||||||
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
@@ -201,6 +203,13 @@ public interface SystemServiceFeign {
|
|||||||
@GetMapping("/batchApi/getInfo/{batchId}")
|
@GetMapping("/batchApi/getInfo/{batchId}")
|
||||||
public AjaxResult getBatchInfoByBatchId(@PathVariable("batchId") Long batchId);
|
public AjaxResult getBatchInfoByBatchId(@PathVariable("batchId") Long batchId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据批次名称查询批次列表(导入用)
|
||||||
|
*/
|
||||||
|
@GetMapping("/batchApi/list")
|
||||||
|
public Object getBatchListByName(@RequestParam("batchName") String batchName,
|
||||||
|
@RequestParam("organizationId") Long organizationId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据batchId获取对应批次详情信息
|
* 根据batchId获取对应批次详情信息
|
||||||
*/
|
*/
|
||||||
@@ -218,12 +227,24 @@ public interface SystemServiceFeign {
|
|||||||
@GetMapping("/associationWarehouseApi/getWarehouseInfo/{correlationId}")
|
@GetMapping("/associationWarehouseApi/getWarehouseInfo/{correlationId}")
|
||||||
public AjaxResult getWarehouseInfo(@PathVariable("correlationId") Long correlationId);
|
public AjaxResult getWarehouseInfo(@PathVariable("correlationId") Long correlationId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 直接从数据库获取指定用户设置的仓库(不使用缓存)
|
||||||
|
*/
|
||||||
|
@GetMapping("/associationWarehouseApi/getWarehouseInfoFromDb/{correlationId}")
|
||||||
|
public AjaxResult getWarehouseInfoFromDb(@PathVariable("correlationId") Long correlationId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据warehouseId获取对仓库信息
|
* 根据warehouseId获取对仓库信息
|
||||||
*/
|
*/
|
||||||
@GetMapping("/warehouseApi/getInfo/{warehouseId}")
|
@GetMapping("/warehouseApi/getInfo/{warehouseId}")
|
||||||
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId);
|
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据warehouseId获取仓库及下库区及库位树(与前端 warehouseApi/getWarehouseChildren 一致,用于PC上架页默认库位回显)
|
||||||
|
*/
|
||||||
|
@GetMapping("/warehouseApi/getWarehouseChildren")
|
||||||
|
public AjaxResult getWarehouseChildren(@RequestParam("warehouseId") Long warehouseId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据storageSectionId获取对应库区信息
|
* 根据storageSectionId获取对应库区信息
|
||||||
*/
|
*/
|
||||||
@@ -245,6 +266,14 @@ public interface SystemServiceFeign {
|
|||||||
@GetMapping("/packApi/getInfoByPackIdAndUnitCode/{packId}/{unitCode}")
|
@GetMapping("/packApi/getInfoByPackIdAndUnitCode/{packId}/{unitCode}")
|
||||||
public AjaxResult getInfoByPackIdAndUnitCode(@PathVariable("packId") Long packId, @PathVariable("unitCode") String unitCode);
|
public AjaxResult getInfoByPackIdAndUnitCode(@PathVariable("packId") Long packId, @PathVariable("unitCode") String unitCode);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据包装编码/名称查询包装(导入用)
|
||||||
|
*/
|
||||||
|
@GetMapping("/packApi/list")
|
||||||
|
public Object getPackList(@RequestParam(value = "packCode", required = false) String packCode,
|
||||||
|
@RequestParam(value = "packName", required = false) String packName,
|
||||||
|
@RequestParam(value = "organizationId", required = false) Long organizationId);
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据platformId获取对应月台信息
|
* 根据platformId获取对应月台信息
|
||||||
*/
|
*/
|
||||||
@@ -288,6 +317,12 @@ public interface SystemServiceFeign {
|
|||||||
@GetMapping("/expenseAccountApi/getInfoByCode")
|
@GetMapping("/expenseAccountApi/getInfoByCode")
|
||||||
public AjaxResult getSubInfoByCode(@RequestParam("subjectCode") String subjectCode);
|
public AjaxResult getSubInfoByCode(@RequestParam("subjectCode") String subjectCode);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据code编码查询费用科目
|
||||||
|
*/
|
||||||
|
@GetMapping("/expenseAccountApi/getInfoByCode2")
|
||||||
|
public AjaxResult getSubInfoByCode2(@RequestParam("subjectCode") String subjectCode,@RequestParam("topOrganizationId") Long topOrganizationId);
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 根据code编码查询项目信息
|
* 根据code编码查询项目信息
|
||||||
@@ -319,13 +354,51 @@ public interface SystemServiceFeign {
|
|||||||
@GetMapping("/contractManageApi/getInfoByCode")
|
@GetMapping("/contractManageApi/getInfoByCode")
|
||||||
public AjaxResult getInfoByCode(@RequestParam("contractNumber") String contractNumber);
|
public AjaxResult getInfoByCode(@RequestParam("contractNumber") String contractNumber);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取通用合同
|
||||||
|
*/
|
||||||
|
@GetMapping("/contractManageApi/getGeneralContract")
|
||||||
|
public AjaxResult getGeneralContract();
|
||||||
/**
|
/**
|
||||||
* 根据结算主体获取合同信息
|
* 根据结算主体获取合同信息
|
||||||
*/
|
*/
|
||||||
@GetMapping("/contractManageApi/getInfoByCustomer")
|
@GetMapping("/contractManageApi/getInfoByCustomer")
|
||||||
public AjaxResult getInfoByCustomer(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType);
|
public AjaxResult getInfoByCustomer(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType);
|
||||||
|
|
||||||
|
@ApiOperation("根据结算主体和费用科目获取合同信息")
|
||||||
|
@GetMapping(value = "/contractManageApi/getInfoByCustomerAndSecondSubjectCode")
|
||||||
|
public AjaxResult getInfoByCustomerAndSecondSubjectCode(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType,@RequestParam("firstSubjectCode") String firstSubjectCode,@RequestParam("topOrganizationId") Long topOrganizationId,@RequestParam("organizationId") Long organizationId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据结算主体获取合同信息
|
||||||
|
*/
|
||||||
|
@GetMapping("/contractManageApi/getInfoByCustomer2")
|
||||||
|
public AjaxResult getInfoByCustomer2(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType,@RequestParam("topOrganizationId") Long topOrganizationId);
|
||||||
|
|
||||||
|
@GetMapping("/contractManageApi/getInfoByCustomerAndOrganizationId")
|
||||||
|
public AjaxResult getInfoByCustomerAndOrganizationId(@RequestParam("settlementCustomersCode") String settlementCustomersCode,@RequestParam("contractType") Integer contractType,@RequestParam("topOrganizationId") Long topOrganizationId,@RequestParam("organizationId") Long organizationId);
|
||||||
|
|
||||||
@GetMapping("/contractManageApi/queryList")
|
@GetMapping("/contractManageApi/queryList")
|
||||||
public AjaxResult queryList();
|
public AjaxResult queryList();
|
||||||
|
|
||||||
}
|
@GetMapping("/LeaseApi/wholeRentSynchronization")
|
||||||
|
public AjaxResult wholeRentSynchronization();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料主数据导入:按组织与关键词匹配物料分类,返回体含物料分类的 code 字段,供写入 material_base_info.material_classify_code。
|
||||||
|
* 使用 basicApi 前缀,与 WMS 其他 Feign 调 system 的惯例一致(避免仅重启 WMS 时 system 上无 materialClassifyApi 新路由导致 404)。
|
||||||
|
*/
|
||||||
|
@GetMapping("/basicApi/matchMaterialClassifyForImport")
|
||||||
|
public AjaxResult matchForMaterialImport(@RequestParam("keyword") String keyword,
|
||||||
|
@RequestParam("organizationId") Long organizationId);
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("保存临时合同管理")
|
||||||
|
@PostMapping("/contractManageApi/feignSave")
|
||||||
|
public AjaxResult feignSave(@RequestBody ContractManageFeignDTO contractManageFeignDTO);
|
||||||
|
|
||||||
|
@ApiOperation("Feign保存合约信息规则维护")
|
||||||
|
@PostMapping("/contractManageParametersApi/feignSave")
|
||||||
|
public AjaxResult feignSaveContractParameters(@RequestBody ContractManageParametersFeign contractManageParametersFeign);
|
||||||
|
|
||||||
|
}
|
||||||
@@ -9,15 +9,20 @@ import com.mhd.common.core.domain.dto.UserDriverDTO;
|
|||||||
import com.mhd.common.core.domain.entity.R;
|
import com.mhd.common.core.domain.entity.R;
|
||||||
import com.mhd.common.core.domain.todo.StatisticalMattersDo;
|
import com.mhd.common.core.domain.todo.StatisticalMattersDo;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.common.core.web.page.TableDataInfo;
|
||||||
import com.mhd.system.api.domain.UserDTO;
|
import com.mhd.system.api.domain.UserDTO;
|
||||||
|
import com.mhd.system.api.domain.UserShipperFeignDTO;
|
||||||
|
import com.mhd.system.api.domain.UserShipperQueryDTO;
|
||||||
import com.mhd.system.api.domain.UserUpdateDTO;
|
import com.mhd.system.api.domain.UserUpdateDTO;
|
||||||
import com.mhd.system.api.factory.RemoteUserFeignFallbackFactory;
|
import com.mhd.system.api.factory.RemoteUserFeignFallbackFactory;
|
||||||
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
import com.mhd.system.api.model.LoginUser;
|
import com.mhd.system.api.model.LoginUser;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@@ -160,6 +165,10 @@ public interface UserServiceFeign {
|
|||||||
@GetMapping("/userShipperApi/userShipperListAll")
|
@GetMapping("/userShipperApi/userShipperListAll")
|
||||||
public AjaxResult<?> userShipperListAll();
|
public AjaxResult<?> userShipperListAll();
|
||||||
|
|
||||||
|
@ApiOperation("查询租户下全部托运人")
|
||||||
|
@GetMapping("/userShipperApi/userShipperListAllByOrg")
|
||||||
|
public AjaxResult<?> userShipperListAllByOrg(@RequestParam("orgCode") Long orgCode);
|
||||||
|
|
||||||
@ApiOperation("查询租户下全部承运人")
|
@ApiOperation("查询租户下全部承运人")
|
||||||
@GetMapping("/userDriverApi/userDriverListAll")
|
@GetMapping("/userDriverApi/userDriverListAll")
|
||||||
public AjaxResult<?> userDriverListAll();
|
public AjaxResult<?> userDriverListAll();
|
||||||
@@ -191,4 +200,34 @@ public interface UserServiceFeign {
|
|||||||
@ApiOperation("根据用户ID查询货主信息")
|
@ApiOperation("根据用户ID查询货主信息")
|
||||||
@GetMapping("/userShipperApi/getShipperByUserId/{userId}")
|
@GetMapping("/userShipperApi/getShipperByUserId/{userId}")
|
||||||
public AjaxResult<?> getShipperByUserId(@PathVariable("userId") Long userId);
|
public AjaxResult<?> getShipperByUserId(@PathVariable("userId") Long userId);
|
||||||
|
|
||||||
|
@ApiOperation("设置路线")
|
||||||
|
@PostMapping("/userApi/updateLineManagement")
|
||||||
|
public AjaxResult updateLineManagement(@RequestBody UserDTO userDTO);
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("商业合作伙伴-分页查询托运人列表")
|
||||||
|
@GetMapping("/userShipperApi/userShipperList")
|
||||||
|
public TableDataInfo userShipperList(@SpringQueryMap UserShipperQueryDTO userShipperQueryDTO);
|
||||||
|
|
||||||
|
|
||||||
|
@PostMapping("/userShipperApi/updatePushStatus")
|
||||||
|
public AjaxResult<?> updatePushStatus(@RequestParam(value = "shipperId") Long shipperId,
|
||||||
|
@RequestParam(value = "pushStatus", required = false) Integer pushStatus,
|
||||||
|
@RequestParam(value = "pushTime", required = false) String pushTime,
|
||||||
|
@RequestParam(value = "pushBy", required = false) Long pushBy,
|
||||||
|
@RequestParam(value = "pushByName", required = false) String pushByName,
|
||||||
|
@RequestParam(value = "organizationId") Long organizationId);
|
||||||
|
|
||||||
|
@PostMapping("/userShipperApi/getCustomerNcCodeBatch")
|
||||||
|
AjaxResult getCustomerNcCodeBatch(@RequestBody List<Long> shipperIdList);
|
||||||
|
|
||||||
|
@ApiOperation("查询赊销额度")
|
||||||
|
@PostMapping("/userShipperApi/querySaleCreditLimitFeign")
|
||||||
|
public AjaxResult querySaleCreditLimitFeign(@RequestBody UserShipperFeignDTO userShipperDTO);
|
||||||
|
|
||||||
|
@GetMapping("/userApi/getUserByUserAccount")
|
||||||
|
R<LoginUser> getUserByUserAccount(@RequestParam("userAccount") String account);
|
||||||
}
|
}
|
||||||
@@ -17,6 +17,7 @@ import com.mhd.common.core.domain.po.UserPo;
|
|||||||
import com.mhd.common.core.utils.sms.Result;
|
import com.mhd.common.core.utils.sms.Result;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
import com.mhd.system.api.domain.*;
|
import com.mhd.system.api.domain.*;
|
||||||
|
import com.mhd.system.api.domain.TmsOrderAddDTO;
|
||||||
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
import io.swagger.annotations.ApiOperation;
|
import io.swagger.annotations.ApiOperation;
|
||||||
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
@@ -25,7 +26,8 @@ import org.springframework.web.bind.annotation.*;
|
|||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@FeignClient(contextId = "commonWlhyServiceFeign",value = ServiceNameConstants.WLHY_SERVICE,configuration = FeignAutoConfiguration.class)
|
// 目标地址由 nacos 配置项 feign.url.mhd-wlhy-service 指定,未配置时按服务名走服务发现
|
||||||
|
@FeignClient(contextId = "commonWlhyServiceFeign",value = ServiceNameConstants.WLHY_SERVICE,url = "http://10.102.192.31:8014",configuration = FeignAutoConfiguration.class)
|
||||||
public interface WlhyServiceFeign {
|
public interface WlhyServiceFeign {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -516,6 +518,14 @@ public interface WlhyServiceFeign {
|
|||||||
@PostMapping(value = "/feign/outBoundSummary/getOrderListByReconciliation")
|
@PostMapping(value = "/feign/outBoundSummary/getOrderListByReconciliation")
|
||||||
public R<List<TmsOrder>> getOrderListByReconciliation(@RequestBody ReconciliationDTO reconciliationDTO);
|
public R<List<TmsOrder>> getOrderListByReconciliation(@RequestBody ReconciliationDTO reconciliationDTO);
|
||||||
|
|
||||||
|
@ApiOperation(value = "查询对账单对应的发票明细", notes = "查询对账单对应的发票明细")
|
||||||
|
@PostMapping(value = "/feign/outBoundSummary/selectMakeOutInvoiceListByReconciliation")
|
||||||
|
public R<List<TmsMakeOutInvoice>> selectMakeOutInvoiceListByReconciliation(@RequestBody ReconciliationDTO reconciliationDTO);
|
||||||
|
|
||||||
|
@ApiOperation(value = "查询对账单对应的发票明细子项", notes = "查询对账单对应的发票明细子项")
|
||||||
|
@PostMapping(value = "/feign/outBoundSummary/selectMakeOutInvoiceItemList")
|
||||||
|
public R<List<TmsMakeOutInvoiceItem>> selectMakeOutInvoiceItemList(@RequestBody TmsMakeOutInvoice tmsMakeOutInvoice);
|
||||||
|
|
||||||
@GetMapping(value = "/ntocc/tmsSettlementExchangeRate/queryById")
|
@GetMapping(value = "/ntocc/tmsSettlementExchangeRate/queryById")
|
||||||
public Result<?> queryById(@RequestParam(name="id",required=true) String id);
|
public Result<?> queryById(@RequestParam(name="id",required=true) String id);
|
||||||
|
|
||||||
@@ -529,4 +539,20 @@ public interface WlhyServiceFeign {
|
|||||||
|
|
||||||
@GetMapping("/feign/order/cancelIssueDocuments")
|
@GetMapping("/feign/order/cancelIssueDocuments")
|
||||||
public AjaxResult cancelIssueDocuments(@RequestParam(name="executeOrderId") String executeOrderId);
|
public AjaxResult cancelIssueDocuments(@RequestParam(name="executeOrderId") String executeOrderId);
|
||||||
}
|
|
||||||
|
@GetMapping(value = "/ntocc/tmsSettlementExchangeRate/queryList")
|
||||||
|
public AjaxResult<?> queryList(@RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
|
||||||
|
@RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
|
||||||
|
@RequestParam(name="pushStatus", required = false) String pushStatus,
|
||||||
|
@RequestParam(name="organizationId", required = false) String organizationId);
|
||||||
|
|
||||||
|
|
||||||
|
@ApiOperation("汇率-更新推送状态")
|
||||||
|
@PostMapping("/ntocc/tmsSettlementExchangeRate/updatePushStatus")
|
||||||
|
void updateExchangeRatePushStatus(@RequestParam("id") String id,
|
||||||
|
@RequestParam("pushStatus") Integer pushStatus,
|
||||||
|
@RequestParam(name="pushTime",required = false) String pushTime,
|
||||||
|
@RequestParam(name="pushBy",required = false) Long pushBy,
|
||||||
|
@RequestParam(name="pushByName",required = false) String pushByName,
|
||||||
|
@RequestParam("organizationId") String organizationId);
|
||||||
|
}
|
||||||
@@ -1,15 +1,18 @@
|
|||||||
package com.mhd.system.api;
|
package com.mhd.system.api;
|
||||||
|
|
||||||
|
import cn.hutool.json.JSONUtil;
|
||||||
import com.mhd.common.core.constant.ServiceNameConstants;
|
import com.mhd.common.core.constant.ServiceNameConstants;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
import com.mhd.system.api.domain.MaterialBaseInfoFeign;
|
import com.mhd.common.core.web.page.TableDataInfo;
|
||||||
import com.mhd.system.api.domain.MaterialInventoryDTO;
|
import com.mhd.system.api.domain.*;
|
||||||
import com.mhd.system.api.domain.NoticeOrderDTO;
|
import com.mhd.system.api.factory.RemoteWmsFallbackFactory;
|
||||||
import com.mhd.system.api.factory.RemoteTicketFeignFallbackFactory;
|
|
||||||
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
import org.springframework.cloud.openfeign.FeignClient;
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.cloud.openfeign.SpringQueryMap;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -18,7 +21,8 @@ import java.util.Map;
|
|||||||
* @description: TODO
|
* @description: TODO
|
||||||
* @date 2024/5/10 8:58
|
* @date 2024/5/10 8:58
|
||||||
**/
|
**/
|
||||||
@FeignClient(contextId = "remoteWmsServiceFeign", value = ServiceNameConstants.WMS_SERVICE, fallbackFactory = RemoteTicketFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
// 目标地址由 nacos 配置项 feign.url.mhd-wms-service 指定,未配置时按服务名走服务发现
|
||||||
|
@FeignClient(contextId = "remoteWmsServiceFeign",value = ServiceNameConstants.WMS_SERVICE,url = "http://10.102.192.32:8016",fallbackFactory = RemoteWmsFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||||
public interface WmsServiceFeign {
|
public interface WmsServiceFeign {
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -64,5 +68,112 @@ public interface WmsServiceFeign {
|
|||||||
* 查询物料库存列表不分页
|
* 查询物料库存列表不分页
|
||||||
*/
|
*/
|
||||||
@GetMapping("/materialInventoryApi/listAll")
|
@GetMapping("/materialInventoryApi/listAll")
|
||||||
public AjaxResult materialInventoryApiListAll(MaterialInventoryDTO materialInventoryDTO);
|
public AjaxResult materialInventoryApiListAll(@SpringQueryMap MaterialInventoryDTO materialInventoryDTO);
|
||||||
}
|
|
||||||
|
/**
|
||||||
|
* oms下发单保存
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms下发单保存")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/omsOutOrderAdd")
|
||||||
|
public void omsOutOrderAdd(@RequestBody StockOutOrder stockOutOrder);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* oms下发单明细保存
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms下发单明细保存")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/omsOutOrderAddDetail")
|
||||||
|
public void omsOutOrderAddDetail(@RequestBody List<OutMaterialDetail> outMaterialDetails);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* oms下发单明细保存
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms下发单明细保存")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/omsOutOrderAddDeliveryDetailsLink")
|
||||||
|
public void omsOutOrderAddDeliveryDetailsLink(@RequestBody List<DeliveryDetailsLink> deliveryDetailsLinks);
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* oms下发单保存(返回执行结果,失败时OMS据此回滚下发标记,避免"OMS已下发/WMS无数据"的阻断)
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms下发单保存")
|
||||||
|
@PostMapping(value = "/stockInOrderApi/omsInOrderAdd")
|
||||||
|
public AjaxResult omsInOrderAdd(@RequestBody StockInOrder stockInOrder);
|
||||||
|
|
||||||
|
@ApiOperation("oms取消下发单保存")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/cancelExecutionOrder")
|
||||||
|
public AjaxResult omsCancelExecutionOrder(@RequestBody StockOutOrder stockOutOrder);
|
||||||
|
|
||||||
|
@ApiOperation("oms取消下发单自动分配")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/omsAutoAssign")
|
||||||
|
public void omsAutoAssign(@RequestBody StockOutOrderDTO stockOutOrderDTO);
|
||||||
|
|
||||||
|
@ApiOperation("oms出库执行")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/execution")
|
||||||
|
public AjaxResult execution(@RequestBody com.mhd.system.api.domain.StockOutOrderDTO stockOutOrderDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* oms下发前库存校验:可用库存不足时返回错误,OMS据此在推送前拦截下发,
|
||||||
|
* 避免单据先落库、分配才失败而在WMS残留"已审核"状态的垃圾单
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms下发前库存校验")
|
||||||
|
@PostMapping(value = "/stockOutOrderApi/checkOmsAssignInventory")
|
||||||
|
public AjaxResult checkOmsAssignInventory(@RequestBody List<OutMaterialDetail> outMaterialDetails);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* oms下发单明细保存(返回执行结果,明细保存含自动审核链路,失败时OMS据此回滚)
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms下发单明细保存")
|
||||||
|
@PostMapping(value = "/stockInOrderApi/omsInOrderAddDetail")
|
||||||
|
public AjaxResult omsInOrderAddDetail(@RequestBody List<InMaterialDetail> inMaterialDetails);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* oms取消下发入库执行单:WMS侧一个事务内逻辑删除下发链路产生的全部数据
|
||||||
|
* (入库单/明细、收货单/明细、收货任务、收货作业单/明细、质检单),已开始收货则报错拦截
|
||||||
|
*/
|
||||||
|
@ApiOperation("oms取消下发入库单清理")
|
||||||
|
@PostMapping(value = "/stockInOrderApi/omsCancelInOrder")
|
||||||
|
public AjaxResult omsCancelInOrder(@RequestBody StockInOrder stockInOrder);
|
||||||
|
|
||||||
|
@ApiOperation("oms查询物料列表")
|
||||||
|
@GetMapping("/materialBaseInfoApi/queryList")
|
||||||
|
public TableDataInfo getMaterialBaseInfoList(MaterialInfoDTO materialInfoDTO);
|
||||||
|
|
||||||
|
@ApiOperation("oms物料列表推送-更新推送信息")
|
||||||
|
@PostMapping("/materialBaseInfoApi/updatePushStatus")
|
||||||
|
public AjaxResult<?> updateMaterialPushStatus(@RequestParam("materialBaseInfoId") Long materialBaseInfoId,
|
||||||
|
@RequestParam("pushStatus") Integer pushStatus,
|
||||||
|
@RequestParam(value = "pushTime",required = false) String pushTime,
|
||||||
|
@RequestParam(value = "pushBy",required = false) Long pushBy,
|
||||||
|
@RequestParam(value = "pushByName",required = false) String pushByName);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据物料ID列表批量查询物料信息
|
||||||
|
*/
|
||||||
|
@GetMapping("/materialBaseInfoApi/getBatchByIds")
|
||||||
|
public TableDataInfo getBatchByIds(@RequestParam("materialBaseInfoIds") List<Long> materialBaseInfoIds);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 生成拣货单
|
||||||
|
*/
|
||||||
|
@ApiOperation("生成拣货单")
|
||||||
|
@PostMapping("/stockOutOrderApi/genPickingOrderByOms")
|
||||||
|
public AjaxResult genPickingOrderByOms(@RequestBody com.mhd.system.api.domain.StockOutOrderDTO stockOutOrderDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OMS批量签名:更新WMS入/出库单签名字段
|
||||||
|
*
|
||||||
|
* <p>OMS端勾选记录批量签名后,通过此Feign调用WMS的 /stockSignatureApi/batchSign 接口,
|
||||||
|
* 同步更新WMS stock_in_order / stock_out_order 表的签名状态、签名时间、签名图片、签名备注。</p>
|
||||||
|
*/
|
||||||
|
@ApiOperation("OMS批量签名-同步WMS入/出库单签名字段")
|
||||||
|
@PostMapping("/stockSignatureApi/batchSign")
|
||||||
|
public AjaxResult batchSignWms(@RequestBody SignatureBatchFeignDTO dto);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OMS查询WMS线路管理列表(按线路编码模糊查,OMS侧自行精确匹配),
|
||||||
|
* 出库导入时校验送貨線號/車次并回填线路名称
|
||||||
|
*/
|
||||||
|
@ApiOperation("OMS查询WMS线路管理列表")
|
||||||
|
@GetMapping("/lineManagementApi/listByApp")
|
||||||
|
public AjaxResult listLineManagement(@RequestParam("routeCode") String routeCode);
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package com.mhd.system.api;
|
||||||
|
|
||||||
|
|
||||||
|
import com.mhd.common.core.constant.ServiceNameConstants;
|
||||||
|
import com.mhd.common.core.domain.entity.R;
|
||||||
|
import com.mhd.common.core.domain.dto.YmsSysUserDTO;
|
||||||
|
import com.mhd.system.api.domain.YmsLoginUser;
|
||||||
|
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
|
||||||
|
import com.mhd.system.api.factory.RemoteXxlJobFeignFallbackFactory;
|
||||||
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
// 目标地址由 nacos 配置项 feign.url.xxl-job-service 指定,未配置时按服务名走服务发现
|
||||||
|
@FeignClient(contextId = "XxlJobService", value = ServiceNameConstants.XXL_JOB_SERVICE,url = "http://10.102.192.32:8020",fallbackFactory = RemoteXxlJobFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||||
|
public interface XxlJobServiceFeign {
|
||||||
|
|
||||||
|
|
||||||
|
@GetMapping("/user/openFeignTest")
|
||||||
|
public R<Map<String, Object>> openFeignTest(@RequestParam("param") String string);
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,56 @@
|
|||||||
|
package com.mhd.system.api;
|
||||||
|
|
||||||
|
import com.mhd.common.core.constant.ServiceNameConstants;
|
||||||
|
import com.mhd.common.core.domain.entity.R;
|
||||||
|
import com.mhd.common.core.domain.dto.YmsSysUserDTO;
|
||||||
|
import com.mhd.system.api.domain.YmsLoginUser;
|
||||||
|
import com.mhd.system.api.factory.RemoteBmsFeignFallbackFactory;
|
||||||
|
import com.mhd.system.api.feign.FeignAutoConfiguration;
|
||||||
|
import org.springframework.cloud.openfeign.FeignClient;
|
||||||
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
|
// 目标地址由 nacos 配置项 feign.url.mhd-yms-service 指定,未配置时按服务名走服务发现
|
||||||
|
@FeignClient(contextId = "YmsService", value = ServiceNameConstants.YMS_SERVICE,url = "http://10.102.192.32:8018",fallbackFactory = RemoteBmsFeignFallbackFactory.class, configuration = FeignAutoConfiguration.class)
|
||||||
|
public interface YmsServiceFeign {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取YMS用户基本信息
|
||||||
|
* @param szwlUserId 数字物流用户ID
|
||||||
|
* @return YMS登录用户基本信息
|
||||||
|
*/
|
||||||
|
@GetMapping("/system/user/inner/getYmsUserInfo/{szwlUserId}")
|
||||||
|
R<YmsLoginUser> getYmsUserInfo(@PathVariable("szwlUserId") Long szwlUserId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 获取用户详细信息
|
||||||
|
* @param userId 用户ID
|
||||||
|
* @return 用户信息
|
||||||
|
*/
|
||||||
|
@GetMapping("/system/user/inner/info/{userId}")
|
||||||
|
R<Long> innerGetInfo(@PathVariable("userId") Long userId);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 新增用户
|
||||||
|
* @param ymsSysUserDTO 用户信息
|
||||||
|
* @return 新增结果
|
||||||
|
*/
|
||||||
|
@PostMapping("/system/user/inner/add")
|
||||||
|
R<Object> innerAdd(@RequestBody YmsSysUserDTO ymsSysUserDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 修改用户
|
||||||
|
* @param ymsSysUserDTO 用户信息
|
||||||
|
* @return 修改结果
|
||||||
|
*/
|
||||||
|
@PutMapping("/system/user/inner/edit")
|
||||||
|
R<Object> innerEdit(@RequestBody YmsSysUserDTO ymsSysUserDTO);
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 删除用户
|
||||||
|
* @param userIds 用户ID数组
|
||||||
|
* @return 删除结果
|
||||||
|
*/
|
||||||
|
@DeleteMapping("/system/user/inner/remove/{userIds}")
|
||||||
|
R<Object> innerRemove(@PathVariable("userIds") Long[] userIds);
|
||||||
|
|
||||||
|
}
|
||||||
+203
@@ -0,0 +1,203 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 业务单据对象 business_document
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-06-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class BusinessDocumentFeign extends BaseVOEntity{
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务单据记录id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long businessDocumentId;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务流水")
|
||||||
|
@Excel(name = "业务流水")
|
||||||
|
private String businessFlow;
|
||||||
|
|
||||||
|
@ApiModelProperty("状态(1-未生效,2-已生效,3-已计费,4-已驳回,5-已作废")
|
||||||
|
@Excel(name = "状态", readConverterExp = "状态(1-未生效,2-已生效,3-已计费,4-已驳回,5-已作废")
|
||||||
|
private Integer businessState;
|
||||||
|
|
||||||
|
@ApiModelProperty("来源模块")
|
||||||
|
@Excel(name = "来源模块")
|
||||||
|
private String belongModule;
|
||||||
|
|
||||||
|
@ApiModelProperty("来源模块code")
|
||||||
|
@Excel(name = "来源模块code")
|
||||||
|
private String belongModuleCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("数据来源(1-系统生成,2-手工录入)")
|
||||||
|
@Excel(name = "数据来源", readConverterExp = "1=-系统生成,2-手工录入")
|
||||||
|
private Integer dataSources;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据类型id")
|
||||||
|
@Excel(name = "单据类型id")
|
||||||
|
private Long documentTypeId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据类型code")
|
||||||
|
@Excel(name = "单据类型code")
|
||||||
|
private String documentTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据类型")
|
||||||
|
@Excel(name = "单据类型")
|
||||||
|
private String documentType;
|
||||||
|
|
||||||
|
@ApiModelProperty("原始业务单号")
|
||||||
|
@Excel(name = "原始业务单号")
|
||||||
|
private String originalBusinessNum;
|
||||||
|
|
||||||
|
@ApiModelProperty("项目编码")
|
||||||
|
@Excel(name = "项目编码")
|
||||||
|
private String projectCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("项目名称")
|
||||||
|
@Excel(name = "项目名称")
|
||||||
|
private String projectName;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同编号")
|
||||||
|
@Excel(name = "合同编号")
|
||||||
|
private String contractNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同名称")
|
||||||
|
@Excel(name = "合同名称")
|
||||||
|
private String contractName;
|
||||||
|
|
||||||
|
@ApiModelProperty("账单金额")
|
||||||
|
@Excel(name = "账单金额")
|
||||||
|
private BigDecimal billAmount;
|
||||||
|
|
||||||
|
@ApiModelProperty("预计费金额")
|
||||||
|
@Excel(name = "预计费金额")
|
||||||
|
private BigDecimal estimatedCost;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级费用科目code")
|
||||||
|
@Excel(name = "一级费用科目code")
|
||||||
|
private String firstSubjectCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级费用科目(结算项)")
|
||||||
|
@Excel(name = "一级费用科目")
|
||||||
|
private String firstSubjectName;
|
||||||
|
|
||||||
|
@ApiModelProperty("二级费用科目code")
|
||||||
|
@Excel(name = "二级费用科目code")
|
||||||
|
private String secondSubjectCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("二级费用科目(结算项)")
|
||||||
|
@Excel(name = "二级费用科目")
|
||||||
|
private String secondSubjectName;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算对象id")
|
||||||
|
@Excel(name = "结算对象id")
|
||||||
|
private Long settlementCustomersId;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算对象code")
|
||||||
|
@Excel(name = "结算对象code")
|
||||||
|
private String settlementCustomersCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算对象")
|
||||||
|
@Excel(name = "结算对象")
|
||||||
|
private String settlementEntity;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "计费时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date billingTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据表单json数据")
|
||||||
|
@Excel(name = "单据表单json数据")
|
||||||
|
private String documentFormJson;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理id")
|
||||||
|
@Excel(name = "合同管理id", readConverterExp = "合同管理id")
|
||||||
|
private Long contractManageId;
|
||||||
|
|
||||||
|
@ApiModelProperty("项目管理id")
|
||||||
|
@Excel(name = "项目管理id", readConverterExp = "项目管理id")
|
||||||
|
private Long projectManageId;
|
||||||
|
|
||||||
|
@ApiModelProperty("原始流水号")
|
||||||
|
@Excel(name = "原始流水号")
|
||||||
|
private String originalSerialNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("费用类型code(服务项)")
|
||||||
|
@Excel(name = "费用类型code(服务项)")
|
||||||
|
private String serviceItemsCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("费用类型")
|
||||||
|
@Excel(name = "费用类型")
|
||||||
|
private String serviceItemsName;
|
||||||
|
|
||||||
|
@ApiModelProperty("费用类型id(服务项)")
|
||||||
|
@Excel(name = "费用类型id(服务项)")
|
||||||
|
private Long serviceItemsManageId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据备注")
|
||||||
|
@Excel(name = "单据备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("审核备注")
|
||||||
|
@Excel(name = "审核备注")
|
||||||
|
private String reviewRemarks;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算方式(1-现金,2-油卡)")
|
||||||
|
private Integer settlementWay;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
@ApiModelProperty("业务员名称")
|
||||||
|
private String salesmanName;
|
||||||
|
@ApiModelProperty("税率")
|
||||||
|
private Double taxRate;
|
||||||
|
@ApiModelProperty("收款帐户")
|
||||||
|
private String paymentAccountId;
|
||||||
|
@ApiModelProperty("收款帐户名称")
|
||||||
|
private String paymentAccountName;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费单位")
|
||||||
|
private String billingUnit;
|
||||||
|
@ApiModelProperty("计费单位2")
|
||||||
|
private String billingUnit2;
|
||||||
|
@ApiModelProperty("计费数量")
|
||||||
|
private BigDecimal billingNum;
|
||||||
|
@ApiModelProperty("计费单价")
|
||||||
|
private BigDecimal billingUnitPrice;
|
||||||
|
@ApiModelProperty("nc科目编码")
|
||||||
|
private String ncSubjectCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否推送")
|
||||||
|
private Integer isPush;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库类型")
|
||||||
|
private String warehouseType;
|
||||||
|
}
|
||||||
+110
@@ -0,0 +1,110 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合同管理详情对象 contract_manage_detail
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-06-07
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class ContractManageDetailFeignDTO extends BaseVOEntity{
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理详情id")
|
||||||
|
private Long contractManageDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理id")
|
||||||
|
@Excel(name = "合同管理id")
|
||||||
|
private Long contractManageId;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算科目类型(1-通用,2-临时)")
|
||||||
|
@Excel(name = "结算科目类型", readConverterExp = "1=-通用,2-临时")
|
||||||
|
private Integer subjectType;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级费用科目code")
|
||||||
|
@Excel(name = "一级费用科目code")
|
||||||
|
private String firstSubjectCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级费用科目")
|
||||||
|
@Excel(name = "一级费用科目")
|
||||||
|
private String firstSubjectName;
|
||||||
|
|
||||||
|
@ApiModelProperty("二级费用科目code")
|
||||||
|
@Excel(name = "二级费用科目code")
|
||||||
|
private String secondSubjectCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("二级费用科目")
|
||||||
|
@Excel(name = "二级费用科目")
|
||||||
|
private String secondSubjectName;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费策略id")
|
||||||
|
@Excel(name = "计费策略id")
|
||||||
|
private Long accountingStrategyId;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费策略")
|
||||||
|
@Excel(name = "计费策略")
|
||||||
|
private String accountingStrategy;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费策略编码")
|
||||||
|
@Excel(name = "计费策略编码")
|
||||||
|
private String accountingStrategyCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费周期")
|
||||||
|
@Excel(name = "计费周期")
|
||||||
|
private String billingAttributes;
|
||||||
|
|
||||||
|
@ApiModelProperty("计费周期编码")
|
||||||
|
@Excel(name = "计费周期编码")
|
||||||
|
private String billingAttributesCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同有效日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "合同有效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date subjectEffectiveDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同到期日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date subjectExpirationDate;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织ID集合")
|
||||||
|
private List<Long> organizationIdList;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "权限菜单ID")
|
||||||
|
private Long permissionMenuId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据类型code")
|
||||||
|
private String documentTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单据类型")
|
||||||
|
private String documentType;
|
||||||
|
|
||||||
|
@ApiModelProperty("费用类别编码")
|
||||||
|
private String serviceItemsCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("费用类别名称")
|
||||||
|
private String serviceItemsName;
|
||||||
|
}
|
||||||
+228
@@ -0,0 +1,228 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合同管理对象 contract_manage
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-06-07
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class ContractManageFeignDTO extends BaseVOEntity{
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理id")
|
||||||
|
private Long contractManageId;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("原始合同编号")
|
||||||
|
@Excel(name = "原始合同编号")
|
||||||
|
private String originalContractNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同编号")
|
||||||
|
@Excel(name = "合同编号")
|
||||||
|
private String contractNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同名称")
|
||||||
|
@Excel(name = "合同名称")
|
||||||
|
private String contractName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否通用合同(1-是,2-否)")
|
||||||
|
@Excel(name = "是否通用合同", readConverterExp = "1=-是,2-否")
|
||||||
|
private Integer commonContractFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同类型(1-仓储,2-运输,3-其他)")
|
||||||
|
@Excel(name = "合同类型", readConverterExp = "1=-仓储,2-运输,3=-其他")
|
||||||
|
private Integer contractType;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同状态(1-未生效,2-使用中,3-已过期,4-已作废)")
|
||||||
|
@Excel(name = "合同状态", readConverterExp = "1=-未生效,2-使用中,3-已过期,4-已作废")
|
||||||
|
private Integer contractState;
|
||||||
|
|
||||||
|
@ApiModelProperty("签订单位")
|
||||||
|
@Excel(name = "签订单位")
|
||||||
|
private String signingUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算主体")
|
||||||
|
@Excel(name = "结算主体")
|
||||||
|
private String settlementCustomers;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算主体id")
|
||||||
|
@Excel(name = "结算主体id")
|
||||||
|
private Long settlementCustomersId;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算主体code")
|
||||||
|
@Excel(name = "结算主体code")
|
||||||
|
private String settlementCustomersCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("我司身份(1-甲方,2-乙方)")
|
||||||
|
@Excel(name = "我司身份", readConverterExp = "1=-甲方,2-乙方")
|
||||||
|
private Integer ourIdentity;
|
||||||
|
|
||||||
|
@ApiModelProperty("账期(1-每月,2-双月,3-季度)")
|
||||||
|
@Excel(name = "账期", readConverterExp = "1=-每月,2-双月,3-季度")
|
||||||
|
private Integer accountingPeriod;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同签订日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "合同签订日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date signingDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同生效日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "合同生效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date effectiveDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同到期日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "合同到期日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date expirationDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同正本附件地址")
|
||||||
|
@Excel(name = "合同正本附件地址")
|
||||||
|
private String contractOriginalUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("廉政协议附件地址")
|
||||||
|
@Excel(name = "廉政协议附件地址")
|
||||||
|
private String integrityAgreementUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("安全协议附件地址")
|
||||||
|
@Excel(name = "安全协议附件地址")
|
||||||
|
private String securityProtocolUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("其他附件地址")
|
||||||
|
@Excel(name = "其他附件地址")
|
||||||
|
private String otherAttachmentsUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同正本附件原始文件名")
|
||||||
|
private String contractOriginalName;
|
||||||
|
|
||||||
|
@ApiModelProperty("廉政协议附件原始文件名")
|
||||||
|
private String integrityAgreementName;
|
||||||
|
|
||||||
|
@ApiModelProperty("安全协议附件原始文件名")
|
||||||
|
private String securityProtocolName;
|
||||||
|
|
||||||
|
@ApiModelProperty("其他附件原始文件名(多文件时与 otherAttachmentsUrl 同分隔符、同顺序)")
|
||||||
|
private String otherAttachmentsName;
|
||||||
|
|
||||||
|
@ApiModelProperty("我司签订人")
|
||||||
|
@Excel(name = "我司签订人")
|
||||||
|
private String ourSinged;
|
||||||
|
|
||||||
|
@ApiModelProperty("我司签订人联系方式")
|
||||||
|
@Excel(name = "我司签订人联系方式")
|
||||||
|
private String ourSingedPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("我司经办人")
|
||||||
|
@Excel(name = "我司经办人")
|
||||||
|
private String ourOperator;
|
||||||
|
|
||||||
|
@ApiModelProperty("我司经办人联系方式")
|
||||||
|
@Excel(name = "我司经办人联系方式")
|
||||||
|
private String ourOperatorPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("对方签订人")
|
||||||
|
@Excel(name = "对方签订人")
|
||||||
|
private String theySinged;
|
||||||
|
|
||||||
|
@ApiModelProperty("对方签订人联系方式")
|
||||||
|
@Excel(name = "对方签订人联系方式")
|
||||||
|
private String theySingedPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("对方经办人")
|
||||||
|
@Excel(name = "对方经办人")
|
||||||
|
private String theyOperator;
|
||||||
|
|
||||||
|
@ApiModelProperty("对方经办人联系方式")
|
||||||
|
@Excel(name = "对方经办人联系方式")
|
||||||
|
private String theyOperatorPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织ID集合")
|
||||||
|
private List<Long> organizationIdList;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "权限菜单ID")
|
||||||
|
private Long permissionMenuId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "合同科目详情列表")
|
||||||
|
private List<ContractManageDetailFeignDTO> contractManageDetailDTOList;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理ids")
|
||||||
|
private String contractManageIds;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "合同签订查询条件开始日期")
|
||||||
|
private String signingDateStart;
|
||||||
|
@ApiModelProperty(name = "合同签订查询条件结束日期")
|
||||||
|
private String signingDateEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "合同生效查询条件开始日期")
|
||||||
|
private String effectiveDateStart;
|
||||||
|
@ApiModelProperty(name = "合同生效查询条件结束日期")
|
||||||
|
private String effectiveDateEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "合同到期查询条件开始日期")
|
||||||
|
private String expirationDateStart;
|
||||||
|
@ApiModelProperty(name = "合同到期查询条件结束日期")
|
||||||
|
private String expirationDateEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "结算主体基础数据id(可以是用户id也可以是企业id)")
|
||||||
|
private String settlementId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "是否自动出账(1-是,2-否)")
|
||||||
|
private Integer automaticFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty("出账日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
private Date paymentDate;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "出账天数")
|
||||||
|
private Integer billDays;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "主体类型(1-货主,2-客户,3-承运商)")
|
||||||
|
private Integer principalType;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户类型")
|
||||||
|
private String customerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户类型编码")
|
||||||
|
private String customerTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "是否包含运输费用(1-包含,2-包含)")
|
||||||
|
private Integer transportationCosts;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户类型")
|
||||||
|
private String contractRentType;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户类型编码")
|
||||||
|
private String contractRentTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库温层类型")
|
||||||
|
private String warehouseTempLayerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库温层类型编码")
|
||||||
|
private String warehouseTempLayerTypeName;
|
||||||
|
}
|
||||||
+52
@@ -0,0 +1,52 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 合约信息规则维护表
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-06-07
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class ContractManageParametersFeign extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同管理id")
|
||||||
|
private Long contractManageId;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同编号")
|
||||||
|
@Excel(name = "合同编号")
|
||||||
|
private String contractNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同名称")
|
||||||
|
@Excel(name = "合同名称")
|
||||||
|
private String contractName;
|
||||||
|
|
||||||
|
@ApiModelProperty("合约信息规则维护")
|
||||||
|
@Excel(name = "合约信息规则维护表")
|
||||||
|
private String parametersJson;
|
||||||
|
}
|
||||||
+50
@@ -0,0 +1,50 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
//package com.mhd.wms.domain.deliveryDetailsLink.entity;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class DeliveryDetailsLink extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("编号")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long id;
|
||||||
|
@ApiModelProperty("oms编号")
|
||||||
|
private Long omsId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "业务单id")
|
||||||
|
private Long orderId;
|
||||||
|
@ApiModelProperty(value = "业务单号")
|
||||||
|
private String orderNumber;
|
||||||
|
@ApiModelProperty(value = "退货入库单号")
|
||||||
|
private String returnOrderNumber;
|
||||||
|
@ApiModelProperty(value = "类别")
|
||||||
|
private String category;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "发票编号")
|
||||||
|
private String invoiceNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "客户编号")
|
||||||
|
private String customerNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "配送名称")
|
||||||
|
private String deliveryName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "箱")
|
||||||
|
private Integer box;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "包")
|
||||||
|
private Integer bag;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "金额")
|
||||||
|
private BigDecimal amount;
|
||||||
|
|
||||||
|
}
|
||||||
+108
@@ -0,0 +1,108 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 电子签名同步DTO(WMS端通过Feign调用OMS)
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class ElectronicSignatureSyncDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty("订单ID")
|
||||||
|
private Long orderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单号")
|
||||||
|
private String orderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单类型:IN-入库 OUT-出库")
|
||||||
|
private String orderType;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库ID")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建人")
|
||||||
|
private Long createBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建人姓名")
|
||||||
|
private String createByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料明细列表")
|
||||||
|
private List<MaterialDetailItem> materialDetailList;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public static class MaterialDetailItem {
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息ID")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位代码")
|
||||||
|
private String unitCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位名称")
|
||||||
|
private String unitName;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("LOT编号")
|
||||||
|
private String lotNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库ID")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区ID")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区编码")
|
||||||
|
private String storageSectionCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区名称")
|
||||||
|
private String storageSectionName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位ID")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务唯一ID")
|
||||||
|
private Long uniqueId;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,24 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(description = "企业国别DTO")
|
||||||
|
public class ErpCountryDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty("主键id")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty("ERP国别编码")
|
||||||
|
private String erpCountryCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("ERP国别名称")
|
||||||
|
private String erpCountryName;
|
||||||
|
|
||||||
|
@ApiModelProperty("所属组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
}
|
||||||
+22
@@ -0,0 +1,22 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(description = "企业单位DTO")
|
||||||
|
public class ErpEnterpriseUnitDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty("企业单位id")
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
@ApiModelProperty("企业单位名称")
|
||||||
|
private String erpName;
|
||||||
|
|
||||||
|
@ApiModelProperty("企业单位编码")
|
||||||
|
private String erpCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
}
|
||||||
@@ -0,0 +1,54 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GwLogDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty("日志id")
|
||||||
|
private Long logId;
|
||||||
|
|
||||||
|
@ApiModelProperty("类型")
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务ID")
|
||||||
|
private Long businessId;
|
||||||
|
|
||||||
|
@ApiModelProperty("请求报文")
|
||||||
|
private String requestBody;
|
||||||
|
|
||||||
|
@ApiModelProperty("响应报文")
|
||||||
|
private String responseBody;
|
||||||
|
|
||||||
|
@ApiModelProperty("状态(1-初始,2-成功,3-失败)")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("错误信息")
|
||||||
|
private String errorMsg;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送时间")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date sendTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建人")
|
||||||
|
private Long createBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建时间")
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,64 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class GwLogW implements Serializable {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("日志id")
|
||||||
|
private Long logId;
|
||||||
|
|
||||||
|
@ApiModelProperty("类型")
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务ID")
|
||||||
|
private Long businessId;
|
||||||
|
|
||||||
|
@ApiModelProperty("请求报文")
|
||||||
|
private String requestBody;
|
||||||
|
|
||||||
|
@ApiModelProperty("响应报文")
|
||||||
|
private String responseBody;
|
||||||
|
|
||||||
|
@ApiModelProperty("状态(1-初始,2-成功,3-失败)")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("错误信息")
|
||||||
|
private String errorMsg;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送时间")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date sendTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建人")
|
||||||
|
private Long createBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建时间")
|
||||||
|
private Date createTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("删除标记:1-正常,0-删除")
|
||||||
|
private Integer delFlag;
|
||||||
|
|
||||||
|
// @ApiModelProperty("推送人姓名")
|
||||||
|
// private String pushByName;
|
||||||
|
}
|
||||||
@@ -0,0 +1,402 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料明细对象 material_detail
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class InMaterialDetail extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单物料明细id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long materialDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务唯一id")
|
||||||
|
@JsonSerialize(using = ToStringSerializer.class)
|
||||||
|
private Long uniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息id")
|
||||||
|
@Excel(name = "物料基础信息id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
@Excel(name = "物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
@Excel(name = "物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("收货数量")
|
||||||
|
@Excel(name = "收货数量")
|
||||||
|
private BigDecimal receiptQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架数量")
|
||||||
|
@Excel(name = "上架数量")
|
||||||
|
private BigDecimal shelvesQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("作业数量(例如:收货数量 上架数量)")
|
||||||
|
@Excel(name = "作业数量(例如:收货数量 上架数量)")
|
||||||
|
private BigDecimal actualQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("收货状态: 1-待收货 2-收货中 3-已收货 4-已收货(少收) 5-已收货(超收)")
|
||||||
|
@Excel(name = "收货状态: 1-待收货 2-收货中 3-已收货 4-已收货(少收) 5-已收货(超收)")
|
||||||
|
private Integer receiptStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架状态: 1-待上架 2-上架中 3-已上架 4-已上架(少上) 5-已上架(超上)")
|
||||||
|
@Excel(name = "上架状态: 1-待上架 2-上架中 3-已上架 4-已上架(少上) 5-已上架(超上)")
|
||||||
|
private Integer shelvesStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格id")
|
||||||
|
@Excel(name = "包装规格id")
|
||||||
|
private Long packId;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格编码")
|
||||||
|
@Excel(name = "包装规格编码")
|
||||||
|
private String packCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格名称")
|
||||||
|
@Excel(name = "包装规格名称")
|
||||||
|
private String packName;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装详情id")
|
||||||
|
@Excel(name = "包装详情id")
|
||||||
|
private Long packDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位代码:EA IP CS PL OT")
|
||||||
|
@Excel(name = "单位代码:EA IP CS PL OT")
|
||||||
|
private String unitCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位名称")
|
||||||
|
@Excel(name = "单位名称")
|
||||||
|
private String unitName;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位数量")
|
||||||
|
@Excel(name = "单位数量")
|
||||||
|
private BigDecimal unitNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料仓库控制信息id")
|
||||||
|
@Excel(name = "物料仓库控制信息id")
|
||||||
|
private Long materialWarehouseControlId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否序列号管理: 1-是 2-否")
|
||||||
|
@Excel(name = "是否序列号管理: 1-是 2-否")
|
||||||
|
private Integer serialNumberManage;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否质检管理: 1-是 2-否")
|
||||||
|
@Excel(name = "是否质检管理: 1-是 2-否")
|
||||||
|
private Integer qualityInspectionManage;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
|
||||||
|
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
|
||||||
|
private Integer qualityInspectionStage;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检规则: 1-全检 2-抽检 ")
|
||||||
|
@Excel(name = "质检规则: 1-全检 2-抽检 ")
|
||||||
|
private Integer qualityInspectionRule;
|
||||||
|
|
||||||
|
@ApiModelProperty("抽检比例")
|
||||||
|
@Excel(name = "抽检比例")
|
||||||
|
private BigDecimal qualityInspectionRatio;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检项: 1-包装 2-纯度")
|
||||||
|
@Excel(name = "质检项: 1-包装 2-纯度")
|
||||||
|
private Integer qualityInspectionTerm;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检结果: 1-正常 2-异常")
|
||||||
|
@Excel(name = "质检结果: 1-正常 2-异常")
|
||||||
|
private Integer qualityInspectionResults;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否允许超收: 1-是 2-否")
|
||||||
|
@Excel(name = "是否允许超收: 1-是 2-否")
|
||||||
|
private Integer allowOvercharge;
|
||||||
|
|
||||||
|
@ApiModelProperty("超收比例")
|
||||||
|
@Excel(name = "超收比例")
|
||||||
|
private BigDecimal overchargeRatio;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
@Excel(name = "批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态编码")
|
||||||
|
@Excel(name = "物料状态编码")
|
||||||
|
private String materialStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态名称")
|
||||||
|
@Excel(name = "物料状态名称")
|
||||||
|
private String materialStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配规则id")
|
||||||
|
@Excel(name = "分配规则id")
|
||||||
|
private Long distributeRuleId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配规则编码")
|
||||||
|
@Excel(name = "分配规则编码")
|
||||||
|
private String distributeRuleCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配规则名称")
|
||||||
|
@Excel(name = "分配规则名称")
|
||||||
|
private String distributeRuleName;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器id")
|
||||||
|
@Excel(name = "容器id")
|
||||||
|
private Long containerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器编码")
|
||||||
|
@Excel(name = "容器编码")
|
||||||
|
private String containerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型 数据字典")
|
||||||
|
@Excel(name = "容器类型 数据字典")
|
||||||
|
private String containerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型名称 数据字典")
|
||||||
|
@Excel(name = "容器类型名称 数据字典")
|
||||||
|
private String containerTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架仓库编码")
|
||||||
|
@Excel(name = "上架仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库区id")
|
||||||
|
@Excel(name = "上架库区id")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库区编码")
|
||||||
|
@Excel(name = "上架库区编码")
|
||||||
|
private String storageCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库区名称")
|
||||||
|
@Excel(name = "上架库区名称")
|
||||||
|
private String storageName;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库位id")
|
||||||
|
@Excel(name = "上架库位id")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库位编码")
|
||||||
|
@Excel(name = "上架库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库位名称")
|
||||||
|
@Excel(name = "上架库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("层级深度,从一级开始递增")
|
||||||
|
private Integer level;
|
||||||
|
|
||||||
|
@ApiModelProperty("父级唯一Id")
|
||||||
|
private Long parentUniqueId;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
// ========== 报关相关明细字段 ==========
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
@Excel(name = "规格型号/ITEM")
|
||||||
|
private String specificationModel;
|
||||||
|
|
||||||
|
@ApiModelProperty("SKU码")
|
||||||
|
@Excel(name = "SKU码")
|
||||||
|
private String skuCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("Invoice No.")
|
||||||
|
@Excel(name = "Invoice No.")
|
||||||
|
private String invoiceNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("升")
|
||||||
|
@Excel(name = "升")
|
||||||
|
private BigDecimal liter;
|
||||||
|
|
||||||
|
@ApiModelProperty("尺寸")
|
||||||
|
@Excel(name = "尺寸")
|
||||||
|
private String dimensions;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报单位")
|
||||||
|
@Excel(name = "申报单位")
|
||||||
|
private String declarationUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("Batch Ref NO's")
|
||||||
|
@Excel(name = "Batch Ref NO's")
|
||||||
|
private String batchRefNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Sheet Ref NO's")
|
||||||
|
@Excel(name = "Sheet Ref NO's")
|
||||||
|
private String sheetRefNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("原产国")
|
||||||
|
@Excel(name = "原产国")
|
||||||
|
private String originCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("箱号/卡板号")
|
||||||
|
@Excel(name = "箱号/卡板号")
|
||||||
|
private String boxPalletNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("币制")
|
||||||
|
@Excel(name = "币制")
|
||||||
|
private String currency;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位")
|
||||||
|
@Excel(name = "单位")
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报数量")
|
||||||
|
@Excel(name = "申报数量")
|
||||||
|
private BigDecimal declaredQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("箱数")
|
||||||
|
@Excel(name = "箱数")
|
||||||
|
private BigDecimal boxCount;
|
||||||
|
|
||||||
|
@ApiModelProperty("件数")
|
||||||
|
@Excel(name = "件数")
|
||||||
|
private BigDecimal pieceCount;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库数量(输入大于等于0的数字,可以为小数)")
|
||||||
|
@Excel(name = "入库数量")
|
||||||
|
private BigDecimal inboundQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("总净重(KG)")
|
||||||
|
@Excel(name = "总净重(KG)")
|
||||||
|
private BigDecimal totalNetWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("总毛重(KG)")
|
||||||
|
@Excel(name = "总毛重(KG)")
|
||||||
|
private BigDecimal totalGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("总体积(CBM)")
|
||||||
|
@Excel(name = "总体积(CBM)")
|
||||||
|
private BigDecimal totalVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("总面积(SQM)")
|
||||||
|
@Excel(name = "总面积(SQM)")
|
||||||
|
private BigDecimal totalArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("总价")
|
||||||
|
@Excel(name = "总价")
|
||||||
|
private BigDecimal totalPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同收费")
|
||||||
|
@Excel(name = "合同收费")
|
||||||
|
private BigDecimal contractFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("每月仓租")
|
||||||
|
@Excel(name = "每月仓租")
|
||||||
|
private BigDecimal monthlyWarehouseFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("半月仓租")
|
||||||
|
@Excel(name = "半月仓租")
|
||||||
|
private BigDecimal halfMonthWhFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("折扣(%)")
|
||||||
|
@Excel(name = "折扣(%)")
|
||||||
|
private BigDecimal discountRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("单体积(CBM)")
|
||||||
|
@Excel(name = "单体积(CBM)")
|
||||||
|
private BigDecimal singleVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("单毛重(KG)")
|
||||||
|
@Excel(name = "单毛重(KG)")
|
||||||
|
private BigDecimal singleGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("lot编号")
|
||||||
|
@Excel(name = "lot编号")
|
||||||
|
private String lotNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("oms入库单详情id")
|
||||||
|
@Excel(name = "oms入库单详情id")
|
||||||
|
private String omsInMaterialDetail;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "饮用时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||||
|
private Date drinkDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("过期日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private Date expiryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("来货验收是否合格;1 合格,0 不合格")
|
||||||
|
@Excel(name = "来货验收是否合格;1 合格,0 不合格")
|
||||||
|
private String arrivalAcceptQualified;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装是否破损;1 破损,0 完好")
|
||||||
|
@Excel(name = "包装是否破损;1 破损,0 完好")
|
||||||
|
private String packageDamaged;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否解冻 / 水渍;1 是,0 否")
|
||||||
|
@Excel(name = "是否解冻 / 水渍;1 是,0 否")
|
||||||
|
private String isThawWaterstain;
|
||||||
|
|
||||||
|
@ApiModelProperty("问题货是否已通知客户;1 已通知,0 未通知")
|
||||||
|
@Excel(name = "问题货是否已通知客户;1 已通知,0 未通知")
|
||||||
|
private String notifyCustomerAbnormal;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
}
|
||||||
+371
@@ -0,0 +1,371 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料明细对象 material_detail
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class InMaterialDetailTZPD extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单物料明细id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long materialDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务唯一id")
|
||||||
|
@JsonSerialize(using = ToStringSerializer.class)
|
||||||
|
private Long uniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息id")
|
||||||
|
@Excel(name = "物料基础信息id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
@Excel(name = "物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
@Excel(name = "物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("收货数量")
|
||||||
|
@Excel(name = "收货数量")
|
||||||
|
private BigDecimal receiptQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架数量")
|
||||||
|
@Excel(name = "上架数量")
|
||||||
|
private BigDecimal shelvesQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("作业数量(例如:收货数量 上架数量)")
|
||||||
|
@Excel(name = "作业数量(例如:收货数量 上架数量)")
|
||||||
|
private BigDecimal actualQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("收货状态: 1-待收货 2-收货中 3-已收货 4-已收货(少收) 5-已收货(超收)")
|
||||||
|
@Excel(name = "收货状态: 1-待收货 2-收货中 3-已收货 4-已收货(少收) 5-已收货(超收)")
|
||||||
|
private Integer receiptStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架状态: 1-待上架 2-上架中 3-已上架 4-已上架(少上) 5-已上架(超上)")
|
||||||
|
@Excel(name = "上架状态: 1-待上架 2-上架中 3-已上架 4-已上架(少上) 5-已上架(超上)")
|
||||||
|
private Integer shelvesStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格id")
|
||||||
|
@Excel(name = "包装规格id")
|
||||||
|
private Long packId;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格编码")
|
||||||
|
@Excel(name = "包装规格编码")
|
||||||
|
private String packCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格名称")
|
||||||
|
@Excel(name = "包装规格名称")
|
||||||
|
private String packName;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装详情id")
|
||||||
|
@Excel(name = "包装详情id")
|
||||||
|
private Long packDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位代码:EA IP CS PL OT")
|
||||||
|
@Excel(name = "单位代码:EA IP CS PL OT")
|
||||||
|
private String unitCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位名称")
|
||||||
|
@Excel(name = "单位名称")
|
||||||
|
private String unitName;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位数量")
|
||||||
|
@Excel(name = "单位数量")
|
||||||
|
private BigDecimal unitNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料仓库控制信息id")
|
||||||
|
@Excel(name = "物料仓库控制信息id")
|
||||||
|
private Long materialWarehouseControlId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否序列号管理: 1-是 2-否")
|
||||||
|
@Excel(name = "是否序列号管理: 1-是 2-否")
|
||||||
|
private Integer serialNumberManage;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否质检管理: 1-是 2-否")
|
||||||
|
@Excel(name = "是否质检管理: 1-是 2-否")
|
||||||
|
private Integer qualityInspectionManage;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检阶段: 1-收货前 2-收货后上架前")
|
||||||
|
@Excel(name = "质检阶段: 1-收货前 2-收货后上架前")
|
||||||
|
private Integer qualityInspectionStage;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检规则: 1-全检 2-抽检 ")
|
||||||
|
@Excel(name = "质检规则: 1-全检 2-抽检 ")
|
||||||
|
private Integer qualityInspectionRule;
|
||||||
|
|
||||||
|
@ApiModelProperty("抽检比例")
|
||||||
|
@Excel(name = "抽检比例")
|
||||||
|
private BigDecimal qualityInspectionRatio;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检项: 1-包装 2-纯度")
|
||||||
|
@Excel(name = "质检项: 1-包装 2-纯度")
|
||||||
|
private Integer qualityInspectionTerm;
|
||||||
|
|
||||||
|
@ApiModelProperty("质检结果: 1-正常 2-异常")
|
||||||
|
@Excel(name = "质检结果: 1-正常 2-异常")
|
||||||
|
private Integer qualityInspectionResults;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否允许超收: 1-是 2-否")
|
||||||
|
@Excel(name = "是否允许超收: 1-是 2-否")
|
||||||
|
private Integer allowOvercharge;
|
||||||
|
|
||||||
|
@ApiModelProperty("超收比例")
|
||||||
|
@Excel(name = "超收比例")
|
||||||
|
private BigDecimal overchargeRatio;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
@Excel(name = "批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态编码")
|
||||||
|
@Excel(name = "物料状态编码")
|
||||||
|
private String materialStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态名称")
|
||||||
|
@Excel(name = "物料状态名称")
|
||||||
|
private String materialStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配规则id")
|
||||||
|
@Excel(name = "分配规则id")
|
||||||
|
private Long distributeRuleId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配规则编码")
|
||||||
|
@Excel(name = "分配规则编码")
|
||||||
|
private String distributeRuleCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配规则名称")
|
||||||
|
@Excel(name = "分配规则名称")
|
||||||
|
private String distributeRuleName;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器id")
|
||||||
|
@Excel(name = "容器id")
|
||||||
|
private Long containerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器编码")
|
||||||
|
@Excel(name = "容器编码")
|
||||||
|
private String containerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型 数据字典")
|
||||||
|
@Excel(name = "容器类型 数据字典")
|
||||||
|
private String containerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型名称 数据字典")
|
||||||
|
@Excel(name = "容器类型名称 数据字典")
|
||||||
|
private String containerTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架仓库编码")
|
||||||
|
@Excel(name = "上架仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库区id")
|
||||||
|
@Excel(name = "上架库区id")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库区编码")
|
||||||
|
@Excel(name = "上架库区编码")
|
||||||
|
private String storageCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库区名称")
|
||||||
|
@Excel(name = "上架库区名称")
|
||||||
|
private String storageName;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库位id")
|
||||||
|
@Excel(name = "上架库位id")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库位编码")
|
||||||
|
@Excel(name = "上架库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架库位名称")
|
||||||
|
@Excel(name = "上架库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("层级深度,从一级开始递增")
|
||||||
|
private Integer level;
|
||||||
|
|
||||||
|
@ApiModelProperty("父级唯一Id")
|
||||||
|
private Long parentUniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
// ========== 报关相关明细字段 ==========
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
@Excel(name = "规格型号/ITEM")
|
||||||
|
private String specificationModel;
|
||||||
|
|
||||||
|
@ApiModelProperty("SKU码")
|
||||||
|
@Excel(name = "SKU码")
|
||||||
|
private String skuCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("Invoice No.")
|
||||||
|
@Excel(name = "Invoice No.")
|
||||||
|
private String invoiceNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("升")
|
||||||
|
@Excel(name = "升")
|
||||||
|
private BigDecimal liter;
|
||||||
|
|
||||||
|
@ApiModelProperty("尺寸")
|
||||||
|
@Excel(name = "尺寸")
|
||||||
|
private String dimensions;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报单位")
|
||||||
|
@Excel(name = "申报单位")
|
||||||
|
private String declarationUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("Batch Ref NO's")
|
||||||
|
@Excel(name = "Batch Ref NO's")
|
||||||
|
private String batchRefNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Sheet Ref NO's")
|
||||||
|
@Excel(name = "Sheet Ref NO's")
|
||||||
|
private String sheetRefNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("原产国")
|
||||||
|
@Excel(name = "原产国")
|
||||||
|
private String originCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("箱号/卡板号")
|
||||||
|
@Excel(name = "箱号/卡板号")
|
||||||
|
private String boxPalletNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("币制")
|
||||||
|
@Excel(name = "币制")
|
||||||
|
private String currency;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位")
|
||||||
|
@Excel(name = "单位")
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报数量")
|
||||||
|
@Excel(name = "申报数量")
|
||||||
|
private BigDecimal declaredQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("箱数")
|
||||||
|
@Excel(name = "箱数")
|
||||||
|
private BigDecimal boxCount;
|
||||||
|
|
||||||
|
@ApiModelProperty("件数")
|
||||||
|
@Excel(name = "件数")
|
||||||
|
private BigDecimal pieceCount;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库数量(输入大于等于0的数字,可以为小数)")
|
||||||
|
@Excel(name = "入库数量")
|
||||||
|
private BigDecimal inboundQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("总净重(KG)")
|
||||||
|
@Excel(name = "总净重(KG)")
|
||||||
|
private BigDecimal totalNetWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("总毛重(KG)")
|
||||||
|
@Excel(name = "总毛重(KG)")
|
||||||
|
private BigDecimal totalGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("总体积(CBM)")
|
||||||
|
@Excel(name = "总体积(CBM)")
|
||||||
|
private BigDecimal totalVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("总面积(SQM)")
|
||||||
|
@Excel(name = "总面积(SQM)")
|
||||||
|
private BigDecimal totalArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("总价")
|
||||||
|
@Excel(name = "总价")
|
||||||
|
private BigDecimal totalPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同收费")
|
||||||
|
@Excel(name = "合同收费")
|
||||||
|
private BigDecimal contractFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("每月仓租")
|
||||||
|
@Excel(name = "每月仓租")
|
||||||
|
private BigDecimal monthlyWarehouseFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("半月仓租")
|
||||||
|
@Excel(name = "半月仓租")
|
||||||
|
private BigDecimal halfMonthWhFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("折扣(%)")
|
||||||
|
@Excel(name = "折扣(%)")
|
||||||
|
private BigDecimal discountRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("单体积(CBM)")
|
||||||
|
@Excel(name = "单体积(CBM)")
|
||||||
|
private BigDecimal singleVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("单毛重(KG)")
|
||||||
|
@Excel(name = "单毛重(KG)")
|
||||||
|
private BigDecimal singleGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("lot编号")
|
||||||
|
@Excel(name = "lot编号")
|
||||||
|
private String lotNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("oms入库单详情id")
|
||||||
|
@Excel(name = "oms入库单详情id")
|
||||||
|
private String omsInMaterialDetail;
|
||||||
|
}
|
||||||
+202
@@ -0,0 +1,202 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 库存调整记录对象 inventory_adjustment_record
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-07-17
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class InventoryAdjustmentRecord extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("库存调整记录id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long inventoryAdjustmentId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料库存id")
|
||||||
|
private Long materialInventoryId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息id")
|
||||||
|
@Excel(name = "物料基础信息id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
@Excel(name = "物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
@Excel(name = "物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区id")
|
||||||
|
@Excel(name = "库区id")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区编码")
|
||||||
|
@Excel(name = "库区编码")
|
||||||
|
private String storageCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区名称")
|
||||||
|
@Excel(name = "库区名称")
|
||||||
|
private String storageName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位id")
|
||||||
|
@Excel(name = "库位id")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
@Excel(name = "库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位名称")
|
||||||
|
@Excel(name = "库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整类型:0:无状态 1:数量调整 :2:状态调整 3:库存冻结")
|
||||||
|
@Excel(name = "调整类型:0:无状态 1:数量调整 :2:状态调整 3:库存冻结")
|
||||||
|
private Long adjustType;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整方向:0:无状态 1:增库存 2:减库存")
|
||||||
|
@Excel(name = "调整方向:0:无状态 1:增库存 2:减库存")
|
||||||
|
private Long adjustDirection;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前状态编码")
|
||||||
|
@Excel(name = "调整前状态编码")
|
||||||
|
private String adjustBeforeStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前状态名称")
|
||||||
|
@Excel(name = "调整前状态名称")
|
||||||
|
private String adjustBeforeStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后状态编码")
|
||||||
|
@Excel(name = "调整后状态编码")
|
||||||
|
private String adjustAfterStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后状态名称")
|
||||||
|
@Excel(name = "调整后状态名称")
|
||||||
|
private String adjustAfterStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前库存数量")
|
||||||
|
@Excel(name = "调整前库存数量")
|
||||||
|
private BigDecimal inventoryBeforeQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前可用数量")
|
||||||
|
@Excel(name = "调整前可用数量")
|
||||||
|
private BigDecimal allocationBeforeQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前冻结数量")
|
||||||
|
@Excel(name = "调整前冻结数量")
|
||||||
|
private BigDecimal freezeBeforeQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后库存数量")
|
||||||
|
@Excel(name = "调整后库存数量")
|
||||||
|
private BigDecimal inventoryAfterQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后可用数量")
|
||||||
|
@Excel(name = "调整后可用数量")
|
||||||
|
private BigDecimal allocationAfterQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后冻结数量")
|
||||||
|
@Excel(name = "调整后冻结数量")
|
||||||
|
private BigDecimal freezeAfterQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整动作")
|
||||||
|
@Excel(name = "调整动作")
|
||||||
|
private String adjustAction;
|
||||||
|
|
||||||
|
@ApiModelProperty("关联单号")
|
||||||
|
@Excel(name = "关联单号")
|
||||||
|
private String relateNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前净重(KG)")
|
||||||
|
@Excel(name = "调整前净重(KG)")
|
||||||
|
private BigDecimal netWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前毛重(KG)")
|
||||||
|
@Excel(name = "调整前毛重(KG)")
|
||||||
|
private BigDecimal grossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前体积")
|
||||||
|
@Excel(name = "调整前体积")
|
||||||
|
private BigDecimal volume;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整前面积")
|
||||||
|
@Excel(name = "调整前面积")
|
||||||
|
private BigDecimal area;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后净重(KG)")
|
||||||
|
@Excel(name = "调整后净重(KG)")
|
||||||
|
private BigDecimal adjustedNetWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后毛重(KG)")
|
||||||
|
@Excel(name = "调整后毛重(KG)")
|
||||||
|
private BigDecimal adjustedGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后体积")
|
||||||
|
@Excel(name = "调整后体积")
|
||||||
|
private BigDecimal adjustedVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("调整后面积")
|
||||||
|
@Excel(name = "调整后面积")
|
||||||
|
private BigDecimal adjustedArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("LOT编号")
|
||||||
|
@Excel(name = "LOT编号")
|
||||||
|
private String lotNumber;
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
@Excel(name = "批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
}
|
||||||
+5
@@ -6,6 +6,7 @@ import io.swagger.annotations.ApiModelProperty;
|
|||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
import lombok.EqualsAndHashCode;
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -66,6 +67,10 @@ public class MaterialBarCodeFeign extends BaseVOEntity{
|
|||||||
@Excel(name = "名称")
|
@Excel(name = "名称")
|
||||||
private String name;
|
private String name;
|
||||||
|
|
||||||
|
@ApiModelProperty("数量")
|
||||||
|
@Excel(name = "数量")
|
||||||
|
private BigDecimal number;
|
||||||
|
|
||||||
@ApiModelProperty("备注")
|
@ApiModelProperty("备注")
|
||||||
@Excel(name = "备注")
|
@Excel(name = "备注")
|
||||||
private String remark;
|
private String remark;
|
||||||
|
|||||||
+55
-1
@@ -202,6 +202,19 @@ public class MaterialBaseInfoFeign extends BaseVOEntity{
|
|||||||
|
|
||||||
@ApiModelProperty("法定第二单位")
|
@ApiModelProperty("法定第二单位")
|
||||||
private String statutorySecondUnit;
|
private String statutorySecondUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否抄码: 1-是 2-否")
|
||||||
|
@Excel(name = "是否抄码: 1-是 2-否")
|
||||||
|
private Integer copyCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货物类型:0-物料 1-半成品 2-成品")
|
||||||
|
@Excel(name = "货物类型:0-物料 1-半成品 2-成品")
|
||||||
|
private Integer goodsType;
|
||||||
|
|
||||||
|
@ApiModelProperty("毛重(kg)")
|
||||||
|
@Excel(name = "毛重(kg)")
|
||||||
|
private BigDecimal grossWeight;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 规格型号
|
* 规格型号
|
||||||
*/
|
*/
|
||||||
@@ -211,5 +224,46 @@ public class MaterialBaseInfoFeign extends BaseVOEntity{
|
|||||||
|
|
||||||
@ApiModelProperty("币制")
|
@ApiModelProperty("币制")
|
||||||
private String currency;
|
private String currency;
|
||||||
}
|
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("复合条件查询 物料名称 物料编码 物料条码")
|
||||||
|
private String compoundOrQuery;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次ID")
|
||||||
|
private Long batchId;
|
||||||
|
|
||||||
|
@ApiModelProperty("保额")
|
||||||
|
@Excel(name = "保额")
|
||||||
|
private BigDecimal insureAmount;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "收费标准")
|
||||||
|
private BigDecimal chargeStandard;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "单位")
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织(多个用,分开)")
|
||||||
|
private String orgId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "是否正常物料: 0-是 1-否")
|
||||||
|
private Integer isNormalMaterial;
|
||||||
|
|
||||||
|
@ApiModelProperty("每月仓租")
|
||||||
|
@Excel(name = "每月仓租")
|
||||||
|
private BigDecimal monthlyWarehouseRent;
|
||||||
|
|
||||||
|
@ApiModelProperty("半月仓租")
|
||||||
|
@Excel(name = "半月仓租")
|
||||||
|
private BigDecimal halfMonthWarehouseRent;
|
||||||
|
|
||||||
|
@ApiModelProperty("每月仓租单位")
|
||||||
|
@Excel(name = "每月仓租单位")
|
||||||
|
private String monthlyWarehouseRentUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("半月仓租单位")
|
||||||
|
@Excel(name = "半月仓租单位")
|
||||||
|
private String halfMonthWarehouseRentUnit;
|
||||||
|
}
|
||||||
@@ -0,0 +1,65 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.handler.ListTypeHandler;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import lombok.EqualsAndHashCode;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @author ZhouGY
|
||||||
|
* @title MaterialBaseDO
|
||||||
|
* @description: TODO
|
||||||
|
* @date 2024/7/5 10:59
|
||||||
|
**/
|
||||||
|
@EqualsAndHashCode(callSuper = true)
|
||||||
|
@Data
|
||||||
|
public class MaterialBasePO extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
@Excel(name = "物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
@Excel(name = "物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料分类编码")
|
||||||
|
@Excel(name = "物料分类编码")
|
||||||
|
@TableField(typeHandler = ListTypeHandler.class)
|
||||||
|
private List<String> materialClassifyCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料分类名称")
|
||||||
|
@Excel(name = "物料分类名称")
|
||||||
|
@TableField(typeHandler = ListTypeHandler.class)
|
||||||
|
private List<String> materialClassifyName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种类编码 数据字典")
|
||||||
|
@Excel(name = "物料种类编码 数据字典")
|
||||||
|
private String materialType;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种类名称 数据字典")
|
||||||
|
@Excel(name = "物料种类名称 数据字典")
|
||||||
|
private String materialTypeName;
|
||||||
|
}
|
||||||
+3
-3
@@ -82,12 +82,12 @@ public class MaterialCommonFeign extends BaseVOEntity{
|
|||||||
private String dangerLevelName;
|
private String dangerLevelName;
|
||||||
|
|
||||||
@ApiModelProperty("生产日期")
|
@ApiModelProperty("生产日期")
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date productionTime;
|
private Date productionTime;
|
||||||
|
|
||||||
@ApiModelProperty("失效日期")
|
@ApiModelProperty("失效日期")
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
@Excel(name = "失效日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
private Date expirationTime;
|
private Date expirationTime;
|
||||||
|
|
||||||
@@ -101,4 +101,4 @@ public class MaterialCommonFeign extends BaseVOEntity{
|
|||||||
|
|
||||||
@ApiModelProperty(name = "权限菜单ID")
|
@ApiModelProperty(name = "权限菜单ID")
|
||||||
private Long permissionMenuId;
|
private Long permissionMenuId;
|
||||||
}
|
}
|
||||||
@@ -0,0 +1,57 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(description = "物料信息查询DTO")
|
||||||
|
public class MaterialInfoDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty("物料id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料id")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("货物类型 0-料件 1-半成品 2-成品")
|
||||||
|
private Integer goodsType;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建时间起")
|
||||||
|
private String createTimeStart;
|
||||||
|
|
||||||
|
@ApiModelProperty("创建时间止")
|
||||||
|
private String createTimeEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty("更新时间起")
|
||||||
|
private String updateTimeStart;
|
||||||
|
|
||||||
|
@ApiModelProperty("更新时间止")
|
||||||
|
private String updateTimeEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送状态")
|
||||||
|
private Integer pushStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送时间起")
|
||||||
|
private String pushTimeStart;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送时间止")
|
||||||
|
private String pushTimeEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "页码")
|
||||||
|
private Integer pageNum = 1;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "每页数量")
|
||||||
|
private Integer pageSize = 10;
|
||||||
|
|
||||||
|
}
|
||||||
+91
@@ -0,0 +1,91 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import com.mhd.system.api.model.LoginUser;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料库存对象 material_inventory
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-29
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class MaterialInventoryOmsParamDO extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
//库存id
|
||||||
|
private Long materialInventoryId;
|
||||||
|
//物料基础信息id
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
//物料明细ID
|
||||||
|
private Long materialDetailId;
|
||||||
|
//仓库信息参数
|
||||||
|
private Long organizationId;
|
||||||
|
private String organizationName;
|
||||||
|
private Long topOrganizationId;
|
||||||
|
//仓库ID
|
||||||
|
private Long warehouseId;
|
||||||
|
//仓库编码
|
||||||
|
private String warehouseCode;
|
||||||
|
//仓库名称
|
||||||
|
private String warehouseName;
|
||||||
|
//存储区ID
|
||||||
|
private Long storageSectionId;
|
||||||
|
//存储区编码
|
||||||
|
private String storageCode;
|
||||||
|
//存储区名称
|
||||||
|
private String storageName;
|
||||||
|
//存储位置ID
|
||||||
|
private Long storageLocationId;
|
||||||
|
//存储位置编码
|
||||||
|
private String storageLocationCode;
|
||||||
|
//存储位置名称
|
||||||
|
private String storageLocationName;
|
||||||
|
//调整数量
|
||||||
|
private BigDecimal quantity;
|
||||||
|
//净重
|
||||||
|
private BigDecimal netWeight;
|
||||||
|
//毛重
|
||||||
|
private BigDecimal grossWeight;
|
||||||
|
//体积
|
||||||
|
private BigDecimal volume;
|
||||||
|
//面积
|
||||||
|
private BigDecimal area;
|
||||||
|
//类型(1:上架2:分配3:取消分配4:出库交接5:移位6:库存调整7:库存冻结)
|
||||||
|
private String type;
|
||||||
|
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
private String lotNumber;
|
||||||
|
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
private String isNew;
|
||||||
|
|
||||||
|
/** 业务关联单号(出库单号、交接单对应单号等),用于库存调整记录 relate_no;可与入库单号区分 */
|
||||||
|
private String relateNo;
|
||||||
|
|
||||||
|
private String kctzType;
|
||||||
|
|
||||||
|
private LoginUser loginUser;
|
||||||
|
|
||||||
|
|
||||||
|
private String batchNo;
|
||||||
|
|
||||||
|
//生产日期
|
||||||
|
private Date productionDate;
|
||||||
|
//过期日期
|
||||||
|
private Date expiryDate;
|
||||||
|
//进货日期
|
||||||
|
private Date purchaseDate;
|
||||||
|
|
||||||
|
private String executioOrderNumber;
|
||||||
|
|
||||||
|
}
|
||||||
+217
@@ -0,0 +1,217 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料库存对象 material_inventory
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-29
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "物料库存对象", description = "物料库存响应对象")
|
||||||
|
public class MaterialInventoryPO extends MaterialBasePO {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料库存id")
|
||||||
|
private Long materialInventoryId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息id")
|
||||||
|
@Excel(name = "物料基础信息id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("上架单物料明细id")
|
||||||
|
@Excel(name = "上架单物料明细id")
|
||||||
|
private Long materialDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区id")
|
||||||
|
@Excel(name = "库区id")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区编码")
|
||||||
|
@Excel(name = "库区编码")
|
||||||
|
private String storageCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("库区名称")
|
||||||
|
@Excel(name = "库区名称")
|
||||||
|
private String storageName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位id")
|
||||||
|
@Excel(name = "库位id")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位编码")
|
||||||
|
@Excel(name = "库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("库位名称")
|
||||||
|
@Excel(name = "库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
@Excel(name = "批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态编码")
|
||||||
|
@Excel(name = "物料状态编码")
|
||||||
|
private String materialStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态名称")
|
||||||
|
@Excel(name = "物料状态名称")
|
||||||
|
private String materialStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器id")
|
||||||
|
@Excel(name = "容器id")
|
||||||
|
private Long containerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器编码")
|
||||||
|
@Excel(name = "容器编码")
|
||||||
|
private String containerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型 数据字典")
|
||||||
|
@Excel(name = "容器类型 数据字典")
|
||||||
|
private String containerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型名称 数据字典")
|
||||||
|
@Excel(name = "容器类型名称 数据字典")
|
||||||
|
private String containerTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("库存数量")
|
||||||
|
@Excel(name = "库存数量")
|
||||||
|
private BigDecimal inventoryQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("可用数量")
|
||||||
|
@Excel(name = "可用数量")
|
||||||
|
private BigDecimal allocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("冻结数量")
|
||||||
|
@Excel(name = "冻结数量")
|
||||||
|
private BigDecimal freezeQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("盘点是否可用:0-禁用 1-可用")
|
||||||
|
@Excel(name = "盘点是否可用:0-禁用 1-可用")
|
||||||
|
private Integer isAble;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("单位")
|
||||||
|
@Excel(name = "单位")
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重(KG)")
|
||||||
|
@Excel(name = "净重(KG)")
|
||||||
|
private BigDecimal netWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("毛重(KG)")
|
||||||
|
@Excel(name = "毛重(KG)")
|
||||||
|
private BigDecimal grossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积")
|
||||||
|
@Excel(name = "体积")
|
||||||
|
private BigDecimal volume;
|
||||||
|
|
||||||
|
@ApiModelProperty("面积")
|
||||||
|
@Excel(name = "面积")
|
||||||
|
private BigDecimal area;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("Batch Ref NO's")
|
||||||
|
@Excel(name = "Batch Ref NO's")
|
||||||
|
private String batchRefNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Sheet Ref NO's")
|
||||||
|
@Excel(name = "Sheet Ref NO's")
|
||||||
|
private String sheetRefNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("箱号/卡板号")
|
||||||
|
@Excel(name = "箱号/卡板号")
|
||||||
|
private String boxPalletNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展字段1")
|
||||||
|
@Excel(name = "扩展字段1")
|
||||||
|
private String extAttr1;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展字段2")
|
||||||
|
@Excel(name = "扩展字段2")
|
||||||
|
private String extAttr2;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date productionDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("过期日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "过期日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expiryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("存货日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "存货日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date inventoryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("ExtAttr3")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "ExtAttr3", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date extAttr3;
|
||||||
|
|
||||||
|
@ApiModelProperty("ExtAttr4")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "ExtAttr4", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date extAttr4;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料更多属性列表(批次属性)")
|
||||||
|
private List<MaterialMoreDetailPO> materialMoreDetailList;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装名")
|
||||||
|
@Excel(name = "包装名")
|
||||||
|
private String packName;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("单位名")
|
||||||
|
@Excel(name = "单位名")
|
||||||
|
private String unitName;
|
||||||
|
}
|
||||||
+79
@@ -0,0 +1,79 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料更多属性明细对象 material_more_detail
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
@ApiModel(value = "物料更多属性明细对象", description = "物料更多属性明细响应对象")
|
||||||
|
public class MaterialMoreDetailPO extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料更多属性明细id")
|
||||||
|
private Long materialMoreDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("来源单号")
|
||||||
|
@Excel(name = "来源单号")
|
||||||
|
private String orderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单物料明细业务唯一id")
|
||||||
|
@Excel(name = "订单物料明细业务唯一id")
|
||||||
|
private Long materialDetailUniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次id")
|
||||||
|
@Excel(name = "批次id")
|
||||||
|
private Long batchId;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次详情id")
|
||||||
|
@Excel(name = "批次详情id")
|
||||||
|
private Long batchDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次标签")
|
||||||
|
@Excel(name = "批次标签")
|
||||||
|
private String batchLabels;
|
||||||
|
|
||||||
|
@ApiModelProperty("输入控制: 1-必填 2-可选")
|
||||||
|
@Excel(name = "输入控制: 1-必填 2-可选")
|
||||||
|
private String inputControl;
|
||||||
|
|
||||||
|
@ApiModelProperty("属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||||
|
@Excel(name = "属性格式:1-下拉框 2-日期 3-日期时间 4-数字 5-文本")
|
||||||
|
private String attributeFormat;
|
||||||
|
|
||||||
|
@ApiModelProperty("属性选项")
|
||||||
|
@Excel(name = "属性选项")
|
||||||
|
private String attributeOption;
|
||||||
|
|
||||||
|
@ApiModelProperty("属性值")
|
||||||
|
@Excel(name = "属性值")
|
||||||
|
private String attributeValue;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
+496
@@ -0,0 +1,496 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料明细对象 material_detail
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class OutMaterialDetail extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单物料明细id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long materialDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务唯一id")
|
||||||
|
@JsonSerialize(using = ToStringSerializer.class)
|
||||||
|
private Long uniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单号")
|
||||||
|
@Excel(name = "出库单号")
|
||||||
|
private String outOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息id")
|
||||||
|
@Excel(name = "物料基础信息id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
@Excel(name = "物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
@Excel(name = "物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("已分配数量")
|
||||||
|
@Excel(name = "已分配数量")
|
||||||
|
private BigDecimal alreadyAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("本次分配数量")
|
||||||
|
@Excel(name = "本次分配数量")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal nowAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配数量")
|
||||||
|
@Excel(name = "分配数量")
|
||||||
|
private BigDecimal allocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("拣货数量")
|
||||||
|
@Excel(name = "拣货数量")
|
||||||
|
private BigDecimal pickingQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核数量")
|
||||||
|
@Excel(name = "复核数量")
|
||||||
|
private BigDecimal checkQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格id")
|
||||||
|
@Excel(name = "包装规格id")
|
||||||
|
private Long packId;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格编码")
|
||||||
|
@Excel(name = "包装规格编码")
|
||||||
|
private String packCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格名称")
|
||||||
|
@Excel(name = "包装规格名称")
|
||||||
|
private String packName;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装详情id")
|
||||||
|
@Excel(name = "包装详情id")
|
||||||
|
private Long packDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位代码:EA IP CS PL OT")
|
||||||
|
@Excel(name = "单位代码:EA IP CS PL OT")
|
||||||
|
private String unitCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位名称")
|
||||||
|
@Excel(name = "单位名称")
|
||||||
|
private String unitName;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位数量")
|
||||||
|
@Excel(name = "单位数量")
|
||||||
|
private BigDecimal unitNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料仓库控制信息id")
|
||||||
|
@Excel(name = "物料仓库控制信息id")
|
||||||
|
private Long materialWarehouseControlId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否序列号管理: 1-是 2-否")
|
||||||
|
@Excel(name = "是否序列号管理: 1-是 2-否")
|
||||||
|
private Integer serialNumberManage;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料库存id")
|
||||||
|
@Excel(name = "物料库存id")
|
||||||
|
private Long materialInventoryId;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
@Excel(name = "批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态编码")
|
||||||
|
@Excel(name = "物料状态编码")
|
||||||
|
private String materialStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态名称")
|
||||||
|
@Excel(name = "物料状态名称")
|
||||||
|
private String materialStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器id")
|
||||||
|
@Excel(name = "容器id")
|
||||||
|
private Long containerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器编码")
|
||||||
|
@Excel(name = "容器编码")
|
||||||
|
private String containerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型 数据字典")
|
||||||
|
@Excel(name = "容器类型 数据字典")
|
||||||
|
private String containerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型名称 数据字典")
|
||||||
|
@Excel(name = "容器类型名称 数据字典")
|
||||||
|
private String containerTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配仓库编码")
|
||||||
|
@Excel(name = "分配仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库区id")
|
||||||
|
@Excel(name = "分配库区id")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库区编码")
|
||||||
|
@Excel(name = "分配库区编码")
|
||||||
|
private String storageCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库区名称")
|
||||||
|
@Excel(name = "分配库区名称")
|
||||||
|
private String storageName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库位id")
|
||||||
|
@Excel(name = "分配库位id")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库位编码")
|
||||||
|
@Excel(name = "分配库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库位名称")
|
||||||
|
@Excel(name = "分配库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("层级深度,从一级开始递增")
|
||||||
|
private Integer level;
|
||||||
|
|
||||||
|
@ApiModelProperty("父级唯一Id")
|
||||||
|
private Long parentUniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否允许修改: 1-是 2-否 分配后 不再支持修改")
|
||||||
|
@Excel(name = "是否允许修改: 1-是 2-否")
|
||||||
|
private Integer allowModify;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否生成拣货单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否生成拣货单: 1-是 2-否")
|
||||||
|
private Integer genPickingOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
@Excel(name = "商品名称")
|
||||||
|
private String commodityName;
|
||||||
|
/**
|
||||||
|
* 商品编码
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("商品编码")
|
||||||
|
@Excel(name = "商品编码")
|
||||||
|
private String commodityNo;
|
||||||
|
/**
|
||||||
|
* 料号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("料号")
|
||||||
|
@Excel(name = "料号")
|
||||||
|
private String materialNo;
|
||||||
|
/**
|
||||||
|
* 规格型号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
@Excel(name = "规格型号")
|
||||||
|
private String specificationModel;
|
||||||
|
/**
|
||||||
|
* 商品SKU码
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("商品SKU码")
|
||||||
|
@Excel(name = "商品SKU码")
|
||||||
|
private String skucode;
|
||||||
|
/**
|
||||||
|
* Invoice No
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("Invoice No")
|
||||||
|
@Excel(name = "Invoice No")
|
||||||
|
private String invoiceNo;
|
||||||
|
/**
|
||||||
|
* 升
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("升")
|
||||||
|
@Excel(name = "升")
|
||||||
|
private String liter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 尺寸
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("尺寸")
|
||||||
|
@Excel(name = "尺寸")
|
||||||
|
private String size;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申报单位
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("申报单位")
|
||||||
|
@Excel(name = "申报单位")
|
||||||
|
private String declareUnit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Batch Ref NO’s
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("Batch Ref NO’s")
|
||||||
|
@Excel(name = "Batch Ref NO’s")
|
||||||
|
private String batchRefNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sheet Ref NO’s
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("Sheet Ref NO’s")
|
||||||
|
@Excel(name = "Sheet Ref NO’s")
|
||||||
|
private String sheetRefNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 原产国
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("原产国")
|
||||||
|
@Excel(name = "原产国")
|
||||||
|
private String countryOfOrigin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 箱号/卡板号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("箱号/卡板号")
|
||||||
|
@Excel(name = "箱号/卡板号")
|
||||||
|
private String boxPalletNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 币制
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("币制")
|
||||||
|
@Excel(name = "币制")
|
||||||
|
private String currency;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申报数量
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("申报数量")
|
||||||
|
@Excel(name = "申报数量")
|
||||||
|
private BigDecimal declareQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 箱数
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("箱数")
|
||||||
|
@Excel(name = "箱数")
|
||||||
|
private BigDecimal caseCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 件数
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("件数")
|
||||||
|
@Excel(name = "件数")
|
||||||
|
private BigDecimal pieceCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库数量
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("出库数量")
|
||||||
|
@Excel(name = "出库数量")
|
||||||
|
private BigDecimal outboundQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总净重(KG)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总净重(KG)")
|
||||||
|
@Excel(name = "总净重(KG)")
|
||||||
|
private BigDecimal totalNetWeight;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总毛重(KG)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总毛重(KG)")
|
||||||
|
@Excel(name = "总毛重(KG)")
|
||||||
|
private BigDecimal totalGrossWeight;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总体积(CBM)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总体积(CBM)")
|
||||||
|
@Excel(name = "总体积(CBM)")
|
||||||
|
private BigDecimal totalVolume;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总面积(SQM)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总面积(SQM)")
|
||||||
|
@Excel(name = "总面积(SQM)")
|
||||||
|
private BigDecimal totalArea;
|
||||||
|
/**
|
||||||
|
* 总价
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总价")
|
||||||
|
@Excel(name = "总价")
|
||||||
|
private BigDecimal totalAmount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单位
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("单位")
|
||||||
|
@Excel(name = "单位")
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性1")
|
||||||
|
@Excel(name = "扩展属性1")
|
||||||
|
@TableField("ext_attr_1")
|
||||||
|
private String extAttr1;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性2")
|
||||||
|
@Excel(name = "扩展属性2")
|
||||||
|
@TableField("ext_attr_2")
|
||||||
|
private String extAttr2;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产日期")
|
||||||
|
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date productionDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("过期日期")
|
||||||
|
@Excel(name = "过期日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expiryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("存货日期")
|
||||||
|
@Excel(name = "存货日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date inventoryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性3")
|
||||||
|
@Excel(name = "扩展属性3", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@TableField("ext_attr_3")
|
||||||
|
private Date extAttr3;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性4")
|
||||||
|
@Excel(name = "扩展属性4", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@TableField("ext_attr_4")
|
||||||
|
private Date extAttr4;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 库存数量(仅用于前端展示,从material_inventory表中带出)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("分配时库存数量")
|
||||||
|
private BigDecimal inventoryQuantity;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal actualQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总净重(KG)")
|
||||||
|
@Excel(name = "复核总净重(KG)")
|
||||||
|
private BigDecimal checkNetWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总毛重(KG)")
|
||||||
|
@Excel(name = "复核总毛重(KG)")
|
||||||
|
private BigDecimal checkGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总体积(CBM)")
|
||||||
|
@Excel(name = "复核总体积(CBM)")
|
||||||
|
private BigDecimal checkVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总面积(SQM)")
|
||||||
|
@Excel(name = "复核总面积(SQM)")
|
||||||
|
private BigDecimal checkArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否已分配")
|
||||||
|
@Excel(name = "是否已分配")
|
||||||
|
private String isAllocated;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("合同收费")
|
||||||
|
@Excel(name = "合同收费")
|
||||||
|
private BigDecimal contractFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("每月仓租")
|
||||||
|
@Excel(name = "每月仓租")
|
||||||
|
private BigDecimal monthlyWarehouseFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("半月仓租")
|
||||||
|
@Excel(name = "半月仓租")
|
||||||
|
private BigDecimal halfMonthWhFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("折扣(%)")
|
||||||
|
@Excel(name = "折扣(%)")
|
||||||
|
private BigDecimal discountRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("单体积(CBM)")
|
||||||
|
@Excel(name = "单体积(CBM)")
|
||||||
|
private BigDecimal singleVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("单毛重(KG)")
|
||||||
|
@Excel(name = "单毛重(KG)")
|
||||||
|
private BigDecimal singleGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("lot编号")
|
||||||
|
@Excel(name = "lot编号")
|
||||||
|
private String lotNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("库存单位")
|
||||||
|
@Excel(name = "库存单位")
|
||||||
|
private String stockUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("库存数量")
|
||||||
|
@Excel(name = "库存数量")
|
||||||
|
private BigDecimal stockQuantity;
|
||||||
|
}
|
||||||
+496
@@ -0,0 +1,496 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
|
||||||
|
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 物料明细对象 material_detail
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class OutMaterialDetailTZPD extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单物料明细id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long materialDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务唯一id")
|
||||||
|
@JsonSerialize(using = ToStringSerializer.class)
|
||||||
|
private Long uniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单号")
|
||||||
|
@Excel(name = "出库单号")
|
||||||
|
private String outOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料基础信息id")
|
||||||
|
@Excel(name = "物料基础信息id")
|
||||||
|
private Long materialBaseInfoId;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料编码")
|
||||||
|
@Excel(name = "物料编码")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料名称")
|
||||||
|
@Excel(name = "物料名称")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("已分配数量")
|
||||||
|
@Excel(name = "已分配数量")
|
||||||
|
private BigDecimal alreadyAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("本次分配数量")
|
||||||
|
@Excel(name = "本次分配数量")
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal nowAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配数量")
|
||||||
|
@Excel(name = "分配数量")
|
||||||
|
private BigDecimal allocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("拣货数量")
|
||||||
|
@Excel(name = "拣货数量")
|
||||||
|
private BigDecimal pickingQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核数量")
|
||||||
|
@Excel(name = "复核数量")
|
||||||
|
private BigDecimal checkQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格id")
|
||||||
|
@Excel(name = "包装规格id")
|
||||||
|
private Long packId;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格编码")
|
||||||
|
@Excel(name = "包装规格编码")
|
||||||
|
private String packCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装规格名称")
|
||||||
|
@Excel(name = "包装规格名称")
|
||||||
|
private String packName;
|
||||||
|
|
||||||
|
@ApiModelProperty("包装详情id")
|
||||||
|
@Excel(name = "包装详情id")
|
||||||
|
private Long packDetailId;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位代码:EA IP CS PL OT")
|
||||||
|
@Excel(name = "单位代码:EA IP CS PL OT")
|
||||||
|
private String unitCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位名称")
|
||||||
|
@Excel(name = "单位名称")
|
||||||
|
private String unitName;
|
||||||
|
|
||||||
|
@ApiModelProperty("单位数量")
|
||||||
|
@Excel(name = "单位数量")
|
||||||
|
private BigDecimal unitNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料仓库控制信息id")
|
||||||
|
@Excel(name = "物料仓库控制信息id")
|
||||||
|
private Long materialWarehouseControlId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否序列号管理: 1-是 2-否")
|
||||||
|
@Excel(name = "是否序列号管理: 1-是 2-否")
|
||||||
|
private Integer serialNumberManage;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料库存id")
|
||||||
|
@Excel(name = "物料库存id")
|
||||||
|
private Long materialInventoryId;
|
||||||
|
|
||||||
|
@ApiModelProperty("批次号")
|
||||||
|
@Excel(name = "批次号")
|
||||||
|
private String batchNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态编码")
|
||||||
|
@Excel(name = "物料状态编码")
|
||||||
|
private String materialStatusCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料状态名称")
|
||||||
|
@Excel(name = "物料状态名称")
|
||||||
|
private String materialStatusName;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器id")
|
||||||
|
@Excel(name = "容器id")
|
||||||
|
private Long containerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器编码")
|
||||||
|
@Excel(name = "容器编码")
|
||||||
|
private String containerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型 数据字典")
|
||||||
|
@Excel(name = "容器类型 数据字典")
|
||||||
|
private String containerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("容器类型名称 数据字典")
|
||||||
|
@Excel(name = "容器类型名称 数据字典")
|
||||||
|
private String containerTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配仓库编码")
|
||||||
|
@Excel(name = "分配仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库区id")
|
||||||
|
@Excel(name = "分配库区id")
|
||||||
|
private Long storageSectionId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库区编码")
|
||||||
|
@Excel(name = "分配库区编码")
|
||||||
|
private String storageCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库区名称")
|
||||||
|
@Excel(name = "分配库区名称")
|
||||||
|
private String storageName;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库位id")
|
||||||
|
@Excel(name = "分配库位id")
|
||||||
|
private Long storageLocationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库位编码")
|
||||||
|
@Excel(name = "分配库位编码")
|
||||||
|
private String storageLocationCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配库位名称")
|
||||||
|
@Excel(name = "分配库位名称")
|
||||||
|
private String storageLocationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("层级深度,从一级开始递增")
|
||||||
|
private Integer level;
|
||||||
|
|
||||||
|
@ApiModelProperty("父级唯一Id")
|
||||||
|
private Long parentUniqueId;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否允许修改: 1-是 2-否 分配后 不再支持修改")
|
||||||
|
@Excel(name = "是否允许修改: 1-是 2-否")
|
||||||
|
private Integer allowModify;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否生成拣货单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否生成拣货单: 1-是 2-否")
|
||||||
|
private Integer genPickingOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 商品名称
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("商品名称")
|
||||||
|
@Excel(name = "商品名称")
|
||||||
|
private String commodityName;
|
||||||
|
/**
|
||||||
|
* 商品编码
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("商品编码")
|
||||||
|
@Excel(name = "商品编码")
|
||||||
|
private String commodityNo;
|
||||||
|
/**
|
||||||
|
* 料号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("料号")
|
||||||
|
@Excel(name = "料号")
|
||||||
|
private String materialNo;
|
||||||
|
/**
|
||||||
|
* 规格型号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("规格型号")
|
||||||
|
@Excel(name = "规格型号")
|
||||||
|
private String specificationModel;
|
||||||
|
/**
|
||||||
|
* 商品SKU码
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("商品SKU码")
|
||||||
|
@Excel(name = "商品SKU码")
|
||||||
|
private String skucode;
|
||||||
|
/**
|
||||||
|
* Invoice No
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("Invoice No")
|
||||||
|
@Excel(name = "Invoice No")
|
||||||
|
private String invoiceNo;
|
||||||
|
/**
|
||||||
|
* 升
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("升")
|
||||||
|
@Excel(name = "升")
|
||||||
|
private String liter;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 尺寸
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("尺寸")
|
||||||
|
@Excel(name = "尺寸")
|
||||||
|
private String size;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申报单位
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("申报单位")
|
||||||
|
@Excel(name = "申报单位")
|
||||||
|
private String declareUnit;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Batch Ref NO’s
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("Batch Ref NO’s")
|
||||||
|
@Excel(name = "Batch Ref NO’s")
|
||||||
|
private String batchRefNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* Sheet Ref NO’s
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("Sheet Ref NO’s")
|
||||||
|
@Excel(name = "Sheet Ref NO’s")
|
||||||
|
private String sheetRefNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 原产国
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("原产国")
|
||||||
|
@Excel(name = "原产国")
|
||||||
|
private String countryOfOrigin;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 箱号/卡板号
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("箱号/卡板号")
|
||||||
|
@Excel(name = "箱号/卡板号")
|
||||||
|
private String boxPalletNo;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 币制
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("币制")
|
||||||
|
@Excel(name = "币制")
|
||||||
|
private String currency;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 申报数量
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("申报数量")
|
||||||
|
@Excel(name = "申报数量")
|
||||||
|
private BigDecimal declareQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 箱数
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("箱数")
|
||||||
|
@Excel(name = "箱数")
|
||||||
|
private BigDecimal caseCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 件数
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("件数")
|
||||||
|
@Excel(name = "件数")
|
||||||
|
private BigDecimal pieceCount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库数量
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("出库数量")
|
||||||
|
@Excel(name = "出库数量")
|
||||||
|
private BigDecimal outboundQuantity;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总净重(KG)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总净重(KG)")
|
||||||
|
@Excel(name = "总净重(KG)")
|
||||||
|
private BigDecimal totalNetWeight;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总毛重(KG)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总毛重(KG)")
|
||||||
|
@Excel(name = "总毛重(KG)")
|
||||||
|
private BigDecimal totalGrossWeight;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总体积(CBM)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总体积(CBM)")
|
||||||
|
@Excel(name = "总体积(CBM)")
|
||||||
|
private BigDecimal totalVolume;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总面积(SQM)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总面积(SQM)")
|
||||||
|
@Excel(name = "总面积(SQM)")
|
||||||
|
private BigDecimal totalArea;
|
||||||
|
/**
|
||||||
|
* 总价
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("总价")
|
||||||
|
@Excel(name = "总价")
|
||||||
|
private BigDecimal totalAmount;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 单位
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("单位")
|
||||||
|
@Excel(name = "单位")
|
||||||
|
private String unit;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性1")
|
||||||
|
@Excel(name = "扩展属性1")
|
||||||
|
@TableField("ext_attr_1")
|
||||||
|
private String extAttr1;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性2")
|
||||||
|
@Excel(name = "扩展属性2")
|
||||||
|
@TableField("ext_attr_2")
|
||||||
|
private String extAttr2;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产日期")
|
||||||
|
@Excel(name = "生产日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date productionDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("过期日期")
|
||||||
|
@Excel(name = "过期日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expiryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("存货日期")
|
||||||
|
@Excel(name = "存货日期", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date inventoryDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性3")
|
||||||
|
@Excel(name = "扩展属性3", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@TableField("ext_attr_3")
|
||||||
|
private Date extAttr3;
|
||||||
|
|
||||||
|
@ApiModelProperty("扩展属性4")
|
||||||
|
@Excel(name = "扩展属性4", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@TableField("ext_attr_4")
|
||||||
|
private Date extAttr4;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 库存数量(仅用于前端展示,从material_inventory表中带出)
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("分配时库存数量")
|
||||||
|
private BigDecimal inventoryQuantity;
|
||||||
|
|
||||||
|
@TableField(exist = false)
|
||||||
|
private BigDecimal actualQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总净重(KG)")
|
||||||
|
@Excel(name = "复核总净重(KG)")
|
||||||
|
private BigDecimal checkNetWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总毛重(KG)")
|
||||||
|
@Excel(name = "复核总毛重(KG)")
|
||||||
|
private BigDecimal checkGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总体积(CBM)")
|
||||||
|
@Excel(name = "复核总体积(CBM)")
|
||||||
|
private BigDecimal checkVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核总面积(SQM)")
|
||||||
|
@Excel(name = "复核总面积(SQM)")
|
||||||
|
private BigDecimal checkArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否已分配")
|
||||||
|
@Excel(name = "是否已分配")
|
||||||
|
private String isAllocated;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("合同收费")
|
||||||
|
@Excel(name = "合同收费")
|
||||||
|
private BigDecimal contractFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("每月仓租")
|
||||||
|
@Excel(name = "每月仓租")
|
||||||
|
private BigDecimal monthlyWarehouseFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("半月仓租")
|
||||||
|
@Excel(name = "半月仓租")
|
||||||
|
private BigDecimal halfMonthWhFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("折扣(%)")
|
||||||
|
@Excel(name = "折扣(%)")
|
||||||
|
private BigDecimal discountRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("单体积(CBM)")
|
||||||
|
@Excel(name = "单体积(CBM)")
|
||||||
|
private BigDecimal singleVolume;
|
||||||
|
|
||||||
|
@ApiModelProperty("单毛重(KG)")
|
||||||
|
@Excel(name = "单毛重(KG)")
|
||||||
|
private BigDecimal singleGrossWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty("lot编号")
|
||||||
|
@Excel(name = "lot编号")
|
||||||
|
private String lotNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("库存单位")
|
||||||
|
@Excel(name = "库存单位")
|
||||||
|
private String stockUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("库存数量")
|
||||||
|
@Excel(name = "库存数量")
|
||||||
|
private BigDecimal stockQuantity;
|
||||||
|
}
|
||||||
+42
@@ -0,0 +1,42 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* OMS→WMS 批量签名 Feign DTO
|
||||||
|
*
|
||||||
|
* <p>OMS端批量签名时,通过此DTO调用WMS的批量签名接口,
|
||||||
|
* 更新WMS stock_in_order / stock_out_order 表的签名字段。</p>
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class SignatureBatchFeignDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单ID列表")
|
||||||
|
private List<Long> inOrderIds;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单ID列表")
|
||||||
|
private List<Long> outOrderIds;
|
||||||
|
|
||||||
|
@ApiModelProperty("签名状态:2-已签名")
|
||||||
|
private Integer signatureStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("签名时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date signatureTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("手写签名图片(base64或URL,单张)")
|
||||||
|
private String signaturePic;
|
||||||
|
|
||||||
|
@ApiModelProperty("拍照取证图片(逗号分隔多张URL)")
|
||||||
|
private String evidencePics;
|
||||||
|
|
||||||
|
@ApiModelProperty("签名备注")
|
||||||
|
private String signatureRemark;
|
||||||
|
}
|
||||||
@@ -0,0 +1,367 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入库单对象 stock_in_order
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class StockInOrder extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long inOrderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("通知单号")
|
||||||
|
@Excel(name = "通知单号")
|
||||||
|
private String noticeNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库状态: 1-已创建 2-已审核 3-收货中 4-上架中 5-已入库 6-已取消 7-已关闭")
|
||||||
|
@Excel(name = "入库状态: 1-已创建 2-已审核 3-收货中 4-上架中 5-已入库 6-已取消 7-已关闭")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
@Excel(name = "入库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
private Integer auditStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核备注")
|
||||||
|
@Excel(name = "入库单审核备注")
|
||||||
|
private String auditRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核人")
|
||||||
|
@Excel(name = "入库单审核人")
|
||||||
|
private Long auditBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核人姓名")
|
||||||
|
@Excel(name = "入库单审核人姓名")
|
||||||
|
private String auditByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "入库单审核时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date auditTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单类型编码")
|
||||||
|
@Excel(name = "入库单类型编码")
|
||||||
|
private String orderTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单类型名称")
|
||||||
|
@Excel(name = "入库单类型名称")
|
||||||
|
private String orderTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应商id")
|
||||||
|
@Excel(name = "供应商id")
|
||||||
|
private Long supplierId;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应商编码")
|
||||||
|
@Excel(name = "供应商编码")
|
||||||
|
private String supplierCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应商名称")
|
||||||
|
@Excel(name = "供应商名称")
|
||||||
|
private String supplierName;
|
||||||
|
|
||||||
|
@ApiModelProperty("预计到货时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "预计到货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expectTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应链订单号")
|
||||||
|
@Excel(name = "供应链订单号")
|
||||||
|
private String supplyChainNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别编码")
|
||||||
|
@Excel(name = "优先级别编码")
|
||||||
|
private String priorityLevelCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别名称")
|
||||||
|
@Excel(name = "优先级别名称")
|
||||||
|
private String priorityLevelName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否直接入库: 1-是 2-否")
|
||||||
|
@Excel(name = "是否直接入库: 1-是 2-否")
|
||||||
|
private Integer directWarehouse;
|
||||||
|
|
||||||
|
@ApiModelProperty("附件url")
|
||||||
|
@Excel(name = "附件url")
|
||||||
|
private String annexUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种数")
|
||||||
|
@Excel(name = "物料种数")
|
||||||
|
private Integer materialQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否取消订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否取消订单: 1-是 2-否")
|
||||||
|
private Integer cancelOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单备注")
|
||||||
|
@Excel(name = "取消订单备注")
|
||||||
|
private String cancelRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人")
|
||||||
|
@Excel(name = "取消订单人")
|
||||||
|
private Long cancelBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人姓名")
|
||||||
|
@Excel(name = "取消订单人姓名")
|
||||||
|
private String cancelByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "取消订单时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date cancelTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否关闭订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否关闭订单: 1-是 2-否")
|
||||||
|
private Integer closeOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单备注")
|
||||||
|
@Excel(name = "关闭订单备注")
|
||||||
|
private String closeRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人")
|
||||||
|
@Excel(name = "关闭订单人")
|
||||||
|
private Long closeBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人姓名")
|
||||||
|
@Excel(name = "关闭订单人姓名")
|
||||||
|
private String closeByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "关闭订单时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date closeTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单来源: 1-正常录入 2-通知单生成 3-无单收货")
|
||||||
|
@Excel(name = "入库单来源: 1-正常录入 2-通知单生成 3-无单收货")
|
||||||
|
private Integer orderSource;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("调度单号")
|
||||||
|
private String mobilizeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
// ========== 报关相关字段 ==========
|
||||||
|
@ApiModelProperty("To")
|
||||||
|
@Excel(name = "To")
|
||||||
|
@TableField(value = "\"TO\"")
|
||||||
|
private String to;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系人")
|
||||||
|
@Excel(name = "联系人")
|
||||||
|
private String contactPerson;
|
||||||
|
|
||||||
|
@ApiModelProperty("车型及车牌")
|
||||||
|
@Excel(name = "车型及车牌")
|
||||||
|
private String vehicleInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("委托编号NO")
|
||||||
|
@Excel(name = "委托编号NO")
|
||||||
|
private String consignmentNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Tel")
|
||||||
|
@Excel(name = "Tel")
|
||||||
|
private String tel;
|
||||||
|
|
||||||
|
@ApiModelProperty("司机签名")
|
||||||
|
@Excel(name = "司机签名")
|
||||||
|
private String driverSignature;
|
||||||
|
|
||||||
|
@ApiModelProperty("Fax")
|
||||||
|
@Excel(name = "Fax")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报地关区")
|
||||||
|
@Excel(name = "申报地关区")
|
||||||
|
private String declarationArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产商")
|
||||||
|
@Excel(name = "生产商")
|
||||||
|
private String manufacturer;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关员姓名及联系方式")
|
||||||
|
@Excel(name = "报关员姓名及联系方式")
|
||||||
|
private String customsBrokerInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("送货地址")
|
||||||
|
@Excel(name = "送货地址")
|
||||||
|
private String deliveryAddress;
|
||||||
|
|
||||||
|
@ApiModelProperty("进出境关别")
|
||||||
|
@Excel(name = "进出境关别")
|
||||||
|
private String entryExitCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("起运/运抵国(地区)")
|
||||||
|
@Excel(name = "起运/运抵国(地区)")
|
||||||
|
private String originDestinationCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商")
|
||||||
|
@Excel(name = "承运商")
|
||||||
|
private String carrier;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜号")
|
||||||
|
@Excel(name = "柜号")
|
||||||
|
private String containerNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportMethod;
|
||||||
|
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionMethod;
|
||||||
|
|
||||||
|
@ApiModelProperty("海关是否查验货物")
|
||||||
|
@Excel(name = "海关是否查验货物")
|
||||||
|
private Integer customsInspection;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否需要报关")
|
||||||
|
@Excel(name = "是否需要报关")
|
||||||
|
private Integer needCustomsDeclaration;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否需要运输")
|
||||||
|
@Excel(name = "是否需要运输")
|
||||||
|
private Integer needTransport;
|
||||||
|
|
||||||
|
@ApiModelProperty("入仓日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "入仓日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date warehouseDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("完成时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date completionTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("下单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "下单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date orderDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务单号")
|
||||||
|
@Excel(name = "业务单号")
|
||||||
|
private String businessOrderNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务类型")
|
||||||
|
@Excel(name = "业务类型")
|
||||||
|
private String businessType;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人")
|
||||||
|
@Excel(name = "制单人")
|
||||||
|
private String documentCreator;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人名称")
|
||||||
|
@Excel(name = "制单人名称")
|
||||||
|
private String documentCreatorName;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "制单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date documentDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单状态")
|
||||||
|
@Excel(name = "订单状态")
|
||||||
|
private String orderStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("oms入库单id")
|
||||||
|
@Excel(name = "oms入库单id")
|
||||||
|
private String omsStockInOrderId;
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
@ApiModelProperty("业务员名称")
|
||||||
|
private String salesmanName;
|
||||||
|
@Excel(name = "附件url")
|
||||||
|
private String pictureUrl;
|
||||||
|
}
|
||||||
@@ -0,0 +1,365 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 入库单对象 stock_in_order
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-21
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class StockInOrderTZPD extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long inOrderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("通知单号")
|
||||||
|
@Excel(name = "通知单号")
|
||||||
|
private String noticeNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号")
|
||||||
|
@Excel(name = "入库单号")
|
||||||
|
private String inOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库状态: 1-已创建 2-已审核 3-收货中 4-上架中 5-已入库 6-已取消 7-已关闭")
|
||||||
|
@Excel(name = "入库状态: 1-已创建 2-已审核 3-收货中 4-上架中 5-已入库 6-已取消 7-已关闭")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
@Excel(name = "入库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
private Integer auditStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核备注")
|
||||||
|
@Excel(name = "入库单审核备注")
|
||||||
|
private String auditRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核人")
|
||||||
|
@Excel(name = "入库单审核人")
|
||||||
|
private Long auditBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核人姓名")
|
||||||
|
@Excel(name = "入库单审核人姓名")
|
||||||
|
private String auditByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单审核时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "入库单审核时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date auditTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单类型编码")
|
||||||
|
@Excel(name = "入库单类型编码")
|
||||||
|
private String orderTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单类型名称")
|
||||||
|
@Excel(name = "入库单类型名称")
|
||||||
|
private String orderTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应商id")
|
||||||
|
@Excel(name = "供应商id")
|
||||||
|
private Long supplierId;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应商编码")
|
||||||
|
@Excel(name = "供应商编码")
|
||||||
|
private String supplierCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应商名称")
|
||||||
|
@Excel(name = "供应商名称")
|
||||||
|
private String supplierName;
|
||||||
|
|
||||||
|
@ApiModelProperty("预计到货时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "预计到货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expectTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应链订单号")
|
||||||
|
@Excel(name = "供应链订单号")
|
||||||
|
private String supplyChainNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别编码")
|
||||||
|
@Excel(name = "优先级别编码")
|
||||||
|
private String priorityLevelCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别名称")
|
||||||
|
@Excel(name = "优先级别名称")
|
||||||
|
private String priorityLevelName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否直接入库: 1-是 2-否")
|
||||||
|
@Excel(name = "是否直接入库: 1-是 2-否")
|
||||||
|
private Integer directWarehouse;
|
||||||
|
|
||||||
|
@ApiModelProperty("附件url")
|
||||||
|
@Excel(name = "附件url")
|
||||||
|
private String annexUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种数")
|
||||||
|
@Excel(name = "物料种数")
|
||||||
|
private Integer materialQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否取消订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否取消订单: 1-是 2-否")
|
||||||
|
private Integer cancelOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单备注")
|
||||||
|
@Excel(name = "取消订单备注")
|
||||||
|
private String cancelRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人")
|
||||||
|
@Excel(name = "取消订单人")
|
||||||
|
private Long cancelBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人姓名")
|
||||||
|
@Excel(name = "取消订单人姓名")
|
||||||
|
private String cancelByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "取消订单时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date cancelTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否关闭订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否关闭订单: 1-是 2-否")
|
||||||
|
private Integer closeOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单备注")
|
||||||
|
@Excel(name = "关闭订单备注")
|
||||||
|
private String closeRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人")
|
||||||
|
@Excel(name = "关闭订单人")
|
||||||
|
private Long closeBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人姓名")
|
||||||
|
@Excel(name = "关闭订单人姓名")
|
||||||
|
private String closeByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "关闭订单时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date closeTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单来源: 1-正常录入 2-通知单生成 3-无单收货")
|
||||||
|
@Excel(name = "入库单来源: 1-正常录入 2-通知单生成 3-无单收货")
|
||||||
|
private Integer orderSource;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("调度单号")
|
||||||
|
private String mobilizeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
// ========== 报关相关字段 ==========
|
||||||
|
@ApiModelProperty("To")
|
||||||
|
@Excel(name = "To")
|
||||||
|
@TableField(value = "\"TO\"")
|
||||||
|
private String to;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系人")
|
||||||
|
@Excel(name = "联系人")
|
||||||
|
private String contactPerson;
|
||||||
|
|
||||||
|
@ApiModelProperty("车型及车牌")
|
||||||
|
@Excel(name = "车型及车牌")
|
||||||
|
private String vehicleInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("委托编号NO")
|
||||||
|
@Excel(name = "委托编号NO")
|
||||||
|
private String consignmentNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Tel")
|
||||||
|
@Excel(name = "Tel")
|
||||||
|
private String tel;
|
||||||
|
|
||||||
|
@ApiModelProperty("司机签名")
|
||||||
|
@Excel(name = "司机签名")
|
||||||
|
private String driverSignature;
|
||||||
|
|
||||||
|
@ApiModelProperty("Fax")
|
||||||
|
@Excel(name = "Fax")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报地关区")
|
||||||
|
@Excel(name = "申报地关区")
|
||||||
|
private String declarationArea;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产商")
|
||||||
|
@Excel(name = "生产商")
|
||||||
|
private String manufacturer;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关员姓名及联系方式")
|
||||||
|
@Excel(name = "报关员姓名及联系方式")
|
||||||
|
private String customsBrokerInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("送货地址")
|
||||||
|
@Excel(name = "送货地址")
|
||||||
|
private String deliveryAddress;
|
||||||
|
|
||||||
|
@ApiModelProperty("进出境关别")
|
||||||
|
@Excel(name = "进出境关别")
|
||||||
|
private String entryExitCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("起运/运抵国(地区)")
|
||||||
|
@Excel(name = "起运/运抵国(地区)")
|
||||||
|
private String originDestinationCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商")
|
||||||
|
@Excel(name = "承运商")
|
||||||
|
private String carrier;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜号")
|
||||||
|
@Excel(name = "柜号")
|
||||||
|
private String containerNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportMethod;
|
||||||
|
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionMethod;
|
||||||
|
|
||||||
|
@ApiModelProperty("海关是否查验货物")
|
||||||
|
@Excel(name = "海关是否查验货物")
|
||||||
|
private Integer customsInspection;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否需要报关")
|
||||||
|
@Excel(name = "是否需要报关")
|
||||||
|
private Integer needCustomsDeclaration;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否需要运输")
|
||||||
|
@Excel(name = "是否需要运输")
|
||||||
|
private Integer needTransport;
|
||||||
|
|
||||||
|
@ApiModelProperty("入仓日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "入仓日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date warehouseDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("完成时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date completionTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("下单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "下单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date orderDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务单号")
|
||||||
|
@Excel(name = "业务单号")
|
||||||
|
private String businessOrderNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务类型")
|
||||||
|
@Excel(name = "业务类型")
|
||||||
|
private String businessType;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人")
|
||||||
|
@Excel(name = "制单人")
|
||||||
|
private String documentCreator;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人名称")
|
||||||
|
@Excel(name = "制单人名称")
|
||||||
|
private String documentCreatorName;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "制单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date documentDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单状态")
|
||||||
|
@Excel(name = "订单状态")
|
||||||
|
private String orderStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("oms入库单id")
|
||||||
|
@Excel(name = "oms入库单id")
|
||||||
|
private String omsStockInOrderId;
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
@ApiModelProperty("业务员名称")
|
||||||
|
private String salesmanName;
|
||||||
|
}
|
||||||
@@ -0,0 +1,417 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库单对象 stock_out_order
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-28
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class StockOutOrder extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long outOrderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("通知单号")
|
||||||
|
@Excel(name = "通知单号")
|
||||||
|
private String noticeNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单号")
|
||||||
|
@Excel(name = "出库单号")
|
||||||
|
private String outOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-波次中 6-拣货中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭 12-已复核 13-已交接")
|
||||||
|
@Excel(name = "出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-波次中 6-拣货中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭 12-已复核 13-已交接")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
@Excel(name = "出库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
private Integer auditStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核备注")
|
||||||
|
@Excel(name = "出库单审核备注")
|
||||||
|
private String auditRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核人")
|
||||||
|
@Excel(name = "出库单审核人")
|
||||||
|
private Long auditBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核人姓名")
|
||||||
|
@Excel(name = "出库单审核人姓名")
|
||||||
|
private String auditByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "出库单审核时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date auditTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单类型编码")
|
||||||
|
@Excel(name = "出库单类型编码")
|
||||||
|
private String orderTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单类型名称")
|
||||||
|
@Excel(name = "出库单类型名称")
|
||||||
|
private String orderTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户id")
|
||||||
|
@Excel(name = "客户id")
|
||||||
|
private Long customerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户编码")
|
||||||
|
@Excel(name = "客户编码")
|
||||||
|
private String customerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户名称")
|
||||||
|
@Excel(name = "客户名称")
|
||||||
|
private String customerName;
|
||||||
|
|
||||||
|
@ApiModelProperty("预计出货时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@Excel(name = "预计出货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expectTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应链订单号")
|
||||||
|
@Excel(name = "供应链订单号")
|
||||||
|
private String supplyChainNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别编码")
|
||||||
|
@Excel(name = "优先级别编码")
|
||||||
|
private String priorityLevelCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别名称")
|
||||||
|
@Excel(name = "优先级别名称")
|
||||||
|
private String priorityLevelName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否直接出库: 1-是 2-否")
|
||||||
|
@Excel(name = "是否直接出库: 1-是 2-否")
|
||||||
|
private Integer directWarehouse;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否复核: 1-是 2-否")
|
||||||
|
@Excel(name = "是否复核: 1-是 2-否")
|
||||||
|
private Integer review;
|
||||||
|
|
||||||
|
@ApiModelProperty("附件url")
|
||||||
|
@Excel(name = "附件url")
|
||||||
|
private String annexUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种数")
|
||||||
|
@Excel(name = "物料种数")
|
||||||
|
private Integer materialQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配数量")
|
||||||
|
@Excel(name = "分配数量")
|
||||||
|
private BigDecimal allocationQuantity;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("已生成拣货单数量")
|
||||||
|
@Excel(name = "已生成拣货单分配数量")
|
||||||
|
private BigDecimal alreadyAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("拣货数量")
|
||||||
|
@Excel(name = "拣货数量")
|
||||||
|
private BigDecimal pickingQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核数量")
|
||||||
|
@Excel(name = "复核数量")
|
||||||
|
private BigDecimal checkQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否取消订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否取消订单: 1-是 2-否")
|
||||||
|
private Integer cancelOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单备注")
|
||||||
|
@Excel(name = "取消订单备注")
|
||||||
|
private String cancelRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人")
|
||||||
|
@Excel(name = "取消订单人")
|
||||||
|
private Long cancelBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人姓名")
|
||||||
|
@Excel(name = "取消订单人姓名")
|
||||||
|
private String cancelByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "取消订单时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date cancelTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否关闭订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否关闭订单: 1-是 2-否")
|
||||||
|
private Integer closeOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单备注")
|
||||||
|
@Excel(name = "关闭订单备注")
|
||||||
|
private String closeRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人")
|
||||||
|
@Excel(name = "关闭订单人")
|
||||||
|
private Long closeBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人姓名")
|
||||||
|
@Excel(name = "关闭订单人姓名")
|
||||||
|
private String closeByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "关闭订单时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date closeTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
@Excel(name = "复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
private Integer checkStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核任务是否下发: 1-是 2-否")
|
||||||
|
@Excel(name = "复核任务是否下发: 1-是 2-否")
|
||||||
|
private Integer checkTaskDistribution;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核任务下发时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "复核任务下发时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date checkTaskDistributionTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核作业人用户ID")
|
||||||
|
@Excel(name = "复核作业人用户ID")
|
||||||
|
private Long checkOperatorsBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核作业人姓名")
|
||||||
|
@Excel(name = "复核作业人姓名")
|
||||||
|
private String checkOperatorsName;
|
||||||
|
|
||||||
|
@ApiModelProperty("调度单号")
|
||||||
|
@Excel(name = "调度单号")
|
||||||
|
private String mobilizeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
@ApiModelProperty("to")
|
||||||
|
@Excel(name = "to")
|
||||||
|
@TableField(value = "\"TO\"")
|
||||||
|
private String to;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系人")
|
||||||
|
@Excel(name = "联系人")
|
||||||
|
private String contactPerson;
|
||||||
|
|
||||||
|
@ApiModelProperty("车型及车牌")
|
||||||
|
@Excel(name = "车型及车牌")
|
||||||
|
private String vehicleModelPlate;
|
||||||
|
|
||||||
|
@ApiModelProperty("委托编号")
|
||||||
|
@Excel(name = "委托编号")
|
||||||
|
private String entrustNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Tel")
|
||||||
|
@Excel(name = "Tel")
|
||||||
|
private String tel;
|
||||||
|
|
||||||
|
@ApiModelProperty("司机签名")
|
||||||
|
@Excel(name = "司机签名")
|
||||||
|
private String driverSign;
|
||||||
|
|
||||||
|
@ApiModelProperty("Fax")
|
||||||
|
@Excel(name = "Fax")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报地关区")
|
||||||
|
@Excel(name = "申报地关区")
|
||||||
|
private String declareCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产商")
|
||||||
|
@Excel(name = "生产商")
|
||||||
|
private String manufacturer;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关员姓名及联系方式")
|
||||||
|
@Excel(name = "报关员姓名及联系方式")
|
||||||
|
private String customsDeclarerInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("送货地址")
|
||||||
|
@Excel(name = "送货地址")
|
||||||
|
private String deliveryAddr;
|
||||||
|
|
||||||
|
@ApiModelProperty("进出境关别")
|
||||||
|
@Excel(name = "进出境关别")
|
||||||
|
private String entryExitCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("起运/运抵国(地区)")
|
||||||
|
@Excel(name = "起运/运抵国(地区)")
|
||||||
|
private String departureArrivalCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商")
|
||||||
|
@Excel(name = "承运商")
|
||||||
|
private String carrier;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商名称")
|
||||||
|
@Excel(name = "承运商名称")
|
||||||
|
private String carrierName;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜号")
|
||||||
|
@Excel(name = "柜号")
|
||||||
|
private String containerNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜")
|
||||||
|
@Excel(name = "柜")
|
||||||
|
private String containerNoName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出仓日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "出仓日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date outboundDate;
|
||||||
|
@ApiModelProperty("完成时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date completeTime;
|
||||||
|
@ApiModelProperty("orderDate")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "orderDate", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date orderDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportModeCode;
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportModeName;
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionModeCode;
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionModeName;
|
||||||
|
@ApiModelProperty("海关是否查验货物")
|
||||||
|
@Excel(name = "海关是否查验货物")
|
||||||
|
private String customsInspectionFlag;
|
||||||
|
@ApiModelProperty("是否需要报关")
|
||||||
|
@Excel(name = "是否需要报关")
|
||||||
|
private String needDeclareFlag;
|
||||||
|
@ApiModelProperty("是否需要运输")
|
||||||
|
@Excel(name = "是否需要运输")
|
||||||
|
private String needTransportFlag;
|
||||||
|
@ApiModelProperty("app上传的图片")
|
||||||
|
private String pictureApp;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务单号")
|
||||||
|
@Excel(name = "业务单号")
|
||||||
|
private String businessOrderNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务类型")
|
||||||
|
@Excel(name = "业务类型")
|
||||||
|
private String businessType;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人")
|
||||||
|
@Excel(name = "制单人")
|
||||||
|
private String documentCreator;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人名称")
|
||||||
|
@Excel(name = "制单人名称")
|
||||||
|
private String documentCreatorName;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "制单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date documentDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
@ApiModelProperty("业务员名称")
|
||||||
|
private String salesmanName;
|
||||||
|
@ApiModelProperty("车次")
|
||||||
|
@Excel(name = "车次")
|
||||||
|
private Integer trainNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("线路编码(取自WMS线路管理)")
|
||||||
|
private String lineCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("线路名称(冗余存储)")
|
||||||
|
private String lineName;
|
||||||
|
|
||||||
|
@ApiModelProperty("车次序号(显示: 线路编码-车次, 如31-4)")
|
||||||
|
private String shuttleNo;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,486 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonAlias;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库单对象 stock_out_order
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-28
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class StockOutOrderDTO extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单id")
|
||||||
|
private Long outOrderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("通知单号")
|
||||||
|
@Excel(name = "通知单号")
|
||||||
|
private String noticeNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单号")
|
||||||
|
@Excel(name = "出库单号")
|
||||||
|
private String outOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-波次中 6-拣货中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭")
|
||||||
|
@Excel(name = "出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-波次中 6-拣货中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
@Excel(name = "出库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
private Integer auditStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核备注")
|
||||||
|
@Excel(name = "出库单审核备注")
|
||||||
|
private String auditRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核人")
|
||||||
|
@Excel(name = "出库单审核人")
|
||||||
|
private Long auditBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核人姓名")
|
||||||
|
@Excel(name = "出库单审核人姓名")
|
||||||
|
private String auditByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "出库单审核时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date auditTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单类型编码")
|
||||||
|
@Excel(name = "出库单类型编码")
|
||||||
|
private String orderTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单类型名称")
|
||||||
|
@Excel(name = "出库单类型名称")
|
||||||
|
private String orderTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户id")
|
||||||
|
@Excel(name = "客户id")
|
||||||
|
private Long customerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户编码")
|
||||||
|
@Excel(name = "客户编码")
|
||||||
|
private String customerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户名称")
|
||||||
|
@Excel(name = "客户名称")
|
||||||
|
private String customerName;
|
||||||
|
|
||||||
|
@ApiModelProperty("预计出货时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@Excel(name = "预计出货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expectTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应链订单号")
|
||||||
|
@Excel(name = "供应链订单号")
|
||||||
|
private String supplyChainNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别编码")
|
||||||
|
@Excel(name = "优先级别编码")
|
||||||
|
private String priorityLevelCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别名称")
|
||||||
|
@Excel(name = "优先级别名称")
|
||||||
|
private String priorityLevelName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否直接出库: 1-是 2-否")
|
||||||
|
@Excel(name = "是否直接出库: 1-是 2-否")
|
||||||
|
private Integer directWarehouse;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否复核: 1-是 2-否")
|
||||||
|
@Excel(name = "是否复核: 1-是 2-否")
|
||||||
|
private Integer review;
|
||||||
|
|
||||||
|
@ApiModelProperty("附件url")
|
||||||
|
@Excel(name = "附件url")
|
||||||
|
private String annexUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种数")
|
||||||
|
@Excel(name = "物料种数")
|
||||||
|
private Integer materialQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配数量")
|
||||||
|
@Excel(name = "分配数量")
|
||||||
|
private BigDecimal allocationQuantity;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("已生成拣货单数量")
|
||||||
|
@Excel(name = "已生成拣货单分配数量")
|
||||||
|
private BigDecimal alreadyAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("拣货数量")
|
||||||
|
@Excel(name = "拣货数量")
|
||||||
|
private BigDecimal pickingQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核数量")
|
||||||
|
@Excel(name = "复核数量")
|
||||||
|
private BigDecimal checkQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否取消订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否取消订单: 1-是 2-否")
|
||||||
|
private Integer cancelOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单备注")
|
||||||
|
@Excel(name = "取消订单备注")
|
||||||
|
private String cancelRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人")
|
||||||
|
@Excel(name = "取消订单人")
|
||||||
|
private Long cancelBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人姓名")
|
||||||
|
@Excel(name = "取消订单人姓名")
|
||||||
|
private String cancelByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "取消订单时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date cancelTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否关闭订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否关闭订单: 1-是 2-否")
|
||||||
|
private Integer closeOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单备注")
|
||||||
|
@Excel(name = "关闭订单备注")
|
||||||
|
private String closeRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人")
|
||||||
|
@Excel(name = "关闭订单人")
|
||||||
|
private Long closeBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人姓名")
|
||||||
|
@Excel(name = "关闭订单人姓名")
|
||||||
|
private String closeByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "关闭订单时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date closeTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
@Excel(name = "复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
private Integer checkStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核任务是否下发: 1-是 2-否")
|
||||||
|
@Excel(name = "复核任务是否下发: 1-是 2-否")
|
||||||
|
private Integer checkTaskDistribution;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核任务下发时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "复核任务下发时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date checkTaskDistributionTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核作业人用户ID")
|
||||||
|
@Excel(name = "复核作业人用户ID")
|
||||||
|
@JsonAlias({"checkOperatorId", "operatorId"})
|
||||||
|
private Long checkOperatorsBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核作业人姓名")
|
||||||
|
@Excel(name = "复核作业人姓名")
|
||||||
|
private String checkOperatorsName;
|
||||||
|
|
||||||
|
@ApiModelProperty("调度单号")
|
||||||
|
@Excel(name = "调度单号")
|
||||||
|
private String mobilizeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织ID集合")
|
||||||
|
private List<Long> organizationIdList;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "权限菜单ID")
|
||||||
|
private Long permissionMenuId;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单id集合")
|
||||||
|
private List<Long> outOrderIds;
|
||||||
|
|
||||||
|
// @ApiModelProperty("物料明细")
|
||||||
|
// private List<OutMaterialDetailDTO> materialDetailList;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料条形码")
|
||||||
|
@Excel(name = "物料条形码")
|
||||||
|
private String barCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料审核数量")
|
||||||
|
@Excel(name = "物料审核数量")
|
||||||
|
private BigDecimal actualQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("波次类型编码")
|
||||||
|
private String waveOrderTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("大于复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
private Integer gtCheckStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("小于复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
private Integer ltCheckStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("PDA复核查询tab: 1-列表(待复核) 2-历史记录(已复核)")
|
||||||
|
private Integer tabType;
|
||||||
|
|
||||||
|
@ApiModelProperty("to")
|
||||||
|
@Excel(name = "to")
|
||||||
|
private String to;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系人")
|
||||||
|
@Excel(name = "联系人")
|
||||||
|
private String contactPerson;
|
||||||
|
|
||||||
|
@ApiModelProperty("车型及车牌")
|
||||||
|
@Excel(name = "车型及车牌")
|
||||||
|
private String vehicleModelPlate;
|
||||||
|
|
||||||
|
@ApiModelProperty("委托编号")
|
||||||
|
@Excel(name = "委托编号")
|
||||||
|
private String entrustNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Tel")
|
||||||
|
@Excel(name = "Tel")
|
||||||
|
private String tel;
|
||||||
|
|
||||||
|
@ApiModelProperty("司机签名")
|
||||||
|
@Excel(name = "司机签名")
|
||||||
|
private String driverSign;
|
||||||
|
|
||||||
|
@ApiModelProperty("Fax")
|
||||||
|
@Excel(name = "Fax")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报地关区")
|
||||||
|
@Excel(name = "申报地关区")
|
||||||
|
private String declareCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产商")
|
||||||
|
@Excel(name = "生产商")
|
||||||
|
private String manufacturer;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关员姓名及联系方式")
|
||||||
|
@Excel(name = "报关员姓名及联系方式")
|
||||||
|
private String customsDeclarerInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("送货地址")
|
||||||
|
@Excel(name = "送货地址")
|
||||||
|
private String deliveryAddr;
|
||||||
|
|
||||||
|
@ApiModelProperty("进出境关别")
|
||||||
|
@Excel(name = "进出境关别")
|
||||||
|
private String entryExitCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("起运/运抵国(地区)")
|
||||||
|
@Excel(name = "起运/运抵国(地区)")
|
||||||
|
private String departureArrivalCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商")
|
||||||
|
@Excel(name = "承运商")
|
||||||
|
private String carrier;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜号")
|
||||||
|
@Excel(name = "柜号")
|
||||||
|
private String containerNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜")
|
||||||
|
@Excel(name = "柜")
|
||||||
|
private String containerNoName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出仓日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "出仓日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date outboundDate;
|
||||||
|
@ApiModelProperty("完成时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date completeTime;
|
||||||
|
@ApiModelProperty("orderDate")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "orderDate", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date orderDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportModeCode;
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportModeName;
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionModeCode;
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionModeName;
|
||||||
|
@ApiModelProperty("海关是否查验货物")
|
||||||
|
@Excel(name = "海关是否查验货物")
|
||||||
|
private String customsInspectionFlag;
|
||||||
|
@ApiModelProperty("是否需要报关")
|
||||||
|
@Excel(name = "是否需要报关")
|
||||||
|
private String needDeclareFlag;
|
||||||
|
@ApiModelProperty("是否需要运输")
|
||||||
|
@Excel(name = "是否需要运输")
|
||||||
|
private String needTransportFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "创建时间查询条件开始日期")
|
||||||
|
private String createTimeStart;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "创建时间查询条件结束日期")
|
||||||
|
private String createTimeEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "审核时间查询条件开始日期")
|
||||||
|
private String auditTimeStart;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "审核时间查询条件结束日期")
|
||||||
|
private String auditTimeEnd;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库明细-物料名称(商品名称),模糊匹配,与前端参数 materialName 一致")
|
||||||
|
private String materialName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库明细-物料编码,模糊匹配,与前端参数 materialCode 一致")
|
||||||
|
private String materialCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库交接图片,PDA出库交接时上传的照片,多张图片以逗号隔开")
|
||||||
|
private String pictureApp;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务单号")
|
||||||
|
@Excel(name = "业务单号")
|
||||||
|
private String businessOrderNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务类型")
|
||||||
|
@Excel(name = "业务类型")
|
||||||
|
private String businessType;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人")
|
||||||
|
@Excel(name = "制单人")
|
||||||
|
private String documentCreator;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人名称")
|
||||||
|
@Excel(name = "制单人名称")
|
||||||
|
private String documentCreatorName;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "制单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date documentDate;
|
||||||
|
@ApiModelProperty("承运商名称")
|
||||||
|
@Excel(name = "承运商名称")
|
||||||
|
private String carrierName;
|
||||||
|
@ApiModelProperty("计费信息")
|
||||||
|
private String billingJson;
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
@ApiModelProperty("业务员名称")
|
||||||
|
private String salesmanName;
|
||||||
|
// @ApiModelProperty("费用")
|
||||||
|
// List<ReceiptOrderAccount> receiptOrderAccountList;
|
||||||
|
@ApiModelProperty("退货数量")
|
||||||
|
@Excel(name = "退货数量")
|
||||||
|
private BigDecimal returnQuantity;
|
||||||
|
/**
|
||||||
|
* 提货单打印所选模版(与图5单选项文案一致即可)。可传副标题如「谷丰--营销部」,或整段「提货单--谷丰--营销部」;不传则标题为「提货单」
|
||||||
|
*/
|
||||||
|
@ApiModelProperty("提货单打印模版名/弹窗选项全文;后端生成 printTitle(-- 会规范为 ——)")
|
||||||
|
private String noticePrintTemplateName;
|
||||||
|
@ApiModelProperty("车次")
|
||||||
|
@Excel(name = "车次")
|
||||||
|
private Integer trainNo;
|
||||||
|
@ApiModelProperty("推送状态:1-未推送,2-推送中,3-推送成功,4-推送失败")
|
||||||
|
private Integer pushStatus;
|
||||||
|
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@ApiModelProperty("推送时间")
|
||||||
|
private Date pushTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送人")
|
||||||
|
private Long pushBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("推送人姓名")
|
||||||
|
private String pushByName;
|
||||||
|
@ApiModelProperty(value = "推送时间起")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date pushTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间止")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date pushTimeTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间起")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date createTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间止")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date createTimeTo;
|
||||||
|
}
|
||||||
+405
@@ -0,0 +1,405 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableField;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 出库单对象 stock_out_order
|
||||||
|
*
|
||||||
|
* @author gen
|
||||||
|
* @date 2024-05-28
|
||||||
|
*/
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class StockOutOrderTZPD extends BaseVOEntity {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单id")
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
private Long outOrderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织表ID")
|
||||||
|
@Excel(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织名称")
|
||||||
|
@Excel(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty("一级组织表ID")
|
||||||
|
@Excel(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("通知单号")
|
||||||
|
@Excel(name = "通知单号")
|
||||||
|
private String noticeNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单号")
|
||||||
|
@Excel(name = "出库单号")
|
||||||
|
private String outOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-波次中 6-拣货中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭 12-已复核")
|
||||||
|
@Excel(name = "出库状态: 1-已创建 2-已审核 3-部分分配 4-已分配 5-波次中 6-拣货中 7-拣货完成 8-复核中 9-已出库 10-已取消 11-已关闭 12-已复核")
|
||||||
|
private Integer status;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
@Excel(name = "出库单审核状态: 1-未审核 2-审核不通过 3-审核通过")
|
||||||
|
private Integer auditStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核备注")
|
||||||
|
@Excel(name = "出库单审核备注")
|
||||||
|
private String auditRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核人")
|
||||||
|
@Excel(name = "出库单审核人")
|
||||||
|
private Long auditBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核人姓名")
|
||||||
|
@Excel(name = "出库单审核人姓名")
|
||||||
|
private String auditByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单审核时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "出库单审核时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date auditTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库id")
|
||||||
|
@Excel(name = "仓库id")
|
||||||
|
private Long warehouseId;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库编码")
|
||||||
|
@Excel(name = "仓库编码")
|
||||||
|
private String warehouseCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("仓库名称")
|
||||||
|
@Excel(name = "仓库名称")
|
||||||
|
private String warehouseName;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主id")
|
||||||
|
@Excel(name = "货主id")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主编码")
|
||||||
|
@Excel(name = "货主编码")
|
||||||
|
private String shipperCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主名称")
|
||||||
|
@Excel(name = "货主名称")
|
||||||
|
private String shipperName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单类型编码")
|
||||||
|
@Excel(name = "出库单类型编码")
|
||||||
|
private String orderTypeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单类型名称")
|
||||||
|
@Excel(name = "出库单类型名称")
|
||||||
|
private String orderTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户id")
|
||||||
|
@Excel(name = "客户id")
|
||||||
|
private Long customerId;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户编码")
|
||||||
|
@Excel(name = "客户编码")
|
||||||
|
private String customerCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户名称")
|
||||||
|
@Excel(name = "客户名称")
|
||||||
|
private String customerName;
|
||||||
|
|
||||||
|
@ApiModelProperty("预计出货时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@Excel(name = "预计出货时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date expectTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("供应链订单号")
|
||||||
|
@Excel(name = "供应链订单号")
|
||||||
|
private String supplyChainNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别编码")
|
||||||
|
@Excel(name = "优先级别编码")
|
||||||
|
private String priorityLevelCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("优先级别名称")
|
||||||
|
@Excel(name = "优先级别名称")
|
||||||
|
private String priorityLevelName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否直接出库: 1-是 2-否")
|
||||||
|
@Excel(name = "是否直接出库: 1-是 2-否")
|
||||||
|
private Integer directWarehouse;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否复核: 1-是 2-否")
|
||||||
|
@Excel(name = "是否复核: 1-是 2-否")
|
||||||
|
private Integer review;
|
||||||
|
|
||||||
|
@ApiModelProperty("附件url")
|
||||||
|
@Excel(name = "附件url")
|
||||||
|
private String annexUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty("物料种数")
|
||||||
|
@Excel(name = "物料种数")
|
||||||
|
private Integer materialQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("计划数量")
|
||||||
|
@Excel(name = "计划数量")
|
||||||
|
private BigDecimal quantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("净重 单位:千克")
|
||||||
|
@Excel(name = "净重 单位:千克")
|
||||||
|
private BigDecimal weightLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积 单位:立方米")
|
||||||
|
@Excel(name = "体积 单位:立方米")
|
||||||
|
private BigDecimal volumeLimit;
|
||||||
|
|
||||||
|
@ApiModelProperty("分配数量")
|
||||||
|
@Excel(name = "分配数量")
|
||||||
|
private BigDecimal allocationQuantity;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("已生成拣货单数量")
|
||||||
|
@Excel(name = "已生成拣货单分配数量")
|
||||||
|
private BigDecimal alreadyAllocationQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("拣货数量")
|
||||||
|
@Excel(name = "拣货数量")
|
||||||
|
private BigDecimal pickingQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核数量")
|
||||||
|
@Excel(name = "复核数量")
|
||||||
|
private BigDecimal checkQuantity;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否取消订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否取消订单: 1-是 2-否")
|
||||||
|
private Integer cancelOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单备注")
|
||||||
|
@Excel(name = "取消订单备注")
|
||||||
|
private String cancelRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人")
|
||||||
|
@Excel(name = "取消订单人")
|
||||||
|
private Long cancelBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单人姓名")
|
||||||
|
@Excel(name = "取消订单人姓名")
|
||||||
|
private String cancelByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("取消订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "取消订单时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date cancelTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否关闭订单: 1-是 2-否")
|
||||||
|
@Excel(name = "是否关闭订单: 1-是 2-否")
|
||||||
|
private Integer closeOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单备注")
|
||||||
|
@Excel(name = "关闭订单备注")
|
||||||
|
private String closeRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人")
|
||||||
|
@Excel(name = "关闭订单人")
|
||||||
|
private Long closeBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单人姓名")
|
||||||
|
@Excel(name = "关闭订单人姓名")
|
||||||
|
private String closeByName;
|
||||||
|
|
||||||
|
@ApiModelProperty("关闭订单时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@Excel(name = "关闭订单时间", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date closeTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
@Excel(name = "复核状态: 1-未复核 2-复核中 3-已复核")
|
||||||
|
private Integer checkStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核任务是否下发: 1-是 2-否")
|
||||||
|
@Excel(name = "复核任务是否下发: 1-是 2-否")
|
||||||
|
private Integer checkTaskDistribution;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核任务下发时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "复核任务下发时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date checkTaskDistributionTime;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核作业人用户ID")
|
||||||
|
@Excel(name = "复核作业人用户ID")
|
||||||
|
private Long checkOperatorsBy;
|
||||||
|
|
||||||
|
@ApiModelProperty("复核作业人姓名")
|
||||||
|
@Excel(name = "复核作业人姓名")
|
||||||
|
private String checkOperatorsName;
|
||||||
|
|
||||||
|
@ApiModelProperty("调度单号")
|
||||||
|
@Excel(name = "调度单号")
|
||||||
|
private String mobilizeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("备注")
|
||||||
|
@Excel(name = "备注")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单id")
|
||||||
|
private Long overStockId;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
@Excel(name = "越库单状态 0:无状态 1:处理中 2:越库完成")
|
||||||
|
private Integer overStockStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty("越库类型:1-直接越库 2-分拨越库")
|
||||||
|
@Excel(name = "越库类型:1-直接越库 2-分拨越库")
|
||||||
|
private Long overStockType;
|
||||||
|
|
||||||
|
@ApiModelProperty("to")
|
||||||
|
@Excel(name = "to")
|
||||||
|
@TableField(value = "\"TO\"")
|
||||||
|
private String to;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系人")
|
||||||
|
@Excel(name = "联系人")
|
||||||
|
private String contactPerson;
|
||||||
|
|
||||||
|
@ApiModelProperty("车型及车牌")
|
||||||
|
@Excel(name = "车型及车牌")
|
||||||
|
private String vehicleModelPlate;
|
||||||
|
|
||||||
|
@ApiModelProperty("委托编号")
|
||||||
|
@Excel(name = "委托编号")
|
||||||
|
private String entrustNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("Tel")
|
||||||
|
@Excel(name = "Tel")
|
||||||
|
private String tel;
|
||||||
|
|
||||||
|
@ApiModelProperty("司机签名")
|
||||||
|
@Excel(name = "司机签名")
|
||||||
|
private String driverSign;
|
||||||
|
|
||||||
|
@ApiModelProperty("Fax")
|
||||||
|
@Excel(name = "Fax")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("申报地关区")
|
||||||
|
@Excel(name = "申报地关区")
|
||||||
|
private String declareCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("生产商")
|
||||||
|
@Excel(name = "生产商")
|
||||||
|
private String manufacturer;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关员姓名及联系方式")
|
||||||
|
@Excel(name = "报关员姓名及联系方式")
|
||||||
|
private String customsDeclarerInfo;
|
||||||
|
|
||||||
|
@ApiModelProperty("送货地址")
|
||||||
|
@Excel(name = "送货地址")
|
||||||
|
private String deliveryAddr;
|
||||||
|
|
||||||
|
@ApiModelProperty("进出境关别")
|
||||||
|
@Excel(name = "进出境关别")
|
||||||
|
private String entryExitCustoms;
|
||||||
|
|
||||||
|
@ApiModelProperty("起运/运抵国(地区)")
|
||||||
|
@Excel(name = "起运/运抵国(地区)")
|
||||||
|
private String departureArrivalCountry;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商")
|
||||||
|
@Excel(name = "承运商")
|
||||||
|
private String carrier;
|
||||||
|
|
||||||
|
@ApiModelProperty("承运商名称")
|
||||||
|
@Excel(name = "承运商名称")
|
||||||
|
private String carrierName;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜号")
|
||||||
|
@Excel(name = "柜号")
|
||||||
|
private String containerNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜")
|
||||||
|
@Excel(name = "柜")
|
||||||
|
private String containerNoName;
|
||||||
|
|
||||||
|
@ApiModelProperty("出仓日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "出仓日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date outboundDate;
|
||||||
|
@ApiModelProperty("完成时间")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "完成时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date completeTime;
|
||||||
|
@ApiModelProperty("orderDate")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@Excel(name = "orderDate", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date orderDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportModeCode;
|
||||||
|
@ApiModelProperty("运输方式")
|
||||||
|
@Excel(name = "运输方式")
|
||||||
|
private String transportModeName;
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionModeCode;
|
||||||
|
@ApiModelProperty("监管方式")
|
||||||
|
@Excel(name = "监管方式")
|
||||||
|
private String supervisionModeName;
|
||||||
|
@ApiModelProperty("海关是否查验货物")
|
||||||
|
@Excel(name = "海关是否查验货物")
|
||||||
|
private String customsInspectionFlag;
|
||||||
|
@ApiModelProperty("是否需要报关")
|
||||||
|
@Excel(name = "是否需要报关")
|
||||||
|
private String needDeclareFlag;
|
||||||
|
@ApiModelProperty("是否需要运输")
|
||||||
|
@Excel(name = "是否需要运输")
|
||||||
|
private String needTransportFlag;
|
||||||
|
@ApiModelProperty("app上传的图片")
|
||||||
|
private String pictureApp;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务单号")
|
||||||
|
@Excel(name = "业务单号")
|
||||||
|
private String businessOrderNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务类型")
|
||||||
|
@Excel(name = "业务类型")
|
||||||
|
private String businessType;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人")
|
||||||
|
@Excel(name = "制单人")
|
||||||
|
private String documentCreator;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人名称")
|
||||||
|
@Excel(name = "制单人名称")
|
||||||
|
private String documentCreatorName;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单日期")
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
@Excel(name = "制单日期", width = 30, dateFormat = "yyyy-MM-dd")
|
||||||
|
private Date documentDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
@ApiModelProperty("业务员名称")
|
||||||
|
private String salesmanName;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -34,6 +34,45 @@ public class SysDictType extends BaseEntity
|
|||||||
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
@Excel(name = "状态", readConverterExp = "0=正常,1=停用")
|
||||||
private String status;
|
private String status;
|
||||||
|
|
||||||
|
/** 组织表ID */
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
/** 组织名称 */
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
/** 一级组织表ID */
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
public Long getOrganizationId()
|
||||||
|
{
|
||||||
|
return organizationId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrganizationId(Long organizationId)
|
||||||
|
{
|
||||||
|
this.organizationId = organizationId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getOrganizationName()
|
||||||
|
{
|
||||||
|
return organizationName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setOrganizationName(String organizationName)
|
||||||
|
{
|
||||||
|
this.organizationName = organizationName;
|
||||||
|
}
|
||||||
|
|
||||||
|
public Long getTopOrganizationId()
|
||||||
|
{
|
||||||
|
return topOrganizationId;
|
||||||
|
}
|
||||||
|
|
||||||
|
public void setTopOrganizationId(Long topOrganizationId)
|
||||||
|
{
|
||||||
|
this.topOrganizationId = topOrganizationId;
|
||||||
|
}
|
||||||
|
|
||||||
public Long getDictId()
|
public Long getDictId()
|
||||||
{
|
{
|
||||||
return dictId;
|
return dictId;
|
||||||
@@ -86,6 +125,9 @@ public class SysDictType extends BaseEntity
|
|||||||
.append("dictName", getDictName())
|
.append("dictName", getDictName())
|
||||||
.append("dictType", getDictType())
|
.append("dictType", getDictType())
|
||||||
.append("status", getStatus())
|
.append("status", getStatus())
|
||||||
|
.append("organizationId", getOrganizationId())
|
||||||
|
.append("organizationName", getOrganizationName())
|
||||||
|
.append("topOrganizationId", getTopOrganizationId())
|
||||||
.append("createBy", getCreateBy())
|
.append("createBy", getCreateBy())
|
||||||
.append("createTime", getCreateTime())
|
.append("createTime", getCreateTime())
|
||||||
.append("updateBy", getUpdateBy())
|
.append("updateBy", getUpdateBy())
|
||||||
|
|||||||
@@ -96,7 +96,7 @@ public class SysLogininfor {
|
|||||||
/**
|
/**
|
||||||
* 访问时间
|
* 访问时间
|
||||||
*/
|
*/
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
@Excel(name = "访问时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
private Date accessTime;
|
private Date accessTime;
|
||||||
|
|
||||||
@@ -109,4 +109,4 @@ public class SysLogininfor {
|
|||||||
* 响应时间ms
|
* 响应时间ms
|
||||||
*/
|
*/
|
||||||
private String responseTime;
|
private String responseTime;
|
||||||
}
|
}
|
||||||
@@ -156,7 +156,7 @@ public class SysOperLog {
|
|||||||
/**
|
/**
|
||||||
* 操作时间
|
* 操作时间
|
||||||
*/
|
*/
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
@Excel(name = "操作时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss")
|
||||||
private Date operTime;
|
private Date operTime;
|
||||||
|
|
||||||
@@ -176,4 +176,4 @@ public class SysOperLog {
|
|||||||
* 端口
|
* 端口
|
||||||
*/
|
*/
|
||||||
private String port;
|
private String port;
|
||||||
}
|
}
|
||||||
+9
-1
@@ -127,4 +127,12 @@ public class TmsMakeOutInvoice implements Serializable {
|
|||||||
private String actualInvoiceCustomerId;
|
private String actualInvoiceCustomerId;
|
||||||
@ApiModelProperty(value = "实际开票客户名称")
|
@ApiModelProperty(value = "实际开票客户名称")
|
||||||
private String actualInvoiceCustomerName;
|
private String actualInvoiceCustomerName;
|
||||||
}
|
@ApiModelProperty(value = "无税费用")
|
||||||
|
private BigDecimal taxFreeFee;
|
||||||
|
@ApiModelProperty(value = "税额")
|
||||||
|
private BigDecimal taxAmount;
|
||||||
|
@ApiModelProperty(value = "税率")
|
||||||
|
private Double taxRate;
|
||||||
|
@ApiModelProperty(value = "费用类别")
|
||||||
|
private String feeType;
|
||||||
|
}
|
||||||
+77
@@ -0,0 +1,77 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 销项发票表
|
||||||
|
* @Author: lfs
|
||||||
|
* @Date: 2020-02-19 08:50:47
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@TableName("tms_make_out_invoice_item")
|
||||||
|
public class TmsMakeOutInvoiceItem implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/**主键*/
|
||||||
|
@TableId(type = IdType.ID_WORKER_STR)
|
||||||
|
private String id;
|
||||||
|
/**makeId*/
|
||||||
|
@ApiModelProperty(value = "makeId")
|
||||||
|
private String makeId;
|
||||||
|
/**发票金额*/
|
||||||
|
@ApiModelProperty(value = "发票金额")
|
||||||
|
private BigDecimal invoiceValue;
|
||||||
|
/**发票备注*/
|
||||||
|
@ApiModelProperty(value = "发票备注")
|
||||||
|
@Excel(name = "发票备注", width = 15)
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
/**创建人*/
|
||||||
|
@ApiModelProperty(value = "创建人")
|
||||||
|
private String createBy;
|
||||||
|
/**创建日期*/
|
||||||
|
@ApiModelProperty(value = "创建日期")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date createTime;
|
||||||
|
/**更新人*/
|
||||||
|
@ApiModelProperty(value = "更新人")
|
||||||
|
private String updateBy;
|
||||||
|
/**更新日期*/
|
||||||
|
@ApiModelProperty(value = "更新日期")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date updateTime;
|
||||||
|
/**是否删除(0-否,1-是)*/
|
||||||
|
@ApiModelProperty(value = "是否删除(0-否,1-是)")
|
||||||
|
private Integer isDelete;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "开票项目")
|
||||||
|
private String invoiceItem;
|
||||||
|
@ApiModelProperty(value = "开票项目名称")
|
||||||
|
private String invoiceItemName;
|
||||||
|
@ApiModelProperty(value = "实际开票客户id")
|
||||||
|
private String actualInvoiceCustomerId;
|
||||||
|
@ApiModelProperty(value = "实际开票客户名称")
|
||||||
|
private String actualInvoiceCustomerName;
|
||||||
|
@ApiModelProperty(value = "无税费用")
|
||||||
|
private BigDecimal taxFreeFee;
|
||||||
|
@ApiModelProperty(value = "税额")
|
||||||
|
private BigDecimal taxAmount;
|
||||||
|
@ApiModelProperty(value = "税率")
|
||||||
|
private Double taxRate;
|
||||||
|
@ApiModelProperty(value = "费用类别")
|
||||||
|
private String feeType;
|
||||||
|
}
|
||||||
@@ -0,0 +1,510 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.domain.dto.wlhy.TmsAddressMultiDTO;
|
||||||
|
import com.mhd.common.core.domain.dto.wlhy.TmsCargoInfoDTO;
|
||||||
|
import com.mhd.common.core.domain.dto.wlhy.TmsOrderAccount;
|
||||||
|
import com.mhd.system.api.model.LoginUser;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description: 货源表
|
||||||
|
* @Author: lfs
|
||||||
|
* @Date: 2020-02-14 09:49:27
|
||||||
|
* @Version: V1.0
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class
|
||||||
|
|
||||||
|
TmsOrderAddDTO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
@TableId(type = IdType.ID_WORKER_STR)
|
||||||
|
private String id;
|
||||||
|
// @ApiModelProperty(value = "线路名称ID")
|
||||||
|
// private java.lang.String lineNameId="";
|
||||||
|
// @ApiModelProperty(value = "线路名称")
|
||||||
|
// private java.lang.String lineName="";
|
||||||
|
//
|
||||||
|
// @ApiModelProperty(value = "运距(千米)")
|
||||||
|
// private BigDecimal haulDistance;
|
||||||
|
@ApiModelProperty(value = "装货地县区编码",required = true)
|
||||||
|
private String loadingAreaId="";
|
||||||
|
@ApiModelProperty(value = "装货地详细地址")
|
||||||
|
private String loadingAddress="";
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "发货人姓名")
|
||||||
|
private String freighterName="";
|
||||||
|
@ApiModelProperty(value = "装货电话")
|
||||||
|
private String loadingPhone="";
|
||||||
|
@ApiModelProperty(value = "装货时间日期(年月日)",required = true)
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private java.util.Date loadingDate;
|
||||||
|
// @ApiModelProperty(value = "装货时间(上午、下午、24小时)")
|
||||||
|
// private String loadingTime="";
|
||||||
|
@ApiModelProperty(value = "卸货地县区编码",required = true)
|
||||||
|
private String unloadAreaId="";
|
||||||
|
@ApiModelProperty(value = "卸货地详细地址")
|
||||||
|
private String unloadAddress="";
|
||||||
|
@ApiModelProperty(value = "收货人姓名")
|
||||||
|
private String dischargerName="";
|
||||||
|
@ApiModelProperty(value = "卸货电话")
|
||||||
|
private String unloadPhone="";
|
||||||
|
@ApiModelProperty(value = "卸货时间日期(年月日)",required = true)
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd")
|
||||||
|
private java.util.Date unloadingData;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "装货时间id",required = true)
|
||||||
|
// private String loadingTimeId;
|
||||||
|
// @ApiModelProperty(value = "卸货时间id",required = true)
|
||||||
|
// private String unloadingTimeId;
|
||||||
|
// @ApiModelProperty(value = "卸货时间(上午、下午、24小时)")
|
||||||
|
// private java.lang.String unloadingTime;
|
||||||
|
@ApiModelProperty(value = "货物名称ID")
|
||||||
|
private String goodsNameId;
|
||||||
|
@ApiModelProperty(value = "货物名称")
|
||||||
|
private String goodsName;
|
||||||
|
@ApiModelProperty(value = "货物名称ID",required = true)
|
||||||
|
private String goodsTypeId;
|
||||||
|
@ApiModelProperty(value = "货物大类型")
|
||||||
|
private String goodsType="";
|
||||||
|
@ApiModelProperty(value = "重量小(吨)",required = true)
|
||||||
|
private BigDecimal weightMin;
|
||||||
|
@ApiModelProperty(value = "重量大(吨)",required = true)
|
||||||
|
private BigDecimal weightMax;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "货物数量单位(吨/方/件)id",required = true)
|
||||||
|
private String goodsUntisId;
|
||||||
|
@ApiModelProperty(value = "配载方式ID(0-数量,1-车次)",required = true)
|
||||||
|
private Integer transportationModeId = 1;
|
||||||
|
@ApiModelProperty(value = "车型车长ID")
|
||||||
|
private String carType;
|
||||||
|
// @ApiModelProperty(value = "指定司机ID")
|
||||||
|
// private String appointDriverId;
|
||||||
|
// @ApiModelProperty(value = "司机姓名")
|
||||||
|
// private String appointDriver;
|
||||||
|
// @ApiModelProperty(value = "司机手机号")
|
||||||
|
// private String appointDriverPhone;
|
||||||
|
// @ApiModelProperty(value = "司机车牌号")
|
||||||
|
// private String appointDriverLicense;
|
||||||
|
@ApiModelProperty(value = "服务要求ID")
|
||||||
|
private String serviceRequireId;
|
||||||
|
@ApiModelProperty(value = "备注")
|
||||||
|
private String remarks;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "备注")
|
||||||
|
private String orderRemark;
|
||||||
|
// @ApiModelProperty(value = "运单类型(0-企业普货、1-企业批量货、2-撮合货(普通货源)、3-客服运单,4-线下运单)")
|
||||||
|
// private Integer waybillType ;
|
||||||
|
@ApiModelProperty(value = "运单类型:0-pc端发货,1-pc端导入,2-货主端app发货")
|
||||||
|
private Integer waybillFrom = 2 ;
|
||||||
|
// @ApiModelProperty(value = "期望运费")
|
||||||
|
// private java.math.BigDecimal freightHope;
|
||||||
|
// @ApiModelProperty(value = "占用车长")
|
||||||
|
// private String occupyConductor;
|
||||||
|
@ApiModelProperty(value = "运单模式(0-普通模式,1-竞价模式)")
|
||||||
|
private Integer waybillMode = 0;
|
||||||
|
@ApiModelProperty(value = "竞价截止时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private java.util.Date latestBiddingTime;
|
||||||
|
@ApiModelProperty(value = "发货运费")
|
||||||
|
private BigDecimal deliveryFreight;
|
||||||
|
@ApiModelProperty(value = "运费单价(元/吨)")
|
||||||
|
private BigDecimal transportationUnitPrice;
|
||||||
|
@ApiModelProperty(value = "结算方式,1-按趟结算,2-按数量结算")
|
||||||
|
private Integer radioValue;
|
||||||
|
@ApiModelProperty(value = "合同物流导入(0-默认,1-合同,2-普通导入)")
|
||||||
|
private Integer isContract = 0;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "是否长期货源:0-否,1-是")
|
||||||
|
// private Integer isLongOrder=0;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "卸货单位")
|
||||||
|
// private java.lang.String unloadUnit;
|
||||||
|
// @ApiModelProperty(value = "收货人身份证号")
|
||||||
|
// private String unloadIdentificationNumber;
|
||||||
|
// @ApiModelProperty(value = "代运营人员用户ID")
|
||||||
|
// private String orderAgentUserId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "指定货主编号")
|
||||||
|
private String appointShipperId;
|
||||||
|
@ApiModelProperty(value = "指定货主")
|
||||||
|
private String appointShipper;
|
||||||
|
// @ApiModelProperty(value = "指定平台公司")
|
||||||
|
// private String appointCompanyId;
|
||||||
|
// @ApiModelProperty(value = "指定平台公司名称")
|
||||||
|
// private String appointCompanyName;
|
||||||
|
// @ApiModelProperty(value = "指定车辆ID")
|
||||||
|
// private String appointVehicleId;
|
||||||
|
// @ApiModelProperty(value = "指定车辆设备号")
|
||||||
|
// private String appointVehicleDevice;
|
||||||
|
|
||||||
|
|
||||||
|
/**是否开启路耗(0-否 1-是)*/
|
||||||
|
// @ApiModelProperty(value = "是否开启路耗(0-否 1-是)")
|
||||||
|
// @Excel(name = "是否开启路耗(0-否 1-是)", width = 15)
|
||||||
|
// private Integer isRoadLoss=0;
|
||||||
|
/**货物价值(元/吨)*/
|
||||||
|
// @ApiModelProperty(value = "货物价值(元/吨)")
|
||||||
|
// @Excel(name = "货物价值(元/吨)", width = 15)
|
||||||
|
// private BigDecimal goodsValue=BigDecimal.ZERO;
|
||||||
|
/**路耗模式( 0-按比例% 1-按数量(吨))*/
|
||||||
|
// @ApiModelProperty(value = "路耗模式( 0-按比例% 1-按数量(吨))")
|
||||||
|
// @Excel(name = "路耗模式( 0-按比例% 1-按数量(吨))", width = 15)
|
||||||
|
// private Integer roadLossMode;
|
||||||
|
// /**路耗结算方式( 1-取装货重量 2-取卸货重量 3-装卸货取大 4-装卸货取小)*/
|
||||||
|
// @ApiModelProperty(value = "路耗结算方式(0-无 1-取装货重量 2-取卸货重量 3-装卸货取大 4-装卸货取小)")
|
||||||
|
// @Excel(name = "路耗结算方式( 1-取装货重量 2-取卸货重量 3-装卸货取大 4-装卸货取小)", width = 15)
|
||||||
|
// private Integer roadLossSettlementMethod;
|
||||||
|
/**允许货物亏损*/
|
||||||
|
// @ApiModelProperty(value = "允许货物亏损(吨或%)")
|
||||||
|
// @Excel(name = "允许货物亏损(吨或%)", width = 15)
|
||||||
|
// private BigDecimal allowableLoss=BigDecimal.ZERO;
|
||||||
|
|
||||||
|
/**超出亏损扣除金额(元/吨)*/
|
||||||
|
// @ApiModelProperty(value = "超出亏损扣除金额(元/吨)")
|
||||||
|
// @Excel(name = "超出亏损扣除金额(元/吨)", width = 15)
|
||||||
|
// private BigDecimal lossDeductionAmount=BigDecimal.ZERO;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "上游客户id")
|
||||||
|
// @Excel(name = "上游客户id", width = 15)
|
||||||
|
// private String upClientId;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "运费抹零 0-不抹零 ,1-抹零小数位,2-抹零个位,3-抹零十位")
|
||||||
|
// private Integer isFreightNullification ;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "加油宝计算模式 0-按比例 1-按数值")
|
||||||
|
private Integer oilValue ;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "是否允许接多单:0否 1是")
|
||||||
|
// private Integer isMultipleOrdersAllowed;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "发货备注")
|
||||||
|
private String shippingNote;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "涨吨是否计算费用 0-否 1-是 ")
|
||||||
|
// private Integer isTonnageIncreaseCharge;
|
||||||
|
@ApiModelProperty(value = "装货地经度")
|
||||||
|
private String loadingLongitude;
|
||||||
|
@ApiModelProperty(value = "装货地纬度")
|
||||||
|
private String loadingLatitude;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "卸货地经度")
|
||||||
|
private String unloadLongitude;
|
||||||
|
@ApiModelProperty(value = "卸货地纬度")
|
||||||
|
private String unloadLatitude;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "预设竞标价")
|
||||||
|
@Excel(name = "预设竞标价", width = 15)
|
||||||
|
private BigDecimal highestPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "预设竞标价")
|
||||||
|
private BigDecimal presetPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "竞价单位(元/车,元/吨)")
|
||||||
|
private String biddingUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "竞价最高可输入价格")
|
||||||
|
@Excel(name = "竞价最高可输入价格", width = 15)
|
||||||
|
private BigDecimal maximumBidPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "评标类型(0-自动评标,1-手动评标)")
|
||||||
|
private Integer bidEvaluationType = 1;
|
||||||
|
|
||||||
|
@ApiModelProperty("应收结算类型:1-月结,2-现结")
|
||||||
|
private Integer receivableType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "货物数量")
|
||||||
|
private String goodsQuantity;
|
||||||
|
@ApiModelProperty(value = "货物数量单位code")
|
||||||
|
private String goodsQuantityUnitId;
|
||||||
|
@ApiModelProperty(value = "货物数量单位")
|
||||||
|
private String goodsQuantityUnit;
|
||||||
|
|
||||||
|
@ApiModelProperty("收款账户")
|
||||||
|
private String accountName;
|
||||||
|
@ApiModelProperty("收款账户信息")
|
||||||
|
private String accountInformation;
|
||||||
|
|
||||||
|
// @ApiModelProperty("项目表ID")
|
||||||
|
// private Long projectManagementId;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "服务费率")
|
||||||
|
// private BigDecimal serviceRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否自动生成协议 0-否 1-是")
|
||||||
|
@Excel(name = "是否自动生成协议 0-否 1-是")
|
||||||
|
private Integer isAutoGenerateProtocol;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "单车总费用")
|
||||||
|
// @Excel(name = "单车总费用", width = 15)
|
||||||
|
// private BigDecimal freightGross = BigDecimal.ZERO;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "协议费用:回单付金额")
|
||||||
|
// @Excel(name = "协议费用:回单付金额", width = 15)
|
||||||
|
// private BigDecimal receiptPaymentAmount = BigDecimal.ZERO;
|
||||||
|
//
|
||||||
|
// @ApiModelProperty(value = "协议费用:预付现金金额")
|
||||||
|
// @Excel(name = "协议费用:预付现金金额", width = 15)
|
||||||
|
// private BigDecimal cashAdvance = BigDecimal.ZERO;
|
||||||
|
//
|
||||||
|
// @ApiModelProperty(value = "协议费用:到付运费金额")
|
||||||
|
// @Excel(name = "协议费用:到付运费金额", width = 15)
|
||||||
|
// private BigDecimal freightAmount = BigDecimal.ZERO;
|
||||||
|
//
|
||||||
|
// @ApiModelProperty(value = "协议费用:预付平台油卡金额")
|
||||||
|
// @Excel(name = "协议费用:预付平台油卡金额", width = 15)
|
||||||
|
// private BigDecimal oilCardOnline = BigDecimal.ZERO;
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "单车重量", required = true)
|
||||||
|
// private BigDecimal singleVehicleWeight;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
//=================批量货派单相关=============================
|
||||||
|
// @ApiModelProperty(value = "需求车次")
|
||||||
|
// private Integer demandTrainNumber;
|
||||||
|
// @ApiModelProperty(value = "承运车次默认0")
|
||||||
|
// private Integer carriageNumber;
|
||||||
|
// @ApiModelProperty(value = "剩余需求车次")
|
||||||
|
// private Integer remainingDemandTrainNumber;
|
||||||
|
|
||||||
|
/**货物重量*/
|
||||||
|
// @ApiModelProperty(value = "货物重量")
|
||||||
|
// private BigDecimal goodsWeight;
|
||||||
|
// @ApiModelProperty(value = "货源剩余货物数量")
|
||||||
|
// private BigDecimal residueGoodsWeight;
|
||||||
|
// @ApiModelProperty(value = "承运货物数量")
|
||||||
|
// private BigDecimal transportGoodsWeight;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "货物信息表")
|
||||||
|
private List<TmsCargoInfoDTO> cargoInfoList;
|
||||||
|
@ApiModelProperty(value = "装货地址集合")
|
||||||
|
private List<TmsAddressMultiDTO> loadingAddressList;
|
||||||
|
@ApiModelProperty(value = "卸货地址集合")
|
||||||
|
private List<TmsAddressMultiDTO> unloadAddressList;
|
||||||
|
|
||||||
|
@ApiModelProperty("费用科目明细")
|
||||||
|
private List<TmsOrderAccount> tmsOrderAccountList;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// @ApiModelProperty(value = "来源系统")
|
||||||
|
// private String orderSource;
|
||||||
|
|
||||||
|
//========================================新增字段==========================================
|
||||||
|
@ApiModelProperty(value = "付款方类型(0-委托方,1-收货方)")
|
||||||
|
@Excel(name = "付款方类型(0-委托方,1-收货方)", width = 15)
|
||||||
|
private Integer payerType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "收货方编码")
|
||||||
|
private String recipientId;
|
||||||
|
@ApiModelProperty(value = "收货方")
|
||||||
|
private String recipientName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "整机编号")
|
||||||
|
private String machineNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "是否库存(0-是,1-否)")
|
||||||
|
@Excel(name = "是否库存(0-是,1-否)", width = 15)
|
||||||
|
private Integer stockFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "信息费")
|
||||||
|
private BigDecimal infoFee;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "订单类型(1-普货运输,2-危化运输,3-罐车运输,4-济南专线,5-江西专线)")
|
||||||
|
private Integer orderShippingType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "单号")
|
||||||
|
private String thirdPartyOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "车辆类型Id")
|
||||||
|
private String vehicleTypeId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "车辆类型名称")
|
||||||
|
private String vehicleTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "承运人Id(订单为济南专线使用)")
|
||||||
|
private String carrier;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "承运人姓名(订单为济南专线使用)")
|
||||||
|
private String carrierName;
|
||||||
|
|
||||||
|
@ApiModelProperty("运费单价")
|
||||||
|
private BigDecimal freightUnitPrice;
|
||||||
|
|
||||||
|
@ApiModelProperty("数字物流平台用户id")
|
||||||
|
private Long szwlUserId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "信息费收款方")
|
||||||
|
private String infoFeePayee;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "信息费收款方方式(0-委托方,1-收货方,2-第三方)")
|
||||||
|
private Integer infoFeePayeeType;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanId;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务员ID")
|
||||||
|
private String salesmanName;
|
||||||
|
|
||||||
|
@ApiModelProperty("是否报关(0:否,1:是)")
|
||||||
|
private Integer isDeclare;
|
||||||
|
|
||||||
|
@ApiModelProperty("线路")
|
||||||
|
private String route;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜类型")
|
||||||
|
private String containerType;
|
||||||
|
|
||||||
|
@ApiModelProperty("柜类型名称")
|
||||||
|
private String containerTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("卡类型")
|
||||||
|
private String cardType;
|
||||||
|
|
||||||
|
@ApiModelProperty("卡类型名称")
|
||||||
|
private String cardTypeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("外来柜号")
|
||||||
|
private String externalContainerNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("中转地")
|
||||||
|
private String transitPlace;
|
||||||
|
|
||||||
|
@ApiModelProperty("托运人ID")
|
||||||
|
private String shipper;
|
||||||
|
|
||||||
|
@ApiModelProperty("托运人ID")
|
||||||
|
private String customsShipper;
|
||||||
|
|
||||||
|
@ApiModelProperty("托运人电话")
|
||||||
|
private String customsShipperTel;
|
||||||
|
|
||||||
|
@ApiModelProperty("卸货单位")
|
||||||
|
private String unloadingCompany;
|
||||||
|
|
||||||
|
@ApiModelProperty("合同编号")
|
||||||
|
private String contractNo;
|
||||||
|
|
||||||
|
@ApiModelProperty("运费")
|
||||||
|
private BigDecimal freightFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("卸货费")
|
||||||
|
private BigDecimal unloadingFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关费")
|
||||||
|
private BigDecimal customsFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("差货费")
|
||||||
|
private BigDecimal shortageFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("杂费")
|
||||||
|
private BigDecimal miscellaneousFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("其他费用")
|
||||||
|
private BigDecimal otherFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("滞车费")
|
||||||
|
private BigDecimal detentionFee;
|
||||||
|
|
||||||
|
@ApiModelProperty("税率")
|
||||||
|
private BigDecimal taxRate;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
|
||||||
|
@ApiModelProperty("体积")
|
||||||
|
private BigDecimal volume;
|
||||||
|
|
||||||
|
@ApiModelProperty("内容详情")
|
||||||
|
private String detailContent;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关线路")
|
||||||
|
private String customsRoute;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关关口")
|
||||||
|
private String customsPort;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关联系人")
|
||||||
|
private String customsContact;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关联系人电话")
|
||||||
|
private String customsContactPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("报关备注")
|
||||||
|
private String customsRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "组织ID")
|
||||||
|
private String orgId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "所属组织")
|
||||||
|
@Excel(name = "所属组织", width = 15)
|
||||||
|
private String orgName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "上级组织ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户编码nc")
|
||||||
|
private String customerCodeNc;
|
||||||
|
|
||||||
|
@ApiModelProperty("制单人编码nc")
|
||||||
|
private String makerCodeNc;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务员编码nc")
|
||||||
|
private String salesmanCodeNc;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "单据日期")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private java.util.Date documentDate;
|
||||||
|
|
||||||
|
@ApiModelProperty("收款账户id")
|
||||||
|
private String paymentAccountId;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("执行单id")
|
||||||
|
private String executeOrderId;
|
||||||
|
|
||||||
|
@ApiModelProperty("执行单号")
|
||||||
|
private String executeOrderNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单来源 0,oms 1,tms")
|
||||||
|
private String orderSource;
|
||||||
|
|
||||||
|
@ApiModelProperty("当前登录用户")
|
||||||
|
private LoginUser loginUser;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("发票编号")
|
||||||
|
@Excel(name = "发票编号")
|
||||||
|
private String invoiceNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("订单号")
|
||||||
|
@Excel(name = "订单号")
|
||||||
|
private String goodsNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty("业务主单")
|
||||||
|
@Excel(name = "业务主单")
|
||||||
|
private String businessMainOrder;
|
||||||
|
}
|
||||||
@@ -40,4 +40,17 @@ public class UserDTO extends BaseVOEntity {
|
|||||||
@ApiModelProperty(name = "用户角色")
|
@ApiModelProperty(name = "用户角色")
|
||||||
private String userRole;
|
private String userRole;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("路线id")
|
||||||
|
private String lineManagementId;
|
||||||
|
|
||||||
|
@ApiModelProperty("路线编码")
|
||||||
|
private String routeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("路线名称")
|
||||||
|
private String routeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("配送顺序")
|
||||||
|
private String deliveryOrder;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+293
@@ -0,0 +1,293 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.baomidou.mybatisplus.annotation.IdType;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableId;
|
||||||
|
import com.baomidou.mybatisplus.annotation.TableName;
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.web.domain.BaseVOEntity;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class UserShipperEntityFeign extends BaseVOEntity {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@TableId(type = IdType.AUTO)
|
||||||
|
@ApiModelProperty(name = "用户主表ID")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "用户主表ID")
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "上级货主表ID")
|
||||||
|
private Long parentShipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "货主类型:0-无状态,1-个人,2-企业,3-个体工商户,4-企业员工")
|
||||||
|
private Integer shipperType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "货主类别:1-普通客户 2-月结客户")
|
||||||
|
private Integer shipperCategory;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业名称")
|
||||||
|
private String shipperEnterpriseName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业统一社会信用代码")
|
||||||
|
private String shipperEnterpriseSocialCreditCode;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业注册电话")
|
||||||
|
private String shipperEnterprisePhone;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业注册地址")
|
||||||
|
private String shipperEnterpriseAddress;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "企业营业期限起")
|
||||||
|
private Date shipperEnterpriseLicenseDateFrom;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "企业营业期限止")
|
||||||
|
private Date shipperEnterpriseLicenseDateTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "纳税人资质")
|
||||||
|
private String shipperEnterpriseTaxpayer;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业营业执照是否长期:0-无状态,1-是,2-否")
|
||||||
|
private Integer shipperEnterpriseLicenseLong;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "营业执照照片")
|
||||||
|
private String shipperEnterpriseLicenseFrontUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "是否法人:0-无状态,1-是,2-否")
|
||||||
|
private Integer shipperCorp;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 法人姓名
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "法人姓名")
|
||||||
|
private String shipperCorpName;
|
||||||
|
|
||||||
|
/** 企业法人姓名 */
|
||||||
|
@ApiModelProperty("企业法人姓名")
|
||||||
|
@Excel(name = "企业法人姓名")
|
||||||
|
private String shipperCorpLegalName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证号")
|
||||||
|
private String shipperCorpIdcardNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证号加密")
|
||||||
|
private String shipperCorpIdcardNumberDes;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "法人身份证有效期自")
|
||||||
|
private Date shipperCorpIdcardDateFrom;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "法人身份证有效期止")
|
||||||
|
private Date shipperCorpIdcardDateTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证是否长期:0-无状态,1-是,2-否")
|
||||||
|
private Integer shipperCorpIdcardLong;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证正面照片")
|
||||||
|
private String shipperCorpIdcardFrontUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证反面照片")
|
||||||
|
private String shipperCorpIdcardBackUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证手持照片")
|
||||||
|
private String shipperCorpIdcardInhandUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "托运人个体货主认证状态:0-无状态,1-未认证,2-正在审核,3-认证通过,4-认证失败,5-认证失效")
|
||||||
|
private Integer shipperFill;
|
||||||
|
@ApiModelProperty(name = "托运人个人认证时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date shipperFillTime;
|
||||||
|
@ApiModelProperty(name = "托运人个体货主审核人员id")
|
||||||
|
private Long shipperFillAuthId;
|
||||||
|
@ApiModelProperty(name = "托运人个体货主审核人员")
|
||||||
|
private String shipperFillAuthName;
|
||||||
|
@ApiModelProperty(name = "托运人个体货主审核原因")
|
||||||
|
private String shipperFillRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "托运人发货企业认证状态:0-无状态,1-未认证,2-正在审核,3-认证通过,4-认证失败,5-认证失效")
|
||||||
|
private Integer shipperEnterpriseFill;
|
||||||
|
@ApiModelProperty(name = "托运人发货企业认证时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date shipperEnterpriseFillTime;
|
||||||
|
@ApiModelProperty(name = "托运人发货企业审核人员id")
|
||||||
|
private Long shipperEnterpriselAuthId;
|
||||||
|
@ApiModelProperty(name = "托运人发货企业审核人员")
|
||||||
|
private String shipperEnterpriselAuthName;
|
||||||
|
@ApiModelProperty(name = "托运人发货企业审核原因")
|
||||||
|
private String shipperEnterpriseFillRemark;
|
||||||
|
@ApiModelProperty(name = "纳税人识别号")
|
||||||
|
private String taxpayerNumber;
|
||||||
|
@ApiModelProperty(name = "托运人发货企业审核原因")
|
||||||
|
private String taxpayerQualification;
|
||||||
|
@ApiModelProperty(name = "营业执照过期日期")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date businessLicenseDate;
|
||||||
|
@ApiModelProperty(value = "所在地区省市县名称")
|
||||||
|
private String area;
|
||||||
|
@ApiModelProperty(name = "所在地区县区编码")
|
||||||
|
private String areaId;
|
||||||
|
@ApiModelProperty(name = "详细地址")
|
||||||
|
private String detailAddress;
|
||||||
|
@ApiModelProperty(name = "行业")
|
||||||
|
private String trade;
|
||||||
|
@ApiModelProperty(name = "经营范围")
|
||||||
|
private String businessScope;
|
||||||
|
@ApiModelProperty(name = "营业期限")
|
||||||
|
private String businessTerm;
|
||||||
|
@ApiModelProperty(name = "注册地址")
|
||||||
|
private String regAddress;
|
||||||
|
@ApiModelProperty(name = "注册资本")
|
||||||
|
private String capital;
|
||||||
|
@ApiModelProperty(name = "成立日期")
|
||||||
|
private String establishDate;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "账号标识,创建后账号在e签宝平台中的唯一标识(认证授权ID-保留最新)")
|
||||||
|
private String companyAccountId ;
|
||||||
|
@ApiModelProperty(name = "用户电子签章(机构认证授权长连接)")
|
||||||
|
private String companyTemplateSeal;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "月结标识 1-是 2-否")
|
||||||
|
private Integer monthlySettlementFlag;
|
||||||
|
@ApiModelProperty(name = "货源单自动审核(1-是 2-否)")
|
||||||
|
private Integer isAutoAuditOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "回单原件标记(1-需要,2-不需要)")
|
||||||
|
private Integer originalReceiptFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "运费节点(0-无要求,1-确认回单,2-纸质回单)")
|
||||||
|
private Integer freightNode;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "e签宝授权认证状态(0-未授权,1-授权中,2-授权完成,3-授权失败)")
|
||||||
|
private Integer esignAuthStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "e签宝跨企业授权状态(0-未授权,1-授权中,2-授权完成,3-授权失败)")
|
||||||
|
private Integer esignEnterpriseStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "e签宝跨企业授权业务流程编号")
|
||||||
|
private String esignSealAuthId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "授权额度")
|
||||||
|
private BigDecimal authorizedQuota;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "结算天数")
|
||||||
|
private Integer settlementDay;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "已使用额度")
|
||||||
|
private BigDecimal authorizedUsedAmount;
|
||||||
|
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "数据来源:1-接口同步 2-人工新增")
|
||||||
|
private Integer dataSource;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "客户nc编码")
|
||||||
|
private String customerNcCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
|
||||||
|
@ApiModelProperty("职务/角色权限字符,控制器中定义的权限字符,如:@PreAuthorize(`@ss.hasRole('admin')`)")
|
||||||
|
private String roleCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主/供应商/客户编码")
|
||||||
|
private String userMemberCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主/供应商/客户名称")
|
||||||
|
private String userNameShipper;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系人")
|
||||||
|
private String emergencyContactName;
|
||||||
|
|
||||||
|
@ApiModelProperty("联系电话")
|
||||||
|
private String emergencyContactPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("省市区编码,6位")
|
||||||
|
private Long userAreaCountyId;
|
||||||
|
|
||||||
|
@ApiModelProperty("省事区名称")
|
||||||
|
private String userAreaName;
|
||||||
|
|
||||||
|
@ApiModelProperty("详细地址")
|
||||||
|
private String userAreaAddress;
|
||||||
|
|
||||||
|
@ApiModelProperty("法人代表")
|
||||||
|
private String legalRepresentative;
|
||||||
|
|
||||||
|
@ApiModelProperty("统一编码")
|
||||||
|
private String unifiedCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("注册电话")
|
||||||
|
private String registeredPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("注册地址")
|
||||||
|
private String registeredAddress;
|
||||||
|
|
||||||
|
@ApiModelProperty("传真")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("付款银行")
|
||||||
|
private String paymentBank;
|
||||||
|
|
||||||
|
@ApiModelProperty("付款账户")
|
||||||
|
private String paymentAccount;
|
||||||
|
|
||||||
|
@ApiModelProperty("发票抬头")
|
||||||
|
private String invoiceTitle;
|
||||||
|
|
||||||
|
@ApiModelProperty("税号")
|
||||||
|
private String taxNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "邮箱")
|
||||||
|
private String userEmail;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "备注")
|
||||||
|
private String userRemark;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "一级组织表ID")
|
||||||
|
private Long topOrganizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织表ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "推送状态 1-未推送 2-推送中 3-推送成功 4-推送失败")
|
||||||
|
private Integer pushStatus;
|
||||||
|
@ApiModelProperty(name = "推送时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date pushTime;
|
||||||
|
@ApiModelProperty(name = "推送人")
|
||||||
|
private Long pushBy;
|
||||||
|
@ApiModelProperty(name = "推送人姓名")
|
||||||
|
private String pushByName;
|
||||||
|
@ApiModelProperty(name = "额度同步时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date limitTime;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "信用余额")
|
||||||
|
private BigDecimal creditAmount;
|
||||||
|
|
||||||
|
@ApiModelProperty("协议数量")
|
||||||
|
private Integer agreementCount;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "是否校验信用")
|
||||||
|
private String isCheckCredit;
|
||||||
|
|
||||||
|
}
|
||||||
+270
@@ -0,0 +1,270 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import com.mhd.common.core.annotation.Excel;
|
||||||
|
import com.mhd.common.core.annotation.fieldsetvalue.NeedSetValue;
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.math.BigDecimal;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class UserShipperFeignDTO extends UserDTO {
|
||||||
|
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "角色表ID集合")
|
||||||
|
private List<Long> roleIds;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "货主表ID")
|
||||||
|
private Long shipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "用户主表ID")
|
||||||
|
private Long userId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "上级货主表ID")
|
||||||
|
private Long parentShipperId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "货主类型:0-无状态,1-个人,2-企业")
|
||||||
|
private Integer shipperType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "货主类别:1-普通客户 2-月结客户")
|
||||||
|
private Integer shipperCategory;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业名称")
|
||||||
|
private String shipperEnterpriseName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业统一社会信用代码")
|
||||||
|
private String shipperEnterpriseSocialCreditCode;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业注册电话")
|
||||||
|
private String shipperEnterprisePhone;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业注册地址")
|
||||||
|
private String shipperEnterpriseAddress;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "企业营业期限起")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private Date shipperEnterpriseLicenseDateFrom;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "企业营业期限止")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private Date shipperEnterpriseLicenseDateTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "企业营业执照是否长期:0-无状态,1-是,2-否")
|
||||||
|
private Integer shipperEnterpriseLicenseLong;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "纳税人资质")
|
||||||
|
private String shipperEnterpriseTaxpayer;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "营业执照照片")
|
||||||
|
@NeedSetValue
|
||||||
|
private String shipperEnterpriseLicenseFrontUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "是否法人:0-无状态,1-是,2-否")
|
||||||
|
private Integer shipperCorp;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 法人姓名
|
||||||
|
*/
|
||||||
|
@ApiModelProperty(name = "法人姓名")
|
||||||
|
private String shipperCorpName;
|
||||||
|
/** 企业法人姓名 */
|
||||||
|
@ApiModelProperty("企业法人姓名")
|
||||||
|
@Excel(name = "企业法人姓名")
|
||||||
|
private String shipperCorpLegalName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证号")
|
||||||
|
private String shipperCorpIdcardNumber;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证号加密")
|
||||||
|
private String shipperCorpIdcardNumberDes;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "法人身份证有效期自")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private Date shipperCorpIdcardDateFrom;
|
||||||
|
|
||||||
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
|
@ApiModelProperty(name = "法人身份证有效期止")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd")
|
||||||
|
private Date shipperCorpIdcardDateTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证是否长期:0-无状态,1-是,2-否")
|
||||||
|
private Integer shipperCorpIdcardLong;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证正面照片")
|
||||||
|
@NeedSetValue
|
||||||
|
private String shipperCorpIdcardFrontUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证反面照片")
|
||||||
|
@NeedSetValue
|
||||||
|
private String shipperCorpIdcardBackUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "法人身份证手持照片")
|
||||||
|
@NeedSetValue
|
||||||
|
private String shipperCorpIdcardInhandUrl;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "货主审核状态:0-无状态,1-未认证,2-待审核,3-已通过,4-已驳回")
|
||||||
|
private Integer shipperAuthStatus;
|
||||||
|
@ApiModelProperty(name = "货主审核人用户姓名")
|
||||||
|
private String shipperAuthByUsername;
|
||||||
|
@ApiModelProperty(name = "货主审核时间")
|
||||||
|
private Date shipperAuthTime;
|
||||||
|
@ApiModelProperty(name = "货主审核原因")
|
||||||
|
private String shipperStatusRemark;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "创建时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date createTimeFrom;
|
||||||
|
@ApiModelProperty(value = "创建时间")
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date createTimeTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "审核角色:1-个人托运人,2-企业托运人")
|
||||||
|
private Integer authType;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "新增托运人步骤(1-用户注册,2-提交认证资料,3-认证结果)")
|
||||||
|
private Integer stepFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "纳税人识别号")
|
||||||
|
private String taxpayerNumber;
|
||||||
|
@ApiModelProperty(name = "托运人发货企业审核原因")
|
||||||
|
private String taxpayerQualification;
|
||||||
|
@ApiModelProperty(name = "营业执照过期日期")
|
||||||
|
@JsonFormat(timezone = "GMT+8",pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern="yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date businessLicenseDate;
|
||||||
|
@ApiModelProperty(value = "所在地区省市县名称")
|
||||||
|
private String area;
|
||||||
|
@ApiModelProperty(name = "所在地区县区编码")
|
||||||
|
private String areaId;
|
||||||
|
@ApiModelProperty(name = "详细地址")
|
||||||
|
private String detailAddress;
|
||||||
|
@ApiModelProperty(name = "行业")
|
||||||
|
private String trade;
|
||||||
|
@ApiModelProperty(name = "经营范围")
|
||||||
|
private String businessScope;
|
||||||
|
@ApiModelProperty(name = "营业期限")
|
||||||
|
private String businessTerm;
|
||||||
|
@ApiModelProperty(name = "注册地址")
|
||||||
|
private String regAddress;
|
||||||
|
@ApiModelProperty(name = "注册资本")
|
||||||
|
private String capital;
|
||||||
|
@ApiModelProperty(name = "成立日期")
|
||||||
|
private String establishDate;
|
||||||
|
@ApiModelProperty(name = "账号标识,创建后账号在e签宝平台中的唯一标识")
|
||||||
|
private String companyAccountId ;
|
||||||
|
@ApiModelProperty(name = "用户电子签章")
|
||||||
|
private String companyTemplateSeal;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "月结标识 1-是 2-否")
|
||||||
|
private Integer monthlySettlementFlag;
|
||||||
|
@ApiModelProperty(name = "总授信额度")
|
||||||
|
private BigDecimal totalLimit;
|
||||||
|
@ApiModelProperty(name = "货源单自动审核(1-是 2-否)")
|
||||||
|
private Integer isAutoAuditOrder;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "托运人个体货主认证状态:0-无状态,1-未认证,2-正在审核,3-认证通过,4-认证失败,5-认证失效")
|
||||||
|
private Integer shipperFill;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "托运人发货企业认证状态:0-无状态,1-未认证,2-正在审核,3-认证通过,4-认证失败,5-认证失效")
|
||||||
|
private Integer shipperEnterpriseFill;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "回单原件标记(1-需要,2-不需要)")
|
||||||
|
private Integer originalReceiptFlag;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "运费节点(0-无要求,1-确认回单,2-纸质回单)")
|
||||||
|
private Integer freightNode;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "用户主表ID集合")
|
||||||
|
private List<Long> userIdList;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "备注信息")
|
||||||
|
private String remark;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "数据来源:1-接口同步 2-人工新增")
|
||||||
|
private Integer dataSource;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户nc编码")
|
||||||
|
private String customerNcCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("客户nc编码列表")
|
||||||
|
private List<UserShipperEntityFeign> customerNcCodeList;
|
||||||
|
|
||||||
|
@ApiModelProperty("组织ID")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty("结算币种")
|
||||||
|
private String settlementCurrency;
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty("货主/供应商/客户编码")
|
||||||
|
private String userMemberCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("货主/供应商/客户名称")
|
||||||
|
private String userNameShipper;
|
||||||
|
|
||||||
|
@ApiModelProperty("法人代表")
|
||||||
|
private String legalRepresentative;
|
||||||
|
|
||||||
|
@ApiModelProperty("统一编码")
|
||||||
|
private String unifiedCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("注册电话")
|
||||||
|
private String registeredPhone;
|
||||||
|
|
||||||
|
@ApiModelProperty("注册地址")
|
||||||
|
private String registeredAddress;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "邮箱")
|
||||||
|
private String userEmail;
|
||||||
|
|
||||||
|
@ApiModelProperty("传真")
|
||||||
|
private String fax;
|
||||||
|
|
||||||
|
@ApiModelProperty("付款银行")
|
||||||
|
private String paymentBank;
|
||||||
|
|
||||||
|
@ApiModelProperty("付款账户")
|
||||||
|
private String paymentAccount;
|
||||||
|
|
||||||
|
@ApiModelProperty("发票抬头")
|
||||||
|
private String invoiceTitle;
|
||||||
|
|
||||||
|
@ApiModelProperty("税号")
|
||||||
|
private String taxNumber;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "更新时间起")
|
||||||
|
private String updateTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "更新时间止")
|
||||||
|
private String updateTimeTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间起")
|
||||||
|
private String pushTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间止")
|
||||||
|
private String pushTimeTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送状态")
|
||||||
|
private Integer pushStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "登录账号(2-20位)")
|
||||||
|
private String userAccount;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "登录密码(6-20位)")
|
||||||
|
private String userPassword;
|
||||||
|
@ApiModelProperty(name = "是否校验信用")
|
||||||
|
private String isCheckCredit;
|
||||||
|
}
|
||||||
+52
@@ -0,0 +1,52 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
|
||||||
|
@Data
|
||||||
|
public class UserShipperQueryDTO {
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "页码")
|
||||||
|
private Integer pageNum = 1;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "每页数量")
|
||||||
|
private Integer pageSize = 10;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "登录账号")
|
||||||
|
private String userAccount;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "企业名称")
|
||||||
|
private String shipperEnterpriseName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "组织ID")
|
||||||
|
private String organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "组织名称")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "创建时间起")
|
||||||
|
private String createTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "创建时间止")
|
||||||
|
private String createTimeTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "更新时间起")
|
||||||
|
private String updateTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "更新时间止")
|
||||||
|
private String updateTimeTo;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "货主类型")
|
||||||
|
private String shipperType;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送状态")
|
||||||
|
private Integer pushStatus;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间起")
|
||||||
|
private String pushTimeFrom;
|
||||||
|
|
||||||
|
@ApiModelProperty(value = "推送时间止")
|
||||||
|
private String pushTimeTo;
|
||||||
|
|
||||||
|
}
|
||||||
@@ -42,10 +42,10 @@ public class UserUpdateDTO extends BaseVOEntity {
|
|||||||
private String userIdcardNumber;
|
private String userIdcardNumber;
|
||||||
@ApiModelProperty(name = "身份证号加密")
|
@ApiModelProperty(name = "身份证号加密")
|
||||||
private String userIdcardNumberDes;
|
private String userIdcardNumberDes;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@ApiModelProperty(name = "身份证有效期自")
|
@ApiModelProperty(name = "身份证有效期自")
|
||||||
private Date userIdcardDateFrom;
|
private Date userIdcardDateFrom;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@ApiModelProperty(name = "身份证有效期至")
|
@ApiModelProperty(name = "身份证有效期至")
|
||||||
private Date userIdcardDateTo;
|
private Date userIdcardDateTo;
|
||||||
@ApiModelProperty(name = "身份证是否长期:0-无状态,1-是,2-否")
|
@ApiModelProperty(name = "身份证是否长期:0-无状态,1-是,2-否")
|
||||||
@@ -76,7 +76,7 @@ public class UserUpdateDTO extends BaseVOEntity {
|
|||||||
private String userWechatSessionKey;
|
private String userWechatSessionKey;
|
||||||
@ApiModelProperty(name = "密码登录错误次数")
|
@ApiModelProperty(name = "密码登录错误次数")
|
||||||
private Integer passwordWrongTimes;
|
private Integer passwordWrongTimes;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss", timezone = "GMT+8")
|
||||||
@ApiModelProperty(name = "最近一次登录时间")
|
@ApiModelProperty(name = "最近一次登录时间")
|
||||||
private Date lastLoginTime;
|
private Date lastLoginTime;
|
||||||
@ApiModelProperty(name = "最近一次登录IP")
|
@ApiModelProperty(name = "最近一次登录IP")
|
||||||
@@ -89,15 +89,15 @@ public class UserUpdateDTO extends BaseVOEntity {
|
|||||||
private int userAuthStatus;
|
private int userAuthStatus;
|
||||||
@ApiModelProperty(name = "用户审核人用户姓名")
|
@ApiModelProperty(name = "用户审核人用户姓名")
|
||||||
private String userAuthByUsername;
|
private String userAuthByUsername;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@ApiModelProperty(name = "用户审核时间")
|
@ApiModelProperty(name = "用户审核时间")
|
||||||
private Date userAuthTime;
|
private Date userAuthTime;
|
||||||
@ApiModelProperty(name = "加入黑名单备注(解除时需要清空)")
|
@ApiModelProperty(name = "加入黑名单备注(解除时需要清空)")
|
||||||
private String userStatusRemark;
|
private String userStatusRemark;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@ApiModelProperty(name = "用户状态更新时间")
|
@ApiModelProperty(name = "用户状态更新时间")
|
||||||
private Date userStatusTime;
|
private Date userStatusTime;
|
||||||
@JsonFormat(pattern = "yyyy-MM-dd")
|
@JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
|
||||||
@ApiModelProperty(name = "用户生日")
|
@ApiModelProperty(name = "用户生日")
|
||||||
private Date userBirthday;
|
private Date userBirthday;
|
||||||
@ApiModelProperty(name = "用户住址信息")
|
@ApiModelProperty(name = "用户住址信息")
|
||||||
@@ -122,4 +122,4 @@ public class UserUpdateDTO extends BaseVOEntity {
|
|||||||
@ApiModelProperty(name = "请求域名")
|
@ApiModelProperty(name = "请求域名")
|
||||||
private String tenantsDomainName;
|
private String tenantsDomainName;
|
||||||
|
|
||||||
}
|
}
|
||||||
+23
-1
@@ -116,6 +116,28 @@ public class WarehouseFeignPO extends BaseVOEntity{
|
|||||||
@Excel(name = "是否作废: 1-否 2-是")
|
@Excel(name = "是否作废: 1-否 2-是")
|
||||||
private Integer nullify;
|
private Integer nullify;
|
||||||
|
|
||||||
|
@ApiModelProperty("任务模式")
|
||||||
|
@Excel(name = "任务模式")
|
||||||
|
private String taskMode;
|
||||||
|
|
||||||
|
@ApiModelProperty("作业模式")
|
||||||
|
@Excel(name = "作业模式")
|
||||||
|
private String workMode;
|
||||||
|
|
||||||
}
|
@ApiModelProperty("订单号生成规则(0-日期累加 1-历史累加)")
|
||||||
|
@Excel(name = "单号生成规则")
|
||||||
|
private String orderNoGenerateRule;
|
||||||
|
|
||||||
|
@ApiModelProperty("入库单号首字母前缀")
|
||||||
|
@Excel(name = "入库单号首字母前缀")
|
||||||
|
private String inOrderNoPrefix;
|
||||||
|
|
||||||
|
@ApiModelProperty("出库单号首字母前缀")
|
||||||
|
@Excel(name = "出库单号首字母前缀")
|
||||||
|
private String outOrderNoPrefix;
|
||||||
|
|
||||||
|
@ApiModelProperty("样品出库单号首字母前缀")
|
||||||
|
@Excel(name = "样品出库单号首字母前缀")
|
||||||
|
private String sampleOutOrderNoPrefix;
|
||||||
|
|
||||||
|
}
|
||||||
+30
@@ -0,0 +1,30 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 仓库联动树节点(Feign侧)
|
||||||
|
* 镜像system端WarehouseLinkagePO/StorageSectionLinkagePO/StorageLocationLinkagePO三级结构:仓库→库区→库位
|
||||||
|
*
|
||||||
|
* @author rcx
|
||||||
|
* @date 2026-08-22
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class WarehouseLinkageFeignPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 仓库id / 库区id(storageSectionId) / 库位id(storageLocationId) */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** warehouseCode / storageCode / storageLocationCode */
|
||||||
|
private String code;
|
||||||
|
|
||||||
|
/** warehouseName / storageName / storageLocationName */
|
||||||
|
private String name;
|
||||||
|
|
||||||
|
/** 下级节点:仓库下为库区列表,库区下为库位列表,库位无children */
|
||||||
|
private List<WarehouseLinkageFeignPO> children;
|
||||||
|
}
|
||||||
@@ -0,0 +1,63 @@
|
|||||||
|
package com.mhd.system.api.domain;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.annotation.JsonFormat;
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.format.annotation.DateTimeFormat;
|
||||||
|
|
||||||
|
import java.util.Date;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* YMS登录用户信息
|
||||||
|
* @author AI
|
||||||
|
* @date 2026/05/13
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class YmsLoginUser {
|
||||||
|
|
||||||
|
//登录人id
|
||||||
|
private Long id;
|
||||||
|
//登录人账号
|
||||||
|
private String username;
|
||||||
|
//登录人名字
|
||||||
|
private String nickName;
|
||||||
|
//登录人密码
|
||||||
|
private String password;
|
||||||
|
//当前登录部门code
|
||||||
|
private String orgCode;
|
||||||
|
//头像
|
||||||
|
private String avatar;
|
||||||
|
//性别(0男 1女 2未知)
|
||||||
|
private String sex;
|
||||||
|
//电子邮件
|
||||||
|
private String email;
|
||||||
|
//电话
|
||||||
|
private String phonenumber;
|
||||||
|
//状态(0正常 1停用)
|
||||||
|
private String status;
|
||||||
|
//删除标志(0代表存在 2代表删除)
|
||||||
|
private String delFlag;
|
||||||
|
//最后登录IP
|
||||||
|
private String loginIp;
|
||||||
|
//最后登录时间
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date loginDate;
|
||||||
|
//创建时间
|
||||||
|
@JsonFormat(timezone = "GMT+8", pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
|
||||||
|
private Date createTime;
|
||||||
|
//数字物流用户ID
|
||||||
|
private Long szwlUserId;
|
||||||
|
//一级组织表ID
|
||||||
|
private Long topOrganizationId;
|
||||||
|
//组织表ID
|
||||||
|
private Long organizationId;
|
||||||
|
//角色code集合
|
||||||
|
private String roleCodes;
|
||||||
|
//角色名称集合
|
||||||
|
private String roleNames;
|
||||||
|
//推广码
|
||||||
|
private String promoCode;
|
||||||
|
//账号类型 1.普通账号,2.组织账号,3.一级账号,4.平台员工,5.企业员工,6.合作商
|
||||||
|
private Integer userAccountType;
|
||||||
|
}
|
||||||
+32
-1
@@ -6,6 +6,7 @@ import com.mhd.common.core.domain.po.OrganizationPo;
|
|||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
import com.mhd.system.api.BmsServiceFeign;
|
import com.mhd.system.api.BmsServiceFeign;
|
||||||
import com.mhd.system.api.ProductServiceFeign;
|
import com.mhd.system.api.ProductServiceFeign;
|
||||||
|
import com.mhd.system.api.domain.BusinessDocumentFeign;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.cloud.openfeign.FallbackFactory;
|
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||||
@@ -42,6 +43,11 @@ public class RemoteBmsFeignFallbackFactory implements FallbackFactory<BmsService
|
|||||||
return AjaxResult.error(throwable.getMessage());
|
return AjaxResult.error(throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getCustomersInfoBySettlementEntityId(Long settlementEntityId, Long topOrganizationId) {
|
||||||
|
return AjaxResult.error(throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult pushSyncData(BusinessDataPushDTO businessDataPushDTO) {
|
public AjaxResult pushSyncData(BusinessDataPushDTO businessDataPushDTO) {
|
||||||
return AjaxResult.error(throwable.getMessage());
|
return AjaxResult.error(throwable.getMessage());
|
||||||
@@ -51,6 +57,31 @@ public class RemoteBmsFeignFallbackFactory implements FallbackFactory<BmsService
|
|||||||
public AjaxResult getDocumentInfoByCodeSet(Set<String> documentTypeCodeSet) {
|
public AjaxResult getDocumentInfoByCodeSet(Set<String> documentTypeCodeSet) {
|
||||||
return AjaxResult.error(throwable.getMessage());
|
return AjaxResult.error(throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult businessDocumentApiSave(BusinessDataPushDTO businessDataPushDTO) {
|
||||||
|
return AjaxResult.error(throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult wholeRentSynchronizationZXF(BusinessDataPushDTO businessDataPushDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult feignSaveBusinessDocument(BusinessDocumentFeign businessDocumentFeign) {
|
||||||
|
return AjaxResult.error("保存业务单据失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getListBySettlementCustomersId(Long settlementCustomersId) {
|
||||||
|
return AjaxResult.error(throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult updatePushContractManageJobId(Long settlementCustomersId, Integer jobId) {
|
||||||
|
return AjaxResult.error(throwable.getMessage());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+105
@@ -0,0 +1,105 @@
|
|||||||
|
package com.mhd.system.api.factory;
|
||||||
|
|
||||||
|
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
|
||||||
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.system.api.BmsServiceFeign;
|
||||||
|
import com.mhd.system.api.OmsServiceFeign;
|
||||||
|
import com.mhd.system.api.domain.*;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Set;
|
||||||
|
import java.util.concurrent.CompletableFuture;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description
|
||||||
|
* @Author zg
|
||||||
|
* @Version 1.0
|
||||||
|
* @Date 2023/11/3 14:37
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class RemoteOmsFeignFallbackFactory implements FallbackFactory<OmsServiceFeign> {
|
||||||
|
|
||||||
|
private static final Logger log = LoggerFactory.getLogger(RemoteOmsFeignFallbackFactory.class);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public OmsServiceFeign create(Throwable throwable) {
|
||||||
|
log.error("系统服务调用失败:{}", throwable.getMessage());
|
||||||
|
return new OmsServiceFeign() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult pushInOrder(StockInOrderTZPD stockInOrder) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult pushInOrderDetail(InMaterialDetailTZPD inMaterialDetail) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult returnInResult(String orderNumber, Long status, String type) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult pushOutOrder(StockOutOrderTZPD stockOutOrder) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult pushOutOrderDetail(OutMaterialDetailTZPD outMaterialDetail) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public CompletableFuture<Void> omsEdit(MaterialInventoryOmsParamDO materialInventoryOmsParamDO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
// @Override
|
||||||
|
// public AjaxResult inventoryAdjustmentRecordInsert(InventoryAdjustmentRecord inventoryAdjustmentRecord) {
|
||||||
|
// return null;
|
||||||
|
// }
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getUnitList(ErpEnterpriseUnitDTO erpEnterpriseUnitDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getCountryList(ErpCountryDTO erpCountryDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult insertGwLog(GwLogDTO gwLogDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult updateGwLog(GwLogDTO gwLogDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult batchPush(List<Long> idList) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult batchPushByNumber(List<String> numberList) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult saveSignature(ElectronicSignatureSyncDTO saveDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
+68
-1
@@ -13,6 +13,8 @@ import com.mhd.common.core.web.domain.AjaxResult;
|
|||||||
import com.mhd.system.api.AssociationWarehouseFeign;
|
import com.mhd.system.api.AssociationWarehouseFeign;
|
||||||
import com.mhd.system.api.SystemServiceFeign;
|
import com.mhd.system.api.SystemServiceFeign;
|
||||||
import com.mhd.system.api.domain.ContainerFeignPO;
|
import com.mhd.system.api.domain.ContainerFeignPO;
|
||||||
|
import com.mhd.system.api.domain.ContractManageFeignDTO;
|
||||||
|
import com.mhd.system.api.domain.ContractManageParametersFeign;
|
||||||
import com.mhd.system.api.domain.SysDictData;
|
import com.mhd.system.api.domain.SysDictData;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
@@ -20,6 +22,7 @@ import org.springframework.cloud.openfeign.FallbackFactory;
|
|||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
|
||||||
@@ -154,6 +157,11 @@ public class RemoteSystemFeignFallbackFactory implements FallbackFactory<SystemS
|
|||||||
return AjaxResult.error("根据批次ID获取批次信息失败");
|
return AjaxResult.error("根据批次ID获取批次信息失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getBatchListByName(String batchName, Long organizationId) {
|
||||||
|
return AjaxResult.error("根据批次名称查询批次列表失败");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult getBatchDetailListByBatchId(Long batchId) {
|
public AjaxResult getBatchDetailListByBatchId(Long batchId) {
|
||||||
return AjaxResult.error("根据batchId获取对应批次详情信息失败");
|
return AjaxResult.error("根据batchId获取对应批次详情信息失败");
|
||||||
@@ -169,11 +177,21 @@ public class RemoteSystemFeignFallbackFactory implements FallbackFactory<SystemS
|
|||||||
return AjaxResult.error("获取用户当前设置的仓库失败");
|
return AjaxResult.error("获取用户当前设置的仓库失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getWarehouseInfoFromDb(Long correlationId) {
|
||||||
|
return AjaxResult.error("从数据库获取用户当前设置的仓库失败");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId) {
|
public AjaxResult getWarehouseInfoByWarehouseId(@PathVariable("warehouseId") Long warehouseId) {
|
||||||
return AjaxResult.error("根据仓库ID获取仓库信息失败");
|
return AjaxResult.error("根据仓库ID获取仓库信息失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getWarehouseChildren(@RequestParam("warehouseId") Long warehouseId) {
|
||||||
|
return AjaxResult.error("根据仓库ID获取仓库及下库区及库位树失败");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult getStorageSectionInfoByStorageSectionId(@PathVariable("storageSectionId") Long storageSectionId) {
|
public AjaxResult getStorageSectionInfoByStorageSectionId(@PathVariable("storageSectionId") Long storageSectionId) {
|
||||||
return AjaxResult.error("根据库区ID获取库区信息失败");
|
return AjaxResult.error("根据库区ID获取库区信息失败");
|
||||||
@@ -194,6 +212,11 @@ public class RemoteSystemFeignFallbackFactory implements FallbackFactory<SystemS
|
|||||||
return AjaxResult.error("根据包装ID和单位编码获取信息失败");
|
return AjaxResult.error("根据包装ID和单位编码获取信息失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public Object getPackList(String packCode, String packName, Long organizationId) {
|
||||||
|
return AjaxResult.error("根据包装编码/名称查询包装列表失败");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult getPlatformInfoByPlatformId(Long platformId) {
|
public AjaxResult getPlatformInfoByPlatformId(Long platformId) {
|
||||||
return AjaxResult.error("根据platformId获取对应月台信息失败");
|
return AjaxResult.error("根据platformId获取对应月台信息失败");
|
||||||
@@ -229,6 +252,11 @@ public class RemoteSystemFeignFallbackFactory implements FallbackFactory<SystemS
|
|||||||
return AjaxResult.error("获取科目信息失败" + throwable.getMessage());
|
return AjaxResult.error("获取科目信息失败" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getSubInfoByCode2(String subjectCode, Long topOrganizationId) {
|
||||||
|
return AjaxResult.error("获取科目信息失败" + throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult getProjectByCode(String projectCode) {
|
public AjaxResult getProjectByCode(String projectCode) {
|
||||||
return AjaxResult.error("获取项目信息失败" + throwable.getMessage());
|
return AjaxResult.error("获取项目信息失败" + throwable.getMessage());
|
||||||
@@ -254,15 +282,54 @@ public class RemoteSystemFeignFallbackFactory implements FallbackFactory<SystemS
|
|||||||
return AjaxResult.error("查询失败");
|
return AjaxResult.error("查询失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getGeneralContract() {
|
||||||
|
return AjaxResult.error("查询失败");
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult getInfoByCustomer(String settlementCustomersCode, Integer contractType) {
|
public AjaxResult getInfoByCustomer(String settlementCustomersCode, Integer contractType) {
|
||||||
return AjaxResult.error("查询失败");
|
return AjaxResult.error("查询失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getInfoByCustomerAndSecondSubjectCode(String settlementCustomersCode, Integer contractType, String firstSubjectCode, Long topOrganizationId, Long organizationId) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
@Override
|
||||||
|
public AjaxResult getInfoByCustomer2(String settlementCustomersCode, Integer contractType, Long topOrganizationId) {
|
||||||
|
return AjaxResult.error("查询失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getInfoByCustomerAndOrganizationId(String settlementCustomersCode, Integer contractType, Long topOrganizationId, Long organizationId) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult queryList() {
|
public AjaxResult queryList() {
|
||||||
return AjaxResult.error("查询失败");
|
return AjaxResult.error("查询失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult wholeRentSynchronization() {
|
||||||
|
return AjaxResult.error("查询失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult matchForMaterialImport(String keyword, Long organizationId) {
|
||||||
|
return AjaxResult.error("物料分类匹配失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult feignSave(ContractManageFeignDTO contractManageFeignDTO) {
|
||||||
|
return AjaxResult.error("新增合同失败");
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult feignSaveContractParameters(ContractManageParametersFeign contractManageParametersFeign) {
|
||||||
|
return AjaxResult.error("保存合同参数失败");
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+46
@@ -5,8 +5,11 @@ import com.mhd.common.core.domain.dto.StatisticalMattersDTO;
|
|||||||
import com.mhd.common.core.domain.dto.UserDataPermissionQueryDTO;
|
import com.mhd.common.core.domain.dto.UserDataPermissionQueryDTO;
|
||||||
import com.mhd.common.core.domain.dto.UserDriverDTO;
|
import com.mhd.common.core.domain.dto.UserDriverDTO;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.common.core.web.page.TableDataInfo;
|
||||||
import com.mhd.system.api.UserServiceFeign;
|
import com.mhd.system.api.UserServiceFeign;
|
||||||
import com.mhd.system.api.domain.UserDTO;
|
import com.mhd.system.api.domain.UserDTO;
|
||||||
|
import com.mhd.system.api.domain.UserShipperFeignDTO;
|
||||||
|
import com.mhd.system.api.domain.UserShipperQueryDTO;
|
||||||
import com.mhd.system.api.domain.UserUpdateDTO;
|
import com.mhd.system.api.domain.UserUpdateDTO;
|
||||||
import com.mhd.system.api.model.LoginUser;
|
import com.mhd.system.api.model.LoginUser;
|
||||||
import com.mhd.common.core.domain.entity.R;
|
import com.mhd.common.core.domain.entity.R;
|
||||||
@@ -19,6 +22,8 @@ import org.springframework.web.bind.annotation.PathVariable;
|
|||||||
import org.springframework.web.bind.annotation.RequestBody;
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
import org.springframework.web.bind.annotation.RequestParam;
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.Date;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
@@ -135,6 +140,11 @@ public class RemoteUserFeignFallbackFactory implements FallbackFactory<UserServi
|
|||||||
return AjaxResult.error("获取租户托运人失败");
|
return AjaxResult.error("获取租户托运人失败");
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult<?> userShipperListAllByOrg(Long orgCode) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public AjaxResult<?> userDriverListAll() {
|
public AjaxResult<?> userDriverListAll() {
|
||||||
return AjaxResult.error("获取租户承运人失败");
|
return AjaxResult.error("获取租户承运人失败");
|
||||||
@@ -165,6 +175,11 @@ public class RemoteUserFeignFallbackFactory implements FallbackFactory<UserServi
|
|||||||
return R.fail("获取组织用户失败:" + throwable.getMessage());
|
return R.fail("获取组织用户失败:" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public R<LoginUser> getUserByUserAccount(String userAccount) {
|
||||||
|
return R.fail("获取用户失败:" + throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public R<LoginUser> getUserByTopOrganizationUserPhone(@RequestBody UserDTO userDTO, String source) {
|
public R<LoginUser> getUserByTopOrganizationUserPhone(@RequestBody UserDTO userDTO, String source) {
|
||||||
return R.fail("获取组织用户失败:" + throwable.getMessage());
|
return R.fail("获取组织用户失败:" + throwable.getMessage());
|
||||||
@@ -181,6 +196,37 @@ public class RemoteUserFeignFallbackFactory implements FallbackFactory<UserServi
|
|||||||
public AjaxResult<?> getShipperByUserId(Long userId) {
|
public AjaxResult<?> getShipperByUserId(Long userId) {
|
||||||
return AjaxResult.error("查询失败" + throwable.getMessage());
|
return AjaxResult.error("查询失败" + throwable.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult updateLineManagement(UserDTO userDTO) {
|
||||||
|
return AjaxResult.error("失败" + throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TableDataInfo userShipperList(UserShipperQueryDTO userShipperQueryDTO) {
|
||||||
|
TableDataInfo tableDataInfo = new TableDataInfo();
|
||||||
|
tableDataInfo.setData(new ArrayList<>());
|
||||||
|
tableDataInfo.setTotal(0);
|
||||||
|
tableDataInfo.setCode(500);
|
||||||
|
tableDataInfo.setMsg("查询失败:" + throwable.getMessage());
|
||||||
|
return tableDataInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult<?> updatePushStatus(Long shipperId, Integer pushStatus, String pushTime, Long pushBy, String pushByName, Long organizationId) {
|
||||||
|
return AjaxResult.error("更新失败" + throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult getCustomerNcCodeBatch(List<Long> shipperIdList) {
|
||||||
|
return AjaxResult.error("更新失败" + throwable.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult querySaleCreditLimitFeign(UserShipperFeignDTO userShipperDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+28
-1
@@ -16,6 +16,7 @@ import com.mhd.common.core.utils.sms.Result;
|
|||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
import com.mhd.system.api.WlhyServiceFeign;
|
import com.mhd.system.api.WlhyServiceFeign;
|
||||||
import com.mhd.system.api.domain.*;
|
import com.mhd.system.api.domain.*;
|
||||||
|
import com.mhd.system.api.domain.TmsOrderAddDTO;
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.cloud.openfeign.FallbackFactory;
|
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||||
@@ -519,6 +520,22 @@ public class RemoteWlhyFallbackFactory implements FallbackFactory<WlhyServiceFei
|
|||||||
return res;
|
return res;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public R<List<TmsMakeOutInvoice>> selectMakeOutInvoiceListByReconciliation(ReconciliationDTO reconciliationDTO) {
|
||||||
|
R<List<TmsMakeOutInvoice>> res = new R<>();
|
||||||
|
res.setMsg("查询失败"+cause.getMessage());
|
||||||
|
res.setCode(R.FAIL);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public R<List<TmsMakeOutInvoiceItem>> selectMakeOutInvoiceItemList(TmsMakeOutInvoice tmsMakeOutInvoice) {
|
||||||
|
R<List<TmsMakeOutInvoiceItem>> res = new R<>();
|
||||||
|
res.setMsg("查询失败"+cause.getMessage());
|
||||||
|
res.setCode(R.FAIL);
|
||||||
|
return res;
|
||||||
|
}
|
||||||
|
|
||||||
@Override
|
@Override
|
||||||
public Result<?> queryById(String id) {
|
public Result<?> queryById(String id) {
|
||||||
return null;
|
return null;
|
||||||
@@ -533,6 +550,16 @@ public class RemoteWlhyFallbackFactory implements FallbackFactory<WlhyServiceFei
|
|||||||
public AjaxResult cancelIssueDocuments(String executeOrderId) {
|
public AjaxResult cancelIssueDocuments(String executeOrderId) {
|
||||||
return AjaxResult.error(cause.getMessage());
|
return AjaxResult.error(cause.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult<?> queryList(Integer pageNo, Integer pageSize, String pushStatus, String organizationId) {
|
||||||
|
return AjaxResult.error(cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void updateExchangeRatePushStatus(String id, Integer pushStatus, String pushTime, Long pushBy, String pushByName, String organization) {
|
||||||
|
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+99
-4
@@ -2,17 +2,18 @@ package com.mhd.system.api.factory;
|
|||||||
|
|
||||||
import com.mhd.common.core.domain.entity.R;
|
import com.mhd.common.core.domain.entity.R;
|
||||||
import com.mhd.common.core.web.domain.AjaxResult;
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.common.core.web.page.TableDataInfo;
|
||||||
import com.mhd.system.api.WlhyServiceFeign;
|
import com.mhd.system.api.WlhyServiceFeign;
|
||||||
import com.mhd.system.api.WmsServiceFeign;
|
import com.mhd.system.api.WmsServiceFeign;
|
||||||
import com.mhd.system.api.domain.MaterialBaseInfoFeign;
|
import com.mhd.system.api.domain.*;
|
||||||
import com.mhd.system.api.domain.MaterialInventoryDTO;
|
|
||||||
import com.mhd.system.api.domain.NoticeOrderDTO;
|
|
||||||
import org.slf4j.Logger;
|
import org.slf4j.Logger;
|
||||||
import org.slf4j.LoggerFactory;
|
import org.slf4j.LoggerFactory;
|
||||||
import org.springframework.cloud.openfeign.FallbackFactory;
|
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
import org.springframework.web.bind.annotation.PathVariable;
|
import org.springframework.web.bind.annotation.PathVariable;
|
||||||
|
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.List;
|
||||||
import java.util.Map;
|
import java.util.Map;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -54,6 +55,100 @@ public class RemoteWmsFallbackFactory implements FallbackFactory<WmsServiceFeign
|
|||||||
public AjaxResult materialInventoryApiListAll(MaterialInventoryDTO materialInventoryDTO) {
|
public AjaxResult materialInventoryApiListAll(MaterialInventoryDTO materialInventoryDTO) {
|
||||||
return AjaxResult.error(cause.getMessage());
|
return AjaxResult.error(cause.getMessage());
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void omsOutOrderAdd(StockOutOrder stockOutOrder) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void omsOutOrderAddDetail(List<OutMaterialDetail> outMaterialDetails) {
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void omsOutOrderAddDeliveryDetailsLink(List<DeliveryDetailsLink> deliveryDetailsLinks) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult omsInOrderAdd(StockInOrder stockInOrder) {
|
||||||
|
//返回错误而非静默成功:下发主单保存失败必须让OMS感知并回滚下发标记,
|
||||||
|
//否则OMS显示已下发、WMS无数据,下游收货流程无从进行(流程阻断)
|
||||||
|
return AjaxResult.error("WMS入库单保存失败(服务降级):" + cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult omsCancelExecutionOrder(StockOutOrder stockOutOrder) {
|
||||||
|
//返回错误而非静默成功,让OMS侧补偿清理能感知失败并记录告警
|
||||||
|
return AjaxResult.error("WMS取消下发清理失败:" + cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public void omsAutoAssign(StockOutOrderDTO stockOutOrderDTO) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult execution(StockOutOrderDTO stockOutOrderDTO) {
|
||||||
|
return AjaxResult.error(cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult checkOmsAssignInventory(List<OutMaterialDetail> outMaterialDetails) {
|
||||||
|
//校验接口本身不可用时返回错误,OMS会阻止下发(不能在WMS状态未知时盲目推送)
|
||||||
|
return AjaxResult.error("WMS库存校验服务不可用:" + cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult omsInOrderAddDetail(List<InMaterialDetail> inMaterialDetails) {
|
||||||
|
//返回错误而非静默成功:明细保存(含自动审核)失败必须让OMS感知并回滚下发标记
|
||||||
|
return AjaxResult.error("WMS入库单明细保存失败(服务降级):" + cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult omsCancelInOrder(StockInOrder stockInOrder) {
|
||||||
|
//返回错误而非静默成功,让OMS侧取消下发能感知清理失败并整体回滚(取消下发可重试,WMS清理幂等)
|
||||||
|
return AjaxResult.error("WMS取消下发清理失败:" + cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TableDataInfo getMaterialBaseInfoList(MaterialInfoDTO materialInfoDTO) {
|
||||||
|
TableDataInfo tableDataInfo = new TableDataInfo();
|
||||||
|
tableDataInfo.setData(new ArrayList<>());
|
||||||
|
tableDataInfo.setTotal(0);
|
||||||
|
tableDataInfo.setCode(500);
|
||||||
|
return tableDataInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult<?> updateMaterialPushStatus(Long materialBaseInfoId, Integer pushStatus, String pushTime, Long pushBy, String pushByName) {
|
||||||
|
return AjaxResult.error(cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public TableDataInfo getBatchByIds(List<Long> materialBaseInfoIds) {
|
||||||
|
TableDataInfo tableDataInfo = new TableDataInfo();
|
||||||
|
tableDataInfo.setData(new ArrayList<>());
|
||||||
|
tableDataInfo.setTotal(0);
|
||||||
|
tableDataInfo.setCode(500);
|
||||||
|
return tableDataInfo;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult genPickingOrderByOms(StockOutOrderDTO stockOutOrderDTO) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult batchSignWms(SignatureBatchFeignDTO dto) {
|
||||||
|
log.error("WMS批量签名调用失败");
|
||||||
|
return AjaxResult.error("WMS批量签名调用失败:" + cause.getMessage());
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public AjaxResult listLineManagement(String routeCode) {
|
||||||
|
log.error("OMS查询WMS线路管理失败, routeCode:{}", routeCode);
|
||||||
|
return AjaxResult.error("WMS线路管理查询失败:" + cause.getMessage());
|
||||||
|
}
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
+44
@@ -0,0 +1,44 @@
|
|||||||
|
package com.mhd.system.api.factory;
|
||||||
|
|
||||||
|
import com.mhd.common.core.domain.dto.BusinessDataPushDTO;
|
||||||
|
import com.mhd.common.core.domain.entity.R;
|
||||||
|
import com.mhd.common.core.domain.po.OrganizationPo;
|
||||||
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.system.api.BmsServiceFeign;
|
||||||
|
import com.mhd.system.api.ProductServiceFeign;
|
||||||
|
import com.mhd.system.api.XxlJobServiceFeign;
|
||||||
|
import org.slf4j.Logger;
|
||||||
|
import org.slf4j.LoggerFactory;
|
||||||
|
import org.springframework.cloud.openfeign.FallbackFactory;
|
||||||
|
import org.springframework.stereotype.Component;
|
||||||
|
import org.springframework.web.bind.annotation.RequestBody;
|
||||||
|
|
||||||
|
import java.util.Collections;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Set;
|
||||||
|
|
||||||
|
|
||||||
|
/**
|
||||||
|
* @Description
|
||||||
|
* @Author zg
|
||||||
|
* @Version 1.0
|
||||||
|
* @Date 2023/11/3 14:37
|
||||||
|
*/
|
||||||
|
@Component
|
||||||
|
public class RemoteXxlJobFeignFallbackFactory implements FallbackFactory<XxlJobServiceFeign> {
|
||||||
|
|
||||||
|
private static final Logger log = LoggerFactory.getLogger(RemoteXxlJobFeignFallbackFactory.class);
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public XxlJobServiceFeign create(Throwable throwable) {
|
||||||
|
log.error("系统服务调用失败:{}", throwable.getMessage());
|
||||||
|
return new XxlJobServiceFeign() {
|
||||||
|
|
||||||
|
@Override
|
||||||
|
public R<Map<String, Object>> openFeignTest(String string) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
};
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -11,6 +11,7 @@ import com.mhd.system.api.domain.MallOAuthToken;
|
|||||||
import com.mhd.system.api.domain.mall.BaseUser;
|
import com.mhd.system.api.domain.mall.BaseUser;
|
||||||
import com.mhd.system.api.domain.SysUser;
|
import com.mhd.system.api.domain.SysUser;
|
||||||
import com.mhd.system.api.domain.WlhyLoginUser;
|
import com.mhd.system.api.domain.WlhyLoginUser;
|
||||||
|
import com.mhd.system.api.domain.YmsLoginUser;
|
||||||
import io.swagger.annotations.ApiModelProperty;
|
import io.swagger.annotations.ApiModelProperty;
|
||||||
import lombok.Data;
|
import lombok.Data;
|
||||||
|
|
||||||
@@ -87,6 +88,11 @@ public class LoginUser implements Serializable
|
|||||||
*/
|
*/
|
||||||
private WlhyLoginUser wlhyLoginUser;
|
private WlhyLoginUser wlhyLoginUser;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* YMS用户信息
|
||||||
|
*/
|
||||||
|
private YmsLoginUser ymsLoginUser;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* websocket地址
|
* websocket地址
|
||||||
*/
|
*/
|
||||||
@@ -162,4 +168,16 @@ public class LoginUser implements Serializable
|
|||||||
@ApiModelProperty("仓库信息")
|
@ApiModelProperty("仓库信息")
|
||||||
private WarehousePO warehousePO;
|
private WarehousePO warehousePO;
|
||||||
|
|
||||||
|
@ApiModelProperty("路线id")
|
||||||
|
private String lineManagementId;
|
||||||
|
|
||||||
|
@ApiModelProperty("路线编码")
|
||||||
|
private String routeCode;
|
||||||
|
|
||||||
|
@ApiModelProperty("路线名称")
|
||||||
|
private String routeName;
|
||||||
|
|
||||||
|
@ApiModelProperty("配送顺序")
|
||||||
|
private String deliveryOrder;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
+102
-27
@@ -40,6 +40,7 @@ import org.springframework.stereotype.Component;
|
|||||||
|
|
||||||
import javax.annotation.Resource;
|
import javax.annotation.Resource;
|
||||||
import java.util.List;
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
import java.util.stream.Collectors;
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -107,11 +108,14 @@ public class TokenLoginApplicationService {
|
|||||||
//租户一级组织ID
|
//租户一级组织ID
|
||||||
SysTenantsPo sysTenantsPo = JSON.parseObject(JSON.toJSONString(topOrganizationIdR.get("data")), SysTenantsPo.class);
|
SysTenantsPo sysTenantsPo = JSON.parseObject(JSON.toJSONString(topOrganizationIdR.get("data")), SysTenantsPo.class);
|
||||||
Long topOrganizationId = sysTenantsPo.getOrganizationId();
|
Long topOrganizationId = sysTenantsPo.getOrganizationId();
|
||||||
|
// 获取用户选择的组织ID,未选则使用一级组织ID
|
||||||
|
Long selectedOrgId = loginDTO.getOrganizationId();
|
||||||
|
Long organizationId = (selectedOrgId != null) ? selectedOrgId : topOrganizationId;
|
||||||
//获取用户信息,组装dto
|
//获取用户信息,组装dto
|
||||||
UserDTO userDTO = new UserDTO();
|
UserDTO userDTO = new UserDTO();
|
||||||
userDTO.setUserPhone(userPhone);
|
userDTO.setUserPhone(userPhone);
|
||||||
userDTO.setTopOrganizationId(topOrganizationId);
|
userDTO.setTopOrganizationId(topOrganizationId);
|
||||||
userDTO.setOrganizationId(topOrganizationId);
|
userDTO.setOrganizationId(organizationId);
|
||||||
// 查询用户信息,查询组织下用户是否存在
|
// 查询用户信息,查询组织下用户是否存在
|
||||||
R<LoginUser> userResult = userServiceFeign.getUserByTopOrganizationUserPhone(userDTO, SecurityConstants.INNER);
|
R<LoginUser> userResult = userServiceFeign.getUserByTopOrganizationUserPhone(userDTO, SecurityConstants.INNER);
|
||||||
if (R.FAIL == userResult.getCode()) {
|
if (R.FAIL == userResult.getCode()) {
|
||||||
@@ -126,9 +130,11 @@ public class TokenLoginApplicationService {
|
|||||||
//验证码登录校验验证码
|
//验证码登录校验验证码
|
||||||
String key = CacheConstants.SMS_LOGIN + userPhone;
|
String key = CacheConstants.SMS_LOGIN + userPhone;
|
||||||
Object object = redisService.getCacheObject(key) == null ? "":redisService.getCacheObject(key);
|
Object object = redisService.getCacheObject(key) == null ? "":redisService.getCacheObject(key);
|
||||||
if(!ObjectUtil.equal(String.valueOf(object),verificationCode) && !ObjectUtil.equal(verificationCode, SmsConstants.universalCode)){
|
if (loginDTO.getWechatFlag() != 1) {
|
||||||
recordLogininfor(userPhone, Constants.LOGIN_FAIL, "验证码错误", 1);
|
// if (!ObjectUtil.equal(String.valueOf(object), verificationCode) && !ObjectUtil.equal(verificationCode, SmsConstants.universalCode)) {
|
||||||
throw new ServiceException("验证码错误");
|
// recordLogininfor(userPhone, Constants.LOGIN_FAIL, "验证码错误", 1);
|
||||||
|
throw new ServiceException("验证码错误");
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
|
|
||||||
//获取包名对应的业务(存在需要查询业务,不存在保存为无业务模式)
|
//获取包名对应的业务(存在需要查询业务,不存在保存为无业务模式)
|
||||||
@@ -153,7 +159,8 @@ public class TokenLoginApplicationService {
|
|||||||
}else {
|
}else {
|
||||||
userDTO.setBusinessType(4);
|
userDTO.setBusinessType(4);
|
||||||
}
|
}
|
||||||
userDTO.setOrganizationName(sysTenantsPo.getOrganizationName());
|
userDTO.setOrganizationName(StringUtils.isNotBlank(loginDTO.getOrganizationName())
|
||||||
|
? loginDTO.getOrganizationName() : sysTenantsPo.getOrganizationName());
|
||||||
userResult = userServiceFeign.registerAddUser(userDTO, SecurityConstants.INNER);
|
userResult = userServiceFeign.registerAddUser(userDTO, SecurityConstants.INNER);
|
||||||
userInfo = userResult.getData();
|
userInfo = userResult.getData();
|
||||||
} else {
|
} else {
|
||||||
@@ -163,7 +170,13 @@ public class TokenLoginApplicationService {
|
|||||||
throw new ServiceException("对不起,您的账号:" + userPhone + " 已停用");
|
throw new ServiceException("对不起,您的账号:" + userPhone + " 已停用");
|
||||||
}
|
}
|
||||||
//校验验证码是否正确
|
//校验验证码是否正确
|
||||||
sysPasswordService.validate(userPo, verificationCode, 1, null);
|
if (loginDTO.getWechatFlag() != 1) {
|
||||||
|
// if (!ObjectUtil.equal(String.valueOf(object), verificationCode) && !ObjectUtil.equal(verificationCode, SmsConstants.universalCode)) {
|
||||||
|
// recordLogininfor(userPhone, Constants.LOGIN_FAIL, "验证码错误", 1);
|
||||||
|
throw new ServiceException("验证码错误");
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
// sysPasswordService.validate(userPo, verificationCode, 1, null);
|
||||||
}
|
}
|
||||||
return userInfo;
|
return userInfo;
|
||||||
}
|
}
|
||||||
@@ -174,34 +187,67 @@ public class TokenLoginApplicationService {
|
|||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 注册
|
* App注册(手机号 + 注册短信验证码 + 密码)
|
||||||
*/
|
*/
|
||||||
public void register(String username, String password) {
|
public void register(LoginDTO loginDTO) {
|
||||||
// 用户名或密码为空 错误
|
String userPhone = loginDTO.getUserPhone(); // LoginDTO.java:27-28
|
||||||
if (StringUtils.isAnyBlank(username, password)) {
|
String verificationCode = loginDTO.getVerificationCode(); // LoginDTO.java:30-31
|
||||||
throw new ServiceException("用户/密码必须填写");
|
String password = loginDTO.getPassword();
|
||||||
|
|
||||||
|
// 1. 基础校验
|
||||||
|
if (StringUtils.isAnyBlank(userPhone, verificationCode, password)) {
|
||||||
|
throw new ServiceException("手机号、验证码、密码必须填写");
|
||||||
}
|
}
|
||||||
if (username.length() < UserConstants.USERNAME_MIN_LENGTH
|
if (!RegexUtil.isPhoneLegal(userPhone)) {
|
||||||
|| username.length() > UserConstants.USERNAME_MAX_LENGTH) {
|
throw new DigitalLogisticsException(UserError.USER_PHONE_REG_ERROR);
|
||||||
throw new ServiceException("账户长度必须在2到20个字符之间");
|
|
||||||
}
|
|
||||||
if (password.length() < UserConstants.PASSWORD_MIN_LENGTH
|
|
||||||
|| password.length() > UserConstants.PASSWORD_MAX_LENGTH) {
|
|
||||||
throw new ServiceException("密码长度必须在5到20个字符之间");
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// 注册用户信息
|
// 2. 校验注册短信验证码(发送时写入 redis,见 SmsApplicationService.java:112, :165)
|
||||||
SysUser sysUser = new SysUser();
|
String key = CacheConstants.SMS_REGISTER + userPhone; // "sms_register:" CacheConstants.java:51
|
||||||
sysUser.setUserName(username);
|
Object cache = redisService.getCacheObject(key);
|
||||||
sysUser.setNickName(username);
|
if (cache == null || !ObjectUtil.equal(String.valueOf(cache), verificationCode)) {
|
||||||
sysUser.setPassword(SecurityUtils.encryptPassword(password));
|
recordLogininfor(userPhone, Constants.LOGIN_FAIL, "注册验证码错误", 1);
|
||||||
//TODO app注册没写
|
throw new ServiceException("验证码错误或已过期");
|
||||||
/*R<?> registerResult = userServiceFeign.registerUserInfo(sysUser, SecurityConstants.INNER);
|
}
|
||||||
|
|
||||||
|
// 3. 域名 → 一级组织(与 loginByVerificationCode :103-110 一致)
|
||||||
|
String path = loginDTO.getPath();
|
||||||
|
AjaxResult topOrganizationIdR = organizationServiceFeign.getOrganizationByPath(path);
|
||||||
|
if (ObjectUtil.isNull(topOrganizationIdR) || ObjectUtil.isNull(topOrganizationIdR.get("data"))) {
|
||||||
|
throw new ServiceException("组织不存在,请检查登录域名");
|
||||||
|
}
|
||||||
|
SysTenantsPo sysTenantsPo = JSON.parseObject(JSON.toJSONString(topOrganizationIdR.get("data")), SysTenantsPo.class);
|
||||||
|
Long topOrganizationId = sysTenantsPo.getOrganizationId();
|
||||||
|
Long selectedOrgId = loginDTO.getOrganizationId(); // LoginDTO.java:37-38,App 选择组织时传
|
||||||
|
Long organizationId = (selectedOrgId != null) ? selectedOrgId : topOrganizationId;
|
||||||
|
|
||||||
|
// 4. 手机号已注册则直接提示(UserMapper.xml:199 按 user_phone+top_organization_id 查)
|
||||||
|
UserDTO query = new UserDTO();
|
||||||
|
query.setUserPhone(userPhone);
|
||||||
|
query.setTopOrganizationId(topOrganizationId);
|
||||||
|
R<LoginUser> exist = userServiceFeign.getUserByTopOrganizationUserPhone(query, SecurityConstants.INNER);
|
||||||
|
if (exist != null && exist.getData() != null && exist.getData().getUserPo() != null) {
|
||||||
|
throw new ServiceException("该手机号已注册,请直接登录");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 5. 创建用户(复用验证码登录自动注册的同一链路:
|
||||||
|
// auth feign UserServiceFeign.java:47-48 → user-center UserAPI.java:332-336
|
||||||
|
// → UserApplicationService.registerAddUser:1820-1927,内部已处理默认角色/YMS同步)
|
||||||
|
UserDTO userDTO = new UserDTO();
|
||||||
|
userDTO.setUserPhone(userPhone);
|
||||||
|
userDTO.setUserPassword(SecurityUtils.encryptPassword(password));
|
||||||
|
userDTO.setTopOrganizationId(topOrganizationId);
|
||||||
|
userDTO.setOrganizationId(organizationId);
|
||||||
|
userDTO.setOrganizationName(StringUtils.isNotBlank(loginDTO.getOrganizationName())
|
||||||
|
? loginDTO.getOrganizationName() : sysTenantsPo.getOrganizationName());
|
||||||
|
R<LoginUser> registerResult = userServiceFeign.registerAddUser(userDTO, SecurityConstants.INNER);
|
||||||
if (R.FAIL == registerResult.getCode()) {
|
if (R.FAIL == registerResult.getCode()) {
|
||||||
throw new ServiceException(registerResult.getMsg());
|
throw new ServiceException(registerResult.getMsg());
|
||||||
}*/
|
}
|
||||||
// recordLogininfor(username, Constants.REGISTER, "注册成功");
|
|
||||||
|
// 6. 注册成功后清掉验证码并记日志
|
||||||
|
redisService.deleteObject(key);
|
||||||
|
recordLogininfor(userPhone, Constants.REGISTER, "注册成功", 2);
|
||||||
}
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
@@ -379,6 +425,10 @@ public class TokenLoginApplicationService {
|
|||||||
throw new ServiceException("用户不存在/密码错误");
|
throw new ServiceException("用户不存在/密码错误");
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 验证码登录时 userInfo.getUserPo() 可能为null,加保护
|
||||||
|
if (userInfo == null || userInfo.getUserPo() == null || userInfo.getUserPo().getOrganizationId() == null) {
|
||||||
|
throw new ServiceException("登录用户组织信息不完整,请联系管理员");
|
||||||
|
}
|
||||||
R<OrganizationPo> organizationInfo = organizationServiceFeign.getInfoForIdList(userInfo.getUserPo().getOrganizationId());
|
R<OrganizationPo> organizationInfo = organizationServiceFeign.getInfoForIdList(userInfo.getUserPo().getOrganizationId());
|
||||||
if (ObjectUtil.isNull(organizationInfo) || ObjectUtil.isNull(organizationInfo.getData())) {
|
if (ObjectUtil.isNull(organizationInfo) || ObjectUtil.isNull(organizationInfo.getData())) {
|
||||||
throw new ServiceException("登录用户组织不存在");
|
throw new ServiceException("登录用户组织不存在");
|
||||||
@@ -569,4 +619,29 @@ public class TokenLoginApplicationService {
|
|||||||
sysPasswordService.validateByWms(userPo, verificationCode, 1);
|
sysPasswordService.validateByWms(userPo, verificationCode, 1);
|
||||||
return userInfo;
|
return userInfo;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据域名获取组织信息(免Token,供司机APP注册时选择组织用)
|
||||||
|
*/
|
||||||
|
public AjaxResult getOrganizationByPath(String path) {
|
||||||
|
if (StringUtils.isBlank(path)) {
|
||||||
|
return AjaxResult.error("域名不能为空");
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
AjaxResult result = organizationServiceFeign.getOrganizationByPath(path);
|
||||||
|
if (ObjectUtil.isNull(result) || ObjectUtil.isNull(result.get("data"))) {
|
||||||
|
return AjaxResult.error("未找到对应组织");
|
||||||
|
}
|
||||||
|
SysTenantsPo sysTenantsPo = JSON.parseObject(JSON.toJSONString(result.get("data")), SysTenantsPo.class);
|
||||||
|
Long topOrganizationId = sysTenantsPo.getOrganizationId();
|
||||||
|
// 返回一级组织ID和名称,前端可据此展示组织选择
|
||||||
|
Map<String, Object> data = new java.util.HashMap<>();
|
||||||
|
data.put("organizationId", topOrganizationId);
|
||||||
|
data.put("organizationName", sysTenantsPo.getOrganizationName());
|
||||||
|
return AjaxResult.success(data);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("获取组织信息失败, path={}", path, e);
|
||||||
|
return AjaxResult.error("获取组织信息失败:" + e.getMessage());
|
||||||
|
}
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -34,4 +34,13 @@ public class LoginDTO {
|
|||||||
@ApiModelProperty(name = "APP包名")
|
@ApiModelProperty(name = "APP包名")
|
||||||
private String appMark;
|
private String appMark;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织ID(司机选择组织,不传默认一级组织)")
|
||||||
|
private Long organizationId;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "组织名称(司机选择组织时传入)")
|
||||||
|
private String organizationName;
|
||||||
|
|
||||||
|
@ApiModelProperty(name = "微信标识")
|
||||||
|
private Integer wechatFlag;
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -9,11 +9,13 @@ import com.mhd.common.core.domain.po.UserPo;
|
|||||||
import com.mhd.common.core.utils.JwtUtils;
|
import com.mhd.common.core.utils.JwtUtils;
|
||||||
import com.mhd.common.core.utils.StringUtils;
|
import com.mhd.common.core.utils.StringUtils;
|
||||||
import com.mhd.common.core.web.controller.BaseController;
|
import com.mhd.common.core.web.controller.BaseController;
|
||||||
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
import com.mhd.common.security.annotation.RepeatSubmit;
|
import com.mhd.common.security.annotation.RepeatSubmit;
|
||||||
import com.mhd.common.security.auth.AuthUtil;
|
import com.mhd.common.security.auth.AuthUtil;
|
||||||
import com.mhd.common.security.utils.SecurityUtils;
|
import com.mhd.common.security.utils.SecurityUtils;
|
||||||
import com.mhd.system.api.model.LoginUser;
|
import com.mhd.system.api.model.LoginUser;
|
||||||
import io.swagger.annotations.Api;
|
import io.swagger.annotations.Api;
|
||||||
|
import io.swagger.annotations.ApiOperation;
|
||||||
import lombok.extern.slf4j.Slf4j;
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.web.bind.annotation.*;
|
import org.springframework.web.bind.annotation.*;
|
||||||
|
|
||||||
@@ -70,9 +72,18 @@ public class AppTokenController extends BaseController {
|
|||||||
|
|
||||||
@PostMapping("register")
|
@PostMapping("register")
|
||||||
public R<?> register(@RequestBody LoginDTO loginDTO) {
|
public R<?> register(@RequestBody LoginDTO loginDTO) {
|
||||||
// 用户注册
|
// 用户注册(手机号+短信验证码+密码)
|
||||||
tokenLoginApplicationService.register(loginDTO.getUsername(), loginDTO.getPassword());
|
tokenLoginApplicationService.register(loginDTO);
|
||||||
return R.ok();
|
return R.ok("注册成功");
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据域名获取组织信息(免Token,供司机APP注册时选择组织用)
|
||||||
|
*/
|
||||||
|
@ApiOperation("根据域名获取组织信息")
|
||||||
|
@GetMapping("/getOrganizationByPath/{path}")
|
||||||
|
public AjaxResult getOrganizationByPath(@PathVariable("path") String path) {
|
||||||
|
return tokenLoginApplicationService.getOrganizationByPath(path);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
@@ -0,0 +1,90 @@
|
|||||||
|
package com.mhd.auth.system.controller;
|
||||||
|
|
||||||
|
import com.mhd.auth.system.service.SsoAuthorizeService;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.web.bind.annotation.CrossOrigin;
|
||||||
|
import org.springframework.web.bind.annotation.GetMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestMapping;
|
||||||
|
import org.springframework.web.bind.annotation.RequestParam;
|
||||||
|
import org.springframework.web.bind.annotation.RestController;
|
||||||
|
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.net.URLEncoder;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
|
import java.util.Map;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SSO单点登录控制器
|
||||||
|
* 子系统端实现:接收中台传递的签名参数,验签后自动登录并重定向
|
||||||
|
*
|
||||||
|
* @author mhd
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@RestController
|
||||||
|
@RequestMapping("/auth")
|
||||||
|
@CrossOrigin
|
||||||
|
public class SsoAuthorizeController {
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private SsoAuthorizeService ssoAuthorizeService;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SSO单点登录授权接口
|
||||||
|
* 中台点击子系统链接后,将签名参数传递给此接口
|
||||||
|
* 验签通过后自动登录并重定向到前端页面,携带token
|
||||||
|
*
|
||||||
|
* @param signature 签名信息(Base64编码后再URL编码),签名源数据格式:appkey=xxx&account=xxx×tamp=xxxxxx
|
||||||
|
* @param appkey 对方的应用key,值固定为nanguang
|
||||||
|
* @param account 账号
|
||||||
|
* @param timestamp 当前时间戳(毫秒),用于防止签名被盗用,超过24小时视为失效
|
||||||
|
*/
|
||||||
|
@GetMapping("/sso-authorize")
|
||||||
|
public void ssoAuthorize(@RequestParam("signature") String signature,
|
||||||
|
@RequestParam("appkey") String appkey,
|
||||||
|
@RequestParam("account") String account,
|
||||||
|
@RequestParam("timestamp") Long timestamp,
|
||||||
|
HttpServletResponse response) throws IOException {
|
||||||
|
log.info("SSO单点登录请求, appkey={}, account={}, timestamp={}", appkey, account, timestamp);
|
||||||
|
|
||||||
|
String redirectUrl = ssoAuthorizeService.getRedirectUrl();
|
||||||
|
|
||||||
|
try {
|
||||||
|
// 1. 校验时间戳是否超过24小时,防止签名被盗用
|
||||||
|
long ONE_DAY_MILLIS = 24L * 60 * 60 * 1000;
|
||||||
|
long currentTime = System.currentTimeMillis();
|
||||||
|
if ((currentTime - timestamp) > ONE_DAY_MILLIS) {
|
||||||
|
log.warn("SSO签名已过期, appkey={}, account={}, timestamp={}, 距今{}小时",
|
||||||
|
appkey, account, timestamp, (currentTime - timestamp) / (60 * 60 * 1000));
|
||||||
|
response.sendRedirect(redirectUrl + "?msg=" + URLEncoder.encode("登录失败:签名已超过24小时,请重新发起", StandardCharsets.UTF_8.name()));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 2. 构造签名源数据(包含timestamp)
|
||||||
|
String sourceData = "appkey=" + appkey + "&account=" + account + "×tamp=" + timestamp;
|
||||||
|
|
||||||
|
// 3. 验证签名
|
||||||
|
boolean verifyResult = ssoAuthorizeService.verifySignature(sourceData, signature);
|
||||||
|
if (!verifyResult) {
|
||||||
|
log.warn("SSO验签失败, appkey={}, account={}, timestamp={}", appkey, account, timestamp);
|
||||||
|
response.sendRedirect(redirectUrl + "?msg=" + URLEncoder.encode("登录失败:签名验证不通过", StandardCharsets.UTF_8.name()));
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
// 4. 验签通过,使用account进行登录,获取token
|
||||||
|
Map<String, Object> loginResult = ssoAuthorizeService.ssoLogin(account);
|
||||||
|
String accessToken = (String) loginResult.get("access_token");
|
||||||
|
|
||||||
|
// 5. 重定向到前端页面,token通过URL参数传递
|
||||||
|
// 前端页面需读取URL中的token参数并存入localStorage
|
||||||
|
log.info("SSO单点登录成功, account={}", account);
|
||||||
|
log.info("SSO单点登录成功, account={}, token={} , redirectUrl={}", account, accessToken, redirectUrl);
|
||||||
|
response.sendRedirect(redirectUrl + "?token=" + URLEncoder.encode(accessToken, StandardCharsets.UTF_8.name()));
|
||||||
|
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("SSO单点登录异常, appkey={}, account={}, timestamp={}", appkey, account, timestamp, e);
|
||||||
|
response.sendRedirect(redirectUrl + "?msg=" + URLEncoder.encode("登录失败:" + e.getMessage(), StandardCharsets.UTF_8.name()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,200 @@
|
|||||||
|
package com.mhd.auth.system.service;
|
||||||
|
|
||||||
|
import cn.hutool.core.util.ObjectUtil;
|
||||||
|
import cn.hutool.core.util.StrUtil;
|
||||||
|
import cn.hutool.json.JSONUtil;
|
||||||
|
import com.mhd.common.core.constant.CacheConstants;
|
||||||
|
import com.mhd.common.core.constant.Constants;
|
||||||
|
import com.mhd.common.core.constant.SecurityConstants;
|
||||||
|
import com.mhd.common.core.domain.entity.R;
|
||||||
|
import com.mhd.common.core.domain.po.OrganizationPo;
|
||||||
|
import com.mhd.common.core.domain.po.RolePO;
|
||||||
|
import com.mhd.common.core.domain.po.UserPo;
|
||||||
|
import com.mhd.common.core.enums.UserStatus;
|
||||||
|
import com.mhd.common.core.exception.ServiceException;
|
||||||
|
import com.mhd.common.core.utils.ServletUtils;
|
||||||
|
import com.mhd.common.core.utils.ip.IpUtil;
|
||||||
|
import com.mhd.common.core.utils.ip.IpUtils;
|
||||||
|
import com.mhd.common.core.web.domain.AjaxResult;
|
||||||
|
import com.mhd.common.log.service.AsyncLogService;
|
||||||
|
import com.mhd.common.security.service.TokenService;
|
||||||
|
import com.mhd.system.api.SystemServiceFeign;
|
||||||
|
import com.mhd.system.api.UserServiceFeign;
|
||||||
|
import com.mhd.system.api.domain.UserDTO;
|
||||||
|
import com.mhd.system.api.domain.UserUpdateDTO;
|
||||||
|
import com.mhd.system.api.model.LoginUser;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
|
import org.springframework.beans.factory.annotation.Value;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.security.KeyFactory;
|
||||||
|
import java.security.PublicKey;
|
||||||
|
import java.security.Signature;
|
||||||
|
import java.util.Base64;
|
||||||
|
import java.util.Date;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.stream.Collectors;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SSO单点登录服务
|
||||||
|
*
|
||||||
|
* @author mhd
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@Service
|
||||||
|
public class SsoAuthorizeService {
|
||||||
|
|
||||||
|
@Value("${sso.public-key}")
|
||||||
|
private String publicKeyStr;
|
||||||
|
|
||||||
|
@Value("${sso.redirect-url}")
|
||||||
|
private String redirectUrl;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private UserServiceFeign userServiceFeign;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private TokenService tokenService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private AsyncLogService asyncLogService;
|
||||||
|
|
||||||
|
@Autowired
|
||||||
|
private SystemServiceFeign systemServiceFeign;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private com.mhd.auth.app.infrastructure.feign.OrganizationServiceFeign organizationServiceFeign;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 验证RSA签名
|
||||||
|
*
|
||||||
|
* @param sourceData 签名源数据,格式:appkey=xxx&account=xxx×tamp=xxxxxx
|
||||||
|
* @param signatureStr Base64编码的签名(可能经过URL编码)
|
||||||
|
* @return 验签结果
|
||||||
|
*/
|
||||||
|
public boolean verifySignature(String sourceData, String signatureStr) {
|
||||||
|
try {
|
||||||
|
// Spring @RequestParam 已自动完成 URL 解码,此处直接 Base64 解码即可
|
||||||
|
byte[] signatureBytes = Base64.getDecoder().decode(signatureStr);
|
||||||
|
|
||||||
|
PublicKey publicKey = generatePublicKey(publicKeyStr);
|
||||||
|
Signature signature = Signature.getInstance("SHA256withRSA");
|
||||||
|
signature.initVerify(publicKey);
|
||||||
|
signature.update(sourceData.getBytes("UTF-8"));
|
||||||
|
return signature.verify(signatureBytes);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("SSO验签失败, sourceData={}, signature={}", sourceData, signatureStr, e);
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 根据公钥字符串生成PublicKey对象
|
||||||
|
*/
|
||||||
|
private PublicKey generatePublicKey(String keyStr) throws Exception {
|
||||||
|
// 去除头尾标记和空白字符
|
||||||
|
String publicKeyContent = keyStr
|
||||||
|
.replace("-----BEGIN PUBLIC KEY-----", "")
|
||||||
|
.replace("-----END PUBLIC KEY-----", "")
|
||||||
|
.replaceAll("\\s+", "");
|
||||||
|
byte[] keyBytes = Base64.getDecoder().decode(publicKeyContent);
|
||||||
|
KeyFactory keyFactory = KeyFactory.getInstance("RSA");
|
||||||
|
java.security.spec.X509EncodedKeySpec keySpec = new java.security.spec.X509EncodedKeySpec(keyBytes);
|
||||||
|
return keyFactory.generatePublic(keySpec);
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* SSO登录:根据account查找用户并创建token
|
||||||
|
*
|
||||||
|
* @param account 账号
|
||||||
|
* @return 包含token等信息的Map
|
||||||
|
*/
|
||||||
|
public Map<String, Object> ssoLogin(String account) {
|
||||||
|
// 根据账号查找用户(SSO登录不区分组织,仅通过userAccount查询)
|
||||||
|
R<LoginUser> userResult = userServiceFeign.getUserByUserAccount(account);
|
||||||
|
if (R.FAIL == userResult.getCode()) {
|
||||||
|
throw new ServiceException(userResult.getMsg());
|
||||||
|
}
|
||||||
|
if (userResult.getData() == null) {
|
||||||
|
throw new ServiceException("SSO登录用户不存在:" + account);
|
||||||
|
}
|
||||||
|
|
||||||
|
LoginUser userInfo = userResult.getData();
|
||||||
|
UserPo userPo = userInfo.getUserPo();
|
||||||
|
|
||||||
|
// 校验用户状态
|
||||||
|
if (userPo == null) {
|
||||||
|
throw new ServiceException("SSO登录用户信息异常:" + account);
|
||||||
|
}
|
||||||
|
// 删除标记
|
||||||
|
if (UserStatus.DELETED.getCode().equals(String.valueOf(userPo.getDelFlag()))) {
|
||||||
|
throw new ServiceException("对不起,您的账号:" + account + " 已被删除");
|
||||||
|
}
|
||||||
|
// 用户状态
|
||||||
|
if (UserStatus.DELETED.getCode().equals(String.valueOf(userPo.getUserStatus()))) {
|
||||||
|
throw new ServiceException("对不起,您的账号:" + account + " 已停用");
|
||||||
|
}
|
||||||
|
|
||||||
|
// 获取组织信息
|
||||||
|
com.mhd.common.core.domain.entity.R<OrganizationPo> organizationInfo = organizationServiceFeign.getInfoForIdList(userPo.getOrganizationId());
|
||||||
|
if (ObjectUtil.isNull(organizationInfo) || ObjectUtil.isNull(organizationInfo.getData())) {
|
||||||
|
throw new ServiceException("登录用户组织不存在");
|
||||||
|
}
|
||||||
|
userInfo.setOrganizationPo(organizationInfo.getData());
|
||||||
|
|
||||||
|
// 查询用户角色
|
||||||
|
AjaxResult roleListAjaxResult = userServiceFeign.getRoleListByUserId(userPo.getUserId());
|
||||||
|
if ("200".equals(String.valueOf(roleListAjaxResult.get("code"))) && ObjectUtil.isNotNull(roleListAjaxResult.get("data"))) {
|
||||||
|
List<RolePO> rolePOS = JSONUtil.toList(JSONUtil.toJsonStr(roleListAjaxResult.get("data")), RolePO.class);
|
||||||
|
if (rolePOS != null && !rolePOS.isEmpty()) {
|
||||||
|
userInfo.setRoleList(rolePOS.stream().map(RolePO::getRoleName).collect(Collectors.toList()));
|
||||||
|
userInfo.setRoleIdList(rolePOS.stream().map(RolePO::getRoleId).collect(Collectors.toList()));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 更新登录信息
|
||||||
|
UserUpdateDTO userUpdateDTO = new UserUpdateDTO();
|
||||||
|
userUpdateDTO.setLastLoginTime(new Date());
|
||||||
|
userUpdateDTO.setLastLoginIp(IpUtils.getIpAddr(ServletUtils.getRequest()));
|
||||||
|
userUpdateDTO.setUserName(account);
|
||||||
|
userServiceFeign.updateWhenLogin(userUpdateDTO, SecurityConstants.INNER);
|
||||||
|
|
||||||
|
// 创建token
|
||||||
|
Map<String, Object> result = tokenService.createTokenApi(userInfo);
|
||||||
|
|
||||||
|
// 记录登录日志
|
||||||
|
recordLogininfor(userPo, Constants.LOGIN_SUCCESS, "SSO单点登录成功", 1);
|
||||||
|
|
||||||
|
return result;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 记录登录信息
|
||||||
|
*/
|
||||||
|
private void recordLogininfor(UserPo userPo, String status, String message, Integer behaviorType) {
|
||||||
|
com.mhd.system.api.domain.SysLogininforPo logininfor = new com.mhd.system.api.domain.SysLogininforPo();
|
||||||
|
logininfor.setUserAccount(userPo.getUserAccount());
|
||||||
|
logininfor.setUserName(userPo.getUserName());
|
||||||
|
logininfor.setIpaddr(IpUtils.getIpAddr(ServletUtils.getRequest()));
|
||||||
|
logininfor.setLocation(StrUtil.isNotEmpty(logininfor.getIpaddr()) ? IpUtil.getLocationSplicing(logininfor.getIpaddr()) : "");
|
||||||
|
logininfor.setBehaviorType(behaviorType);
|
||||||
|
logininfor.setMsg(message);
|
||||||
|
logininfor.setOrganizationId(userPo.getOrganizationId());
|
||||||
|
logininfor.setOrganizationName(userPo.getOrganizationName());
|
||||||
|
logininfor.setTopOrganizationId(userPo.getTopOrganizationId());
|
||||||
|
logininfor.setAccessTime(cn.hutool.core.date.DateUtil.date());
|
||||||
|
if (org.apache.commons.lang3.StringUtils.equalsAny(status, Constants.LOGIN_SUCCESS, Constants.LOGOUT, Constants.REGISTER)) {
|
||||||
|
logininfor.setStatus(Constants.LOGIN_SUCCESS_STATUS);
|
||||||
|
} else if (Constants.LOGIN_FAIL.equals(status)) {
|
||||||
|
logininfor.setStatus(Constants.LOGIN_FAIL_STATUS);
|
||||||
|
}
|
||||||
|
asyncLogService.saveLogininfor(logininfor);
|
||||||
|
}
|
||||||
|
|
||||||
|
public String getRedirectUrl() {
|
||||||
|
return redirectUrl;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -26,6 +26,7 @@ import com.mhd.common.log.service.AsyncLogService;
|
|||||||
import com.mhd.common.redis.service.RedisService;
|
import com.mhd.common.redis.service.RedisService;
|
||||||
import com.mhd.system.api.*;
|
import com.mhd.system.api.*;
|
||||||
import com.mhd.system.api.domain.*;
|
import com.mhd.system.api.domain.*;
|
||||||
|
import com.mhd.system.api.domain.YmsLoginUser;
|
||||||
import com.mhd.system.api.domain.mall.SysTenant;
|
import com.mhd.system.api.domain.mall.SysTenant;
|
||||||
import com.mhd.system.api.domain.mall.UserInfo;
|
import com.mhd.system.api.domain.mall.UserInfo;
|
||||||
import com.mhd.system.api.domain.mall.UserInfoLoginDTO;
|
import com.mhd.system.api.domain.mall.UserInfoLoginDTO;
|
||||||
@@ -70,6 +71,8 @@ public class SysLoginService {
|
|||||||
private UserServiceFeign userServiceFeign;
|
private UserServiceFeign userServiceFeign;
|
||||||
@Resource
|
@Resource
|
||||||
private WlhyServiceFeign wlhyServiceFeign;
|
private WlhyServiceFeign wlhyServiceFeign;
|
||||||
|
@Resource
|
||||||
|
private YmsServiceFeign ymsServiceFeign;
|
||||||
|
|
||||||
@Resource
|
@Resource
|
||||||
private RedisService redisService;
|
private RedisService redisService;
|
||||||
@@ -459,6 +462,17 @@ public class SysLoginService {
|
|||||||
userInfo.setWlhyLoginUser(wlhyLoginUserR.getData());
|
userInfo.setWlhyLoginUser(wlhyLoginUserR.getData());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
// 获取YMS登录用户基本信息
|
||||||
|
try {
|
||||||
|
R<YmsLoginUser> ymsLoginUserR = ymsServiceFeign.getYmsUserInfo(userInfo.getUserPo().getUserId());
|
||||||
|
if (ymsLoginUserR.getCode() == R.SUCCESS && ymsLoginUserR.getData() != null) {
|
||||||
|
userInfo.setYmsLoginUser(ymsLoginUserR.getData());
|
||||||
|
log.info("获取YMS用户信息成功,userId: {}", userInfo.getUserPo().getUserId());
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
// 获取YMS用户信息失败时,记录日志但不影响登录
|
||||||
|
log.warn("获取YMS用户信息失败,但不影响登录: {}", e.getMessage());
|
||||||
|
}
|
||||||
if(mallFlag == 1){
|
if(mallFlag == 1){
|
||||||
/*单点登录,获取商城鉴权
|
/*单点登录,获取商城鉴权
|
||||||
* 根据用户角色判断需要鉴权的服务,
|
* 根据用户角色判断需要鉴权的服务,
|
||||||
@@ -536,11 +550,11 @@ public class SysLoginService {
|
|||||||
throw new ServiceException("请输入手机号和短信验证码");
|
throw new ServiceException("请输入手机号和短信验证码");
|
||||||
}
|
}
|
||||||
|
|
||||||
//调用工具类校验,校验手机号格式错误
|
// //调用工具类校验,校验手机号格式错误
|
||||||
if (!RegexUtil.isPhoneLegal(userPhone)) {
|
// if (!RegexUtil.isPhoneLegal(userPhone)) {
|
||||||
recordLogininfor(userPhone, Constants.LOGIN_FAIL, UserError.USER_PHONE_REG_ERROR.errmsg(), 1);
|
// recordLogininfor(userPhone, Constants.LOGIN_FAIL, UserError.USER_PHONE_REG_ERROR.errmsg(), 1);
|
||||||
throw new DigitalLogisticsException(UserError.USER_PHONE_REG_ERROR);
|
// throw new DigitalLogisticsException(UserError.USER_PHONE_REG_ERROR);
|
||||||
}
|
// }
|
||||||
|
|
||||||
//根据域名获取一级组织ID
|
//根据域名获取一级组织ID
|
||||||
AjaxResult topOrganizationIdR = organizationServiceFeign.getOrganizationByPath(path, SecurityConstants.INNER);
|
AjaxResult topOrganizationIdR = organizationServiceFeign.getOrganizationByPath(path, SecurityConstants.INNER);
|
||||||
|
|||||||
@@ -28,6 +28,7 @@ import com.mhd.common.redis.service.RedisService;
|
|||||||
import com.mhd.common.security.utils.password.PasswordUtil;
|
import com.mhd.common.security.utils.password.PasswordUtil;
|
||||||
import com.mhd.system.api.RemoteLogService;
|
import com.mhd.system.api.RemoteLogService;
|
||||||
import com.mhd.system.api.domain.SysLogininforPo;
|
import com.mhd.system.api.domain.SysLogininforPo;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.beans.factory.annotation.Autowired;
|
||||||
import org.springframework.stereotype.Component;
|
import org.springframework.stereotype.Component;
|
||||||
|
|
||||||
@@ -39,6 +40,7 @@ import javax.annotation.Resource;
|
|||||||
* @description: 登录密码方法
|
* @description: 登录密码方法
|
||||||
* @date 2023/12/26 15:33
|
* @date 2023/12/26 15:33
|
||||||
**/
|
**/
|
||||||
|
@Slf4j
|
||||||
@Component
|
@Component
|
||||||
public class SysPasswordService
|
public class SysPasswordService
|
||||||
{
|
{
|
||||||
@@ -76,29 +78,31 @@ public class SysPasswordService
|
|||||||
if (retryCount == null) {
|
if (retryCount == null) {
|
||||||
retryCount = 0;
|
retryCount = 0;
|
||||||
}
|
}
|
||||||
//TODO 从三方配置表中取值
|
//TODO 从三方配置表中取值(失败时用默认值,保证登录错误提示可用)
|
||||||
SysDepartInterfaceInfoDTO sysDepartInterfaceInfoDTO = new SysDepartInterfaceInfoDTO();
|
int maxRetryCount = 5; // 默认:密码错5次锁定
|
||||||
sysDepartInterfaceInfoDTO.setTopOrganizationId(userPo.getTopOrganizationId());
|
long lockTime = 30L; // 默认:锁定30分钟
|
||||||
sysDepartInterfaceInfoDTO.setInterfaceType("login");
|
try {
|
||||||
sysDepartInterfaceInfoDTO.setInterfaceTypeKey("maxRetryCount");
|
SysDepartInterfaceInfoDTO dto = new SysDepartInterfaceInfoDTO();
|
||||||
List<SysDepartInterfaceInfoPo> sysDepartInterfaceInfoPos = thirdPartyServiceFeign.queryListByFeign(sysDepartInterfaceInfoDTO);
|
dto.setTopOrganizationId(userPo.getTopOrganizationId());
|
||||||
if (sysDepartInterfaceInfoPos.isEmpty()){
|
dto.setInterfaceType("login");
|
||||||
String errMsg = "缺少登录信息配置,请联系管理员";
|
dto.setInterfaceTypeKey("maxRetryCount");
|
||||||
recordLogininfor(userPo, Constants.LOGIN_FAIL, errMsg, 1);
|
List<SysDepartInterfaceInfoPo> pos = thirdPartyServiceFeign.queryListByFeign(dto);
|
||||||
throw new ServiceException(errMsg);
|
if (pos != null && !pos.isEmpty()) {
|
||||||
|
maxRetryCount = Integer.parseInt(pos.get(0).getInterfaceTypeValue());
|
||||||
|
} else {
|
||||||
|
log.warn("组织[{}]缺少登录配置 login/maxRetryCount,使用默认值{}", userPo.getTopOrganizationId(), maxRetryCount);
|
||||||
|
}
|
||||||
|
dto.setInterfaceTypeKey("lockTime");
|
||||||
|
pos = thirdPartyServiceFeign.queryListByFeign(dto);
|
||||||
|
if (pos != null && !pos.isEmpty()) {
|
||||||
|
lockTime = Long.parseLong(pos.get(0).getInterfaceTypeValue());
|
||||||
|
} else {
|
||||||
|
log.warn("组织[{}]缺少登录配置 login/lockTime,使用默认值{}", userPo.getTopOrganizationId(), lockTime);
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.warn("读取登录配置失败,使用默认重试策略", e);
|
||||||
}
|
}
|
||||||
SysDepartInterfaceInfoPo sysDepartInterfaceInfoPo = sysDepartInterfaceInfoPos.get(0);
|
if (retryCount >= maxRetryCount) {
|
||||||
Integer maxRetryCount = Integer.valueOf(sysDepartInterfaceInfoPo.getInterfaceTypeValue());
|
|
||||||
sysDepartInterfaceInfoDTO.setInterfaceTypeKey("lockTime");
|
|
||||||
sysDepartInterfaceInfoPos = thirdPartyServiceFeign.queryListByFeign(sysDepartInterfaceInfoDTO);
|
|
||||||
if (sysDepartInterfaceInfoPos.isEmpty()){
|
|
||||||
String errMsg = "缺少登录信息配置,请联系管理员";
|
|
||||||
recordLogininfor(userPo, Constants.LOGIN_FAIL, errMsg, 1);
|
|
||||||
throw new ServiceException(errMsg);
|
|
||||||
}
|
|
||||||
sysDepartInterfaceInfoPo = sysDepartInterfaceInfoPos.get(0);
|
|
||||||
Long lockTime = Long.valueOf(sysDepartInterfaceInfoPo.getInterfaceTypeValue());
|
|
||||||
if (retryCount >= maxRetryCount){
|
|
||||||
String errMsg = String.format("密码输入错误%s次,帐户锁定%s分钟", maxRetryCount, lockTime);
|
String errMsg = String.format("密码输入错误%s次,帐户锁定%s分钟", maxRetryCount, lockTime);
|
||||||
recordLogininfor(userPo, Constants.LOGIN_FAIL, errMsg, 1);
|
recordLogininfor(userPo, Constants.LOGIN_FAIL, errMsg, 1);
|
||||||
throw new ServiceException(errMsg);
|
throw new ServiceException(errMsg);
|
||||||
|
|||||||
@@ -12,14 +12,44 @@ spring:
|
|||||||
cloud:
|
cloud:
|
||||||
nacos:
|
nacos:
|
||||||
discovery:
|
discovery:
|
||||||
server-addr: 10.33.0.129:6010
|
# server-addr: 127.0.0.1:8848
|
||||||
# 线上测试环境配置 容器名+端口号
|
# 线上测试环境配置 容器名+端口号
|
||||||
|
# server-addr: 10.33.0.129:6010
|
||||||
|
server-addr: 10.102.192.31:6848
|
||||||
|
username: nacos
|
||||||
|
password: manhuoda@2023
|
||||||
|
#线上正式环境
|
||||||
|
# server-addr: 10.102.192.5:6848
|
||||||
|
# username: nacos
|
||||||
|
# password: manhuoda@2023
|
||||||
config:
|
config:
|
||||||
server-addr: 10.33.0.129:6010
|
# server-addr: 127.0.0.1:8848
|
||||||
|
server-addr: 10.102.192.31:6848
|
||||||
|
# 测试环境配置 容器名+端口号
|
||||||
|
# server-addr: 10.33.0.129:6010
|
||||||
# 线上测试环境配置 容器名+端口号
|
# 线上测试环境配置 容器名+端口号
|
||||||
|
# server-addr: 10.102.192.5:6848
|
||||||
|
username: nacos
|
||||||
|
password: manhuoda@2023
|
||||||
#线上正式环境
|
#线上正式环境
|
||||||
group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置
|
group: DEFAULT_GROUP # 默认分组就是DEFAULT_GROUP,如果使用默认分组可以不配置
|
||||||
file-extension: yml #默认properties
|
file-extension: yml #默认properties
|
||||||
# 共享配置
|
# 共享配置
|
||||||
shared-configs:
|
shared-configs:
|
||||||
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
|
- application-${spring.profiles.active}.${spring.cloud.nacos.config.file-extension}
|
||||||
|
|
||||||
|
# SSO单点登录配置
|
||||||
|
sso:
|
||||||
|
# RSA公钥(由中台openssl私钥导出)
|
||||||
|
public-key: |
|
||||||
|
-----BEGIN PUBLIC KEY-----
|
||||||
|
MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA62dYkl2Nvy2wW9028dQ7
|
||||||
|
HdxFNhwEriFNzFMFq+m1jTvZWdU6e9a1iCGWTVV2fTo4PWSyhjWyzv2ZBEuanWBq
|
||||||
|
y/bfh/jOTjT/tlWvMeJZ1TV4suCbigHq5TGxDsY6ZC6if9ULhU3NWkgnPNn6HfO9
|
||||||
|
NVvBTfx9MgWtCtT33kq30KgxC6LqVdCe08+gD0KB3df0DK8OJorVFfxYVc7TjGEL
|
||||||
|
xqUuE7PcgZgDb8KvdgO66OxBqFIB0qfc73oALKGoq/8kvjrqE/amaIZPv3jE2Rc7
|
||||||
|
0rIhGHrFcoA3W01nNRGQKY/E/VKOGBn/uDNdi5iMXsFjKxiBbXB07bBxdhUH7698
|
||||||
|
AwIDAQAB
|
||||||
|
-----END PUBLIC KEY-----
|
||||||
|
# SSO登录成功后跳转的前端页面地址
|
||||||
|
redirect-url: "https://diglog.namkwong.com.mo/main_app/sso"
|
||||||
@@ -0,0 +1,17 @@
|
|||||||
|
# 基础镜像
|
||||||
|
FROM arm64v8/openjdk:8
|
||||||
|
# author
|
||||||
|
MAINTAINER manhuoda
|
||||||
|
#指定东八区时区
|
||||||
|
ENV TZ Asia/Shanghai
|
||||||
|
#指定utf-8编码格
|
||||||
|
ENV JAVA_TOOL_OPTIONS="-Dfile.encoding=UTF-8"
|
||||||
|
# VOLUME 指定了临时文件目录为/tmp。
|
||||||
|
# 其效果是在主机 /var/lib/docker 目录下创建了一个临时文件,并链接到容器的/tmp
|
||||||
|
VOLUME /tmp
|
||||||
|
#将当前jar 复制到容器根目录下
|
||||||
|
ADD target/mhd-bi.jar mhd-bi.jar
|
||||||
|
#暴露容器端口 Docker镜像告知Docker宿主机应用监听了端口
|
||||||
|
EXPOSE 9200
|
||||||
|
# 运行jar包
|
||||||
|
ENTRYPOINT ["java","-Djava.security.egd=file:/dev/./urandom","-Xms1000m", "-Xmx1500m","-jar","/mhd-bi.jar"]
|
||||||
+180
@@ -0,0 +1,180 @@
|
|||||||
|
<?xml version="1.0" encoding="UTF-8"?>
|
||||||
|
<project xmlns="http://maven.apache.org/POM/4.0.0"
|
||||||
|
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||||
|
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||||
|
<parent>
|
||||||
|
<artifactId>mhd</artifactId>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<version>3.6.0</version>
|
||||||
|
</parent>
|
||||||
|
<modelVersion>4.0.0</modelVersion>
|
||||||
|
|
||||||
|
<artifactId>mhd-bi</artifactId>
|
||||||
|
|
||||||
|
<properties>
|
||||||
|
<maven.compiler.source>8</maven.compiler.source>
|
||||||
|
<maven.compiler.target>8</maven.compiler.target>
|
||||||
|
</properties>
|
||||||
|
|
||||||
|
<dependencies>
|
||||||
|
<!--添加web依赖 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
<artifactId>spring-boot-starter-web</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!--添加feign依赖 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-openfeign</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>io.github.openfeign</groupId>
|
||||||
|
<artifactId>feign-httpclient</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-loadbalancer</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!--nacos 服务注册客户端依赖-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-alibaba-nacos-discovery</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!-- SpringCloud Alibaba Nacos Config -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-alibaba-nacos-config</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!-- Sentinel⽀持采⽤ Nacos 作为规则配置数据源,引⼊该适配依赖 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba.csp</groupId>
|
||||||
|
<artifactId>sentinel-datasource-nacos</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!--sentinel 核⼼环境 依赖-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-alibaba-sentinel</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!--链路追踪-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-sleuth</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!-- Jackson -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.fasterxml.jackson.core</groupId>
|
||||||
|
<artifactId>jackson-databind</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Alibaba Fastjson -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba.fastjson2</groupId>
|
||||||
|
<artifactId>fastjson2</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!--spring cloud stream 依赖(rabbit)-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-stream-rabbit</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!-- Mhd Common Core-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<artifactId>mhd-common-core</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<!-- Mhd Common Redis-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<artifactId>mhd-common-redis</artifactId>
|
||||||
|
</dependency>
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.dameng</groupId>
|
||||||
|
<artifactId>DmJdbcDriver18</artifactId>
|
||||||
|
<version>8.1.1.193</version>
|
||||||
|
</dependency>
|
||||||
|
<!--import mybatis plus 它会自动引入mybatis及mybatis spring切勿重复引用以免冲突-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.baomidou</groupId>
|
||||||
|
<artifactId>mybatis-plus-boot-starter</artifactId>
|
||||||
|
<version>3.3.2</version>
|
||||||
|
</dependency>
|
||||||
|
<!--添加druid连接池 依赖 -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.alibaba</groupId>
|
||||||
|
<artifactId>druid-spring-boot-starter</artifactId>
|
||||||
|
<version>1.2.11</version>
|
||||||
|
</dependency>
|
||||||
|
<!--链路追踪-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-sleuth</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>org.springframework.cloud</groupId>
|
||||||
|
<artifactId>spring-cloud-starter-zipkin</artifactId>
|
||||||
|
<version>2.2.8.RELEASE</version>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- Mhd Common Security-->
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<artifactId>mhd-common-security</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<artifactId>mhd-api-system</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<artifactId>mhd-common-log</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<!-- net.sf.json -->
|
||||||
|
<dependency>
|
||||||
|
<groupId>net.sf.json-lib</groupId>
|
||||||
|
<artifactId>json-lib</artifactId>
|
||||||
|
<version>2.4</version>
|
||||||
|
<classifier>jdk15</classifier>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
<dependency>
|
||||||
|
<groupId>com.mhd</groupId>
|
||||||
|
<artifactId>mhd-common-datasource</artifactId>
|
||||||
|
</dependency>
|
||||||
|
|
||||||
|
</dependencies>
|
||||||
|
|
||||||
|
<build>
|
||||||
|
<finalName>${project.artifactId}</finalName>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>org.springframework.boot</groupId>
|
||||||
|
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||||
|
<version>2.1.1.RELEASE</version>
|
||||||
|
<executions>
|
||||||
|
<execution>
|
||||||
|
<goals>
|
||||||
|
<goal>repackage</goal>
|
||||||
|
</goals>
|
||||||
|
</execution>
|
||||||
|
</executions>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
|
||||||
|
<profiles>
|
||||||
|
<profile>
|
||||||
|
<id>mhd-bi</id>
|
||||||
|
<build>
|
||||||
|
<plugins>
|
||||||
|
<plugin>
|
||||||
|
<groupId>com.spotify</groupId>
|
||||||
|
<artifactId>dockerfile-maven-plugin</artifactId>
|
||||||
|
</plugin>
|
||||||
|
</plugins>
|
||||||
|
</build>
|
||||||
|
</profile>
|
||||||
|
</profiles>
|
||||||
|
</project>
|
||||||
@@ -0,0 +1,44 @@
|
|||||||
|
-- =============================================================================
|
||||||
|
-- 达梦 DM8:综合态势(单表,可重复执行)
|
||||||
|
-- 接口:GET /biReport/comprehensive
|
||||||
|
-- 执行顺序:删除历史多表/旧快照 → 建 BI_COMPREHENSIVE_SNAPSHOT → 示例 INSERT
|
||||||
|
-- PAYLOAD_JSON 与 ComprehensiveSituationVO 字段名一致;接口取 DEL_FLAG=1 且 CREATE_TIME 最新一条。
|
||||||
|
-- =============================================================================
|
||||||
|
|
||||||
|
-- 子表优先
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_COMPREHENSIVE_INCOME_TREND;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_COMPREHENSIVE_METRIC;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT;
|
||||||
|
|
||||||
|
CREATE TABLE
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT (
|
||||||
|
ID BIGINT IDENTITY(1,1) NOT NULL,
|
||||||
|
PAYLOAD_JSON CLOB NOT NULL,
|
||||||
|
CREATE_TIME DATETIME DEFAULT NULL,
|
||||||
|
UPDATE_TIME DATETIME DEFAULT NULL,
|
||||||
|
REMARK VARCHAR(500) DEFAULT NULL,
|
||||||
|
DEL_FLAG NUMBER(1) DEFAULT 1 NOT NULL,
|
||||||
|
PRIMARY KEY (ID)
|
||||||
|
);
|
||||||
|
CREATE INDEX IDX_BI_COMP_SNAP_DEL_CR ON
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT(DEL_FLAG, CREATE_TIME);
|
||||||
|
CREATE INDEX IDX_BI_COMP_SNAP_UPD ON
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT(UPDATE_TIME);
|
||||||
|
COMMENT ON TABLE
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT IS '综合态势-整包 JSON 快照';
|
||||||
|
COMMENT ON COLUMN
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT.DEL_FLAG IS '0无状态 1正常 2已删除';
|
||||||
|
|
||||||
|
INSERT INTO
|
||||||
|
BI_COMPREHENSIVE_SNAPSHOT (PAYLOAD_JSON, CREATE_TIME, UPDATE_TIME, DEL_FLAG)
|
||||||
|
VALUES (
|
||||||
|
'{"valueAddedServiceIncome":5330000,"inventoryTurnover":25,"orderCount":42300,"vehicleUtilizationRate":97.4,"fuelConsumptionPerHundredKm":15,"incomeTrend":[280,210,260,310,470,390]}',
|
||||||
|
SYSDATE,
|
||||||
|
SYSDATE,
|
||||||
|
1
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
@@ -0,0 +1,53 @@
|
|||||||
|
-- =============================================================================
|
||||||
|
-- 达梦 DM8:月台监测(单表,可重复执行)
|
||||||
|
-- 接口:GET /biReport/platformSurveillance
|
||||||
|
-- 执行顺序:删除历史多表/旧快照 → 建 BI_PLATFORM_SURVEILLANCE_SNAPSHOT → 示例 INSERT
|
||||||
|
-- PAYLOAD_JSON 与 PlatformSurveillanceVO 一致;接口取 DEL_FLAG=1 且 CREATE_TIME 最新一条。
|
||||||
|
-- =============================================================================
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PS_ALARM_DIST;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PS_TASK_TYPE;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PS_ALARM_TREND;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PS_TASK_LOAD;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PS_AVG_DURATION_TREND;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PS_VEHICLE;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PLATFORM_SURVEILLANCE_METRIC;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT;
|
||||||
|
|
||||||
|
CREATE TABLE
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT (
|
||||||
|
ID BIGINT IDENTITY(1,1) NOT NULL,
|
||||||
|
PAYLOAD_JSON CLOB NOT NULL,
|
||||||
|
CREATE_TIME DATETIME DEFAULT NULL,
|
||||||
|
UPDATE_TIME DATETIME DEFAULT NULL,
|
||||||
|
REMARK VARCHAR(500) DEFAULT NULL,
|
||||||
|
DEL_FLAG NUMBER(1) DEFAULT 1 NOT NULL,
|
||||||
|
PRIMARY KEY (ID)
|
||||||
|
);
|
||||||
|
CREATE INDEX IDX_BI_PS_SNAP_DEL_CR ON
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT(DEL_FLAG, CREATE_TIME);
|
||||||
|
CREATE INDEX IDX_BI_PS_SNAP_UPD ON
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT(UPDATE_TIME);
|
||||||
|
COMMENT ON TABLE
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT IS '月台监测-整包 JSON 快照';
|
||||||
|
COMMENT ON COLUMN
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT.DEL_FLAG IS '0无状态 1正常 2已删除';
|
||||||
|
|
||||||
|
INSERT INTO
|
||||||
|
BI_PLATFORM_SURVEILLANCE_SNAPSHOT (PAYLOAD_JSON, CREATE_TIME, UPDATE_TIME, DEL_FLAG)
|
||||||
|
VALUES (
|
||||||
|
'{"vehicles":[{"plateNumber":"粤CFR1958","status":"作业中","platformId":"#48","platformDuration":265},{"plateNumber":"粤CFR1958","status":"已离园","platformId":"#48","platformDuration":265},{"plateNumber":"粤CFR1958","status":"作业中","platformId":"#48","platformDuration":265},{"plateNumber":"粤CFR1958","status":"作业中","platformId":"#48","platformDuration":265},{"plateNumber":"粤CFR1958","status":"作业中","platformId":"#48","platformDuration":265},{"plateNumber":"粤CFR1958","status":"作业中","platformId":"#48","platformDuration":265}],"efficiencyStatistics":{"entryOvertimeRate":60,"overtimeCount":45,"platformOnTimeRate":92,"avgPlatformDuration":4.5,"yardOnTimeRate":88,"avgYardDuration":4.5},"platformOverview":{"totalPlatforms":43,"currentOccupancyRate":50,"operatingPlatforms":23,"todayTasks":324},"vehicleStatus":{"todayReservedVehicles":3000,"notCheckedIn":1500,"operatingVehicles":1000,"completedVehicles":1000},"avgOperationDurationTrend":[{"month":"11月","yardDuration":10,"platformDuration":23},{"month":"12月","yardDuration":14,"platformDuration":15},{"month":"1月","yardDuration":23.5,"platformDuration":20},{"month":"2月","yardDuration":22,"platformDuration":17},{"month":"3月","yardDuration":13,"platformDuration":14},{"month":"4月","yardDuration":17,"platformDuration":10}],"monthlyTaskStatistics":{"taskTotal":1455,"taskTotalYoY":5,"avgTaskDuration":4.5,"avgDurationYoY":-5,"taskCompletionRate":95,"completionRateYoY":5},"taskLoadStatistics":[{"time":"15时","taskCount":100},{"time":"16时","taskCount":110},{"time":"17时","taskCount":115},{"time":"18时","taskCount":80},{"time":"19时","taskCount":60},{"time":"20时","taskCount":40},{"time":"21时","taskCount":40},{"time":"22时","taskCount":40},{"time":"23时","taskCount":30},{"time":"0时","taskCount":10},{"time":"1时","taskCount":10},{"time":"2时","taskCount":10},{"time":"3时","taskCount":10},{"time":"4时","taskCount":10},{"time":"5时","taskCount":10},{"time":"6时","taskCount":20},{"time":"7时","taskCount":30},{"time":"8时","taskCount":70},{"time":"9时","taskCount":95},{"time":"10时","taskCount":110},{"time":"11时","taskCount":120},{"time":"12时","taskCount":130},{"time":"13时","taskCount":130}],"platformAlarmTrend":[{"date":"11日","alarmCount":10},{"date":"12日","alarmCount":14},{"date":"13日","alarmCount":23},{"date":"14日","alarmCount":22},{"date":"15日","alarmCount":13},{"date":"16日","alarmCount":17},{"date":"17日","alarmCount":8}],"taskTypeStatistics":{"totalTasks":4325,"taskTypes":[{"type":"类型1","count":2400},{"type":"类型2","count":2300},{"type":"类型3","count":2300},{"type":"类型4","count":2300}]},"platformAlarmStatistics":{"todayAlarmTotal":13,"handled":12,"unhandled":1},"platformAlarmDistribution":[{"type":"类型1","count":300},{"type":"类型2","count":245},{"type":"类型3","count":280},{"type":"类型4","count":340},{"type":"类型5","count":455},{"type":"类型6","count":400},{"type":"类型7","count":300}]}',
|
||||||
|
SYSDATE,
|
||||||
|
SYSDATE,
|
||||||
|
1
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
@@ -0,0 +1,45 @@
|
|||||||
|
-- =============================================================================
|
||||||
|
-- 达梦 DM8:仓储运输(单表,可重复执行)
|
||||||
|
-- 接口:GET /biReport/warehouseTransport
|
||||||
|
-- 执行顺序:删除历史多表/旧快照 → 建 BI_WAREHOUSE_TRANSPORT_SNAPSHOT → 示例 INSERT
|
||||||
|
-- PAYLOAD_JSON 与 WarehouseTransportSituationVO 字段名一致;接口取 DEL_FLAG=1 且 CREATE_TIME 最新一条。
|
||||||
|
-- =============================================================================
|
||||||
|
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_WTS_CUSTOMER_RANK;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_WTS_TIME_SERIES;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_WAREHOUSE_TRANSPORT_METRIC;
|
||||||
|
DROP TABLE IF EXISTS
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT;
|
||||||
|
|
||||||
|
CREATE TABLE
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT (
|
||||||
|
ID BIGINT IDENTITY(1,1) NOT NULL,
|
||||||
|
PAYLOAD_JSON CLOB NOT NULL,
|
||||||
|
CREATE_TIME DATETIME DEFAULT NULL,
|
||||||
|
UPDATE_TIME DATETIME DEFAULT NULL,
|
||||||
|
REMARK VARCHAR(500) DEFAULT NULL,
|
||||||
|
DEL_FLAG NUMBER(1) DEFAULT 1 NOT NULL,
|
||||||
|
PRIMARY KEY (ID)
|
||||||
|
);
|
||||||
|
CREATE INDEX IDX_BI_WTS_SNAP_DEL_CR ON
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT(DEL_FLAG, CREATE_TIME);
|
||||||
|
CREATE INDEX IDX_BI_WTS_SNAP_UPD ON
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT(UPDATE_TIME);
|
||||||
|
COMMENT ON TABLE
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT IS '仓储运输-整包 JSON 快照';
|
||||||
|
COMMENT ON COLUMN
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT.DEL_FLAG IS '0无状态 1正常 2已删除';
|
||||||
|
|
||||||
|
INSERT INTO
|
||||||
|
BI_WAREHOUSE_TRANSPORT_SNAPSHOT (PAYLOAD_JSON, CREATE_TIME, UPDATE_TIME, DEL_FLAG)
|
||||||
|
VALUES (
|
||||||
|
'{"warehouseDistributionOnTimeRate":99.2,"currentYearOrders":525440,"currentQuarterOrders":225120,"currentMonthOrders":23560,"warehouseOrderTrend":[100,93,85,70,98,88],"throughput":[10,14,23,10,13,19],"currentMonthTurnoverRate":3,"currentYearTurnoverRate":4,"inventoryTurnoverTrend":[10,14,23,22,13,17],"totalTransportIncome":5850,"orderCount":856,"transportTrips":533,"annualTransportVolume":15,"transportOrderTotal":4325,"crossBorderTransportOrder":2400,"domesticTransportOrder":2300,"transportTripsTrend":[100,140,230,100,130,192],"vehicleUtilizationRate":[600,460,350,470,450,620],"warehouseDockSyncRate":[100,98,87,78,97,86],"customerContributionRank":{"customerName":["客户A","客户B","客户C","客户D","客户E"],"customerAmount":[147,150,170,160,180]}}',
|
||||||
|
SYSDATE,
|
||||||
|
SYSDATE,
|
||||||
|
1
|
||||||
|
);
|
||||||
|
|
||||||
|
COMMIT;
|
||||||
@@ -0,0 +1,15 @@
|
|||||||
|
ALTER TABLE BI_COMPREHENSIVE_SNAPSHOT
|
||||||
|
ADD (DEL_FLAG TINYINT DEFAULT 1);
|
||||||
|
|
||||||
|
COMMENT ON COLUMN BI_COMPREHENSIVE_SNAPSHOT.DEL_FLAG IS '删除标志:0-无状态, 1-正常, 2-已删除';
|
||||||
|
|
||||||
|
ALTER TABLE BI_PLATFORM_SURVEILLANCE_SNAPSHOT
|
||||||
|
ADD (DEL_FLAG TINYINT DEFAULT 1);
|
||||||
|
|
||||||
|
COMMENT ON COLUMN BI_PLATFORM_SURVEILLANCE_SNAPSHOT.DEL_FLAG IS '删除标志:0-无状态, 1-正常, 2-已删除';
|
||||||
|
|
||||||
|
|
||||||
|
ALTER TABLE BI_WAREHOUSE_TRANSPORT_SNAPSHOT
|
||||||
|
ADD (DEL_FLAG TINYINT DEFAULT 1);
|
||||||
|
|
||||||
|
COMMENT ON COLUMN BI_WAREHOUSE_TRANSPORT_SNAPSHOT.DEL_FLAG IS '删除标志:0-无状态, 1-正常, 2-已删除';
|
||||||
@@ -0,0 +1,236 @@
|
|||||||
|
package com.mhd.bi;
|
||||||
|
|
||||||
|
import com.mhd.common.core.annotation.fieldsetvalue.CommonService;
|
||||||
|
import com.mhd.common.core.annotation.fieldsetvalue.SetFeildValueAspect;
|
||||||
|
import org.mybatis.spring.annotation.MapperScan;
|
||||||
|
import org.springframework.boot.SpringApplication;
|
||||||
|
import org.springframework.boot.autoconfigure.SpringBootApplication;
|
||||||
|
import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
|
||||||
|
import org.springframework.cloud.openfeign.EnableFeignClients;
|
||||||
|
import org.springframework.context.annotation.Import;
|
||||||
|
import org.springframework.scheduling.annotation.EnableAsync;
|
||||||
|
import org.springframework.scheduling.annotation.EnableScheduling;
|
||||||
|
|
||||||
|
@SpringBootApplication(scanBasePackages = {"com.mhd", "com.mhd.bi"})
|
||||||
|
@EnableDiscoveryClient
|
||||||
|
@EnableFeignClients(basePackages = {"com.mhd","com.mhd.bi.infrastructure.feign"})
|
||||||
|
@MapperScan("com.mhd.bi.domain.**.mapper")
|
||||||
|
@Import({SetFeildValueAspect.class, CommonService.class})
|
||||||
|
@EnableAsync
|
||||||
|
@EnableScheduling
|
||||||
|
public class BiApplication {
|
||||||
|
|
||||||
|
public static void main(String[] args) {
|
||||||
|
SpringApplication.run(BiApplication.class, args);
|
||||||
|
System.out.println("(♥◠‿◠)ノ゙ 可视化页面模块启动成功 ლ(´ڡ`ლ)゙ " +
|
||||||
|
"# _oo0oo_\n" +
|
||||||
|
"# o8888888o\n" +
|
||||||
|
"# 88\" . \"88\n" +
|
||||||
|
"# (| -_- |)\n" +
|
||||||
|
"# 0\\ = /0\n" +
|
||||||
|
"# ___/`---'\\___\n" +
|
||||||
|
"# .' \\\\| |// '.\n" +
|
||||||
|
"# / \\\\||| : |||// \\\n" +
|
||||||
|
"# / _||||| -:- |||||- \\\n" +
|
||||||
|
"# | | \\\\\\ - /// | |\n" +
|
||||||
|
"# | \\_| ''\\---/'' |_/ |\n" +
|
||||||
|
"# \\ .-\\__ '-' ___/-. /\n" +
|
||||||
|
"# ___'. .' /--.--\\ `. .'___\n" +
|
||||||
|
"# .\"\" '< `.___\\_<|>_/___.' >' \"\".\n" +
|
||||||
|
"# | | : `- \\`.;`\\ _ /`;.`/ - ` : | |\n" +
|
||||||
|
"# \\ \\ `_. \\_ __\\ /__ _/ .-` / /\n" +
|
||||||
|
"# =====`-.____`.___ \\_____/___.-`___.-'=====\n" +
|
||||||
|
"# `=---='\n" +
|
||||||
|
"#\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# 佛祖保佑 永无BUG\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# ┏┓ ┏┓\n" +
|
||||||
|
"# ┏┛┻━━━┛┻┓\n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┃ ━ ┃\n" +
|
||||||
|
"# ┃ ┳┛ ┗┳ ┃\n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┃ ┻ ┃\n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┗━┓ ┏━┛Codes are far away from bugs with the animal protecting\n" +
|
||||||
|
"# ┃ ┃ 神兽保佑,代码无bug\n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┃ ┗━━━┓\n" +
|
||||||
|
"# ┃ ┣┓\n" +
|
||||||
|
"# ┃ ┏┛\n" +
|
||||||
|
"# ┗┓┓┏━┳┓┏┛\n" +
|
||||||
|
"# ┃┫┫ ┃┫┫\n" +
|
||||||
|
"# ┗┻┛ ┗┻┛\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# ┏┓ ┏┓\n" +
|
||||||
|
"# ┏┛┻━━━┛┻┓\n" +
|
||||||
|
"# ┃ ┃ \n" +
|
||||||
|
"# ┃ ━ ┃\n" +
|
||||||
|
"# ┃ > <┃\n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┃ . ⌒ ..┃\n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┗━┓ ┏━┛\n" +
|
||||||
|
"# ┃ ┃ Codes are far away from bugs with the animal protecting \n" +
|
||||||
|
"# ┃ ┃ 神兽保佑,代码无bug\n" +
|
||||||
|
"# ┃ ┃ \n" +
|
||||||
|
"# ┃ ┃ \n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┃ ┃ \n" +
|
||||||
|
"# ┃ ┗━━━┓\n" +
|
||||||
|
"# ┃ ┣┓\n" +
|
||||||
|
"# ┃ ┏┛\n" +
|
||||||
|
"# ┗┓┓┏━┳┓┏┛\n" +
|
||||||
|
"# ┃┫┫ ┃┫┫\n" +
|
||||||
|
"# ┗┻┛ ┗┻┛\n" +
|
||||||
|
"# ┏┓ ┏┓+ +\n" +
|
||||||
|
"# ┏┛┻━━━┛┻┓ + +\n" +
|
||||||
|
"# ┃ ┃ \n" +
|
||||||
|
"# ┃ ━ ┃ ++ + + +\n" +
|
||||||
|
"# ████━████ ┃+\n" +
|
||||||
|
"# ┃ ┃ +\n" +
|
||||||
|
"# ┃ ┻ ┃\n" +
|
||||||
|
"# ┃ ┃ + +\n" +
|
||||||
|
"# ┗━┓ ┏━┛\n" +
|
||||||
|
"# ┃ ┃ \n" +
|
||||||
|
"# ┃ ┃ + + + +\n" +
|
||||||
|
"# ┃ ┃ Codes are far away from bugs with the animal protecting \n" +
|
||||||
|
"# ┃ ┃ + 神兽保佑,代码无bug \n" +
|
||||||
|
"# ┃ ┃\n" +
|
||||||
|
"# ┃ ┃ + \n" +
|
||||||
|
"# ┃ ┗━━━┓ + +\n" +
|
||||||
|
"# ┃ ┣┓\n" +
|
||||||
|
"# ┃ ┏┛\n" +
|
||||||
|
"# ┗┓┓┏━┳┓┏┛ + + + +\n" +
|
||||||
|
"# ┃┫┫ ┃┫┫\n" +
|
||||||
|
"# ┗┻┛ ┗┻┛+ + + +\n" +
|
||||||
|
"# d*##$.\n" +
|
||||||
|
"# zP\"\"\"\"\"$e. $\" $o\n" +
|
||||||
|
"#4$ '$ $\" $\n" +
|
||||||
|
"#'$ '$ J$ $F\n" +
|
||||||
|
"# 'b $k $> $\n" +
|
||||||
|
"# $k $r J$ d$\n" +
|
||||||
|
"# '$ $ $\" $~\n" +
|
||||||
|
"# '$ \"$ '$E $\n" +
|
||||||
|
"# $ $L $\" $F ...\n" +
|
||||||
|
"# $. 4B $ $$$*\"\"\"*b\n" +
|
||||||
|
"# '$ $. $$ $$ $F\n" +
|
||||||
|
"# \"$ R$ $F $\" $\n" +
|
||||||
|
"# $k ?$ u* dF .$\n" +
|
||||||
|
"# ^$. $$\" z$ u$$$$e\n" +
|
||||||
|
"# #$b $E.dW@e$\" ?$\n" +
|
||||||
|
"# #$ .o$$# d$$$$c ?F\n" +
|
||||||
|
"# $ .d$$#\" . zo$> #$r .uF\n" +
|
||||||
|
"# $L .u$*\" $&$$$k .$$d$$F\n" +
|
||||||
|
"# $$\" \"\"^\"$$$P\"$P9$\n" +
|
||||||
|
"# JP .o$$$$u:$P $$\n" +
|
||||||
|
"# $ ..ue$\" \"\" $\"\n" +
|
||||||
|
"# d$ $F $\n" +
|
||||||
|
"# $$ ....udE 4B\n" +
|
||||||
|
"# #$ \"\"\"\"` $r @$\n" +
|
||||||
|
"# ^$L '$ $F\n" +
|
||||||
|
"# RN 4N $\n" +
|
||||||
|
"# *$b d$\n" +
|
||||||
|
"# $$k $F\n" +
|
||||||
|
"# $$b $F\n" +
|
||||||
|
"# $\"\" $F\n" +
|
||||||
|
"# '$ $\n" +
|
||||||
|
"# $L $\n" +
|
||||||
|
"# '$ $\n" +
|
||||||
|
"# $ $\n" +
|
||||||
|
"#\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# ┌─┐ ┌─┐\n" +
|
||||||
|
"# ┌──┘ ┴───────┘ ┴──┐\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# │ ─── │\n" +
|
||||||
|
"# │ ─┬┘ └┬─ │\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# │ ─┴─ │\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# └───┐ ┌───┘\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# │ └──────────────┐\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# │ ├─┐\n" +
|
||||||
|
"# │ ┌─┘\n" +
|
||||||
|
"# │ │\n" +
|
||||||
|
"# └─┐ ┐ ┌───────┬──┐ ┌──┘\n" +
|
||||||
|
"# │ ─┤ ─┤ │ ─┤ ─┤\n" +
|
||||||
|
"# └──┴──┘ └──┴──┘\n" +
|
||||||
|
"# 神兽保佑\n" +
|
||||||
|
"# 代码无BUG!\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# ___====-_ _-====___\n" +
|
||||||
|
"# _--^^^#####// \\\\#####^^^--_\n" +
|
||||||
|
"# _-^##########// ( ) \\\\##########^-_\n" +
|
||||||
|
"# -############// |\\^^/| \\\\############-\n" +
|
||||||
|
"# _/############// (@::@) \\\\############\\_\n" +
|
||||||
|
"# /#############(( \\\\// ))#############\\\n" +
|
||||||
|
"# -###############\\\\ (oo) //###############-\n" +
|
||||||
|
"# -#################\\\\ / VV \\ //#################-\n" +
|
||||||
|
"# -###################\\\\/ \\//###################-\n" +
|
||||||
|
"# _#/|##########/\\######( /\\ )######/\\##########|\\#_\n" +
|
||||||
|
"# |/ |#/\\#/\\#/\\/ \\#/\\##\\ | | /##/\\#/ \\/\\#/\\#/\\#| \\|\n" +
|
||||||
|
"# ` |/ V V ` V \\#\\| | | |/#/ V ' V V \\| '\n" +
|
||||||
|
"# ` ` ` ` / | | | | \\ ' ' ' '\n" +
|
||||||
|
"# ( | | | | )\n" +
|
||||||
|
"# __\\ | | | | /__\n" +
|
||||||
|
"# (vvv(VVV)(VVV)vvv)\n" +
|
||||||
|
"# 神兽保佑\n" +
|
||||||
|
"# 代码无BUG!\n" +
|
||||||
|
"# __----~~~~~~~~~~~------___\n" +
|
||||||
|
"# . . ~~//====...... __--~ ~~\n" +
|
||||||
|
"# -. \\_|// |||\\\\ ~~~~~~::::... /~\n" +
|
||||||
|
"# ___-==_ _-~o~ \\/ ||| \\\\ _/~~-\n" +
|
||||||
|
"# __---~~~.==~||\\=_ -_--~/_-~|- |\\\\ \\\\ _/~\n" +
|
||||||
|
"# _-~~ .=~ | \\\\-_ '-~7 /- / || \\ /\n" +
|
||||||
|
"# .~ .~ | \\\\ -_ / /- / || \\ /\n" +
|
||||||
|
"# / ____ / | \\\\ ~-_/ /|- _/ .|| \\ /\n" +
|
||||||
|
"# |~~ ~~|--~~~~--_ \\ ~==-/ | \\~--===~~ .\\\n" +
|
||||||
|
"# ' ~-| /| |-~\\~~ __--~~\n" +
|
||||||
|
"# |-~~-_/ | | ~\\_ _-~ /\\\n" +
|
||||||
|
"# / \\ \\__ \\/~ \\__\n" +
|
||||||
|
"# _--~ _/ | .-~~____--~-/ ~~==.\n" +
|
||||||
|
"# ((->/~ '.|||' -_| ~~-/ , . _||\n" +
|
||||||
|
"# -_ ~\\ ~~---l__i__i__i--~~_/\n" +
|
||||||
|
"# _-~-__ ~) \\--______________--~~\n" +
|
||||||
|
"# //.-~~~-~_--~- |-------~~~~~~~~\n" +
|
||||||
|
"# //.-~~~--\\\n" +
|
||||||
|
"# 神兽保佑\n" +
|
||||||
|
"# 代码无BUG!\n" +
|
||||||
|
"# ,----------------, ,---------,\n" +
|
||||||
|
"# ,-----------------------, ,\" ,\"|\n" +
|
||||||
|
"# ,\" ,\"| ,\" ,\" |\n" +
|
||||||
|
"# +-----------------------+ | ,\" ,\" |\n" +
|
||||||
|
"# | .-----------------. | | +---------+ |\n" +
|
||||||
|
"# | | | | | | -==----'| |\n" +
|
||||||
|
"# | | I LOVE DOS! | | | | | |\n" +
|
||||||
|
"# | | Bad command or | | |/----|`---= | |\n" +
|
||||||
|
"# | | C:\\>_ | | | ,/|==== ooo | ;\n" +
|
||||||
|
"# | | | | | // |(((( [33]| ,\"\n" +
|
||||||
|
"# | `-----------------' |,\" .;'| |(((( | ,\"\n" +
|
||||||
|
"# +-----------------------+ ;; | | |,\"\n" +
|
||||||
|
"# /_)______________(_/ //' | +---------+\n" +
|
||||||
|
"# ___________________________/___ `,\n" +
|
||||||
|
"# / oooooooooooooooo .o. oooo /, \\,\"-----------\n" +
|
||||||
|
"# / ==ooooooooooooooo==.o. ooo= // ,`\\--{)B ,\"\n" +
|
||||||
|
"# /_==__==========__==_ooo__ooo=_/' /___________,\"\n" +
|
||||||
|
"#\n" +
|
||||||
|
"# .-~~~~~~~~~-._ _.-~~~~~~~~~-.\n" +
|
||||||
|
"# __.' ~. .~ `.__\n" +
|
||||||
|
"# .'// \\./ \\\\`.\n" +
|
||||||
|
"# .'// | \\\\`.\n" +
|
||||||
|
"# .'// .-~\"\"\"\"\"\"\"~~~~-._ | _,-~~~~\"\"\"\"\"\"\"~-. \\\\`.\n" +
|
||||||
|
"# .'//.-\" `-. | .-' \"-.\\\\`.\n" +
|
||||||
|
"# .'//______.============-.. \\ | / ..-============.______\\\\`.\n" +
|
||||||
|
"# .'______________________________\\|/______________________________`.");
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
@@ -0,0 +1,18 @@
|
|||||||
|
package com.mhd.bi.config;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import org.springframework.boot.context.properties.ConfigurationProperties;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* BI 开放接口访问控制(请求头 {@code X-BI-Access-Token})。
|
||||||
|
* <p>配置了 {@code accessToken} 时必须与请求头完全一致;未配置时仅校验请求头非空。</p>
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
@ConfigurationProperties(prefix = "mhd.bi")
|
||||||
|
public class BiAccessProperties {
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 与 X-BI-Access-Token 比对的密钥;为空则只要请求头非空即可
|
||||||
|
*/
|
||||||
|
private String accessToken = "";
|
||||||
|
}
|
||||||
@@ -0,0 +1,25 @@
|
|||||||
|
package com.mhd.bi.config;
|
||||||
|
|
||||||
|
import org.springframework.boot.context.properties.EnableConfigurationProperties;
|
||||||
|
import org.springframework.boot.web.servlet.FilterRegistrationBean;
|
||||||
|
import org.springframework.context.annotation.Bean;
|
||||||
|
import org.springframework.context.annotation.Configuration;
|
||||||
|
import org.springframework.core.Ordered;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 注册 /biReport 路径的访问令牌校验
|
||||||
|
*/
|
||||||
|
@Configuration
|
||||||
|
@EnableConfigurationProperties(BiAccessProperties.class)
|
||||||
|
public class BiReportAccessConfiguration {
|
||||||
|
|
||||||
|
@Bean
|
||||||
|
public FilterRegistrationBean<BiReportAccessTokenFilter> biReportAccessTokenFilter(BiAccessProperties properties) {
|
||||||
|
FilterRegistrationBean<BiReportAccessTokenFilter> registration = new FilterRegistrationBean<>();
|
||||||
|
registration.setFilter(new BiReportAccessTokenFilter(properties));
|
||||||
|
registration.addUrlPatterns("/biReport/*");
|
||||||
|
registration.setOrder(Ordered.HIGHEST_PRECEDENCE + 100);
|
||||||
|
registration.setName("biReportAccessTokenFilter");
|
||||||
|
return registration;
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -0,0 +1,60 @@
|
|||||||
|
package com.mhd.bi.config;
|
||||||
|
|
||||||
|
import org.springframework.lang.NonNull;
|
||||||
|
import org.springframework.util.StringUtils;
|
||||||
|
import org.springframework.web.filter.OncePerRequestFilter;
|
||||||
|
|
||||||
|
import javax.servlet.FilterChain;
|
||||||
|
import javax.servlet.ServletException;
|
||||||
|
import javax.servlet.http.HttpServletRequest;
|
||||||
|
import javax.servlet.http.HttpServletResponse;
|
||||||
|
import java.io.IOException;
|
||||||
|
import java.nio.charset.StandardCharsets;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 限制 /biReport 下接口必须携带 {@code X-BI-Access-Token},否则 401。
|
||||||
|
*/
|
||||||
|
public class BiReportAccessTokenFilter extends OncePerRequestFilter {
|
||||||
|
|
||||||
|
private static final String UNAUTHORIZED_MSG = "未认证,请提供有效的访问Token";
|
||||||
|
|
||||||
|
public static final String HEADER_X_BI_ACCESS_TOKEN = "X-BI-Access-Token";
|
||||||
|
|
||||||
|
private final BiAccessProperties accessProperties;
|
||||||
|
|
||||||
|
public BiReportAccessTokenFilter(BiAccessProperties accessProperties) {
|
||||||
|
this.accessProperties = accessProperties;
|
||||||
|
}
|
||||||
|
|
||||||
|
@Override
|
||||||
|
protected void doFilterInternal(@NonNull HttpServletRequest request,
|
||||||
|
@NonNull HttpServletResponse response,
|
||||||
|
@NonNull FilterChain filterChain) throws ServletException, IOException {
|
||||||
|
if ("OPTIONS".equalsIgnoreCase(request.getMethod())) {
|
||||||
|
filterChain.doFilter(request, response);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
String presented = request.getHeader(HEADER_X_BI_ACCESS_TOKEN);
|
||||||
|
if (!StringUtils.hasText(presented)) {
|
||||||
|
writeUnauthorized(response);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
String expected = accessProperties.getAccessToken();
|
||||||
|
if (StringUtils.hasText(expected) && !expected.equals(presented)) {
|
||||||
|
writeUnauthorized(response);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
|
||||||
|
filterChain.doFilter(request, response);
|
||||||
|
}
|
||||||
|
|
||||||
|
private static void writeUnauthorized(HttpServletResponse response) throws IOException {
|
||||||
|
response.setStatus(HttpServletResponse.SC_UNAUTHORIZED);
|
||||||
|
response.setCharacterEncoding(StandardCharsets.UTF_8.name());
|
||||||
|
response.setContentType("application/json;charset=UTF-8");
|
||||||
|
String body = "{\"code\":401,\"msg\":\"" + UNAUTHORIZED_MSG.replace("\"", "\\\"") + "\"}";
|
||||||
|
response.getOutputStream().write(body.getBytes(StandardCharsets.UTF_8));
|
||||||
|
}
|
||||||
|
}
|
||||||
+23
@@ -0,0 +1,23 @@
|
|||||||
|
package com.mhd.bi.domain.biComprehensive.repository.mapper;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biReport.support.BiReportSnapshotMapperSupport;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.ComprehensiveSituationVO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 综合态势:SQL 见 BiComprehensiveReportMapper.xml;取数与组装均在 Mapper 层完成。
|
||||||
|
*/
|
||||||
|
public interface BiComprehensiveReportMapper {
|
||||||
|
|
||||||
|
String selectLatestPayloadJson();
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 最新快照 → VO(内部调用 {@link #selectLatestPayloadJson()})
|
||||||
|
*/
|
||||||
|
default ComprehensiveSituationVO loadLatestComprehensive() {
|
||||||
|
return BiReportSnapshotMapperSupport.parsePayload(
|
||||||
|
selectLatestPayloadJson(),
|
||||||
|
ComprehensiveSituationVO.class,
|
||||||
|
BiReportSnapshotMapperSupport::emptyComprehensiveSituation,
|
||||||
|
"综合态势");
|
||||||
|
}
|
||||||
|
}
|
||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
package com.mhd.bi.domain.biComprehensive.service;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biComprehensive.repository.mapper.BiComprehensiveReportMapper;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.ComprehensiveSituationVO;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 综合态势:数据访问仅经 Mapper(含 XML 内 SQL 与 Mapper 默认方法组装)。
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class BiComprehensiveReportService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiComprehensiveReportMapper biComprehensiveReportMapper;
|
||||||
|
|
||||||
|
public ComprehensiveSituationVO loadLatestComprehensive() {
|
||||||
|
return biComprehensiveReportMapper.loadLatestComprehensive();
|
||||||
|
}
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
package com.mhd.bi.domain.biHkMacaoServiceZone.repository.mapper;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biReport.support.BiReportSnapshotMapperSupport;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.hkMacaoZone.HkMacaoServiceZoneVO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 港澳服务专区:取 NGWL_TEST_BI.BI_HK_MACAO_SERVICE_ZONE_SNAPSHOT 最新 PAYLOAD_JSON 并解析。
|
||||||
|
*/
|
||||||
|
public interface BiHkMacaoServiceZoneReportMapper {
|
||||||
|
|
||||||
|
String selectLatestPayloadJson();
|
||||||
|
|
||||||
|
default HkMacaoServiceZoneVO loadLatestHkMacaoServiceZone() {
|
||||||
|
return BiReportSnapshotMapperSupport.parsePayload(
|
||||||
|
selectLatestPayloadJson(),
|
||||||
|
HkMacaoServiceZoneVO.class,
|
||||||
|
BiReportSnapshotMapperSupport::emptyHkMacaoServiceZone,
|
||||||
|
"港澳服务专区");
|
||||||
|
}
|
||||||
|
}
|
||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
package com.mhd.bi.domain.biHkMacaoServiceZone.service;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biHkMacaoServiceZone.repository.mapper.BiHkMacaoServiceZoneReportMapper;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.hkMacaoZone.HkMacaoServiceZoneVO;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 港澳服务专区
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class BiHkMacaoServiceZoneReportService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiHkMacaoServiceZoneReportMapper biHkMacaoServiceZoneReportMapper;
|
||||||
|
|
||||||
|
public HkMacaoServiceZoneVO loadLatestHkMacaoServiceZone() {
|
||||||
|
return biHkMacaoServiceZoneReportMapper.loadLatestHkMacaoServiceZone();
|
||||||
|
}
|
||||||
|
}
|
||||||
+150
@@ -0,0 +1,150 @@
|
|||||||
|
package com.mhd.bi.domain.biHkMacaoServiceZone.support;
|
||||||
|
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.hkMacaoZone.*;
|
||||||
|
|
||||||
|
import java.util.Arrays;
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 港澳服务专区快照演示数据(对齐大屏示例 JSON;后续可改为真实聚合)。
|
||||||
|
*/
|
||||||
|
public final class HkMacaoServiceZoneDemoData {
|
||||||
|
|
||||||
|
private HkMacaoServiceZoneDemoData() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public static HkMacaoServiceZoneVO build() {
|
||||||
|
HkOrderStatsVO orderStats = HkOrderStatsVO.builder()
|
||||||
|
.totalOrders(4361L)
|
||||||
|
.unit("单")
|
||||||
|
.momGrowth("+12.5%")
|
||||||
|
.trend("up")
|
||||||
|
.build();
|
||||||
|
|
||||||
|
List<HkPercentageDetailVO> goodsDetails = Arrays.asList(
|
||||||
|
HkPercentageDetailVO.builder().name("广东").percentage("25%").build(),
|
||||||
|
HkPercentageDetailVO.builder().name("澳门").percentage("25%").build(),
|
||||||
|
HkPercentageDetailVO.builder().name("广西").percentage("50%").build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkPercentageDetailVO> crossBorderDetails = Arrays.asList(
|
||||||
|
HkPercentageDetailVO.builder().name("出口订单").percentage("25.8%").build(),
|
||||||
|
HkPercentageDetailVO.builder().name("进口订单").percentage("16.8%").build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkOrderTrendMonthVO> warehouseOrderTrend = Arrays.asList(
|
||||||
|
HkOrderTrendMonthVO.builder().month("1月").orderRatio(150).orderCount(400).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("2月").orderRatio(200).orderCount(250).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("3月").orderRatio(250).orderCount(300).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("4月").orderRatio(200).orderCount(280).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("5月").orderRatio(280).orderCount(320).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("6月").orderRatio(220).orderCount(310).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("7月").orderRatio(260).orderCount(330).build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkMonthRatePointVO> turnoverData = Arrays.asList(
|
||||||
|
HkMonthRatePointVO.builder().month("11月").rate(10).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("12月").rate(15).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("1月").rate(22).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("2月").rate(20).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("3月").rate(12).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("4月").rate(16).build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkMonthValuePointVO> cargoVolumeTrend = Arrays.asList(
|
||||||
|
HkMonthValuePointVO.builder().month("1月").value(80).build(),
|
||||||
|
HkMonthValuePointVO.builder().month("2月").value(85).build(),
|
||||||
|
HkMonthValuePointVO.builder().month("3月").value(90).build(),
|
||||||
|
HkMonthValuePointVO.builder().month("4月").value(70).build(),
|
||||||
|
HkMonthValuePointVO.builder().month("5月").value(95).build(),
|
||||||
|
HkMonthValuePointVO.builder().month("6月").value(88).build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkOrderTrendMonthVO> transportOrderTrend = Arrays.asList(
|
||||||
|
HkOrderTrendMonthVO.builder().month("1月").orderRatio(150).orderCount(400).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("2月").orderRatio(200).orderCount(250).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("3月").orderRatio(250).orderCount(300).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("4月").orderRatio(200).orderCount(280).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("5月").orderRatio(280).orderCount(320).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("6月").orderRatio(220).orderCount(310).build(),
|
||||||
|
HkOrderTrendMonthVO.builder().month("7月").orderRatio(260).orderCount(330).build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkMonthRatePointVO> onTimeDeliveryRate = Arrays.asList(
|
||||||
|
HkMonthRatePointVO.builder().month("1月").rate(90).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("2月").rate(92).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("3月").rate(88).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("4月").rate(85).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("5月").rate(95).build(),
|
||||||
|
HkMonthRatePointVO.builder().month("6月").rate(93).build()
|
||||||
|
);
|
||||||
|
|
||||||
|
List<HkMapPointVO> mapPoints = Arrays.asList(
|
||||||
|
HkMapPointVO.builder()
|
||||||
|
.id("wh_001")
|
||||||
|
.type("warehouse")
|
||||||
|
.name("通宇保税仓")
|
||||||
|
.status("normal")
|
||||||
|
.location(HkMapLocationVO.builder().lat(22.2800).lng(113.5600).build())
|
||||||
|
.metrics(HkWarehouseMetricsVO.builder()
|
||||||
|
.inboundOperations(1)
|
||||||
|
.outboundOperations(1)
|
||||||
|
.build())
|
||||||
|
.build(),
|
||||||
|
HkMapPointVO.builder()
|
||||||
|
.id("vehicle_88888")
|
||||||
|
.type("vehicle")
|
||||||
|
.name("粤A88888")
|
||||||
|
.status("in_transit")
|
||||||
|
.location(HkMapLocationVO.builder().lat(22.2500).lng(113.5500).build())
|
||||||
|
.details(HkVehicleDetailsVO.builder()
|
||||||
|
.warehouseName("通宇")
|
||||||
|
.licensePlate("粤A88888")
|
||||||
|
.loadingAddress("珠海")
|
||||||
|
.destinationAddress("澳门")
|
||||||
|
.currentLocation("珠海市")
|
||||||
|
.updateTime("2026年4月15日 17:52")
|
||||||
|
.build())
|
||||||
|
.build()
|
||||||
|
);
|
||||||
|
|
||||||
|
return HkMacaoServiceZoneVO.builder()
|
||||||
|
.warehouseOrderStats(orderStats)
|
||||||
|
.clientServiceStats(HkClientServiceStatsVO.builder()
|
||||||
|
.hkMacaoClients(26)
|
||||||
|
.clientRatio("10.5%")
|
||||||
|
.warehouseUsageArea("1688m2")
|
||||||
|
.areaRatio("1.5%")
|
||||||
|
.build())
|
||||||
|
.goodsSourceStats(HkRingChartStatsVO.builder()
|
||||||
|
.totalOrders(1000)
|
||||||
|
.details(goodsDetails)
|
||||||
|
.build())
|
||||||
|
.crossBorderOrderStats(HkRingChartStatsVO.builder()
|
||||||
|
.totalOrders(400)
|
||||||
|
.details(crossBorderDetails)
|
||||||
|
.build())
|
||||||
|
.warehouseOrderTrend(warehouseOrderTrend)
|
||||||
|
.inventoryTurnoverTrend(HkInventoryTurnoverTrendVO.builder()
|
||||||
|
.currentMonthRate("3次")
|
||||||
|
.annualRate("4次")
|
||||||
|
.unit("次")
|
||||||
|
.data(turnoverData)
|
||||||
|
.build())
|
||||||
|
.transportOrderStats(orderStats)
|
||||||
|
.doorToDoorEfficiency(HkDoorToDoorEfficiencyVO.builder()
|
||||||
|
.averageTime("28.6分")
|
||||||
|
.fastestTime("13.2分")
|
||||||
|
.momGrowth("+30%")
|
||||||
|
.build())
|
||||||
|
.crossBorderTransportStats(HkRingChartStatsVO.builder()
|
||||||
|
.totalOrders(400)
|
||||||
|
.details(crossBorderDetails)
|
||||||
|
.build())
|
||||||
|
.cargoVolumeTrend(cargoVolumeTrend)
|
||||||
|
.transportOrderTrend(transportOrderTrend)
|
||||||
|
.onTimeDeliveryRate(onTimeDeliveryRate)
|
||||||
|
.mapData(HkMapDataVO.builder().points(mapPoints).build())
|
||||||
|
.build();
|
||||||
|
}
|
||||||
|
}
|
||||||
+23
@@ -0,0 +1,23 @@
|
|||||||
|
package com.mhd.bi.domain.biOverallOperation.repository.mapper;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biOverallOperation.support.OverallOperationPayloadNormalizer;
|
||||||
|
import com.mhd.bi.domain.biReport.support.BiReportSnapshotMapperSupport;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.overall.OverallOperationSituationVO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总体运营态势:SQL 见 BiOverallOperationReportMapper.xml;取数与组装均在 Mapper 层完成。
|
||||||
|
*/
|
||||||
|
public interface BiOverallOperationReportMapper {
|
||||||
|
|
||||||
|
String selectLatestPayloadJson();
|
||||||
|
|
||||||
|
default OverallOperationSituationVO loadLatestOverallOperation() {
|
||||||
|
String json = OverallOperationPayloadNormalizer.normalizeJson(selectLatestPayloadJson());
|
||||||
|
OverallOperationSituationVO vo = BiReportSnapshotMapperSupport.parsePayload(
|
||||||
|
json,
|
||||||
|
OverallOperationSituationVO.class,
|
||||||
|
BiReportSnapshotMapperSupport::emptyOverallOperationSituation,
|
||||||
|
"总体运营态势");
|
||||||
|
return OverallOperationPayloadNormalizer.ensureDefaults(vo);
|
||||||
|
}
|
||||||
|
}
|
||||||
+21
@@ -0,0 +1,21 @@
|
|||||||
|
package com.mhd.bi.domain.biOverallOperation.service;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biOverallOperation.repository.mapper.BiOverallOperationReportMapper;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.overall.OverallOperationSituationVO;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 南光物流业务经营分析 · 总体运营态势(大图1)
|
||||||
|
*/
|
||||||
|
@Service
|
||||||
|
public class BiOverallOperationReportService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiOverallOperationReportMapper biOverallOperationReportMapper;
|
||||||
|
|
||||||
|
public OverallOperationSituationVO loadLatestOverallOperation() {
|
||||||
|
return biOverallOperationReportMapper.loadLatestOverallOperation();
|
||||||
|
}
|
||||||
|
}
|
||||||
+95
@@ -0,0 +1,95 @@
|
|||||||
|
package com.mhd.bi.domain.biOverallOperation.support;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.databind.JsonNode;
|
||||||
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
import com.fasterxml.jackson.databind.node.ObjectNode;
|
||||||
|
import com.mhd.bi.domain.biReport.support.BiInventoryTurnoverTrendSupport;
|
||||||
|
import com.mhd.bi.domain.biReport.support.BiOnTimeDeliveryRateChartSupport;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.overall.OverallOperationSituationVO;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.overall.OverallTransportOperationVO;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.overall.OverallWarehouseOperationVO;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 总体运营态势:左侧 warehouse.turnover_rate_trend;右下角 transport.on_time_rate。
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
public final class OverallOperationPayloadNormalizer {
|
||||||
|
|
||||||
|
private static final ObjectMapper MAPPER = new ObjectMapper();
|
||||||
|
|
||||||
|
private OverallOperationPayloadNormalizer() {
|
||||||
|
}
|
||||||
|
|
||||||
|
public static String normalizeJson(String json) {
|
||||||
|
if (StringUtils.isBlank(json)) {
|
||||||
|
return json;
|
||||||
|
}
|
||||||
|
try {
|
||||||
|
JsonNode root = MAPPER.readTree(json.trim());
|
||||||
|
boolean changed = false;
|
||||||
|
|
||||||
|
ObjectNode rootObj = (ObjectNode) root;
|
||||||
|
JsonNode warehouse = root.path("warehouse");
|
||||||
|
if (warehouse.isObject()) {
|
||||||
|
ObjectNode warehouseObj = (ObjectNode) warehouse;
|
||||||
|
if (warehouseObj.has("map") && !rootObj.has("map")) {
|
||||||
|
rootObj.set("map", warehouseObj.remove("map"));
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
if (warehouseObj.has("transport") && !rootObj.has("transport")) {
|
||||||
|
rootObj.set("transport", warehouseObj.remove("transport"));
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
if (warehouseObj.has("capabilityRanking")) {
|
||||||
|
warehouseObj.remove("capabilityRanking");
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
if (warehouseObj.has("on_time_rate")) {
|
||||||
|
warehouseObj.remove("on_time_rate");
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
if (!warehouseObj.has("turnover_rate_trend")) {
|
||||||
|
warehouseObj.set("turnover_rate_trend",
|
||||||
|
MAPPER.valueToTree(BiInventoryTurnoverTrendSupport.defaultTrend()));
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
JsonNode transport = root.path("transport");
|
||||||
|
if (transport.isObject()) {
|
||||||
|
ObjectNode transportObj = (ObjectNode) transport;
|
||||||
|
if (transportObj.has("enterpriseRanking")) {
|
||||||
|
transportObj.remove("enterpriseRanking");
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
if (!transportObj.has("on_time_rate")) {
|
||||||
|
transportObj.set("on_time_rate",
|
||||||
|
MAPPER.valueToTree(BiOnTimeDeliveryRateChartSupport.defaultChart()));
|
||||||
|
changed = true;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
return changed ? MAPPER.writeValueAsString(root) : json;
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.warn("总体运营态势 PAYLOAD_JSON 规范化失败,按原 JSON 解析", e);
|
||||||
|
return json;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public static OverallOperationSituationVO ensureDefaults(OverallOperationSituationVO vo) {
|
||||||
|
if (vo == null) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
OverallWarehouseOperationVO warehouse = vo.getWarehouse();
|
||||||
|
if (warehouse != null && BiInventoryTurnoverTrendSupport.isEmpty(warehouse.getTurnoverRateTrend())) {
|
||||||
|
warehouse.setTurnoverRateTrend(BiInventoryTurnoverTrendSupport.defaultTrend());
|
||||||
|
}
|
||||||
|
OverallTransportOperationVO transport = vo.getTransport();
|
||||||
|
if (transport != null && BiOnTimeDeliveryRateChartSupport.isChartEmpty(transport.getOnTimeRate())) {
|
||||||
|
transport.setOnTimeRate(BiOnTimeDeliveryRateChartSupport.defaultChart());
|
||||||
|
}
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
}
|
||||||
+58
@@ -0,0 +1,58 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.mapper;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformVehiclePO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformOverviewPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealVehicleStatusPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealTaskLoadPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealBusinessTypeStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformFloorStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformInfoPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealOnTimeStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealTaskTypeStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealMonthlyTaskDurationPO;
|
||||||
|
|
||||||
|
import java.util.List;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台监测-真实数据 Mapper
|
||||||
|
* 数据来源:TEST_NGWL_YMS 库(达梦,跨库访问)
|
||||||
|
* 注:列名按达梦默认大写规则;若实际库中小写请反馈调整
|
||||||
|
*/
|
||||||
|
public interface BiPlatformRealDataMapper {
|
||||||
|
|
||||||
|
/** 作业车辆状态列表 */
|
||||||
|
List<RealPlatformVehiclePO> queryVehicles();
|
||||||
|
|
||||||
|
/** 月台实时概览(总数 / 当前作业中) */
|
||||||
|
RealPlatformOverviewPO queryPlatformOverview();
|
||||||
|
|
||||||
|
/** 今日作业任务数 */
|
||||||
|
Long countTodayTasks();
|
||||||
|
|
||||||
|
/** 车辆状态统计(今日,含叫号状态合计 callStatusTotal = 已签到+已叫号+已过号) */
|
||||||
|
RealVehicleStatusPO queryVehicleStatusToday();
|
||||||
|
|
||||||
|
/** 本月任务量 */
|
||||||
|
Long countMonthTasks();
|
||||||
|
|
||||||
|
/** 本月任务平均时长 / 完成率统计 */
|
||||||
|
RealMonthlyTaskDurationPO queryMonthTaskStats();
|
||||||
|
|
||||||
|
/** 任务负荷(今日 24 小时) */
|
||||||
|
List<RealTaskLoadPO> queryTaskLoadToday();
|
||||||
|
|
||||||
|
/** 今日预约-业务类型统计(按 businessName 分组统计今日预约数量) */
|
||||||
|
List<RealBusinessTypeStatPO> queryTodayBusinessTypeStats();
|
||||||
|
|
||||||
|
/** 今日作业准时率统计(total 今日预约总数;onTimeCount 今日准时车辆数) */
|
||||||
|
RealOnTimeStatPO queryTodayOnTimeStats();
|
||||||
|
|
||||||
|
/** 任务类型统计(本月 YMS QMS_MAIN_BUSINESS 预约按业务类型 BUSINESS_NAME 分组) */
|
||||||
|
List<RealTaskTypeStatPO> queryMonthTransportOrderByType();
|
||||||
|
|
||||||
|
/** 月台监控-按楼层统计月台车辆(楼层、月台数量、今日预约车辆、当前作业车辆) */
|
||||||
|
List<RealPlatformFloorStatPO> queryPlatformFloorStats();
|
||||||
|
|
||||||
|
/** 月台管理列表(YMS qms_window_info,含机构/鹤位/状态/楼层/UUID 等完整信息) */
|
||||||
|
List<RealPlatformInfoPO> queryPlatformInfoList();
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 今日预约-业务类型统计(真实数据,来自 TEST_NGWL_YMS.QMS_MAIN_BUSINESS)
|
||||||
|
* 按业务类型分组统计今日预约数量
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealBusinessTypeStatPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 业务类型名称(qms_main_business.businessName) */
|
||||||
|
private String businessName;
|
||||||
|
|
||||||
|
/** 今日预约数量 */
|
||||||
|
private Long count;
|
||||||
|
}
|
||||||
+29
@@ -0,0 +1,29 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本月任务平均时长 / 完成率统计(真实数据,来自 TEST_NGWL_YMS.QMS_MAIN_BUSINESS)
|
||||||
|
* avgDurationHours:累计 (EXIT_TIME - ENTRY_TIME) 小时数(仅 ENTRY_TIME/EXIT_TIME 都不为空时参与)
|
||||||
|
* durationCount:参与平均时长统计的有效条数
|
||||||
|
* completedCount:已出场(EXIT_TIME IS NOT NULL)且预约日期在本月的数量
|
||||||
|
* totalCount:本月(TARGET_DATE)预约总数量
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealMonthlyTaskDurationPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 平均作业时长(小时) */
|
||||||
|
private Double avgDurationHours;
|
||||||
|
|
||||||
|
/** 参与平均时长统计的有效条数 */
|
||||||
|
private Long durationCount;
|
||||||
|
|
||||||
|
/** 本月已出场数量 */
|
||||||
|
private Long completedCount;
|
||||||
|
|
||||||
|
/** 本月预约总数量(按 TARGET_DATE 统计) */
|
||||||
|
private Long totalCount;
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 今日作业准时率统计(真实数据,来自 TEST_NGWL_YMS.QMS_MAIN_BUSINESS)
|
||||||
|
* 准时率 = 今日实际进场时间在预约日期当天的车辆数 / 今日预约总车辆数 × 100%
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealOnTimeStatPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 今日预约总车辆数 */
|
||||||
|
private Long total;
|
||||||
|
|
||||||
|
/** 今日准时车辆数(已进场且实际进场日期 = 预约日期) */
|
||||||
|
private Long onTimeCount;
|
||||||
|
}
|
||||||
+26
@@ -0,0 +1,26 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台监控-月台车辆统计(按楼层分组)
|
||||||
|
* 数据来源:TEST_NGWL_YMS.QMS_WINDOW_INFO(楼层+月台)与 QMS_MAIN_BUSINESS(当日预约/作业)
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealPlatformFloorStatPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 楼层(从叫号月台 WINDOW_NAME 解析,如 S1-01 -> F1) */
|
||||||
|
private String floorNo;
|
||||||
|
|
||||||
|
/** 该楼层的月台数量 */
|
||||||
|
private Long platformCount;
|
||||||
|
|
||||||
|
/** 今日预约车辆数(按 WINDOW_NAME 关联楼层) */
|
||||||
|
private Long todayReservedVehicles;
|
||||||
|
|
||||||
|
/** 当前作业车辆数(FLOW_STATUS IN 5,6,7,8,9,10) */
|
||||||
|
private Long operatingVehicles;
|
||||||
|
}
|
||||||
+59
@@ -0,0 +1,59 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台管理列表(真实数据,来自 TEST_NGWL_YMS.QMS_WINDOW_INFO)
|
||||||
|
* 对应 YMS qms_window_info 月台/鹤位窗口表
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealPlatformInfoPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 主键 */
|
||||||
|
private Long id;
|
||||||
|
|
||||||
|
/** 机构代码(org_no) */
|
||||||
|
private String orgNo;
|
||||||
|
|
||||||
|
/** 机构名称(dept_name) */
|
||||||
|
private String deptName;
|
||||||
|
|
||||||
|
/** 鹤位号/月台号(window_number) */
|
||||||
|
private String windowNumber;
|
||||||
|
|
||||||
|
/** 鹤位名称/月台名称(window_name) */
|
||||||
|
private String windowName;
|
||||||
|
|
||||||
|
/** 优先级别(priority_set) */
|
||||||
|
private String prioritySet;
|
||||||
|
|
||||||
|
/** 鹤位状态/月台状态(running_status) */
|
||||||
|
private String runningStatus;
|
||||||
|
|
||||||
|
/** uuid */
|
||||||
|
private String uuid;
|
||||||
|
|
||||||
|
/** 鹤位屏名字集合/绑定月台屏(berr_names) */
|
||||||
|
private String berrNames;
|
||||||
|
|
||||||
|
/** 最新业务状态(new_flow_status) */
|
||||||
|
private String newFlowStatus;
|
||||||
|
|
||||||
|
/** 月台图片(guide_images) */
|
||||||
|
private String guideImages;
|
||||||
|
|
||||||
|
/** 月台楼层(platform_floor) */
|
||||||
|
private String platformFloor;
|
||||||
|
|
||||||
|
/** 作业状态 0-空闲 1-占用(job_status) */
|
||||||
|
private Integer jobStatus;
|
||||||
|
|
||||||
|
/** 创建人(create_by) */
|
||||||
|
private String createBy;
|
||||||
|
|
||||||
|
/** 创建时间(create_time) */
|
||||||
|
private String createTime;
|
||||||
|
}
|
||||||
+18
@@ -0,0 +1,18 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台实时概览(真实数据,来自 TEST_NGWL_YMS.QMS_WINDOW_INFO)
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealPlatformOverviewPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 月台总数 */
|
||||||
|
private Long totalPlatforms;
|
||||||
|
|
||||||
|
/** 当前作业中(月台作业状态=占用) */
|
||||||
|
private Long operatingPlatforms;
|
||||||
|
}
|
||||||
+30
@@ -0,0 +1,30 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台监测-作业车辆(真实数据,来自 TEST_NGWL_YMS.QMS_MAIN_BUSINESS 等)
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealPlatformVehiclePO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 车牌号(qms_main_business.CARNO) */
|
||||||
|
private String plateNumber;
|
||||||
|
|
||||||
|
/** 流程状态(qms_main_business.FLOWSTATUS) */
|
||||||
|
private String status;
|
||||||
|
|
||||||
|
/** 叫号月台(qms_queue_list.WINDOWNAME) */
|
||||||
|
private String platformId;
|
||||||
|
|
||||||
|
/** 月台作业时长,分钟(EXITTIME - ENTRYTIME) */
|
||||||
|
private Long platformDuration;
|
||||||
|
|
||||||
|
/** 预约申请时间(qms_main_business.CREATE_TIME) */
|
||||||
|
private String appointmentTime;
|
||||||
|
|
||||||
|
/** 作业楼层(qms_window_info.PLATFORMFLOOR) */
|
||||||
|
private String workFloor;
|
||||||
|
}
|
||||||
+18
@@ -0,0 +1,18 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务负荷统计(按小时,来自 TEST_NGWL_YMS.QMS_MAIN_BUSINESS)
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealTaskLoadPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 0-23 小时 */
|
||||||
|
private Integer hourOfDay;
|
||||||
|
|
||||||
|
/** 该小时段任务数 */
|
||||||
|
private Long taskCount;
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务类型统计(真实数据,来自 NGWL_TEST_YMS.QMS_MAIN_BUSINESS 预约登记表)
|
||||||
|
* 按本月预约车辆数(TARGET_DATE 在当前月)以 BUSINESS_NAME 业务类型分组
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealTaskTypeStatPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 业务类型名称(qms_main_business.BUSINESS_NAME) */
|
||||||
|
private String businessName;
|
||||||
|
|
||||||
|
/** 该业务类型本月预约车辆数 */
|
||||||
|
private Long count;
|
||||||
|
}
|
||||||
+30
@@ -0,0 +1,30 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.repository.po;
|
||||||
|
|
||||||
|
import lombok.Data;
|
||||||
|
import java.io.Serializable;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 作业车辆状态统计(真实数据,来自 TEST_NGWL_YMS.QMS_MAIN_BUSINESS)
|
||||||
|
*/
|
||||||
|
@Data
|
||||||
|
public class RealVehicleStatusPO implements Serializable {
|
||||||
|
private static final long serialVersionUID = 1L;
|
||||||
|
|
||||||
|
/** 今日预约车辆 */
|
||||||
|
private Long todayReservedVehicles;
|
||||||
|
|
||||||
|
/** 当前未签到 */
|
||||||
|
private Long notCheckedIn;
|
||||||
|
|
||||||
|
/** 当前等待作业(FLOW_STATUS IN '1','2','3' 已预约/已签到/已叫号) */
|
||||||
|
private Long waiting;
|
||||||
|
|
||||||
|
/** 叫号状态合计:已签到 + 已叫号 + 已过号(FLOW_STATUS IN '2','3','4',预约日期为今天) */
|
||||||
|
private Long callStatusTotal;
|
||||||
|
|
||||||
|
/** 当前作业中 */
|
||||||
|
private Long operatingVehicles;
|
||||||
|
|
||||||
|
/** 作业完成 */
|
||||||
|
private Long completedVehicles;
|
||||||
|
}
|
||||||
+501
@@ -0,0 +1,501 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformRealData.service;
|
||||||
|
|
||||||
|
import com.fasterxml.jackson.databind.ObjectMapper;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.mapper.BiPlatformRealDataMapper;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformVehiclePO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformOverviewPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealVehicleStatusPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealTaskLoadPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealBusinessTypeStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformFloorStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealPlatformInfoPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealOnTimeStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealTaskTypeStatPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformRealData.repository.po.RealMonthlyTaskDurationPO;
|
||||||
|
import com.mhd.bi.domain.biPlatformSurveillance.repository.mapper.BiPlatformSurveillanceReportMapper;
|
||||||
|
import com.mhd.bi.domain.biSnapshotSync.repository.mapper.BiSnapshotWriteMapper;
|
||||||
|
import com.mhd.bi.domain.biSnapshotSync.support.BiSnapshotWeeklyRandomDataBuilder;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.PlatformSurveillanceVO;
|
||||||
|
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.PlatformVehicleItemVO;
|
||||||
|
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.TaskLoadItemVO;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.TaskTypeStatisticsVO;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.TaskTypeCountItemVO;
|
||||||
|
import lombok.extern.slf4j.Slf4j;
|
||||||
|
import org.apache.commons.lang3.StringUtils;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
import java.util.ArrayList;
|
||||||
|
import java.util.HashMap;
|
||||||
|
import java.util.LinkedHashMap;
|
||||||
|
import java.util.List;
|
||||||
|
import java.util.Map;
|
||||||
|
import java.util.Objects;
|
||||||
|
import java.util.Random;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台监测-真实数据业务层(封装 YMS 跨库查询)
|
||||||
|
* 注:列名大小写、字段类型需以实际库为准;若 YMS 库无数据/无权限,相关方法应返回空/0,不影响写死字段写入快照
|
||||||
|
*/
|
||||||
|
@Slf4j
|
||||||
|
@Service
|
||||||
|
public class BiPlatformRealDataService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiPlatformRealDataMapper biPlatformRealDataMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiSnapshotWriteMapper biSnapshotWriteMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiPlatformSurveillanceReportMapper biPlatformSurveillanceReportMapper;
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private ObjectMapper objectMapper;
|
||||||
|
|
||||||
|
private static final String REMARK_REALTIME = "realtime platform-surveillance";
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实时组装月台监测数据;仅当真实业务数据(YMS 库查出的字段)发生变化时,
|
||||||
|
* 才覆盖更新 BI_PLATFORM_SURVEILLANCE_SNAPSHOT 快照表最新一条后返回。
|
||||||
|
* 写死字段变化不触发更新;表中尚无记录时插入一条兜底。
|
||||||
|
*/
|
||||||
|
public PlatformSurveillanceVO buildRealTimePlatformSurveillanceAndPersist() {
|
||||||
|
PlatformSurveillanceVO vo = buildRealTimePlatformSurveillance();
|
||||||
|
try {
|
||||||
|
String fullJson = objectMapper.writeValueAsString(vo);
|
||||||
|
String fingerprint = realDataFingerprint(vo);
|
||||||
|
|
||||||
|
String latestJson = biPlatformSurveillanceReportMapper.selectLatestPayloadJson();
|
||||||
|
if (StringUtils.isNotBlank(latestJson)) {
|
||||||
|
PlatformSurveillanceVO latestVo = objectMapper.readValue(latestJson.trim(), PlatformSurveillanceVO.class);
|
||||||
|
if (Objects.equals(fingerprint, realDataFingerprint(latestVo))) {
|
||||||
|
log.info("BI 月台监测真实业务数据未变化,跳过落库");
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
int rows = biSnapshotWriteMapper.updateLatestPlatformSurveillanceSnapshot(fullJson, REMARK_REALTIME);
|
||||||
|
if (rows < 1) {
|
||||||
|
// 表中无最新记录可更新,插入一条兜底
|
||||||
|
biSnapshotWriteMapper.insertPlatformSurveillanceSnapshot(fullJson, REMARK_REALTIME);
|
||||||
|
}
|
||||||
|
log.info("BI 月台监测实时数据已落库(覆盖最新, 数据变化), affectedRows={}", rows);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("BI 月台监测实时数据落库失败", e);
|
||||||
|
}
|
||||||
|
return vo;
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 提取月台监测的「真实业务数据」指纹(仅含 YMS 库查出的字段),用于判断业务数据是否变化。
|
||||||
|
* 写死/随机字段不纳入指纹,故其变化不会触发更新。
|
||||||
|
*/
|
||||||
|
private String realDataFingerprint(PlatformSurveillanceVO vo) throws Exception {
|
||||||
|
Map<String, Object> fp = new LinkedHashMap<>();
|
||||||
|
if (vo.getPlatformOverview() != null) {
|
||||||
|
fp.put("totalPlatforms", vo.getPlatformOverview().getTotalPlatforms());
|
||||||
|
fp.put("operatingPlatforms", vo.getPlatformOverview().getOperatingPlatforms());
|
||||||
|
fp.put("currentOccupancyRate", vo.getPlatformOverview().getCurrentOccupancyRate());
|
||||||
|
fp.put("todayTasks", vo.getPlatformOverview().getTodayTasks());
|
||||||
|
}
|
||||||
|
if (vo.getEfficiencyStatistics() != null) {
|
||||||
|
fp.put("platformOnTimeRate", vo.getEfficiencyStatistics().getPlatformOnTimeRate());
|
||||||
|
}
|
||||||
|
if (vo.getVehicleStatus() != null) {
|
||||||
|
fp.put("todayReservedVehicles", vo.getVehicleStatus().getTodayReservedVehicles());
|
||||||
|
fp.put("notCheckedIn", vo.getVehicleStatus().getNotCheckedIn());
|
||||||
|
fp.put("waiting", vo.getVehicleStatus().getWaiting());
|
||||||
|
fp.put("callStatusTotal", vo.getVehicleStatus().getCallStatusTotal());
|
||||||
|
fp.put("operatingVehicles", vo.getVehicleStatus().getOperatingVehicles());
|
||||||
|
|
||||||
|
|
||||||
|
fp.put("completedVehicles", vo.getVehicleStatus().getCompletedVehicles());
|
||||||
|
}
|
||||||
|
|
||||||
|
if (vo.getMonthlyTaskStatistics() != null) {
|
||||||
|
fp.put("taskTotal", vo.getMonthlyTaskStatistics().getTaskTotal());
|
||||||
|
fp.put("avgTaskDuration", vo.getMonthlyTaskStatistics().getAvgTaskDuration());
|
||||||
|
fp.put("taskCompletionRate", vo.getMonthlyTaskStatistics().getTaskCompletionRate());
|
||||||
|
}
|
||||||
|
if (vo.getVehicles() != null) {
|
||||||
|
List<Map<String, Object>> vehicles = new ArrayList<>();
|
||||||
|
for (PlatformVehicleItemVO v : vo.getVehicles()) {
|
||||||
|
Map<String, Object> m = new LinkedHashMap<>();
|
||||||
|
m.put("appointmentTime", v.getAppointmentTime());
|
||||||
|
m.put("workFloor", v.getWorkFloor());
|
||||||
|
m.put("plateNumber", v.getPlateNumber());
|
||||||
|
m.put("status", v.getStatus());
|
||||||
|
m.put("platformId", v.getPlatformId());
|
||||||
|
m.put("platformDuration", v.getPlatformDuration());
|
||||||
|
vehicles.add(m);
|
||||||
|
}
|
||||||
|
fp.put("vehicles", vehicles);
|
||||||
|
}
|
||||||
|
if (vo.getTaskLoadStatistics() != null) {
|
||||||
|
List<Map<String, Object>> loads = new ArrayList<>();
|
||||||
|
for (TaskLoadItemVO item : vo.getTaskLoadStatistics()) {
|
||||||
|
Map<String, Object> m = new LinkedHashMap<>();
|
||||||
|
m.put("time", item.getTime());
|
||||||
|
m.put("taskCount", item.getTaskCount());
|
||||||
|
loads.add(m);
|
||||||
|
}
|
||||||
|
fp.put("taskLoadStatistics", loads);
|
||||||
|
}
|
||||||
|
if (vo.getTaskTypeStatistics() != null) {
|
||||||
|
Map<String, Object> m = new LinkedHashMap<>();
|
||||||
|
m.put("totalTasks", vo.getTaskTypeStatistics().getTotalTasks());
|
||||||
|
if (vo.getTaskTypeStatistics().getTaskTypes() != null) {
|
||||||
|
List<Map<String, Object>> types = new ArrayList<>();
|
||||||
|
for (TaskTypeCountItemVO it : vo.getTaskTypeStatistics().getTaskTypes()) {
|
||||||
|
Map<String, Object> tm = new LinkedHashMap<>();
|
||||||
|
tm.put("type", it.getType());
|
||||||
|
tm.put("count", it.getCount());
|
||||||
|
types.add(tm);
|
||||||
|
}
|
||||||
|
m.put("taskTypes", types);
|
||||||
|
}
|
||||||
|
fp.put("taskTypeStatistics", m);
|
||||||
|
}
|
||||||
|
// 月台告警统计:按业务要求恒为 0,纳入指纹以确保旧快照(可能含非0写死值)能被覆盖更新为 0
|
||||||
|
if (vo.getPlatformAlarmStatistics() != null) {
|
||||||
|
fp.put("todayAlarmTotal", vo.getPlatformAlarmStatistics().getTodayAlarmTotal());
|
||||||
|
fp.put("handled", vo.getPlatformAlarmStatistics().getHandled());
|
||||||
|
fp.put("unhandled", vo.getPlatformAlarmStatistics().getUnhandled());
|
||||||
|
}
|
||||||
|
return objectMapper.writeValueAsString(fp);
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<RealPlatformVehiclePO> queryVehicles() {
|
||||||
|
try {
|
||||||
|
return biPlatformRealDataMapper.queryVehicles();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】查询作业车辆列表失败: {}", e.getMessage(), e);
|
||||||
|
return java.util.Collections.emptyList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public RealPlatformOverviewPO queryPlatformOverview() {
|
||||||
|
try {
|
||||||
|
RealPlatformOverviewPO po = biPlatformRealDataMapper.queryPlatformOverview();
|
||||||
|
if (po == null) {
|
||||||
|
po = new RealPlatformOverviewPO();
|
||||||
|
}
|
||||||
|
if (po.getTotalPlatforms() == null) po.setTotalPlatforms(0L);
|
||||||
|
if (po.getOperatingPlatforms() == null) po.setOperatingPlatforms(0L);
|
||||||
|
return po;
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】查询月台概览失败: {}", e.getMessage(), e);
|
||||||
|
RealPlatformOverviewPO po = new RealPlatformOverviewPO();
|
||||||
|
po.setTotalPlatforms(0L);
|
||||||
|
po.setOperatingPlatforms(0L);
|
||||||
|
return po;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public long countTodayTasks() {
|
||||||
|
try {
|
||||||
|
Long n = biPlatformRealDataMapper.countTodayTasks();
|
||||||
|
return n == null ? 0L : n;
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计今日作业任务失败: {}", e.getMessage(), e);
|
||||||
|
return 0L;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 今日作业准时率 = 今日准时车辆数 / 今日有入场时间的车辆数 × 100%(四舍五入取整)
|
||||||
|
* 准时:实际进入时间 < 预约日期(TARGET_DATE) + 预约结束时间(BOOKING_END_TIME)。
|
||||||
|
* 分子分母都只统计有入场时间(ENTRY_TIME 不为空)的车辆;分母为 0 时返回 0。
|
||||||
|
*/
|
||||||
|
public int calcTodayOnTimeRate() {
|
||||||
|
try {
|
||||||
|
RealOnTimeStatPO po = biPlatformRealDataMapper.queryTodayOnTimeStats();
|
||||||
|
if (po == null) return 0;
|
||||||
|
long total = po.getTotal() == null ? 0L : po.getTotal();
|
||||||
|
long onTime = po.getOnTimeCount() == null ? 0L : po.getOnTimeCount();
|
||||||
|
if (total <= 0) return 0;
|
||||||
|
// 四舍五入到整数百分比(取整)
|
||||||
|
return (int) Math.round(((double) onTime / (double) total) * 100.0);
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】计算今日作业准时率失败: {}", e.getMessage(), e);
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public RealVehicleStatusPO queryVehicleStatusToday() {
|
||||||
|
try {
|
||||||
|
RealVehicleStatusPO po = biPlatformRealDataMapper.queryVehicleStatusToday();
|
||||||
|
if (po == null) po = new RealVehicleStatusPO();
|
||||||
|
if (po.getTodayReservedVehicles() == null) po.setTodayReservedVehicles(0L);
|
||||||
|
if (po.getNotCheckedIn() == null) po.setNotCheckedIn(0L);
|
||||||
|
if (po.getWaiting() == null) po.setWaiting(0L);
|
||||||
|
if (po.getCallStatusTotal() == null) po.setCallStatusTotal(0L);
|
||||||
|
if (po.getOperatingVehicles() == null) po.setOperatingVehicles(0L);
|
||||||
|
if (po.getCompletedVehicles() == null) po.setCompletedVehicles(0L);
|
||||||
|
return po;
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计车辆状态失败: {}", e.getMessage(), e);
|
||||||
|
RealVehicleStatusPO po = new RealVehicleStatusPO();
|
||||||
|
po.setTodayReservedVehicles(0L);
|
||||||
|
po.setNotCheckedIn(0L);
|
||||||
|
po.setWaiting(0L);
|
||||||
|
po.setCallStatusTotal(0L);
|
||||||
|
po.setOperatingVehicles(0L);
|
||||||
|
po.setCompletedVehicles(0L);
|
||||||
|
return po;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
public long countMonthTasks() {
|
||||||
|
try {
|
||||||
|
Long n = biPlatformRealDataMapper.countMonthTasks();
|
||||||
|
return n == null ? 0L : n;
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计本月任务量失败: {}", e.getMessage(), e);
|
||||||
|
return 0L;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 本月任务平均时长 / 完成率统计:
|
||||||
|
* - avgDurationHours:累计(EXIT_TIME - ENTRY_TIME)小时数 / 参与数;任一为空的行不参与
|
||||||
|
* - taskCompletionRate:已完成(EXIT_TIME 不为空 且 预约日期在本月)/ 本月预约总数量 ×100
|
||||||
|
* 任一查询失败均返回 null,由调用方决定是否覆盖模板值。
|
||||||
|
*/
|
||||||
|
public RealMonthlyTaskDurationPO queryMonthTaskStats() {
|
||||||
|
try {
|
||||||
|
return biPlatformRealDataMapper.queryMonthTaskStats();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计本月任务平均时长/完成率失败: {}", e.getMessage(), e);
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
public List<RealTaskLoadPO> queryTaskLoadToday() {
|
||||||
|
try {
|
||||||
|
return biPlatformRealDataMapper.queryTaskLoadToday();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计任务负荷失败: {}", e.getMessage(), e);
|
||||||
|
return java.util.Collections.emptyList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 任务类型统计:本月(YMS QMS_MAIN_BUSINESS)预约车辆按业务类型 BUSINESS_NAME 分组;
|
||||||
|
* 返回 {totalTasks: 当月总预约车辆数, taskTypes: [{type: 业务类型名称, count: 该类型预约数}]}
|
||||||
|
* 按真实 BUSINESS_NAME 分组输出,不固定兜底类别;当月无数据或查询失败时返回空列表。
|
||||||
|
*/
|
||||||
|
public TaskTypeStatisticsVO queryMonthTransportOrderByType() {
|
||||||
|
List<TaskTypeCountItemVO> items = new ArrayList<>();
|
||||||
|
int total = 0;
|
||||||
|
try {
|
||||||
|
List<RealTaskTypeStatPO> rows = biPlatformRealDataMapper.queryMonthTransportOrderByType();
|
||||||
|
if (rows != null) {
|
||||||
|
for (RealTaskTypeStatPO r : rows) {
|
||||||
|
if (r == null || r.getBusinessName() == null || r.getCount() == null) {
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
int c = r.getCount().intValue();
|
||||||
|
items.add(TaskTypeCountItemVO.builder().type(r.getBusinessName()).count(c).build());
|
||||||
|
total += c;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计当月预约业务类型失败: {}", e.getMessage(), e);
|
||||||
|
// 查询失败返回空列表(前端会显示空)
|
||||||
|
items = new ArrayList<>();
|
||||||
|
total = 0;
|
||||||
|
}
|
||||||
|
return TaskTypeStatisticsVO.builder().totalTasks(total).taskTypes(items).build();
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 今日预约-业务类型统计:按业务类型分组统计今日预约数量。
|
||||||
|
* 例:今日预约航空打板 3 条 → 返回 {businessName:"航空打板", count:3}
|
||||||
|
*/
|
||||||
|
public List<RealBusinessTypeStatPO> queryTodayBusinessTypeStats() {
|
||||||
|
try {
|
||||||
|
return biPlatformRealDataMapper.queryTodayBusinessTypeStats();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】统计今日业务类型失败: {}", e.getMessage(), e);
|
||||||
|
return java.util.Collections.emptyList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台监控-按楼层统计月台车辆:返回 {floorNo, platformCount, todayReservedVehicles, operatingVehicles}
|
||||||
|
* 实时查 YMS 库,不落库。
|
||||||
|
*/
|
||||||
|
public List<RealPlatformFloorStatPO> queryPlatformFloorStats() {
|
||||||
|
try {
|
||||||
|
return biPlatformRealDataMapper.queryPlatformFloorStats();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】月台监控按楼层统计失败: {}", e.getMessage(), e);
|
||||||
|
return java.util.Collections.emptyList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台管理列表:实时查 YMS qms_window_info,返回月台/鹤位窗口完整信息,不落库。
|
||||||
|
*/
|
||||||
|
public List<RealPlatformInfoPO> queryPlatformInfoList() {
|
||||||
|
try {
|
||||||
|
return biPlatformRealDataMapper.queryPlatformInfoList();
|
||||||
|
} catch (Exception e) {
|
||||||
|
log.error("【YMS】查询月台管理列表失败: {}", e.getMessage(), e);
|
||||||
|
return java.util.Collections.emptyList();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 实时组装月台监测数据:原则「有真实数据源用真实,无真实数据源用写死模拟」。
|
||||||
|
* 有真实数据源的字段(vehicles / platformOverview / vehicleStatus / taskLoad / taskTotal)
|
||||||
|
* 无条件用 YMS 真实查询覆盖,真实为空即为空,不用模板兜底;
|
||||||
|
* 无真实数据源的字段(效率统计、趋势、告警、任务类型等)保留模板写死值。
|
||||||
|
* 每次调用实时查库,不经过快照表。
|
||||||
|
*/
|
||||||
|
public PlatformSurveillanceVO buildRealTimePlatformSurveillance() {
|
||||||
|
// 固定种子生成写死模板:仅用于没有真实数据源的字段
|
||||||
|
Random r = new Random(20260825L);
|
||||||
|
PlatformSurveillanceVO template = BiSnapshotWeeklyRandomDataBuilder.platformSurveillance(r);
|
||||||
|
|
||||||
|
// 作业车辆列表:真实数据源,无条件覆盖(真实为空则返回空列表,不用模板模拟)
|
||||||
|
List<RealPlatformVehiclePO> realVehicles = queryVehicles();
|
||||||
|
List<PlatformVehicleItemVO> vehicleVos = new ArrayList<>();
|
||||||
|
for (RealPlatformVehiclePO rv : realVehicles) {
|
||||||
|
PlatformVehicleItemVO v = new PlatformVehicleItemVO();
|
||||||
|
v.setAppointmentTime(rv.getAppointmentTime());
|
||||||
|
v.setWorkFloor(rv.getWorkFloor());
|
||||||
|
v.setPlateNumber(rv.getPlateNumber());
|
||||||
|
v.setStatus(translateFlowStatus(rv.getStatus()));
|
||||||
|
v.setPlatformId(rv.getPlatformId());
|
||||||
|
v.setPlatformDuration(rv.getPlatformDuration() == null ? 0 : rv.getPlatformDuration().intValue());
|
||||||
|
vehicleVos.add(v);
|
||||||
|
}
|
||||||
|
template.setVehicles(vehicleVos);
|
||||||
|
|
||||||
|
// 月台实时概览:真实数据源,无条件覆盖
|
||||||
|
// 总月台 / 占用月台 来源:YMS 月台管理列表 QMS_WINDOW_INFO(JOB_STATUS=1 表示占用)
|
||||||
|
// 月台占用率 = 占用 / 全部月台
|
||||||
|
// 今日作业任务 来源:QMS_MAIN_BUSINESS 按预约时间 TARGET_DATE = 今天 的全部数量
|
||||||
|
// 作业准时率 = 今日(实际进场时间在预约日期当天的车辆数) / 今日预约车辆总数 × 100%
|
||||||
|
if (template.getPlatformOverview() != null) {
|
||||||
|
List<RealPlatformInfoPO> platformList = queryPlatformInfoList();
|
||||||
|
int total = platformList == null ? 0 : platformList.size();
|
||||||
|
int occ = 0;
|
||||||
|
if (platformList != null) {
|
||||||
|
for (RealPlatformInfoPO p : platformList) {
|
||||||
|
if (p != null && p.getJobStatus() != null && p.getJobStatus() == 1) {
|
||||||
|
occ++;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
double rate = total > 0 ? Math.round(((double) occ / total) * 100.0 * 100.0) / 100.0 : 0d;
|
||||||
|
int todayTasks = (int) countTodayTasks();
|
||||||
|
template.getPlatformOverview().setTotalPlatforms(total);
|
||||||
|
template.getPlatformOverview().setOperatingPlatforms(occ);
|
||||||
|
template.getPlatformOverview().setCurrentOccupancyRate(rate);
|
||||||
|
template.getPlatformOverview().setTodayTasks(todayTasks);
|
||||||
|
|
||||||
|
// 作业准时率(实际进入时间 < 预约日期+预约结束时间 的车辆 / 今日预约总数 × 100% 取整)
|
||||||
|
if (template.getEfficiencyStatistics() != null) {
|
||||||
|
template.getEfficiencyStatistics().setPlatformOnTimeRate(calcTodayOnTimeRate());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 作业车辆状态统计:真实数据源,无条件覆盖(含等待作业 waiting = 今日预约且 已预约/已签到/已叫号)
|
||||||
|
if (template.getVehicleStatus() != null) {
|
||||||
|
RealVehicleStatusPO vs = queryVehicleStatusToday();
|
||||||
|
template.getVehicleStatus().setTodayReservedVehicles(vs.getTodayReservedVehicles().intValue());
|
||||||
|
template.getVehicleStatus().setNotCheckedIn(vs.getNotCheckedIn().intValue());
|
||||||
|
template.getVehicleStatus().setWaiting(vs.getWaiting().intValue());
|
||||||
|
// 叫号状态合计:已签到 + 已叫号 + 已过号(一个字段表示三个状态的总数量)
|
||||||
|
template.getVehicleStatus().setCallStatusTotal(vs.getCallStatusTotal().intValue());
|
||||||
|
template.getVehicleStatus().setOperatingVehicles(vs.getOperatingVehicles().intValue());
|
||||||
|
|
||||||
|
|
||||||
|
template.getVehicleStatus().setCompletedVehicles(vs.getCompletedVehicles().intValue());
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
// 本月任务统计:taskTotal / avgTaskDuration / taskCompletionRate 均有真实数据源,无条件覆盖;YoY 保留模板写死值
|
||||||
|
if (template.getMonthlyTaskStatistics() != null) {
|
||||||
|
template.getMonthlyTaskStatistics().setTaskTotal((int) countMonthTasks());
|
||||||
|
RealMonthlyTaskDurationPO monthStats = queryMonthTaskStats();
|
||||||
|
if (monthStats != null) {
|
||||||
|
if (monthStats.getAvgDurationHours() != null) {
|
||||||
|
// 保留两位小数
|
||||||
|
double v = monthStats.getAvgDurationHours();
|
||||||
|
template.getMonthlyTaskStatistics().setAvgTaskDuration(Math.round(v * 100.0) / 100.0);
|
||||||
|
}
|
||||||
|
Long total = monthStats.getTotalCount();
|
||||||
|
Long completed = monthStats.getCompletedCount();
|
||||||
|
if (total != null && total > 0 && completed != null) {
|
||||||
|
int rate = (int) Math.round(((double) completed.longValue() / total.longValue()) * 100.0);
|
||||||
|
template.getMonthlyTaskStatistics().setTaskCompletionRate(rate);
|
||||||
|
} else {
|
||||||
|
template.getMonthlyTaskStatistics().setTaskCompletionRate(0);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 任务负荷:有真实数据源;真实为空则清空不用模板模拟,有数据则按真实小时覆盖
|
||||||
|
List<RealTaskLoadPO> loads = queryTaskLoadToday();
|
||||||
|
if (loads.isEmpty()) {
|
||||||
|
template.setTaskLoadStatistics(new ArrayList<>());
|
||||||
|
} else if (template.getTaskLoadStatistics() != null) {
|
||||||
|
Map<Integer, Long> hourMap = new HashMap<>();
|
||||||
|
for (RealTaskLoadPO l : loads) {
|
||||||
|
hourMap.put(l.getHourOfDay(), l.getTaskCount());
|
||||||
|
}
|
||||||
|
for (TaskLoadItemVO item : template.getTaskLoadStatistics()) {
|
||||||
|
Integer hour = parseHourFromLabel(item.getTime());
|
||||||
|
if (hour != null && hourMap.containsKey(hour)) {
|
||||||
|
item.setTaskCount(hourMap.get(hour).intValue());
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
// 任务类型统计:本月 YMS QMS_MAIN_BUSINESS 按业务类型 BUSINESS_NAME 分组(真实业务数据)
|
||||||
|
template.setTaskTypeStatistics(queryMonthTransportOrderByType());
|
||||||
|
|
||||||
|
return template;
|
||||||
|
}
|
||||||
|
|
||||||
|
private static Integer parseHourFromLabel(String label) {
|
||||||
|
if (label == null) return null;
|
||||||
|
try {
|
||||||
|
String s = label.replace("时", "").trim();
|
||||||
|
return Integer.parseInt(s);
|
||||||
|
} catch (Exception e) {
|
||||||
|
return null;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* FLOW_STATUS 数字转中文:1已预约 2已签到 3已叫号 4已过号 5已进场 6已称重 7已装车 8二次称重 9已结算 10已还卡 11已出场 12已取消
|
||||||
|
*/
|
||||||
|
private static String translateFlowStatus(String flowStatus) {
|
||||||
|
if (flowStatus == null) return null;
|
||||||
|
switch (flowStatus.trim()) {
|
||||||
|
case "1": return "已预约";
|
||||||
|
case "2": return "已签到";
|
||||||
|
case "3": return "已叫号";
|
||||||
|
case "4": return "已过号";
|
||||||
|
case "5": return "已进场";
|
||||||
|
case "6": return "已称重";
|
||||||
|
case "7": return "已装车";
|
||||||
|
case "8": return "二次称重";
|
||||||
|
case "9": return "已结算";
|
||||||
|
case "10": return "已还卡";
|
||||||
|
case "11": return "已出场";
|
||||||
|
case "12": return "已取消";
|
||||||
|
default: return flowStatus;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
+20
@@ -0,0 +1,20 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformSurveillance.repository.mapper;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biReport.support.BiReportSnapshotMapperSupport;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.PlatformSurveillanceVO;
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 月台监测:SQL 见 BiPlatformSurveillanceReportMapper.xml;取数与组装均在 Mapper 层完成。
|
||||||
|
*/
|
||||||
|
public interface BiPlatformSurveillanceReportMapper {
|
||||||
|
|
||||||
|
String selectLatestPayloadJson();
|
||||||
|
|
||||||
|
default PlatformSurveillanceVO loadLatestPlatformSurveillance() {
|
||||||
|
return BiReportSnapshotMapperSupport.parsePayload(
|
||||||
|
selectLatestPayloadJson(),
|
||||||
|
PlatformSurveillanceVO.class,
|
||||||
|
BiReportSnapshotMapperSupport::emptyPlatformSurveillance,
|
||||||
|
"月台监测");
|
||||||
|
}
|
||||||
|
}
|
||||||
+18
@@ -0,0 +1,18 @@
|
|||||||
|
package com.mhd.bi.domain.biPlatformSurveillance.service;
|
||||||
|
|
||||||
|
import com.mhd.bi.domain.biPlatformSurveillance.repository.mapper.BiPlatformSurveillanceReportMapper;
|
||||||
|
import com.mhd.bi.interfaces.facadeApi.biReport.vo.platform.PlatformSurveillanceVO;
|
||||||
|
import org.springframework.stereotype.Service;
|
||||||
|
|
||||||
|
import javax.annotation.Resource;
|
||||||
|
|
||||||
|
@Service
|
||||||
|
public class BiPlatformSurveillanceReportService {
|
||||||
|
|
||||||
|
@Resource
|
||||||
|
private BiPlatformSurveillanceReportMapper biPlatformSurveillanceReportMapper;
|
||||||
|
|
||||||
|
public PlatformSurveillanceVO loadLatestPlatformSurveillance() {
|
||||||
|
return biPlatformSurveillanceReportMapper.loadLatestPlatformSurveillance();
|
||||||
|
}
|
||||||
|
}
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user