632 Commits

Author SHA1 Message Date
e13b7669f2 edit 2022-03-30 18:00:52 +08:00
b8fd0cd28f edit 2022-03-30 15:44:03 +08:00
6ed11186d4 edit 2022-03-30 14:09:12 +08:00
f8c82f6f13 edit 2022-03-29 18:08:59 +08:00
889023bbb1 edit 2022-03-29 18:07:44 +08:00
be97d820bd edit 2022-03-29 14:47:19 +08:00
9e306ab949 edit 2022-03-29 10:54:38 +08:00
aed0d157f1 edit 2022-03-29 10:40:49 +08:00
b7ab261549 edit 2022-03-29 09:13:02 +08:00
3a822d7d33 e 2022-03-28 17:24:12 +08:00
f8cb159203 edit 2022-03-28 11:10:41 +08:00
e33c956306 edit 2022-03-24 14:22:39 +08:00
9ae46c9957 init 2022-03-24 08:57:33 +08:00
7d740ae559 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 17:19:17 +08:00
571de29199 edit 2022-03-23 17:19:13 +08:00
a57933b42c fix bug 2022-03-23 15:52:29 +08:00
1067ad68ec Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 15:51:05 +08:00
257fd6e92c fix bug 2022-03-23 15:50:56 +08:00
de4e0c4de6 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 15:40:06 +08:00
ecea562ed8 edit 2022-03-23 15:39:58 +08:00
47d6deb1f6 fix bug 2022-03-23 14:54:49 +08:00
5875c8416f fix bug 2022-03-23 14:49:28 +08:00
f5f64038c2 merge partner 2022-03-23 14:31:43 +08:00
f85da30008 merge partner 2022-03-23 14:27:29 +08:00
ba81d9be29 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 14:24:25 +08:00
ff99a1dfb7 merge partner 2022-03-23 14:24:21 +08:00
3ad13aba00 fix bug 2022-03-23 13:57:43 +08:00
106e32189a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 13:35:38 +08:00
10733e0240 fix bug 2022-03-23 13:34:38 +08:00
2822ee9920 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 13:24:46 +08:00
7e2b37ef85 edit 2022-03-23 13:24:35 +08:00
8c4761f078 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 11:40:32 +08:00
ae3a8de5a2 fix bug 2022-03-23 11:40:25 +08:00
2a065d7c6d edit 2022-03-23 11:22:38 +08:00
8d31f21547 edit 2022-03-23 11:06:24 +08:00
d2c350f6d1 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 10:31:06 +08:00
0cce1559f3 edit 2022-03-23 10:30:58 +08:00
d2a6ca1c8a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 10:12:12 +08:00
ba63f3250d fix bug 2022-03-23 10:11:56 +08:00
5d9b136898 edit 2022-03-23 10:07:05 +08:00
cd84e321e2 edit 2022-03-23 09:51:22 +08:00
549fb8a5c4 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-23 09:40:50 +08:00
c9e8779418 edit 2022-03-23 09:40:29 +08:00
ae5ca4497e fix bug 2022-03-22 18:02:28 +08:00
eea408944c Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 17:55:12 +08:00
2b2b2f3ca7 fix bug 2022-03-22 17:55:04 +08:00
131a8caceb Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 17:48:34 +08:00
40d46bfc6c edit 2022-03-22 17:48:29 +08:00
c5e7182978 fix bug 2022-03-22 17:45:32 +08:00
678d15519a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 17:37:31 +08:00
0ca940305b fix bug 2022-03-22 17:37:28 +08:00
c338af78bc Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 17:14:59 +08:00
39c6420921 dict-select组件添加重置功能 2022-03-22 17:14:50 +08:00
33200a38c3 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 17:01:06 +08:00
6b08457f6c fix bug 2022-03-22 17:00:57 +08:00
ab86f198e9 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 15:39:47 +08:00
1e3e5ea830 edit 2022-03-22 15:39:43 +08:00
b6b0529fc0 fix bug 2022-03-22 15:25:44 +08:00
9cbd590ec0 fix bug 2022-03-22 15:22:36 +08:00
2c996dae05 Merge branch 'st_ui' into develop 2022-03-22 14:28:18 +08:00
b468bf197f edit 2022-03-22 14:27:44 +08:00
a85946fad0 fix bug 2022-03-22 13:47:47 +08:00
eb41537083 fix bug 2022-03-22 13:32:21 +08:00
761e712c51 fix bug 2022-03-22 13:31:24 +08:00
2bb8081af4 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 11:13:31 +08:00
6dffa159ef fix bug 2022-03-22 11:12:35 +08:00
c5298f2eec Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-22 10:26:30 +08:00
41b5ba41b0 edit 2022-03-22 10:26:19 +08:00
6ba71ef342 fix bug 2022-03-22 10:05:39 +08:00
73eb480138 fix bug 2022-03-22 09:42:33 +08:00
a78db667e6 edit 2022-03-22 09:26:23 +08:00
9c97943076 edit 2022-03-22 09:22:45 +08:00
cd48729a4b fix bug 2022-03-21 18:01:23 +08:00
4ba7269e6f fix bug 2022-03-21 17:33:38 +08:00
bc6b0ef9ba fix bug 2022-03-21 17:31:30 +08:00
bc48403573 fix bug 2022-03-21 15:53:17 +08:00
f242420f3a fix bug 2022-03-21 15:50:31 +08:00
6cecb167ea 返佣 2022-03-21 15:30:35 +08:00
2ae16dce5c 返佣 2022-03-21 15:27:17 +08:00
28d48ec390 返佣 2022-03-21 15:14:00 +08:00
825b591c67 返佣 2022-03-21 15:05:20 +08:00
0778aabadd 返佣 2022-03-21 15:03:52 +08:00
7a3b01c4e6 返佣 2022-03-21 15:03:23 +08:00
18a4740380 返佣 2022-03-21 15:00:21 +08:00
303f74c176 返佣 2022-03-21 14:52:57 +08:00
5bf1767e6e 返佣 2022-03-21 14:52:04 +08:00
ead9ebb012 返佣 2022-03-21 14:41:29 +08:00
ace758617f 'fixbug' 2022-03-18 18:33:19 +08:00
e259f53bc2 'fixbug' 2022-03-18 16:13:59 +08:00
4ac1eeab24 'fixbug' 2022-03-18 15:57:00 +08:00
f298ead5bb 'fixbug' 2022-03-18 15:42:50 +08:00
68ab611223 'fixbug' 2022-03-18 15:28:37 +08:00
4f220563a1 'fixbug' 2022-03-18 15:23:50 +08:00
567cf4b15a 'fixbug' 2022-03-18 15:21:44 +08:00
911f4971f3 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-18 15:15:18 +08:00
7cdb840b5a 'fixbug' 2022-03-18 15:15:13 +08:00
4b89007ea6 edit 2022-03-18 15:03:40 +08:00
8396fa724c 'fixbug' 2022-03-18 01:28:25 +08:00
8f4646501d 'fixbug' 2022-03-18 01:19:54 +08:00
cadf4acd85 'fixbug' 2022-03-18 00:54:13 +08:00
759c829c4d 'fixbug' 2022-03-18 00:43:17 +08:00
d9d9ea2733 'fixbug' 2022-03-18 00:41:03 +08:00
bdd3b9cc3b 'fixbug' 2022-03-18 00:34:45 +08:00
b49480ef7b 'fixbug' 2022-03-17 17:59:34 +08:00
46bfecfdc2 'fixbug' 2022-03-17 17:11:06 +08:00
a59df85c64 'fixbug' 2022-03-17 17:01:37 +08:00
17420e5351 bugfix 2022-03-17 15:15:44 +08:00
c0336eb26a bugfix 2022-03-17 13:30:07 +08:00
b394d976a0 'fixbug' 2022-03-16 15:36:35 +08:00
48d7a9ba78 'fixbug' 2022-03-16 15:14:39 +08:00
01ac9f4e99 'fixbug' 2022-03-16 15:09:46 +08:00
376005df54 edit 2022-03-16 13:34:23 +08:00
5777290bf2 'fixbug' 2022-03-15 15:18:18 +08:00
59dbb5443c 'fixbug' 2022-03-15 15:12:26 +08:00
70d1ad980e 'fixbug' 2022-03-15 14:59:18 +08:00
cfe1b803ec Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-15 13:00:56 +08:00
5fcdba486e 'fixbug' 2022-03-15 13:00:50 +08:00
4aadbec7cc edit 2022-03-15 11:21:57 +08:00
9e473d2116 bugfix 5303 2022-03-14 18:29:55 +08:00
23226b2df0 edit 2022-03-14 17:10:21 +08:00
afe542a6a0 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-14 16:16:14 +08:00
8a80a1de3c edit 2022-03-14 16:14:31 +08:00
d2bad04985 'fixbug' 2022-03-14 15:32:42 +08:00
8311b7c783 'fixbug' 2022-03-14 15:25:49 +08:00
182e547ffe Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-14 14:09:07 +08:00
98281b6b3a fix bug 2022-03-14 14:09:03 +08:00
4883a55ce8 edit 2022-03-14 10:30:26 +08:00
e330724811 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-12 15:30:13 +08:00
dd8f5afaa1 666 2022-03-12 15:30:07 +08:00
8940aec409 fix bug 2022-03-11 17:58:32 +08:00
b1d769e215 fix bug 2022-03-11 17:58:14 +08:00
6d703cf325 fix bug 2022-03-11 17:28:04 +08:00
e4e76db5d8 fix bug 2022-03-11 17:13:59 +08:00
5ebf478c35 fix bug 2022-03-11 16:41:17 +08:00
120e12c246 fix bug 2022-03-11 16:27:40 +08:00
8805564acc Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-11 15:57:51 +08:00
35b4fafd24 fix bug 2022-03-11 15:57:47 +08:00
2422bd47b2 fix bug 2022-03-11 15:56:13 +08:00
06deeb01ce Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-11 15:41:49 +08:00
cf4d181c02 fix bug 2022-03-11 15:41:45 +08:00
14cf740b8c Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-11 15:37:10 +08:00
9eab67502f fix bug 2022-03-11 15:37:04 +08:00
2eb9ef930a fix bug 2022-03-11 15:35:38 +08:00
59c911b639 fix bug 2022-03-11 13:39:48 +08:00
737dd8d9b1 fix bug 2022-03-11 13:33:02 +08:00
4f3c5640b5 fix bug 2022-03-11 11:24:59 +08:00
d8de5bfe8b fix bug 2022-03-11 11:18:03 +08:00
2f67f0ae0b fix bug 2022-03-11 11:10:16 +08:00
d1e01fb203 fix bug 2022-03-11 11:07:08 +08:00
a719dfd6dc Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-11 11:01:49 +08:00
b0de026701 fix bug 2022-03-11 11:01:45 +08:00
2d98e91e02 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-11 10:59:52 +08:00
64ac472716 e 2022-03-11 10:59:45 +08:00
bacba43fd2 fix bug 2022-03-11 10:37:48 +08:00
d0f418adc4 fix bug 2022-03-11 10:28:48 +08:00
688fd03a92 fix bug 2022-03-11 10:22:48 +08:00
ae22b93ac7 fix bug 2022-03-11 10:18:57 +08:00
d499b524f7 fix bug 2022-03-11 09:53:53 +08:00
6bdcd4e0e6 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-11 09:37:04 +08:00
e5b0436a27 fix bug 2022-03-11 09:36:53 +08:00
56c74c37f2 edi 2022-03-11 09:29:01 +08:00
547918ddaa edit 2022-03-10 20:49:21 +08:00
bdfbca6fc0 edit 2022-03-10 20:47:46 +08:00
6ef3718fbc edit 2022-03-10 20:46:28 +08:00
268919bda5 edit 2022-03-10 19:13:34 +08:00
d81ae173e2 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-10 19:06:20 +08:00
001455303e edit 2022-03-10 19:06:13 +08:00
36f07fc430 edit 2022-03-10 19:06:05 +08:00
7b5ad7970c Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-10 18:04:18 +08:00
bc20f1e970 fix bug 2022-03-10 18:04:09 +08:00
0d49a8e9d0 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-10 18:03:47 +08:00
006a59122b edit 2022-03-10 18:03:44 +08:00
2d17152c43 解决冲突 2022-03-10 16:18:23 +08:00
87dc390eaf 解决冲突 2022-03-10 16:15:15 +08:00
caf0f98a0e fix bug 2022-03-10 16:11:07 +08:00
c3afc62cb1 fix bug 2022-03-10 14:31:12 +08:00
a6c357e77a 解决冲突 2022-03-10 11:18:25 +08:00
85530ad527 解决冲突 2022-03-10 10:49:07 +08:00
a125eec1d3 fix bug 2022-03-10 10:28:09 +08:00
7e4dc24ca9 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-10 10:24:42 +08:00
01290836dc fix bug 2022-03-10 10:24:37 +08:00
20a4a91444 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-10 10:14:05 +08:00
fa6fd67157 edit 2022-03-10 10:13:58 +08:00
5988856e23 Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-10 10:13:07 +08:00
fcdc765e69 fix style 2022-03-10 10:13:02 +08:00
18fc33ad00 edit 2022-03-10 09:13:35 +08:00
500126f019 edit 2022-03-10 09:11:02 +08:00
a2abb79379 edit 2022-03-09 18:04:32 +08:00
fecb9692b3 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 18:01:50 +08:00
e7cd51ae30 edit 2022-03-09 18:01:42 +08:00
14d38960b8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 17:12:02 +08:00
7bc18f6469 fix bug 2022-03-09 17:11:57 +08:00
4dd7acb53a edit 2022-03-09 17:04:27 +08:00
89c03c417d edit 2022-03-09 16:54:24 +08:00
2320ab0960 edit 2022-03-09 16:53:58 +08:00
61b73497a6 fix bug 2022-03-09 16:46:42 +08:00
95604e68df fix bug 2022-03-09 16:26:01 +08:00
cb3bf2389c Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 16:18:00 +08:00
44ae7f40c1 fix bug 2022-03-09 16:17:56 +08:00
206ffaa9b9 edit 2022-03-09 16:12:37 +08:00
da7912ea1a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 16:01:03 +08:00
ebdad86950 edit 2022-03-09 16:00:58 +08:00
ae80432b23 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 15:25:35 +08:00
ed84583bac fix bug 2022-03-09 15:25:26 +08:00
21009db39b Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-09 15:20:29 +08:00
236a69cdd0 fix style 2022-03-09 15:20:23 +08:00
4a8fe7df04 fix bug 2022-03-09 15:18:42 +08:00
7d48edd72b fix bug 2022-03-09 15:17:37 +08:00
2769384b9f Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 14:41:08 +08:00
2d0b000242 edit 2022-03-09 14:40:57 +08:00
abeed6f4c6 fix bug 2022-03-09 14:34:37 +08:00
3c39e4395e fix bug 2022-03-09 14:29:59 +08:00
70213fc40d fix bug 2022-03-09 14:28:48 +08:00
f5b51e9d2c fix bug 2022-03-09 14:26:51 +08:00
c8fef47035 fix bug 2022-03-09 14:25:04 +08:00
bd75592478 fix bug 2022-03-09 14:23:24 +08:00
98e10f6767 fix bug 2022-03-09 14:14:36 +08:00
e1f4be6b8b Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 13:41:05 +08:00
c97712027d fix bug 2022-03-09 13:41:01 +08:00
6c47267388 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 11:12:40 +08:00
26ae59d300 edit 2022-03-09 11:12:33 +08:00
fed2710f5c Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-09 10:59:18 +08:00
7b93976dbf fix style 2022-03-09 10:59:13 +08:00
2191dbc899 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 10:42:41 +08:00
498ff78ae2 fix bug 2022-03-09 10:42:34 +08:00
d97800841d Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-09 10:34:37 +08:00
ecc9dfe5cf edit 2022-03-09 10:34:32 +08:00
cf2e3c6351 fix bug 2022-03-09 10:27:21 +08:00
a11bb90f20 fix bug 2022-03-09 10:15:27 +08:00
9c9b45f96a fix bug 2022-03-08 19:39:21 +08:00
75e4c51846 fix bug 2022-03-08 19:32:21 +08:00
ce4f1e1ed1 fix bug 2022-03-08 19:24:33 +08:00
334a8bf58c fix bug 2022-03-08 19:10:50 +08:00
0a649e65c2 fix bug 2022-03-08 19:07:46 +08:00
bbd531326a fix bug 2022-03-08 18:59:25 +08:00
14cba100e4 fix bug 2022-03-08 14:45:47 +08:00
83deb7c465 fix bug 2022-03-08 14:38:12 +08:00
cc2dc19a3d fix bug 2022-03-08 14:06:58 +08:00
5d07a64d3b fix bug 2022-03-08 14:05:32 +08:00
8781bcf586 fix bug 2022-03-08 14:00:17 +08:00
5fd558627f fix bug 2022-03-08 13:56:54 +08:00
3db73b9509 fix bug 2022-03-08 13:48:02 +08:00
e6efbd0d20 fix bug 2022-03-08 13:31:12 +08:00
cfba5ed3ad Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-08 13:22:21 +08:00
29a18967c9 fix bug 2022-03-08 13:22:17 +08:00
96a23ebbcf fix style 2022-03-07 20:29:16 +08:00
07589c8452 fix style 2022-03-07 20:28:44 +08:00
9b7b07397b fix style 2022-03-07 20:27:13 +08:00
9894aafcc1 指派熟车优化 2022-03-07 19:23:33 +08:00
cf4498db3e fix bug 2022-03-07 17:57:01 +08:00
f09404d89b fix bug 2022-03-07 17:53:07 +08:00
b5ef3908e8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 17:50:02 +08:00
1e7171cb23 fix bug 2022-03-07 17:49:58 +08:00
658f1666be e 2022-03-07 17:42:58 +08:00
83d43d2f15 e 2022-03-07 17:37:57 +08:00
be1e86601a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 17:34:02 +08:00
476d3f6587 e 2022-03-07 17:33:54 +08:00
12cc256741 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 17:32:23 +08:00
258fe9f356 fix bug 2022-03-07 17:32:19 +08:00
add1a9bae3 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 17:30:29 +08:00
7cfa2cc415 e 2022-03-07 17:30:21 +08:00
0d12b0bfa1 fix bug 2022-03-07 17:27:43 +08:00
4d61c136ff fix bug 2022-03-07 17:05:09 +08:00
31959f9cbf fix bug 2022-03-07 16:45:08 +08:00
4593e3240e fix bug 2022-03-07 16:40:52 +08:00
e61ba7f25e fix bug 2022-03-07 16:23:33 +08:00
ef1f8e98e7 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 16:20:45 +08:00
28837d56a6 e 2022-03-07 16:20:41 +08:00
1481a0ffd4 fix bug 2022-03-07 16:14:35 +08:00
e231debd6a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 16:13:15 +08:00
e01ed4dc55 fix bug 2022-03-07 16:13:11 +08:00
d97347e720 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 16:11:21 +08:00
e066cb7850 e 2022-03-07 16:11:13 +08:00
2c1ae2ba1f fix bug 2022-03-07 15:59:22 +08:00
092f0d41e8 fix bug 2022-03-07 15:58:36 +08:00
1457c37fb5 fix bug 2022-03-07 15:46:28 +08:00
74e43e1157 fix bug 2022-03-07 15:37:37 +08:00
77252eb351 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 15:35:44 +08:00
916e0f9c0f e 2022-03-07 15:35:40 +08:00
0230134320 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 15:28:55 +08:00
0d36482e6d fix bug 2022-03-07 15:28:52 +08:00
7b9de7fffc Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 15:22:50 +08:00
431eb70c66 e 2022-03-07 15:22:43 +08:00
119408bcf7 fix bug 2022-03-07 15:16:41 +08:00
07c5ba0884 fix bug 2022-03-07 14:56:54 +08:00
70d7746f83 fix bug 2022-03-07 14:17:16 +08:00
c3ebf69caa Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 14:01:56 +08:00
02014f4b21 fix bug 2022-03-07 14:01:53 +08:00
c11d9f3fa0 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 11:23:02 +08:00
9f0b3da44c e 2022-03-07 11:22:56 +08:00
60b101f2bb fix bug 2022-03-07 11:13:48 +08:00
101eca6093 fix bug 2022-03-07 10:51:09 +08:00
2bb30f16b3 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 10:43:40 +08:00
740d7317d4 fix bug 2022-03-07 10:43:36 +08:00
198d9bf776 e 2022-03-07 10:33:39 +08:00
abfaba97b0 e 2022-03-07 10:10:23 +08:00
dc8f5eb36c e 2022-03-07 09:57:05 +08:00
17341ddbee e 2022-03-07 09:51:44 +08:00
ff020f5a35 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-07 09:31:51 +08:00
bcb4f3cf56 e 2022-03-07 09:31:46 +08:00
3f80d30e34 Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-04 18:04:07 +08:00
c402fedde3 fix style 2022-03-04 18:04:03 +08:00
c4b7953692 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 17:43:50 +08:00
9b22d97696 - 2022-03-04 17:43:35 +08:00
ac5bb6ab7e fix bug 2022-03-04 16:48:04 +08:00
855615d1ff fix bug 2022-03-04 16:14:22 +08:00
99d00bafa8 fix bug 2022-03-04 15:36:26 +08:00
d4dd453308 fix bug 2022-03-04 15:21:52 +08:00
dabe8ba00e edit 2022-03-04 15:17:31 +08:00
0307a0852a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 15:14:12 +08:00
17ce3dd481 edit 2022-03-04 15:14:03 +08:00
ea95821644 fix bug 2022-03-04 15:12:13 +08:00
3341787481 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 15:08:34 +08:00
2c46fd77bd fix bug 2022-03-04 15:08:30 +08:00
5db0abb42e Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 14:57:03 +08:00
07553918d0 edit 2022-03-04 14:56:56 +08:00
05b878ddcd fix bug 2022-03-04 14:35:32 +08:00
c32f0ea95b fix bug 2022-03-04 14:25:43 +08:00
021ce61aca fix bug 2022-03-04 14:24:40 +08:00
3387c37e6a fix bug 2022-03-04 14:15:33 +08:00
7463eb6425 fix bug 2022-03-04 14:07:58 +08:00
9bc65559a1 fix bug 2022-03-04 13:53:09 +08:00
0270e41c4a fix bug 2022-03-04 13:40:25 +08:00
52f0f576ac fix bug 2022-03-04 13:37:44 +08:00
b721df986a fix bug 2022-03-04 13:36:29 +08:00
bd6fa847fa Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 13:34:16 +08:00
a98a0592ea fix bug 2022-03-04 13:34:13 +08:00
a1a73bebfa Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 11:03:34 +08:00
2a3a59737c edit 2022-03-04 11:03:26 +08:00
3b884de222 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 10:47:01 +08:00
3ae4aa04e2 fix bug 2022-03-04 10:46:57 +08:00
779c29fe6c Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-04 10:45:10 +08:00
51e7ebf4d3 edit 2022-03-04 10:45:05 +08:00
ff9a59a759 fix bug 2022-03-04 10:04:21 +08:00
82dc8255c1 fix bug 2022-03-04 10:00:04 +08:00
a44a441203 fix bug 2022-03-04 09:57:44 +08:00
3274d6b5b0 fix bug 2022-03-04 09:48:16 +08:00
1f806432d1 fix bug 2022-03-04 09:47:58 +08:00
43a9d48930 fix bug 2022-03-04 09:38:49 +08:00
2d7f75d90c fix bug 2022-03-04 09:34:35 +08:00
46227ebd48 fix bug 2022-03-03 16:34:33 +08:00
ad9ee653df fix bug 2022-03-03 16:33:01 +08:00
2296944130 fix bug 2022-03-03 16:02:27 +08:00
df1bcf4654 fix bug 2022-03-03 15:45:44 +08:00
263a8323de Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-03 15:36:57 +08:00
691567904b fix bug 2022-03-03 15:36:54 +08:00
fc83ed140f edit 2022-03-03 15:20:48 +08:00
a6153323dd Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-03 15:13:02 +08:00
73c3ce6c4f fix bug 2022-03-03 15:12:48 +08:00
c69e21bd62 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-03 14:43:14 +08:00
d57d146689 edit 2022-03-03 14:43:10 +08:00
23b0512e9c fix bug 2022-03-03 14:27:42 +08:00
9afb89b82b Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-03 14:13:17 +08:00
d1fa642b83 fix bug 2022-03-03 14:13:13 +08:00
21cef66d34 edit 2022-03-03 13:52:32 +08:00
805ac57f02 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-03 11:25:07 +08:00
d840353041 edit 2022-03-03 11:25:03 +08:00
f2926288fa Merge branch 'develop' of gitlab.eascs.com:tms-ui/tms-obc-web into develop 2022-03-03 10:39:39 +08:00
581303f794 fix bug 2022-03-03 10:39:36 +08:00
c66e1ae3a9 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-03 10:05:52 +08:00
c37bbdaf56 edit 2022-03-03 10:05:47 +08:00
2e5164fe3c fix bug 2022-03-02 20:57:40 +08:00
8e8dac953c fix bug 2022-03-02 18:59:43 +08:00
69ba80fd81 fix bug 2022-03-02 18:09:16 +08:00
5bb4c67981 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 18:07:50 +08:00
c1347bd394 fix bug 2022-03-02 18:07:40 +08:00
60dff3a432 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 18:00:56 +08:00
dc42b429cf edit 2022-03-02 18:00:51 +08:00
399db8c601 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 18:00:47 +08:00
b746d33dd2 fix bug 2022-03-02 18:00:38 +08:00
b60bdb4b9d Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 17:53:32 +08:00
5387c5d882 edit 2022-03-02 17:53:29 +08:00
946bd59ffb fix bug 2022-03-02 17:50:07 +08:00
90a626c601 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 17:37:19 +08:00
60d00f960c fix bug 2022-03-02 17:37:11 +08:00
a8ed4b0000 edit 2022-03-02 17:30:58 +08:00
f5c85c6cfc Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 17:29:16 +08:00
a017104170 edit 2022-03-02 17:29:08 +08:00
67e54f2a13 fix bug 2022-03-02 17:18:42 +08:00
bf14ddd7eb fix bug 2022-03-02 17:02:10 +08:00
6d43d3af33 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 16:55:41 +08:00
5a7e7df5c5 fix bug 2022-03-02 16:55:35 +08:00
c7e25414bf Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 16:48:58 +08:00
ec47e67b21 edit 2022-03-02 16:48:49 +08:00
899c708482 fix bug 2022-03-02 16:43:48 +08:00
f3ede6c5f0 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 16:42:27 +08:00
ce57fe029e edit 2022-03-02 16:42:19 +08:00
3b016972b0 fix bug 2022-03-02 16:39:24 +08:00
6bcc71ab8e fix bug 2022-03-02 16:34:41 +08:00
35c459895e fix bug 2022-03-02 16:34:35 +08:00
01a406dcef fix bug 2022-03-02 16:30:31 +08:00
46f30b73d1 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 16:30:23 +08:00
1155b23859 fix bug 2022-03-02 16:30:19 +08:00
6b890e638c edit 2022-03-02 16:17:29 +08:00
8994bf293b Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 16:15:43 +08:00
6908a84e25 edit 2022-03-02 16:15:39 +08:00
1db6ff1c4e fix bug 2022-03-02 15:59:29 +08:00
4b5e42e7c9 fix bug 2022-03-02 15:54:19 +08:00
a9e132a581 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 15:52:33 +08:00
ea2b5eec18 货源详情进度条添加操作时间 2022-03-02 15:51:24 +08:00
82c3801cc6 fix bug 2022-03-02 15:43:25 +08:00
f3e01dcfc1 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 15:42:26 +08:00
0ea96ff327 fix bug 2022-03-02 15:42:17 +08:00
3e08b87143 ed9t 2022-03-02 15:37:31 +08:00
7b557900b5 ed9t 2022-03-02 15:25:50 +08:00
e2f5538da9 ed9t 2022-03-02 15:22:02 +08:00
38e3b08b5b Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 15:18:39 +08:00
ce3cb31a3c ed9t 2022-03-02 15:18:31 +08:00
4b601bda42 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 15:02:00 +08:00
d04868e8b7 fix bug 2022-03-02 15:01:56 +08:00
1541b399ba Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 14:58:37 +08:00
1fb6d0e872 edit 2022-03-02 14:58:33 +08:00
ad612a0c82 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 14:31:17 +08:00
84a7cd4ddc fix bug 2022-03-02 14:31:14 +08:00
0d73bbde38 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 14:30:41 +08:00
ab6f1c6865 edit 2022-03-02 14:30:37 +08:00
e66779ecb3 fix bug 2022-03-02 14:29:37 +08:00
0ae6f030be fix bug 2022-03-02 14:16:26 +08:00
c16b7e82c8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 13:52:59 +08:00
6eeb714434 fix bug 2022-03-02 13:52:51 +08:00
62e15f69ea Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 13:52:47 +08:00
38310cb8b6 edit 2022-03-02 13:52:42 +08:00
5731b47703 fix bug 2022-03-02 13:47:20 +08:00
ad13d4b11f fix bug 2022-03-02 11:15:59 +08:00
e2aeba236f fix bug 2022-03-02 11:02:57 +08:00
8ad305a271 fix bug 2022-03-02 10:41:25 +08:00
ebf2443425 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 10:30:16 +08:00
b060c0e53c fix bug 2022-03-02 10:30:11 +08:00
79e79e56e1 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-02 10:22:42 +08:00
90b4337d48 edit 2022-03-02 10:22:33 +08:00
8344c23453 fix bug 2022-03-02 09:53:31 +08:00
803e3f3f77 fix bug 2022-03-02 09:36:42 +08:00
59fe0d3b2f Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 19:59:27 +08:00
f2ac497c48 fix bug 2022-03-01 19:59:23 +08:00
dcfb0e08cb edit 2022-03-01 19:48:16 +08:00
b61340b451 edit 2022-03-01 19:37:20 +08:00
dfda671a33 edit 2022-03-01 19:35:30 +08:00
b98ab6cebe Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 19:29:41 +08:00
024a251cf8 edit 2022-03-01 19:29:38 +08:00
e983ba5457 fix bug 2022-03-01 19:27:50 +08:00
ba3cede3d8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 19:16:14 +08:00
9239beba33 fix bug 2022-03-01 19:16:05 +08:00
1c15aa0813 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 19:15:39 +08:00
4553ead247 edit 2022-03-01 19:15:36 +08:00
61960380e8 更改大宗货主二维码内容 2022-03-01 17:52:36 +08:00
31b1cf15c4 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 16:40:04 +08:00
9aaa481380 edit 2022-03-01 16:39:53 +08:00
36c38de600 fix bug 2022-03-01 16:32:10 +08:00
a6d213b07c fix bug 2022-03-01 16:16:53 +08:00
4a2a9fa1c0 edit 2022-03-01 16:15:05 +08:00
3608442c40 edit 2022-03-01 16:05:24 +08:00
886a81a19b edit 2022-03-01 15:45:06 +08:00
b729266c6a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 15:25:25 +08:00
3845400bfa edit 2022-03-01 15:25:18 +08:00
5f8594c3ac fix bug 2022-03-01 15:07:26 +08:00
73b1521523 fix bug 2022-03-01 15:05:20 +08:00
36937f229f Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 14:55:44 +08:00
1866410a23 fix bug 2022-03-01 14:55:40 +08:00
8aaf8b8ab4 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 14:31:42 +08:00
615b70a494 edit 2022-03-01 14:31:37 +08:00
201b0eaa1a fix bug 2022-03-01 14:30:58 +08:00
adbe2a402f 解决冲突 2022-03-01 14:04:28 +08:00
b9f582e383 解决冲突 2022-03-01 14:00:53 +08:00
c56013d9ea 解决冲突 2022-03-01 13:59:37 +08:00
c20220da1d 解决冲突 2022-03-01 13:44:01 +08:00
7c9217dbaa Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 13:42:57 +08:00
650fe2cbdb 解决冲突 2022-03-01 13:42:48 +08:00
46ee90bc8d Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 13:42:19 +08:00
9be4b2a5f1 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 13:42:11 +08:00
dfff01a8ee edit 2022-03-01 13:42:06 +08:00
192ed6dfbf 解决冲突 2022-03-01 13:42:02 +08:00
d974a06c10 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-03-01 13:28:00 +08:00
bbd4daa4f6 解决冲突 2022-03-01 13:27:56 +08:00
b405f2403e edit 2022-03-01 10:51:46 +08:00
f31b8a0d12 edit 2022-03-01 09:00:00 +08:00
ee21385d16 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 20:59:18 +08:00
b03ed166ed edit 2022-02-28 20:59:10 +08:00
317efcdb2a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 20:57:26 +08:00
3088476b67 解决冲突 2022-02-28 20:57:17 +08:00
1253266e23 edit 2022-02-28 20:49:20 +08:00
84d7cf5658 edit 2022-02-28 20:45:33 +08:00
bc5e72bc77 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 20:44:02 +08:00
4af2374189 edit 2022-02-28 20:43:59 +08:00
88f4d1f195 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 20:41:08 +08:00
8b03d58fa2 解决冲突 2022-02-28 20:40:54 +08:00
d7742c86df Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 20:37:01 +08:00
2c42d31ea5 edit 2022-02-28 20:36:57 +08:00
28f4c8077c 解决冲突 2022-02-28 20:34:01 +08:00
57d567a8f5 解决冲突 2022-02-28 20:23:19 +08:00
b22ef98056 解决冲突 2022-02-28 20:03:30 +08:00
438484699d Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 20:02:09 +08:00
389c5cd7cf edit 2022-02-28 20:02:04 +08:00
7a6a2454a0 解决冲突 2022-02-28 19:48:06 +08:00
9e439827a5 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 19:43:55 +08:00
f181229238 解决冲突 2022-02-28 19:43:46 +08:00
857320d5d3 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 19:38:34 +08:00
524610ed8a edit 2022-02-28 19:38:27 +08:00
c4ea948c73 解决冲突 2022-02-28 19:37:40 +08:00
f08a45af4f Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 19:31:37 +08:00
172ecc6263 解决冲突 2022-02-28 19:31:33 +08:00
804f25d245 edit 2022-02-28 19:30:17 +08:00
5418e008d6 edit 2022-02-28 19:19:56 +08:00
635ead98ce edit 2022-02-28 19:14:33 +08:00
cad95183d5 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 19:12:47 +08:00
a0827b825a edit 2022-02-28 19:12:43 +08:00
8555bb7f39 fix bug 2022-02-28 17:01:25 +08:00
8e0ea9bf23 fix bug 2022-02-28 16:59:14 +08:00
f3a1e96d86 fix bug 2022-02-28 16:47:57 +08:00
545b867fc1 fix bug 2022-02-28 16:24:04 +08:00
756bed1e72 fix bug 2022-02-28 15:56:51 +08:00
394aba4ba1 fix bug 2022-02-28 15:55:57 +08:00
6e15440832 edit 2022-02-28 15:20:41 +08:00
03b1d6da82 fix bug 2022-02-28 14:19:51 +08:00
74e223270e fix bug 2022-02-28 14:16:12 +08:00
abe096d5b5 fix bug 2022-02-28 14:15:29 +08:00
aee194c49a fix bug 2022-02-28 14:00:19 +08:00
a084105110 fix bug 2022-02-28 13:41:36 +08:00
d9e8618848 fix bug 2022-02-28 13:40:59 +08:00
121ce5c789 fix bug 2022-02-28 13:36:47 +08:00
d88c7f8a70 fix bug 2022-02-28 13:32:14 +08:00
5b30dc34bb fix bug 2022-02-28 12:02:58 +08:00
eaaa448e3f fix bug 2022-02-28 11:59:01 +08:00
56ca4e7305 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 11:56:06 +08:00
a8a160c1cd fix bug 2022-02-28 11:56:03 +08:00
484a67fbd7 edit 2022-02-28 11:42:51 +08:00
f3062a3cad Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 11:41:04 +08:00
d55ff3f838 edit 2022-02-28 11:41:00 +08:00
33b695729a Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 11:39:45 +08:00
be1053eb70 fix bug 2022-02-28 11:39:42 +08:00
cba70f810e Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 11:38:51 +08:00
23df1cc8fc edit 2022-02-28 11:38:47 +08:00
e9c75fdba6 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 11:33:52 +08:00
dbb52f85bf fix bug 2022-02-28 11:33:47 +08:00
2b013e0e48 edit 2022-02-28 11:27:33 +08:00
17357934fb edit 2022-02-28 09:23:55 +08:00
bd9cf612ff edit 2022-02-28 09:13:16 +08:00
5452dc7f1f edit 2022-02-28 09:09:05 +08:00
d5b6e01748 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-28 09:07:08 +08:00
66eb9ad99d edit 2022-02-28 09:07:03 +08:00
579b158b04 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 17:36:39 +08:00
5b2d025ee1 解决冲突 2022-02-25 17:36:36 +08:00
064fbc0113 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 17:22:32 +08:00
c3250853c5 edit 2022-02-25 17:22:24 +08:00
73758b266f Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 17:19:24 +08:00
8d4c408e95 解决冲突 2022-02-25 17:19:20 +08:00
db73552c90 edit 2022-02-25 17:19:03 +08:00
9955d29d76 edit 2022-02-25 17:08:11 +08:00
19a0e94828 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 16:51:10 +08:00
5a0ee17710 edit 2022-02-25 16:51:06 +08:00
4685f7ed60 解决冲突 2022-02-25 16:39:11 +08:00
a93c4fa051 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 16:32:51 +08:00
e9e4941bf9 解决冲突 2022-02-25 16:32:47 +08:00
52440f9f66 edit 2022-02-25 16:31:45 +08:00
f3a30b5e0e edit 2022-02-25 15:58:42 +08:00
2ac8c31341 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 15:57:14 +08:00
9b4c13f596 edit 2022-02-25 15:57:11 +08:00
8da9e7a56f 解决冲突 2022-02-25 15:53:09 +08:00
deb9848fb7 解决冲突 2022-02-25 15:36:58 +08:00
da6bf03ad8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 15:35:05 +08:00
d734ec5f72 解决冲突 2022-02-25 15:35:01 +08:00
d79ff8fc01 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 15:28:01 +08:00
385bbaa82b edit 2022-02-25 15:27:56 +08:00
4520daabe9 解决冲突 2022-02-25 15:25:58 +08:00
c7b73031c8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 15:23:54 +08:00
9629a9ee72 解决冲突 2022-02-25 15:23:50 +08:00
5830166b7b Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 15:08:35 +08:00
30b24c2e7a edit 2022-02-25 15:08:32 +08:00
a6c2aa38c4 解决冲突 2022-02-25 15:00:45 +08:00
9d62915ead 解决冲突 2022-02-25 14:04:24 +08:00
3c44e98401 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 14:01:14 +08:00
0b2c96e212 解决冲突 2022-02-25 14:01:05 +08:00
ca31caa229 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 13:40:43 +08:00
d6238b7fc0 edit 2022-02-25 13:40:35 +08:00
673df55bfe 解决冲突 2022-02-25 13:36:29 +08:00
1aa240b296 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 13:35:42 +08:00
be1ffd4cee 解决冲突 2022-02-25 13:35:38 +08:00
c1ee31e729 edit 2022-02-25 13:33:54 +08:00
61458da6eb Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 13:31:46 +08:00
552966a087 edit 2022-02-25 13:31:41 +08:00
891d346ad1 解决冲突 2022-02-25 13:28:59 +08:00
762cdc41e5 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 11:19:11 +08:00
f666675c47 解决冲突 2022-02-25 11:19:07 +08:00
c75f26fcf7 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 11:17:35 +08:00
4cd04a0671 edit 2022-02-25 11:17:21 +08:00
e7e0d68dcd Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-25 10:34:32 +08:00
f7cfe15de3 解决冲突 2022-02-25 10:34:28 +08:00
2c2715acf0 edit 2022-02-24 20:45:50 +08:00
7f7ee30ff3 edit 2022-02-24 20:36:58 +08:00
5687f333aa edit 2022-02-24 20:28:25 +08:00
c1c36543e7 edit 2022-02-24 20:22:42 +08:00
f69d4595a9 edit 2022-02-24 20:21:20 +08:00
c1749e383c 解决冲突 2022-02-24 20:07:16 +08:00
2107de50d7 解决冲突 2022-02-24 20:04:18 +08:00
36166726ed 解决冲突 2022-02-24 19:32:24 +08:00
6dcbdfaf94 解决冲突 2022-02-24 19:20:58 +08:00
90461ee459 解决冲突 2022-02-24 17:39:37 +08:00
97fde5d6b9 解决冲突 2022-02-24 17:36:11 +08:00
f7efbe28c0 edit 2022-02-24 17:16:16 +08:00
c1f01ad245 edit 2022-02-24 17:07:11 +08:00
51c750a712 edit 2022-02-24 17:02:49 +08:00
a37e60ad9f edit 2022-02-24 17:01:09 +08:00
4bf8e47206 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-24 16:53:18 +08:00
24596c388d edit 2022-02-24 16:53:11 +08:00
68806a8d60 解决冲突 2022-02-24 16:41:38 +08:00
f39b829d5d 解决冲突 2022-02-24 16:40:23 +08:00
b0a301564b 解决冲突 2022-02-24 16:31:01 +08:00
0e4a6c792b 解决冲突 2022-02-24 16:02:55 +08:00
af019cb962 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-24 15:34:40 +08:00
d06b7ca974 edit 2022-02-24 15:34:36 +08:00
d1b933fc2d 解决冲突 2022-02-24 14:37:59 +08:00
5fc5dd07a7 解决冲突 2022-02-24 14:35:53 +08:00
cbecaeaa15 解决冲突 2022-02-24 14:01:02 +08:00
329bca0f9a 解决冲突 2022-02-24 11:10:46 +08:00
ad8134c120 解决冲突 2022-02-24 10:51:31 +08:00
a4a2b45911 解决冲突 2022-02-24 10:45:58 +08:00
6881329df6 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-24 10:33:39 +08:00
0147e0034d 解决冲突 2022-02-24 10:33:35 +08:00
f1fde49ea8 edit 2022-02-23 20:31:15 +08:00
18de3e1fbe edit 2022-02-23 20:31:07 +08:00
ded7f094e5 e 2022-02-23 20:24:36 +08:00
3597eff6c8 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-23 20:03:21 +08:00
55f751a22e e 2022-02-23 20:03:17 +08:00
6f8929037e 解决冲突 2022-02-23 19:39:42 +08:00
6fffab32a4 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-23 19:38:22 +08:00
f40c5a53a4 解决冲突 2022-02-23 19:38:18 +08:00
01d4c7bc0b edit 2022-02-23 19:30:22 +08:00
a1b8ca48cc edit 2022-02-23 19:23:57 +08:00
91a547c570 edit 2022-02-23 17:33:55 +08:00
53a8809f64 edit 2022-02-23 17:01:01 +08:00
f763db279d edit 2022-02-23 16:50:40 +08:00
0c7b051d75 Merge branch 'develop' of https://gitlab.eascs.com/tms-ui/tms-obc-web into develop 2022-02-23 16:44:30 +08:00
b9981b5fb1 edit 2022-02-23 16:44:27 +08:00
395 changed files with 14322 additions and 7180 deletions

View File

@ -35,8 +35,19 @@
"styles": [ "styles": [
"node_modules/perfect-scrollbar/css/perfect-scrollbar.css", "node_modules/perfect-scrollbar/css/perfect-scrollbar.css",
"node_modules/quill/dist/quill.snow.css", "node_modules/quill/dist/quill.snow.css",
"src/styles.less" "src/styles.less",
{
"input": "src/styles/default.less",
"bundleName": "default",
"inject": false
},
{
"input": "src/styles/compact.less",
"bundleName": "compact",
"inject": false
}
], ],
"scripts": [ "scripts": [
"node_modules/quill/dist/quill.min.js", "node_modules/quill/dist/quill.min.js",
"node_modules/perfect-scrollbar/dist/perfect-scrollbar.js", "node_modules/perfect-scrollbar/dist/perfect-scrollbar.js",

40
package-lock.json generated
View File

@ -5172,6 +5172,14 @@
} }
} }
}, },
"css-line-break": {
"version": "2.1.0",
"resolved": "https://registry.npmjs.org/css-line-break/-/css-line-break-2.1.0.tgz",
"integrity": "sha512-FHcKFCZcAha3LwfVBhCQbW2nCNbkZXn7KVUJcsT5/P8YmfsVja0FMPJr0B903j/E69HUphKiV9iQArX8SDYA4w==",
"requires": {
"utrie": "^1.0.2"
}
},
"css-loader": { "css-loader": {
"version": "6.2.0", "version": "6.2.0",
"resolved": "https://registry.npmmirror.com/css-loader/download/css-loader-6.2.0.tgz?cache=0&sync_timestamp=1635967924209&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcss-loader%2Fdownload%2Fcss-loader-6.2.0.tgz", "resolved": "https://registry.npmmirror.com/css-loader/download/css-loader-6.2.0.tgz?cache=0&sync_timestamp=1635967924209&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fcss-loader%2Fdownload%2Fcss-loader-6.2.0.tgz",
@ -8113,6 +8121,15 @@
"integrity": "sha1-e15vfmZen7QfMAB+2eDUHpf7IUA=", "integrity": "sha1-e15vfmZen7QfMAB+2eDUHpf7IUA=",
"dev": true "dev": true
}, },
"html2canvas": {
"version": "1.4.1",
"resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.4.1.tgz",
"integrity": "sha512-fPU6BHNpsyIhr8yyMpTLLxAbkaK8ArIBcmZIRiBLiDhjeqvXolaEmDGmELFuX9I4xDcaKKcJl+TKZLqruBbmWA==",
"requires": {
"css-line-break": "^2.1.0",
"text-segmentation": "^1.0.3"
}
},
"htmlparser2": { "htmlparser2": {
"version": "3.10.1", "version": "3.10.1",
"resolved": "https://registry.npmmirror.com/htmlparser2/download/htmlparser2-3.10.1.tgz?cache=0&sync_timestamp=1636640940074&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fhtmlparser2%2Fdownload%2Fhtmlparser2-3.10.1.tgz", "resolved": "https://registry.npmmirror.com/htmlparser2/download/htmlparser2-3.10.1.tgz?cache=0&sync_timestamp=1636640940074&other_urls=https%3A%2F%2Fregistry.npmmirror.com%2Fhtmlparser2%2Fdownload%2Fhtmlparser2-3.10.1.tgz",
@ -22662,6 +22679,14 @@
} }
} }
}, },
"text-segmentation": {
"version": "1.0.3",
"resolved": "https://registry.npmjs.org/text-segmentation/-/text-segmentation-1.0.3.tgz",
"integrity": "sha512-iOiPUo/BGnZ6+54OsWxZidGCsdU8YbE4PSpdPinp7DeMtUJNJBoJ/ouUSTJjHkh1KntHaltHl/gDs2FC4i5+Nw==",
"requires": {
"utrie": "^1.0.2"
}
},
"text-table": { "text-table": {
"version": "0.2.0", "version": "0.2.0",
"resolved": "https://registry.npm.taobao.org/text-table/download/text-table-0.2.0.tgz", "resolved": "https://registry.npm.taobao.org/text-table/download/text-table-0.2.0.tgz",
@ -23211,6 +23236,21 @@
"integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=", "integrity": "sha1-n5VxD1CiZ5R7LMwSR0HBAoQn5xM=",
"dev": true "dev": true
}, },
"utrie": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/utrie/-/utrie-1.0.2.tgz",
"integrity": "sha512-1MLa5ouZiOmQzUbjbu9VmjLzn1QLXBhwpUa7kdLUQK+KQ5KA9I1vk5U4YHe/X2Ch7PYnJfWuWT+VbuxbGwljhw==",
"requires": {
"base64-arraybuffer": "^1.0.2"
},
"dependencies": {
"base64-arraybuffer": {
"version": "1.0.2",
"resolved": "https://registry.npmjs.org/base64-arraybuffer/-/base64-arraybuffer-1.0.2.tgz",
"integrity": "sha512-I3yl4r9QB5ZRY3XuJVEPfc2XhZO6YweFPI+UovAzn+8/hb3oJ6lnysaFcjVpkCPfVWFUDvoZ8kmVDP7WyRtYtQ=="
}
}
},
"uuid": { "uuid": {
"version": "3.4.0", "version": "3.4.0",
"resolved": "https://registry.npmmirror.com/uuid/download/uuid-3.4.0.tgz", "resolved": "https://registry.npmmirror.com/uuid/download/uuid-3.4.0.tgz",

View File

@ -1,7 +1,7 @@
{ {
"name": "tms-obc-web", "name": "tms-obc-web",
"version": "0.0.0", "version": "0.0.0",
"description": "运营后台WEB", "description": "运营后台-WEB",
"author": "cipchk <cipchk@qq.com>", "author": "cipchk <cipchk@qq.com>",
"repository": { "repository": {
"type": "git", "type": "git",
@ -12,6 +12,7 @@
"ng-high-memory": "node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng", "ng-high-memory": "node --max_old_space_size=8000 ./node_modules/@angular/cli/bin/ng",
"ng": "ng", "ng": "ng",
"start": "ng s -o --port 4202 --host 0.0.0.0", "start": "ng s -o --port 4202 --host 0.0.0.0",
"startIp": "ng serve -o --port 4202 --host 172.29.9.71 --open",
"hmr": "ng s -o --hmr", "hmr": "ng s -o --hmr",
"build": "npm run ng-high-memory build --", "build": "npm run ng-high-memory build --",
"build:dev": "npm run build -- -c dev", "build:dev": "npm run build -- -c dev",
@ -56,6 +57,7 @@
"@swimlane/ngx-charts": "^18.0.1", "@swimlane/ngx-charts": "^18.0.1",
"ajv": "^8.6.2", "ajv": "^8.6.2",
"file-saver": "^2.0.5", "file-saver": "^2.0.5",
"html2canvas": "^1.4.1",
"js-base64": "^3.6.1", "js-base64": "^3.6.1",
"masonry-layout": "^4.2.2", "masonry-layout": "^4.2.2",
"ng-gallery": "^5.0.0", "ng-gallery": "^5.0.0",

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-18 09:51:21 * @Date : 2022-01-18 09:51:21
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-02-17 15:57:11 * @LastEditTime : 2022-03-23 15:21:39
* @FilePath : \\tms-obc-web\\proxy.conf.js * @FilePath : \\tms-obc-web\\proxy.conf.js
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -20,7 +20,7 @@ module.exports = {
// } // }
'//api': { '//api': {
target: { target: {
host: 'tms-api-dev.eascs.com', host: 'tms-api-test.eascs.com',
protocol: 'https:', protocol: 'https:',
port: 443 port: 443
}, },

View File

@ -5,6 +5,7 @@ import { environment } from '@env/environment';
import { NzIconService } from 'ng-zorro-antd/icon'; import { NzIconService } from 'ng-zorro-antd/icon';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { VERSION as VERSION_ZORRO } from 'ng-zorro-antd/version'; import { VERSION as VERSION_ZORRO } from 'ng-zorro-antd/version';
import { ThemeService } from './theme.service';
@Component({ @Component({
selector: 'app-root', selector: 'app-root',
@ -17,7 +18,8 @@ export class AppComponent implements OnInit {
private router: Router, private router: Router,
private titleSrv: TitleService, private titleSrv: TitleService,
private modalSrv: NzModalService, private modalSrv: NzModalService,
private iconService: NzIconService private iconService: NzIconService,
private themeService: ThemeService
) { ) {
renderer.setAttribute(el.nativeElement, 'ng-alain-version', VERSION_ALAIN.full); renderer.setAttribute(el.nativeElement, 'ng-alain-version', VERSION_ALAIN.full);
renderer.setAttribute(el.nativeElement, 'ng-zorro-version', VERSION_ZORRO.full); renderer.setAttribute(el.nativeElement, 'ng-zorro-version', VERSION_ZORRO.full);
@ -47,5 +49,15 @@ export class AppComponent implements OnInit {
this.modalSrv.closeAll(); this.modalSrv.closeAll();
} }
}); });
// 适配放大150%的屏幕
const screen: any = window.screen
var zoom = window.devicePixelRatio || screen.deviceXDPI / screen?.logicalXDPI;
// console.log(zoom)
if (document.body.clientWidth >= 1280) {
if (zoom != 1 && zoom != 2 && zoom != 3) {
this.themeService.toggleTheme().then();
}
}
} }
} }

View File

@ -34,6 +34,7 @@ export class StartupService {
private coreSrv: CoreService private coreSrv: CoreService
) { ) {
iconSrv.addIcon(...ICONS_AUTO, ...ICONS); iconSrv.addIcon(...ICONS_AUTO, ...ICONS);
this.settingService.setLayout('fixSiderbar', true);
} }
// TODO: 退出登录时需要清理用户信息 // TODO: 退出登录时需要清理用户信息
@ -95,7 +96,9 @@ export class StartupService {
// ACL设置权限为全量 // ACL设置权限为全量
this.aclService.setFull(false); this.aclService.setFull(false);
// 初始化菜单 // 初始化菜单
this.menuService.add(menuData); if (menuData) {
this.menuService.add(menuData);
}
// 设置页面标题的后缀 // 设置页面标题的后缀
this.titleService.default = ''; this.titleService.default = '';
this.titleService.suffix = appData.name; this.titleService.suffix = appData.name;
@ -134,12 +137,12 @@ export class StartupService {
const userData = this.httpClient.post(this.userSrv.$api_get_user_by_token, {}).pipe(map((res: any) => res.data)); const userData = this.httpClient.post(this.userSrv.$api_get_user_by_token, {}).pipe(map((res: any) => res.data));
// 菜单数据 // 菜单数据
// const menuData = this.httpClient const menuData = this.httpClient
// .post(this.coreSrv.$api_get_current_user_menus, { .post(this.coreSrv.$api_get_current_user_menus, {
// appId: this.coreSrv.envSrv.getEnvironment().appId appId: this.coreSrv.envSrv.getEnvironment().appId
// }) })
// .pipe(map((res: any) => res.data)); .pipe(map((res: any) => res.data));
const menuData = this.httpClient.get('assets/mocks/menu-data.json').pipe(map((res: any) => res.data.menu)); // const menuData = this.httpClient.get('assets/mocks/menu-data.json').pipe(map((res: any) => res.data.menu));
return zip(appData, userData, menuData); return zip(appData, userData, menuData);
} }

View File

@ -14,7 +14,7 @@ const alainConfig: AlainConfig = {
st: { st: {
req: { method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' } }, req: { method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' } },
res: { reName: { list: 'data.records', total: 'data.total' } }, res: { reName: { list: 'data.records', total: 'data.total' } },
page: { show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }, page: { show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000], toTop: false },
modal: { size: 'lg' } modal: { size: 'lg' }
}, },
sf: { button: { search: '查询' }, ui: { placeholder: '请输入' } }, sf: { button: { search: '查询' }, ui: { placeholder: '请输入' } },

View File

@ -0,0 +1,126 @@
body {
background : radial-gradient(ellipse at bottom, #1b2735 0%, #090a0f 100%);
height : 100vh;
overflow : hidden;
display : flex;
font-family : 'Anton', sans-serif;
justify-content: center;
align-items : center;
}
$shooting-time: 3000ms;
.night {
position : relative;
width : 100%;
height : 100%;
transform : rotateZ(45deg);
// animation: sky 200000ms linear infinite;
}
.shooting_star {
position : absolute;
left : 50%;
top : 50%;
// width: 100px;
height : 2px;
background : linear-gradient(-45deg, rgba(95, 145, 255, 1), rgba(0, 0, 255, 0));
border-radius: 999px;
filter : drop-shadow(0 0 6px rgba(105, 155, 255, 1));
animation :
tail $shooting-time ease-in-out infinite,
shooting $shooting-time ease-in-out infinite;
&::before {
content : '';
position : absolute;
top : calc(50% - 1px);
right : 0;
// width: 30px;
height : 2px;
background : linear-gradient(-45deg, rgba(0, 0, 255, 0), rgba(95, 145, 255, 1), rgba(0, 0, 255, 0));
transform : translateX(50%) rotateZ(45deg);
border-radius: 100%;
animation : shining $shooting-time ease-in-out infinite;
}
&::after {
// CodePen Error
// @extend .shooting_star::before;
content : '';
position : absolute;
top : calc(50% - 1px);
right : 0;
// width: 30px;
height : 2px;
background : linear-gradient(-45deg, rgba(0, 0, 255, 0), rgba(95, 145, 255, 1), rgba(0, 0, 255, 0));
transform : translateX(50%) rotateZ(45deg);
border-radius: 100%;
animation : shining $shooting-time ease-in-out infinite;
transform : translateX(50%) rotateZ(-45deg);
}
@for $i from 1 through 20 {
&:nth-child(#{$i}) {
$delay : random(9999) + 0ms;
top : calc(50% - #{random(400) - 200px});
left : calc(50% - #{random(300) + 0px});
// animation-delay: $delay;
// opacity: random(50) / 100 + 0.5;
&::before,
&::after {
// animation-delay: $delay;
}
}
}
}
@keyframes tail {
0% {
width: 0;
}
30% {
width: 100px;
}
100% {
width: 0;
}
}
@keyframes shining {
0% {
width: 0;
}
50% {
width: 30px;
}
100% {
width: 0;
}
}
@keyframes shooting {
0% {
transform: translateX(0);
}
100% {
transform: translateX(300px);
}
}
@keyframes sky {
0% {
transform: rotate(45deg);
}
100% {
transform: rotate(45 + 360deg);
}
}

View File

@ -0,0 +1,64 @@
$n: 20; // 流星數量
$shadow: ();
@for $i from 1 through $n {
$v: random(90) + 9; // left
$h: random(150) + 10; // top
$d: random(70)/10 + 12; // 秒數
.meteor-#{$i} {
position : fixed;
top : $h + px;
left : $v*1%;
width : 130px;
height : 1px;
transform : rotate(-45deg);
background-image: linear-gradient(to right, #fff, rgba(255, 255, 255, 0));
animation : meteor $d+s linear infinite;
&:before {
content : "";
position : fixed;
width : 4px;
height : 5px;
border-radius: 50%;
margin-top : -2px;
background : rgba(#fff, .7);
box-shadow : 0 0 15px 3px #fff;
}
}
}
@keyframes meteor {
0% {
opacity : 1;
margin-top : -300px;
margin-right: -300px;
}
12% {
opacity: 0;
}
13% {
margin-top : 600px;
margin-left : -900px;
opacity : 0.6;
animation-delay: 2000ms;
}
15% {
opacity: 0;
}
100% {
margin-top : 700px;
margin-left: -900px;
opacity : 0;
}
}

View File

@ -0,0 +1,325 @@
export default class Particle {
getLimitedRandom = function (min: number, max: number, roundToInteger?: any) {
var number = Math.random() * (max - min) + min;
if (roundToInteger) {
number = Math.round(number);
}
return number;
};
returnRandomArrayitem = function (array: string | any[]) {
return array[Math.floor(Math.random() * array.length)];
};
constructor() {}
init() {
var ParticleNetworkAnimation: any, PNA: any;
ParticleNetworkAnimation = PNA = function () {};
PNA.prototype.init = function (element: any) {
console.log(this);
this.$el = document.getElementsByClassName(element);
this.container = element;
this.canvas = document.createElement('canvas');
this.sizeCanvas();
this.container.appendChild(this.canvas);
this.ctx = this.canvas.getContext('2d');
this.particleNetwork = new ParticleNetwork(this);
this.bindUiActions();
return this;
};
PNA.prototype.bindUiActions = function () {
(window as any).on('resize', () => {
// this.sizeContainer();
this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.sizeCanvas();
this.particleNetwork.createParticles();
});
};
PNA.prototype.sizeCanvas = function () {
this.canvas.width = this.container.offsetWidth;
this.canvas.height = this.container.offsetHeight;
};
console.log(PNA);
const Particle: any = function (parent: any, x?: any, y?: any) {
// this.network = parent;
// this.canvas = parent.canvas;
// this.ctx = parent.ctx;
// this.particleColor = ;
// this.radius = ;
// this.opacity = 0;
// this.x = x || Math.random() * this.canvas.width;
// this.y = y || Math.random() * this.canvas.height;
// this.velocity = {
// x: (Math.random() - 0.5) * parent.options.velocity,
// y: (Math.random() - 0.5) * parent.options.velocity
// };
return {
network: parent,
canvas: parent.canvas,
ctx: parent.ctx,
// particleColor: this.returnRandomArrayitem(parent.options.particleColors),
// radius: this.getLimitedRandom(1.5, 2.5),
opacity: 0,
x: x || Math.random() * parent.canvas.width,
y: y || Math.random() * parent.canvas.height,
velocity: {
x: (Math.random() - 0.5) * parent.options.velocity,
y: (Math.random() - 0.5) * parent.options.velocity
}
};
};
console.log(new Particle(this));
Particle.prototype.update = function () {
if (this.opacity < 1) {
this.opacity += 0.01;
} else {
this.opacity = 1;
}
// Change dir if outside map
if (this.x > this.canvas.width + 100 || this.x < -100) {
this.velocity.x = -this.velocity.x;
}
if (this.y > this.canvas.height + 100 || this.y < -100) {
this.velocity.y = -this.velocity.y;
}
// Update position
this.x += this.velocity.x;
this.y += this.velocity.y;
};
Particle.prototype.draw = function () {
// Draw particle
this.ctx.beginPath();
this.ctx.fillStyle = this.particleColor;
this.ctx.globalAlpha = this.opacity;
this.ctx.arc(this.x, this.y, this.radius, 0, 2 * Math.PI);
this.ctx.fill();
};
var ParticleNetwork: any = function (this: any, parent: { canvas: any; ctx: any }) {
this.options = {
velocity: 1, // the higher the faster
density: 15000, // the lower the denser
netLineDistance: 200,
netLineColor: '#929292',
particleColors: ['#aaa'] // ['#6D4E5C', '#aaa', '#FFC458' ]
};
this.canvas = parent.canvas;
this.ctx = parent.ctx;
this.init();
};
ParticleNetwork.prototype.init = function () {
// Create particle objects
this.createParticles(true);
// Update canvas
this.animationFrame = requestAnimationFrame(this.update.bind(this));
this.bindUiActions();
};
ParticleNetwork.prototype.createParticles = function (isInitial: any) {
// Initialise / reset particles
var me = this;
this.particles = [];
var quantity = (this.canvas.width * this.canvas.height) / this.options.density;
if (isInitial) {
var counter = 0;
clearInterval(this.createIntervalId);
this.createIntervalId = setInterval(() => {
if (counter < quantity - 1) {
// Create particle object
this.particles.push(new Particle(this));
} else {
clearInterval(me.createIntervalId);
}
counter++;
}, 50);
} else {
// Create particle objects
for (var i = 0; i < quantity; i++) {
this.particles.push(new Particle(this));
}
}
};
ParticleNetwork.prototype.createInteractionParticle = function () {
// Add interaction particle
this.interactionParticle = new Particle(this);
this.interactionParticle.velocity = {
x: 0,
y: 0
};
this.particles.push(this.interactionParticle);
return this.interactionParticle;
};
ParticleNetwork.prototype.removeInteractionParticle = function () {
// Find it
var index = this.particles.indexOf(this.interactionParticle);
if (index > -1) {
// Remove it
this.interactionParticle = undefined;
this.particles.splice(index, 1);
}
};
ParticleNetwork.prototype.update = function () {
if (this.canvas) {
this.ctx.clearRect(0, 0, this.canvas.width, this.canvas.height);
this.ctx.globalAlpha = 1;
// Draw connections
for (var i = 0; i < this.particles.length; i++) {
for (var j = this.particles.length - 1; j > i; j--) {
var distance,
p1 = this.particles[i],
p2 = this.particles[j];
// check very simply if the two points are even a candidate for further measurements
distance = Math.min(Math.abs(p1.x - p2.x), Math.abs(p1.y - p2.y));
if (distance > this.options.netLineDistance) {
continue;
}
// the two points seem close enough, now let's measure precisely
distance = Math.sqrt(Math.pow(p1.x - p2.x, 2) + Math.pow(p1.y - p2.y, 2));
if (distance > this.options.netLineDistance) {
continue;
}
this.ctx.beginPath();
this.ctx.strokeStyle = this.options.netLineColor;
this.ctx.globalAlpha = ((this.options.netLineDistance - distance) / this.options.netLineDistance) * p1.opacity * p2.opacity;
this.ctx.lineWidth = 0.7;
this.ctx.moveTo(p1.x, p1.y);
this.ctx.lineTo(p2.x, p2.y);
this.ctx.stroke();
}
}
// Draw particles
for (var i = 0; i < this.particles.length; i++) {
this.particles[i].update();
this.particles[i].draw();
}
if (this.options.velocity !== 0) {
this.animationFrame = requestAnimationFrame(this.update.bind(this));
}
} else {
cancelAnimationFrame(this.animationFrame);
}
};
ParticleNetwork.prototype.bindUiActions = function () {
// Mouse / touch event handling
this.spawnQuantity = 3;
this.mouseIsDown = false;
this.touchIsMoving = false;
this.onMouseMove = (e: { offsetX: any; offsetY: any }) => {
if (!this.interactionParticle) {
this.createInteractionParticle();
}
this.interactionParticle.x = e.offsetX;
this.interactionParticle.y = e.offsetY;
};
this.onTouchMove = (e: { preventDefault: () => void; changedTouches: { clientX: any; clientY: any }[] }) => {
e.preventDefault();
this.touchIsMoving = true;
if (!this.interactionParticle) {
this.createInteractionParticle();
}
this.interactionParticle.x = e.changedTouches[0].clientX;
this.interactionParticle.y = e.changedTouches[0].clientY;
};
this.onMouseDown = () => {
this.mouseIsDown = true;
var counter = 0;
var quantity = this.spawnQuantity;
var intervalId = setInterval(() => {
if (this.mouseIsDown) {
if (counter === 1) {
quantity = 1;
}
for (var i = 0; i < quantity; i++) {
if (this.interactionParticle) {
this.particles.push(new Particle(this, this.interactionParticle.x, this.interactionParticle.y));
}
}
} else {
clearInterval(intervalId);
}
counter++;
}, 50);
};
this.onTouchStart = (e: { preventDefault: () => void; changedTouches: { clientX: any; clientY: any }[] }) => {
e.preventDefault();
setTimeout(() => {
if (!this.touchIsMoving) {
for (var i = 0; i < this.spawnQuantity; i++) {
this.particles.push(new Particle(this, e.changedTouches[0].clientX, e.changedTouches[0].clientY));
}
}
}, 200);
};
this.onMouseUp = () => {
this.mouseIsDown = false;
};
this.onMouseOut = function () {
this.removeInteractionParticle();
};
this.onTouchEnd = function (e: { preventDefault: () => void }) {
e.preventDefault();
this.touchIsMoving = false;
this.removeInteractionParticle();
};
// this.canvas.addEventListener('mousemove', this.onMouseMove);
// this.canvas.addEventListener('touchmove', this.onTouchMove);
// this.canvas.addEventListener('mousedown', this.onMouseDown);
// this.canvas.addEventListener('touchstart', this.onTouchStart);
// this.canvas.addEventListener('mouseup', this.onMouseUp);
// this.canvas.addEventListener('mouseout', this.onMouseOut);
// this.canvas.addEventListener('touchend', this.onTouchEnd);
};
ParticleNetwork.prototype.unbindUiActions = function () {
if (this.canvas) {
// this.canvas.removeEventListener('mousemove', this.onMouseMove);
// this.canvas.removeEventListener('touchmove', this.onTouchMove);
// this.canvas.removeEventListener('mousedown', this.onMouseDown);
// this.canvas.removeEventListener('touchstart', this.onTouchStart);
// this.canvas.removeEventListener('mouseup', this.onMouseUp);
// this.canvas.removeEventListener('mouseout', this.onMouseOut);
// this.canvas.removeEventListener('touchend', this.onTouchEnd);
}
};
const pna = new PNA();
console.log(pna);
pna.init(document.getElementsByClassName('particle-network-animation')[0]);
}
}

View File

@ -1,15 +1,67 @@
<nz-layout class="layout"> <nz-layout class="layout">
<nz-header> <!-- <nz-header style="z-index: 999;">
<div nz-row> <div nz-row>
<div nz-col nzSpan="24" style="display: flex;align-items: center;"> <div nz-col nzSpan="24" style="display: flex;align-items: center;">
<img width="32" height="32" src="./assets/images/user/logo.svg" [routerLink]="['/']" /> <img width="32" height="32" src="./assets/images/user/logo.svg" [routerLink]="['/']" />
<label class="title ml-sm">运多星网络货运管理平台</label> <label class="title ml-sm">运多星网络货运管理平台</label>
</div> </div>
</div> </div>
</nz-header> </nz-header> -->
<nz-content class="content"> <nz-content class="content" id="content">
<div class="inner-content"> <nz-row>
<router-outlet></router-outlet> <nz-col nzXs="0" nzSm="0" nzMd="0" nzLg="14" nzXl="14" nzXXl="14" style="z-index: 9999;">
</div> <div style="width: 100%;height: 100%;display: flex;align-items: center;padding: 60px;">
<div class="earth-box">
<div class="earth" style="width: 100%;height: 100%;"></div>
</div>
</div>
</nz-col>
<nz-col nzXs="24" nzSm="24" nzMd="24" nzLg="9" nzXl="8" nzXXl="7" style="z-index: 9999; ">
<router-outlet></router-outlet>
</nz-col>
</nz-row>
<div class="meteor-1"></div>
<div class="meteor-2"></div>
<div class="meteor-3"></div>
<div class="meteor-4"></div>
<div class="meteor-5"></div>
<div class="meteor-6"></div>
<div class="meteor-7"></div>
<div class="meteor-8"></div>
<div class="meteor-9"></div>
<div class="meteor-10"></div>
<div class="meteor-11"></div>
<div class="meteor-12"></div>
<div class="meteor-13"></div>
<div class="meteor-14"></div>
<div class="meteor-15"></div>
<div class="meteor-16"></div>
<div class="meteor-17"></div>
<div class="meteor-18"></div>
<div class="meteor-19"></div>
<div class="meteor-20"></div>
<div class=" particle-network-animation"></div>
<!-- <div class="night">
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
<div class="shooting_star"></div>
</div> -->
</nz-content> </nz-content>
</nz-layout> </nz-layout>

View File

@ -7,11 +7,71 @@
} }
.ant-layout-header { .ant-layout-header {
background: #ffffff; background : #ffffff;
box-shadow: 0px 5px 5px #d1d1d1; // box-shadow: 0px 5px 5px #d1d1d1;
}
nz-content {
background : url('../../../assets/images/login/login-bg.jpg') 100% 100% no-repeat;
background-size: cover;
// overflow : auto;
}
passport-login {
background: transparent;
}
.earth-box {
background : url('../../../assets/images/login/4-界面背景.png') 100% 100% no-repeat;
background-size : cover;
background-position: center;
// overflow : hidden;
width : 100%;
height : 100%;
}
.earth {
// animation : eatthAnimation 60s linear infinite;
// -webkit-animation: eatthAnimation 60s linear infinite;
max-width : 100%;
height : 100%;
// margin-top : -50px;
// max-height : calc(100% - 64px);
// border-radius : 40%;
}
.logo {
position: absolute;
left : calc(50% - 82px);
width : 164px;
top : calc(50% - 82px);
}
.earth:hover {
animation-play-state : paused;
-webkit-animation-play-state: paused;
}
@keyframes eatthAnimation {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
}
@-webkit-keyframes eatthAnimation {
0% {
transform: rotate(0deg);
}
100% {
transform: rotate(360deg);
}
} }
} }
} }

View File

@ -1,15 +1,35 @@
import { Component, Inject, OnInit } from '@angular/core'; import { Component, Inject, OnInit } from '@angular/core';
import { DA_SERVICE_TOKEN, ITokenService } from '@delon/auth'; import { DA_SERVICE_TOKEN, ITokenService } from '@delon/auth';
import Particle from './particle';
@Component({ @Component({
selector: 'layout-passport', selector: 'layout-passport',
templateUrl: './passport.component.html', templateUrl: './passport.component.html',
styleUrls: ['./passport.component.less'] styleUrls: ['./passport.component.less', './d.scss']
}) })
export class LayoutPassportComponent implements OnInit { export class LayoutPassportComponent implements OnInit {
constructor() {} constructor() {}
ngOnInit(): void { ngOnInit(): void {
// this.tokenService.clear(); // this.tokenService.clear();
// this.loadJS();
const particle = new Particle();
particle.init();
}
loadJS() {
var script = document.createElement('script');
script.type = 'text/javascript';
script.src = './assets/login/js/script.js';
script.id = 'particle';
document.getElementsByTagName('head')[0].appendChild(script);
setTimeout(() => {
var content = document.getElementById('content');
if (content) {
content.style.overflow = 'auto';
}
}, 100);
} }
} }

View File

@ -51,7 +51,6 @@ export class LayoutProMenuComponent implements OnInit, OnDestroy {
} }
}); });
this.menus = res; this.menus = res;
this.openStatus(); this.openStatus();
} }

View File

@ -0,0 +1,40 @@
import { AfterViewInit, Component, OnInit } from '@angular/core';
import { fromEvent } from 'rxjs';
import { debounceTime } from 'rxjs/operators';
@Component({
template: ''
})
export class BasicTableComponent implements AfterViewInit {
scrollY = '400px';
constructor() {}
ngAfterViewInit(): void {
setTimeout(() => {
this.getScrollY();
}, 100);
fromEvent(window, 'resize')
.pipe(debounceTime(100))
.subscribe(event => {
this.getScrollY();
});
}
getScrollY() {
const windowHeight = window.innerHeight || Math.max(document.documentElement.clientHeight, document.body.clientHeight);
const header = document.getElementsByTagName('layout-pro-header')?.[0];
if (windowHeight && header) {
let scrollY = windowHeight - header.clientHeight - 35 - 49;
const headerWrapper = document.getElementsByTagName('page-header-wrapper')?.[0];
if (headerWrapper) {
scrollY -= headerWrapper.clientHeight;
}
const tabset = document.getElementsByTagName('nz-tabset')?.[0];
if (tabset) {
scrollY -= tabset.clientHeight;
}
this.scrollY = scrollY + 'px';
}
}
}

View File

@ -31,4 +31,12 @@
font-size : 16px; font-size : 16px;
} }
} }
}
.total-footer {
position : absolute;
bottom : 25px;
height : 32px;
margin : 16px 0;
line-height: 32px;
} }

View File

@ -0,0 +1,70 @@
:host {
::ng-deep {
nz-card {
margin: -24px -24px 0;
.ant-tabs-nav {
margin: 0;
}
}
.ant-tabs-tab {
margin: 0 0 0 16px;
padding: 12px 0;
}
.ant-table-body {
border-bottom: 1px solid #f0f0f0;
}
.table-box {
.ant-card-body {
padding: 0;
}
}
.ant-table-pagination.ant-pagination {
margin: 8px;
}
.ant-table-thead > tr > th,
.ant-table-tbody > tr > td,
.ant-table tfoot > tr > th,
.ant-table tfoot > tr > td {
padding: 8px;
}
.ant-table.ant-table-bordered > .ant-table-container {
border-top: 0;
}
.ant-pagination-item {
min-width: 24px;
height: 24px;
line-height: 21px;
}
.ant-pagination-total-text {
height: 24px;
line-height: 24px;
}
.ant-pagination-prev,
.ant-pagination-next,
.ant-pagination-jump-prev,
.ant-pagination-jump-next {
min-width: 24px;
height: 24px;
line-height: 21px;
}
.ant-select-single:not(.ant-select-customize-input) .ant-select-selector {
height: 24px;
}
.ant-select-single .ant-select-selector .ant-select-selection-item,
.ant-select-single .ant-select-selector .ant-select-selection-placeholder {
line-height: 21px;
}
}
}

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-07 13:29:57 * @Date : 2022-01-07 13:29:57
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-02-23 16:04:18 * @LastEditTime : 2022-02-24 10:08:53
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-frame\\contract-frame.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-frame\\contract-frame.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -18,7 +18,7 @@
[ui]="ui" [ui]="ui"
[mode]="'search'" [mode]="'search'"
[disabled]="!sf?.valid" [disabled]="!sf?.valid"
[loading]="service.http.loading" [loading]="false"
(formSubmit)="st?.load(1)" (formSubmit)="st?.load(1)"
(formReset)="resetSF()" (formReset)="resetSF()"
></sf> ></sf>
@ -29,8 +29,9 @@
<div nz-col [nzSpan]="_$expand ? 24 : 18"> <div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
<ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema"> <ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema">
<!-- <input placeholder="请输入1-30" type="number" [ngModel]="sf.value.description3" style="width: 200px;" nz-input /> <ng-template sf-template="effectiveEndTime" let-me let-ui="ui" let-schema="schema">
<span> 天内支付运费</span> --> <nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.effectiveEndTime"></nz-range-picker>
</ng-template>
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime"></nz-range-picker> <nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime"></nz-range-picker>
</ng-template> </ng-template>
</sf> </sf>
@ -40,7 +41,7 @@
nz-button nz-button
nzType="primary" nzType="primary"
[disabled]="!sf.valid" [disabled]="!sf.valid"
[nzLoading]="service.http.loading" [nzLoading]="false"
(click)="st?.load(1)" (click)="st?.load(1)"
acl acl
[acl-ability]="['CONTRACT-INDEX-listFrame']" [acl-ability]="['CONTRACT-INDEX-listFrame']"
@ -74,7 +75,7 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [loading]="false"
[scroll]="{ x: '1200px', y: '370px' }" [scroll]="{ x: '1200px', y: '370px' }"
(change)="stChange($event)" (change)="stChange($event)"
> >

View File

@ -1,14 +1,17 @@
import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { STComponent, STColumn, STChange } from '@delon/abc/st'; import { STComponent, STColumn, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema } from '@delon/form'; import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema, SFSelectWidgetSchema } from '@delon/form';
import { ShipperBaseService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { ContractManagementService } from '../../services/contract-management.service'; import { ContractManagementService } from '../../services/contract-management.service';
@Component({ @Component({
selector: 'app-contract-management-contract-frame', selector: 'app-contract-management-contract-frame',
templateUrl: './contract-frame.component.html', templateUrl: './contract-frame.component.html',
styleUrls: ['./contract-frame.component.less'] styleUrls: ['./contract-frame.component.less'],
providers: [DatePipe]
}) })
export class ContractManagementFrameComponent implements OnInit { export class ContractManagementFrameComponent implements OnInit {
url = `/rule?_allow_anonymous=true`; url = `/rule?_allow_anonymous=true`;
@ -22,19 +25,48 @@ export class ContractManagementFrameComponent implements OnInit {
columns: STColumn[] = []; columns: STColumn[] = [];
ui: SFUISchema = {}; ui: SFUISchema = {};
_$expand = false; _$expand = false;
reqParams = {};
selectedRows: any[] = []; selectedRows: any[] = [];
constructor(public service: ContractManagementService, private nzModalService: NzModalService, private router: Router) {} constructor(
public service: ContractManagementService,
private nzModalService: NzModalService,
private router: Router,
public shipperservice: ShipperBaseService,
private datePipe: DatePipe,
) {}
ngOnInit(): void { ngOnInit(): void {
this.initST() this.initST();
this.initSF() this.initSF();
} }
/**
* 查询参数
*/
get reqParams() {
const params = {
...this.sf?.value,
}
delete params.signTime;
delete params._$expand;
if(this.datePipe.transform(this.sf?.value?.signTime?.[0], 'yyyy-MM-dd HH:mm:ss') && this.datePipe.transform(this.sf?.value?.signTime?.[1], 'yyyy-MM-dd HH:mm:ss')) {
params.signTime = {
start: this.datePipe.transform(this.sf?.value?.signTime?.[0], 'yyyy-MM-dd HH:mm:ss'),
end: this.datePipe.transform(this.sf?.value?.signTime?.[1], 'yyyy-MM-dd HH:mm:ss'),
}
}
if(this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[0], 'yyyy-MM-dd HH:mm:ss') && this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[1], 'yyyy-MM-dd HH:mm:ss')) {
params.effectiveEndTime = {
start: this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[0], 'yyyy-MM-dd HH:mm:ss'),
end: this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[1], 'yyyy-MM-dd HH:mm:ss'),
}
}
return {
...params
};
}
/** /**
* 初始化数据列表 * 初始化数据列表
*/ */
initST() { initST() {
this.columns = [ this.columns = [
{ {
title: '合同编号', title: '合同编号',
@ -42,14 +74,26 @@ export class ContractManagementFrameComponent implements OnInit {
className: 'text-center', className: 'text-center',
render: 'contractCode' render: 'contractCode'
}, },
{
title: '签约对象',
width: '100px',
className: 'text-center',
index: 'signingObjectLabel'
},
{
title: '合同类型',
width: '100px',
className: 'text-center',
index: 'contractTypeLabel'
},
{ {
title: '合同名称', title: '合同名称',
width: '100px', width: '100px',
className: 'text-center', className: 'text-center',
index:'contractName' index: 'templateName'
}, },
{ title: '运人', index: 'shipperName', width: '120px', className: 'text-center' }, { title: '网络货运人', index: 'enterpriseInfoName', width: '120px', className: 'text-center' },
{ title: '承运人', index: 'carrierName', width: '120px', className: 'text-center' }, { title: '合同对象', index: 'contractObjectName', width: '120px', className: 'text-center' },
{ {
title: '有效期至', title: '有效期至',
className: 'text-center', className: 'text-center',
@ -75,47 +119,108 @@ export class ContractManagementFrameComponent implements OnInit {
'3': { text: '已撤销', color: 'warning' }, '3': { text: '已撤销', color: 'warning' },
'4': { text: '已作废', color: 'warning' }, '4': { text: '已作废', color: 'warning' },
'5': { text: '已过期', color: 'warning' }, '5': { text: '已过期', color: 'warning' },
'7': { text: '已拒签', color: 'warning' }, '7': { text: '已拒签', color: 'warning' }
}, }
}, }
]; ];
} }
/** /**
* 初始化查询表单 * 初始化查询表单
*/ */
initSF() { initSF() {
this.schema = { this.schema = {
properties: { properties: {
_$expand: { type: 'boolean', ui: { hidden: true } }, _$expand: { type: 'boolean', ui: { hidden: true } },
contractCode: { contractCode: {
type: 'string', type: 'string',
title: '合同编号', title: '合同编号'
},
shipperName: {
type: 'string',
title: '托运人'
},
carrierName: {
type: 'string',
title: '承运人',
},
signTime: {
title: '签署日期',
type: 'string',
ui: {
widget: 'custom',
visibleIf: {
_$expand: (value: boolean) => value,
},
}
},
}, },
type: 'object', signingObject: {
}; type: 'string',
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } }; title: '签约对象',
} enum: [
/** { label: '全部', value: '' },
{ label: '货主', value: 1 },
{ label: '司机', value: 2 },
],
ui: {
widget: 'select',
placeholder: '请选择',
}
},
contractType: {
title: '合同类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'contract:type' },
containAllLable:true,
} as SFSelectWidgetSchema,
},
enterpriseInfoId: {
type: 'string',
title: '网络货运人',
ui: {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
_$expand: (value: boolean) => value
},
asyncData: () => this.shipperservice.getNetworkFreightForwarder()
}
},
contractObjectName: {
type: 'string',
title: '合同对象',
ui: {
visibleIf: {
_$expand: (value: boolean) => value,
},
}
},
signTime: {
title: '签署日期',
type: 'string',
ui: {
widget: 'custom',
visibleIf: {
_$expand: (value: boolean) => value,
},
}
},
effectiveEndTime: {
title: '有效期',
type: 'string',
ui: {
widget: 'custom',
visibleIf: {
_$expand: (value: boolean) => value,
},
}
},
esignFlowStatus: {
title: '状态',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'esign:flow:status' },
containAllLable:true,
visibleIf: {
_$expand: (value: boolean) => value,
},
} as SFSelectWidgetSchema,
},
},
type: 'object'
};
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
}
/**
* 查询字段个数 * 查询字段个数
*/ */
get queryFieldCount(): number { get queryFieldCount(): number {
@ -193,7 +298,7 @@ export class ContractManagementFrameComponent implements OnInit {
/** /**
* 伸缩查询条件 * 伸缩查询条件
*/ */
expandToggle(): void { expandToggle(): void {
this._$expand = !this._$expand; this._$expand = !this._$expand;
this.sf?.setValue('/_$expand', this._$expand); this.sf?.setValue('/_$expand', this._$expand);
} }

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-07 15:57:49 * @Date : 2021-12-07 15:57:49
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:16:12 * @LastEditTime : 2022-02-23 20:11:50
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-list\\contract-list.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-list\\contract-list.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -13,7 +13,7 @@
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 --> <!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4"> <div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [disabled]="!sf?.valid" [loading]="service.http.loading" <sf #sf [schema]="schema" [ui]="ui" [mode]="'search'" [disabled]="!sf?.valid" [loading]="false"
(formSubmit)="st?.load(1)" (formReset)="resetSF()"></sf> (formSubmit)="st?.load(1)" (formReset)="resetSF()"></sf>
</div> </div>
@ -29,7 +29,7 @@
</sf> </sf>
</div> </div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand"> <div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="false"
(click)="st?.load(1)" acl [acl-ability]="['CONTRACT-INDEX-searchDetail']">查询</button> (click)="st?.load(1)" acl [acl-ability]="['CONTRACT-INDEX-searchDetail']">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -49,10 +49,14 @@
</div> </div>
<st #st [data]="service.$api_listDetailed_page" [columns]="columns" [req]="{ params: reqParams }" <st #st [data]="service.$api_listDetailed_page" [columns]="columns" [req]="{ params: reqParams }"
[loading]="service.http.loading" [scroll]="{ x: '1200px', y: '370px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x: '1200px', y: '370px' }" (change)="stChange($event)">
<ng-template st-row="contractCode" let-item let-index="index"> <ng-template st-row="contractCode" let-item let-index="index">
<a [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a> <a [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
</ng-template> </ng-template>
<ng-template st-row="signingObject" let-item let-index="index">
<span *ngIf="item.signingObject == 0"></span>
<span></span>
</ng-template>
</st> </st>
</nz-card> </nz-card>

View File

@ -5,6 +5,7 @@ import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema, SFSelectWidgetSc
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { ContractManagementService } from '../../services/contract-management.service'; import { ContractManagementService } from '../../services/contract-management.service';
import { DatePipe } from '@angular/common'; import { DatePipe } from '@angular/common';
import { ShipperBaseService } from '@shared';
@Component({ @Component({
selector: 'app-contract-management-contract-list', selector: 'app-contract-management-contract-list',
@ -47,6 +48,7 @@ export class ContractManagementContractListComponent implements OnInit {
constructor( constructor(
public service: ContractManagementService, public service: ContractManagementService,
private nzModalService: NzModalService, private nzModalService: NzModalService,
public shipperservice: ShipperBaseService,
private router: Router, private router: Router,
private datePipe: DatePipe, private datePipe: DatePipe,
) { } ) { }
@ -67,19 +69,17 @@ export class ContractManagementContractListComponent implements OnInit {
render: 'contractCode' render: 'contractCode'
}, },
{ {
title: '单据类型', title: '签约对象',
width: '100px', width: '100px',
className: 'text-center', className: 'text-center',
index: 'documentType' index: 'documentType'
}, },
{ {
title: '合同名称', title: '合同类型',
width: '100px', width: '100px',
className: 'text-center', className: 'text-center',
index: 'contractName' index: 'contractName'
}, },
{ title: '托运人', index: 'shipperName', width: '120px', className: 'text-center' },
{ title: '承运人', index: 'carrierName', width: '120px', className: 'text-center' },
{ {
title: '业务单号', title: '业务单号',
className: 'text-center', className: 'text-center',

View File

@ -0,0 +1,101 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-07 13:29:57
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 10:08:28
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-partner\\contract-partner.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<nz-card>
<div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf
#sf
[schema]="schema"
[ui]="ui"
[mode]="'search'"
[disabled]="!sf?.valid"
[loading]="false"
(formSubmit)="st?.load(1)"
(formReset)="resetSF()"
></sf>
</div>
<!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container>
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
<ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime"></nz-range-picker>
</ng-template>
<ng-template sf-template="effectiveEndTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.effectiveEndTime"></nz-range-picker>
</ng-template>
</sf>
</div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button
nz-button
nzType="primary"
[disabled]="!sf.valid"
[nzLoading]="false"
(click)="st?.load(1)"
acl
[acl-ability]="['CONTRACT-INDEX-listFrame']"
>查询</button
>
<button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button>
</div>
</ng-container>
</div>
</nz-card>
<nz-card class="content-box" nzBordered>
<div style="position: relative">
<nz-alert
nzType="info"
[nzMessage]="'当前共' + st?.total + '行记录已选择' + selectedRows.length + ''"
nzShowIcon
[ngStyle]="{ margin: '0 0 1rem 0' }"
>
</nz-alert>
</div>
<st
#st
[data]="service.$api_listPartner_page"
[columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
[scroll]="{ x: '1200px', y: '370px' }"
(change)="stChange($event)"
>
<ng-template st-row="contractCode" let-item let-index="index">
<a [routerLink]="'/contract-management/index/detail/' + item.id">{{ item?.contractCode }}</a>
</ng-template>
</st>
</nz-card>
<ng-template #auditModal>
<div nz-row nzGutter="8">
<div nz-col nzSpan="24" se-container [labelWidth]="80">
<se [col]="1" label="备注">
<textarea
nz-input
rows="3"
placeholder="同意可以不用填写原因 ,拒绝必须说明原因"
style="width: 325px; margin-left: 14px"
></textarea>
</se>
</div>
</div>
</ng-template>

View File

@ -0,0 +1,35 @@
:host::ng-deep {
.search-box {
.ant-card-body {
padding-bottom: 18px;
}
}
.content-box {
.ant-card-body {
padding-top: 0;
}
}
nz-range-picker {
width: 100%;
}
.ant-tabs-tab-btn {
padding-right: 16px;
padding-left : 16px;
}
}
.expend-options {
margin-top: 0;
}
@media (min-width: 1200px) {
.expend-options {
z-index : -99;
margin-top: -40px;
}
}

View File

@ -0,0 +1,305 @@
import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router';
import { STComponent, STColumn, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema, SFUISchema, SFSelectWidgetSchema } from '@delon/form';
import { ShipperBaseService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal';
import { ContractManagementService } from '../../services/contract-management.service';
@Component({
selector: 'app-contract-management-contract-partner',
templateUrl: './contract-partner.component.html',
styleUrls: ['./contract-partner.component.less'],
providers: [DatePipe]
})
export class ContractManagementPartnerComponent implements OnInit {
url = `/rule?_allow_anonymous=true`;
@ViewChild('st', { static: true })
st!: STComponent;
@ViewChild('sf', { static: false })
sf!: SFComponent;
@ViewChild('auditModal', { static: false })
auditModal!: any;
schema: SFSchema = {};
columns: STColumn[] = [];
ui: SFUISchema = {};
_$expand = false;
selectedRows: any[] = [];
constructor(
public service: ContractManagementService,
private nzModalService: NzModalService,
private router: Router,
public shipperservice: ShipperBaseService,
private datePipe: DatePipe,
) {}
ngOnInit(): void {
this.initST();
this.initSF();
}
/**
* 查询参数
*/
get reqParams() {
const params = {
...this.sf?.value,
}
delete params.signTime;
delete params._$expand;
if(this.datePipe.transform(this.sf?.value?.signTime?.[0], 'yyyy-MM-dd HH:mm:ss') && this.datePipe.transform(this.sf?.value?.signTime?.[1], 'yyyy-MM-dd HH:mm:ss')) {
params.signTime = {
start: this.datePipe.transform(this.sf?.value?.signTime?.[0], 'yyyy-MM-dd HH:mm:ss'),
end: this.datePipe.transform(this.sf?.value?.signTime?.[1], 'yyyy-MM-dd HH:mm:ss'),
}
}
if(this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[0], 'yyyy-MM-dd HH:mm:ss') && this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[1], 'yyyy-MM-dd HH:mm:ss')) {
params.effectiveEndTime = {
start: this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[0], 'yyyy-MM-dd HH:mm:ss'),
end: this.datePipe.transform(this.sf?.value?.effectiveEndTime?.[1], 'yyyy-MM-dd HH:mm:ss'),
}
}
return {
...params
};
}
/**
* 初始化数据列表
*/
initST() {
this.columns = [
{
title: '合同编号',
width: '100px',
className: 'text-center',
render: 'contractCode'
},
{
title: '签约对象',
width: '100px',
className: 'text-center',
index: 'signingObject'
},
{
title: '合同类型',
width: '100px',
className: 'text-center',
index: 'contractType'
},
{ title: '合同名称', index: 'contractName', width: '120px', className: 'text-center' },
{ title: '网络货运人', index: 'enterpriseInfoName', width: '120px', className: 'text-center' },
{
title: '合同对象',
className: 'text-center',
width: '120px',
index: 'contractObjectName'
},
{
title: '有效期至',
className: 'text-center',
width: '120px',
index: 'effectiveEndTime'
},
{
title: '签署日期',
className: 'text-center',
width: '120px',
index: 'signTime'
},
{
title: '状态',
className: 'text-center',
width: '120px',
type: 'badge',
index: 'esignFlowStatus',
badge: {
'0': { text: '未发起', color: 'default' },
'1': { text: '待签章', color: 'default' },
'2': { text: '已生效', color: 'success' },
'3': { text: '已撤销', color: 'warning' },
'4': { text: '已作废', color: 'warning' },
'5': { text: '已过期', color: 'warning' },
'7': { text: '已拒签', color: 'warning' }
}
}
];
}
/**
* 初始化查询表单
*/
initSF() {
this.schema = {
properties: {
_$expand: { type: 'boolean', ui: { hidden: true } },
contractCode: {
type: 'string',
title: '合同编号'
},
signingObject: {
type: 'string',
title: '签约对象',
enum: [
{ label: '全部', value: '' },
{ label: '货主', value: 1 },
{ label: '司机', value: 2 }
],
ui: {
widget: 'select',
placeholder: '请选择'
}
},
contractType: {
title: '合同类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'contract:type' },
containAllLable: true,
} as SFSelectWidgetSchema
},
enterpriseInfoId: {
type: 'string',
title: '网络货运人',
ui: {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
_$expand: (value: boolean) => value
},
asyncData: () => this.shipperservice.getNetworkFreightForwarder()
}
},
contractObjectName: {
type: 'string',
title: '合同对象',
ui: {
visibleIf: {
_$expand: (value: boolean) => value
}
}
},
signTime: {
title: '签署日期',
type: 'string',
ui: {
widget: 'custom',
visibleIf: {
_$expand: (value: boolean) => value
}
}
},
effectiveEndTime: {
title: '有效期',
type: 'string',
ui: {
widget: 'custom',
visibleIf: {
_$expand: (value: boolean) => value,
},
}
},
esignFlowStatus: {
title: '状态',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'esign:flow:status' },
containAllLable: true,
visibleIf: {
_$expand: (value: boolean) => value
}
} as SFSelectWidgetSchema
}
},
type: 'object'
};
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
}
/**
* 查询字段个数
*/
get queryFieldCount(): number {
return Object.keys(this.schema?.properties || {}).length;
}
stChange(e: STChange): void {
switch (e.type) {
case 'checkbox':
this.selectedRows = e.checkbox!;
break;
case 'filter':
this.st.load();
break;
}
}
approval(): void {}
add(): void {}
routeTo(item: any) {
this.router.navigate(['/ticket/invoice-requested-detail/1']);
}
auditAction(item: any) {
const modal = this.nzModalService.create({
nzTitle: '审核',
nzContent: this.auditModal,
nzFooter: [
{
label: '拒绝',
type: 'default',
onClick: () => {
modal.destroy();
}
},
{
label: '通过',
type: 'primary',
onClick: () => {
modal.destroy();
}
}
]
});
modal.afterClose.subscribe(res => {
this.st.load();
});
}
showReason(item: any) {
const modal = this.nzModalService.create({
nzTitle: '查看原因',
nzContent: '运单数据异常暂时无法开票请联系客服400-xxxx-xxxx',
nzFooter: [
{
label: '关闭',
type: 'primary',
onClick: () => {
modal.destroy();
}
}
]
});
}
/**
* 重置表单
*/
resetSF() {
this.sf.reset();
this._$expand = false;
}
/**
* 伸缩查询条件
*/
expandToggle(): void {
this._$expand = !this._$expand;
this.sf?.setValue('/_$expand', this._$expand);
}
}

View File

@ -1,10 +1,11 @@
import { OnChanges } from '@angular/core';
/* /*
* @Description : * @Description :
* @Version : 1.0 * @Version : 1.0
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-05 11:01:55 * @Date : 2022-01-05 11:01:55
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-25 14:25:49 * @LastEditTime : 2022-02-28 20:22:46
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-detail\\contract-template-detail.component.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-detail\\contract-template-detail.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -12,22 +13,24 @@ import { DatePipe } from '@angular/common';
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute, Router } from '@angular/router'; import { ActivatedRoute, Router } from '@angular/router';
import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form'; import { SFComponent, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
import { ShipperBaseService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { ContractManagementService } from '../../services/contract-management.service'; import { ContractManagementService } from '../../services/contract-management.service';
@Component({ @Component({
selector: 'app-contract-management-template-detail-complaint', selector: 'app-contract-management-template-text-complaint',
templateUrl: './contract-template-detail.component.html', templateUrl: './contract-template-detail.component.html',
styleUrls: ['./contract-template-detail.component.less'], styleUrls: ['./contract-template-detail.component.less'],
providers: [DatePipe] providers: [DatePipe]
}) })
export class ContractManagementTemplateDetailComponent implements OnInit { export class ContractManagementTemplateTextComponent implements OnInit {
constructor( constructor(
private nzModalService: NzModalService, private nzModalService: NzModalService,
public service: ContractManagementService, public service: ContractManagementService,
public route: ActivatedRoute, public route: ActivatedRoute,
private datePipe: DatePipe, private datePipe: DatePipe,
private router: Router private router: Router,
public shipperservice: ShipperBaseService
) {} ) {}
textStatus = '新建模板'; textStatus = '新建模板';
@ViewChild('sf', { static: false }) sf!: SFComponent; @ViewChild('sf', { static: false }) sf!: SFComponent;
@ -38,6 +41,7 @@ export class ContractManagementTemplateDetailComponent implements OnInit {
sfdata: any; sfdata: any;
sfdata2: any; sfdata2: any;
title: any; title: any;
Types: any;
templateHTML: any; templateHTML: any;
detailList: any = { detailList: any = {
templateName: '' templateName: ''
@ -74,28 +78,102 @@ export class ContractManagementTemplateDetailComponent implements OnInit {
templateType: { templateType: {
title: '模板类型', title: '模板类型',
type: 'string', type: 'string',
default: '', enum: [
{ label: '框架合同', value: 'KJ' },
{ label: '明细合同', value: 'MX' },
{ label: '合伙人合同', value: 'HHR' }
],
ui: { ui: {
widget: 'dict-select', widget: 'select',
params: { dictKey: 'contract:template:type' }, placeholder: '请选择',
containAllLable: true, change: (tag: any, org: any) => {
visibleIf: { console.log(tag);
_$expand: (value: boolean) => value switch (tag) {
case 'MX':
this.Types = [
{ label: '订单合同', value: '1' },
{ label: '订单补充协议', value: '2' },
{ label: '运单合同', value: '3' },
{ label: '运单补充协议', value: '4' },
{ label: '委托代收合同', value: '5' }
];
this.sf.getProperty('/contractType')!.schema.enum = this.Types;
this.sf.getProperty('/contractType')!.widget.reset(this.Types);
this.sf.setValue('/contractType', this.Types);
return;
break;
case 'KJ':
this.Types = [
{ label: '网络货物运输服务合同', value: '6' },
{ label: '运输服务承揽合同', value: '7' }
];
this.sf.getProperty('/contractType')!.schema.enum = this.Types;
this.sf.getProperty('/contractType')!.widget.reset(this.Types);
this.sf.setValue('/contractType', this.Types);
return;
break;
case 'HHR':
this.Types = [
{ label: '企业合伙人入驻合同', value: '8' },
{ label: '个人合伙人入驻合同', value: '9' }
];
this.sf.getProperty('/contractType')!.schema.enum = this.Types;
this.sf.getProperty('/contractType')!.widget.reset(this.Types);
this.sf.setValue('/contractType', this.Types);
return;
break;
default:
break;
}
} }
} as SFSelectWidgetSchema }
},
signingObject: {
type: 'string',
title: '承包商对象',
enum: [
{ label: '货主', value: '1' },
{ label: '司机', value: '2' }
],
ui: {
widget: 'select',
placeholder: '请选择'
}
}, },
contractType: { contractType: {
title: '单据类型', title: '合同类型',
type: 'string',
enum: this.Types,
ui: {
widget: 'select',
placeholder: '请选择'
}
},
resourceType: {
title: '货源类型',
type: 'string', type: 'string',
default: '', default: '',
ui: { ui: {
widget: 'dict-select', widget: 'dict-select',
params: { dictKey: 'contract:document:type' }, params: { dictKey: 'goodresource:type' },
containAllLable: true, containsAllLable: true,
visibleIf: { visibleIf: {
templateType: value => value === 'MX' templateType: value => value === 'MX'
} }
} as SFSelectWidgetSchema } as SFSelectWidgetSchema
},
enterpriseInfoId: {
type: 'string',
title: '网络货运人',
ui: {
widget: 'select',
placeholder: '请选择',
allowClear: true,
visibleIf: {
templateType: value => value === 'KJ' || value === 'HHR'
},
asyncData: () => this.shipperservice.getNetworkFreightForwarder()
}
} }
}, },
required: ['templateName', 'templateType'] required: ['templateName', 'templateType']
@ -126,10 +204,12 @@ export class ContractManagementTemplateDetailComponent implements OnInit {
}; };
} }
initData(url: string) { initData(url: string) {
console.log('编辑');
this.service.request(url, { id: this.route.snapshot.params.id }).subscribe(res => { this.service.request(url, { id: this.route.snapshot.params.id }).subscribe(res => {
if (res) { if (res) {
this.detailList = res; this.detailList = res;
this.title = this.detailList?.templateName this.title = this.detailList?.templateName;
this.sfdata = res; this.sfdata = res;
this.sfdata2 = res; this.sfdata2 = res;
} }
@ -140,21 +220,22 @@ export class ContractManagementTemplateDetailComponent implements OnInit {
} }
save() { save() {
if (!this.sf.value.templateName || !this.sf.value.templateType || !this.sf2.value.templateContent || !this.title) { // if (!this.sf.value.templateName || !this.sf.value.templateType || !this.sf2.value.templateContent || !this.title) {
this.service.msgSrv.error('必填参数为空,请检查再重新保存!'); // this.service.msgSrv.error('必填参数为空,请检查再重新保存!');
return; // return;
} // }
if (this.sf.value.templateType == 'MX') { // if (this.sf.value.templateType == 'MX') {
if (this.sf.value.contractType == '') { // if (this.sf.value.contractType == '') {
this.service.msgSrv.error('必填参数为空,请检查再重新保存!'); // this.service.msgSrv.error('必填参数为空,请检查再重新保存!');
return; // return;
} // }
} // }
const params = { const params = {
...this.sf.value, ...this.sf.value,
...this.sf2.value, ...this.sf2.value,
templateTitle: this.title templateTitle: this.title || this.detailList.templateName
}; };
console.log(params);
this.service.request(this.service.$api_save_contractTemplate, params).subscribe((res: any) => { this.service.request(this.service.$api_save_contractTemplate, params).subscribe((res: any) => {
if (res) { if (res) {
this.service.msgSrv.success('保存成功!'); this.service.msgSrv.success('保存成功!');

View File

@ -0,0 +1,86 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 20:01:42
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-frame\\contract-template-frame.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<!-- 搜索表单 -->
<nz-card>
<div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf
#sf
[schema]="schema"
[ui]="ui"
[mode]="'search'"
[disabled]="!sf?.valid"
[loading]="false"
(formSubmit)="st?.load(1)"
(formReset)="resetSF()"
></sf>
</div>
<!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container>
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
<ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime"></nz-range-picker>
</ng-template>
<ng-template sf-template="effectiveEndTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.effectiveEndTime"></nz-range-picker>
</ng-template>
</sf>
</div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button
nz-button
nzType="primary"
[disabled]="!sf.valid"
[nzLoading]="false"
(click)="st?.load(1)"
acl
[acl-ability]="['CONTRACT-INDEX-listFrame']"
>查询</button
>
<button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button>
</div>
</ng-container>
</div>
</nz-card>
<nz-card>
<div class="NewBtn">
<button nz-button nzType="primary" (click)="creatTemplate()" acl [acl-ability]="['CONTRACT-TEMPLATE-new']"> 新建 </button>
</div>
<div style="margin-top: 15px">
<st
#st
[bordered]="true"
[data]="service.$api_get_contractTemplate_page"
[columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
>
<ng-template st-row="templateName" let-item let-index="index">
<a (click)="view(item)">{{ item.templateName }}</a>
</ng-template>
<ng-template st-row="signingObject" let-item let-index="index">
<span *ngIf="item?.signingObject == 1">货主</span>
<span *ngIf="item?.signingObject == 2">司机</span>
</ng-template>
</st>
</div>
</nz-card>

View File

@ -0,0 +1,4 @@
.NewBtn{
float: right;
margin-bottom: 15px;
}

View File

@ -0,0 +1,35 @@
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-05 09:45:47
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 10:25:58
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template\\contract-template.component.spec.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
import { ContractManagementTemplateFrameComponent } from './contract-template-frame.component';
describe('ContractManagementTemplateFrameComponent', () => {
let component: ContractManagementTemplateFrameComponent;
let fixture: ComponentFixture<ContractManagementTemplateFrameComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ ContractManagementTemplateFrameComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ContractManagementTemplateFrameComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,250 @@
import { Router } from '@angular/router';
import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme';
import { NzModalService } from 'ng-zorro-antd/modal';
import { map } from 'rxjs/operators';
import { ContractManagementService } from '../../services/contract-management.service';
@Component({
selector: 'app-contract-management-template-frame-complaint',
templateUrl: './contract-template-frame.component.html',
styleUrls: ['./contract-template-frame.component.less']
})
export class ContractManagementTemplateFrameComponent implements OnInit {
ui: SFUISchema = {};
uiView: SFUISchema = {};
schema: SFSchema = {};
schemaView: SFSchema = {};
auditMany = false;
_$expand = false;
channelId: any;
@ViewChild('st') private readonly st!: STComponent;
@ViewChild('sf', { static: false }) sf!: SFComponent;
columns: STColumn[] = [];
datass: any = [
{
one: '1',
two: '1',
three: '1',
id: 1
},
{
one: '2',
two: '2',
three: '2',
id: 2
},
];
constructor(
public service: ContractManagementService,
private modal: NzModalService,
private router: Router
) { }
/**
* 查询参数
*/
get reqParams() {
return {
templateType: 'kj',
...this.sf?.value,
};
}
get selectedRows() {
return this.st?.list.filter((item) => item.checked) || [];
}
ngOnInit(): void {
this.initSF();
this.initST();
this.initSTAudit();
}
/**
* 初始化查询表单
*/
initSF() {
this.schema = {
properties: {
_$expand: { type: 'boolean', ui: { hidden: true } },
templateName: {
type: 'string',
title: '模板名称',
},
signingObject: {
type: 'string',
title: '签约对象',
enum: [
{ label: '全部', value: '' },
{ label: '货主', value: 1 },
{ label: '司机', value: 2 }
],
ui: {
widget: 'select',
placeholder: '请选择'
}
},
contractType: {
title: '合同类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'contract:type' },
containAllLable: true,
} as SFSelectWidgetSchema
},
resourceType: {
title: '货源类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
params: { dictKey: 'goodresource:type' },
containsAllLable: true,
visibleIf: {
_$expand: (value: boolean) => value
},
} as SFSelectWidgetSchema,
},
},
};
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
}
/**
* 初始化数据列表
*/
initST() {
this.columns = [
{
title: '合同模板名称',
className: 'text-center',
render: 'templateName'
},
{
title: '签约对象',
width: '100px',
className: 'text-center',
render: 'signingObjectLabel'
},
{
title: '合同类型',
width: '100px',
className: 'text-center',
index: 'contractTypeLabel'
},
{
title: '货源类型',
width: '100px',
className: 'text-center',
index: 'resourceTypeLabel'
},
{ title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' },
{
title: '创建时间',
className: 'text-center',
index: 'createTime'
},
{
title: '操作',
fixed: 'right',
className: 'text-center',
buttons: [
{
text: '编辑',
click: (_record) => this.edit(_record),
acl: { ability: ['CONTRACT-TEMPLATE-edit'] },
},
{
text: '删除',
click: (_record) => this.delete(_record),
acl: { ability: ['CONTRACT-TEMPLATE-delete'] },
},
],
},
];
}
initSTAudit() {
this.schemaView = {
properties: {
handleResult: {
title: '处理结果',
type: 'string',
maxLength: 50,
ui: {
placeholder: '最多不超过50字',
widget: 'textarea',
autosize: { minRows: 3, maxRows: 6 }
},
},
},
required: ['handleResult']
};
this.uiView = { '*': { spanLabelFixed: 110, grid: { span: 24 } } };
}
/**
* 查询字段个数
*/
get queryFieldCount(): number {
return Object.keys(this.schema?.properties || {}).length;
}
/**
* 伸缩查询条件
*/
expandToggle(): void {
this._$expand = !this._$expand;
this.sf?.setValue('/_$expand', this._$expand);
}
tabChange(item: any) {
}
/**
* 重置表单
*/
resetSF(): void {
this.sf.reset();
this._$expand = false;
}
edit(value: any) {
this.router.navigate(['/contract-management/template/text/' + value.id],{
queryParams: {
status: 2
}
})
}
creatTemplate() {
this.router.navigate(['/contract-management/template/text/' + 0], {
queryParams: {
status: 1
}
})
}
goBack() {
window.history.go(-1)
}
view(value: any) {
this.router.navigate(['/contract-management/template/text/' + value.id],{
queryParams: {
status: 3
}
})
}
delete(value: any) {
this.modal.confirm({
nzTitle: '<i>删除确认</i>',
nzOnOk: () =>
this.service.request(this.service.$api_deletebatch_contractTemplate, [value.id]).subscribe(res => {
if (res) {
this.service.msgSrv.success('删除成功!');
this.st.reload(1)
}
})
});
}
}

View File

@ -0,0 +1,82 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 10:31:05
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template\\contract-template.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<!-- 搜索表单 -->
<nz-card>
<div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
<div nz-col nzSpan="24" *ngIf="queryFieldCount <= 4">
<sf
#sf
[schema]="schema"
[ui]="ui"
[mode]="'search'"
[disabled]="!sf?.valid"
[loading]="false"
(formSubmit)="st?.load(1)"
(formReset)="resetSF()"
></sf>
</div>
<!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container>
<div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
<ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime"></nz-range-picker>
</ng-template>
<ng-template sf-template="effectiveEndTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.effectiveEndTime"></nz-range-picker>
</ng-template>
</sf>
</div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button
nz-button
nzType="primary"
[disabled]="!sf.valid"
[nzLoading]="false"
(click)="st?.load(1)"
acl
[acl-ability]="['CONTRACT-INDEX-listFrame']"
>查询</button
>
<button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
</button>
</div>
</ng-container>
</div>
</nz-card>
<nz-card>
<div class="NewBtn">
<button nz-button nzType="primary" (click)="creatTemplate()" acl [acl-ability]="['CONTRACT-TEMPLATE-new']"> 新建 </button>
</div>
<div style="margin-top: 15px">
<st
#st
[bordered]="true"
[data]="service.$api_get_contractTemplate_page"
[columns]="columns"
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="false"
>
<ng-template st-row="templateName" let-item let-index="index">
<a (click)="view(item)">{{ item.templateName }}</a>
</ng-template>
</st>
</div>
</nz-card>

View File

@ -0,0 +1,4 @@
.NewBtn{
float: right;
margin-bottom: 15px;
}

View File

@ -0,0 +1,35 @@
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-05 09:45:47
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 14:09:28
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template-partner\\contract-template-partner.component.spec.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
import { ContractManagementTemplatePartnerComponent } from './contract-template-partner.component';
describe('ContractManagementTemplatePartnerComponent', () => {
let component: ContractManagementTemplatePartnerComponent;
let fixture: ComponentFixture<ContractManagementTemplatePartnerComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ ContractManagementTemplatePartnerComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ContractManagementTemplatePartnerComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,250 @@
import { Router } from '@angular/router';
import { Component, OnInit, ViewChild } from '@angular/core';
import { STColumn, STComponent } from '@delon/abc/st';
import { SFComponent, SFDateWidgetSchema, SFSchema, SFSelectWidgetSchema, SFUISchema } from '@delon/form';
import { ModalHelper, _HttpClient } from '@delon/theme';
import { NzModalService } from 'ng-zorro-antd/modal';
import { map } from 'rxjs/operators';
import { ContractManagementService } from '../../services/contract-management.service';
@Component({
selector: 'app-contract-management-template-partner-complaint',
templateUrl: './contract-template-partner.component.html',
styleUrls: ['./contract-template-partner.component.less']
})
export class ContractManagementTemplatePartnerComponent implements OnInit {
ui: SFUISchema = {};
uiView: SFUISchema = {};
schema: SFSchema = {};
schemaView: SFSchema = {};
auditMany = false;
_$expand = false;
channelId: any;
@ViewChild('st') private readonly st!: STComponent;
@ViewChild('sf', { static: false }) sf!: SFComponent;
columns: STColumn[] = [];
datass: any = [
{
one: '1',
two: '1',
three: '1',
id: 1
},
{
one: '2',
two: '2',
three: '2',
id: 2
},
];
constructor(
public service: ContractManagementService,
private modal: NzModalService,
private router: Router
) { }
/**
* 查询参数
*/
get reqParams() {
return {
templateType: 'HHR',
...this.sf?.value,
};
}
get selectedRows() {
return this.st?.list.filter((item) => item.checked) || [];
}
ngOnInit(): void {
this.initSF();
this.initST();
this.initSTAudit();
}
/**
* 初始化查询表单
*/
initSF() {
this.schema = {
properties: {
_$expand: { type: 'boolean', ui: { hidden: true } },
templateName: {
type: 'string',
title: '模板名称',
},
signingObject: {
type: 'string',
title: '签约对象',
enum: [
{ label: '全部', value: '' },
{ label: '货主', value: 1 },
{ label: '司机', value: 2 }
],
ui: {
widget: 'select',
placeholder: '请选择'
}
},
contractType: {
title: '合同类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
containsAllLable: true,
params: { dictKey: 'contract:type' },
containAllLable: true,
} as SFSelectWidgetSchema
},
resourceType: {
title: '货源类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
params: { dictKey: 'goodresource:type' },
containsAllLable: true,
visibleIf: {
_$expand: (value: boolean) => value
},
} as SFSelectWidgetSchema,
},
},
};
this.ui = { '*': { spanLabelFixed: 110, grid: { span: 8, gutter: 4 } } };
}
/**
* 初始化数据列表
*/
initST() {
this.columns = [
{
title: '合同模板名称',
className: 'text-center',
render: 'templateName'
},
{
title: '签约对象',
width: '100px',
className: 'text-center',
index: 'signingObjectLabel'
},
{
title: '合同类型',
width: '100px',
className: 'text-center',
index: 'contractTypeLabel'
},
{
title: '货源类型',
width: '100px',
className: 'text-center',
index: 'resourceTypeLabel'
},
{ title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' },
{
title: '创建时间',
className: 'text-center',
index: 'createTime'
},
{
title: '操作',
fixed: 'right',
className: 'text-center',
buttons: [
{
text: '编辑',
click: (_record) => this.edit(_record),
acl: { ability: ['CONTRACT-TEMPLATE-edit'] },
},
{
text: '删除',
click: (_record) => this.delete(_record),
acl: { ability: ['CONTRACT-TEMPLATE-delete'] },
},
],
},
];
}
initSTAudit() {
this.schemaView = {
properties: {
handleResult: {
title: '处理结果',
type: 'string',
maxLength: 50,
ui: {
placeholder: '最多不超过50字',
widget: 'textarea',
autosize: { minRows: 3, maxRows: 6 }
},
},
},
required: ['handleResult']
};
this.uiView = { '*': { spanLabelFixed: 110, grid: { span: 24 } } };
}
/**
* 查询字段个数
*/
get queryFieldCount(): number {
return Object.keys(this.schema?.properties || {}).length;
}
/**
* 伸缩查询条件
*/
expandToggle(): void {
this._$expand = !this._$expand;
this.sf?.setValue('/_$expand', this._$expand);
}
tabChange(item: any) {
}
/**
* 重置表单
*/
resetSF(): void {
this.sf.reset();
this._$expand = false;
}
edit(value: any) {
this.router.navigate(['/contract-management/template/text/' + value.id],{
queryParams: {
status: 2
}
})
}
creatTemplate() {
this.router.navigate(['/contract-management/template/text/' + 0], {
queryParams: {
status: 1
}
})
}
goBack() {
window.history.go(-1)
}
view(value: any) {
this.router.navigate(['/contract-management/template/text/' + value.id],{
queryParams: {
status: 3
}
})
}
delete(value: any) {
this.modal.confirm({
nzTitle: '<i>删除确认</i>',
nzOnOk: () =>
this.service.request(this.service.$api_deletebatch_contractTemplate, [value.id]).subscribe(res => {
if (res) {
this.service.msgSrv.success('删除成功!');
this.st.reload(1)
}
})
});
}
}

View File

@ -4,13 +4,12 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-12 10:52:50 * @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:16:18 * @LastEditTime : 2022-02-24 10:31:05
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template\\contract-template.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template\\contract-template.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<!-- 搜索表单 --> <!-- 搜索表单 -->
<page-header-wrapper [title]="'合同模板'"> </page-header-wrapper>
<nz-card> <nz-card>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 --> <!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
@ -21,29 +20,35 @@
[ui]="ui" [ui]="ui"
[mode]="'search'" [mode]="'search'"
[disabled]="!sf?.valid" [disabled]="!sf?.valid"
[loading]="service.http.loading" [loading]="false"
(formSubmit)="st?.load(1)" (formSubmit)="st?.load(1)"
(formReset)="resetSF()" (formReset)="resetSF()"
></sf> ></sf>
</div> </div>
<!-- 查询字段大于3个时根据展开状态调整布局 --> <!-- 查询字段大于3个时根据展开状态调整布局 -->
<ng-container *ngIf="queryFieldCount > 4"> <ng-container>
<div nz-col [nzSpan]="_$expand ? 24 : 18"> <div nz-col [nzSpan]="_$expand ? 24 : 18">
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'">
<ng-template sf-template="signTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.signTime"></nz-range-picker>
</ng-template>
<ng-template sf-template="effectiveEndTime" let-me let-ui="ui" let-schema="schema">
<nz-range-picker [nzShowTime]="true" [(ngModel)]="sf.value.effectiveEndTime"></nz-range-picker>
</ng-template>
</sf>
</div> </div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand"> <div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button <button
nz-button nz-button
nzType="primary" nzType="primary"
[disabled]="!sf.valid" [disabled]="!sf.valid"
[nzLoading]="service.http.loading" [nzLoading]="false"
(click)="st?.load(1)" (click)="st?.load(1)"
acl acl
[acl-ability]="['CONTRACT-TEMPLATE-search']" [acl-ability]="['CONTRACT-INDEX-listFrame']"
>查询</button >查询</button
> >
<button nz-button nzType="primary" acl [acl-ability]="['CONTRACT-TEMPLATE-export']">导出</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -67,7 +72,7 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [loading]="false"
> >
<ng-template st-row="templateName" let-item let-index="index"> <ng-template st-row="templateName" let-item let-index="index">
<a (click)="view(item)">{{ item.templateName }}</a> <a (click)="view(item)">{{ item.templateName }}</a>

View File

@ -4,27 +4,27 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-05 09:45:47 * @Date : 2022-01-05 09:45:47
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:16:22 * @LastEditTime : 2022-02-24 10:25:58
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template\\contract-template.component.spec.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\contract-template\\contract-template.component.spec.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing'; import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
import { ContractManagementTemplateComponent } from './contract-template.component'; import { ContractManagementTemplateDetailComponent } from './contract-template.component';
describe('ContractManagementTemplateComponent', () => { describe('ContractManagementTemplateDetailComponent', () => {
let component: ContractManagementTemplateComponent; let component: ContractManagementTemplateDetailComponent;
let fixture: ComponentFixture<ContractManagementTemplateComponent>; let fixture: ComponentFixture<ContractManagementTemplateDetailComponent>;
beforeEach(waitForAsync(() => { beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({ TestBed.configureTestingModule({
declarations: [ ContractManagementTemplateComponent ] declarations: [ ContractManagementTemplateDetailComponent ]
}) })
.compileComponents(); .compileComponents();
})); }));
beforeEach(() => { beforeEach(() => {
fixture = TestBed.createComponent(ContractManagementTemplateComponent); fixture = TestBed.createComponent(ContractManagementTemplateDetailComponent);
component = fixture.componentInstance; component = fixture.componentInstance;
fixture.detectChanges(); fixture.detectChanges();
}); });

View File

@ -9,11 +9,11 @@ import { ContractManagementService } from '../../services/contract-management.se
@Component({ @Component({
selector: 'app-contract-management-template-complaint', selector: 'app-contract-management-template-detail-complaint',
templateUrl: './contract-template.component.html', templateUrl: './contract-template.component.html',
styleUrls: ['./contract-template.component.less'] styleUrls: ['./contract-template.component.less']
}) })
export class ContractManagementTemplateComponent implements OnInit { export class ContractManagementTemplateDetailComponent implements OnInit {
ui: SFUISchema = {}; ui: SFUISchema = {};
uiView: SFUISchema = {}; uiView: SFUISchema = {};
schema: SFSchema = {}; schema: SFSchema = {};
@ -49,6 +49,7 @@ export class ContractManagementTemplateComponent implements OnInit {
*/ */
get reqParams() { get reqParams() {
return { return {
templateType: 'MX',
...this.sf?.value, ...this.sf?.value,
}; };
} }
@ -69,20 +70,45 @@ export class ContractManagementTemplateComponent implements OnInit {
initSF() { initSF() {
this.schema = { this.schema = {
properties: { properties: {
_$expand: { type: 'boolean', ui: { hidden: true } },
templateName: { templateName: {
type: 'string', type: 'string',
title: '模板名称', title: '模板名称',
}, },
templateType: { signingObject: {
title: '模板类型', type: 'string',
title: '签约对象',
enum: [
{ label: '全部', value: '' },
{ label: '货主', value: 1 },
{ label: '司机', value: 2 }
],
ui: {
widget: 'select',
placeholder: '请选择'
}
},
contractType: {
title: '合同类型',
type: 'string', type: 'string',
default: '', default: '',
ui: { ui: {
widget: 'dict-select', widget: 'dict-select',
params: { dictKey: 'contract:template:type' }, containsAllLable: true,
containsAllLabel: true, params: { dictKey: 'contract:type' },
containAllLable: true,
} as SFSelectWidgetSchema
},
resourceType: {
title: '货源类型',
type: 'string',
default: '',
ui: {
widget: 'dict-select',
params: { dictKey: 'goodresource:type' },
containsAllLable: true,
visibleIf: { visibleIf: {
_$expand: (value: boolean) => value, _$expand: (value: boolean) => value
}, },
} as SFSelectWidgetSchema, } as SFSelectWidgetSchema,
}, },
@ -102,14 +128,22 @@ export class ContractManagementTemplateComponent implements OnInit {
render: 'templateName' render: 'templateName'
}, },
{ {
title: '模板类型', title: '签约对象',
width: '100px',
className: 'text-center', className: 'text-center',
index: 'templateType' index: 'signingObjectLabel'
}, },
{ {
title: '单据类型', title: '合同类型',
index: 'contractType', width: '100px',
className: 'text-center', className: 'text-center',
index: 'contractTypeLabel'
},
{
title: '货源类型',
width: '100px',
className: 'text-center',
index: 'resourceTypeLabel'
}, },
{ title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' }, { title: '创建人', index: 'createUserId', width: '120px', className: 'text-center' },
{ {
@ -120,7 +154,7 @@ export class ContractManagementTemplateComponent implements OnInit {
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
className: 'text-left', className: 'text-center',
buttons: [ buttons: [
{ {
text: '编辑', text: '编辑',
@ -160,9 +194,9 @@ export class ContractManagementTemplateComponent implements OnInit {
get queryFieldCount(): number { get queryFieldCount(): number {
return Object.keys(this.schema?.properties || {}).length; return Object.keys(this.schema?.properties || {}).length;
} }
/** /**
* 伸缩查询条件 * 伸缩查询条件
*/ */
expandToggle(): void { expandToggle(): void {
this._$expand = !this._$expand; this._$expand = !this._$expand;
this.sf?.setValue('/_$expand', this._$expand); this.sf?.setValue('/_$expand', this._$expand);
@ -178,14 +212,14 @@ export class ContractManagementTemplateComponent implements OnInit {
} }
edit(value: any) { edit(value: any) {
this.router.navigate(['/contract-management/template/detail/' + value.id], { this.router.navigate(['/contract-management/template/text/' + value.id],{
queryParams: { queryParams: {
status: 2 status: 2
} }
}) })
} }
creatTemplate() { creatTemplate() {
this.router.navigate(['/contract-management/template/detail/' + 0], { this.router.navigate(['/contract-management/template/text/' + 0], {
queryParams: { queryParams: {
status: 1 status: 1
} }
@ -195,7 +229,7 @@ export class ContractManagementTemplateComponent implements OnInit {
window.history.go(-1) window.history.go(-1)
} }
view(value: any) { view(value: any) {
this.router.navigate(['/contract-management/template/detail/' + value.id], { this.router.navigate(['/contract-management/template/text/' + value.id],{
queryParams: { queryParams: {
status: 3 status: 3
} }

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-07 13:27:10 * @Date : 2022-01-07 13:27:10
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:16:56 * @LastEditTime : 2022-02-23 19:39:38
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\index\\index.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\index\\index.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -19,5 +19,8 @@
<nz-tab nzTitle="框架合同"> <nz-tab nzTitle="框架合同">
<app-contract-management-contract-frame></app-contract-management-contract-frame> <app-contract-management-contract-frame></app-contract-management-contract-frame>
</nz-tab> </nz-tab>
<nz-tab nzTitle="合伙人合同">
<app-contract-management-contract-partner></app-contract-management-contract-partner>
</nz-tab>
</nz-tabset> </nz-tabset>
</ng-template> </ng-template>

View File

@ -4,14 +4,12 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-12 10:52:50 * @Date : 2022-01-12 10:52:50
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-02-23 15:57:26 * @LastEditTime : 2022-03-23 13:56:14
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\policy\\policy.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\policy\\policy.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
<page-header [action]="phActionTpl"> <page-header-wrapper title="保单管理" >
<ng-template #phActionTpl> </ng-template> </page-header-wrapper>
</page-header>
<nz-card> <nz-card>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<!-- 查询字段小于或等于3个时不显示伸缩按钮 --> <!-- 查询字段小于或等于3个时不显示伸缩按钮 -->
@ -22,7 +20,7 @@
[ui]="ui" [ui]="ui"
[mode]="'search'" [mode]="'search'"
[disabled]="!sf?.valid" [disabled]="!sf?.valid"
[loading]="service.http.loading" [loading]="false"
(formSubmit)="st?.load(1)" (formSubmit)="st?.load(1)"
(formReset)="resetSF()" (formReset)="resetSF()"
></sf> ></sf>
@ -34,7 +32,7 @@
<sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf> <sf #sf [schema]="schema" [ui]="ui" [compact]="true" [button]="'none'"></sf>
</div> </div>
<div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand"> <div nz-col [nzSpan]="_$expand ? 24 : 6" [class.text-right]="_$expand">
<button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="service.http.loading" (click)="st?.load(1)" acl [acl-ability]="['CONTRACT-POLICY-search']">查询</button> <button nz-button nzType="primary" [disabled]="!sf.valid" [nzLoading]="false" (click)="st?.load(1)" acl [acl-ability]="['CONTRACT-POLICY-search']">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -53,7 +51,7 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [loading]="false"
> >
</st> </st>

View File

@ -0,0 +1,26 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-07 13:27:10
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 14:10:45
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\template\\template.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper title="合同模板" [tab]="tpTab">
</page-header-wrapper>
<ng-template #tpTab>
<nz-tabset [(nzSelectedIndex)]="selectedIndex">
<nz-tab nzTitle="明细合同">
<app-contract-management-template-detail-complaint></app-contract-management-template-detail-complaint>
</nz-tab>
<nz-tab nzTitle="框架合同">
<app-contract-management-template-frame-complaint></app-contract-management-template-frame-complaint>
</nz-tab>
<nz-tab nzTitle="合伙人合同">
<app-contract-management-template-partner-complaint></app-contract-management-template-partner-complaint>
</nz-tab>
</nz-tabset>
</ng-template>

View File

@ -0,0 +1,24 @@
import { waitForAsync, ComponentFixture, TestBed } from '@angular/core/testing';
import { ContractManagementTemplateComponent } from './template.component';
describe('ContractManagementTemplateComponent', () => {
let component: ContractManagementTemplateComponent;
let fixture: ComponentFixture<ContractManagementTemplateComponent>;
beforeEach(waitForAsync(() => {
TestBed.configureTestingModule({
declarations: [ ContractManagementTemplateComponent ]
})
.compileComponents();
}));
beforeEach(() => {
fixture = TestBed.createComponent(ContractManagementTemplateComponent);
component = fixture.componentInstance;
fixture.detectChanges();
});
it('should create', () => {
expect(component).toBeTruthy();
});
});

View File

@ -0,0 +1,27 @@
/*
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-01-07 13:27:10
* @LastEditors : Shiming
* @LastEditTime : 2022-02-24 10:20:23
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\components\\template\\template.component.ts
* Copyright (C) 2022 huzhenhong. All rights reserved.
*/
import { Component, OnInit } from '@angular/core';
import { ModalHelper, _HttpClient } from '@delon/theme';
@Component({
selector: 'app-supply-management-template',
templateUrl: './template.component.html',
})
export class ContractManagementTemplateComponent implements OnInit {
selectedIndex = 0;
constructor(private http: _HttpClient, private modal: ModalHelper) { }
ngOnInit(): void { }
}

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-04 21:05:49 * @Date : 2022-01-04 21:05:49
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:15:03 * @LastEditTime : 2022-02-24 10:24:16
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\contract-management-routing.module.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\contract-management-routing.module.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -13,16 +13,18 @@ import { NgModule } from '@angular/core';
import { RouterModule, Routes } from '@angular/router'; import { RouterModule, Routes } from '@angular/router';
import { ContractManagementDetailComponent } from './components/contract-detail/contract-detail.component'; import { ContractManagementDetailComponent } from './components/contract-detail/contract-detail.component';
import { ContractManagementContractListComponent } from './components/contract-list/contract-list.component'; import { ContractManagementContractListComponent } from './components/contract-list/contract-list.component';
import { ContractManagementTemplateDetailComponent } from './components/contract-template-detail/contract-template-detail.component'; import { ContractManagementPartnerComponent } from './components/contract-partner/contract-partner.component';
import { ContractManagementTemplateComponent } from './components/contract-template/contract-template.component'; import { ContractManagementTemplateTextComponent } from './components/contract-template-detail/contract-template-detail.component';
import { ContractManagementIndexComponent } from './components/index/index.component'; import { ContractManagementIndexComponent } from './components/index/index.component';
import { ContractManagementPolicyComponent } from './components/policy/policy.component'; import { ContractManagementPolicyComponent } from './components/policy/policy.component';
import { ContractManagementTemplateComponent } from './components/template/template.component';
const routes: Routes = [ const routes: Routes = [
{ path: 'index', component: ContractManagementIndexComponent }, { path: 'index', component: ContractManagementIndexComponent },
{ path: 'index/detail/:id', component: ContractManagementDetailComponent }, { path: 'index/detail/:id', component: ContractManagementDetailComponent },
{ path: 'template', component: ContractManagementTemplateComponent }, { path: 'template', component: ContractManagementTemplateComponent },
{ path: 'template/detail/:id', component: ContractManagementTemplateDetailComponent }, { path: 'template/text/:id', component: ContractManagementTemplateTextComponent },
{ path: 'policy', component: ContractManagementPolicyComponent } { path: 'policy', component: ContractManagementPolicyComponent },
{ path: 'partner', component: ContractManagementPartnerComponent },
]; ];
@NgModule({ @NgModule({

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-04 21:05:49 * @Date : 2022-01-04 21:05:49
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:15:08 * @LastEditTime : 2022-02-24 14:09:24
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\contract-management.module.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\contract-management.module.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -15,20 +15,29 @@ import { SharedModule } from '@shared';
import { ContractManagementManagementRoutingModule } from './contract-management-routing.module'; import { ContractManagementManagementRoutingModule } from './contract-management-routing.module';
import { ContractManagementContractListComponent } from './components/contract-list/contract-list.component'; import { ContractManagementContractListComponent } from './components/contract-list/contract-list.component';
import { ContractManagementPolicyComponent } from './components/policy/policy.component'; import { ContractManagementPolicyComponent } from './components/policy/policy.component';
import { ContractManagementTemplateComponent } from './components/contract-template/contract-template.component'; import { ContractManagementTemplateDetailComponent } from './components/contract-template/contract-template.component';
import { ContractManagementIndexComponent } from './components/index/index.component'; import { ContractManagementIndexComponent } from './components/index/index.component';
import { ContractManagementFrameComponent } from './components/contract-frame/contract-frame.component'; import { ContractManagementFrameComponent } from './components/contract-frame/contract-frame.component';
import { ContractManagementTemplateDetailComponent } from './components/contract-template-detail/contract-template-detail.component';
import { ContractManagementDetailComponent } from './components/contract-detail/contract-detail.component'; import { ContractManagementDetailComponent } from './components/contract-detail/contract-detail.component';
import { ContractManagementPartnerComponent } from './components/contract-partner/contract-partner.component';
import { ContractManagementTemplateComponent } from './components/template/template.component';
import { ContractManagementTemplateTextComponent } from './components/contract-template-detail/contract-template-detail.component';
import { ContractManagementTemplateFrameComponent } from './components/contract-template-frame/contract-template-frame.component';
import { ContractManagementTemplatePartnerComponent } from './components/contract-template-partner/contract-template-partner.component';
const COMPONENTS: any = [ const COMPONENTS: any = [
ContractManagementContractListComponent, ContractManagementContractListComponent,
ContractManagementPolicyComponent, ContractManagementPolicyComponent,
ContractManagementTemplateComponent, ContractManagementTemplateDetailComponent,
ContractManagementTemplateDetailComponent, ContractManagementTemplateDetailComponent,
ContractManagementIndexComponent, ContractManagementIndexComponent,
ContractManagementFrameComponent, ContractManagementFrameComponent,
ContractManagementDetailComponent ContractManagementDetailComponent,
ContractManagementPartnerComponent,
ContractManagementTemplateComponent,
ContractManagementTemplateTextComponent,
ContractManagementTemplateFrameComponent,
ContractManagementTemplatePartnerComponent
]; ];
const NOTROUTECOMPONENTS: any = []; const NOTROUTECOMPONENTS: any = [];
@NgModule({ @NgModule({

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-04 21:05:49 * @Date : 2022-01-04 21:05:49
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-18 17:17:10 * @LastEditTime : 2022-02-24 10:00:59
* @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\services\\contract-management.service.ts * @FilePath : \\tms-obc-web\\src\\app\\routes\\contract-management\\services\\contract-management.service.ts
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
*/ */
@ -31,6 +31,8 @@ export class ContractManagementService extends BaseService {
$api_listDetailed_page = `/api/sdc/contract/listDetailed/page`; $api_listDetailed_page = `/api/sdc/contract/listDetailed/page`;
// 查询框架合同 // 查询框架合同
$api_listFrame_page = `/api/sdc/contract/listFrame/page`; $api_listFrame_page = `/api/sdc/contract/listFrame/page`;
// 查询合伙人合同
$api_listPartner_page = `/api/sdc/contract/listPartner/page`;
// 获取订单合同表 // 获取订单合同表
$api_contract_get = `/api/sdc/contract/get`; $api_contract_get = `/api/sdc/contract/get`;
constructor(public injector: Injector) { constructor(public injector: Injector) {

View File

@ -8,6 +8,6 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, params: reqParams }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading"> [loading]="false">
</st> </st>
</nz-card> </nz-card>

View File

@ -11,7 +11,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button> 导出</button> <button nz-button> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -30,6 +30,6 @@
<nz-tab nzTitle="全部"></nz-tab> <nz-tab nzTitle="全部"></nz-tab>
</nz-tabset> </nz-tabset>
<st #st [data]="service.$api_get_abnormal_gold_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_abnormal_gold_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }"></st> [loading]="false" [scroll]="{ x:'1200px' }"></st>
</nz-card> </nz-card>

View File

@ -9,7 +9,7 @@
<nz-card class="search-box"> <nz-card class="search-box">
<div nz-row> <div nz-row>
<div nz-col nzSpan="24"> <div nz-col nzSpan="24">
<se-container col="3" labelWidth="100"> <se-container col="3" labelWidth="120">
<se-title class="mb-md" style="font-size: 18px">基本信息</se-title> <se-title class="mb-md" style="font-size: 18px">基本信息</se-title>
<se label="网络货运人" required> <se label="网络货运人" required>
{{ costInfo?.ltdName }} {{ costInfo?.ltdName }}
@ -21,13 +21,13 @@
{{ costInfo?.artoname }} {{ costInfo?.artoname }}
</se> </se>
<se label="结算客户" required> <se label="结算客户" required>
{{ costInfo?.shipperId }} {{ costInfo?.cnoName }}
</se> </se>
<se label="收款账户"> <se label="收款账户">
{{ costInfo?.ltdaccountId }} {{ costInfo?.ltdaccountId }}
</se> </se>
<se label="预收金额"> <se label="预收金额">
{{ costInfo?.premoney |currency }} {{ costInfo?.brmmoney |currency }}
</se> </se>
<se label="收款类型" required> <se label="收款类型" required>
{{ costInfo?.brmtypeLabel }} {{ costInfo?.brmtypeLabel }}
@ -47,38 +47,40 @@
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="8" [nzLg]="6" [nzSm]="24" [nzXs]="24"> <div nz-col [nzXl]="8" [nzLg]="6" [nzSm]="24" [nzXs]="24">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="false"
(click)="inputST?.load(1)">查询</button> (click)="inputST?.load(1)">查询</button>
<button nz-button (click)="resetInputSF()">重置</button> <button nz-button (click)="resetInputSF()">重置</button>
</div> </div>
</div> --> </div> -->
<st #inputST [data]="service.$api_get_advance_collection_detail" [columns]="columns.input" <st #inputST [data]="service.$api_get_advance_collection_detail" [columns]="columns.input"
[page]="{ show: false }" [req]="{ process: beforeReq }" [res]="{ reName: { list: 'data' } }" [page]="{ show: false }" [req]="{ process: beforeReq }" [res]="{ reName: { list: 'data' } }"
[loading]="service.http.loading" [scroll]="{ x: '1200px', y: '370px' }" class="mt-md"> [loading]="false" [scroll]="{ x: '1200px', y: '370px' }" class="mt-md">
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{index+1}} {{index+1}}
</ng-template> </ng-template>
</st> </st>
</nz-tab> </nz-tab>
<!-- <nz-tab nzTitle="核销信息"> <nz-tab nzTitle="核销信息">
<div nz-row nzGutter="8"> <!-- <div nz-row nzGutter="8">
<div nz-col [nzXl]="16" [nzLg]="18" [nzSm]="24" [nzXs]="24"> <div nz-col [nzXl]="16" [nzLg]="18" [nzSm]="24" [nzXs]="24">
<sf #sf [schema]="infoSearchSchema" <sf #sf [schema]="infoSearchSchema"
[ui]="{ '*': { spanLabelFixed: 90,grid: { lg: 12, md: 12, sm: 12, xs: 24 } }}" [compact]="true" [ui]="{ '*': { spanLabelFixed: 90,grid: { lg: 12, md: 12, sm: 12, xs: 24 } }}" [compact]="true"
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="8" [nzLg]="6" [nzSm]="24" [nzXs]="24"> <div nz-col [nzXl]="8" [nzLg]="6" [nzSm]="24" [nzXs]="24">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="false"
(click)="infoST?.load(1)">查询</button> (click)="infoST?.load(1)">查询</button>
<button nz-button (click)="resetInfoSF()">重置</button> <button nz-button (click)="resetInfoSF()">重置</button>
</div> </div>
</div> </div> -->
<st #infoST [scroll]="{ x: '2000px' }" [data]="[]" [columns]="columns.info" [req]="{ process: beforeReq }" <st #infoST [scroll]="{ x: '2000px' }" [data]="service.$api_get_advance_collection_hrxiao"
[loading]="service.http.loading" [scroll]="{ x: '1200px', y: '370px' }" class="mt-md"> [columns]="columns.info" [page]="{ show: false }" [req]="{ process: beforeReq }"
[res]="{ reName: { list: 'data' } }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }"
class="mt-md">
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{index+1}} {{index+1}}
</ng-template> </ng-template>
</st> </st>
</nz-tab> --> </nz-tab>
</nz-tabset> </nz-tabset>
</nz-card> </nz-card>

View File

@ -133,17 +133,17 @@ export class AdvanceCollectionDetailComponent implements OnInit {
], ],
info: [ info: [
{ title: '序号', render: 'no', width: 70, className: 'text-left' }, { title: '序号', render: 'no', width: 70, className: 'text-left' },
{ title: '核销单号', index: 'cnoName', className: 'text-left', width: 200 }, { title: '核销单号', index: 'ahxcode', className: 'text-left', width: 200 },
{ title: '核销日期', index: 'billHId', className: 'text-center', width: 150 }, { title: '核销日期', index: 'ahxdate', className: 'text-center', width: 150 },
{ {
title: '核销金额', title: '核销金额',
index: 'yskmoney', index: 'ahxmoney',
type: 'widget', type: 'widget',
className: 'text-right', className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.yskmoney }) }, widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.ahxmoney }) },
width: 200 width: 200
}, },
{ title: '核销备注', index: 'vatapptype', className: 'text-left', width: 200 } { title: '核销备注', index: 'remarks', className: 'text-left', width: 200 }
] ]
}; };
} }

View File

@ -10,7 +10,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -22,7 +22,7 @@
</nz-card> </nz-card>
<nz-card class="content-box"> <nz-card class="content-box">
<st #st [data]="service.$api_get_advance_collection_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_advance_collection_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '1200px' }"> [loading]="false" [scroll]="{ x: '1200px' }">
</st> </st>
</nz-card> </nz-card>

View File

@ -1,9 +1,9 @@
import { Component, OnInit, ViewChild } from '@angular/core'; import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st'; import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form'; import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { AccountDetailComponent } from 'src/app/shared/components/account-detail/account-detail.component';
import { FreightAccountService } from '../../services/freight-account.service'; import { FreightAccountService } from '../../services/freight-account.service';
@Component({ @Component({
@ -11,7 +11,7 @@ import { FreightAccountService } from '../../services/freight-account.service';
templateUrl: './advance-collection.component.html', templateUrl: './advance-collection.component.html',
styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less'] styleUrls: ['../../../commom/less/box.less', '../../../commom/less/expend-but.less']
}) })
export class AdvanceCollectionComponent implements OnInit { export class AdvanceCollectionComponent {
@ViewChild('st', { static: true }) @ViewChild('st', { static: true })
st!: STComponent; st!: STComponent;
@ViewChild('sf', { static: false }) @ViewChild('sf', { static: false })
@ -23,8 +23,6 @@ export class AdvanceCollectionComponent implements OnInit {
constructor(public service: FreightAccountService, private router: Router, private modal: NzModalService) {} constructor(public service: FreightAccountService, private router: Router, private modal: NzModalService) {}
ngOnInit(): void {}
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) { if (this.sf) {
Object.assign(requestOptions.body, { ...this.sf.value }); Object.assign(requestOptions.body, { ...this.sf.value });
@ -49,7 +47,7 @@ export class AdvanceCollectionComponent implements OnInit {
} }
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
private initSF(): SFSchema { private initSF(): SFSchema {
@ -149,14 +147,14 @@ export class AdvanceCollectionComponent implements OnInit {
buttons: [ buttons: [
{ {
text: '浏览', text: '浏览',
click: item => this.router.navigate(['/financial-management/advance-collection/detail/' + item.id]) click: item => this.router.navigate([`/financial-management/advance-collection/detail/${item.id}`])
},
{
text: '核销'
},
{
text: '退款'
} }
// {
// text: '核销'
// },
// {
// text: '退款'
// }
] ]
} }
]; ];

View File

@ -9,7 +9,7 @@
<nz-card class="search-box"> <nz-card class="search-box">
<div nz-row> <div nz-row>
<div nz-col nzSpan="24"> <div nz-col nzSpan="24">
<se-container col="3" labelWidth="100" *ngIf="!textStatus"> <se-container col="3" labelWidth="120" *ngIf="!textStatus">
<se-title class="mb-md" style="font-size: 18px">基本信息(应收费用)</se-title> <se-title class="mb-md" style="font-size: 18px">基本信息(应收费用)</se-title>
<se label="网络货运人" required> <se label="网络货运人" required>
{{ costInfo?.ltdName }} {{ costInfo?.ltdName }}
@ -27,16 +27,16 @@
{{ costInfo?.arvattypeLabel }} {{ costInfo?.arvattypeLabel }}
</se> </se>
<se label="应收金额" required> <se label="应收金额" required>
{{ costInfo?.armoeny }} {{ costInfo?.armoeny | currency }}
</se> </se>
<se label="开票金额" required> <se label="开票金额" required>
{{ costInfo?.arkpmoney }} {{ costInfo?.armoeny | currency }}
</se> </se>
<se label="收款金额" required> <se label="收款金额" required>
{{ costInfo?.armoeny }} {{ costInfo?.armoeny | currency }}
</se> </se>
</se-container> </se-container>
<se-container col="3" labelWidth="100" *ngIf="textStatus" class="mt-md"> <se-container col="3" labelWidth="120" *ngIf="textStatus" class="mt-md">
<se-title class="mb-md" style="font-size: 18px">基本信息(应付费用)</se-title> <se-title class="mb-md" style="font-size: 18px">基本信息(应付费用)</se-title>
<se label="网络货运人" required> <se label="网络货运人" required>
{{ costInfo?.ltdName }} {{ costInfo?.ltdName }}
@ -44,7 +44,7 @@
<se label="费用类型" required> <se label="费用类型" required>
{{ costInfo?.feetypeLabel }} {{ costInfo?.feetypeLabel }}
</se> </se>
<se label="应付核销" required> </se> <se label="应付核销" required> {{ costInfo?.hrmoney | currency}}</se>
<se label="费用备注"> <se label="费用备注">
{{ costInfo?.hrremarks }} {{ costInfo?.hrremarks }}
</se> </se>
@ -55,13 +55,13 @@
{{ costInfo?.hrvattypeLabel }} {{ costInfo?.hrvattypeLabel }}
</se> </se>
<se label="应付金额" required> <se label="应付金额" required>
{{ costInfo?.hrmoney }} {{ costInfo?.hrmoney | currency}}
</se> </se>
<se label="收票金额" required> <se label="收票金额" required>
{{ costInfo?.hrvatmoney }} {{ (costInfo?.hrvatmoney || 0) | currency }}
</se> </se>
<se label="付款金额" required> <se label="付款金额" required>
{{ costInfo?.hrpaymoney }} {{ costInfo?.hrmoney | currency}}
</se> </se>
</se-container> </se-container>
</div> </div>
@ -71,31 +71,29 @@
<nz-card class="content-box" nzBordered> <nz-card class="content-box" nzBordered>
<nz-tabset> <nz-tabset>
<nz-tab nzTitle="费用明细"> <nz-tab nzTitle="费用明细">
<st <st #st [scroll]="{ x: '2000px' }" [data]="costInfo?.ficoFeeLList" [columns]="columns.cost"
#st [page]="{ show: false }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }">
[scroll]="{ x: '2000px' }"
[data]="costInfo?.ficoFeeLList"
[columns]="columns.cost"
[page]="{ show: false }"
[loading]="service.http.loading"
[scroll]="{ x: '1200px', y: '370px' }"
>
<ng-template st-row="artocode" let-item let-index="index">
{{ costInfo?.artocode}}/{{ costInfo?.artonames}}
</ng-template>
<ng-template st-row="hrvatmoney" let-item let-index="index">
<span *ngIf="!textStatus">{{ item.armoney | currency}}</span>
<span *ngIf="textStatus">{{ item.hrmoney | currency}}</span>
</ng-template>
<ng-template st-row="armoney" let-item let-index="index">
{{ item.armoney | currency}}
</ng-template>
<ng-template st-row="arkpmoney" let-item let-index="index">
{{ item.arkpmoney | currency}}
</ng-template>
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{ textStatus ? item.hrmoney : item.hrvatmoney }} {{ index + 1 }}
</ng-template> </ng-template>
<ng-template st-row="artocode" let-item let-index="index">
{{ costInfo?.artocode}}/{{ costInfo?.artonames}}
</ng-template>
<ng-template st-row="hrvatmoney" let-item let-index="index">
<span *ngIf="!textStatus">{{ item.armoney | currency}}</span>
<span *ngIf="textStatus">{{ item.hrmoney | currency}}</span>
</ng-template>
<ng-template st-row="armoney" let-item let-index="index">
<!-- {{ item.armoney | currency}} -->
<span *ngIf="!textStatus">{{ item.armoney | currency}}</span>
<span *ngIf="textStatus">{{ item.hrmoney | currency}}</span>
</ng-template>
<ng-template st-row="arkpmoney" let-item let-index="index">
{{ item.arkpmoney | currency}}
</ng-template>
<!-- <ng-template st-row="no" let-item let-index="index" let-column="column">
{{ textStatus ? item.hrmoney : item.hrvatmoney }}
</ng-template> -->
<ng-template st-row="billTime" let-item let-index="index" let-column="column"> <ng-template st-row="billTime" let-item let-index="index" let-column="column">
{{costInfo.billTime}} {{costInfo.billTime}}
</ng-template> </ng-template>
@ -105,42 +103,28 @@
</st> </st>
</nz-tab> </nz-tab>
<nz-tab nzTitle="开票信息"> <nz-tab nzTitle="开票信息">
<st <st #st [scroll]="{ x: '2000px' }" [data]="costInfo?.ficoVatappDatailList" [columns]="columns.requested"
#st [page]="{ show: false }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }">
[scroll]="{ x: '2000px' }" <ng-template st-row="armoney" let-item let-index="index">
[data]="costInfo?.ficoVatappDatailList" {{ item.armoney | currency}}
[columns]="columns.requested" </ng-template>
[page]="{ show: false }" <ng-template st-row="vatmoney" let-item let-index="index">
[loading]="service.http.loading" {{ item.vatmoney | currency}}
[scroll]="{ x: '1200px', y: '370px' }" </ng-template>
>
<ng-template st-row="vatnotax" let-item let-index="index">
{{ item.vatnotax | currency}}
</ng-template>
<ng-template st-row="vatmoney" let-item let-index="index">
{{ item.vatmoney | currency}}
</ng-template>
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{ index + 1 }} {{ index + 1 }}
</ng-template> </ng-template>
</st> </st>
</nz-tab> </nz-tab>
<nz-tab nzTitle="收款信息"> <nz-tab nzTitle="收款信息" *ngIf="!textStatus">
<st <st #st [scroll]="{ x: '2000px' }" [data]="costInfo?.ficoAhxLList" [columns]="columns.collection"
#st [page]="{ show: false }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }">
[scroll]="{ x: '2000px' }" <ng-template st-row="ahxmoney" let-item let-index="index">
[data]="costInfo?.ficoAhxLList" {{ item.ahxmoney | currency}}
[columns]="columns.collection" </ng-template>
[page]="{ show: false }" <ng-template st-row="ahxmoney" let-item let-index="index">
[loading]="service.http.loading" {{ item.ahxmoney | currency}}
[scroll]="{ x: '1200px', y: '370px' }" </ng-template>
>
<ng-template st-row="ahxmoney" let-item let-index="index">
{{ item.ahxmoney | currency}}
</ng-template>
<ng-template st-row="ahxmoney" let-item let-index="index">
{{ item.ahxmoney | currency}}
</ng-template>
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{ index + 1 }} {{ index + 1 }}
</ng-template> </ng-template>
@ -148,30 +132,19 @@
</st> </st>
</nz-tab> </nz-tab>
<nz-tab nzTitle="收票信息"> <nz-tab nzTitle="收票信息">
<st <st #st [data]="data" [scroll]="{ x: '2000px' }" [columns]="columns.ticket" [page]="{ show: false }"
#st [loading]="false" [scroll]="{ x: '1200px', y: '370px' }"></st>
[data]="data"
[scroll]="{ x: '2000px' }"
[columns]="columns.ticket"
[page]="{ show: false }"
[loading]="service.http.loading"
[scroll]="{ x: '1200px', y: '370px' }"
></st>
</nz-tab> </nz-tab>
<nz-tab nzTitle="付款信息"> <nz-tab nzTitle="付款信息" *ngIf="textStatus">
<st <st #st [scroll]="{ x: '2000px' }" [data]="costInfo?.ficoPhxLList" [columns]="columns.payment"
#st [page]="{ show: false }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }">
[scroll]="{ x: '2000px' }"
[data]="costInfo?.ficoPhxLList"
[columns]="columns.payment"
[page]="{ show: false }"
[loading]="service.http.loading"
[scroll]="{ x: '1200px', y: '370px' }"
>
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{ index + 1 }} {{ index + 1 }}
</ng-template> </ng-template>
<ng-template st-row="phxmoney" let-item let-index="index" let-column="column">
{{ item.phxmoney | currency}}
</ng-template>
</st> </st>
</nz-tab> </nz-tab>
</nz-tabset> </nz-tabset>
</nz-card> </nz-card>

View File

@ -52,7 +52,13 @@ export class CostManagementDetailComponent implements OnInit {
{ title: '结算客户', render: 'cnoName', className: 'text-left', width: 200 }, { title: '结算客户', render: 'cnoName', className: 'text-left', width: 200 },
{ title: '订单费用类型', index: 'billLTypeLabel', className: 'text-left', width: 200 }, { title: '订单费用类型', index: 'billLTypeLabel', className: 'text-left', width: 200 },
{ title: '费用科目', index: 'feeSubName', className: 'text-left', width: 200 }, { title: '费用科目', index: 'feeSubName', className: 'text-left', width: 200 },
{ title: '税率', index: 'hrvatrate', className: 'text-right', width: 200 }, {
title: '税率',
index: 'arvatrate',
className: 'text-right',
width: 200,
format: item => `${item.arvatrate ? ((item.arvatrate as number) * 100).toFixed(2) : 0}%`
},
{ title: '费用金额', render: 'hrvatmoney', className: 'text-right', width: 200 }, { title: '费用金额', render: 'hrvatmoney', className: 'text-right', width: 200 },
{ title: '收/付款金额', render: 'armoney', className: 'text-right', width: 200 }, { title: '收/付款金额', render: 'armoney', className: 'text-right', width: 200 },
{ title: '开/收票金额', render: 'arkpmoney', className: 'text-right', width: 200 } { title: '开/收票金额', render: 'arkpmoney', className: 'text-right', width: 200 }
@ -61,9 +67,9 @@ export class CostManagementDetailComponent implements OnInit {
{ title: '序号', render: 'no', width: 70, className: 'text-left' }, { title: '序号', render: 'no', width: 70, className: 'text-left' },
{ title: '费用明细号', index: 'feeLId', className: 'text-left', width: 200 }, { title: '费用明细号', index: 'feeLId', className: 'text-left', width: 200 },
{ title: '发票申请', index: 'vatinvcode', className: 'text-left', width: 200 }, { title: '发票申请', index: 'vatinvcode', className: 'text-left', width: 200 },
{ title: '发票类型', index: 'vatapptype', className: 'text-left', width: 200 }, { title: '发票类型', index: 'invoicetypeLabel', className: 'text-left', width: 200 },
{ title: '发票号', index: 'vatappcode', className: 'text-left', width: 200 }, { title: '发票号', index: 'invoiceno', className: 'text-left', width: 200 },
{ title: '发票日期', index: 'vatappdate', className: 'text-left', width: 200 }, { title: '发票日期', index: 'invoicedate', className: 'text-left', width: 200 },
{ title: '发票状态', index: 'stsLabel', className: 'text-left', width: 200 }, { title: '发票状态', index: 'stsLabel', className: 'text-left', width: 200 },
{ title: '应收金额', render: 'armoney', className: 'text-left', width: 200 }, { title: '应收金额', render: 'armoney', className: 'text-left', width: 200 },
{ title: '开票金额', render: 'vatmoney', className: 'text-left', width: 200 } { title: '开票金额', render: 'vatmoney', className: 'text-left', width: 200 }
@ -94,9 +100,9 @@ export class CostManagementDetailComponent implements OnInit {
{ title: '付款单号', index: 'phxHId' }, { title: '付款单号', index: 'phxHId' },
{ title: '要求日期', index: 'billTime' }, { title: '要求日期', index: 'billTime' },
{ title: '确认日期', index: 'feedate' }, { title: '确认日期', index: 'feedate' },
{ title: '付款状态', index: 'callNo' }, // { title: '付款状态', index: 'callNo' },
{ title: '应付金额', index: 'callNo' }, { title: '应付金额', render: 'phxmoney' },
{ title: '付款金额', index: 'phxmoney' } { title: '付款金额', render: 'phxmoney' }
] ]
}; };
} }

View File

@ -4,7 +4,7 @@
* @Author : Shiming * @Author : Shiming
* @Date : 2021-12-30 19:36:30 * @Date : 2021-12-30 19:36:30
* @LastEditors : Shiming * @LastEditors : Shiming
* @LastEditTime : 2022-01-20 17:14:57 * @LastEditTime : 2022-02-23 16:35:15
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\cost-management\\cost-management.component.html * @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\cost-management\\cost-management.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved. * Copyright (C) 2022 huzhenhong. All rights reserved.
--> -->
@ -17,7 +17,8 @@
[compact]="true" [button]="'none'"></sf> [compact]="true" [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)" acl
[acl-ability]="['FINANCIAL-COST-list']">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<!-- <button nz-button (click)="exportList()"> 导出</button> <!-- <button nz-button (click)="exportList()"> 导出</button>
<button nz-button (click)="exportList()"> 导出明细</button> --> <button nz-button (click)="exportList()"> 导出明细</button> -->
@ -32,29 +33,27 @@
<nz-card class="content-box"> <nz-card class="content-box">
<div nz-row class="mb-sm"> <div nz-row class="mb-sm">
<div nz-col nzSpan="24"> <div nz-col nzSpan="24">
<!-- <button nz-button nzType="primary" [nzLoading]="service.http.loading" <!-- <button nz-button nzType="primary" [nzLoading]="false"
(click)="routeTo('/financial-management/cost-management/expenses-receivable/1')">添加应收费用</button> (click)="routeTo('/financial-management/cost-management/expenses-receivable/1')">添加应收费用</button>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="false"
(click)="routeTo('/financial-management/cost-management/expenses-payable/1')">添加应付费用</button> (click)="routeTo('/financial-management/cost-management/expenses-payable/1')">添加应付费用</button>
<button nz-button nzType="primary" [nzLoading]="service.http.loading">导入费用</button> --> <button nz-button nzType="primary" [nzLoading]="false">导入费用</button> -->
</div> </div>
</div> </div>
<st #st [data]="service.$api_get_cost_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_cost_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '2000px' }"> [loading]="false" [scroll]="{ x: '2000px' }">
<ng-template st-row="armoeny" let-item let-index="index"> <ng-template st-row="armoeny" let-item let-index="index">
{{ item.armoeny | currency}} {{ item.armoeny | currency }}
</ng-template> </ng-template>
<ng-template st-row="hrmoney" let-item let-index="index"> <ng-template st-row="hrmoney" let-item let-index="index">
{{ item.hrmoney | currency}} {{ item.hrmoney | currency }}
</ng-template>
<ng-template st-row="artocode" let-item let-index="index">
{{ item.cnoCode}}/{{ item.cnoName}}
</ng-template> </ng-template>
<ng-template st-row="artocode" let-item let-index="index"> {{ item.cnoCode }}/{{ item.cnoName }} </ng-template>
<ng-template st-row="hrpaymoney" let-item let-index="index"> <ng-template st-row="hrpaymoney" let-item let-index="index">
{{ item.hrpaymoney | currency}} {{ item.hrpaymoney | currency }}
</ng-template> </ng-template>
<ng-template st-row="hrvatmoney" let-item let-index="index"> <ng-template st-row="hrvatmoney" let-item let-index="index">
{{ item.hrvatmoney | currency}} {{ item.hrvatmoney | currency }}
</ng-template> </ng-template>
</st> </st>
</nz-card> </nz-card>

View File

@ -90,7 +90,7 @@ export class CostManagementComponent implements OnInit {
} }
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
routeTo(url: string, params?: any, status?: any) { routeTo(url: string, params?: any, status?: any) {
@ -188,9 +188,10 @@ export class CostManagementComponent implements OnInit {
searchLoadingText: '搜索中...', searchLoadingText: '搜索中...',
allowClear: true, allowClear: true,
onSearch: (q: any) => { onSearch: (q: any) => {
if (!!q) { let str = q.replace(/^\s+|\s+$/g, '');
if (str) {
return this.service return this.service
.request(this.service.$api_enterpriceList, { enterpriseName: q }) .request(this.service.$api_enterpriceList, { enterpriseName: str })
.pipe(map((res: any) => (res as any[]).map(i => ({ label: i.enterpriseName, value: i.id } as SFSchemaEnum)))) .pipe(map((res: any) => (res as any[]).map(i => ({ label: i.enterpriseName, value: i.id } as SFSchemaEnum))))
.toPromise(); .toPromise();
} else { } else {
@ -212,9 +213,10 @@ export class CostManagementComponent implements OnInit {
searchLoadingText: '搜索中...', searchLoadingText: '搜索中...',
allowClear: true, allowClear: true,
onSearch: (q: any) => { onSearch: (q: any) => {
if (!!q) { let str = q.replace(/^\s+|\s+$/g, '');
if (str) {
return this.service return this.service
.request(this.service.$api_enterpriceList, { enterpriseName: q }) .request(this.service.$api_enterpriceList, { enterpriseName: str })
.pipe(map((res: any) => (res as any[]).map(i => ({ label: i.enterpriseName, value: i.id } as SFSchemaEnum)))) .pipe(map((res: any) => (res as any[]).map(i => ({ label: i.enterpriseName, value: i.id } as SFSchemaEnum))))
.toPromise(); .toPromise();
} else { } else {
@ -285,12 +287,12 @@ export class CostManagementComponent implements OnInit {
{ title: '结算客户', render: 'artocode', width: 200, className: 'text-left' }, { title: '结算客户', render: 'artocode', width: 200, className: 'text-left' },
{ title: '应收对象', index: 'artoname', width: 200, className: 'text-left' }, { title: '应收对象', index: 'artoname', width: 200, className: 'text-left' },
{ title: '应付对象', index: 'hrtoname', width: 200, className: 'text-left' }, { title: '应付对象', index: 'hrtoname', width: 200, className: 'text-left' },
{ title: '应收金额', render: 'armoeny', width: 100, className: 'text-right' }, { title: '应收金额', render: 'armoeny', width: 150, className: 'text-right' },
{ title: '应付金额', render: 'hrmoney', width: 100, className: 'text-right' }, { title: '应付金额', render: 'hrmoney', width: 150, className: 'text-right' },
{ title: '收/付款金额', render: 'hrpaymoney', width: 120, className: 'text-right' }, { title: '收/付款金额', render: 'hrpaymoney', width: 150, className: 'text-right' },
{ title: '开/收票金额', render: 'hrvatmoney', width: 120, className: 'text-right' }, { title: '开/收票金额', render: 'hrvatmoney', width: 150, className: 'text-right' },
{ title: '创建时间', index: 'createTime', type: 'date', width: 200, className: 'text-center' }, { title: '创建时间', index: 'createTime', type: 'date', width: 200, className: 'text-center' },
{ title: '状态', index: 'stsLabel', width: 90, className: 'text-center' }, { title: '状态', index: 'stsLabel', width: 120, className: 'text-center' },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
@ -299,12 +301,14 @@ export class CostManagementComponent implements OnInit {
buttons: [ buttons: [
{ {
text: '浏览', text: '浏览',
click: item => this.routeTo('/financial-management/cost-management/detail/' + item.id, { status: item?.feetypeLabel }) click: item => this.routeTo('/financial-management/cost-management/detail/' + item.id, { status: item?.feetypeLabel }),
acl: { ability: ['FINANCIAL-COST-view'] }
}, },
{ {
text: '审核', text: '审核',
click: item => this.auditAction(item), click: item => this.auditAction(item),
iif: item => item.sts === 2 iif: item => item.sts === 2,
acl: { ability: ['FINANCIAL-COST-audit'] }
} }
// { // {
// text: '修改', // text: '修改',

View File

@ -8,7 +8,7 @@
<nz-card [nzExtra]="cardTemplate" nzTitle="基本信息"> <nz-card [nzExtra]="cardTemplate" nzTitle="基本信息">
<ng-template #cardTemplate> <ng-template #cardTemplate>
<button nz-button nzType="primary" [nzLoading]="service.http.loading">保存</button> <button nz-button nzType="primary" [nzLoading]="false">保存</button>
</ng-template> </ng-template>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
@ -18,7 +18,7 @@
</div> </div>
</div> </div>
<st #st [data]="data" [columns]="columns" [page]="{ show: false}" [loading]="service.http.loading" size="small" <st #st [data]="data" [columns]="columns" [page]="{ show: false}" [loading]="false" size="small"
[scroll]="{ y: '370px' }" class="mt-sm"> [scroll]="{ y: '370px' }" class="mt-sm">
<ng-template st-row="description1" let-item let-index="index"> <ng-template st-row="description1" let-item let-index="index">
<nz-select [ngModel]="item.description" (ngModelChange)="st.setRow(index, { description: $event })" <nz-select [ngModel]="item.description" (ngModelChange)="st.setRow(index, { description: $event })"

View File

@ -10,7 +10,6 @@ import { FreightAccountService } from '../../../services/freight-account.service
styleUrls: ['./expenses-payable.component.less'] styleUrls: ['./expenses-payable.component.less']
}) })
export class ExpensesPayableComponent implements OnInit { export class ExpensesPayableComponent implements OnInit {
@ViewChild('st', { static: true }) @ViewChild('st', { static: true })
st!: STComponent; st!: STComponent;
@ViewChild('sf', { static: false }) @ViewChild('sf', { static: false })
@ -125,7 +124,12 @@ export class ExpensesPayableComponent implements OnInit {
return [ return [
{ title: '结算客户', render: 'description1', width: 150 }, { title: '结算客户', render: 'description1', width: 150 },
{ title: '费用科目', render: 'description2', width: 120 }, { title: '费用科目', render: 'description2', width: 120 },
{ title: '税率', render: 'description3', width: 120 }, {
title: '税率',
render: 'description3',
width: 120,
format: item => `${item.description3 ? ((item.description3 as number) * 100).toFixed(2) : 0}%`
},
{ title: '应付金额', render: 'num', width: 120 }, { title: '应付金额', render: 'num', width: 120 },
{ title: '备注', render: 'description5', width: 150 }, { title: '备注', render: 'description5', width: 150 },
{ {

View File

@ -18,7 +18,7 @@
<nz-card [nzExtra]="cardTemplate" nzTitle="基本信息"> <nz-card [nzExtra]="cardTemplate" nzTitle="基本信息">
<ng-template #cardTemplate> <ng-template #cardTemplate>
<button nz-button nzType="primary" [nzLoading]="service.http.loading">保存</button> <button nz-button nzType="primary" [nzLoading]="false">保存</button>
</ng-template> </ng-template>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
@ -28,7 +28,7 @@
</div> </div>
</div> </div>
<st #st [data]="data" [columns]="columns" [page]="{ show: false}" [loading]="service.http.loading" size="small" <st #st [data]="data" [columns]="columns" [page]="{ show: false}" [loading]="false" size="small"
[scroll]="{ y: '370px' }" class="mt-sm"> [scroll]="{ y: '370px' }" class="mt-sm">
<ng-template st-row="description1" let-item let-index="index"> <ng-template st-row="description1" let-item let-index="index">
<nz-select [ngModel]="item.description" (ngModelChange)="st.setRow(index, { description: $event })" <nz-select [ngModel]="item.description" (ngModelChange)="st.setRow(index, { description: $event })"

View File

@ -124,7 +124,12 @@ export class ExpensesReceivableComponent implements OnInit {
return [ return [
{ title: '结算客户', render: 'description1', width: 150 }, { title: '结算客户', render: 'description1', width: 150 },
{ title: '费用科目', render: 'description2', width: 120 }, { title: '费用科目', render: 'description2', width: 120 },
{ title: '税率', render: 'description3', width: 120 }, {
title: '税率',
render: 'description3',
width: 120,
format: item => `${item.description3 ? ((item.description3 as number) * 100).toFixed(2) : 0}%`
},
{ title: '应收金额', render: 'num', width: 120 }, { title: '应收金额', render: 'num', width: 120 },
{ title: '备注', render: 'description5', width: 150 }, { title: '备注', render: 'description5', width: 150 },
{ {

View File

@ -15,17 +15,17 @@
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12"> <nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="(params?.availableBalance || 0)+'' " [nzTitle]="'账户余额'" <nz-statistic [nzValue]="((params?.availableBalance || 0) | currency)+'' " [nzTitle]="'账户余额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}"> [nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12"> <nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="(info?.incomeAmount || 0) +''" [nzTitle]="'收入金额'" <nz-statistic [nzValue]="((info?.incomeAmount || 0) | currency) +''" [nzTitle]="'收入金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}"> [nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12"> <nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="(info?.payAmount || 0) +''" [nzTitle]="'支出金额'" <nz-statistic [nzValue]="((info?.payAmount || 0)| currency) +''" [nzTitle]="'支出金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}"> [nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
@ -41,7 +41,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -57,5 +57,5 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '300px' }" (change)="stChange($event)"></st> [loading]="false" [scroll]="{ x:'1200px',y: '300px' }" (change)="stChange($event)"></st>
</nz-card> </nz-card>

View File

@ -74,7 +74,7 @@ export class DriverAccountDetailComponent implements OnInit {
stChange(e: STChange): void {} stChange(e: STChange): void {}
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
goBack() { goBack() {

View File

@ -10,7 +10,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -22,8 +22,8 @@
</nz-card> </nz-card>
<nz-card class="content-box"> <nz-card class="content-box">
<st #st [data]="service.$api_get_driver_account_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_driver_account_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '1200px' }"> [loading]="false" [scroll]="{ x: '1200px' }">
<ng-template st-row="availableBalance" let-item let-index="index"> <ng-template st-row="availableBalance" let-item let-index="index">
<a (click)="showAccountDetail(item)">{{ (parseFloat(item.availableBalance) + <a (click)="showAccountDetail(item)">{{ (parseFloat(item.availableBalance) +
parseFloat(item.freezeBalance)).toFixed(2) | currency}}</a> parseFloat(item.freezeBalance)).toFixed(2) | currency}}</a>

View File

@ -74,7 +74,7 @@ export class DriverAccountComponent implements OnInit {
} }
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
private initSF(): SFSchema { private initSF(): SFSchema {

View File

@ -14,24 +14,24 @@
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12"> <nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="params?.availableBalance+'' " [nzTitle]="'账户余额'" <nz-statistic [nzValue]="(params?.availableBalance | currency)+'' " [nzTitle]="'账户余额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}"> [nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12"> <nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="(info?.incomeAmount || 0) +''" [nzTitle]="'收入金额'" <nz-statistic [nzValue]="((info?.incomeAmount | currency) || 0) +''" [nzTitle]="'收入金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}"> [nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
<nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12"> <nz-col [nzXl]="5" [nzLg]="8" [nzSm]="12">
<nz-statistic [nzValue]="(info?.payAmount || 0) +''" [nzTitle]="'支出金额'" <nz-statistic [nzValue]="((info?.payAmount | currency) || 0) +''" [nzTitle]="'支出金额'"
[nzValueStyle]="{'font-size':'16px',color:'red'}"> [nzValueStyle]="{'font-size':'16px',color:'red'}">
</nz-statistic> </nz-statistic>
</nz-col> </nz-col>
</nz-row> </nz-row>
</nz-card> </nz-card>
<nz-card nzBordered> <nz-card nzBordered>
<div nz-row nzGutter="8"> <div nz-row nzGutter="8">
<div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24"> <div nz-col [nzXl]="_$expand ? 24 : 18" [nzLg]="24" [nzSm]="24" [nzXs]="24">
<sf #sf [schema]="searchSchema" <sf #sf [schema]="searchSchema"
@ -39,7 +39,7 @@
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" <button nz-button nzType="primary" [nzLoading]="false"
(click)="st?.load(1);loadInfo();">查询</button> (click)="st?.load(1);loadInfo();">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
@ -56,5 +56,10 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '300px' }" (change)="stChange($event)"></st> [loading]="false" [scroll]="{ x:'1200px',y: '300px' }" (change)="stChange($event)"></st>
<div class="total-footer text-md" *ngIf="st?.list?.length !== 0 ">
合计 <label class="text-red-dark">{{ static?.total }}</label> 项,收入
<label class="text-red-dark font-weight-bold">{{ static?.incomeAmount | currency }}</label>,支出
<label class="text-red-dark font-weight-bold">{{static?.payAmount | currency }}</label>
</div>
</nz-card> </nz-card>

View File

@ -20,7 +20,7 @@ export class FreightAccountDetailComponent implements OnInit {
info: any = {}; info: any = {};
params: any = {}; params: any = {};
static: any = {};
_$expand = false; _$expand = false;
constructor(public service: FreightAccountService, private nzModalService: NzModalService, private route: ActivatedRoute) { constructor(public service: FreightAccountService, private nzModalService: NzModalService, private route: ActivatedRoute) {
this.params = route.snapshot.queryParams; this.params = route.snapshot.queryParams;
@ -46,6 +46,7 @@ export class FreightAccountDetailComponent implements OnInit {
} }
}); });
} }
this.loadStatistics(requestOptions.body);
return requestOptions; return requestOptions;
}; };
@ -71,10 +72,18 @@ export class FreightAccountDetailComponent implements OnInit {
}); });
} }
loadStatistics(params: any) {
this.service.request(this.service.$api_get_shipper_account_balance_detail, params).subscribe(res => {
if (res) {
this.static = res;
}
});
}
stChange(e: STChange): void {} stChange(e: STChange): void {}
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
goBack() { goBack() {
@ -186,12 +195,15 @@ export class FreightAccountDetailComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '交易时间', index: 'createTime', type: 'date' }, { title: '交易时间', index: 'createTime', type: 'date', width: 170 },
{ title: '流水号', index: 'transactionNumber' }, { title: '流水号', index: 'transactionNumber', width: 170 },
{ title: '交易类型', index: 'tradeTypeLabel', className: 'text-center' }, { title: '交易类型', index: 'tradeTypeLabel', className: 'text-center', width: 140 },
{ title: '关联单号', index: 'businessNumber' }, { title: '交易单号', index: 'businessNumber', width: 170 },
{ title: '所属项目', index: 'projectId' }, { title: '订单号', index: 'orderSn', width: 170 },
{ title: '收支类型', index: 'incomeTypeLabel', className: 'text-center' }, { title: '运单号', index: 'transportSn', width: 170 },
{ title: '货主', index: 'enterpriseName' , width: 170},
{ title: '所属项目', index: 'projectName' , width: 170},
{ title: '收支类型', index: 'incomeTypeLabel', className: 'text-center', width: 140 },
{ {
title: '交易金额', title: '交易金额',
index: 'amount', index: 'amount',
@ -207,7 +219,10 @@ export class FreightAccountDetailComponent implements OnInit {
type: 'widget', type: 'widget',
className: 'text-right', className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.accountBalance }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.accountBalance }) }
} },
{ title: '付款方', index: 'payName' , width: 170},
{ title: '收款方', index: 'payeeName', width: 170 },
{ title: '备注', index: 'tradeContent', width: 170 }
]; ];
} }
} }

View File

@ -10,7 +10,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -22,8 +22,8 @@
</nz-card> </nz-card>
<nz-card class="content-box"> <nz-card class="content-box">
<st #st [data]="service.$api_get_shipper_account_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_shipper_account_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '1200px' }"> [loading]="false" [scroll]="{ x: '1200px' }">
<ng-template st-row="description" let-item let-index="index"> <ng-template st-row="description" let-item let-index="index">
<a (click)="showAccountDetail(item)">{{ (parseFloat(item.availableBalance) + <a (click)="showAccountDetail(item)">{{ (parseFloat(item.availableBalance) +
parseFloat(item.freezeBalance)).toFixed(2) | currency}}</a> parseFloat(item.freezeBalance)).toFixed(2) | currency}}</a>

View File

@ -80,7 +80,7 @@ export class FreightAccountComponent implements OnInit {
} }
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
private initSF(): SFSchema { private initSF(): SFSchema {
@ -167,11 +167,11 @@ export class FreightAccountComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '企业名称', width: 140, index: 'tenantName' }, { title: '企业名称', width: 170, index: 'tenantName' },
{ title: '联系人', width: 120, index: 'name' }, { title: '联系人', width: 120, index: 'name' },
{ title: '联系人电话', width: 140, index: 'phone' }, { title: '联系人电话', width: 140, index: 'phone' },
{ title: '网络货运人', width: 140, index: 'ltdName' }, { title: '网络货运人', width: 170, index: 'ltdName' },
{ title: '银行类型',width: 120, index: 'bankTypeLabel' }, { title: '银行类型', width: 120, index: 'bankTypeLabel' },
{ title: '虚拟账户', width: 140, index: 'virtualAccount' }, { title: '虚拟账户', width: 140, index: 'virtualAccount' },
{ {
title: '可用余额', title: '可用余额',
@ -199,7 +199,7 @@ export class FreightAccountComponent implements OnInit {
{ {
title: '状态', title: '状态',
index: 'stateDeletedLabel', index: 'stateDeletedLabel',
width: 80, width: 80
}, },
{ {
title: '操作', title: '操作',

View File

@ -40,7 +40,7 @@
{{headerInfo?.driver2IdName}} {{headerInfo?.driver2IdName}}
</se> </se>
<se label="收款账户" required> <se label="收款账户" required>
{{headerInfo?.ltdaccount}} {{headerInfo?.ltdaccountId}}
</se> </se>
<se label="应付金额"> <se label="应付金额">
{{headerInfo?.prmoney | currency}} {{headerInfo?.prmoney | currency}}
@ -72,7 +72,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -87,7 +87,7 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '200px' }"> [loading]="false" [scroll]="{ x:'1200px',y: '200px' }">
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{index+1}} {{index+1}}
</ng-template> </ng-template>

View File

@ -41,7 +41,7 @@ export class PayableOrderDetailComponent implements OnInit {
} }
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body, { billHId: this.billHId }); Object.assign(requestOptions.body, { phxHId: this.billHId });
if (this.sf) { if (this.sf) {
Object.assign(requestOptions.body, { Object.assign(requestOptions.body, {
...this.sf.value, ...this.sf.value,
@ -159,14 +159,14 @@ export class PayableOrderDetailComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '序号', render: 'no', width: 80 }, { title: '序号', render: 'no', width: 80 },
{ title: '费用号', index: 'feeHCode', width: 100 }, { title: '费用号', index: 'feeHCode', width: 140 },
{ title: '费用日期', index: 'feedate', type: 'date', width: 150 }, { title: '费用日期', index: 'feedate', type: 'date', width: 150 },
{ title: '订单号', index: 'billHCode', width: 100 }, { title: '订单号', index: 'billHCode', width: 140 },
{ title: '订单日期', index: 'billTime', width: 150 }, { title: '订单日期', index: 'billTime', width: 150 },
{ title: '费用类型', index: 'feetype', width: 90 }, { title: '费用类型', index: 'feetype', width: 90 },
{ title: '订单费用科目', index: 'billLTypeLabel', width: 100 }, { title: '订单费用科目', index: 'billLTypeLabel', width: 100 },
{ title: '费用科目', index: 'feeSubIdName', width: 140 }, { title: '费用科目', index: 'feeSubIdName', width: 140 },
{ title: '结算客户', index: 'cnoName', width: 100 }, { title: '结算客户', index: 'cnoName', width: 140 },
{ {
title: '已收金额', title: '已收金额',
index: 'phxmoney', index: 'phxmoney',

View File

@ -20,10 +20,10 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"
[class.expend-options]="_$expand"> [class.expend-options]="_$expand">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="false" (click)="resetSF()">重置</button>
<!-- <button nz-button [disabled]="service.http.loading"> 导出</button> <!-- <button nz-button [disabled]="false"> 导出</button>
<button nz-button [disabled]="service.http.loading"> 导出核销</button> --> <button nz-button [disabled]="false"> 导出核销</button> -->
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -33,7 +33,7 @@
</nz-card> </nz-card>
<nz-card class="content-box" nzBordered> <nz-card class="content-box" nzBordered>
<st #st [data]="service.$api_get_fico_ph_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_fico_ph_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x:'1200px' }" (change)="stChange($event)">
</st> </st>
</nz-card> </nz-card>

View File

@ -4,8 +4,6 @@ import { Router } from '@angular/router';
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st'; import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form'; import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { AddCollectionInvoiceModalComponent } from 'src/app/routes/ticket-management/components/input-invoice/add-collection-invoice-modal/add-collection-invoice-modal.component';
import { TicketService } from 'src/app/routes/ticket-management/services/ticket.service';
import { FreightAccountService } from '../../services/freight-account.service'; import { FreightAccountService } from '../../services/freight-account.service';
@Component({ @Component({
@ -229,10 +227,10 @@ export class PayableOrderComponent implements OnInit {
return [ return [
{ title: '', index: 'key', type: 'checkbox' }, { title: '', index: 'key', type: 'checkbox' },
{ title: '核销单号', index: 'phxcode', type: 'link', width: 140 }, { title: '核销单号', index: 'phxcode', type: 'link', width: 140 },
{ title: '网络货运人', index: 'ltdName', width: 140 }, { title: '网络货运人', index: 'ltdName', width: 160 },
{ title: '核销日期', index: 'phxdate', type: 'date', width: 160 }, { title: '核销日期', index: 'phxdate', type: 'date', width: 160 },
{ title: '付款账户', index: 'shipperaccount', width: 120 }, { title: '付款账户', index: 'shipperaccount', width: 170 },
{ title: '收款账户', index: 'ltdaccount', width: 120 }, { title: '收款账户', index: 'ltdaccountId', width: 170 },
{ {
title: '核销金额', title: '核销金额',
index: 'phxmoney', index: 'phxmoney',
@ -253,7 +251,7 @@ export class PayableOrderComponent implements OnInit {
{ title: '结算客户', index: 'cno', width: 120 }, { title: '结算客户', index: 'cno', width: 120 },
{ title: '银行水单', index: 'bankreceipt', width: 120 }, { title: '银行水单', index: 'bankreceipt', width: 120 },
{ title: '创建时间', index: 'createTime', width: 160 }, { title: '创建时间', index: 'createTime', width: 160 },
{ title: '创建人', index: 'createUserIdLabel', width: 120 }, // { title: '创建人', index: 'createUserIdLabel', width: 120 },
{ title: '核销状态', index: 'sts', type: 'enum', enum: { 0: '待核销', 1: '已核销' }, width: 120 }, { title: '核销状态', index: 'sts', type: 'enum', enum: { 0: '待核销', 1: '已核销' }, width: 120 },
{ title: '核销备注', index: 'remarks', width: 120 }, { title: '核销备注', index: 'remarks', width: 120 },
{ {
@ -265,7 +263,7 @@ export class PayableOrderComponent implements OnInit {
{ {
text: '浏览', text: '浏览',
click: item => click: item =>
this.router.navigate(['/financial-management/payable-order/detail/' + item.id], { queryParams: { billHId: item.billHId } }) this.router.navigate(['/financial-management/payable-order/detail/' + item.id], { queryParams: { billHId: item.id } })
} }
] ]
} }

View File

@ -29,7 +29,7 @@
{{headerInfo?.ltdAccountId}} {{headerInfo?.ltdAccountId}}
</se> </se>
<se label="应付已核销" required> <se label="应付已核销" required>
{{headerInfo?.payMoney}} {{headerInfo?.payMoney | currency}}
</se> </se>
</div> </div>
<div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" se-container [labelWidth]="150" col="1"> <div nz-col [nzXl]="8" [nzLg]="8" [nzSm]="8" [nzXs]="8" se-container [labelWidth]="150" col="1">
@ -37,7 +37,7 @@
{{headerInfo?.payDate}} {{headerInfo?.payDate}}
</se> </se>
<se label="收款账户" required> <se label="收款账户" required>
{{headerInfo?.payBankTypeLabel}} {{headerInfo?.hrBankName}} - {{headerInfo?.hrBankNo}}
</se> </se>
<se label="确认日期" required> <se label="确认日期" required>
{{headerInfo?.payDate}} {{headerInfo?.payDate}}
@ -51,7 +51,7 @@
{{headerInfo?.payModeLabel}} {{headerInfo?.payModeLabel}}
</se> </se>
<se label="付款类型" required> <se label="付款类型" required>
{{headerInfo?.payType}} {{headerInfo?.payTypeLabel}}
</se> </se>
<se label="付款金额" required> <se label="付款金额" required>
{{headerInfo?.payMoney |currency}} {{headerInfo?.payMoney |currency}}
@ -69,7 +69,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -84,7 +84,7 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '200px' }"> [loading]="false" [scroll]="{ x:'1200px',y: '200px' }">
<ng-template st-row="billHCode" let-item let-index="index" let-column="column"> <ng-template st-row="billHCode" let-item let-index="index" let-column="column">
{{index+1}} {{index+1}}
</ng-template> </ng-template>

View File

@ -8,9 +8,8 @@
[ui]="{ '*': { spanLabelFixed: 110,grid: { lg: 8, md: 12, sm: 12, xs: 24 } }}" [compact]="true" [ui]="{ '*': { spanLabelFixed: 110,grid: { lg: 8, md: 12, sm: 12, xs: 24 } }}" [compact]="true"
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 7" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right" <div nz-col [nzXl]="_$expand ? 24 : 7" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
[class.expend-options]="_$expand"> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<!-- <button nz-button nzType="primary" > 导出</button> <!-- <button nz-button nzType="primary" > 导出</button>
<button nz-button nzType="primary" > 导出明细</button> --> <button nz-button nzType="primary" > 导出明细</button> -->
@ -34,7 +33,7 @@
</div> </div>
</div> </div>
<st #st [data]="service.$api_get_payment_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_payment_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x:'1200px' }" (change)="stChange($event)">
</st> </st>
</nz-card> </nz-card>

View File

@ -108,16 +108,16 @@ export class PaymentOrderComponent implements OnInit {
}, },
default: null default: null
}, },
orderS2n: { // orderS2n: {
type: 'string', // type: 'string',
title: '付款状态', // title: '付款状态',
ui: { // ui: {
widget: 'dict-select', // widget: 'dict-select',
containsAllLabel: true, // containsAllLable: true,
params: { dictKey: 'refund:apply:status' }, // params: { dictKey: 'refund:apply:status' },
placeholder: '请选择' // placeholder: '请选择'
} // }
}, // },
paytype: { paytype: {
type: 'string', type: 'string',
title: '付款类型', title: '付款类型',
@ -126,9 +126,6 @@ export class PaymentOrderComponent implements OnInit {
containsAllLabel: true, containsAllLabel: true,
params: { dictKey: 'pay:type' }, params: { dictKey: 'pay:type' },
placeholder: '请选择', placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
} }
}, },
paymode: { paymode: {
@ -237,7 +234,7 @@ export class PaymentOrderComponent implements OnInit {
return [ return [
{ title: '', index: 'key', type: 'checkbox', fixed: 'left', className: 'text-center' }, { title: '', index: 'key', type: 'checkbox', fixed: 'left', className: 'text-center' },
{ title: '付款单号', index: 'payCode', type: 'link', width: 180 }, { title: '付款单号', index: 'payCode', type: 'link', width: 180 },
{ title: '网络货运人', index: 'ltdName', width: 160 }, { title: '网络货运人', index: 'ltdName', width: 180 },
{ title: '要求付款日期', index: 'payDate', type: 'date', className: 'text-center', width: 150 }, { title: '要求付款日期', index: 'payDate', type: 'date', className: 'text-center', width: 150 },
{ {
title: '付款金额', title: '付款金额',
@ -252,7 +249,7 @@ export class PaymentOrderComponent implements OnInit {
{ title: '结算客户', index: 'cnoName', width: 160 }, { title: '结算客户', index: 'cnoName', width: 160 },
{ title: '收款人', index: 'hrToLabel', width: 150 }, { title: '收款人', index: 'hrToLabel', width: 150 },
{ title: '应付已核销', index: 'ishrhxLabel', width: 150 }, { title: '应付已核销', index: 'ishrhxLabel', width: 150 },
{ title: '确认日期', index: 'payDate', type: 'date', className: 'text-center', width: 150 }, { title: '确认日期', index: 'payDate2', type: 'date', className: 'text-center', width: 150 },
{ title: '创建时间', index: 'payDate', type: 'date', className: 'text-center', width: 150 }, { title: '创建时间', index: 'payDate', type: 'date', className: 'text-center', width: 150 },
{ title: '创建人', index: 'createUserIdLabel', width: 160 }, { title: '创建人', index: 'createUserIdLabel', width: 160 },
{ title: '付款备注', index: 'payRemarks', width: 200 }, { title: '付款备注', index: 'payRemarks', width: 200 },

View File

@ -1,3 +1,13 @@
<!--
* @Description :
* @Version : 1.0
* @Author : Shiming
* @Date : 2022-03-21 14:19:21
* @LastEditors : Shiming
* @LastEditTime : 2022-03-21 15:03:40
* @FilePath : \\tms-obc-web\\src\\app\\routes\\financial-management\\components\\payment-record\\payment-record.component.html
* Copyright (C) 2022 huzhenhong. All rights reserved.
-->
<page-header-wrapper [title]="'支付记录'"> <page-header-wrapper [title]="'支付记录'">
</page-header-wrapper> </page-header-wrapper>
@ -10,7 +20,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button> 导出</button> <button nz-button> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -30,28 +40,27 @@
<nz-tab nzTitle="支付失败" (nzClick)="changePaymentStatus('5')"></nz-tab> <nz-tab nzTitle="支付失败" (nzClick)="changePaymentStatus('5')"></nz-tab>
</nz-tabset> </nz-tabset>
<st #st [data]="service.$api_get_order_payment_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_order_payment_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }"> [loading]="false" [scroll]="{ x:'1200px' }">
<ng-template st-row="orderPaymentCode" let-item let-index="index" let-column="column"> <ng-template st-row="orderPaymentCode" let-item let-index="index" let-column="column">
{{ item.orderPaymentCode }} <br> <a>{{ item.paymentStatusLabel }}</a> {{ item?.orderPaymentCode }} <br> <a>{{ item?.paymentStatusLabel }}</a>
</ng-template> </ng-template>
<ng-template st-row="amountDetails" let-item let-index="index" let-column="column"> <ng-template st-row="amountDetails" let-item let-index="index" let-column="column">
预付:¥{{ item.price }}<br /> <ng-container *ngFor="let detail of item?.amountDetails">
<ng-container *ngIf="item.payType==='1'"> {{detail.costName}}:{{ detail.price | currency }}<br />
附加费:¥ {{ item.surcharge }}
</ng-container> </ng-container>
</ng-template> </ng-template>
<ng-template st-row="billCode" let-item let-index="index" let-column="column"> <ng-template st-row="billCode" let-item let-index="index" let-column="column">
{{ item.billCode }} <br> {{item.billStatusLabel }} {{ item?.billCode }} <br> {{item?.billStatusLabel }}
</ng-template> </ng-template>
<ng-template st-row="wayBillCode" let-item let-index="index" let-column="column"> <ng-template st-row="wayBillCode" let-item let-index="index" let-column="column">
{{ item.wayBillCode }} <br> {{item.wayBillStatusLabel }} {{ item?.wayBillCode }} <br> {{item?.wayBillStatusLabel }}
</ng-template> </ng-template>
<ng-template st-row="driverId" let-item let-index="index" let-column="column"> <ng-template st-row="driverId" let-item let-index="index" let-column="column">
{{ item.driverName }} <br> {{ item.driverTelephone }} <br> {{ item.driverLicensePlate }} {{ item?.driverName }} <br> {{ item?.driverTelephone }} {{ item?.driverLicencePlate }}
</ng-template> </ng-template>
<ng-template st-row="captainName" let-item let-index="index" let-column="column"> <ng-template st-row="captainName" let-item let-index="index" let-column="column">
{{ item.captainName }} <br> {{ item.captainTelephone }} {{ item?.captainName }} <br> {{ item?.captainTelephone }}
</ng-template> </ng-template>
</st> </st>
</nz-card> </nz-card>

View File

@ -82,7 +82,7 @@ export class PaymentRecordComponent implements OnInit {
hidden: true hidden: true
} }
}, },
orderSn: { orderPaymentCode: {
type: 'string', type: 'string',
title: '支付编号', title: '支付编号',
ui: { ui: {
@ -166,9 +166,9 @@ export class PaymentRecordComponent implements OnInit {
payType: { payType: {
type: 'string', type: 'string',
title: '支付类型', title: '支付类型',
enum: [{ label: '全部', value: '' }],
ui: { ui: {
widget: 'select', widget: 'dict-select',
params: { dictKey: 'paybill:type' },
placeholder: '请选择', placeholder: '请选择',
visibleIf: { visibleIf: {
expand: (value: boolean) => value expand: (value: boolean) => value
@ -238,11 +238,11 @@ export class PaymentRecordComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '支付编号', render: 'orderPaymentCode', width: 180 }, { title: '支付编号', render: 'orderPaymentCode', width: 200 },
{ {
title: '支付金额', title: '支付金额',
render: 'payAmount', render: 'payAmount',
width: 120, width: 140,
type: 'widget', type: 'widget',
className: 'text-right', className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.payAmount }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.payAmount }) }
@ -250,40 +250,40 @@ export class PaymentRecordComponent implements OnInit {
{ {
title: '运费明细', title: '运费明细',
render: 'amountDetails', render: 'amountDetails',
width: 150, width: 160
format: item => { // format: item => {
let surcharge = 0; // (item.amountDetails as Array<any>).forEach(detail => {
(item.amountDetails as Array<any>).forEach(detail => { // detail.surcharge = detail.price + (detail.surcharge || 0);
surcharge += detail.surcharge || 0; // });
}); // console.log(item.amountDetails);
item.surcharge = surcharge;
item.price = item.amountDetails?.[0]?.price || 0; // return '';
return ''; // }
}
}, },
{ {
title: '支付类型', title: '支付类型',
index: 'payTypeLabel', index: 'payTypeLabel',
width: 130 width: 140
}, },
{ title: '货主', index: 'enterpriseInfoName', width: 160 }, { title: '货主', index: 'enterpriseInfoName', width: 180 },
{ title: '订单号', render: 'billCode', width: 160 }, { title: '订单号', render: 'billCode', width: 170 },
{ title: '运单号', render: 'wayBillCode', width: 160 }, { title: '运单号', render: 'wayBillCode', width: 170 },
{ title: '货源编号', index: 'resourceCode', width: 160 }, { title: '货源编号', index: 'resourceCode', width: 160 },
{ {
title: '服务类型', title: '服务类型',
index: 'serviceTypeLabel', index: 'serviceTypeLabel',
width: 150 width: 150
}, },
{ title: '承运司机', render: 'driverId', width: 120 }, { title: '承运司机', render: 'driverId', width: 140 },
{ title: '收款人', render: 'captainName', width: 120 }, { title: '收款人', render: 'captainName', width: 140 },
{ title: '银行类型', index: 'bankType', width: 150, type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } }, { title: '银行类型', index: 'bankType', width: 150, type: 'enum', enum: { 1: '平安银行', 2: '浦发银行' } },
{ title: '网络货运人', index: 'ltdName', width: 160 }, { title: '网络货运人', index: 'ltdName', width: 160 },
{ title: '申请时间', index: 'applyTime', width: 160 }, { title: '申请时间', index: 'applyTime', width: 160 },
{ title: '申请人', index: 'applyUserName', width: 90 }, { title: '申请人', index: 'applyUserName', width: 90 },
{ title: '处理时间', index: 'handlerTime', width: 180 }, { title: '处理时间', index: 'handlerTime', width: 180 },
{ title: '处理人', index: 'handlerUserName', width: 90 }, { title: '处理人', index: 'handlerUserName', width: 90 },
{ title: '失败原因', index: 'failCause', width: 250 }, { title: '退款状态', index: 'refundStatusLabel', width: 220 },
{ title: '备注', index: 'failCause', width: 250 },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',

View File

@ -51,7 +51,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -64,5 +64,5 @@
<nz-card nzBordered> <nz-card nzBordered>
<st #st [data]="service.$api_get_platform_account_detail_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_platform_account_detail_page" [columns]="columns" [req]="{ process: beforeReq }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '300px' }" (change)="stChange($event)"></st> [loading]="false" [scroll]="{ x:'1200px',y: '300px' }" (change)="stChange($event)"></st>
</nz-card> </nz-card>

View File

@ -2,6 +2,7 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { ActivatedRoute } from '@angular/router'; import { ActivatedRoute } from '@angular/router';
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st'; import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form'; import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { FreightAccountService } from '../../../services/freight-account.service'; import { FreightAccountService } from '../../../services/freight-account.service';
@Component({ @Component({
@ -65,7 +66,7 @@ export class PlatformAccountDetailComponent implements OnInit {
stChange(e: STChange): void {} stChange(e: STChange): void {}
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
goBack() { goBack() {
@ -134,6 +135,24 @@ export class PlatformAccountDetailComponent implements OnInit {
}, },
default: '' default: ''
}, },
channelSource: {
type: 'string',
title: '账户类型',
enum: [
{ value: '', label: '全部' },
{ value: '1', label: '货主账户' },
{ value: '2', label: '司机账户' },
{ value: '3', label: '运营商账户' }
],
ui: {
widget: 'select',
placeholder: '请选择',
visibleIf: {
expand: (value: boolean) => value
}
},
default: ''
},
incomeType: { incomeType: {
type: 'string', type: 'string',
title: '收支类型', title: '收支类型',

View File

@ -44,7 +44,7 @@
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button> 导出</button> <button nz-button> 导出</button>
</div> </div>
@ -53,6 +53,12 @@
<nz-card class="content-box"> <nz-card class="content-box">
<st #st [data]="service.$api_get_platform_account_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_platform_account_page" [columns]="columns" [req]="{ process: beforeReq }"
[scroll]="{ x: '1200px' }" [loading]="service.http.loading"> [page]="{}" [scroll]="{ x: '1200px' }" [loading]="false">
</st> </st>
<div class="total-footer text-md" *ngIf="st?.list?.length !== 0 ">
合计 <label class="text-red-dark">{{ static?.total }}</label> 项,收入
<label class="text-red-dark font-weight-bold">{{ static?.incomeAmount | currency }}</label>,支出
<label class="text-red-dark font-weight-bold">{{static?.payAmount | currency }}</label>
</div>
</nz-card> </nz-card>

View File

@ -19,6 +19,8 @@ export class PlatformAccountComponent implements OnInit {
columns: STColumn[] = this.initST(); columns: STColumn[] = this.initST();
info: any = {}; info: any = {};
static: any = {};
constructor(public service: FreightAccountService, private router: Router, private nzModalService: NzModalService) {} constructor(public service: FreightAccountService, private router: Router, private nzModalService: NzModalService) {}
ngOnInit(): void { ngOnInit(): void {
@ -29,6 +31,7 @@ export class PlatformAccountComponent implements OnInit {
if (this.sf) { if (this.sf) {
Object.assign(requestOptions.body, { ...this.sf.value }); Object.assign(requestOptions.body, { ...this.sf.value });
} }
this.loadStatistics(requestOptions.body);
return requestOptions; return requestOptions;
}; };
@ -44,6 +47,14 @@ export class PlatformAccountComponent implements OnInit {
}); });
} }
loadStatistics(params: any) {
this.service.request(this.service.$api_get_platform_account_statistics, params).subscribe(res => {
if (res) {
this.static = res;
}
});
}
/** /**
* 重置表单 * 重置表单
*/ */

View File

@ -62,7 +62,7 @@
<nz-tabset> <nz-tabset>
<!-- <nz-tab nzTitle="核销信息"> <!-- <nz-tab nzTitle="核销信息">
<st #st [scroll]="{ x: '2000px' }" [data]="[]" [columns]="columns.cost" [page]="{ show: false }" <st #st [scroll]="{ x: '2000px' }" [data]="[]" [columns]="columns.cost" [page]="{ show: false }"
[loading]="service.http.loading" [scroll]="{ x: '1200px', y: '370px' }"> [loading]="false" [scroll]="{ x: '1200px', y: '370px' }">
<ng-template st-row="hrvatmoney" let-item let-index="index"> <ng-template st-row="hrvatmoney" let-item let-index="index">
{{ item.hrvatmoney | currency}} {{ item.hrvatmoney | currency}}
</ng-template> </ng-template>
@ -79,7 +79,7 @@
<nz-tab nzTitle="预收信息"> <nz-tab nzTitle="预收信息">
<st #st [scroll]="{ x: '2000px' }" [data]="service.$api_get_receipt_detail" [columns]="columns.requested" <st #st [scroll]="{ x: '2000px' }" [data]="service.$api_get_receipt_detail" [columns]="columns.requested"
[req]="{ method: 'POST', allInBody: true, process: beforeReq }" [res]="{ reName: { list: 'data' } }" [req]="{ method: 'POST', allInBody: true, process: beforeReq }" [res]="{ reName: { list: 'data' } }"
[page]="{ show: false }" [loading]="service.http.loading" [scroll]="{ x: '1200px', y: '370px' }"> [page]="{ show: false }" [loading]="false" [scroll]="{ x: '1200px', y: '370px' }">
<ng-template st-row="vatnotax" let-item let-index="index"> <ng-template st-row="vatnotax" let-item let-index="index">
{{ item.vatnotax | currency}} {{ item.vatnotax | currency}}
</ng-template> </ng-template>

View File

@ -17,7 +17,7 @@
[compact]="true" [button]="'none'"></sf> [compact]="true" [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 7" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="_$expand ? 24 : 7" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<!-- <button nz-button nzType="primary"> 导出</button> <!-- <button nz-button nzType="primary"> 导出</button>
<button nz-button nzType="primary"> 导出核销</button> --> <button nz-button nzType="primary"> 导出核销</button> -->
@ -40,7 +40,7 @@
</div> </div>
</div> </div>
<st #st [data]="service.$api_get_receipt_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_receipt_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '1200px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x: '1200px' }" (change)="stChange($event)">
</st> </st>
</nz-card> </nz-card>

View File

@ -13,10 +13,10 @@
{{headerInfo?.ltdName}} {{headerInfo?.ltdName}}
</se> </se>
<se label="结算客户"> <se label="结算客户">
{{headerInfo?.cno}} {{headerInfo?.cnoName}}
</se> </se>
<se label="收款账户" required> <se label="收款账户" required>
{{headerInfo?.ltdaccount}} {{headerInfo?.ltdaccountId}}
</se> </se>
<se label="核销金额" required> <se label="核销金额" required>
{{headerInfo?.ahxmoney | currency}} {{headerInfo?.ahxmoney | currency}}
@ -27,10 +27,10 @@
{{headerInfo?.ahxdate}} {{headerInfo?.ahxdate}}
</se> </se>
<se label="付款人" required> <se label="付款人" required>
{{headerInfo?.arto}} {{headerInfo?.artoname}}
</se> </se>
<se label="付款账户" required> <se label="付款账户" required>
{{headerInfo?.shipperaccount}} {{headerInfo?.artocode}}
</se> </se>
<se label="应收金额"> <se label="应收金额">
{{headerInfo?.armoney | currency}} {{headerInfo?.armoney | currency}}
@ -41,7 +41,7 @@
{{headerInfo?.banktypeLabel}} {{headerInfo?.banktypeLabel}}
</se> </se>
<se label="收款类型" required> <se label="收款类型" required>
{{headerInfo?.arvattype==='1'?'费用款项':''}} {{headerInfo?.brmtypeLabel}}
</se> </se>
<se label="银行水单"> <se label="银行水单">
{{headerInfo?.bankreceipt}} {{headerInfo?.bankreceipt}}
@ -62,7 +62,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
@ -77,7 +77,7 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '200px' }"> [loading]="false" [scroll]="{ x:'1200px',y: '200px' }">
<ng-template st-row="no" let-item let-index="index" let-column="column"> <ng-template st-row="no" let-item let-index="index" let-column="column">
{{index+1}} {{index+1}}
</ng-template> </ng-template>

View File

@ -42,16 +42,16 @@ export class ReceivableOrderDetailComponent implements OnInit {
} }
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body, { billHId: this.billHId }); Object.assign(requestOptions.body, { ahxHId: this.id });
if (this.sf) { if (this.sf) {
Object.assign(requestOptions.body, { Object.assign(requestOptions.body, {
...this.sf.value, ...this.sf.value
}); });
if (this.sf.value.feedate?.[0]) { if (this.sf.value.feedate?.[0]) {
Object.assign(requestOptions.body, { Object.assign(requestOptions.body, {
feedate: { feedate: {
start: this.sf.value.feedate?.[0] || '', start: this.sf.value.feedate?.[0] || '',
end: this.sf.value.feedate?.[1] || '' end: this.sf.value.feedate?.[1] || ''
} }
}); });
} }
@ -108,7 +108,7 @@ export class ReceivableOrderDetailComponent implements OnInit {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择',
allowClear: true, allowClear: true,
asyncData: () => this.service.getCloseAccount(), asyncData: () => this.service.getCloseAccount()
}, },
default: '' default: ''
}, },
@ -122,7 +122,7 @@ export class ReceivableOrderDetailComponent implements OnInit {
expand: (value: boolean) => value expand: (value: boolean) => value
} }
} as SFDateWidgetSchema } as SFDateWidgetSchema
}, }
// billTime: { // billTime: {
// title: '订单日期', // title: '订单日期',
// type: 'string', // type: 'string',
@ -146,8 +146,8 @@ export class ReceivableOrderDetailComponent implements OnInit {
{ title: '订单号', index: 'billHCode', width: 100 }, { title: '订单号', index: 'billHCode', width: 100 },
// { title: '订单日期', index: 'billTime', width: 150 }, // { title: '订单日期', index: 'billTime', width: 150 },
// { title: '费用类型', index: 'cnoName', width: 90 }, // { title: '费用类型', index: 'cnoName', width: 90 },
// { title: '订单费用科目', index: 'feeSubId', width: 100 }, { title: '订单费用科目', index: 'billLTypeLabel', width: 100 },
{ title: '费用科目', index: 'feeSubId', width: 140 }, { title: '费用科目', index: 'feeSubName', width: 140 },
{ title: '结算客户', index: 'cnoName', width: 100 }, { title: '结算客户', index: 'cnoName', width: 100 },
{ {
title: '已收金额', title: '已收金额',

View File

@ -18,10 +18,10 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"
[class.expend-options]="_$expand"> [class.expend-options]="_$expand">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="false" (click)="resetSF()">重置</button>
<!-- <button nz-button [disabled]="service.http.loading"> 导出</button> <!-- <button nz-button [disabled]="false"> 导出</button>
<button nz-button [disabled]="service.http.loading"> 导出核销</button> --> <button nz-button [disabled]="false"> 导出核销</button> -->
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -31,7 +31,7 @@
</nz-card> </nz-card>
<nz-card class="content-box" nzBordered> <nz-card class="content-box" nzBordered>
<st #st [data]="service.$api_get_fico_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_fico_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '1200px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x: '1200px' }" (change)="stChange($event)">
</st> </st>
</nz-card> </nz-card>

View File

@ -242,10 +242,10 @@ export class ReceivableOrderComponent implements OnInit {
return [ return [
{ title: '', index: 'key', type: 'checkbox' }, { title: '', index: 'key', type: 'checkbox' },
{ title: '核销单号', index: 'ahxcode', type: 'link', width: 140 }, { title: '核销单号', index: 'ahxcode', type: 'link', width: 140 },
{ title: '网络货运人', index: 'ltdName', width: 140 }, { title: '网络货运人', index: 'ltdName', width: 160 },
{ title: '核销日期', index: 'ahxdate', type: 'date', width: 160 }, { title: '核销日期', index: 'ahxdate', type: 'date', width: 160 },
{ title: '付款账户', index: 'shipperaccount', width: 120 }, { title: '付款账户', index: 'shipperaccount', width: 170 },
{ title: '收款账户', index: 'ltdaccountId', width: 120 }, { title: '收款账户', index: 'ltdaccountId', width: 160 },
{ title: '核销类型', index: 'ahxType', type: 'enum', enum: { '1': '预收款' }, width: 120 }, { title: '核销类型', index: 'ahxType', type: 'enum', enum: { '1': '预收款' }, width: 120 },
{ {
title: '核销金额', title: '核销金额',
@ -266,7 +266,7 @@ export class ReceivableOrderComponent implements OnInit {
{ title: '付款人', index: 'artoname', width: 200 }, { title: '付款人', index: 'artoname', width: 200 },
{ title: '结算客户', index: 'cnoName', width: 120 }, { title: '结算客户', index: 'cnoName', width: 120 },
{ title: '银行水单', index: 'bankreceipt', width: 200 }, { title: '银行水单', index: 'bankreceipt', width: 200 },
{ title: '创建时间', index: 'createTime', width: 160 }, { title: '创建时间', index: 'createTime', width: 180 },
// { title: '收款人', index: 'driver2IdName', width: 120 }, // { title: '收款人', index: 'driver2IdName', width: 120 },
// { title: '创建人', index: 'createUserIdLabel', width: 120 }, // { title: '创建人', index: 'createUserIdLabel', width: 120 },
{ title: '核销状态', index: 'sts', type: 'enum', enum: { 0: '待核销', 1: '已核销' }, width: 120 }, { title: '核销状态', index: 'sts', type: 'enum', enum: { 0: '待核销', 1: '已核销' }, width: 120 },
@ -275,6 +275,7 @@ export class ReceivableOrderComponent implements OnInit {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
width: 120, width: 120,
className: 'text-center',
buttons: [ buttons: [
{ {
text: '浏览', text: '浏览',

View File

@ -24,7 +24,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button (click)="exportList()"> 导出</button> <button nz-button (click)="exportList()"> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -36,8 +36,8 @@
</nz-card> </nz-card>
<nz-card class="content-box" nzBordered> <nz-card class="content-box" nzBordered>
<st #st [data]="service.$api_get_recharge_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_recharge_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }"> [loading]="false" [scroll]="{ x:'1200px' }">
<ng-template st-row="transferBankAccount" let-item let-index="index" let-column="column"> <ng-template st-row="transferBankAccount" let-item let-index="index" let-column="column">
{{ item.transferBankOpenName }} <br> {{ item.transferBankCardNumber }} {{ item.transferBankOpenName }} <br> {{ item.transferBankCardNumber }}
</ng-template> </ng-template>

View File

@ -49,7 +49,7 @@ export class RechargeRecordComponent implements OnInit {
} }
exportList() { exportList() {
this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageIndex: this.st.pi, pageSize: this.st.ps }); this.service.downloadFile(this.service.$mock_url, { ...this.sf.value, pageSize: -1 });
} }
private initSF(): SFSchema { private initSF(): SFSchema {
@ -92,7 +92,7 @@ export class RechargeRecordComponent implements OnInit {
format: 'yyyy-MM-dd' format: 'yyyy-MM-dd'
} as SFDateWidgetSchema } as SFDateWidgetSchema
}, },
rechargeName: { roleName: {
type: 'string', type: 'string',
title: '账户名称', title: '账户名称',
ui: { ui: {
@ -162,9 +162,16 @@ export class RechargeRecordComponent implements OnInit {
{ title: '网络货运人', index: 'ltdName', width: 160 }, { title: '网络货运人', index: 'ltdName', width: 160 },
{ title: '银行类型', index: 'bankTypeLabel', width: 100 }, { title: '银行类型', index: 'bankTypeLabel', width: 100 },
{ title: '账户类型', index: 'accountTypeLabel', width: 100 }, { title: '账户类型', index: 'accountTypeLabel', width: 100 },
{ title: '账户名称', index: 'rechargeName', width: 140 }, { title: '账户名称', index: 'roleName', width: 160 },
{ title: '虚拟账户', index: 'virtualAccount', width: 100 }, { title: '虚拟账户', index: 'virtualAccount', width: 100 },
{ title: '充值金额', index: 'rechargeAmount', width: 100 }, {
title: '充值金额',
index: 'rechargeAmount',
width: 160,
type: 'widget',
className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.rechargeAmount }) }
},
{ title: '充值银行账户', render: 'transferBankAccount', width: 200 }, { title: '充值银行账户', render: 'transferBankAccount', width: 200 },
{ title: '充值方式', index: 'payChannelLabel', width: 100 }, { title: '充值方式', index: 'payChannelLabel', width: 100 },
{ title: '充值状态', index: 'rechargeStatusLabel', width: 100 }, { title: '充值状态', index: 'rechargeStatusLabel', width: 100 },

View File

@ -10,7 +10,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button> 导出</button> <button nz-button> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -25,18 +25,20 @@
<nz-tabset> <nz-tabset>
<nz-tab nzTitle="全部" (nzClick)="changeRefundStatus()"></nz-tab> <nz-tab nzTitle="全部" (nzClick)="changeRefundStatus()"></nz-tab>
<nz-tab nzTitle="待审核" (nzClick)="changeRefundStatus('1')"></nz-tab> <nz-tab nzTitle="待审核" (nzClick)="changeRefundStatus('1')"></nz-tab>
<nz-tab nzTitle="退款中" (nzClick)="changeRefundStatus('2')"></nz-tab> <nz-tab nzTitle="退款中" (nzClick)="changeRefundStatus('4')"></nz-tab>
<nz-tab nzTitle="退款成功" (nzClick)="changeRefundStatus('3')"></nz-tab> <nz-tab nzTitle="退款成功" (nzClick)="changeRefundStatus('2')"></nz-tab>
<nz-tab nzTitle="退款失败" (nzClick)="changeRefundStatus('5')"></nz-tab> <nz-tab nzTitle="退款失败" (nzClick)="changeRefundStatus('5')"></nz-tab>
</nz-tabset> </nz-tabset>
<st #st [data]="service.$api_get_refund_record_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_refund_record_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }"> [loading]="false" [scroll]="{ x:'1200px' }">
<ng-template st-row="orderRefundCode" let-item let-index="index" let-column="column"> <ng-template st-row="orderRefundCode" let-item let-index="index" let-column="column">
{{ item.orderRefundCode }} <br> {{ item.refundStatusLabel }} {{ item.orderRefundCode }} <br> {{ item.refundStatusLabel }}
</ng-template> </ng-template>
<ng-template st-row="refundAmount" let-item let-index="index" let-column="column"> <ng-template st-row="refundAmount" let-item let-index="index" let-column="column">
{{ item.refundAmount |currency }} <ng-container *ngFor="let cost of item.billRefundDetailVOS">
{{cost.costName}}{{ cost.refundAmount |currency }}<br>
</ng-container>
</ng-template> </ng-template>
<ng-template st-row="billRefundPaymentVOS" let-item let-index="index" let-column="column"> <ng-template st-row="billRefundPaymentVOS" let-item let-index="index" let-column="column">
<ng-container *ngFor="let bill of item.billRefundPaymentVOS"> <ng-container *ngFor="let bill of item.billRefundPaymentVOS">

View File

@ -24,18 +24,20 @@ export class RefundRecordComponent implements OnInit {
refundStatus: any = ''; refundStatus: any = '';
msg = ''; msg = '';
constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {} constructor(public service: FreightAccountService, private nzModalService: NzModalService, private router: Router) {}
ngOnInit(): void {} ngOnInit(): void {
}
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
Object.assign(requestOptions.body, { refundStatus: this.refundStatus || null }); Object.assign(requestOptions.body, { refundStatus: this.refundStatus || null });
if (this.sf) { if (this.sf) {
Object.assign(requestOptions.body, { Object.assign(requestOptions.body, {
...this.sf.value, ...this.sf.value,
createTime: { refundExecuteTime: {
start: this.sf.value.createTime?.[0] || '', start: this.sf.value.refundExecuteTime?.[0] || '',
end: this.sf.value.createTime?.[1] || '' end: this.sf.value.refundExecuteTime?.[1] || ''
} }
}); });
} }
@ -57,6 +59,10 @@ export class RefundRecordComponent implements OnInit {
label: '拒绝', label: '拒绝',
type: 'default', type: 'default',
onClick: () => { onClick: () => {
if (!this.msg) {
this.service.msgSrv.warning('请填写原因');
return false;
}
this.service this.service
.request(this.service.$api_disagree_refund_record, { .request(this.service.$api_disagree_refund_record, {
applicationId: item.id, applicationId: item.id,
@ -152,7 +158,7 @@ export class RefundRecordComponent implements OnInit {
title: '退款类型', title: '退款类型',
enum: [ enum: [
{ value: '1', label: '平台退款货主' }, { value: '1', label: '平台退款货主' },
{ value: '2', label: '司机退款平' }, { value: '2', label: '司机退款平' },
{ value: '3', label: '车队长退款司机' }, { value: '3', label: '车队长退款司机' },
{ value: '4', label: '车队长退款平台' } { value: '4', label: '车队长退款平台' }
], ],
@ -161,7 +167,7 @@ export class RefundRecordComponent implements OnInit {
placeholder: '请选择' placeholder: '请选择'
} }
}, },
shipperId: { enterpriseInfoName: {
type: 'string', type: 'string',
title: '货主', title: '货主',
ui: { ui: {
@ -178,20 +184,17 @@ export class RefundRecordComponent implements OnInit {
placeholder: '请输入' placeholder: '请输入'
} }
}, },
enterpriseProjectId: { enterpriseProjectName: {
type: 'string', type: 'string',
title: '所属项目', title: '所属项目',
ui: { ui: {
widget: 'select', placeholder: '请输入',
placeholder: '请选择',
allowClear: true,
asyncData: () => this.service.getEnterpriseProject(),
visibleIf: { visibleIf: {
expand: (value: boolean) => value expand: (value: boolean) => value
} }
} }
}, },
resourceId: { resourceCode: {
type: 'string', type: 'string',
title: '货源号', title: '货源号',
ui: { ui: {
@ -214,7 +217,7 @@ export class RefundRecordComponent implements OnInit {
nzShowTime: true nzShowTime: true
} as SFDateWidgetSchema } as SFDateWidgetSchema
}, },
ltdid: { ltdId: {
type: 'string', type: 'string',
title: '网络货运人', title: '网络货运人',
ui: { ui: {
@ -245,11 +248,11 @@ export class RefundRecordComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '退款单号', render: 'orderRefundCode', width: 180 }, { title: '退款单号', render: 'orderRefundCode', width: 190 },
{ title: '退款类型', index: 'refundType', width: 120 }, { title: '退款类型', index: 'refundTypeLabel', width: 140 },
{ title: '退款金额', render: 'refundAmount', width: 120 }, { title: '退款金额', render: 'refundAmount', className: 'text-right', width: 180 },
{ title: '退款时间', index: 'applyTime', width: 160 }, { title: '退款时间', index: 'refundExecuteTime', width: 170 },
{ title: '货主', index: 'shipperId', width: 150 }, { title: '货主', index: 'enterpriseInfoName', width: 150 },
{ title: '所属项目', index: 'enterpriseProjectName', width: 140 }, { title: '所属项目', index: 'enterpriseProjectName', width: 140 },
{ title: '支付单', render: 'billRefundPaymentVOS', width: 150 }, { title: '支付单', render: 'billRefundPaymentVOS', width: 150 },
{ title: '订单号', index: 'billCode', width: 150 }, { title: '订单号', index: 'billCode', width: 150 },
@ -258,8 +261,8 @@ export class RefundRecordComponent implements OnInit {
{ title: '收款人', render: 'captain', width: 150 }, { title: '收款人', render: 'captain', width: 150 },
{ title: '网络货运人', index: 'ltdName', width: 180 }, { title: '网络货运人', index: 'ltdName', width: 180 },
{ title: '银行类型', index: 'bankTypeLabel', width: 120 }, { title: '银行类型', index: 'bankTypeLabel', width: 120 },
{ title: '退款原因', index: 'rejectionCause', width: 150 }, { title: '退款原因', index: 'reason', width: 170 },
{ title: '失败原因', index: 'failCause', width: 150 }, { title: '失败原因', index: 'failCause', width: 170 },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
@ -273,6 +276,7 @@ export class RefundRecordComponent implements OnInit {
}, },
{ {
text: '重新发起', text: '重新发起',
iif: item => item.refundStatus === '5',
click: item => this.reApply(item) click: item => this.reApply(item)
} }
// { // {

View File

@ -9,7 +9,7 @@
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand" <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" [class.expend-options]="_$expand"
class="text-right"> class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button (click)="resetSF()">重置</button> <button nz-button (click)="resetSF()">重置</button>
<button nz-button> 导出</button> <button nz-button> 导出</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
@ -21,8 +21,8 @@
</nz-card> </nz-card>
<nz-card class="content-box pt-xl" nzBordered> <nz-card class="content-box pt-xl" nzBordered>
<st #st [data]="service.$api_get_account_blance" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_account_blance" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x: '1200px' }"> [loading]="false" [scroll]="{ x: '1200px' }">
<ng-template st-row="amount"> <ng-template st-row="amount">
</ng-template> </ng-template>

View File

@ -1,10 +1,11 @@
import { Component, OnInit, ViewChild } from '@angular/core'; import { CurrencyPipe } from '@angular/common';
import { Component, ViewChild } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st'; import { STComponent, STColumn, STRequestOptions } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form'; import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { FreightAccountService } from '../../services/freight-account.service'; import { FreightAccountService } from '../../services/freight-account.service';
import { CurrencyPipe } from '@angular/common';
@Component({ @Component({
selector: 'app-transaction-flow', selector: 'app-transaction-flow',
@ -12,7 +13,7 @@ import { CurrencyPipe } from '@angular/common';
styleUrls: ['./transaction-flow.component.less'], styleUrls: ['./transaction-flow.component.less'],
providers: [CurrencyPipe] providers: [CurrencyPipe]
}) })
export class TransactionFlowComponent implements OnInit { export class TransactionFlowComponent {
@ViewChild('st', { static: true }) @ViewChild('st', { static: true })
st!: STComponent; st!: STComponent;
@ViewChild('sf', { static: false }) @ViewChild('sf', { static: false })
@ -29,8 +30,6 @@ export class TransactionFlowComponent implements OnInit {
private currencyPipe: CurrencyPipe private currencyPipe: CurrencyPipe
) {} ) {}
ngOnInit(): void {}
beforeReq = (requestOptions: STRequestOptions) => { beforeReq = (requestOptions: STRequestOptions) => {
if (this.sf) { if (this.sf) {
Object.assign(requestOptions.body, { Object.assign(requestOptions.body, {
@ -152,7 +151,7 @@ export class TransactionFlowComponent implements OnInit {
}, },
default: '' default: ''
}, },
orderS2n2221: { enterpriseName: {
type: 'string', type: 'string',
title: '账户名称', title: '账户名称',
ui: { ui: {
@ -162,7 +161,7 @@ export class TransactionFlowComponent implements OnInit {
} }
} }
}, },
orderSn221f: { projectId: {
type: 'string', type: 'string',
title: '所属项目', title: '所属项目',
ui: { ui: {
@ -214,11 +213,11 @@ export class TransactionFlowComponent implements OnInit {
private initST(): STColumn[] { private initST(): STColumn[] {
return [ return [
{ title: '交易时间', index: 'createTime', width: 180 }, { title: '交易时间', index: 'createTime', width: 180 },
{ title: '流水号', index: 'transactionNumber', width: 150 }, { title: '流水号', index: 'transactionNumber', width: 180 },
{ title: '交易类型', index: 'tradeTypeLabel', width: 120 }, { title: '交易类型', index: 'tradeTypeLabel', width: 120 },
{ title: '关联单号', index: 'businessNumber', width: 150 }, { title: '关联单号', index: 'businessNumber', width: 150 },
{ title: '账户类型', index: 'accountTypeLabel', width: 130 }, { title: '账户类型', index: 'accountTypeLabel', width: 130 },
{ title: '账户名称', index: 'roleName', width: 100 }, { title: '账户名称', index: 'roleName', width: 180 },
{ title: '所属项目', index: 'projectName', width: 140 }, { title: '所属项目', index: 'projectName', width: 140 },
{ title: '收支类型', index: 'incomeTypeLabel', width: 100, className: 'text-center' }, { title: '收支类型', index: 'incomeTypeLabel', width: 100, className: 'text-center' },
{ {
@ -236,9 +235,9 @@ export class TransactionFlowComponent implements OnInit {
className: 'text-right', className: 'text-right',
widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.accountBalance }) } widget: { type: 'currency-chy', params: ({ record }) => ({ value: record.accountBalance }) }
}, },
{ title: '网络货运人', index: 'ltdName', width: 140 }, { title: '网络货运人', index: 'ltdName', width: 180 },
{ title: '银行类型', index: 'bankTypeLabel', width: 100 }, { title: '银行类型', index: 'bankTypeLabel', width: 100 },
{ title: '银行流水号', index: 'channelPaySn', width: 120 }, { title: '银行流水号', index: 'channelPaySn', width: 170 },
{ {
title: '操作', title: '操作',
fixed: 'right', fixed: 'right',
@ -253,7 +252,7 @@ export class TransactionFlowComponent implements OnInit {
bankType: item.bankType, bankType: item.bankType,
rmYll: item.roleId, rmYll: item.roleId,
snglFlgCd: item.channelPaySn, snglFlgCd: item.channelPaySn,
bussType: '07', bussType: item.tradeType === '7' ? '05' : item.tradeType === '8' ? '06' : '07',
ltdId: item.ltdId ltdId: item.ltdId
}) })
} }

View File

@ -19,10 +19,10 @@
<nz-card> <nz-card>
<div se-container labelWidth="150" gutter="32" col="3"> <div se-container labelWidth="150" gutter="32" col="3">
<se-title class="text-center font-weight-bold text-xl">记账凭证 <se-title class="text-center font-weight-bold text-xl">记账凭证
<!-- <button nz-button nzType="primary" [nzLoading]="service.http.loading" style="float: right;">打印</button> --> <!-- <button nz-button nzType="primary" [nzLoading]="false" style="float: right;">打印</button> -->
</se-title> </se-title>
<se label="帐套" required> <se label="帐套" required>
{{info?.ltdId}} {{info?.vcltdcode}} - {{info?.vcltdname}}
</se> </se>
<se label="凭证类型" required> <se label="凭证类型" required>
{{info?.vctype}} {{info?.vctype}}
@ -33,7 +33,7 @@
</div> </div>
<st #st [data]="info?.faShowVOList" [columns]="columns" [footer]="footerTpl" bordered <st #st [data]="info?.faShowVOList" [columns]="columns" [footer]="footerTpl" bordered
[scroll]="{ x:'1200px',y: '420px' }" [page]="{ show: false }" [loading]="service.http.loading"> [scroll]="{ x:'1200px',y: '420px' }" [page]="{ show: false }" [loading]="false">
<ng-template #footerTpl let-s> <ng-template #footerTpl let-s>
<ng-container *ngIf="st.count > 0"> <ng-container *ngIf="st.count > 0">
<div style="display: flex;justify-content: flex-end;"> <div style="display: flex;justify-content: flex-end;">

View File

@ -9,10 +9,10 @@
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)" acl [acl-ability]="['FINANCIAL-VOUCHER-list']">查询</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="false" (click)="resetSF()">重置</button>
<!-- <button nz-button [disabled]="service.http.loading"> 导出</button> <!-- <button nz-button [disabled]="false"> 导出</button>
<button nz-button [disabled]="service.http.loading"> 导出明细</button> --> <button nz-button [disabled]="false"> 导出明细</button> -->
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -33,7 +33,7 @@
</div> --> </div> -->
</div> </div>
<st #st [data]="service.$api_get_fico_vch_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_fico_vch_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x:'1200px' }" (change)="stChange($event)">
</st> </st>
</nz-card> </nz-card>

View File

@ -1,5 +1,5 @@
/* /*
* @Description : * @Description :
* @Version : 1.0 * @Version : 1.0
* @Author : Shiming * @Author : Shiming
* @Date : 2022-01-18 15:57:44 * @Date : 2022-01-18 15:57:44
@ -13,9 +13,7 @@ import { Component, OnInit, ViewChild } from '@angular/core';
import { Router } from '@angular/router'; import { Router } from '@angular/router';
import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st'; import { STComponent, STColumn, STRequestOptions, STChange } from '@delon/abc/st';
import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form'; import { SFComponent, SFSchema, SFDateWidgetSchema } from '@delon/form';
import { ShipperBaseService } from '@shared';
import { NzModalService } from 'ng-zorro-antd/modal'; import { NzModalService } from 'ng-zorro-antd/modal';
import { AddCollectionInvoiceModalComponent } from 'src/app/routes/ticket-management/components/input-invoice/add-collection-invoice-modal/add-collection-invoice-modal.component';
import { FreightAccountService } from '../../services/freight-account.service'; import { FreightAccountService } from '../../services/freight-account.service';
@Component({ @Component({
@ -139,6 +137,22 @@ export class VoucherManagementComponent implements OnInit {
sourceType: { sourceType: {
type: 'string', type: 'string',
title: '原始单类型', title: '原始单类型',
enum: [
{ value: '', label: '全部' },
{ value: 1, label: '收款' },
{ value: 2, label: '收款(退款)' },
{ value: 3, label: '应收费用' },
{ value: 4, label: '应收费用(负数)' },
{ value: 5, label: '应收核销' },
{ value: 6, label: '应收核销(负数)' },
{ value: 7, label: '应付费用' },
{ value: 8, label: '应付费用(负数)' },
{ value: 9, label: '应付核销' },
{ value: 10, label: '应付核销(负数)' },
{ value: 11, label: '分票开票' },
{ value: 12, label: '删除分票' },
{ value: 13, label: '付款' }
],
ui: { ui: {
widget: 'select', widget: 'select',
placeholder: '请选择', placeholder: '请选择',
@ -294,10 +308,10 @@ export class VoucherManagementComponent implements OnInit {
return [ return [
{ title: '', index: 'key', type: 'checkbox', width: 60, className: 'text-center', fixed: 'left' }, { title: '', index: 'key', type: 'checkbox', width: 60, className: 'text-center', fixed: 'left' },
{ title: '凭证号', index: 'vccode', type: 'link', width: 200 }, { title: '凭证号', index: 'vccode', type: 'link', width: 200 },
{ title: '帐套', index: 'ltdId', width: 200 }, { title: '帐套', index: 'ltdId', width: 200, format: item => `${item.vcltdcode}-${item.vcltdname}` },
{ title: '凭证时间', index: 'vctime', type: 'date', width: 200 }, { title: '凭证时间', index: 'vctime', type: 'date', width: 200 },
{ title: '凭证类型', index: 'vctype', width: 200 }, { title: '凭证类型', index: 'vctype', width: 200 },
{ title: '序号', index: 'invmoney', width: 200, format: _ => '1' }, // { title: '序号', index: 'invmoney', width: 200, format: _ => '1' },
{ title: '摘要', index: 'remarks', width: 300 }, { title: '摘要', index: 'remarks', width: 300 },
{ title: '币种', index: 'currency', width: 100 }, { title: '币种', index: 'currency', width: 100 },
{ {
@ -325,11 +339,13 @@ export class VoucherManagementComponent implements OnInit {
title: '操作', title: '操作',
width: '130px', width: '130px',
fixed: 'right', fixed: 'right',
className: 'text-center',
buttons: [ buttons: [
{ {
text: '浏览', text: '浏览',
click: (item: any) => this.router.navigate(['/financial-management/voucher-management/detail/' + item.id]) click: (item: any) => this.router.navigate(['/financial-management/voucher-management/detail/' + item.id]),
}, acl: { ability: ['FINANCIAL-VOUCHER-view'] }
}
// { // {
// text: '修改' // text: '修改'
// }, // },

View File

@ -9,7 +9,7 @@
<nz-card> <nz-card>
<div se-container labelWidth="150" gutter="32" col="3"> <div se-container labelWidth="150" gutter="32" col="3">
<se-title class="text-center font-weight-bold text-xl">记账凭证 <se-title class="text-center font-weight-bold text-xl">记账凭证
<button nz-button nzType="primary" [nzLoading]="service.http.loading" style="float: right;">打印</button> <button nz-button nzType="primary" [nzLoading]="false" style="float: right;">打印</button>
</se-title> </se-title>
<se label="帐套" required> <se label="帐套" required>
{{info?.vcltdcode}} {{info?.vcltdcode}}
@ -23,7 +23,7 @@
</div> </div>
<st #st [data]="info?.faShowVOList" [columns]="columns" [footer]="footerTpl" bordered <st #st [data]="info?.faShowVOList" [columns]="columns" [footer]="footerTpl" bordered
[scroll]="{ x:'1200px',y: '420px' }" [page]="{ show: false }" [loading]="service.http.loading"> [scroll]="{ x:'1200px',y: '420px' }" [page]="{ show: false }" [loading]="false">
<ng-template #footerTpl let-s> <ng-template #footerTpl let-s>
<ng-container *ngIf="st.count > 0"> <ng-container *ngIf="st.count > 0">
<div style="display: flex;justify-content: flex-end;"> <div style="display: flex;justify-content: flex-end;">

View File

@ -9,10 +9,10 @@
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="_$expand ? 24 : 6" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="false" (click)="resetSF()">重置</button>
<button nz-button [disabled]="service.http.loading"> 导出</button> <button nz-button [disabled]="false"> 导出</button>
<button nz-button [disabled]="service.http.loading"> 导出明细</button> <button nz-button [disabled]="false"> 导出明细</button>
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -26,6 +26,6 @@
[req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }" [req]="{ method: 'POST', allInBody: true, reName: { pi: 'pageIndex', ps: 'pageSize' }, process: beforeReq }"
[res]="{ reName: { list: 'data.records', total: 'data.total' } }" [res]="{ reName: { list: 'data.records', total: 'data.total' } }"
[page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }" [page]="{ show: true, showSize: true, pageSizes: [10, 20, 30, 50, 100, 200, 300, 500, 1000] }"
[loading]="service.http.loading" [scroll]="{ x:'1200px',y: '370px' }" (change)="stChange($event)" class="mt-md"> [loading]="false" [scroll]="{ x:'1200px',y: '370px' }" (change)="stChange($event)" class="mt-md">
</st> </st>
</nz-card> </nz-card>

View File

@ -213,6 +213,7 @@ export class VoucherListComponent implements OnInit {
title: '操作', title: '操作',
width: '130px', width: '130px',
fixed: 'right', fixed: 'right',
className: 'text-center',
buttons: [ buttons: [
{ {
text: '浏览', text: '浏览',

View File

@ -19,11 +19,11 @@
[button]="'none'"></sf> [button]="'none'"></sf>
</div> </div>
<div nz-col [nzXl]="_$expand ? 24 : 8" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right"> <div nz-col [nzXl]="_$expand ? 24 : 8" [nzLg]="24" [nzSm]="24" [nzXs]="24" class="text-right">
<button nz-button nzType="primary" [nzLoading]="service.http.loading" (click)="st?.load(1)">查询</button> <button nz-button nzType="primary" [nzLoading]="false" (click)="st?.load(1)">查询</button>
<button nz-button [disabled]="service.http.loading" (click)="resetSF()">重置</button> <button nz-button [disabled]="false" (click)="resetSF()">重置</button>
<!-- <button nz-button nzType="primary" [disabled]="service.http.loading"> 导出</button> <!-- <button nz-button nzType="primary" [disabled]="false"> 导出</button>
<button nz-button nzType="primary" [disabled]="service.http.loading"> 导出明细</button> <button nz-button nzType="primary" [disabled]="false"> 导出明细</button>
<button nz-button nzType="primary" [disabled]="service.http.loading"> 导出凭证</button> --> <button nz-button nzType="primary" [disabled]="false"> 导出凭证</button> -->
<button nz-button nzType="link" (click)="expandToggle()"> <button nz-button nzType="link" (click)="expandToggle()">
{{ !_$expand ? '展开' : '收起' }} {{ !_$expand ? '展开' : '收起' }}
<i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i> <i nz-icon [nzType]="!_$expand ? 'down' : 'up'"></i>
@ -33,7 +33,7 @@
</nz-card> </nz-card>
<nz-card nzBordered> <nz-card nzBordered>
<st #st [data]="service.$api_get_fico_vch_page" [columns]="columns" [req]="{ process: beforeReq }" <st #st [data]="service.$api_get_fico_vch_page" [columns]="columns" [req]="{ process: beforeReq }" [page]="{}"
[loading]="service.http.loading" [scroll]="{ x:'1200px' }" (change)="stChange($event)"> [loading]="false" [scroll]="{ x:'1200px' }" (change)="stChange($event)">
</st> </st>
</nz-card> </nz-card>

View File

@ -16,9 +16,9 @@
</ng-template> </ng-template>
</page-header-wrapper> </page-header-wrapper>
<nz-card> <nz-card [nzLoading]="false">
<nz-alert nzType="info" nzMessage="提现信息" class="mb-md"></nz-alert> <nz-alert nzType="info" nzMessage="提现信息" class="mb-md"></nz-alert>
<div se-container [labelWidth]="100"> <div se-container [labelWidth]="130">
<se label="网络货运人"> <se label="网络货运人">
{{formData?.ltdName}} {{formData?.ltdName}}
</se> </se>
@ -41,16 +41,16 @@
{{formData?.refundStatusLabel}} {{formData?.refundStatusLabel}}
</se> </se>
<se label="提现金额"> <se label="提现金额">
{{formData?.amount}} {{formData?.amount | currency}}
</se> </se>
<se label="银行流水号"> <se label="银行流水号">
{{formData?.bankSerialNumber}} {{formData?.bankSerialNumber}}
</se> </se>
<se label="提现至银行卡"> <se label="提现至银行卡">
{{formData?.bankId}} {{formData?.bankCardNumber}}
</se> </se>
<se label="银行回单" col="1"> <se label="银行回单" col="1">
<img [src]="formData?.bankCardNumber" alt="" style="width: 200px;height: 160px;"> <a (click)="downBack()">{{formData?.refundStatus==='3'?'下载回单':'暂无回单'}}</a>
</se> </se>
</div> </div>

View File

@ -67,6 +67,19 @@ export class WithdrawalsDetailComponent implements OnInit {
}); });
} }
downBack() {
if (this.formData?.refundStatus !== '3') {
return;
}
this.service.getReceiptUrl(this.formData.receiptUrl, {
bankType: this.formData.bankType,
rmYll: this.formData.userId,
snglFlgCd: this.formData.coreSerNo,
bussType: '06',
ltdId: this.formData.ltdId
});
}
goBack() { goBack() {
history.go(-1); history.go(-1);
} }

Some files were not shown because too many files have changed in this diff Show More