Compare commits
597
Commits
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
916b60c951 | ||
|
|
40105ec975 | ||
|
|
415945c87a | ||
|
|
56973db005 | ||
|
|
894ba61c35 | ||
|
|
3e92dcd50c | ||
|
|
f615207959 | ||
|
|
554141efbd | ||
|
|
69c20e52d4 | ||
|
|
0caf687e2d | ||
|
|
0b6a92d06c | ||
|
|
bd83917049 | ||
|
|
b5a04cac8e | ||
|
|
ae5bba39fc | ||
|
|
1115fc3cb0 | ||
|
|
9d75508568 | ||
|
|
db5b4ef5a8 | ||
|
|
65ded67c39 | ||
|
|
e6340c3a77 | ||
|
|
2528a3da0d | ||
|
|
c343677389 | ||
|
|
58439bab67 | ||
|
|
228c4553f8 | ||
|
|
588074fb80 | ||
|
|
dba65e32a8 | ||
|
|
51a8354a37 | ||
|
|
d94530ddb8 | ||
|
|
ef27039e68 | ||
|
|
4fa50833f8 | ||
|
|
4954ad3a4f | ||
|
|
df25140067 | ||
|
|
158aa1a8ef | ||
|
|
b02d72e674 | ||
|
|
5d542663f9 | ||
|
|
3ef18705d5 | ||
|
|
c501d639cf | ||
|
|
359bdcf367 | ||
|
|
4a3e9bd7d0 | ||
|
|
8e4cff1c9b | ||
|
|
94fda50479 | ||
|
|
0a733f63d3 | ||
|
|
2938017ae4 | ||
|
|
a3d01771d6 | ||
|
|
2060aeb007 | ||
|
|
a877ffa1b4 | ||
|
|
f8e3c46439 | ||
|
|
23d7fc7dcb | ||
|
|
f297e0fd46 | ||
|
|
7aac6bbc3c | ||
|
|
eef888a6b6 | ||
|
|
19f8c9bb4a | ||
|
|
115f1f8cc7 | ||
|
|
2c1c1a97e8 | ||
|
|
1a93ddfbd5 | ||
|
|
62c6464d7b | ||
|
|
2f8cd98ced | ||
|
|
9ee1e96526 | ||
|
|
01c0576569 | ||
|
|
b31a7eb4a3 | ||
|
|
e9c11c8161 | ||
|
|
564f0d21fc | ||
|
|
3391d11b31 | ||
|
|
c8061aa397 | ||
|
|
b652177523 | ||
|
|
8fe784ce80 | ||
|
|
cf3997ffaa | ||
|
|
3386417dd4 | ||
|
|
0592e17a39 | ||
|
|
38a6542222 | ||
|
|
a0577c96a7 | ||
|
|
9051500acc | ||
|
|
14b19c78cb | ||
|
|
e39a6551ba | ||
|
|
bf51c2119b | ||
|
|
1b4ad45236 | ||
|
|
e62a44291e | ||
|
|
4a20d9ccdf | ||
|
|
c7b88750ea | ||
|
|
5354f82ba9 | ||
|
|
7b836df855 | ||
|
|
8ce15c6554 | ||
|
|
36d1a3c230 | ||
|
|
48faff770b | ||
|
|
bec7a97c31 | ||
|
|
01f2056813 | ||
|
|
fbf1058bff | ||
|
|
5f420a172d | ||
|
|
b8a5da09fe | ||
|
|
551e2e8863 | ||
|
|
5d0ab605b7 | ||
|
|
cd182a5410 | ||
|
|
2dc5d02476 | ||
|
|
bb4d94b347 | ||
|
|
4f2ee3f622 | ||
|
|
da5124b1fd | ||
|
|
af39267668 | ||
|
|
f3ca72dbb0 | ||
|
|
ae230d0618 | ||
|
|
27af0d1dd4 | ||
|
|
077fb409bd | ||
|
|
56a195c4c0 | ||
|
|
95b245891f | ||
|
|
42005547a6 | ||
|
|
c7fb476895 | ||
|
|
6c49325cec | ||
|
|
c32f9efcaa | ||
|
|
bd54940232 | ||
|
|
0793bc58a1 | ||
|
|
2351899223 | ||
|
|
9e75134bf1 | ||
|
|
587636d9a9 | ||
|
|
547eb78531 | ||
|
|
1160bcd2f4 | ||
|
|
0dc7a201ac | ||
|
|
d96f9b8bd8 | ||
|
|
f6835fc5d0 | ||
|
|
0d609e2e07 | ||
|
|
f6b77a20a6 | ||
|
|
acb7e2ffd9 | ||
|
|
e046cca017 | ||
|
|
28fb4f5867 | ||
|
|
edc3317545 | ||
|
|
9572f8af84 | ||
|
|
a3f5745ae4 | ||
|
|
ead31acea4 | ||
|
|
f2fd24dde2 | ||
|
|
565c28f7e7 | ||
|
|
e883f2840e | ||
|
|
e726fe3026 | ||
|
|
1b5e20362d | ||
|
|
b3c2cfc0ad | ||
|
|
f7309b9c61 | ||
|
|
ce1af29cb0 | ||
|
|
0eeca475fd | ||
|
|
19bba2f1d7 | ||
|
|
4417e4a3ea | ||
|
|
849d0edb7c | ||
|
|
c6635b3497 | ||
|
|
a1f30d6943 | ||
|
|
3c97e2fcdd | ||
|
|
d9461036f8 | ||
|
|
4b9caa862b | ||
|
|
0c206b3535 | ||
|
|
d89d607e11 | ||
|
|
605fc21b9f | ||
|
|
badc338ff6 | ||
|
|
e6f4cc1e45 | ||
|
|
9e7f8d9f8d | ||
|
|
81956c0350 | ||
|
|
ad58f63c38 | ||
|
|
30c90055c9 | ||
|
|
fc9a71e6df | ||
|
|
4c1b7538f1 | ||
|
|
936bbe2bb0 | ||
|
|
176ae7201d | ||
|
|
f032d790fe | ||
|
|
dde713b923 | ||
|
|
99c132443c | ||
|
|
dcf37b5b60 | ||
|
|
ccc1069a97 | ||
|
|
b23ed5840a | ||
|
|
7fecb6c750 | ||
|
|
ce9603c57d | ||
|
|
17f23da793 | ||
|
|
7df2445b5c | ||
|
|
917e17ec6c | ||
|
|
b93063a2a2 | ||
|
|
81258e37f2 | ||
|
|
1da2efad55 | ||
|
|
8bc0a02f14 | ||
|
|
4cab392256 | ||
|
|
231d029111 | ||
|
|
1fa8a72472 | ||
|
|
2f1f814808 | ||
|
|
2a62c72898 | ||
|
|
4d22be70f5 | ||
|
|
d002bc085a | ||
|
|
a944584098 | ||
|
|
5ba01fb10b | ||
|
|
535d0c6d2e | ||
|
|
ac680dca2c | ||
|
|
9f5fa02e72 | ||
|
|
41d4c1482b | ||
|
|
52c8386b34 | ||
|
|
39b5b303e3 | ||
|
|
15c10c5a95 | ||
|
|
220ec28b8a | ||
|
|
d606727148 | ||
|
|
7d21da6cfc | ||
|
|
c3b48951cb | ||
|
|
9dc68af97b | ||
|
|
ae92767bff | ||
|
|
b97fdb7746 | ||
|
|
85e887d741 | ||
|
|
9e35c9734a | ||
|
|
6c5bb8fc9d | ||
|
|
a8709c784a | ||
|
|
7d62b154bc | ||
|
|
a947297eb1 | ||
|
|
e7a19a007e | ||
|
|
a07d36cc1a | ||
|
|
0d6815c6fa | ||
|
|
769723ebdc | ||
|
|
d39f1a8965 | ||
|
|
162cd5ada1 | ||
|
|
7eb89d9d7a | ||
|
|
05fd0fe6c4 | ||
|
|
ebf13c861b | ||
|
|
370082809e | ||
|
|
255cd8fa50 | ||
|
|
420a9fd23d | ||
|
|
b434615840 | ||
|
|
e4161f9192 | ||
|
|
43591631cf | ||
|
|
df15f88de4 | ||
|
|
5184a9e363 | ||
|
|
0511d130cc | ||
|
|
314ceb3328 | ||
|
|
b4ec5ea397 | ||
|
|
567c0842c4 | ||
|
|
d929cd5f05 | ||
|
|
8c2ce87af6 | ||
|
|
7103cdfaaf | ||
|
|
9d7bb1bc95 | ||
|
|
61a2addc47 | ||
|
|
f69c0d6d5b | ||
|
|
3948ae0883 | ||
|
|
9a0b337523 | ||
|
|
2cf46debba | ||
|
|
d07558025d | ||
|
|
8d473b0c76 | ||
|
|
d2ed473487 | ||
|
|
1c54eb0408 | ||
|
|
161b412825 | ||
|
|
003dc16adf | ||
|
|
469cbaf0bb | ||
|
|
aef1ed353f | ||
|
|
8fa7c72ccd | ||
|
|
ec72a4ce24 | ||
|
|
f8423f944a | ||
|
|
65cc58992a | ||
|
|
49c9c8e4e0 | ||
|
|
14127feb4f | ||
|
|
34a8b45e10 | ||
|
|
5d34e98d6b | ||
|
|
dc39e28214 | ||
|
|
ba87035e0a | ||
|
|
272008a9bb | ||
|
|
c21f3c8733 | ||
|
|
700ba895d3 | ||
|
|
bcc20af255 | ||
|
|
20cfd0b7a4 | ||
|
|
bd3efe07d5 | ||
|
|
4b8992cccb | ||
|
|
fed97d2c91 | ||
|
|
9ec0d610b1 | ||
|
|
417b490039 | ||
|
|
f380a6bf4e | ||
|
|
0be61e3b97 | ||
|
|
e8e5bbb1eb | ||
|
|
06dbb11e41 | ||
|
|
e231e8eed3 | ||
|
|
82ec704aa0 | ||
|
|
55798724e6 | ||
|
|
9a949308a2 | ||
|
|
eefdb524bc | ||
|
|
508e38976e | ||
|
|
3d261fe269 | ||
|
|
cbd7392931 | ||
|
|
f7ec289695 | ||
|
|
d361662e3f | ||
|
|
e312540f26 | ||
|
|
46594b8ab8 | ||
|
|
b70f846664 | ||
|
|
89d2f2b4c7 | ||
|
|
ce2bc356ca | ||
|
|
f11c25f48c | ||
|
|
48dcf7fa55 | ||
|
|
1bd438a4bc | ||
|
|
cdde7fe1f9 | ||
|
|
8246ab9751 | ||
|
|
5688aee930 | ||
|
|
7ce6fabb27 | ||
|
|
e6736363e8 | ||
|
|
d2e973d769 | ||
|
|
5c6853166d | ||
|
|
de66567094 | ||
|
|
d4dbe598d9 | ||
|
|
7497bfb3c8 | ||
|
|
5adf282552 | ||
|
|
3c0016c9ae | ||
|
|
a6ea2726bb | ||
|
|
2a8c9930b9 | ||
|
|
4298a7b958 | ||
|
|
5b34038655 | ||
|
|
4d19d4d893 | ||
|
|
0dcd8a1d58 | ||
|
|
472ffdd00e | ||
|
|
bdadd6c55c | ||
|
|
7aaf77e544 | ||
|
|
976aff0b50 | ||
|
|
cd13a1f4bd | ||
|
|
96e8f711e0 | ||
|
|
a08a845a23 | ||
|
|
3207415b53 | ||
|
|
b3df9c6b60 | ||
|
|
f237840248 | ||
|
|
e81f375453 | ||
|
|
eea914c3f4 | ||
|
|
87018471c0 | ||
|
|
e63d476ce7 | ||
|
|
fe64891043 | ||
|
|
b0555d0097 | ||
|
|
5c70d779a2 | ||
|
|
72c5d1a6ca | ||
|
|
adcdd1727c | ||
|
|
f3fc33c208 | ||
|
|
1d1c07a4fa | ||
|
|
9862b51571 | ||
|
|
3e679e64b8 | ||
|
|
9d8f3f9451 | ||
|
|
5b069a66a7 | ||
|
|
f7dd94511d | ||
|
|
0522c15cbf | ||
|
|
dfbb2e5c92 | ||
|
|
f91978bba5 | ||
|
|
cb56c58999 | ||
|
|
c65caf247d | ||
|
|
134a3fb684 | ||
|
|
f859f380bc | ||
|
|
ebe7df84d5 | ||
|
|
550817b67e | ||
|
|
9129144350 | ||
|
|
9806c46e04 | ||
|
|
e478ecc06d | ||
|
|
512cbc311a | ||
|
|
13e3fc4c03 | ||
|
|
0fff368258 | ||
|
|
ab224f7bca | ||
|
|
aa0029f001 | ||
|
|
7fc732afb3 | ||
|
|
f998a1b66c | ||
|
|
f7105b6a6e | ||
|
|
3e059ee6bb | ||
|
|
2fb668310b | ||
|
|
9424197fc4 | ||
|
|
c5a9a573e4 | ||
|
|
af65d8ca34 | ||
|
|
4172ad2664 | ||
|
|
f541cbce00 | ||
|
|
0638dcd5c1 | ||
|
|
015a63a48b | ||
|
|
d0759c1351 | ||
|
|
6aa4c88f65 | ||
|
|
3c34628cb7 | ||
|
|
f275e3af85 | ||
|
|
e97c9deb0a | ||
|
|
6c47603021 | ||
|
|
ec7a3bc4ea | ||
|
|
dfd3cad046 | ||
|
|
ff2e43a089 | ||
|
|
b42d918212 | ||
|
|
b76d2ff5ca | ||
|
|
a131f9bb7a | ||
|
|
d896475840 | ||
|
|
54bef3461b | ||
|
|
0e897a4d53 | ||
|
|
406edda157 | ||
|
|
f8c85bdc3c | ||
|
|
379822e9cf | ||
|
|
85aff25492 | ||
|
|
341eef3d29 | ||
|
|
96aa770664 | ||
|
|
ba6a6bce40 | ||
|
|
ee021b5853 | ||
|
|
228b20b1dc | ||
|
|
c5049eb1a3 | ||
|
|
10d0dc4295 | ||
|
|
e6210b8e58 | ||
|
|
a73dd7e86a | ||
|
|
9773651ccd | ||
|
|
954af18ed1 | ||
|
|
68a7b38731 | ||
|
|
b547757b3d | ||
|
|
b68470f146 | ||
|
|
885d9042a0 | ||
|
|
fa5e6a25b4 | ||
|
|
5b5aa9473a | ||
|
|
b3d2942374 | ||
|
|
ec0a979cc4 | ||
|
|
83133a17db | ||
|
|
3a7782faa2 | ||
|
|
f2712d2e91 | ||
|
|
1b33968124 | ||
|
|
aa8c806d01 | ||
|
|
8b8a915124 | ||
|
|
9ac4cc0b0b | ||
|
|
0507ed813f | ||
|
|
35453f68ea | ||
|
|
62ebc9cde1 | ||
|
|
1df0c9ebd8 | ||
|
|
d5952f416a | ||
|
|
fc82ba693f | ||
|
|
a068eca37f | ||
|
|
c0d2789b53 | ||
|
|
4a0476e2a6 | ||
|
|
00f1846d25 | ||
|
|
4c45e18c6c | ||
|
|
adb54fcb4c | ||
|
|
1ecd340786 | ||
|
|
e802371acf | ||
|
|
01700b8030 | ||
|
|
4996614bae | ||
|
|
cdf80001bc | ||
|
|
00f80ac617 | ||
|
|
dea0ca38c6 | ||
|
|
9ac1a51b77 | ||
|
|
d5ee8086dd | ||
|
|
ef007fbcc3 | ||
|
|
99e37559bb | ||
|
|
0dcaf3066d | ||
|
|
986d0dc1e6 | ||
|
|
f7dd9d8b05 | ||
|
|
3fb20ce0ed | ||
|
|
a57e429f71 | ||
|
|
21855b4c96 | ||
|
|
4c8d91a3e6 | ||
|
|
f7969b7d2a | ||
|
|
2902cbde44 | ||
|
|
f8b075c8a4 | ||
|
|
f70eb279d7 | ||
|
|
73efafb48a | ||
|
|
977b6eef9f | ||
|
|
992d658cb1 | ||
|
|
a46f4730dd | ||
|
|
c1050d1ffc | ||
|
|
3db856067a | ||
|
|
f22b1c27b6 | ||
|
|
7e4cec8793 | ||
|
|
346c0f6654 | ||
|
|
87ea5a9570 | ||
|
|
7cb34fc5af | ||
|
|
b61ec7ec1e | ||
|
|
354d549319 | ||
|
|
90ce16018d | ||
|
|
30efeedde6 | ||
|
|
27c4310513 | ||
|
|
b50b886f64 | ||
|
|
1799dcf8b8 | ||
|
|
37405db88f | ||
|
|
e7f1cf82b9 | ||
|
|
84ab889b9a | ||
|
|
b2861d491a | ||
|
|
a0894d20fb | ||
|
|
756f38a7d1 | ||
|
|
b489f34a2d | ||
|
|
172f013ce9 | ||
|
|
618347413c | ||
|
|
0a0f737ad3 | ||
|
|
a074fdb84b | ||
|
|
c4079c7413 | ||
|
|
e079330f05 | ||
|
|
8578a9cd87 | ||
|
|
2c1e9809b4 | ||
|
|
456875cc34 | ||
|
|
51a792c8ae | ||
|
|
a2e6a74311 | ||
|
|
134a17c869 | ||
|
|
d2dad52ffe | ||
|
|
04877e3299 | ||
|
|
7cf21ab52e | ||
|
|
d0384ea4e0 | ||
|
|
a1002e9586 | ||
|
|
0072aa90e4 | ||
|
|
08bce5224f | ||
|
|
c137b25ea7 | ||
|
|
bf127dadfe | ||
|
|
bb5a905682 | ||
|
|
1d7cffc859 | ||
|
|
9eb96363ea | ||
|
|
fb2980b038 | ||
|
|
31b7f87b72 | ||
|
|
e68bc03ee7 | ||
|
|
259ef7ad32 | ||
|
|
21521d49ed | ||
|
|
1f85731376 | ||
|
|
31fe2ba3c8 | ||
|
|
b98ab15162 | ||
|
|
39e6823e36 | ||
|
|
91d25f107f | ||
|
|
221e68134b | ||
|
|
19a18489a8 | ||
|
|
230852b8f2 | ||
|
|
78e7d08029 | ||
|
|
26d1af11ce | ||
|
|
01bee9fcc8 | ||
|
|
8e41ee7577 | ||
|
|
ea5e6093ab | ||
|
|
039abb5565 | ||
|
|
9209131eaa | ||
|
|
0b1ea2f609 | ||
|
|
ee008393d4 | ||
|
|
8eee3063a7 | ||
|
|
fe70b5b5ce | ||
|
|
0067909840 | ||
|
|
0bc2474ed9 | ||
|
|
be6e3f1e79 | ||
|
|
56195550d7 | ||
|
|
c800d774e9 | ||
|
|
0e608f018a | ||
|
|
c5fcb2b410 | ||
|
|
e6ac4afcd1 | ||
|
|
b7edec3b3a | ||
|
|
d69084b4ee | ||
|
|
e8585e91ee | ||
|
|
83a367c06e | ||
|
|
5485490cc4 | ||
|
|
91c093a30b | ||
|
|
dbfdae95c2 | ||
|
|
3f2981ac9b | ||
|
|
e9905b840d | ||
|
|
d5d6c6e9bd | ||
|
|
dfbd27f341 | ||
|
|
8ef24daa0d | ||
|
|
8f3cde578d | ||
|
|
541dab9b5b | ||
|
|
8b5d03418a | ||
|
|
21b337e7b5 | ||
|
|
391c9d4969 | ||
|
|
3d242031ca | ||
|
|
0d7fe60880 | ||
|
|
441e62ce63 | ||
|
|
aa63986bbf | ||
|
|
d6c9eb941f | ||
|
|
c052f2e9dc | ||
|
|
89567b8539 | ||
|
|
99f41a2468 | ||
|
|
7c16a15a36 | ||
|
|
c0fe749140 | ||
|
|
06d2df4c15 | ||
|
|
056be8c9e8 | ||
|
|
3f40228d09 | ||
|
|
81f132acb3 | ||
|
|
4a994a6617 | ||
|
|
b53762fb1e | ||
|
|
e3fbd1bade | ||
|
|
dc7b86d78f | ||
|
|
7ecb3169f5 | ||
|
|
6bc5d3b6f2 | ||
|
|
f340346053 | ||
|
|
4c887bfb94 | ||
|
|
8806781283 | ||
|
|
b95f0b4dea | ||
|
|
ea41a62ea3 | ||
|
|
4e3125b426 | ||
|
|
598b8ba92c | ||
|
|
f672bed3d9 | ||
|
|
c5da9b9e2d | ||
|
|
d98aa40459 | ||
|
|
3bb62ad584 | ||
|
|
ddf84a6f9e | ||
|
|
8351839bec | ||
|
|
729a299ec1 | ||
|
|
729871e158 | ||
|
|
bd7bf83066 | ||
|
|
3e00bbce70 | ||
|
|
01bddc0c54 | ||
|
|
008983d148 | ||
|
|
a6dcf1b98a | ||
|
|
b06c0cd445 | ||
|
|
618c1ab81f | ||
|
|
e3bfc816ce | ||
|
|
00ed57534f | ||
|
|
146bf800f3 | ||
|
|
035fb48ea8 | ||
|
|
0e277a8a85 | ||
|
|
81ca9e526f | ||
|
|
249720c67a | ||
|
|
8c75d7d6f4 | ||
|
|
57c126006b | ||
|
|
623575fa16 | ||
|
|
6ec8a1657f | ||
|
|
69bf0abdc9 | ||
|
|
de075c38c7 | ||
|
|
68ffd026bf | ||
|
|
17208cba1f | ||
|
|
8e92f439f6 | ||
|
|
570d996a5c | ||
|
|
02686a8f0c | ||
|
|
1d0e570750 | ||
|
|
5cb30b5916 | ||
|
|
3c54f0c4c5 | ||
|
|
60835fdb45 | ||
|
|
1f3593569f | ||
|
|
c44d167c38 | ||
|
|
74535e9912 | ||
|
|
39544016ca |
@@ -0,0 +1,79 @@
|
|||||||
|
module.exports = {
|
||||||
|
root: true, // 将eslint配置限制在当前配置文件所在目录下
|
||||||
|
// 继承其他规则
|
||||||
|
'extends': ['eslint:recommended', 'plugin:vue/recommended'],
|
||||||
|
// 解析选项
|
||||||
|
'parserOptions': {
|
||||||
|
parser: "babel-eslint", // 解析器
|
||||||
|
'ecmaVersion': 6, // ES 语法版本
|
||||||
|
'sourceType': 'module', // ES 模块化
|
||||||
|
'ecmaFeatures': { // ES 其他特性
|
||||||
|
'jsx': true // 如果是 React 项目,就需要开启 jsx 语法
|
||||||
|
}
|
||||||
|
},
|
||||||
|
plugins: [
|
||||||
|
// '@stylistic/js'
|
||||||
|
],
|
||||||
|
// 具体检查规则
|
||||||
|
'rules': {
|
||||||
|
'no-var': 'error', // 不能使用 var 定义变量
|
||||||
|
'eqeqeq': [
|
||||||
|
'warn', // 建议使用 === 和 !==,否则警告
|
||||||
|
'smart' // https://eslint.bootcss.com/docs/rules/eqeqeq#smart 除了少数情况下不会有警告
|
||||||
|
],
|
||||||
|
'prefer-arrow-callback': 'warn', // 建议使用箭头函数
|
||||||
|
'prefer-const': 'error', // 强制使用 const 定义常量
|
||||||
|
'indent': ['error', 2, { SwitchCase: 1 }], // 缩进 2 个空格 SwitchCase缩进
|
||||||
|
// '@stylistic/js/indent': ['error', 2], // 缩进 2 个空格
|
||||||
|
'no-mixed-spaces-and-tabs': 'error', // 禁止混用空格和 tab缩进
|
||||||
|
'quotes': ['error', 'single'], // 强制使用单引号
|
||||||
|
"spaced-comment": ["error", "always"], // 注释后面需要有空格
|
||||||
|
"prefer-template": "off", // 字符串拼接使用模版字符串 'hello' + world => `hello${world}`
|
||||||
|
"template-curly-spacing": ["error", "never"], // 模版字符串中{}前后没有空格 `hello${ world }` => `hello${world}` always 有一个或多个空格,never 没有空格
|
||||||
|
"key-spacing": ["error", { mode: "strict" }], // 对象字面量中冒号的前后空格 { "foo" : 42 } => { "foo": 42 }
|
||||||
|
"comma-spacing": ["error", { "before": false, "after": true }], // 逗号前面不能有空格,后面需要有空格 [1, 2 , 3 ,4] => [1, 2, 4, 4]
|
||||||
|
"array-bracket-spacing": ["error","always"], // 数组前后需要有空格 [ 1,2 ] => [ 1,2 ]
|
||||||
|
"object-curly-spacing": ["error","always"], // 对象前后需要有空格 { a:b } => { a:b }
|
||||||
|
"no-whitespace-before-property": "error", // 禁止属性前有空格 obj . foo => obj.foo
|
||||||
|
"func-call-spacing": ["error", "never"], // 函数调用时,函数名与()之间不能有空格 fn () => fn()
|
||||||
|
'space-before-function-paren': ['error', 'always'], // 函数左括号空格 function name(){} => function name (){}
|
||||||
|
// "rest-spread-spacing": "error", // 展开运算符前后需要有空格 ...arr => ... arr
|
||||||
|
'space-before-blocks': 'error', // 代码块前面(if function等的大括号之前)需要有空格 function name(){} => function name() {}
|
||||||
|
"space-infix-ops": 'error', // 操作符前后需要有空格 a=0 => a = 0
|
||||||
|
'arrow-spacing': ['error', { before: true, after: true }], // 箭头函数前后需要有空格
|
||||||
|
"brace-style": ["error", "1tbs", { "allowSingleLine": true }], // if else 等的大括号风格
|
||||||
|
"no-irregular-whitespace": 'error', // 不能有不规则的空格 https://eslint.nodejs.cn/docs/latest/rules/no-irregular-whitespace
|
||||||
|
"no-trailing-spaces": 'error', // 一行结束后面不要有空格
|
||||||
|
"padded-blocks": ["error", "never"], // 代码块内部前后不要有空行
|
||||||
|
"semi-spacing": ["error", { "before": false, "after": true }], // 分号前面不能有空格,后面需要有空格 var foo ; var bar; => var foo; var bar;
|
||||||
|
'no-multiple-empty-lines': [ 'error', { max: 1 }], // 最多只能有一行空行
|
||||||
|
'no-return-assign': ['off', 'except-parens'], // 禁止在 return 语句中使用赋值语句
|
||||||
|
'no-self-assign': 'error', // 禁止自我赋值
|
||||||
|
'no-self-compare': 'error', // 禁止自身比较
|
||||||
|
// "newline-per-chained-call": ["error", { "ignoreChainWithDepth": 1 }], // 链式调用时,每个调用都需要换行
|
||||||
|
"no-duplicate-imports": "error", // 禁止重复 import
|
||||||
|
// 以下规则都是基于plugin:vue/recommended的默认值
|
||||||
|
'vue/max-attributes-per-line': [
|
||||||
|
'error',
|
||||||
|
{
|
||||||
|
singleline: 4, // 单行最多 4 个属性
|
||||||
|
multiline: {
|
||||||
|
max: 1, // 多行最多 1 个属性
|
||||||
|
allowFirstLine: false, // 不允许属性与组件名称在同一行
|
||||||
|
},
|
||||||
|
},
|
||||||
|
],
|
||||||
|
'vue/singleline-html-element-content-newline': 'off', // 单行元素内容之前和之后不需要换行
|
||||||
|
'vue/multiline-html-element-content-newline': 'error', // 多行元素内容之前和之后需要换行
|
||||||
|
'vue/html-indent': ['error', 2], // 缩进 2 个空格
|
||||||
|
'vue/html-closing-bracket-newline': ['error', { // 强制或禁止在自闭合标签之前换行
|
||||||
|
'singleline': 'never',
|
||||||
|
'multiline': 'always',
|
||||||
|
}],
|
||||||
|
'vue/attribute-hyphenation': 'off', // 关闭 属性名必须使用连字符的规则
|
||||||
|
},
|
||||||
|
env: {
|
||||||
|
browser: true,
|
||||||
|
node: true
|
||||||
|
}
|
||||||
|
}
|
||||||
@@ -1,554 +0,0 @@
|
|||||||
[33mcommit c84f945f4263aa54bdcf10df5aff9a48bba97925[m[33m ([m[1;36mHEAD -> [m[1;32mdev_test[m[33m)[m
|
|
||||||
Author: zhoulingpo <zhoulingpo>
|
|
||||||
Date: Tue Nov 21 10:48:57 2023 +0800
|
|
||||||
|
|
||||||
自定义指令-上传的el-dialog可拖拽拉宽
|
|
||||||
|
|
||||||
[33mcommit 4465f597b2a0f087e5e44efbac1eeb73c32fd2c6[m[33m ([m[1;31morigin/dev_test[m[33m)[m
|
|
||||||
Author: danshihao <danshihao@syxysoft.com>
|
|
||||||
Date: Mon Nov 20 08:55:39 2023 +0800
|
|
||||||
|
|
||||||
调整流程按钮loading
|
|
||||||
|
|
||||||
[33mcommit 5ae467cfd2252ed056a5260851b291123da0a7a0[m
|
|
||||||
Author: danshihao <danshihao@syxysoft.com>
|
|
||||||
Date: Fri Nov 17 13:30:33 2023 +0800
|
|
||||||
|
|
||||||
调整表格序号
|
|
||||||
|
|
||||||
[33mcommit f3fc569c6c745e1a8b72ca297174c9060ca580f0[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 17 09:40:21 2023 +0800
|
|
||||||
|
|
||||||
自定义指令v-dragDialogWidth添加文件名换行功能
|
|
||||||
|
|
||||||
[33mcommit 78937bf691fd719219878e9c84bc856e7af469d9[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 17:58:45 2023 +0800
|
|
||||||
|
|
||||||
技术标准-起草-带入标准-作废标红
|
|
||||||
|
|
||||||
[33mcommit a89d917806af861f493b647c62f640a9465ef983[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 17:43:05 2023 +0800
|
|
||||||
|
|
||||||
国内标准库-每页显示数改变后无法获取数据
|
|
||||||
|
|
||||||
[33mcommit a2b204c4f9416f63e3dd7ccf4c6c6b90c3296fa0[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 17:32:47 2023 +0800
|
|
||||||
|
|
||||||
搜索中心-修改文本状态
|
|
||||||
|
|
||||||
[33mcommit 61dd3353618f65632f7a98bde0070ff5a37ed846[m
|
|
||||||
Merge: 3b6ffb04 971f1be9
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 17:15:20 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit 3b6ffb041e7b7ed8aecf863d2c8fd513268ee0a9[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 17:15:09 2023 +0800
|
|
||||||
|
|
||||||
搜索中心-隐藏国内外政策
|
|
||||||
|
|
||||||
[33mcommit 971f1be9ec2c5b738565b024bd08dbeb625e9573[m
|
|
||||||
Merge: 8e4e928f 81c887c6
|
|
||||||
Author: danshihao <danshihao@syxysoft.com>
|
|
||||||
Date: Thu Nov 16 16:55:42 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit 8e4e928f560d753cb3074a54317830c3c291502c[m
|
|
||||||
Author: danshihao <danshihao@syxysoft.com>
|
|
||||||
Date: Thu Nov 16 16:55:27 2023 +0800
|
|
||||||
|
|
||||||
调整表格序号
|
|
||||||
|
|
||||||
[33mcommit 81c887c6724e2c4b3ece3d68dcc631f839dae5dc[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 16:54:31 2023 +0800
|
|
||||||
|
|
||||||
自定义指令-el-dialog可拖拽拉宽
|
|
||||||
|
|
||||||
[33mcommit 8d65b779ce6101086a7819cdaaa2e15d2f1d06a6[m
|
|
||||||
Merge: 77cf0841 5f282442
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Thu Nov 16 10:12:53 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit 77cf0841c64576c0b698bd05f723125275bfad17[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Thu Nov 16 10:12:38 2023 +0800
|
|
||||||
|
|
||||||
搜索中心去掉数量
|
|
||||||
|
|
||||||
[33mcommit 91f03db948e6d853a4592f5d73cbb78fc078303e[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Thu Nov 16 10:10:43 2023 +0800
|
|
||||||
|
|
||||||
搜索中心去掉 选择标准体系 按钮
|
|
||||||
|
|
||||||
[33mcommit 5f282442e06e5ddfad0076581704b8ca26a44e9f[m
|
|
||||||
Merge: 454738a7 0338732f
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 10:06:03 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit 454738a7d2a67eef616fd5fa8ae61eb2da36223a[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 16 10:05:22 2023 +0800
|
|
||||||
|
|
||||||
企标制修订计划管控流程-标题
|
|
||||||
|
|
||||||
[33mcommit 0338732fecbd27a0cd5c5c885ce5ef90c5ea180d[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Tue Nov 14 17:41:30 2023 +0800
|
|
||||||
|
|
||||||
bug: 搜索中心展示字段修改
|
|
||||||
|
|
||||||
[33mcommit ef4f46298f717aabdb940ab39a291e377c0fec25[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 14 15:40:20 2023 +0800
|
|
||||||
|
|
||||||
企标制修订计划管控流程-标题修改
|
|
||||||
|
|
||||||
[33mcommit 3179dc7b2c214a14726ab349adf62cb67a010d96[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 14 15:21:34 2023 +0800
|
|
||||||
|
|
||||||
手机端-首页标识
|
|
||||||
|
|
||||||
[33mcommit 2d6e64fb8716a29b9276125261c65d05e264a49a[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Tue Nov 14 15:11:07 2023 +0800
|
|
||||||
|
|
||||||
bug: 搜索中心字段修改
|
|
||||||
|
|
||||||
[33mcommit 5c6dccb6c2dd33ef7e08beeed50727bd2f097106[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Tue Nov 14 10:31:30 2023 +0800
|
|
||||||
|
|
||||||
bug: 搜索中心字段修改
|
|
||||||
|
|
||||||
[33mcommit 2ea1dcec495e1504398fbc0d3ef67420f49aab98[m[33m ([m[1;31morigin/dev_20231114_auth[m[33m)[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 10 11:38:27 2023 +0800
|
|
||||||
|
|
||||||
产品标准-起草-带入标准表格-作废版本整体标红
|
|
||||||
|
|
||||||
[33mcommit f29775ae97434b8438d16f48f6252a2e236f1b69[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 10 11:16:14 2023 +0800
|
|
||||||
|
|
||||||
首页-企业标准发布标题new改为红点
|
|
||||||
|
|
||||||
[33mcommit 4827328ba1eba052d965a99a9abdb03baea62e10[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 10 09:25:12 2023 +0800
|
|
||||||
|
|
||||||
企标评分-详情-防止图标被覆盖
|
|
||||||
|
|
||||||
[33mcommit 596d79c3117fd6e40c7ec2ca3109ce8e0d983504[m
|
|
||||||
Merge: 2c02213b 3f43d899
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 9 17:23:53 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit 2c02213bf5288e4cfd291c2b671b82f7ee211105[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Thu Nov 9 17:23:36 2023 +0800
|
|
||||||
|
|
||||||
技术标准-发布-解决保存时弹出上传文件窗口的bug
|
|
||||||
|
|
||||||
[33mcommit 3f43d8999a29cb9a1aed2610fbc4eba129ca51d9[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Thu Nov 9 11:31:07 2023 +0800
|
|
||||||
|
|
||||||
bug: 企标制修订技术标准修改计划状态参数变更
|
|
||||||
|
|
||||||
[33mcommit efa7d28c584a349834c12e798eaeea100c179767[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Wed Nov 8 17:08:38 2023 +0800
|
|
||||||
|
|
||||||
企标详情-评分优化
|
|
||||||
|
|
||||||
[33mcommit 527797ec81a6171d1fe86987f8a5658e2070a7c1[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Wed Nov 8 15:42:37 2023 +0800
|
|
||||||
|
|
||||||
企标页面 标准体系树更换接口
|
|
||||||
|
|
||||||
[33mcommit 056439a6be8807d40a331765beda80147167a5ef[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Wed Nov 8 14:14:02 2023 +0800
|
|
||||||
|
|
||||||
首页 table编号列固定宽度200
|
|
||||||
|
|
||||||
[33mcommit cbce8391a6f22fefb23e9409dd91a4c6d6550f50[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Wed Nov 8 09:27:42 2023 +0800
|
|
||||||
|
|
||||||
首页-企标发布-new
|
|
||||||
|
|
||||||
[33mcommit 5622837d7ee580c3c47e0014e3154e6a7ca8ac7c[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Wed Nov 8 09:12:31 2023 +0800
|
|
||||||
|
|
||||||
手机端-企业标准
|
|
||||||
|
|
||||||
[33mcommit a69e43502bda1b9da82cecff7c1588de69526781[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Wed Nov 8 02:04:40 2023 +0800
|
|
||||||
|
|
||||||
手机端-企标详情
|
|
||||||
|
|
||||||
[33mcommit c49af7b9278ae2373b2a278d731bf575d96aaec5[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 23:30:11 2023 +0800
|
|
||||||
|
|
||||||
企标详情-评分
|
|
||||||
|
|
||||||
[33mcommit 30a6beb93d21c59870461cc209372c3620d7c4d2[m
|
|
||||||
Merge: a8e5f84d 3825857c
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 22:39:27 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit a8e5f84d74f8a3e19badfa9b5879746bcb52b576[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 22:39:17 2023 +0800
|
|
||||||
|
|
||||||
列表序号与分页联动
|
|
||||||
|
|
||||||
[33mcommit 3825857c17a5d42e3a0ffafc4c8a5e62ceb918a2[m
|
|
||||||
Merge: 31a3dc5c e1c40887
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Tue Nov 7 22:36:00 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit 31a3dc5cd4629c1012eb2795347df56682a69f12[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Tue Nov 7 22:35:47 2023 +0800
|
|
||||||
|
|
||||||
bug: 企标计划修改接口还原
|
|
||||||
|
|
||||||
[33mcommit e1c4088767e355ced098728d24ee14ac5e19ad4e[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 22:24:03 2023 +0800
|
|
||||||
|
|
||||||
产品标准发布节点ifStandCodebyStandName接口检验不通过的提示信息
|
|
||||||
|
|
||||||
[33mcommit 80169b3881e39c83d5006271f9a6c78bec44afff[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 22:14:36 2023 +0800
|
|
||||||
|
|
||||||
首页-企业标准列表页
|
|
||||||
|
|
||||||
[33mcommit 6d331c9d5574474ecb5b996b4a7f93e3b75e8bbc[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 21:53:24 2023 +0800
|
|
||||||
|
|
||||||
首页-企业标准发布-new
|
|
||||||
|
|
||||||
[33mcommit 8d3a900919eb6108a41bab4096c2ace4d58f2bc5[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 17:30:57 2023 +0800
|
|
||||||
|
|
||||||
手机端-状态查询条件修改
|
|
||||||
|
|
||||||
[33mcommit a465ac2243baad3b1826e6b660b287c915fdfcc5[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 15:57:56 2023 +0800
|
|
||||||
|
|
||||||
手机端-修改
|
|
||||||
|
|
||||||
[33mcommit 57981cf8bc5c461eb0e8ffea657406b4e2fe8e69[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 15:04:14 2023 +0800
|
|
||||||
|
|
||||||
手机端-修改
|
|
||||||
|
|
||||||
[33mcommit d099d9ca7c14634ba7107687592bedc7c3c9e0ee[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 13:33:36 2023 +0800
|
|
||||||
|
|
||||||
技术标准-起草在进入onlyoffice时保存
|
|
||||||
|
|
||||||
[33mcommit be595c76456a9e31da93b964f0a3602bc7421258[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 11:17:50 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-企标制修订流程及企业标准库流程
|
|
||||||
|
|
||||||
[33mcommit 3322393853da260e7a517bd933187e5909e160c5[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 11:08:16 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-标准入库流程
|
|
||||||
|
|
||||||
[33mcommit 74fa2c571856bd1dace44b3518f9aa2ad1679a45[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 11:06:36 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-政策征求意见流程
|
|
||||||
|
|
||||||
[33mcommit d6ee244ed4982f3d7eede131035a363e2b6b4620[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 11:00:55 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-未符合项整改流程
|
|
||||||
|
|
||||||
[33mcommit 4f95cd31952284f6c7cfd350630b1a375ba75b7d[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:56:52 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-企标废止流程
|
|
||||||
|
|
||||||
[33mcommit 7d438de94a12144925af55e4cdd4f4df9cdc534f[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:52:45 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-企标复审流程
|
|
||||||
|
|
||||||
[33mcommit a28e906f4ad05e8a73414ce80dae9896b45f3e9b[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:48:02 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-企标制修订计划管控流程
|
|
||||||
|
|
||||||
[33mcommit 04c85f6cc45ad9d70bf45b8e4cd0a1fa3ca37913[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:30:48 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-参与外部标准制修订信息提报流程
|
|
||||||
|
|
||||||
[33mcommit 8fd6abfae93d8de293747829a5bc2fb2403fe77e[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:21:58 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-未符合项整改流程
|
|
||||||
|
|
||||||
[33mcommit 40447d9848ff143e1c49785b4288f4a9769b97fe[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:19:30 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-外部署名推荐审批流程
|
|
||||||
|
|
||||||
[33mcommit 81c40db82dd1d90eab6ad937467b31c4b112e6f2[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:14:18 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-加入标准化协会信息提报流程
|
|
||||||
|
|
||||||
[33mcommit 98c97dbaac8c28d350e00ef0d163231dd696ecbc[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:11:28 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-项目清单确认流程
|
|
||||||
|
|
||||||
[33mcommit 8b0c98b9c3f5a8bb225f438d32ccd6ca8aaf4079[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:09:26 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-项目合规评估流程
|
|
||||||
|
|
||||||
[33mcommit ea2e1345e7f58ff0cf4098cc033b6bdf69490c33[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 10:05:50 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-标准合规评估流程
|
|
||||||
|
|
||||||
[33mcommit 214911dd7cef60b4b9a4c62e057f8a59b1ed7d77[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:39:30 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-标准清单发布/更新流程
|
|
||||||
|
|
||||||
[33mcommit 062594fc09ecc012346a5cf44913554e38fc2ccc[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:37:42 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-标准解读流程
|
|
||||||
|
|
||||||
[33mcommit 7670fd9cbf5091817be031690b7cfe37df41c838[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:33:10 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-外部标准化协会参会流程
|
|
||||||
|
|
||||||
[33mcommit f8c61e854eb89ec6076901a9570d5a9a3d0d7950[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:28:34 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-外部标准化协会入会流程
|
|
||||||
|
|
||||||
[33mcommit 271fe6069b15c8a9e63b3d6e2f60725cd140b656[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:23:42 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-标准调研流程
|
|
||||||
|
|
||||||
[33mcommit e5d943e166fba749aa372b8e3b2b464e9614fff8[m
|
|
||||||
Merge: a2ae1a82 e8a9c37e
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:15:24 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit a2ae1a82780137817dcd1451fa709e986d38d7df[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Tue Nov 7 09:15:17 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-手机端-标准征求意见流程
|
|
||||||
|
|
||||||
[33mcommit e8a9c37e93d6a69a74823daaccd9c3fc8aa858dd[m
|
|
||||||
Merge: e8644474 62152dc8
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Mon Nov 6 19:23:18 2023 +0800
|
|
||||||
|
|
||||||
Merge remote-tracking branch 'origin/dev_test' into dev_test
|
|
||||||
|
|
||||||
[33mcommit e86444748674b9b0af28d748ec76eb9676a5d13e[m
|
|
||||||
Author: wxyclub <tjzdwxy@163.com>
|
|
||||||
Date: Mon Nov 6 19:23:10 2023 +0800
|
|
||||||
|
|
||||||
bug: 企标计划修改接口变更
|
|
||||||
|
|
||||||
[33mcommit 62152dc88d37eec904bce58ad1bab526ff3c4261[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 18:38:14 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-加入标准化协会信息备案流程
|
|
||||||
|
|
||||||
[33mcommit f81b67b5e039f2148ea2a4db9a94be1efd6ab789[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 18:27:29 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-参与外部标准制修订信息提报流程
|
|
||||||
|
|
||||||
[33mcommit a3065afb5bed6b8b07ceaa72e1552f11378e2438[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 18:13:15 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-外部署名推荐审批流程
|
|
||||||
|
|
||||||
[33mcommit a0dbd719aaf88c0a94675f1378b645d942fcf0f2[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 17:56:57 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-外部标准化协会参会流程
|
|
||||||
|
|
||||||
[33mcommit 1cb34d7cff5aa1abb7bddc87a5fe3db0ba68014e[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 17:14:27 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-外部标准化协会入会流程
|
|
||||||
|
|
||||||
[33mcommit e991b4ace0ac0fc6c336c7b5a5a7ee4f5659fd44[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 16:34:15 2023 +0800
|
|
||||||
|
|
||||||
手机端关闭数小福
|
|
||||||
|
|
||||||
[33mcommit 3af2c8c7e26b134c7f582d050028449ce73cc535[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 16:26:44 2023 +0800
|
|
||||||
|
|
||||||
产品制修订-发布节点-发布日期-修改时使用原来的日期,制定修订使用当前日期
|
|
||||||
|
|
||||||
[33mcommit 4ff2696b869b6783cadf2d10164c6806a2a3b1ea[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 16:03:02 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-未符合项整改流程
|
|
||||||
|
|
||||||
[33mcommit 7cbd4aa7280f365982e568563cf720316b3201bc[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 15:34:13 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-项目清单确认流程
|
|
||||||
|
|
||||||
[33mcommit 5bfda5feca253d01e1bcb04ddcec6dec94e049b3[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 15:05:56 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-项目合规评估流程-项目
|
|
||||||
|
|
||||||
[33mcommit ff5286c4eb3e56b68daf14e2373316218c511e74[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 14:03:31 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-标准合规评估流程
|
|
||||||
|
|
||||||
[33mcommit 3587fc859ed850ab384ae804862dd3ae35e8631b[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 13:23:09 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-标准解读流程
|
|
||||||
|
|
||||||
[33mcommit 81862e012a8b6998af266165ba58cf3c07fdf61c[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 11:51:10 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-标准清单发布/更新流程
|
|
||||||
|
|
||||||
[33mcommit ebda3b0beae45355385781316a13013e232840e4[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 11:20:32 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-标准调研流程
|
|
||||||
|
|
||||||
[33mcommit dda0b8c60c649e552b16e4881fdc2ae583cd12ee[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 10:23:35 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-标准入库流程
|
|
||||||
|
|
||||||
[33mcommit 6dc35be591548d235f5c9b25b978a022deb31cd4[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 09:49:06 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-企标制修订立项计划
|
|
||||||
|
|
||||||
[33mcommit 3a403e87615f436402c303cf20617f6541e55227[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 09:32:12 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-企标制修订计划管控
|
|
||||||
|
|
||||||
[33mcommit eaa58e0a18bf8ec172b37e4491356a2667537bb1[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Mon Nov 6 08:47:11 2023 +0800
|
|
||||||
|
|
||||||
按钮loading-企标废止流程
|
|
||||||
|
|
||||||
[33mcommit 9260629872ffdf5db5ec2342ee6cee61e0d03cb5[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 3 17:33:21 2023 +0800
|
|
||||||
|
|
||||||
技术标准-顺序号校验
|
|
||||||
|
|
||||||
[33mcommit f336801fe6f7e1737939f934143835cafba4cd48[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 3 16:57:54 2023 +0800
|
|
||||||
|
|
||||||
企标复审流程-无法选择人员
|
|
||||||
|
|
||||||
[33mcommit 96901b1cbb065142d53d59b587861b74ae789ec0[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 3 16:07:27 2023 +0800
|
|
||||||
|
|
||||||
企标法规库-树-重新获取数据问题
|
|
||||||
|
|
||||||
[33mcommit 5fb54c8959f1948c1c61d55dc7e2aa8bac89686c[m
|
|
||||||
Author: zyn <nn_0223@163.com>
|
|
||||||
Date: Fri Nov 3 15:41:35 2023 +0800
|
|
||||||
|
|
||||||
技术标准-顺序号无法修改
|
|
||||||
@@ -43,11 +43,15 @@
|
|||||||
"vuex": "^3.4.0"
|
"vuex": "^3.4.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
|
"@stylistic/eslint-plugin-js": "^1.5.1",
|
||||||
"@vue/cli-plugin-babel": "~4.5.0",
|
"@vue/cli-plugin-babel": "~4.5.0",
|
||||||
"@vue/cli-plugin-router": "~4.5.0",
|
"@vue/cli-plugin-router": "~4.5.0",
|
||||||
"@vue/cli-plugin-vuex": "~4.5.0",
|
"@vue/cli-plugin-vuex": "~4.5.0",
|
||||||
"@vue/cli-service": "~4.5.0",
|
"@vue/cli-service": "~4.5.0",
|
||||||
|
"babel-eslint": "^10.1.0",
|
||||||
"babel-plugin-import": "^1.13.3",
|
"babel-plugin-import": "^1.13.3",
|
||||||
|
"eslint": "6.7.2",
|
||||||
|
"eslint-plugin-vue": "6.2.2",
|
||||||
"less": "^3.13.1",
|
"less": "^3.13.1",
|
||||||
"less-loader": "^5.0.0",
|
"less-loader": "^5.0.0",
|
||||||
"popper.js": "^1.16.1",
|
"popper.js": "^1.16.1",
|
||||||
|
|||||||
+1
-1
@@ -3,7 +3,7 @@
|
|||||||
<head>
|
<head>
|
||||||
<meta charset="utf-8">
|
<meta charset="utf-8">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge">
|
||||||
<meta name="viewport" content="width=device-width, initial-scale=1">
|
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=yes">
|
||||||
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
||||||
<meta http-equiv="pragram" content="no-cache">
|
<meta http-equiv="pragram" content="no-cache">
|
||||||
<meta http-equiv="Pragma" content="no-cache" />
|
<meta http-equiv="Pragma" content="no-cache" />
|
||||||
|
|||||||
+15
-4
@@ -34,7 +34,7 @@
|
|||||||
<div class="user-box">
|
<div class="user-box">
|
||||||
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
||||||
<span class="iconfont" v-else style="color: #000;"></span>
|
<span class="iconfont" v-else style="color: #000;"></span>
|
||||||
<span style="color: #000;">{{ $store.getters.userInfo.uName }}</span>
|
<span style="color: #000;" v-if="uName">{{ uName }}</span>
|
||||||
<i style="color: #000;" class="el-icon-arrow-down"/>
|
<i style="color: #000;" class="el-icon-arrow-down"/>
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
@@ -70,7 +70,7 @@
|
|||||||
<div class="user-box">
|
<div class="user-box">
|
||||||
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
<img :src="userAvator" v-if="$store.getters.userInfo.avator">
|
||||||
<span class="iconfont" v-else style="color: #000;"></span>
|
<span class="iconfont" v-else style="color: #000;"></span>
|
||||||
<span style="color: #000;">{{ $store.getters.userInfo.uName }}</span>
|
<span style="color: #000;" v-if="uName">{{ uName }}</span>
|
||||||
<i style="color: #000;" class="el-icon-arrow-down"/>
|
<i style="color: #000;" class="el-icon-arrow-down"/>
|
||||||
</div>
|
</div>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
@@ -97,9 +97,9 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {mapGetters, mapState} from 'vuex'
|
import {mapGetters, mapState} from 'vuex'
|
||||||
import {webLoginType, ssoLogoutUrlDev} from '@/sysConfig'
|
|
||||||
import customerService from "@/components/customerService";
|
import customerService from "@/components/customerService";
|
||||||
import isMobile from "./store/isMobile";
|
import isMobile from "./store/isMobile";
|
||||||
|
import { loginOut } from '@/utils/login'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'App',
|
name: 'App',
|
||||||
@@ -152,6 +152,8 @@
|
|||||||
confirmButtonClass: 'common-button-primary',
|
confirmButtonClass: 'common-button-primary',
|
||||||
roundButton: false
|
roundButton: false
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
|
loginOut()
|
||||||
|
/*
|
||||||
if (webLoginType != null && webLoginType === 'idm') {
|
if (webLoginType != null && webLoginType === 'idm') {
|
||||||
this.$store.dispatch('logout')
|
this.$store.dispatch('logout')
|
||||||
window.location.href = ssoLogoutUrlDev
|
window.location.href = ssoLogoutUrlDev
|
||||||
@@ -168,6 +170,7 @@
|
|||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
// this.$http.post('/logout', {}, res => {
|
// this.$http.post('/logout', {}, res => {
|
||||||
// window.location.href = 'http://testsso1.foton.com.cn/oauth2.0/authorize?client_id=app_slrs&redirect_uri=http://127.0.0.1:9090&response_type=code'
|
// window.location.href = 'http://testsso1.foton.com.cn/oauth2.0/authorize?client_id=app_slrs&redirect_uri=http://127.0.0.1:9090&response_type=code'
|
||||||
// })
|
// })
|
||||||
@@ -243,6 +246,9 @@
|
|||||||
userAvator() {
|
userAvator() {
|
||||||
return this.$store.getters.userInfo.avator || require('@/assets/images/avator_default.png')
|
return this.$store.getters.userInfo.avator || require('@/assets/images/avator_default.png')
|
||||||
},
|
},
|
||||||
|
uName () {
|
||||||
|
return this.$store.getters.userInfo.uName || this.$store.getters.userInfo.uname
|
||||||
|
},
|
||||||
customerServiceShow () {
|
customerServiceShow () {
|
||||||
return !isMobile()
|
return !isMobile()
|
||||||
},
|
},
|
||||||
@@ -457,5 +463,10 @@
|
|||||||
bottom: 20px;
|
bottom: 20px;
|
||||||
z-index: 1000;
|
z-index: 1000;
|
||||||
}
|
}
|
||||||
|
sup{
|
||||||
|
vertical-align: super!important;
|
||||||
|
}
|
||||||
|
sub{
|
||||||
|
vertical-align: sub!important;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -63,7 +63,7 @@ export const m = {
|
|||||||
issueTime: '发布日期',
|
issueTime: '发布日期',
|
||||||
putTime: '实施日期',
|
putTime: '实施日期',
|
||||||
standNatureShow: '标准性质',
|
standNatureShow: '标准性质',
|
||||||
standStateShow: '文本状态',
|
standStateShow: '标准状态',
|
||||||
action: '操作',
|
action: '操作',
|
||||||
see: '查看',
|
see: '查看',
|
||||||
stand: '标准/文件性质',
|
stand: '标准/文件性质',
|
||||||
@@ -155,7 +155,7 @@ export const m = {
|
|||||||
dataType: '标准类别',
|
dataType: '标准类别',
|
||||||
standardNumberAndPolicyNumber: '标准编号/政策编号',
|
standardNumberAndPolicyNumber: '标准编号/政策编号',
|
||||||
standardNameAndPolicyName: '标准名称/政策名称',
|
standardNameAndPolicyName: '标准名称/政策名称',
|
||||||
textState: '文本状态',
|
textState: '标准状态',
|
||||||
conversionResults: '转换结果',
|
conversionResults: '转换结果',
|
||||||
timeConsuming: '消耗时间',
|
timeConsuming: '消耗时间',
|
||||||
searchByModule: '根据模块查找',
|
searchByModule: '根据模块查找',
|
||||||
@@ -169,7 +169,7 @@ export const m = {
|
|||||||
searchByStandardNumberAndName: '根据标准号/名称查找',
|
searchByStandardNumberAndName: '根据标准号/名称查找',
|
||||||
split: '拆分',
|
split: '拆分',
|
||||||
pleaseSelectDataType: '请选择资料类型',
|
pleaseSelectDataType: '请选择资料类型',
|
||||||
pleaseSelectTheTextState: '请选择文本状态',
|
pleaseSelectTheTextState: '请选择标准状态',
|
||||||
push: '推送',
|
push: '推送',
|
||||||
bulkCopy: '批量复制',
|
bulkCopy: '批量复制',
|
||||||
clauseRequirements: '条款要求',
|
clauseRequirements: '条款要求',
|
||||||
@@ -260,7 +260,7 @@ export const m = {
|
|||||||
findByTheResponsibilityDepartment: '根据责任部门查找',
|
findByTheResponsibilityDepartment: '根据责任部门查找',
|
||||||
findByNormativeReferenceStandard: '根据规范性引用标准查找',
|
findByNormativeReferenceStandard: '根据规范性引用标准查找',
|
||||||
lookupByStandardStatus: '根据标准状态查找',
|
lookupByStandardStatus: '根据标准状态查找',
|
||||||
lookupByStandardStatusText: '根据文本状态查找',
|
lookupByStandardStatusText: '根据标准状态查找',
|
||||||
findByPrincipalCompiler: '根据主要编制者查找',
|
findByPrincipalCompiler: '根据主要编制者查找',
|
||||||
contentInThisPaper: '内容摘要',
|
contentInThisPaper: '内容摘要',
|
||||||
substituteForStandNumber: '代替标准号',
|
substituteForStandNumber: '代替标准号',
|
||||||
@@ -506,8 +506,8 @@ export const m = {
|
|||||||
searchByNewTextNumberOrname: '根据新文本号/名称查找',
|
searchByNewTextNumberOrname: '根据新文本号/名称查找',
|
||||||
compare: '比对',
|
compare: '比对',
|
||||||
batchDeletion: '批量删除',
|
batchDeletion: '批量删除',
|
||||||
oldTextState: '旧文本状态',
|
oldTextState: '旧标准状态',
|
||||||
newTextState: '新文本状态',
|
newTextState: '新标准状态',
|
||||||
collect: '收藏',
|
collect: '收藏',
|
||||||
sharingStandard: '分享标准',
|
sharingStandard: '分享标准',
|
||||||
standardName: '标准名称',
|
standardName: '标准名称',
|
||||||
@@ -644,7 +644,7 @@ export const m = {
|
|||||||
comparison: '比对',
|
comparison: '比对',
|
||||||
oldDocumentTextNumber: '旧文档文本号',
|
oldDocumentTextNumber: '旧文档文本号',
|
||||||
oldDocumentTextName: '旧文档文本名称',
|
oldDocumentTextName: '旧文档文本名称',
|
||||||
oldTextStatus: '旧文本状态',
|
oldTextStatus: '旧标准状态',
|
||||||
draft: '草稿',
|
draft: '草稿',
|
||||||
draftForComments: '征求意见稿',
|
draftForComments: '征求意见稿',
|
||||||
draftForReview: '送审稿',
|
draftForReview: '送审稿',
|
||||||
@@ -653,7 +653,7 @@ export const m = {
|
|||||||
standardText: '标准文本',
|
standardText: '标准文本',
|
||||||
newDocumentTextNumber: '新文档文本号',
|
newDocumentTextNumber: '新文档文本号',
|
||||||
newDocumentTextName: '新文档文本名称',
|
newDocumentTextName: '新文档文本名称',
|
||||||
newTextStatus: '新文本状态',
|
newTextStatus: '新标准状态',
|
||||||
comparisonType: '比对类型',
|
comparisonType: '比对类型',
|
||||||
comparisonTime: '比对时间',
|
comparisonTime: '比对时间',
|
||||||
dataLoading: '数据加载中',
|
dataLoading: '数据加载中',
|
||||||
|
|||||||
@@ -9,6 +9,7 @@ import store from '@/store'
|
|||||||
import {Message} from 'element-ui'
|
import {Message} from 'element-ui'
|
||||||
import { baseUrl,webLoginType,ssoLoginUrlDev } from '@/sysConfig'
|
import { baseUrl,webLoginType,ssoLoginUrlDev } from '@/sysConfig'
|
||||||
import isMobile from "../../store/isMobile";
|
import isMobile from "../../store/isMobile";
|
||||||
|
import { loginAgain } from '@/utils/login'
|
||||||
|
|
||||||
import domMessage from '../messageOnce/messageOnce'
|
import domMessage from '../messageOnce/messageOnce'
|
||||||
|
|
||||||
@@ -69,6 +70,7 @@ _axios.interceptors.response.use(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(res.data && res.data.respCode && res.data.respCode === 'LE505'){
|
if(res.data && res.data.respCode && res.data.respCode === 'LE505'){
|
||||||
|
/*
|
||||||
if (isMobile()) {
|
if (isMobile()) {
|
||||||
localStorage.removeItem('token')
|
localStorage.removeItem('token')
|
||||||
return router.push('/phoneIndex')
|
return router.push('/phoneIndex')
|
||||||
@@ -84,6 +86,12 @@ _axios.interceptors.response.use(
|
|||||||
}else if(webLoginType != null && webLoginType === 'dev'){
|
}else if(webLoginType != null && webLoginType === 'dev'){
|
||||||
return router.push('/login')
|
return router.push('/login')
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
messageOnce.warning({
|
||||||
|
message: '登录超时,请重新登录',
|
||||||
|
type: 'warning'
|
||||||
|
})
|
||||||
|
loginAgain()
|
||||||
}
|
}
|
||||||
return res
|
return res
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -4,6 +4,7 @@ import store from '@/store'
|
|||||||
import {Message} from 'element-ui'
|
import {Message} from 'element-ui'
|
||||||
import { baseUrl,webLoginType,ssoLoginUrlDev } from '@/sysConfig'
|
import { baseUrl,webLoginType,ssoLoginUrlDev } from '@/sysConfig'
|
||||||
import isMobile from "../../store/isMobile";
|
import isMobile from "../../store/isMobile";
|
||||||
|
import { loginAgain } from '@/utils/login'
|
||||||
|
|
||||||
import domMessage from '../messageOnce/messageOnce'
|
import domMessage from '../messageOnce/messageOnce'
|
||||||
|
|
||||||
@@ -64,6 +65,7 @@ service.interceptors.response.use(
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
if(res.data && res.data.respCode !== undefined && res.data.respCode === 'LE505'){
|
if(res.data && res.data.respCode !== undefined && res.data.respCode === 'LE505'){
|
||||||
|
/*
|
||||||
if (isMobile()) {
|
if (isMobile()) {
|
||||||
localStorage.removeItem('token')
|
localStorage.removeItem('token')
|
||||||
return router.push('/phoneIndex')
|
return router.push('/phoneIndex')
|
||||||
@@ -80,6 +82,12 @@ service.interceptors.response.use(
|
|||||||
return router.push('/login')
|
return router.push('/login')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
|
messageOnce.warning({
|
||||||
|
message: '登录超时,请重新登录',
|
||||||
|
type: 'warning'
|
||||||
|
})
|
||||||
|
loginAgain()
|
||||||
}
|
}
|
||||||
return res.data
|
return res.data
|
||||||
},
|
},
|
||||||
|
|||||||
+100
-20
@@ -1,27 +1,107 @@
|
|||||||
/**
|
/**
|
||||||
* 文件预览
|
* 文件预览
|
||||||
*/
|
*/
|
||||||
import { onlyOfficeUrl,kkFileViewUrl } from '@/sysConfig'
|
import { onlyOfficeUrl, kkFileViewUrl } from '@/sysConfig'
|
||||||
import { getBusStandFileByAttId } from 'api/process'
|
import { getBusStandFileByAttId } from 'api/process'
|
||||||
let Base64 = require('js-base64').Base64;
|
const Base64 = require('js-base64').Base64;
|
||||||
import store from '@/store'
|
import store from '@/store'
|
||||||
export default attId => {
|
import { Loading } from 'element-ui';
|
||||||
getBusStandFileByAttId({
|
import axios from '@/common/axiosV2'
|
||||||
attId
|
import isMobile from '@/store/isMobile'
|
||||||
}).then(res => {
|
|
||||||
if(res){
|
|
||||||
const editFileInfo = res.data
|
|
||||||
if(editFileInfo.fileSuffix.toLowerCase() === 'pdg'){
|
|
||||||
window.open('book://ssreader/e0?url='+editFileInfo.downLoadUrl)
|
|
||||||
}else if(editFileInfo.fileSuffix.toLowerCase() === 'pdf'){
|
|
||||||
window.open('./static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + editFileInfo.id))
|
|
||||||
}else {
|
|
||||||
const nowTime = new Date().getTime()
|
|
||||||
// window.open(onlyOfficeUrl+'/onlyOffice?oldFileName=' + editFileInfo.oldFileName + '&fileType=' + editFileInfo.fileSuffix + '&attId=' + editFileInfo.id + '&fileUrl=' + editFileInfo.downLoadUrl + '&key=' + editFileInfo.id + nowTime+'&filePath='+editFileInfo.filePath+'&fileName='+editFileInfo.fileName)
|
|
||||||
window.open(kkFileViewUrl+'/onlinePreview?url='+encodeURIComponent(Base64.encode(editFileInfo.downLoadUrl)) + '&watermarkTxt=' + encodeURIComponent(store.getters.userInfo.userName));
|
|
||||||
|
|
||||||
}
|
// 获取转换为pdf的文件
|
||||||
}
|
function queryConvertAtt (data) {
|
||||||
}).catch(e => {
|
return axios({
|
||||||
})
|
url: 'api/lawss/sarBussStandFile/queryConvertAtt',
|
||||||
|
method: 'get',
|
||||||
|
params: data
|
||||||
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
async function preview (attId, type) {
|
||||||
|
let loading;
|
||||||
|
if (type !== 'getUrl') {
|
||||||
|
loading = Loading.service({
|
||||||
|
lock: true,
|
||||||
|
text: '正在加载文件',
|
||||||
|
spinner: 'el-icon-loading',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
const res = await getBusStandFileByAttId({ attId })
|
||||||
|
if (res.ok && res.data) {
|
||||||
|
let viewer = '/static/pdf/web/viewer.html?file='
|
||||||
|
if (isMobile()) {
|
||||||
|
viewer = '/static/pdf_old/web/viewer.html?file='
|
||||||
|
}
|
||||||
|
const file = res.data
|
||||||
|
let url = ''
|
||||||
|
if (file.fileSuffix.toLowerCase() === 'pdg') {
|
||||||
|
if (isMobile()) {
|
||||||
|
this.$message.warning('pdg文件,不支持手机端预览')
|
||||||
|
return
|
||||||
|
} else {
|
||||||
|
url = 'book://ssreader/e0?url=' + file.downLoadUrl
|
||||||
|
}
|
||||||
|
} else if (file.fileSuffix.toLowerCase() === 'pdf') {
|
||||||
|
url = viewer + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + file.id)
|
||||||
|
} else {
|
||||||
|
// onlyoffice在线编辑文件转换为pdf预览 -> kkfileview预览乱码
|
||||||
|
if (file.onlined && file.onlined === 1) {
|
||||||
|
const res = await queryConvertAtt({ attId })
|
||||||
|
if (res.ok && res.data) {
|
||||||
|
url = viewer + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + res.data.attId)
|
||||||
|
} else {
|
||||||
|
this.$message.error('文档未转换成功或本地读取不到该文档')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
} else if (file.previewAttId) {
|
||||||
|
url = viewer + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + file.previewAttId)
|
||||||
|
}else {
|
||||||
|
url = kkFileViewUrl + '/onlinePreview?url=' + encodeURIComponent(Base64.encode(file.downLoadUrl)) + '&watermarkTxt=' + encodeURIComponent(store.getters.userInfo.userName)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (type === 'getUrl') {
|
||||||
|
return url
|
||||||
|
}
|
||||||
|
window.open(url)
|
||||||
|
}
|
||||||
|
loading && loading.close()
|
||||||
|
}
|
||||||
|
|
||||||
|
export default preview;
|
||||||
|
// export default (attId) => {
|
||||||
|
// const loading = Loading.service({
|
||||||
|
// lock: true,
|
||||||
|
// text: '正在加载文件',
|
||||||
|
// spinner: 'el-icon-loading',
|
||||||
|
// })
|
||||||
|
// getBusStandFileByAttId({
|
||||||
|
// attId
|
||||||
|
// }).then(res => {
|
||||||
|
// if(res) {
|
||||||
|
// const editFileInfo = res.data
|
||||||
|
// if(editFileInfo.fileSuffix.toLowerCase() === 'pdg') {
|
||||||
|
// window.open('book://ssreader/e0?url=' + editFileInfo.downLoadUrl)
|
||||||
|
// }else if(editFileInfo.fileSuffix.toLowerCase() === 'pdf') {
|
||||||
|
// window.open('./static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + editFileInfo.id))
|
||||||
|
// }else {
|
||||||
|
// // const nowTime = new Date().getTime()
|
||||||
|
// // window.open(onlyOfficeUrl+'/onlyOffice?oldFileName=' + editFileInfo.oldFileName + '&fileType=' + editFileInfo.fileSuffix + '&attId=' + editFileInfo.id + '&fileUrl=' + editFileInfo.downLoadUrl + '&key=' + editFileInfo.id + nowTime+'&filePath='+editFileInfo.filePath+'&fileName='+editFileInfo.fileName)
|
||||||
|
// if (res.data && res.data.onlined === 1) {
|
||||||
|
// queryConvertAtt({ attId }).then(res => {
|
||||||
|
// if (res.ok && res.data) {
|
||||||
|
// window.open('/static/pdf/web/viewer.html?file=' + encodeURIComponent('/api/att/attFile/getFileInfo?fileId=' + res.data.attId))
|
||||||
|
// } else {
|
||||||
|
// this.$message.error('文档未转换成功或本地读取不到该文档')
|
||||||
|
// }
|
||||||
|
// }).catch(() => {
|
||||||
|
// this.$message.error('文档未转换成功或本地读取不到该文档')
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
// window.open(kkFileViewUrl + '/onlinePreview?url=' + encodeURIComponent(Base64.encode(editFileInfo.downLoadUrl)) + '&watermarkTxt=' + encodeURIComponent(store.getters.userInfo.userName));
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// }).finally(() => {
|
||||||
|
// loading.close()
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
|||||||
@@ -94,6 +94,10 @@ export default {
|
|||||||
required:{
|
required:{
|
||||||
type:Boolean,
|
type:Boolean,
|
||||||
default:false
|
default:false
|
||||||
|
},
|
||||||
|
naButton:{
|
||||||
|
type:Boolean,
|
||||||
|
default:false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
components: {},
|
components: {},
|
||||||
@@ -144,7 +148,16 @@ export default {
|
|||||||
return {
|
return {
|
||||||
disabledDate (time) {
|
disabledDate (time) {
|
||||||
return _this.tagList.includes(_this.$dateFormat(time, 'yyyy-MM-dd'))
|
return _this.tagList.includes(_this.$dateFormat(time, 'yyyy-MM-dd'))
|
||||||
}
|
},
|
||||||
|
shortcuts:_this.naButton ? [{
|
||||||
|
text: 'N/A',
|
||||||
|
onClick() {
|
||||||
|
_this.tagList.push('N/A')
|
||||||
|
_this.datePickerVisible = false
|
||||||
|
_this.datePickerVal = ''
|
||||||
|
_this.$emit('input', _this.tagList.join(','))
|
||||||
|
}
|
||||||
|
}] : null
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -212,10 +212,11 @@ export default {
|
|||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
value: {
|
value: {
|
||||||
handler(val) {
|
handler () {
|
||||||
if (this.showFileModel) {
|
this.getShowFileList()
|
||||||
this.getShowFileList()
|
// if (this.showFileModel) {
|
||||||
}
|
// this.getShowFileList()
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@@ -540,6 +541,7 @@ export default {
|
|||||||
*/
|
*/
|
||||||
getShowFileList() {
|
getShowFileList() {
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
|
this.showFileList = []
|
||||||
if (this.value && this.value !== '') {
|
if (this.value && this.value !== '') {
|
||||||
let paramefile = this.value
|
let paramefile = this.value
|
||||||
if (paramefile.charAt(paramefile.length - 1) === ',') {
|
if (paramefile.charAt(paramefile.length - 1) === ',') {
|
||||||
|
|||||||
@@ -130,7 +130,7 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
width="130">
|
width="130">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
|
|||||||
@@ -120,7 +120,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="stateName"
|
prop="stateName"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<loading :loading="replaceLoading">{{$t('m.dataAcquisition')}}</loading>
|
<loading :loading="replaceLoading">{{$t('m.dataAcquisition')}}</loading>
|
||||||
|
|||||||
@@ -125,7 +125,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="130">
|
width="130">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
|
<span>{{ textStatusMap[scope.row.textStatus] }}</span>
|
||||||
@@ -191,8 +191,8 @@ export default {
|
|||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
textStatus:'',//文本状态
|
textStatus:'',//标准状态
|
||||||
textStatusMap: {}, // 文本状态id与name对应
|
textStatusMap: {}, // 标准状态id与name对应
|
||||||
replaceLawsNumModel: false,
|
replaceLawsNumModel: false,
|
||||||
sarBussionessLawsEO: {
|
sarBussionessLawsEO: {
|
||||||
replaceLawsNum: ''
|
replaceLawsNum: ''
|
||||||
@@ -234,12 +234,12 @@ export default {
|
|||||||
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standStateOptions = res.data.WBZTCLASS; // 文本状态
|
this.standStateOptions = res.data.WBZTCLASS; // 标准状态
|
||||||
this.setMap(this.standStateOptions);
|
this.setMap(this.standStateOptions);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
|
|||||||
@@ -147,7 +147,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="130">
|
width="130">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|||||||
@@ -126,7 +126,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="130">
|
width="130">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>
|
<span>
|
||||||
@@ -198,8 +198,8 @@ export default {
|
|||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
textStatus:'',//文本状态
|
textStatus:'',//标准状态
|
||||||
textStatusMap: {}, // 文本状态id与name对应
|
textStatusMap: {}, // 标准状态id与name对应
|
||||||
replaceLawsNumModel: false,
|
replaceLawsNumModel: false,
|
||||||
sarBussionessLawsEO: {
|
sarBussionessLawsEO: {
|
||||||
replaceLawsNum: ''
|
replaceLawsNum: ''
|
||||||
@@ -235,7 +235,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
@@ -387,7 +387,7 @@ export default {
|
|||||||
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standStateOptions = res.data.WBZTCLASS // 文本状态
|
this.standStateOptions = res.data.WBZTCLASS // 标准状态
|
||||||
this.setMap(this.standStateOptions)
|
this.setMap(this.standStateOptions)
|
||||||
}, e => {
|
}, e => {
|
||||||
console.log("error");
|
console.log("error");
|
||||||
|
|||||||
@@ -109,15 +109,6 @@
|
|||||||
<!-- min-width="130"-->
|
<!-- min-width="130"-->
|
||||||
<!-- >-->
|
<!-- >-->
|
||||||
<!-- </el-table-column>-->
|
<!-- </el-table-column>-->
|
||||||
<el-table-column
|
|
||||||
type="index"
|
|
||||||
width="55"
|
|
||||||
label="序号"
|
|
||||||
align="center">
|
|
||||||
<template slot-scope="{scope, column, $index}">
|
|
||||||
{{ ($index + 1) + (replacePage - 1) * replaceLawsNumForm.pageSize }}
|
|
||||||
</template>
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="政策编号"
|
label="政策编号"
|
||||||
min-width="130">
|
min-width="130">
|
||||||
@@ -145,7 +136,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="130">
|
width="130">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|||||||
@@ -0,0 +1,265 @@
|
|||||||
|
<template>
|
||||||
|
<div>
|
||||||
|
<!-- 导入模态窗 -->
|
||||||
|
<el-dialog
|
||||||
|
v-if="visible"
|
||||||
|
v-dragDialogWidth
|
||||||
|
class="dialog"
|
||||||
|
width="400px"
|
||||||
|
:visible="visible"
|
||||||
|
title="导入文件"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
append-to-body
|
||||||
|
@close="onClose"
|
||||||
|
>
|
||||||
|
<el-upload
|
||||||
|
ref="importfile"
|
||||||
|
multiple
|
||||||
|
drag
|
||||||
|
:action="action"
|
||||||
|
:headers="headers"
|
||||||
|
name="file"
|
||||||
|
:file-list="fileList"
|
||||||
|
:accept="accept"
|
||||||
|
:auto-upload="autoUpload"
|
||||||
|
:limit="limit"
|
||||||
|
:before-upload="beforeUpload"
|
||||||
|
:on-success="onSuccess"
|
||||||
|
:on-remove="onRemove"
|
||||||
|
:on-preview="onPreview"
|
||||||
|
:on-exceed="onExceed"
|
||||||
|
:on-error="onError"
|
||||||
|
:show-file-list="true"
|
||||||
|
>
|
||||||
|
<i class="el-icon-upload" style="color: #3399ff" />
|
||||||
|
<div class="el-upload__text">点击或拖拽上传文件</div>
|
||||||
|
</el-upload>
|
||||||
|
<div slot="footer" class="dialog-footer">
|
||||||
|
<slot />
|
||||||
|
<el-button
|
||||||
|
v-if="manualUpload"
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
class="common-button-default"
|
||||||
|
@click="ManualUpload"
|
||||||
|
>
|
||||||
|
提交
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
<!-- 导入失败-->
|
||||||
|
<el-dialog
|
||||||
|
:visible.sync="importFailed"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
width="400px"
|
||||||
|
append-to-body
|
||||||
|
>
|
||||||
|
<p slot="title" style="color:#f60">
|
||||||
|
<span>导入失败</span>
|
||||||
|
</p>
|
||||||
|
<div style="max-height: 300px;overflow: auto;padding: 10px 0;">
|
||||||
|
<p v-html="importForm.content" />
|
||||||
|
</div>
|
||||||
|
<div slot="footer" class="demo-drawer-footer">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
round
|
||||||
|
class="common-button-default"
|
||||||
|
icon="el-icon-check"
|
||||||
|
@click="importFailed = false"
|
||||||
|
>
|
||||||
|
确认
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'Import',
|
||||||
|
props: {
|
||||||
|
accept: {
|
||||||
|
type: String,
|
||||||
|
default: '.pdf, .PDF, .doc, .DOC, .docx, .DOCX, .ppt, .PPT, .pptx, .PPTX, .xls, .XLS, .xlsx, .XLSX, .pdg, .PDG'
|
||||||
|
},
|
||||||
|
action: {
|
||||||
|
type: String,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
visible: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
size: {
|
||||||
|
type: Number,
|
||||||
|
default: 200
|
||||||
|
},
|
||||||
|
// 是否自动上传
|
||||||
|
autoUpload: {
|
||||||
|
type: Boolean,
|
||||||
|
default: true
|
||||||
|
},
|
||||||
|
// 手动上传按钮
|
||||||
|
manualUpload: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
limit: {
|
||||||
|
type: Number,
|
||||||
|
default: 8
|
||||||
|
},
|
||||||
|
ids: {
|
||||||
|
required: false,
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
names: {
|
||||||
|
required: false,
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
headers: {
|
||||||
|
token: JSON.parse(localStorage.getItem('userInfo')).token
|
||||||
|
},
|
||||||
|
importFailed: false,
|
||||||
|
importForm: {},
|
||||||
|
fileList: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
this.initFileList()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initFileList () {
|
||||||
|
if (this.ids && this.ids !== '' && this.names && this.names !== '') {
|
||||||
|
const fileList = []
|
||||||
|
const idArr = this.ids.split(',')
|
||||||
|
const nameArr = this.names.split(',')
|
||||||
|
for (let i = 0; i < idArr.length; i++) {
|
||||||
|
fileList.push({
|
||||||
|
id: idArr[i],
|
||||||
|
name: nameArr[i]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.fileList = fileList
|
||||||
|
} else {
|
||||||
|
this.fileList = []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onClose () {
|
||||||
|
this.$emit('update:visible', false)
|
||||||
|
},
|
||||||
|
// 导入按钮 上传之前的钩子
|
||||||
|
beforeUpload (file) {
|
||||||
|
const fileName = file.name
|
||||||
|
const fileSuffix = fileName.slice(fileName.lastIndexOf('.') + 1)
|
||||||
|
// 判断上传文件格式
|
||||||
|
const acceptArr = this.accept.split(',').map(type => type.slice(type.lastIndexOf('.') + 1))
|
||||||
|
// 判断上传文件格式
|
||||||
|
if (!acceptArr.includes(fileSuffix)) {
|
||||||
|
this.$message({
|
||||||
|
dangerouslyUseHTMLString: true,
|
||||||
|
message: <div style="word-break: break-all;;color: #F56C6C">文件{file.name}格式不正确,请上传{acceptArr.join('、')}文件</div>,
|
||||||
|
type: 'error'
|
||||||
|
})
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
// 判断文件上传大小
|
||||||
|
if (file.size / 1024 / 1024 > this.size) {// eslint-disable-line
|
||||||
|
this.$message.error('文件' + file.name + `超过${this.size}M`)
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
// 导入标准数据成功后执行
|
||||||
|
onSuccess (response, file, fileList) {
|
||||||
|
if (response.ok) {
|
||||||
|
const fileObj = {
|
||||||
|
id: file.response.data.id,
|
||||||
|
name: file.response.data.name
|
||||||
|
}
|
||||||
|
let ids;
|
||||||
|
let names;
|
||||||
|
if (this.ids && this.ids.length > 0) {
|
||||||
|
ids = this.ids + ',' + fileObj.id
|
||||||
|
names = this.names + ',' + fileObj.name
|
||||||
|
} else {
|
||||||
|
ids = fileObj.id
|
||||||
|
names = fileObj.name
|
||||||
|
}
|
||||||
|
this.$set(this.fileList, this.fileList.length, fileObj)
|
||||||
|
this.$emit('update:ids', ids)
|
||||||
|
this.$emit('update:names', names)
|
||||||
|
|
||||||
|
this.$emit('update:visible', false)
|
||||||
|
this.$emit('onSuccess')
|
||||||
|
this.$message({
|
||||||
|
message: response.message || response.data,
|
||||||
|
type: 'success'
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
this.importFailed = true
|
||||||
|
this.importForm.content = response.message
|
||||||
|
}
|
||||||
|
},
|
||||||
|
onRemove (file, fileList) {
|
||||||
|
const ids = fileList
|
||||||
|
.reduce((init, file) => init + ',' + (file.id || file.response.data.id), '')
|
||||||
|
.replace(/^,|,$/g, '')
|
||||||
|
const names = fileList
|
||||||
|
.reduce((init, file) => init + ',' + (file.name || file.response.data.name), '')
|
||||||
|
.replace(/^,|,$/g, '')
|
||||||
|
this.fileList = fileList.map(file => ({
|
||||||
|
id: file.id || file.response.data.id,
|
||||||
|
name: file.name
|
||||||
|
}))
|
||||||
|
this.$emit('update:ids', ids)
|
||||||
|
this.$emit('update:names', names)
|
||||||
|
this.$emit('onRemove')
|
||||||
|
},
|
||||||
|
onPreview (file) {
|
||||||
|
const id = file.id || file.response.data.id
|
||||||
|
this.$preview(id)
|
||||||
|
},
|
||||||
|
onExceed (files, fileList) {
|
||||||
|
this.$message.warning(`当前限制上传 1 个文件,本次上传了 ${files.length} 个文件,共上传了 ${files.length + fileList.length} 个文件`);
|
||||||
|
},
|
||||||
|
onError (err, file, fileList) {
|
||||||
|
const ids = fileList
|
||||||
|
.reduce((init, file) => init + ',' + (file.id || file.response.data.id), '')
|
||||||
|
.replace(/^,|,$/g, '')
|
||||||
|
const names = fileList
|
||||||
|
.reduce((init, file) => init + ',' + (file.name || file.response.data.name), '')
|
||||||
|
.replace(/^,|,$/g, '')
|
||||||
|
this.fileList = fileList.map(file => ({
|
||||||
|
id: file.id || file.response.data.id,
|
||||||
|
name: file.name
|
||||||
|
}))
|
||||||
|
this.$emit('update:ids', ids)
|
||||||
|
this.$emit('update:names', names)
|
||||||
|
this.$emit('onError')
|
||||||
|
this.$message.error('上传失败')
|
||||||
|
},
|
||||||
|
ManualUpload () {
|
||||||
|
this.$refs.importfile.submit();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
/deep/ .el-upload-dragger{
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
/deep/ .el-upload{
|
||||||
|
width: 100% !important;
|
||||||
|
|
||||||
|
}
|
||||||
|
/deep/ .el-dialog__body {
|
||||||
|
padding: 10px 20px !important;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -129,7 +129,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="130">
|
width="130">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
@@ -137,6 +137,8 @@
|
|||||||
<!--分页-->
|
<!--分页-->
|
||||||
<pagination
|
<pagination
|
||||||
style="position: relative;"
|
style="position: relative;"
|
||||||
|
:auto-size="true"
|
||||||
|
:page-size="replaceLawsNumForm.pageSize"
|
||||||
:page="replacePage"
|
:page="replacePage"
|
||||||
:total="replaceTotal"
|
:total="replaceTotal"
|
||||||
@pageChange="pageChangeReplace"
|
@pageChange="pageChangeReplace"
|
||||||
@@ -186,7 +188,7 @@ export default {
|
|||||||
lawsNo: '',
|
lawsNo: '',
|
||||||
lawsName: '', // 政策名称
|
lawsName: '', // 政策名称
|
||||||
page: 1,
|
page: 1,
|
||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: 20,
|
||||||
total: 0,
|
total: 0,
|
||||||
},
|
},
|
||||||
replaceLawsNumRow: [], // 代替政策号 数组内容
|
replaceLawsNumRow: [], // 代替政策号 数组内容
|
||||||
|
|||||||
@@ -1,25 +1,26 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-form-item :label="label" :prop="prop" class="add-form-item form-item-disabled">
|
<el-form-item :label="label" :prop="prop" class="add-form-item form-item-disabled">
|
||||||
<el-select
|
<el-select
|
||||||
:value="value"
|
:value="value"
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
:placeholder="placeholder"
|
:placeholder="placeholder"
|
||||||
:filterable="filterable"
|
:filterable="filterable"
|
||||||
:clearable="clearable"
|
:clearable="clearable"
|
||||||
@change="handleChange">
|
@change="handleChange"
|
||||||
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in options"
|
v-for="item in options"
|
||||||
:key="item.value"
|
:key="item.value"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
></el-option>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "SelectFormItem",
|
name: 'SelectFormItem',
|
||||||
props: {
|
props: {
|
||||||
value: {
|
value: {
|
||||||
required: true
|
required: true
|
||||||
@@ -47,15 +48,23 @@ export default {
|
|||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: true
|
default: true
|
||||||
},
|
},
|
||||||
|
customPlaceholder: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
placeholder () {
|
placeholder () {
|
||||||
|
if (this.customPlaceholder !== '') {
|
||||||
|
return this.customPlaceholder
|
||||||
|
}
|
||||||
return `请选择${this.label}`
|
return `请选择${this.label}`
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleChange (event) {
|
handleChange (event) {
|
||||||
this.$emit('input', event)
|
this.$emit('input', event)
|
||||||
|
this.$emit('change', event)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,722 @@
|
|||||||
|
<template>
|
||||||
|
<el-drawer
|
||||||
|
ref="standard"
|
||||||
|
title="查询结果"
|
||||||
|
size="1250px"
|
||||||
|
:visible.sync="visible"
|
||||||
|
direction="rtl"
|
||||||
|
append-to-body
|
||||||
|
>
|
||||||
|
<div style="flex: 1" class="drawer-content">
|
||||||
|
<div style="height: calc(100% - 56px)">
|
||||||
|
<el-form
|
||||||
|
:model="searchForm"
|
||||||
|
inline
|
||||||
|
class="label-input-form search-area"
|
||||||
|
style="justify-content: left;"
|
||||||
|
>
|
||||||
|
<el-form-item label="标准/政策来源" class="search-item">
|
||||||
|
<el-select
|
||||||
|
v-model="searchForm.dataSource"
|
||||||
|
placeholder="请选择标准/政策来源"
|
||||||
|
@change="dataSourceChange"
|
||||||
|
>
|
||||||
|
<el-option v-for="i in dataSourceOptions" :value="i.value" :label="i.label" />
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item
|
||||||
|
label="标准编号/政策文号"
|
||||||
|
style="margin-right:10px"
|
||||||
|
class="search-item"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="searchForm.lawNumber"
|
||||||
|
clearable
|
||||||
|
placeholder="根据编号查找"
|
||||||
|
:maxlength="100"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item
|
||||||
|
label="标准名称/政策名称"
|
||||||
|
style="margin-right:10px"
|
||||||
|
class="search-item"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="searchForm.lawName"
|
||||||
|
placeholder="根据名称查找"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item>
|
||||||
|
<el-button
|
||||||
|
size="mini"
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
@click="onSearch"
|
||||||
|
>
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
@click="onClear"
|
||||||
|
>
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
|
||||||
|
<el-table
|
||||||
|
v-if="showTable"
|
||||||
|
ref="reviseDrawerTable"
|
||||||
|
:data="standardData"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width: 100%;"
|
||||||
|
border
|
||||||
|
height="calc(100% - 51px)"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px'}"
|
||||||
|
@selection-change="selectionChange"
|
||||||
|
>
|
||||||
|
<el-table-column
|
||||||
|
fixed="left"
|
||||||
|
type="selection"
|
||||||
|
width="55"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
fixed="left"
|
||||||
|
type="index"
|
||||||
|
width="55"
|
||||||
|
label="序号"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="{scope, column, $index}">
|
||||||
|
{{ ($index + 1) + (searchForm.page - 1) * searchForm.pageSize }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<div v-if="searchForm.dataSource === 'INLAND'">
|
||||||
|
<el-table-column
|
||||||
|
label="标准号"
|
||||||
|
width="150"
|
||||||
|
prop="standCode"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a
|
||||||
|
v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止'"
|
||||||
|
class="table-jump"
|
||||||
|
style="color: #F56C6C"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
<a
|
||||||
|
v-else-if="scope.row.standYear"
|
||||||
|
class="table-jump"
|
||||||
|
style="color: #333333"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
<a
|
||||||
|
v-else
|
||||||
|
class="table-jump"
|
||||||
|
style="color: #333333"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standName"
|
||||||
|
label="标准名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="textStatusMap[scope.row.textStatus] === '废止'" class="table-jump" style="color: #F56C6C" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||||
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="issueTime"
|
||||||
|
width="120"
|
||||||
|
label="发布日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.issueTime }}</span>
|
||||||
|
<span v-else>{{ scope.row.issueTime }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="ssrq"
|
||||||
|
width="120"
|
||||||
|
label="实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.ssrq }}</span>
|
||||||
|
<span v-else>{{ scope.row.ssrq }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
|
||||||
|
<el-table-column
|
||||||
|
prop="xcxssrq"
|
||||||
|
width="150"
|
||||||
|
label="新车型实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.xcxssrq }}</span>
|
||||||
|
<span v-else>{{ scope.row.xcxssrq }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="zccssrq"
|
||||||
|
width="150"
|
||||||
|
label="在产车实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{ scope.row.zccssrq }}</span>
|
||||||
|
<span v-else>{{ scope.row.zccssrq }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="textStatus"
|
||||||
|
width="110"
|
||||||
|
label="标准状态"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
|
textStatusMap[scope.row.textStatus]
|
||||||
|
}}</span>
|
||||||
|
<span v-else>{{ textStatusMap[scope.row.textStatus] }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</div>
|
||||||
|
<div v-if="searchForm.dataSource === 'FOREIGN'">
|
||||||
|
<el-table-column
|
||||||
|
label="标准号"
|
||||||
|
width="150"
|
||||||
|
prop="standCode"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a
|
||||||
|
v-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '废止'"
|
||||||
|
style="color: #F56C6C"
|
||||||
|
class="table-jump"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
<a
|
||||||
|
v-else-if="scope.row.standYear && textStatusMap[scope.row.textStatus] === '——' "
|
||||||
|
style="color: #409EFF"
|
||||||
|
class="table-jump"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
<a
|
||||||
|
v-else-if="scope.row.standYear"
|
||||||
|
style="color: #333333"
|
||||||
|
class="table-jump"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
<a
|
||||||
|
v-else
|
||||||
|
style="color: #333333"
|
||||||
|
class="table-jump"
|
||||||
|
@click="handlePreview(scope.row)"
|
||||||
|
>{{ scope.row.standCode }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standName"
|
||||||
|
label="标准名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||||
|
scope.row.standName
|
||||||
|
}}</a>
|
||||||
|
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||||
|
scope.row.standName
|
||||||
|
}}</a>
|
||||||
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||||
|
scope.row.standName
|
||||||
|
}}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standEnName"
|
||||||
|
label="英文名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||||
|
scope.row.standEnName
|
||||||
|
}}</a>
|
||||||
|
<a v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||||
|
scope.row.standEnName
|
||||||
|
}}</a>
|
||||||
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{
|
||||||
|
scope.row.standEnName
|
||||||
|
}}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="issueTime"
|
||||||
|
width="120"
|
||||||
|
label="发布日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<div v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">
|
||||||
|
{{ scope.row.issueTime }}
|
||||||
|
</div>
|
||||||
|
<div v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">
|
||||||
|
{{ scope.row.issueTime }}
|
||||||
|
</div>
|
||||||
|
<div v-else style="color: #333333">
|
||||||
|
{{ scope.row.issueTime }}
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="ssrq"
|
||||||
|
width="120"
|
||||||
|
label="实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
|
scope.row.ssrq
|
||||||
|
}}</span>
|
||||||
|
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||||
|
scope.row.ssrq
|
||||||
|
}}</span>
|
||||||
|
<span v-else style="color: #333333">{{ scope.row.ssrq }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="xcxssrq"
|
||||||
|
width="150"
|
||||||
|
label="新车型实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
|
scope.row.xcxssrq
|
||||||
|
}}</span>
|
||||||
|
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||||
|
scope.row.xcxssrq
|
||||||
|
}}</span>
|
||||||
|
<span v-else style="color: #333333">{{
|
||||||
|
scope.row.xcxssrq
|
||||||
|
}}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="zccssrq"
|
||||||
|
width="150"
|
||||||
|
label="在产车实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
|
scope.row.zccssrq
|
||||||
|
}}</span>
|
||||||
|
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||||
|
scope.row.zccssrq
|
||||||
|
}}</span>
|
||||||
|
<span v-else style="color: #333333">{{
|
||||||
|
scope.row.zccssrq
|
||||||
|
}}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="textStatus"
|
||||||
|
width="110"
|
||||||
|
label="标准状态"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
|
textStatusMap[scope.row.textStatus]
|
||||||
|
}}</span>
|
||||||
|
<span v-else-if="textStatusMap[scope.row.textStatus] === '——' " style="color: #409EFF">{{
|
||||||
|
textStatusMap[scope.row.textStatus]
|
||||||
|
}}</span>
|
||||||
|
<span v-else style="color: #333333">{{ textStatusMap[scope.row.textStatus] }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</div>
|
||||||
|
<div v-if="searchForm.dataSource === 'FOREIGN_LAWS'">
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
label="政策文号"
|
||||||
|
width="150"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="lawsName"
|
||||||
|
label="中文名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="lawsEnName"
|
||||||
|
label="英文名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsEnName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsEnName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsEnName }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="issueTime"
|
||||||
|
label="发文日期"
|
||||||
|
width="120"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.issueTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{ scope.row.issueTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.issueTime }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="XCXSSRQLAWS"
|
||||||
|
label="新车实施日期"
|
||||||
|
width="150"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.putTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{ scope.row.putTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.XCXSSRQLAWS }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standStatusShow"
|
||||||
|
:label="standardStatusName"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||||||
|
{{ scope.row.standStatusShow }}
|
||||||
|
</span>
|
||||||
|
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||||||
|
{{ scope.row.standStatusShow }}
|
||||||
|
</span>
|
||||||
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||||||
|
{{ scope.row.standStatusShow }}
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</div>
|
||||||
|
<div v-if="searchForm.dataSource === 'BUSINESS_STAND'">
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
label="企标编号"
|
||||||
|
width="150"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standCode }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standCode }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standCode }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standName"
|
||||||
|
label="中文名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standName }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standEnName"
|
||||||
|
label="英文名称"
|
||||||
|
min-width="300"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||||
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.standEnName }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="issueTime"
|
||||||
|
label="发布日期"
|
||||||
|
width="120"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.issueTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C">{{ scope.row.issueTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.issueTime }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="putTime"
|
||||||
|
label="实施日期"
|
||||||
|
width="120"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">{{ scope.row.putTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">{{ scope.row.putTime }}</span>
|
||||||
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">{{ scope.row.putTime }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="standStatusShow"
|
||||||
|
label="标准状态"
|
||||||
|
width="110"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||||||
|
{{ scope.row.standStatusShow }}
|
||||||
|
</span>
|
||||||
|
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||||||
|
{{ scope.row.standStatusShow }}
|
||||||
|
</span>
|
||||||
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||||||
|
{{ scope.row.standStatusShow }}
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</div>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
<pagination
|
||||||
|
:page="searchForm.page"
|
||||||
|
:total="searchForm.total"
|
||||||
|
@pageChange="pageChange"
|
||||||
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div class="drawer-footer">
|
||||||
|
<el-button
|
||||||
|
round
|
||||||
|
class="common-button-primary"
|
||||||
|
icon="el-icon-check"
|
||||||
|
type="primary"
|
||||||
|
@click="onDrag"
|
||||||
|
>
|
||||||
|
带入
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
round
|
||||||
|
class="common-button-default"
|
||||||
|
icon="el-icon-close"
|
||||||
|
@click="onCancel"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<loading :loading="loading">数据获取中</loading>
|
||||||
|
</el-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'StandardListDrawer',
|
||||||
|
data () {
|
||||||
|
const dataSourceOptions = [
|
||||||
|
{
|
||||||
|
label: '国内标准库',
|
||||||
|
value: 'INLAND'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '海外标准库',
|
||||||
|
value: 'FOREIGN'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '国内外政策库',
|
||||||
|
value: 'FOREIGN_LAWS'
|
||||||
|
},
|
||||||
|
{
|
||||||
|
label: '企业标准库',
|
||||||
|
value: 'BUSINESS_STAND'
|
||||||
|
},
|
||||||
|
]
|
||||||
|
const searchForm = {
|
||||||
|
dataSource: 'INLAND',
|
||||||
|
standType: 'INLAND',
|
||||||
|
lawCode: '',
|
||||||
|
lawName: '',
|
||||||
|
productType: '',
|
||||||
|
page: 1,
|
||||||
|
total: 0,
|
||||||
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
searchForm,
|
||||||
|
initSearchForm: JSON.parse(JSON.stringify(searchForm)),
|
||||||
|
dataSourceOptions,
|
||||||
|
standardData: [],
|
||||||
|
loading: false,
|
||||||
|
url: {
|
||||||
|
INLANDFOREIGN: 'sarStandardsInfo/sar-standards-info/getSarStandardsInfoPage',
|
||||||
|
FOREIGN_LAWS: 'lawss/sarLawsInfo/page',
|
||||||
|
BUSINESS_STAND: 'lawss/sarBussionessStand/getSarBussionStandPage'
|
||||||
|
},
|
||||||
|
textStatusMap: {},
|
||||||
|
showTable: true,
|
||||||
|
visible: false,
|
||||||
|
selectedList: [],
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
standardStatusName () {
|
||||||
|
return this.searchForm.standType === 'FOREIGN_LAWS' ? '政策状态' : '标准状态'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
this.getDicTypeListCode()
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
open () {
|
||||||
|
this.visible = true
|
||||||
|
this.searchForm = JSON.parse(JSON.stringify(this.initSearchForm))
|
||||||
|
this.selectedList = []
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onCancel () {
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
getData () {
|
||||||
|
this.searchForm.standType = this.searchForm.dataSource
|
||||||
|
const params = { dataSource: this.searchForm.dataSource, standType: this.searchForm.standType, page: this.searchForm.page, total: this.searchForm.total, ...this.searchForm.pageSize }
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'loading'
|
||||||
|
}
|
||||||
|
let url = this.url.INLANDFOREIGN
|
||||||
|
switch (this.searchForm.dataSource) {
|
||||||
|
case 'INLAND':
|
||||||
|
case 'FOREIGN':
|
||||||
|
url = this.url.INLANDFOREIGN
|
||||||
|
params.standNumber = this.searchForm.lawNumber
|
||||||
|
params.standName = this.searchForm.lawName
|
||||||
|
break
|
||||||
|
case 'FOREIGN_LAWS':
|
||||||
|
url = this.url.FOREIGN_LAWS
|
||||||
|
params.lawsNo = this.searchForm.lawNumber
|
||||||
|
params.lawsName = this.searchForm.lawName
|
||||||
|
break
|
||||||
|
case 'BUSINESS_STAND':
|
||||||
|
url = this.url.BUSINESS_STAND
|
||||||
|
params.standCode = this.searchForm.lawNumber
|
||||||
|
params.standName = this.searchForm.lawName
|
||||||
|
break
|
||||||
|
}
|
||||||
|
this.$http._getData(url, params, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.standardData = res.data.list
|
||||||
|
this.searchForm.total = res.data.count
|
||||||
|
this.showTable = false
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.showTable = true
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
pageChange (page) {
|
||||||
|
this.searchForm.page = page
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
pageSizeChange (pageSize) {
|
||||||
|
this.searchForm.pageSize = pageSize
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
dataSourceChange () {
|
||||||
|
const standType = this.searchForm.dataSource
|
||||||
|
this.searchForm = JSON.parse(JSON.stringify(this.initSearchForm))
|
||||||
|
this.searchForm.dataSource = standType
|
||||||
|
this.searchForm.standType = standType
|
||||||
|
this.standType = standType
|
||||||
|
console.log(this.standType)
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onSearch () {
|
||||||
|
this.searchForm.page = 1
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onClear () {
|
||||||
|
this.searchForm.page = 1
|
||||||
|
this.searchForm.lawNumber = ''
|
||||||
|
this.searchForm.lawName = ''
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
getDicTypeListCode () {
|
||||||
|
this.$http._getData('sys/dictype/getDicTypeListCode').then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.dict = { ...res.data }
|
||||||
|
this.setMap(this.dict.WBZTCLASS, 'textStatusMap')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
setMap (data, key) {
|
||||||
|
data.forEach(item => {
|
||||||
|
this.$set(this[key], item.value, item.label);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
selectionChange (selection) {
|
||||||
|
this.selectedList = selection
|
||||||
|
},
|
||||||
|
// 点击查看
|
||||||
|
handlePreview (item) {
|
||||||
|
let name = '', id = item.id, pageType = ''
|
||||||
|
if (item.standType === 'INLAND') {
|
||||||
|
name = 'OtherStandardDetails'
|
||||||
|
pageType = 'INLAND_STAND'
|
||||||
|
}else if (item.standType === 'FOREIGN') {
|
||||||
|
name = 'OtherStandardDetails'
|
||||||
|
pageType = 'FOREIGN_STAND'
|
||||||
|
}else if (item.country !== undefined) {
|
||||||
|
name = 'OtherLawsStandDetails'
|
||||||
|
pageType = 'LAWS_STAND'
|
||||||
|
} else {
|
||||||
|
name = 'OtherBussStandardDetails'
|
||||||
|
pageType = 'BUSINESS_STAND'
|
||||||
|
}
|
||||||
|
const routeUrl = this.$router.resolve({ name, params: { id, pageType } })
|
||||||
|
window.open(routeUrl.href, '_blank')
|
||||||
|
},
|
||||||
|
onDrag () {
|
||||||
|
this.$emit('dragIn', {
|
||||||
|
list: this.selectedList,
|
||||||
|
type: this.searchForm.dataSource
|
||||||
|
})
|
||||||
|
this.visible = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.drawer-content{
|
||||||
|
padding: 0 19px;
|
||||||
|
overflow-y: auto;
|
||||||
|
flex: 1;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
.drawer-footer {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0 20px;
|
||||||
|
height: 70px;
|
||||||
|
line-height: 69px;
|
||||||
|
border-top: 1px solid #e8e8e8;
|
||||||
|
text-align: right;
|
||||||
|
background: #fff;
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -5,33 +5,35 @@
|
|||||||
<h4>{{ title }}</h4>
|
<h4>{{ title }}</h4>
|
||||||
<div style="margin-top: 10px;width: 300px;max-width: 100%">
|
<div style="margin-top: 10px;width: 300px;max-width: 100%">
|
||||||
<el-input
|
<el-input
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
:value="name"
|
:value="name"
|
||||||
:placeholder="`选择${title}`"
|
:placeholder="placeholder || `选择${title}`"
|
||||||
readonly
|
readonly
|
||||||
@click.native="choice(id)"></el-input>
|
@click.native="choice(id)"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-card>
|
</el-card>
|
||||||
<Role-tree v-if="!disabled"
|
<Role-tree
|
||||||
:check-box="!multiple"
|
v-if="!disabled"
|
||||||
:is-title="`选择${title}`"
|
:check-box="!multiple"
|
||||||
:is-visible.sync="modalShowFlag"
|
:is-title="`选择${title}`"
|
||||||
@checkedRole="checkedRole"
|
:is-visible.sync="modalShowFlag"
|
||||||
:nodeList="nodeList"
|
:nodeList="nodeList"
|
||||||
></Role-tree>
|
@checkedRole="checkedRole"
|
||||||
|
/>
|
||||||
</el-timeline-item>
|
</el-timeline-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "TimeLineFormItem",
|
name: 'TimeLineFormItem',
|
||||||
props: {
|
props: {
|
||||||
id:{
|
id: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true
|
required: true
|
||||||
},
|
},
|
||||||
name:{
|
name: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true
|
required: true
|
||||||
},
|
},
|
||||||
@@ -50,14 +52,17 @@ export default {
|
|||||||
type: String,
|
type: String,
|
||||||
required: true
|
required: true
|
||||||
},
|
},
|
||||||
multiple: {// 多选
|
multiple: { // 多选
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
|
},
|
||||||
|
placeholder: {
|
||||||
|
type: String
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
drawerTitle: '', //drawer标题
|
drawerTitle: '', // drawer标题
|
||||||
modalShowFlag: false, // drawer开关
|
modalShowFlag: false, // drawer开关
|
||||||
nodeList: [],
|
nodeList: [],
|
||||||
}
|
}
|
||||||
@@ -77,7 +82,7 @@ export default {
|
|||||||
this.$emit('update:name', name)
|
this.$emit('update:name', name)
|
||||||
},
|
},
|
||||||
joint (data, type) {
|
joint (data, type) {
|
||||||
return data.reduce((init,item) => {
|
return data.reduce((init, item) => {
|
||||||
if (init === '') {
|
if (init === '') {
|
||||||
return item[type]
|
return item[type]
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -5,16 +5,23 @@
|
|||||||
style="display: none;"
|
style="display: none;"
|
||||||
:value="ids"
|
:value="ids"
|
||||||
clearable
|
clearable
|
||||||
></el-input>
|
/>
|
||||||
<div style="display: flex;justify-content: space-between">
|
<div style="display: flex;justify-content: space-between">
|
||||||
<div style="margin-top: 13px" :style="{width: view ? '100%' : '80%'}">
|
<div style="margin-top: 13px" :style="{width: view ? '100%' : '80%'}">
|
||||||
<template v-if="FileList.length > 0">
|
<template v-if="FileList.length > 0">
|
||||||
<div v-for="file in FileList"
|
<div
|
||||||
:key="file.id"
|
v-for="file in FileList"
|
||||||
@click="onPreview(file)"
|
:key="file.id"
|
||||||
style="color: #409eff;cursor:pointer"
|
style="color: #409eff;cursor:pointer"
|
||||||
class="fileClass">
|
class="fileClass"
|
||||||
|
@click="onPreview(file)"
|
||||||
|
>
|
||||||
{{ file.name }}
|
{{ file.name }}
|
||||||
|
<template v-if="down">
|
||||||
|
<span v-if="file.id !== ''" style="margin-left: 7px;">
|
||||||
|
<i class="el-icon-download" title="下载" @click="onPreview(file, 'down')" />
|
||||||
|
</span>
|
||||||
|
</template>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
@@ -22,44 +29,98 @@
|
|||||||
</template>
|
</template>
|
||||||
</div>
|
</div>
|
||||||
<div v-if="!view" style="width: 20%;">
|
<div v-if="!view" style="width: 20%;">
|
||||||
<el-button :disabled="disabled"
|
<el-button
|
||||||
type="primary"
|
:disabled="disabled"
|
||||||
class="common-button-primary"
|
type="primary"
|
||||||
size="mini"
|
class="common-button-primary"
|
||||||
@click="showUpload"
|
size="mini"
|
||||||
style="margin-left: 10px; margin-top: 11px; float: right;">
|
style="margin-left: 10px; margin-top: 11px; float: right;"
|
||||||
<i class="el-icon-upload"></i>
|
@click="showUpload"
|
||||||
|
>
|
||||||
|
<i class="el-icon-upload" />
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<el-dialog width='400px' :visible.sync="fileMadel" title="上传文件" v-dragDialogWidth
|
<el-dialog
|
||||||
:close-on-click-modal="false">
|
v-dragDialogWidth
|
||||||
|
width="400px"
|
||||||
|
:visible.sync="fileMadel"
|
||||||
|
title="上传文件"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
append-to-body
|
||||||
|
>
|
||||||
<el-upload
|
<el-upload
|
||||||
multiple
|
ref="importfile"
|
||||||
drag
|
multiple
|
||||||
:file-list="fileList"
|
drag
|
||||||
:action="fileUrl"
|
:file-list="fileList"
|
||||||
ref="importfile"
|
:action="fileUrl"
|
||||||
name="file"
|
name="file"
|
||||||
:accept="accept"
|
:accept="accept"
|
||||||
:before-upload="beforeUpload"
|
:before-upload="beforeUpload"
|
||||||
:on-success="onSuccess"
|
:on-success="onSuccess"
|
||||||
:on-preview="onPreview"
|
:on-preview="onPreview"
|
||||||
:on-remove="removeOneFile"
|
:on-remove="removeOneFile"
|
||||||
:show-file-list="true"
|
:show-file-list="false"
|
||||||
>
|
>
|
||||||
<div style="padding: 20px 0">
|
<div style="padding: 20px 0">
|
||||||
<i class="el-icon-upload" style="color: #3399ff"></i>
|
<i class="el-icon-upload" style="color: #3399ff" />
|
||||||
<p>点击或拖拽上传文件</p>
|
<p>点击或拖拽上传文件</p>
|
||||||
</div>
|
</div>
|
||||||
</el-upload>
|
</el-upload>
|
||||||
|
<ul class="el-upload-list el-upload-list--text">
|
||||||
|
<li
|
||||||
|
v-for="(file, index) in FileList"
|
||||||
|
:key="index"
|
||||||
|
class="el-upload-list__item is-success"
|
||||||
|
:title="file.name"
|
||||||
|
@click="onPreview(file)"
|
||||||
|
>
|
||||||
|
<a class="el-upload-list__item-name">
|
||||||
|
<i class="el-icon-document" />
|
||||||
|
{{ file.name }}
|
||||||
|
</a>
|
||||||
|
<label class="el-upload-list__item-status-label">
|
||||||
|
<i class="el-icon-upload-success el-icon-circle-check" />
|
||||||
|
</label>
|
||||||
|
<i class="el-icon-edit" @click.stop="handleModifyName(file)" />
|
||||||
|
<i class="el-icon-close" @click.stop="handleRemoveFile(file)" />
|
||||||
|
</li>
|
||||||
|
</ul>
|
||||||
|
</el-dialog>
|
||||||
|
<el-dialog
|
||||||
|
title="修改文件名称"
|
||||||
|
:visible.sync="openModifyFileNameDialog"
|
||||||
|
append-to-body
|
||||||
|
>
|
||||||
|
<el-input v-model="modifyFile.fileName" />
|
||||||
|
<div class="demo-drawer-footer" style="text-align: right;margin-top:30px">
|
||||||
|
<el-button
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
icon="el-icon-check"
|
||||||
|
type="primary"
|
||||||
|
:loading="modifyFileNameLoading"
|
||||||
|
@click="handleModifyNameSubmite"
|
||||||
|
>
|
||||||
|
提交
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
icon="el-icon-close"
|
||||||
|
@click="openModifyFileNameDialog = false"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "UploadFormItem",
|
name: 'UploadFormItem',
|
||||||
props: {
|
props: {
|
||||||
ids: {
|
ids: {
|
||||||
required: true,
|
required: true,
|
||||||
@@ -95,28 +156,39 @@ export default {
|
|||||||
view: {
|
view: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
}
|
},
|
||||||
},
|
down: {
|
||||||
created () {
|
type: Boolean,
|
||||||
this.initFileList()
|
default: false
|
||||||
|
},
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
fileMadel: false,
|
fileMadel: false,
|
||||||
fileList: [],// 用于el-upload
|
fileList: [], // 用于el-upload
|
||||||
FileList: [],// 用于回显
|
FileList: [], // 用于回显
|
||||||
|
|
||||||
|
openModifyFileNameDialog: false,
|
||||||
|
modifyFile: {
|
||||||
|
fileName: '',
|
||||||
|
fileId: ''
|
||||||
|
},
|
||||||
|
modifyFileNameLoading: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created () {
|
||||||
|
this.initFileList()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
showUpload () {
|
showUpload () {
|
||||||
this.fileMadel = true;
|
this.fileMadel = true;
|
||||||
},
|
},
|
||||||
initFileList () {
|
initFileList () {
|
||||||
if (this.ids && this.ids !== '' && this.names && this.names !== '') {
|
if (this.ids && this.ids !== '' && this.names && this.names !== '') {
|
||||||
let fileList = []
|
const fileList = []
|
||||||
const idArr = this.ids.split(',')
|
const idArr = this.ids.split(',')
|
||||||
const nameArr = this.names.split(',')
|
const nameArr = this.names.split(',')
|
||||||
for (let i = 0 ; i < idArr.length; i++) {
|
for (let i = 0; i < idArr.length; i++) {
|
||||||
fileList.push({
|
fileList.push({
|
||||||
id: idArr[i],
|
id: idArr[i],
|
||||||
name: nameArr[i]
|
name: nameArr[i]
|
||||||
@@ -124,6 +196,9 @@ export default {
|
|||||||
}
|
}
|
||||||
this.fileList = fileList
|
this.fileList = fileList
|
||||||
this.FileList = fileList
|
this.FileList = fileList
|
||||||
|
} else {
|
||||||
|
this.fileList = []
|
||||||
|
this.FileList = []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
beforeUpload (file) {
|
beforeUpload (file) {
|
||||||
@@ -142,13 +217,13 @@ export default {
|
|||||||
}
|
}
|
||||||
// 判断文件上传大小
|
// 判断文件上传大小
|
||||||
if (file.size / 1024 / 1024 > this.size) {// eslint-disable-line
|
if (file.size / 1024 / 1024 > this.size) {// eslint-disable-line
|
||||||
this.$message.error('文件' + file.name + `超过${ this.size }M`)
|
this.$message.error('文件' + file.name + `超过${this.size}M`)
|
||||||
return false
|
return false
|
||||||
}
|
}
|
||||||
return true
|
return true
|
||||||
},
|
},
|
||||||
// 导入标准数据成功后执行
|
// 导入标准数据成功后执行
|
||||||
onSuccess (response, file,fileList) {
|
onSuccess (response, file, fileList) {
|
||||||
// 上传成功后判断是否是两条数据是的话替换掉旧数据
|
// 上传成功后判断是否是两条数据是的话替换掉旧数据
|
||||||
if (response.ok) {
|
if (response.ok) {
|
||||||
const fileObj = {
|
const fileObj = {
|
||||||
@@ -175,7 +250,7 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
removeOneFile(file, fileList) {
|
removeOneFile (file, fileList) {
|
||||||
const ids = fileList.reduce((init, file) => {
|
const ids = fileList.reduce((init, file) => {
|
||||||
if (init === '') {
|
if (init === '') {
|
||||||
return file.id || file.response.data.id
|
return file.id || file.response.data.id
|
||||||
@@ -199,14 +274,58 @@ export default {
|
|||||||
this.$emit('update:names', names)
|
this.$emit('update:names', names)
|
||||||
},
|
},
|
||||||
// 文件预览及下载
|
// 文件预览及下载
|
||||||
onPreview(file) {
|
onPreview (file, type) {
|
||||||
let attId = ""
|
let attId = ''
|
||||||
if(file && file.id){
|
if(file && file.id) {
|
||||||
attId = file.id
|
attId = file.id
|
||||||
}else {
|
}else {
|
||||||
attId = file.response.data.id
|
attId = file.response.data.id
|
||||||
}
|
}
|
||||||
this.$preview(attId)
|
if (type === 'down') {
|
||||||
|
if (attId) {
|
||||||
|
window.open('/api/att/attFile/downloadFileForSarNew?fileId=' + attId)
|
||||||
|
} else {
|
||||||
|
this.$message.warning('文件不存在,下载失败')
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
this.$preview(attId)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
handleRemoveFile (file) {
|
||||||
|
const fileList = []
|
||||||
|
this.FileList.forEach(item => {
|
||||||
|
if (item.id !== file.id) {
|
||||||
|
fileList.push(item)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.removeOneFile(file, fileList)
|
||||||
|
},
|
||||||
|
handleModifyName (file) {
|
||||||
|
this.modifyFile.fileName = file.name
|
||||||
|
this.modifyFile.fileId = file.id
|
||||||
|
this.openModifyFileNameDialog = true
|
||||||
|
},
|
||||||
|
handleModifyNameSubmite () {
|
||||||
|
this.modifyFileNameLoading = true
|
||||||
|
this.$http.get('att/attFile/updateFileName', this.modifyFile, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
if(res.ok) {
|
||||||
|
this.modifyFileNameLoading = false
|
||||||
|
this.openModifyFileNameDialog = false
|
||||||
|
this.FileList.forEach(item => {
|
||||||
|
if(item.id === this.modifyFile.fileId) {
|
||||||
|
item.name = this.modifyFile.fileName
|
||||||
|
}
|
||||||
|
})
|
||||||
|
const ids = this.FileList.map(item => item.id).join(',')
|
||||||
|
const names = this.FileList.map(item => item.name).join(',')
|
||||||
|
this.$emit('update:ids', ids)
|
||||||
|
this.$emit('update:names', names)
|
||||||
|
}
|
||||||
|
}, e => {
|
||||||
|
this.modifyFileNameLoading = false
|
||||||
|
})
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -216,4 +335,20 @@ export default {
|
|||||||
.fileClass{
|
.fileClass{
|
||||||
line-height: 22px !important;
|
line-height: 22px !important;
|
||||||
}
|
}
|
||||||
|
.add-form-item /deep/ .el-form-item__content .el-form-item__error {
|
||||||
|
padding: 3px;
|
||||||
|
top: 15px;
|
||||||
|
right: 45px !important;
|
||||||
|
left: auto;
|
||||||
|
background: #fff3f3;
|
||||||
|
z-index: 9;
|
||||||
|
}
|
||||||
|
.el-upload-list__item .el-icon-edit{
|
||||||
|
position: absolute;
|
||||||
|
top: 5px;
|
||||||
|
right: 25px;
|
||||||
|
cursor: pointer;
|
||||||
|
opacity: .75;
|
||||||
|
color: #606266;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
<template>
|
<template>
|
||||||
<!--导出文件改名字模态框-->
|
<!--导出文件改名字模态框-->
|
||||||
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px" :append-to-body="appendToBody">
|
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="310px" :append-to-body="appendToBody">
|
||||||
<el-form :inline="true" class="label-input-form search-area">
|
<el-form :inline="true" class="label-input-form search-area">
|
||||||
<el-form-item label="导出名称" class="search-item">
|
<el-form-item label="导出名称" class="search-item">
|
||||||
<el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
<el-input class="exportFileInput" v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<span slot="footer" class="demo-drawer-footer">
|
<span slot="footer" class="demo-drawer-footer">
|
||||||
@@ -16,7 +16,7 @@
|
|||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "exportDialog",
|
name: "exportDialog",
|
||||||
data () {
|
data() {
|
||||||
return {
|
return {
|
||||||
exportModelFlag: false,
|
exportModelFlag: false,
|
||||||
exportName: ''
|
exportName: ''
|
||||||
@@ -29,14 +29,14 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
openModel () {
|
openModel() {
|
||||||
this.exportName = ''
|
this.exportName = ''
|
||||||
this.exportModelFlag = true
|
this.exportModelFlag = true
|
||||||
},
|
},
|
||||||
cancel () {
|
cancel() {
|
||||||
this.exportModelFlag = false
|
this.exportModelFlag = false
|
||||||
},
|
},
|
||||||
submit () {
|
submit() {
|
||||||
// 导出文件名
|
// 导出文件名
|
||||||
this.$emit('exportName', this.exportName)
|
this.$emit('exportName', this.exportName)
|
||||||
}
|
}
|
||||||
@@ -45,9 +45,14 @@ export default {
|
|||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped>
|
||||||
|
.exportFileInput /deep/.el-input__inner {
|
||||||
|
padding-right: 0 !important;
|
||||||
|
}
|
||||||
|
|
||||||
/deep/ .label-input-form .add-form-item .el-form-item__content .el-input .el-input__inner {
|
/deep/ .label-input-form .add-form-item .el-form-item__content .el-input .el-input__inner {
|
||||||
width: 280px;
|
width: 280px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/deep/ .el-dialog .el-dialog__header {
|
/deep/ .el-dialog .el-dialog__header {
|
||||||
width: 100%;
|
width: 100%;
|
||||||
font-size: 14px;
|
font-size: 14px;
|
||||||
@@ -58,9 +63,11 @@ export default {
|
|||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
white-space: nowrap;
|
white-space: nowrap;
|
||||||
}
|
}
|
||||||
|
|
||||||
/deep/ .el-dialog .el-dialog__body {
|
/deep/ .el-dialog .el-dialog__body {
|
||||||
padding: 15px 20px;
|
padding: 15px 20px;
|
||||||
}
|
}
|
||||||
|
|
||||||
/deep/ .el-dialog .el-dialog__footer .el-button {
|
/deep/ .el-dialog .el-dialog__footer .el-button {
|
||||||
height: 32px;
|
height: 32px;
|
||||||
padding: 8px 23px;
|
padding: 8px 23px;
|
||||||
|
|||||||
@@ -1,7 +1,8 @@
|
|||||||
<template>
|
<template>
|
||||||
<div>
|
<div>
|
||||||
<!-- 导入模态窗 -->
|
<!-- 导入模态窗 -->
|
||||||
<el-dialog width='400px' v-if="visible" :visible="visible" @close="onClose" title="导入文件">
|
<el-dialog width='400px' v-if="visible" :visible="visible" @close="onClose" title="导入文件" v-dragDialogWidth
|
||||||
|
:close-on-click-modal="false" append-to-body>
|
||||||
<el-upload
|
<el-upload
|
||||||
multiple
|
multiple
|
||||||
drag
|
drag
|
||||||
@@ -14,10 +15,11 @@
|
|||||||
:on-success="importFileSuccess"
|
:on-success="importFileSuccess"
|
||||||
:show-file-list="true"
|
:show-file-list="true"
|
||||||
>
|
>
|
||||||
<div style="padding: 20px 0">
|
<!-- <div style="padding: 20px 0">-->
|
||||||
<i class="el-icon-upload" style="color: #3399ff"></i>
|
<i class="el-icon-upload" style="color: #3399ff"></i>
|
||||||
<p>点击或拖拽上传文件</p>
|
<div class="el-upload__text">点击或拖拽上传文件</div>
|
||||||
</div>
|
|
||||||
|
<!-- </div>-->
|
||||||
</el-upload>
|
</el-upload>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
<!-- 导入失败-->
|
<!-- 导入失败-->
|
||||||
@@ -104,6 +106,12 @@ export default {
|
|||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style scoped>
|
<style scoped lang="less">
|
||||||
|
/deep/ .el-upload-dragger{
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
/deep/ .el-upload{
|
||||||
|
width: 100% !important;
|
||||||
|
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -2,30 +2,34 @@
|
|||||||
<div>
|
<div>
|
||||||
<el-form-item :label="label" :prop="prop" class="add-form-item form-item-disabled">
|
<el-form-item :label="label" :prop="prop" class="add-form-item form-item-disabled">
|
||||||
<el-input
|
<el-input
|
||||||
:value="value"
|
:value="value"
|
||||||
:placeholder="placeholder"
|
:placeholder="placeholder"
|
||||||
:clearable="clearable"
|
:clearable="clearable"
|
||||||
:disabled="disabled"
|
:disabled="disabled"
|
||||||
readonly
|
readonly
|
||||||
@click.native="choice('role', placeholder, value)">
|
@click.native="choice('role', placeholder, value)"
|
||||||
></el-input>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<Role-tree
|
<Role-tree
|
||||||
:is-title="choiceTitle"
|
:is-title="choiceTitle"
|
||||||
:is-visible.sync="modalShowRoleFlag"
|
:is-visible.sync="modalShowRoleFlag"
|
||||||
@checkedRole="checkedRole"
|
:nodeList="nodeList"
|
||||||
:nodeList="nodeList"
|
@checkedRole="checkedRole"
|
||||||
></Role-tree>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "personFormItem",
|
name: 'PersonFormItem',
|
||||||
props: {
|
props: {
|
||||||
value: {
|
value: {
|
||||||
required: true
|
required: true
|
||||||
},
|
},
|
||||||
|
id: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
prop: {
|
prop: {
|
||||||
type: String
|
type: String
|
||||||
},
|
},
|
||||||
@@ -57,14 +61,14 @@ export default {
|
|||||||
handleChange (event) {
|
handleChange (event) {
|
||||||
this.$emit('input', event)
|
this.$emit('input', event)
|
||||||
},
|
},
|
||||||
choice(type, title, nameId) {
|
choice (type, title, nameId) {
|
||||||
this.nodeList = []
|
this.nodeList = []
|
||||||
if (nameId) {
|
if (nameId) {
|
||||||
let nameId1 = nameId.split(',')
|
const nameId1 = nameId.split(',')
|
||||||
let idList = []
|
let idList = []
|
||||||
nameId1.forEach(item => {
|
nameId1.forEach(item => {
|
||||||
let a, b
|
let a, b
|
||||||
a = item.substring(item.indexOf('(') +1)
|
a = item.substring(item.indexOf('(') + 1)
|
||||||
b = a.substring(0, a.lastIndexOf(')'))
|
b = a.substring(0, a.lastIndexOf(')'))
|
||||||
idList.push(b)
|
idList.push(b)
|
||||||
})
|
})
|
||||||
@@ -75,7 +79,7 @@ export default {
|
|||||||
this.choiceTitle = title
|
this.choiceTitle = title
|
||||||
this.modalShowRoleFlag = true
|
this.modalShowRoleFlag = true
|
||||||
},
|
},
|
||||||
checkedRole(data) {
|
checkedRole (data) {
|
||||||
let idList = ''
|
let idList = ''
|
||||||
let nameList = ''
|
let nameList = ''
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
@@ -87,12 +91,13 @@ export default {
|
|||||||
nameList += item.name
|
nameList += item.name
|
||||||
})
|
})
|
||||||
this.$emit('input', nameList)
|
this.$emit('input', nameList)
|
||||||
|
this.$emit('update:id', idList)
|
||||||
this.$emit('change', {
|
this.$emit('change', {
|
||||||
ids: this.unique(data.map(item => item.topUnitId)).join(","),
|
ids: this.unique(data.map(item => item.institutionId)).join(','),
|
||||||
names: this.unique(data.map(item => item.topUnit)).join(",")
|
names: this.unique(data.map(item => item.institutionCascade)).join(',')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
unique(newArr) {
|
unique (newArr) {
|
||||||
const res = new Map();
|
const res = new Map();
|
||||||
return newArr.filter((newArr) => !res.has(newArr) && res.set(newArr, 1));
|
return newArr.filter((newArr) => !res.has(newArr) && res.set(newArr, 1));
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -129,6 +129,7 @@ export default {
|
|||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
data() {
|
data() {
|
||||||
|
this.isEmpty = false
|
||||||
if (this.data.length === 0) {
|
if (this.data.length === 0) {
|
||||||
this.scrollTo(0,0)
|
this.scrollTo(0,0)
|
||||||
this.isEmpty = true
|
this.isEmpty = true
|
||||||
|
|||||||
@@ -0,0 +1,113 @@
|
|||||||
|
<template>
|
||||||
|
<el-drawer
|
||||||
|
title="政策体系"
|
||||||
|
:visible.sync="visible"
|
||||||
|
>
|
||||||
|
<el-input v-model="filterText" placeholder="请输入政策体系" class="filterInput" style="width: 100%;padding: 10px 5px"/>
|
||||||
|
<div style="flex: 1">
|
||||||
|
<el-tree
|
||||||
|
ref="tree"
|
||||||
|
:data="treeList"
|
||||||
|
:props="defaultProps"
|
||||||
|
node-key="id"
|
||||||
|
highlight-current
|
||||||
|
:filter-node-method="filterNode"
|
||||||
|
:expand-on-click-node="false"
|
||||||
|
>
|
||||||
|
<span slot-scope="{ node, data }" class="custom-tree-node">
|
||||||
|
<span :class="data.children.length !== 0 ? 'is-show' : 'is-leaf-none'" />
|
||||||
|
<span style="font-size:12px"> {{ node.label }} </span>
|
||||||
|
</span>
|
||||||
|
</el-tree>
|
||||||
|
</div>
|
||||||
|
<div class="demo-drawer-footer" style="height: 51px">
|
||||||
|
<el-button size="mini" @click="cancel">取消</el-button>
|
||||||
|
<el-button size="mini" type="primary" @click="submit">确定</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'PolicyTree',
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
getListStand: 'sarResource/ts-resource/getListStandIgnoreMyCollection',
|
||||||
|
treeList: [],
|
||||||
|
filterText: '',
|
||||||
|
defaultProps: {
|
||||||
|
children: 'children',
|
||||||
|
label: 'menuName'
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
this.getList()
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
filterText (val) {
|
||||||
|
this.$refs.tree.filter(val);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
filterNode (value, data) {
|
||||||
|
if (!value) return true;
|
||||||
|
return data.menuName.indexOf(value) !== -1;
|
||||||
|
},
|
||||||
|
getList () {
|
||||||
|
this.$http._getData(this.getListStand, {
|
||||||
|
sorDivide: 'FOREIGN_LAWS',
|
||||||
|
userId: this.$store.getters.userInfo.userId
|
||||||
|
}).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.treeList = res.data
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
open (key) {
|
||||||
|
this.visible = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.filterText = ''
|
||||||
|
key === '' ?
|
||||||
|
this.$refs.tree.setCurrentKey() :
|
||||||
|
this.$refs.tree.setCurrentKey(key)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
cancel () {
|
||||||
|
this.visible = false
|
||||||
|
},
|
||||||
|
submit () {
|
||||||
|
const currentNode = this.$refs.tree.getCurrentNode()
|
||||||
|
if (!currentNode) {
|
||||||
|
this.$message({
|
||||||
|
message: '请选择政策体系',
|
||||||
|
type: 'warning'
|
||||||
|
})
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.$emit('choose', currentNode)
|
||||||
|
this.cancel()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
/deep/ .is-leaf-none{
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
width: 15px;
|
||||||
|
height: 15px;
|
||||||
|
background: url('~@/assets/images/shangqi/img/none-file-new.png');
|
||||||
|
background-size:100% 100%;
|
||||||
|
}
|
||||||
|
/deep/ .is-show{
|
||||||
|
position: relative;
|
||||||
|
display: inline-block;
|
||||||
|
width: 15px;
|
||||||
|
height: 15px;
|
||||||
|
background:url('~@/assets/images/shangqi/img/tree.png');
|
||||||
|
background-size:100% 100%;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -27,6 +27,7 @@ import SQTree from './SQTree'
|
|||||||
import OrgTable from './OrgTable'
|
import OrgTable from './OrgTable'
|
||||||
import MySelect from './mySelect'
|
import MySelect from './mySelect'
|
||||||
import PhoneHistortTable from './phoneHistortTable'
|
import PhoneHistortTable from './phoneHistortTable'
|
||||||
|
import processNodeInformation from './processNodeInformation'
|
||||||
|
|
||||||
import phoneRole from './phoneRole'
|
import phoneRole from './phoneRole'
|
||||||
|
|
||||||
@@ -57,6 +58,7 @@ const install = function (Vue) {
|
|||||||
Vue.component('MySelect', MySelect)
|
Vue.component('MySelect', MySelect)
|
||||||
Vue.component('phoneRole', phoneRole)
|
Vue.component('phoneRole', phoneRole)
|
||||||
Vue.component('PhoneHistortTable', PhoneHistortTable)
|
Vue.component('PhoneHistortTable', PhoneHistortTable)
|
||||||
|
Vue.component('processNodeInformation', processNodeInformation)
|
||||||
}
|
}
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
|
|||||||
@@ -40,7 +40,7 @@
|
|||||||
v-for="(children, childrenIndex) in item.children"
|
v-for="(children, childrenIndex) in item.children"
|
||||||
:key="childrenIndex"
|
:key="childrenIndex"
|
||||||
:index="children.path"
|
:index="children.path"
|
||||||
style="text-align: center;"
|
style="padding-right: 15px; padding-left: 30px;font-size: 14px"
|
||||||
v-if="!children.menuId || $hasPermission(children.menuId)"itemSplitInfo
|
v-if="!children.menuId || $hasPermission(children.menuId)"itemSplitInfo
|
||||||
>
|
>
|
||||||
<el-badge :value="getDynamicTotal.msgCount" class="item" v-if="children.title === '我的消息' && getDynamicTotal.msgCount !== 0">
|
<el-badge :value="getDynamicTotal.msgCount" class="item" v-if="children.title === '我的消息' && getDynamicTotal.msgCount !== 0">
|
||||||
@@ -52,6 +52,9 @@
|
|||||||
<el-badge :value="getDynamicTotal.myStandCount" class="item" v-else-if="children.title === '我的企标' && getDynamicTotal.myStandCount !== 0">
|
<el-badge :value="getDynamicTotal.myStandCount" class="item" v-else-if="children.title === '我的企标' && getDynamicTotal.myStandCount !== 0">
|
||||||
{{ children.title }}
|
{{ children.title }}
|
||||||
</el-badge>
|
</el-badge>
|
||||||
|
<el-badge is-dot class="item miniBadge" v-else-if="children.title === '标准/译文获取申请管理' && getStandardTranslationTodo !== 0">
|
||||||
|
<div>{{children.title}}</div>
|
||||||
|
</el-badge>
|
||||||
<div v-else>
|
<div v-else>
|
||||||
{{ children.title }}
|
{{ children.title }}
|
||||||
</div>
|
</div>
|
||||||
@@ -81,6 +84,7 @@
|
|||||||
name: 'NavMenu',
|
name: 'NavMenu',
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
|
standardTranslation: 0,
|
||||||
defaultActive: null, // 当前激活菜单的 index
|
defaultActive: null, // 当前激活菜单的 index
|
||||||
navMenuList: [
|
navMenuList: [
|
||||||
// {
|
// {
|
||||||
@@ -161,6 +165,11 @@
|
|||||||
path: '/standQA',
|
path: '/standQA',
|
||||||
menuId: '2621269642ea4c6c8c42905863b2dc09'
|
menuId: '2621269642ea4c6c8c42905863b2dc09'
|
||||||
},
|
},
|
||||||
|
{
|
||||||
|
title: '标准/译文获取申请管理',
|
||||||
|
path: '/standardTranslationAcquisitionRequest',
|
||||||
|
menuId: 'd7ad73e98162894d020aa993c08a4532'
|
||||||
|
},
|
||||||
// {
|
// {
|
||||||
// title: '零部件编号申请',
|
// title: '零部件编号申请',
|
||||||
// path: '/partCodeApply',
|
// path: '/partCodeApply',
|
||||||
@@ -550,6 +559,11 @@
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
|
this.$http.get('/lawss/standardApplyFor/queryPendingApprovalCount', '', { _this: this }, res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.$store.commit('SET_STANDARD_TRANSLATION_TODO', res.data.pendingApprovalCount)
|
||||||
|
}
|
||||||
|
})
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleSelect (key, keyPath) {
|
handleSelect (key, keyPath) {
|
||||||
@@ -573,7 +587,7 @@
|
|||||||
// return this.isCollapse ? require('assets/images/shangqi/img/logo4.png') : require('assets/images/shangqi/img/logo5.png')
|
// return this.isCollapse ? require('assets/images/shangqi/img/logo4.png') : require('assets/images/shangqi/img/logo5.png')
|
||||||
return this.isCollapse ? require('assets/images/shangqi/img/logo4.png') : require('assets/images/shangqi/img/logo2.png')
|
return this.isCollapse ? require('assets/images/shangqi/img/logo4.png') : require('assets/images/shangqi/img/logo2.png')
|
||||||
},
|
},
|
||||||
...mapGetters(['getDynamicTotal', 'isCollapse'])
|
...mapGetters(['getDynamicTotal', 'isCollapse', 'getStandardTranslationTodo'])
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
// 监听路由 重新渲染面包屑
|
// 监听路由 重新渲染面包屑
|
||||||
@@ -606,6 +620,7 @@
|
|||||||
width: 58px;
|
width: 58px;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
overflow-y: auto;
|
overflow-y: auto;
|
||||||
|
overflow-x: hidden;
|
||||||
user-select: none;
|
user-select: none;
|
||||||
box-sizing: border-box;
|
box-sizing: border-box;
|
||||||
position: absolute;
|
position: absolute;
|
||||||
@@ -785,7 +800,7 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
.el-menu-item {
|
.el-menu-item {
|
||||||
padding-left: 0 !important;
|
//padding-left: 0 !important;
|
||||||
font-size: 16px;
|
font-size: 16px;
|
||||||
font-weight: normal;
|
font-weight: normal;
|
||||||
height: 40px;
|
height: 40px;
|
||||||
@@ -812,5 +827,10 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
.miniBadge{
|
||||||
|
/deep/ .is-dot{
|
||||||
|
left: -18px;
|
||||||
|
top: 14px;
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -0,0 +1,608 @@
|
|||||||
|
<template>
|
||||||
|
<div class="flow-chart-box">
|
||||||
|
<div class="flow-chart">
|
||||||
|
<div class="flow-group-process" v-if="$route.query.oldAndNew == 'new'">
|
||||||
|
<div class="flow-group-process-stard">
|
||||||
|
开始
|
||||||
|
</div>
|
||||||
|
<div v-for="(item,index) in nameList"
|
||||||
|
:key="item.id"
|
||||||
|
:class="{'flow-group-process-box-one':arrangeFromTheLeft(index + 1)}"
|
||||||
|
class="flow-group-process-box">
|
||||||
|
<div v-if="leftArrow(index + 1)"
|
||||||
|
:class="{'flow-group-process-arrow-left':arrangeFromTheLeft(index + 1)}"
|
||||||
|
class="flow-group-process-arrow">
|
||||||
|
</div>
|
||||||
|
<div class="flow-group-process-content"
|
||||||
|
:style="backdrop(item.taskStatus)"
|
||||||
|
:class="{'flow-group-process-content-dis':!leftArrow(index + 1)}">
|
||||||
|
<div class="flow-group-process-content-top">
|
||||||
|
<el-tooltip placement="top">
|
||||||
|
<div slot="content">
|
||||||
|
{{item.taskKeyName}}
|
||||||
|
</div>
|
||||||
|
<div>
|
||||||
|
{{item.taskKeyName}}
|
||||||
|
</div>
|
||||||
|
</el-tooltip>
|
||||||
|
</div>
|
||||||
|
<el-tooltip placement="top">
|
||||||
|
<div slot="content">
|
||||||
|
<div style="margin-bottom: 4px"
|
||||||
|
v-for="val1 in item.userNames">
|
||||||
|
{{val1}}
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flow-group-process-content-bottom"
|
||||||
|
v-if="item.userNames && item.userNames.length > 0">
|
||||||
|
<div v-if="item.userNames && item.userNames.length > 0"
|
||||||
|
v-for="val in item.userNames">
|
||||||
|
<div class="flow-group-process-content-bottom-text">{{val}}</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-tooltip>
|
||||||
|
<div class="flow-group-process-content-bottom" v-if="!item.userNames">
|
||||||
|
<div>暂未选择处理人</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div v-if="isVerticalLine(index + 1)"
|
||||||
|
:class="{'flow-group-process-arrow-one':(index + 1) % num == 0 ? true : false}"
|
||||||
|
class="flow-group-process-arrow"></div>
|
||||||
|
<div v-if="!arrangeFromTheLeft(index + 1) && (index + 1) == nameList.length
|
||||||
|
&& (index + 1) % num != 0"
|
||||||
|
:class="{'flow-group-process-arrow-left':arrangeFromTheLeft(index + 1)}"
|
||||||
|
class="flow-group-process-arrow">
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="flow-group-process-end"
|
||||||
|
:style="backdrop(nameList[nameList.length - 1] &&
|
||||||
|
nameList[nameList.length - 1].taskStatus == 'done' ? 'done' : '')"
|
||||||
|
:class="{'flow-group-process-end-left':isProcessEnd(nameList.length),
|
||||||
|
'flow-group-process-end-one':isProcessEndOne(nameList.length)}">
|
||||||
|
结束
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<img v-else :src="processStep" class="process-img">
|
||||||
|
<loading :loading="loadingImg">流程列表加载中</loading>
|
||||||
|
</div>
|
||||||
|
<div class="flow-list">
|
||||||
|
|
||||||
|
<el-table
|
||||||
|
v-if="$route.query.oldAndNew == 'new'"
|
||||||
|
height="100%"
|
||||||
|
ref="selection"
|
||||||
|
:data="histortData"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width: 100%"
|
||||||
|
border
|
||||||
|
row-key="id"
|
||||||
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||||
|
<el-table-column
|
||||||
|
type="index"
|
||||||
|
width="55"
|
||||||
|
label="序号"
|
||||||
|
align="center"/>
|
||||||
|
<el-table-column
|
||||||
|
prop="taskKeyShow"
|
||||||
|
label="任务步骤"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="userName"
|
||||||
|
label="任务受理人"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="createTime"
|
||||||
|
label="创建时间"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="endTime"
|
||||||
|
label="完成时间"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
v-if="$route.query.prcType == '3'"
|
||||||
|
prop="parentUserName"
|
||||||
|
label="任务分发人"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.parentUserName }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="commitText"
|
||||||
|
label="意见内容"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.commitText }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="completeFlag"
|
||||||
|
label="状态"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.taskStatusShow }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<el-table
|
||||||
|
v-else
|
||||||
|
height="100%"
|
||||||
|
ref="selection"
|
||||||
|
:data="histortData"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width: 100%"
|
||||||
|
border
|
||||||
|
row-key="id"
|
||||||
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
||||||
|
<el-table-column
|
||||||
|
label="序号"
|
||||||
|
align="center"
|
||||||
|
type="index"
|
||||||
|
width="50">
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="name"
|
||||||
|
label="任务步骤"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="assignee"
|
||||||
|
label="任务受理人"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="createTime"
|
||||||
|
label="创建时间"
|
||||||
|
align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.createTime ? $moment(scope.row.createTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="endTime"
|
||||||
|
label="完成时间"
|
||||||
|
align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.endTime ? $moment(scope.row.endTime).format('YYYY-MM-DD HH:mm:ss') : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="comment"
|
||||||
|
label="流程信息"
|
||||||
|
align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.commentText }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="completeFlag"
|
||||||
|
label="状态"
|
||||||
|
align="center">
|
||||||
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.endTime ? '已完成' : scope.row.receiveStatus ? '已接收' : '未完成' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
</div>
|
||||||
|
<loading :loading="loading">流程列表加载中</loading>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import axios from "axios";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "index",
|
||||||
|
props: {
|
||||||
|
prcId: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
prcType: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
prcNum: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
histortData: [],
|
||||||
|
processStep: '',
|
||||||
|
nameList: [],
|
||||||
|
loading: false,
|
||||||
|
num: 0,
|
||||||
|
loadingImg: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
mounted() {
|
||||||
|
this.processTable()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
// 请求列表
|
||||||
|
processTable() {
|
||||||
|
let url = ''
|
||||||
|
let query = {}
|
||||||
|
if (this.$route.query.oldAndNew == 'new') {
|
||||||
|
url = '/lawss/activiti/queryFlowHistoryList'
|
||||||
|
query = {
|
||||||
|
actiProcInstId: this.prcId,
|
||||||
|
flowType: this.prcType,
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
url = 'lawss/activiti/get_list_by_instance'
|
||||||
|
query = {
|
||||||
|
prcNum: this.prcNum,
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.loading = true
|
||||||
|
this.$http.get(url, query, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.histortData = res
|
||||||
|
if (this.$route.query.oldAndNew == 'new') {
|
||||||
|
this.getProcessList()
|
||||||
|
} else {
|
||||||
|
this.processNum()
|
||||||
|
}
|
||||||
|
this.loading = false
|
||||||
|
}, e => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getProcessList() {
|
||||||
|
let query = {
|
||||||
|
actiProcInstId: this.prcId,
|
||||||
|
flowType: this.prcType,
|
||||||
|
}
|
||||||
|
this.loadingImg = true
|
||||||
|
this.$http.get('/lawss/activiti/getImgDataList', query, {
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.nameList = res
|
||||||
|
this.nameList.forEach(val => {
|
||||||
|
if (val.userNames) {
|
||||||
|
val.userNames = val.userNames.split(',')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
if (this.$route.query.prcType == 'buss1'){
|
||||||
|
if (this.histortData && this.histortData.length > 0){
|
||||||
|
if (this.histortData[this.histortData.length - 1].taskKey == 'BussLibraryC3'){
|
||||||
|
this.nameList.forEach(val => {
|
||||||
|
if (val.taskKey == 'BussLibrary3') {
|
||||||
|
val.taskStatus = 'todo'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}else if (this.histortData[this.histortData.length - 1].taskKey == 'BussLibraryC1'){
|
||||||
|
this.nameList.forEach(val => {
|
||||||
|
if (val.taskKey == 'BussLibrary1') {
|
||||||
|
val.taskStatus = 'todo'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}else if (this.histortData[this.histortData.length - 1].taskKey == 'BussLibraryC6'){
|
||||||
|
this.nameList.forEach(val => {
|
||||||
|
if (val.taskKey == 'BussLibrary6') {
|
||||||
|
val.taskStatus = 'todo'
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
this.$nextTick(() => {
|
||||||
|
let flowGroupProcess = document.getElementsByClassName('flow-group-process')
|
||||||
|
let num = (flowGroupProcess[0].offsetWidth - 100) / 248
|
||||||
|
this.num = Math.floor(num)
|
||||||
|
let width = 248 * this.num
|
||||||
|
let offsetWidth = flowGroupProcess[0].offsetWidth
|
||||||
|
flowGroupProcess[0].style.width = (offsetWidth - (offsetWidth - 100 - width) + 40) + 'px'
|
||||||
|
this.loadingImg = false
|
||||||
|
})
|
||||||
|
}, e => {
|
||||||
|
})
|
||||||
|
},
|
||||||
|
arrangeFromTheLeft(index) {
|
||||||
|
let num = Math.ceil(index / this.num)
|
||||||
|
if (num % 2 == 0) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
},
|
||||||
|
leftArrow(index) {
|
||||||
|
let num = Math.ceil(index / this.num)
|
||||||
|
if (num % 2 == 0) {
|
||||||
|
if (index == this.num * num && this.nameList.length != index) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if (index > this.num) {
|
||||||
|
if (index == this.num * (num - 1) + 1) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
},
|
||||||
|
isVerticalLine(index) {
|
||||||
|
let num = Math.ceil(index / this.num)
|
||||||
|
if (index % this.num == 0 && this.nameList.length != index) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
if (num == index / this.num && num % 3 == 0) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
if (num == index / this.num && index <= this.num) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
},
|
||||||
|
isProcessEnd(index) {
|
||||||
|
let num = Math.ceil(index / this.num)
|
||||||
|
if (num % 2 == 0) {
|
||||||
|
return false
|
||||||
|
} else {
|
||||||
|
if (num == index / this.num && index <= this.num) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
if (num == index / this.num && num % 3 == 0) {
|
||||||
|
return false
|
||||||
|
}
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
isProcessEndOne(index) {
|
||||||
|
let num = Math.ceil(index / this.num)
|
||||||
|
if (num == index / this.num && index <= this.num) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
if (num == index / this.num && num % 3 == 0) {
|
||||||
|
return true
|
||||||
|
}
|
||||||
|
return false
|
||||||
|
},
|
||||||
|
backdrop(status) {
|
||||||
|
if (status == 'done') {
|
||||||
|
return {
|
||||||
|
background: '#bcddff',
|
||||||
|
border: '1px #79c8ff solid',
|
||||||
|
}
|
||||||
|
} else if (status == 'todo') {
|
||||||
|
return {
|
||||||
|
background: '#ebfccf',
|
||||||
|
border: '1px #8bcb71 solid',
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
return {
|
||||||
|
background: '#fff',
|
||||||
|
border: '1px #d6d6d6 solid',
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 请求转换流程图
|
||||||
|
processNum() {
|
||||||
|
axios.request({
|
||||||
|
url: '/api/lawss/activiti/getImg?_t=' + new Date().getTime(),
|
||||||
|
responseType: 'blob',
|
||||||
|
method: 'get',
|
||||||
|
params: {
|
||||||
|
prcNum: this.prcNum
|
||||||
|
}
|
||||||
|
}).then(res => {
|
||||||
|
// let blob = new Blob([res.data], {type: 'image/jpg'})
|
||||||
|
// let url = window.URL.createObjectURL(res.data)
|
||||||
|
this.processStep = window.URL.createObjectURL(res.data)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.flow-chart-box {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-chart {
|
||||||
|
width: 100%;
|
||||||
|
height: 45%;
|
||||||
|
background: #F0F0F0;
|
||||||
|
border: 1px solid #CCCDCE;
|
||||||
|
border-bottom: none;
|
||||||
|
padding: 10px;
|
||||||
|
overflow-x: hidden;
|
||||||
|
overflow-y: auto;
|
||||||
|
margin-bottom: 16px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process {
|
||||||
|
width: 100%;
|
||||||
|
height: auto;
|
||||||
|
min-height: 100%;
|
||||||
|
padding: 20px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
/*display: flex;*/
|
||||||
|
/*align-items: center;*/
|
||||||
|
/*flex-wrap: wrap;*/
|
||||||
|
|
||||||
|
.flow-group-process-stard {
|
||||||
|
width: 100px;
|
||||||
|
border-radius: 20px;
|
||||||
|
height: 40px;
|
||||||
|
background: #bcddff;
|
||||||
|
border: 1px #79c8ff solid;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #000;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 40px;
|
||||||
|
font-weight: 600;
|
||||||
|
float: inline-start;
|
||||||
|
margin-top: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-end {
|
||||||
|
width: 100px;
|
||||||
|
border-radius: 20px;
|
||||||
|
height: 40px;
|
||||||
|
background: #bcddff;
|
||||||
|
border: 1px #79c8ff solid;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #000;
|
||||||
|
text-align: center;
|
||||||
|
line-height: 40px;
|
||||||
|
font-weight: 600;
|
||||||
|
float: inline-end;
|
||||||
|
margin-top: 28px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-end-left {
|
||||||
|
float: inline-start;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-end-one {
|
||||||
|
margin-top: 0;
|
||||||
|
margin-right: 17px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow {
|
||||||
|
width: 100px;
|
||||||
|
height: 1px;
|
||||||
|
background: #c1c1c1;
|
||||||
|
margin-right: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow::after {
|
||||||
|
content: "";
|
||||||
|
display: inline-block;
|
||||||
|
position: relative;
|
||||||
|
left: 100px;
|
||||||
|
top: -7px;
|
||||||
|
border-left: 8px solid #c1c1c1;
|
||||||
|
border-top: 4px solid transparent;
|
||||||
|
border-bottom: 4px solid transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow-one {
|
||||||
|
width: 30px;
|
||||||
|
height: 1px;
|
||||||
|
background: #c1c1c1;
|
||||||
|
margin-right: 8px;
|
||||||
|
transform: rotate(90deg);
|
||||||
|
right: 44px;
|
||||||
|
position: absolute;
|
||||||
|
bottom: -16px;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow-one::after {
|
||||||
|
content: "";
|
||||||
|
display: inline-block;
|
||||||
|
position: relative;
|
||||||
|
left: 30px;
|
||||||
|
top: -7px;
|
||||||
|
border-left: 8px solid #c1c1c1;
|
||||||
|
border-top: 4px solid transparent;
|
||||||
|
border-bottom: 4px solid transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow-left {
|
||||||
|
width: 100px;
|
||||||
|
height: 1px;
|
||||||
|
background: #c1c1c1;
|
||||||
|
margin-right: 0;
|
||||||
|
margin-left: 8px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow-left::after {
|
||||||
|
content: "";
|
||||||
|
display: inline-block;
|
||||||
|
position: relative;
|
||||||
|
left: -8px;
|
||||||
|
top: -7px;
|
||||||
|
border-right: 8px solid #c1c1c1;
|
||||||
|
border-left: none;
|
||||||
|
border-top: 4px solid transparent;
|
||||||
|
border-bottom: 4px solid transparent;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-box {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
float: inline-start;
|
||||||
|
position: relative;
|
||||||
|
margin-bottom: 40px;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-box-one {
|
||||||
|
float: inline-end;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-content {
|
||||||
|
min-height: 80px;
|
||||||
|
width: 140px;
|
||||||
|
background: #bcddff;
|
||||||
|
border: 1px #79c8ff solid;
|
||||||
|
font-size: 12px;
|
||||||
|
color: #000;
|
||||||
|
text-align: center;
|
||||||
|
padding: 0 6px;
|
||||||
|
box-sizing: border-box;
|
||||||
|
font-weight: 600;
|
||||||
|
|
||||||
|
.flow-group-process-content-top {
|
||||||
|
width: 100%;
|
||||||
|
margin-top: 10px;
|
||||||
|
margin-bottom: 10px;
|
||||||
|
font-size: 12px;
|
||||||
|
word-break: break-all;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
-webkit-line-clamp: 1; /* 超出几行省略 */
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-content-bottom {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 12px;
|
||||||
|
line-height: 1.4;
|
||||||
|
height: 54px;
|
||||||
|
overflow: hidden;
|
||||||
|
.flow-group-process-content-bottom-text{
|
||||||
|
word-break: break-all;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
|
-webkit-line-clamp: 1; /* 超出几行省略 */
|
||||||
|
overflow: hidden;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-arrow-dis {
|
||||||
|
margin-left: 200px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.flow-group-process-content-dis {
|
||||||
|
margin-left: 208px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -412,6 +412,7 @@
|
|||||||
watch: {
|
watch: {
|
||||||
isVisible(val) {
|
isVisible(val) {
|
||||||
this.visible = val
|
this.visible = val
|
||||||
|
this.filterText= ''
|
||||||
if (val) {
|
if (val) {
|
||||||
this.nodeList2 = this.nodeList
|
this.nodeList2 = this.nodeList
|
||||||
if (this.nodeList2.length && this.nodeList2[0].length) {
|
if (this.nodeList2.length && this.nodeList2[0].length) {
|
||||||
|
|||||||
@@ -0,0 +1,562 @@
|
|||||||
|
import '@babel/polyfill'
|
||||||
|
require('es6-promise').polyfill();
|
||||||
|
require('es6-promise/auto');
|
||||||
|
import Vue from 'vue'
|
||||||
|
import App from './App'
|
||||||
|
import ElementUI from 'element-ui'
|
||||||
|
import 'element-ui/lib/theme-chalk/index.css'
|
||||||
|
// jQuery
|
||||||
|
import $ from 'jquery'
|
||||||
|
// vuex
|
||||||
|
import store from './store'
|
||||||
|
import Axios from 'axios'
|
||||||
|
// 复制
|
||||||
|
import VueClipboard from 'vue-clipboard2'
|
||||||
|
// 全局样式文件
|
||||||
|
import '@/assets/styles/common.less'
|
||||||
|
// 样式重置
|
||||||
|
import '@/assets/styles/reset.css'
|
||||||
|
// iconfont字体库
|
||||||
|
import '@/assets/styles/iconfont.css'
|
||||||
|
import '@/assets/styles/shangqi-iconfont/iconfont.css'
|
||||||
|
import '@/assets/styles/shangqi-iconfont-replace/iconfont.css' // 可直接替换此文件夹
|
||||||
|
import '@/assets/styles/shangqi-iconfont-2021/iconfont.css'
|
||||||
|
// axios
|
||||||
|
import axios from 'axios'
|
||||||
|
import $axios from '@/common/axios'
|
||||||
|
// 自定义全局组件
|
||||||
|
import components from '@/components'
|
||||||
|
// 自定义插件
|
||||||
|
import common from '@/common'
|
||||||
|
import dragDialogWidth from '@/common/dragDialogWidth'
|
||||||
|
// 自定义按钮显示指令
|
||||||
|
import btnPermission from '@/common/btnPermission' // eslint-disable-line
|
||||||
|
import VueI18n from 'vue-i18n' // 国际化
|
||||||
|
// import * as echarts from 'echarts'
|
||||||
|
import { simpleUploadPath } from '@/sysConfig'
|
||||||
|
// 时间转换
|
||||||
|
import moment from 'moment'
|
||||||
|
moment.suppressDeprecationWarnings = true;
|
||||||
|
// 右键菜单
|
||||||
|
import Contextmenu from 'vue-contextmenujs'
|
||||||
|
|
||||||
|
// vant
|
||||||
|
import vant from 'vant';
|
||||||
|
import 'vant/lib/index.css';
|
||||||
|
//vant
|
||||||
|
|
||||||
|
import animate from 'animate.css'
|
||||||
|
import tool from './utils/tool'
|
||||||
|
Vue.use(tool)
|
||||||
|
// 引入路由器
|
||||||
|
import router from './router'
|
||||||
|
// 路由解析器
|
||||||
|
import Re from 'path-to-regexp'
|
||||||
|
|
||||||
|
import { get_verify_by_instance,loginIdm,getMenu,loginMobile } from 'api/process'
|
||||||
|
import hwh5 from 'api/hwh5-cloudonline.js';
|
||||||
|
|
||||||
|
import { ssoLoginUrlDev,ssoLoginUrl,webLoginType,devWebUrl } from '@/sysConfig'
|
||||||
|
|
||||||
|
import { mapMutations, mapActions } from 'vuex'
|
||||||
|
import VConsole from 'vuex'
|
||||||
|
|
||||||
|
|
||||||
|
import isMobile from "./store/isMobile";
|
||||||
|
import { Loading } from 'element-ui';
|
||||||
|
|
||||||
|
// 路由拦截
|
||||||
|
router.beforeEach(function (to, from, next) {
|
||||||
|
closeLoading()
|
||||||
|
if (isMobile()){
|
||||||
|
var loading = Loading.service({
|
||||||
|
text: '加载中...',
|
||||||
|
background: '#fff'
|
||||||
|
});
|
||||||
|
}
|
||||||
|
function closeLoading(){
|
||||||
|
if (loading) {
|
||||||
|
setTimeout(() => {
|
||||||
|
loading.close()
|
||||||
|
loading = null
|
||||||
|
}, 3000)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
let fromName = from.name
|
||||||
|
if(fromName === undefined || fromName === null){
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
}
|
||||||
|
let toName = to.name
|
||||||
|
if (toName === 'CheckPage' || toName === 'loginStandDetails' || toName === 'error'
|
||||||
|
|| toName === 'LoginVerifyPhone') {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
|
||||||
|
if(webLoginType === 'idm' && toName === 'Login'){
|
||||||
|
window.location.href = ssoLoginUrlDev
|
||||||
|
}
|
||||||
|
|
||||||
|
let token = store.state.token
|
||||||
|
let path = to.path;
|
||||||
|
let userName = ""
|
||||||
|
/*
|
||||||
|
if((fromName === undefined || fromName === null) && (path.indexOf("/standardSearch/All&userName=") !== -1 || (path.indexOf("/standardSearch/All") !== -1 && to.query.userName !== undefined))){
|
||||||
|
if((path.indexOf("/standardSearch/All") !== -1 && to.query.userName !== undefined)){
|
||||||
|
userName = to.query.userName
|
||||||
|
}else {
|
||||||
|
userName = path.split("&")[1].split("=")[1]
|
||||||
|
}
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
}else {
|
||||||
|
*/
|
||||||
|
if(fromName === 'Home2'){
|
||||||
|
localStorage.removeItem("external")
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
let requireAuth = to.meta.requireAuth;
|
||||||
|
let taskId = to.query.taskIds;
|
||||||
|
let prcId = to.query.prcId;
|
||||||
|
let prcNum = to.query.prcNum;
|
||||||
|
let prcName = to.query.prcName;
|
||||||
|
let prcType = to.query.prcType;
|
||||||
|
let routerType = to.query.routerType;
|
||||||
|
let unShowReceipt = to.query.unShowReceipt;
|
||||||
|
let param = "taskIds=" + taskId + "&prcId=" + prcId
|
||||||
|
+ "&prcNum=" + prcNum + "&prcName=" + prcName + "&prcType=" + prcType;
|
||||||
|
if (unShowReceipt) {
|
||||||
|
param += "&unShowReceipt=" + unShowReceipt
|
||||||
|
}
|
||||||
|
let param4 = {
|
||||||
|
path: path,
|
||||||
|
token: token,
|
||||||
|
taskId: taskId,
|
||||||
|
prcId: prcId,
|
||||||
|
prcNum: prcNum,
|
||||||
|
prcName: prcName,
|
||||||
|
prcType: prcType,
|
||||||
|
toName: toName
|
||||||
|
}
|
||||||
|
let url = window.location.search
|
||||||
|
let code = "";
|
||||||
|
if(url){
|
||||||
|
url = url.substr(1);
|
||||||
|
url = url.split('&');
|
||||||
|
let info = [];
|
||||||
|
let obj = {};
|
||||||
|
for (let i = 0,len = url.length; i < len; i++) {
|
||||||
|
info = url[i].split('=')
|
||||||
|
obj[info[0]] = decodeURI(info[1]);
|
||||||
|
url[i] = obj;
|
||||||
|
}
|
||||||
|
code = url[0].code
|
||||||
|
}
|
||||||
|
|
||||||
|
function extractedLocalStorage(url,param,param4) {
|
||||||
|
localStorage.removeItem("external")
|
||||||
|
localStorage.removeItem("routerUrl")
|
||||||
|
localStorage.setItem('routerUrl', url)
|
||||||
|
localStorage.removeItem("routerParam")
|
||||||
|
localStorage.setItem('routerParam', param)
|
||||||
|
}
|
||||||
|
// 返回值为登录状态
|
||||||
|
// 单点登录
|
||||||
|
/** 判断是不是在手机端操作 */
|
||||||
|
if (isMobile()) {
|
||||||
|
if(toName === 'phoneHome' && (token === undefined || token === null || token === '')){
|
||||||
|
localStorage.removeItem('token')
|
||||||
|
token = localStorage.getItem("token")
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
localStorage.setItem("routerName","phoneHome")
|
||||||
|
next('/loginVerifyPhone')
|
||||||
|
closeLoading()
|
||||||
|
}else if(toName === 'phoneHome' && token != null && (fromName === undefined || fromName === null)){
|
||||||
|
localStorage.removeItem('token')
|
||||||
|
token = localStorage.getItem("token")
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}else if(toName === 'phoneHome' && token != null){
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
} else if(toName === 'processCenter'){
|
||||||
|
// hwh5.close();
|
||||||
|
//关闭当前窗口
|
||||||
|
let userAgent = navigator.userAgent;
|
||||||
|
if (userAgent.indexOf("Firefox") !== -1 || userAgent.indexOf("Chrome") !==-1) {
|
||||||
|
window.location.href="about:blank";
|
||||||
|
}else if(userAgent.indexOf('Android') > -1 || userAgent.indexOf('Linux') > -1){
|
||||||
|
window.opener=null;window.open('about:blank','_self','').close();
|
||||||
|
}else {
|
||||||
|
window.opener = null;
|
||||||
|
window.open("about:blank", "_self");
|
||||||
|
window.close();
|
||||||
|
}
|
||||||
|
//如果是微信打开,关闭当前微信窗口
|
||||||
|
weixinClosePage()
|
||||||
|
}else {
|
||||||
|
|
||||||
|
if ((token === null || token === '' ) && toName !== 'Login') {
|
||||||
|
if(toName !== 'phoneIndex'){
|
||||||
|
if(toName === 'phoneHome'){
|
||||||
|
// 手机端 首页 首次进入系统 清除 缓存, 防止 跳转 oa 的页面, 问题追溯 #55852
|
||||||
|
localStorage.removeItem('token')
|
||||||
|
token = localStorage.getItem("token")
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
localStorage.setItem("routerName","phoneHome")
|
||||||
|
next('/loginVerifyPhone')
|
||||||
|
closeLoading()
|
||||||
|
}else if(toName === 'databaseSearch' || toName === 'standDynamics' ||
|
||||||
|
toName === 'domesticStand' || toName === 'domesticDetails' || toName === 'zlzxDetails'){
|
||||||
|
localStorage.setItem("routerName",toName)
|
||||||
|
next('/loginVerifyPhone')
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
if(fromName === 'phoneHome'){
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
localStorage.removeItem("param");
|
||||||
|
localStorage.setItem('param',JSON.stringify(param4))
|
||||||
|
next('/phoneIndex')
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
// 区分手机端首页 单独逻辑处理 token 为空 跳回验证页面重新验证
|
||||||
|
if(fromName === 'databaseSearch' || fromName === 'standDynamics' ||
|
||||||
|
fromName === 'domesticStand' || fromName === 'domesticDetails' || toName === 'zlzxDetails'){
|
||||||
|
localStorage.setItem("routerName",toName)
|
||||||
|
next('/loginVerifyPhone')
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(toName === 'databaseSearch' || toName === 'standDynamics' || toName === 'zlzxDetails' ||
|
||||||
|
toName === 'domesticStand' || toName === 'domesticDetails'){
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}else if (toName.slice(0,5) !== 'phone') {
|
||||||
|
if(toName === 'LoginVerify'){
|
||||||
|
if(toName === 'phoneHome'){
|
||||||
|
// 手机端 首页 首次进入系统 清除 缓存, 防止 跳转 oa 的页面, 问题追溯 #55852
|
||||||
|
localStorage.removeItem('token')
|
||||||
|
token = localStorage.getItem("token")
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
localStorage.setItem("routerName","phoneHome")
|
||||||
|
next('/loginVerifyPhone')
|
||||||
|
closeLoading()
|
||||||
|
}else{
|
||||||
|
next('/blankPage')
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
if(toName === 'blankPage' || toName === 'processedPage') {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
|
||||||
|
console.log('-pc端-')
|
||||||
|
extractedVerify()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
if(toName !== 'blankPage'){
|
||||||
|
if(to.matched.length === 0){
|
||||||
|
if(toName === 'phoneHome'){
|
||||||
|
// 手机端 首页 首次进入系统 清除 缓存, 防止 跳转 oa 的页面, 问题追溯 #55852
|
||||||
|
localStorage.removeItem('token')
|
||||||
|
token = localStorage.getItem("token")
|
||||||
|
window.sessionStorage.clear()
|
||||||
|
localStorage.setItem("routerName","phoneHome")
|
||||||
|
next('/loginVerifyPhone')
|
||||||
|
closeLoading()
|
||||||
|
}else{
|
||||||
|
next('/blankPage')
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
console.log('-phone端-')
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
localStorage.removeItem("routerUrl")
|
||||||
|
localStorage.setItem('routerUrl', 'home2')
|
||||||
|
localStorage.removeItem("routerParam")
|
||||||
|
localStorage.setItem('routerParam', '')
|
||||||
|
if ((token === null || token === '' ) && toName === 'OtherStandardDetails') {
|
||||||
|
if (document.cookie) {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
return
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if ((token === null || token === '' ) && toName !== 'Login') {
|
||||||
|
if(webLoginType != null && webLoginType === 'idm' ){
|
||||||
|
if(code){
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
if (taskId !== undefined && taskId !== null && prcId !== undefined && prcId !== null) {
|
||||||
|
extractedVerify(token)
|
||||||
|
}else {
|
||||||
|
/*
|
||||||
|
if((fromName === undefined || fromName === null) && (path.indexOf("/standardSearch/All&userName") !== -1 || (path.indexOf("/standardSearch/All") !== -1 && userName !== undefined))){
|
||||||
|
extractedLocalStorage("standardSearch/All",userName)
|
||||||
|
localStorage.setItem('external', "external")
|
||||||
|
next('/LoginVerifyNoEncryption')
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
*/
|
||||||
|
if (toName === 'LoginVerifyNoEncryption') {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
/*
|
||||||
|
if(path === '/standardSearch/All'){
|
||||||
|
extractedLocalStorage('standardSearch/All','');
|
||||||
|
}else {
|
||||||
|
*/
|
||||||
|
extractedLocalStorage('home2','');
|
||||||
|
/*
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
// ssoLoginUrlDev 默认sso 地址
|
||||||
|
window.location.href = ssoLoginUrlDev
|
||||||
|
}
|
||||||
|
/*
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}else if(webLoginType != null && webLoginType === 'dev'){
|
||||||
|
if (isMobile()) {
|
||||||
|
extractedVerify(token)
|
||||||
|
} else {
|
||||||
|
next('/Login')
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
extractedVerify(token)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function weixinClosePage() {
|
||||||
|
if (typeof WeixinJSBridge == "undefined") {
|
||||||
|
if (document.addEventListener) {
|
||||||
|
document.addEventListener('WeixinJSBridgeReady', weixin_ClosePage, false);
|
||||||
|
} else if (document.attachEvent) {
|
||||||
|
document.attachEvent('WeixinJSBridgeReady', weixin_ClosePage);
|
||||||
|
document.attachEvent('onWeixinJSBridgeReady', weixin_ClosePage);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
weixin_ClosePage();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function weixin_ClosePage() {
|
||||||
|
WeixinJSBridge.call('closeWindow');
|
||||||
|
}
|
||||||
|
function extractedVerify() {
|
||||||
|
if (taskId !== undefined && taskId !== null && prcId !== undefined && prcId !== null) {
|
||||||
|
get_verify_by_instance({
|
||||||
|
taskId: taskId, // 任务id
|
||||||
|
pId: prcId // 流程实例
|
||||||
|
}).then(res => {
|
||||||
|
let hisCount = res.hisCount === undefined ? 0 : res.hisCount;
|
||||||
|
let commitStatus = res.commitStatus === undefined ? 0 : res.commitStatus;
|
||||||
|
let isNotFinished = res.isNotFinished === undefined ? 0 : res.isNotFinished;
|
||||||
|
if ((hisCount && hisCount > 0)) { // 业务系统 当前节点已完成
|
||||||
|
if(isMobile()){
|
||||||
|
next('/processedPage')
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
} else { // 业务系统 当前节点未完成
|
||||||
|
// commitStatus 大于0 表示当前节点存在未完成干活流程
|
||||||
|
// isNotFinished OA 系统显示接受任务 已置为已办
|
||||||
|
if (routerType && routerType === 'oa' &&isNotFinished && isNotFinished > 0 && commitStatus && commitStatus > 0) {
|
||||||
|
if(isMobile()) {
|
||||||
|
extractedIphone()
|
||||||
|
}else if (prcType === '3') {
|
||||||
|
//标准征求意见 接受节点 未完成 oa已办 跳转详情页面
|
||||||
|
if (path === '/bzzqyjStep3') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}else if (prcType === '5') {
|
||||||
|
if (path === '/xmpgStep4') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}else if (prcType === '2') {
|
||||||
|
if (path === '/bzdyStep3') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}else if (prcType === '9') {
|
||||||
|
if (path === '/bzjdStep3') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}else if (prcType === '6') {
|
||||||
|
if (path === '/xmpg2Step6') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}else if (prcType === '10') {
|
||||||
|
if (path === '/xmqdqrStep2') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}else if (prcType === '8') {
|
||||||
|
if (path === '/wfhxzgStep4') {
|
||||||
|
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
||||||
|
}
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
if(isMobile()) {
|
||||||
|
extractedIphone()
|
||||||
|
}else{
|
||||||
|
extracted3()
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function extracted(routerPath) {
|
||||||
|
if (token === null || token === '') {
|
||||||
|
extractedLocalStorage(routerPath,param);
|
||||||
|
// ssoLoginUrlDev 默认sso 地址
|
||||||
|
window.location.href = ssoLoginUrlDev
|
||||||
|
} else {
|
||||||
|
next({path: routerPath + '?' +param})
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function extracted3() {
|
||||||
|
if (token === null || token === '') {
|
||||||
|
extractedLocalStorage(toName,param);
|
||||||
|
// ssoLoginUrlDev 默认sso 地址
|
||||||
|
window.location.href = ssoLoginUrlDev
|
||||||
|
} else {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
function extractedIphone() {
|
||||||
|
let paramPhone = 'taskIds=' + taskId + '&prcId=' + prcId + '&prcNum=' + prcNum +
|
||||||
|
'&taskAssignee=' + toName + '&prcName=' + prcName + '&prcType=' + prcType
|
||||||
|
let phoneRouter = 'phone' + toName.charAt(0).toUpperCase() + toName.slice(1)
|
||||||
|
console.log(phoneRouter);
|
||||||
|
next({path: phoneRouter + '?' + paramPhone})
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
function extracted2(routerPath,param2) {
|
||||||
|
if (token === null || token === '') {
|
||||||
|
extractedLocalStorage(routerPath,param2);
|
||||||
|
// ssoLoginUrlDev 默认sso 地址
|
||||||
|
window.location.href = ssoLoginUrlDev
|
||||||
|
} else {
|
||||||
|
next({path: routerPath + '?' + param2})
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
function extracted4(routerPath,param4) {
|
||||||
|
if (token === null || token === '') {
|
||||||
|
extractedLocalStorage(routerPath,param4);
|
||||||
|
// ssoLoginUrlDev 默认sso 地址
|
||||||
|
window.location.href = ssoLoginUrlDev
|
||||||
|
} else {
|
||||||
|
next({path: routerPath + '?' + param4})
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
if(path === '/loginVerify'){
|
||||||
|
if(webLoginType != null && webLoginType === 'dev'){
|
||||||
|
next('/Login')
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
}
|
||||||
|
}else {
|
||||||
|
/*
|
||||||
|
if((fromName === undefined || fromName === null) && (path.indexOf("/standardSearch/All&userName") !== -1 || (path.indexOf("/standardSearch/All") !== -1 && userName !== undefined))) {
|
||||||
|
extractedLocalStorage("standardSearch/All",userName)
|
||||||
|
localStorage.setItem('external', "external")
|
||||||
|
next('/LoginVerifyNoEncryption')
|
||||||
|
closeLoading()
|
||||||
|
}else {
|
||||||
|
*/
|
||||||
|
next()
|
||||||
|
closeLoading()
|
||||||
|
/*
|
||||||
|
}
|
||||||
|
*/
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
||||||
|
|
||||||
|
// 设置用户信息
|
||||||
|
function setUserInfo (userInfo) {
|
||||||
|
const timeStamp = new Date().getTime().toString()
|
||||||
|
const _USERINFO = JSON.parse(userInfo)
|
||||||
|
_USERINFO.userId = _USERINFO.userId || _USERINFO.usId
|
||||||
|
_USERINFO.userName = _USERINFO.userName || _USERINFO.uName
|
||||||
|
try {
|
||||||
|
localStorage.setItem('userInfo', JSON.stringify(_USERINFO))
|
||||||
|
localStorage.setItem('userInfoModifyTime', timeStamp)
|
||||||
|
} catch (e) {}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Vue.config.productionTip = false
|
||||||
|
// jquery
|
||||||
|
Vue.prototype.$ = $
|
||||||
|
Vue.use(ElementUI)
|
||||||
|
Vue.use(common)
|
||||||
|
Vue.use(dragDialogWidth)
|
||||||
|
Vue.use(components)
|
||||||
|
Vue.use(VueI18n)
|
||||||
|
Vue.use(VueClipboard)
|
||||||
|
Vue.use(Contextmenu)
|
||||||
|
Vue.use(animate)
|
||||||
|
Vue.use(vant)
|
||||||
|
|
||||||
|
// Vue.prototype.$echarts = echarts
|
||||||
|
// 原生axios
|
||||||
|
Vue.prototype.axios = axios
|
||||||
|
// 封装后的axios
|
||||||
|
Vue.prototype.$http = $axios
|
||||||
|
Vue.prototype.simpleUploadPath = simpleUploadPath
|
||||||
|
Vue.prototype.$moment = moment
|
||||||
|
// 国际化
|
||||||
|
const i18n = new VueI18n({
|
||||||
|
locale: store.getters.getLanguage || 'cn', // 定义默认语言为中文
|
||||||
|
messages: {
|
||||||
|
cn: require('@/assets/languages/cn'),
|
||||||
|
en: require('@/assets/languages/en')
|
||||||
|
}
|
||||||
|
})
|
||||||
|
/* eslint-disable no-new */
|
||||||
|
window.vm = new Vue({
|
||||||
|
VConsole,
|
||||||
|
router,
|
||||||
|
store,
|
||||||
|
i18n,
|
||||||
|
render: h => h(App)
|
||||||
|
}).$mount('#app')
|
||||||
+59
-460
@@ -1,6 +1,6 @@
|
|||||||
import '@babel/polyfill'
|
import '@babel/polyfill'
|
||||||
require('es6-promise').polyfill();
|
require('es6-promise').polyfill()
|
||||||
require('es6-promise/auto');
|
require('es6-promise/auto')
|
||||||
import Vue from 'vue'
|
import Vue from 'vue'
|
||||||
import App from './App'
|
import App from './App'
|
||||||
import ElementUI from 'element-ui'
|
import ElementUI from 'element-ui'
|
||||||
@@ -9,7 +9,6 @@ import 'element-ui/lib/theme-chalk/index.css'
|
|||||||
import $ from 'jquery'
|
import $ from 'jquery'
|
||||||
// vuex
|
// vuex
|
||||||
import store from './store'
|
import store from './store'
|
||||||
import Axios from 'axios'
|
|
||||||
// 复制
|
// 复制
|
||||||
import VueClipboard from 'vue-clipboard2'
|
import VueClipboard from 'vue-clipboard2'
|
||||||
// 全局样式文件
|
// 全局样式文件
|
||||||
@@ -32,498 +31,98 @@ import dragDialogWidth from '@/common/dragDialogWidth'
|
|||||||
// 自定义按钮显示指令
|
// 自定义按钮显示指令
|
||||||
import btnPermission from '@/common/btnPermission' // eslint-disable-line
|
import btnPermission from '@/common/btnPermission' // eslint-disable-line
|
||||||
import VueI18n from 'vue-i18n' // 国际化
|
import VueI18n from 'vue-i18n' // 国际化
|
||||||
// import * as echarts from 'echarts'
|
|
||||||
import { simpleUploadPath } from '@/sysConfig'
|
import { simpleUploadPath } from '@/sysConfig'
|
||||||
// 时间转换
|
// 时间转换
|
||||||
import moment from 'moment'
|
import moment from 'moment'
|
||||||
moment.suppressDeprecationWarnings = true;
|
moment.suppressDeprecationWarnings = true
|
||||||
// 右键菜单
|
// 右键菜单
|
||||||
import Contextmenu from 'vue-contextmenujs'
|
import Contextmenu from 'vue-contextmenujs'
|
||||||
|
|
||||||
// vant
|
// vant
|
||||||
import vant from 'vant';
|
import vant from 'vant'
|
||||||
import 'vant/lib/index.css';
|
import 'vant/lib/index.css'
|
||||||
//vant
|
|
||||||
|
|
||||||
import animate from 'animate.css'
|
import animate from 'animate.css'
|
||||||
import tool from './utils/tool'
|
import tool from './utils/tool'
|
||||||
Vue.use(tool)
|
Vue.use(tool)
|
||||||
// 引入路由器
|
// 引入路由器
|
||||||
import router from './router'
|
import router from './router'
|
||||||
// 路由解析器
|
|
||||||
import Re from 'path-to-regexp'
|
|
||||||
|
|
||||||
import { get_verify_by_instance,loginIdm,getMenu,loginMobile } from 'api/process'
|
import { webLoginType } from '@/sysConfig'
|
||||||
import hwh5 from 'api/hwh5-cloudonline.js';
|
|
||||||
|
|
||||||
import { ssoLoginUrlDev,ssoLoginUrl,webLoginType,devWebUrl } from '@/sysConfig'
|
|
||||||
|
|
||||||
import { mapMutations, mapActions } from 'vuex'
|
|
||||||
import VConsole from 'vuex'
|
import VConsole from 'vuex'
|
||||||
|
|
||||||
|
import isMobile from './store/isMobile'
|
||||||
|
import { getCode, toIdmLoginPage, loginInIdm, loginInPhone, close } from '@/utils/login'
|
||||||
|
|
||||||
import isMobile from "./store/isMobile";
|
router.beforeEach((to, from, next) => {
|
||||||
import { Loading } from 'element-ui';
|
const token = store.state.token
|
||||||
|
if (to.query.taskIds && to.query.taskIds !== '' && to.query.prcId && to.query.prcId !== '') {
|
||||||
// 路由拦截
|
const fullPath = to.fullPath.slice(1)
|
||||||
router.beforeEach(function (to, from, next) {
|
if (isMobile()) {
|
||||||
closeLoading()
|
if (fullPath.indexOf('phone') !== 0) {
|
||||||
if (isMobile()){
|
let path = fullPath.replace(fullPath.charAt(0), fullPath.charAt(0).toUpperCase())
|
||||||
var loading = Loading.service({
|
if (path.indexOf('BussLibraryProduct/') !== -1) {
|
||||||
text: '加载中...',
|
// 产品标准流程-pc端重构,pc端路由改变而手机端路由未改变,此处让手机端跳转到正确路由
|
||||||
background: '#fff'
|
path = path.replace('BussLibraryProduct/', 'BussLibraryProduct')
|
||||||
});
|
|
||||||
}
|
|
||||||
function closeLoading(){
|
|
||||||
if (loading) {
|
|
||||||
setTimeout(() => {
|
|
||||||
loading.close()
|
|
||||||
loading = null
|
|
||||||
}, 3000)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
let fromName = from.name
|
|
||||||
if(fromName === undefined || fromName === null){
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
}
|
|
||||||
let toName = to.name
|
|
||||||
if (toName === 'CheckPage' || toName === 'loginStandDetails' || toName === 'error'
|
|
||||||
|| toName === 'LoginVerifyPhone') {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
return
|
|
||||||
}
|
|
||||||
|
|
||||||
if(webLoginType === 'idm' && toName === 'Login'){
|
|
||||||
window.location.href = ssoLoginUrlDev
|
|
||||||
}
|
|
||||||
|
|
||||||
let token = store.state.token
|
|
||||||
let path = to.path;
|
|
||||||
let userName = ""
|
|
||||||
/*
|
|
||||||
if((fromName === undefined || fromName === null) && (path.indexOf("/standardSearch/All&userName=") !== -1 || (path.indexOf("/standardSearch/All") !== -1 && to.query.userName !== undefined))){
|
|
||||||
if((path.indexOf("/standardSearch/All") !== -1 && to.query.userName !== undefined)){
|
|
||||||
userName = to.query.userName
|
|
||||||
}else {
|
|
||||||
userName = path.split("&")[1].split("=")[1]
|
|
||||||
}
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
}else {
|
|
||||||
*/
|
|
||||||
if(fromName === 'Home2'){
|
|
||||||
localStorage.removeItem("external")
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
let requireAuth = to.meta.requireAuth;
|
|
||||||
let taskId = to.query.taskIds;
|
|
||||||
let prcId = to.query.prcId;
|
|
||||||
let prcNum = to.query.prcNum;
|
|
||||||
let prcName = to.query.prcName;
|
|
||||||
let prcType = to.query.prcType;
|
|
||||||
let routerType = to.query.routerType;
|
|
||||||
let unShowReceipt = to.query.unShowReceipt;
|
|
||||||
let param = "taskIds=" + taskId + "&prcId=" + prcId
|
|
||||||
+ "&prcNum=" + prcNum + "&prcName=" + prcName + "&prcType=" + prcType;
|
|
||||||
if (unShowReceipt) {
|
|
||||||
param += "&unShowReceipt=" + unShowReceipt
|
|
||||||
}
|
|
||||||
let param4 = {
|
|
||||||
path: path,
|
|
||||||
token: token,
|
|
||||||
taskId: taskId,
|
|
||||||
prcId: prcId,
|
|
||||||
prcNum: prcNum,
|
|
||||||
prcName: prcName,
|
|
||||||
prcType: prcType,
|
|
||||||
toName: toName
|
|
||||||
}
|
|
||||||
let url = window.location.search
|
|
||||||
let code = "";
|
|
||||||
if(url){
|
|
||||||
url = url.substr(1);
|
|
||||||
url = url.split('&');
|
|
||||||
let info = [];
|
|
||||||
let obj = {};
|
|
||||||
for (let i = 0,len = url.length; i < len; i++) {
|
|
||||||
info = url[i].split('=')
|
|
||||||
obj[info[0]] = decodeURI(info[1]);
|
|
||||||
url[i] = obj;
|
|
||||||
}
|
|
||||||
code = url[0].code
|
|
||||||
}
|
|
||||||
|
|
||||||
function extractedLocalStorage(url,param,param4) {
|
|
||||||
localStorage.removeItem("external")
|
|
||||||
localStorage.removeItem("routerUrl")
|
|
||||||
localStorage.setItem('routerUrl', url)
|
|
||||||
localStorage.removeItem("routerParam")
|
|
||||||
localStorage.setItem('routerParam', param)
|
|
||||||
}
|
|
||||||
// 返回值为登录状态
|
|
||||||
// 单点登录
|
|
||||||
/** 判断是不是在手机端操作 */
|
|
||||||
if (isMobile()) {
|
|
||||||
if(toName === 'phoneHome' && (token === undefined || token === null || token === '')){
|
|
||||||
localStorage.removeItem('token')
|
|
||||||
token = localStorage.getItem("token")
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
localStorage.setItem("routerName","phoneHome")
|
|
||||||
next('/loginVerifyPhone')
|
|
||||||
closeLoading()
|
|
||||||
}else if(toName === 'phoneHome' && token != null && (fromName === undefined || fromName === null)){
|
|
||||||
localStorage.removeItem('token')
|
|
||||||
token = localStorage.getItem("token")
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}else if(toName === 'phoneHome' && token != null){
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
} else if(toName === 'processCenter'){
|
|
||||||
// hwh5.close();
|
|
||||||
//关闭当前窗口
|
|
||||||
let userAgent = navigator.userAgent;
|
|
||||||
if (userAgent.indexOf("Firefox") !== -1 || userAgent.indexOf("Chrome") !==-1) {
|
|
||||||
window.location.href="about:blank";
|
|
||||||
}else if(userAgent.indexOf('Android') > -1 || userAgent.indexOf('Linux') > -1){
|
|
||||||
window.opener=null;window.open('about:blank','_self','').close();
|
|
||||||
}else {
|
|
||||||
window.opener = null;
|
|
||||||
window.open("about:blank", "_self");
|
|
||||||
window.close();
|
|
||||||
}
|
|
||||||
//如果是微信打开,关闭当前微信窗口
|
|
||||||
weixinClosePage()
|
|
||||||
}else {
|
|
||||||
|
|
||||||
if ((token === null || token === '' ) && toName !== 'Login') {
|
|
||||||
if(toName !== 'phoneIndex'){
|
|
||||||
if(toName === 'phoneHome'){
|
|
||||||
// 手机端 首页 首次进入系统 清除 缓存, 防止 跳转 oa 的页面, 问题追溯 #55852
|
|
||||||
localStorage.removeItem('token')
|
|
||||||
token = localStorage.getItem("token")
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
localStorage.setItem("routerName","phoneHome")
|
|
||||||
next('/loginVerifyPhone')
|
|
||||||
closeLoading()
|
|
||||||
}else if(toName === 'databaseSearch' || toName === 'standDynamics' ||
|
|
||||||
toName === 'domesticStand' || toName === 'domesticDetails' || toName === 'zlzxDetails'){
|
|
||||||
localStorage.setItem("routerName",toName)
|
|
||||||
next('/loginVerifyPhone')
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
if(fromName === 'phoneHome'){
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
localStorage.removeItem("param");
|
|
||||||
localStorage.setItem('param',JSON.stringify(param4))
|
|
||||||
next('/phoneIndex')
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
// 区分手机端首页 单独逻辑处理 token 为空 跳回验证页面重新验证
|
|
||||||
if(fromName === 'databaseSearch' || fromName === 'standDynamics' ||
|
|
||||||
fromName === 'domesticStand' || fromName === 'domesticDetails' || toName === 'zlzxDetails'){
|
|
||||||
localStorage.setItem("routerName",toName)
|
|
||||||
next('/loginVerifyPhone')
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
path = '/phone' + path
|
||||||
|
next({ path: path })
|
||||||
|
}
|
||||||
|
if (!to.name) {
|
||||||
|
// 不存在路由
|
||||||
|
next('/blankPage')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
if (token && token !== '') {
|
||||||
|
if (to.path === '/') {
|
||||||
|
if (isMobile()) {
|
||||||
|
next('/phoneHome')
|
||||||
} else {
|
} else {
|
||||||
if(toName === 'databaseSearch' || toName === 'standDynamics' || toName === 'zlzxDetails' ||
|
next('/home2')
|
||||||
toName === 'domesticStand' || toName === 'domesticDetails'){
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}else if (toName.slice(0,5) !== 'phone') {
|
|
||||||
if(toName === 'LoginVerify'){
|
|
||||||
if(toName === 'phoneHome'){
|
|
||||||
// 手机端 首页 首次进入系统 清除 缓存, 防止 跳转 oa 的页面, 问题追溯 #55852
|
|
||||||
localStorage.removeItem('token')
|
|
||||||
token = localStorage.getItem("token")
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
localStorage.setItem("routerName","phoneHome")
|
|
||||||
next('/loginVerifyPhone')
|
|
||||||
closeLoading()
|
|
||||||
}else{
|
|
||||||
next('/blankPage')
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
if(toName === 'blankPage' || toName === 'processedPage') {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
|
|
||||||
console.log('-pc端-')
|
|
||||||
extractedVerify()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
if(toName !== 'blankPage'){
|
|
||||||
if(to.matched.length === 0){
|
|
||||||
if(toName === 'phoneHome'){
|
|
||||||
// 手机端 首页 首次进入系统 清除 缓存, 防止 跳转 oa 的页面, 问题追溯 #55852
|
|
||||||
localStorage.removeItem('token')
|
|
||||||
token = localStorage.getItem("token")
|
|
||||||
window.sessionStorage.clear()
|
|
||||||
localStorage.setItem("routerName","phoneHome")
|
|
||||||
next('/loginVerifyPhone')
|
|
||||||
closeLoading()
|
|
||||||
}else{
|
|
||||||
next('/blankPage')
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
console.log('-phone端-')
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
next()
|
||||||
} else {
|
} else {
|
||||||
localStorage.removeItem("routerUrl")
|
if (to.path === '/login') {
|
||||||
localStorage.setItem('routerUrl', 'home2')
|
if (webLoginType === 'idm') {
|
||||||
localStorage.removeItem("routerParam")
|
// webLoginType === "idm"时不会进入login路由
|
||||||
localStorage.setItem('routerParam', '')
|
// let href = window.location.href.replace('code=' + getCode(), '')
|
||||||
if ((token === null || token === '' ) && toName === 'OtherStandardDetails') {
|
// toIdmLoginPage(href)
|
||||||
if (document.cookie) {
|
}
|
||||||
|
if (webLoginType === 'dev') {
|
||||||
next()
|
next()
|
||||||
closeLoading()
|
|
||||||
return
|
|
||||||
}
|
|
||||||
}
|
|
||||||
if ((token === null || token === '' ) && toName !== 'Login') {
|
|
||||||
if(webLoginType != null && webLoginType === 'idm' ){
|
|
||||||
if(code){
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
if (taskId !== undefined && taskId !== null && prcId !== undefined && prcId !== null) {
|
|
||||||
extractedVerify(token)
|
|
||||||
}else {
|
|
||||||
/*
|
|
||||||
if((fromName === undefined || fromName === null) && (path.indexOf("/standardSearch/All&userName") !== -1 || (path.indexOf("/standardSearch/All") !== -1 && userName !== undefined))){
|
|
||||||
extractedLocalStorage("standardSearch/All",userName)
|
|
||||||
localStorage.setItem('external', "external")
|
|
||||||
next('/LoginVerifyNoEncryption')
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
*/
|
|
||||||
if (toName === 'LoginVerifyNoEncryption') {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
/*
|
|
||||||
if(path === '/standardSearch/All'){
|
|
||||||
extractedLocalStorage('standardSearch/All','');
|
|
||||||
}else {
|
|
||||||
*/
|
|
||||||
extractedLocalStorage('home2','');
|
|
||||||
/*
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
// ssoLoginUrlDev 默认sso 地址
|
|
||||||
window.location.href = ssoLoginUrlDev
|
|
||||||
}
|
|
||||||
/*
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
|
||||||
}
|
|
||||||
}else if(webLoginType != null && webLoginType === 'dev'){
|
|
||||||
if (isMobile()) {
|
|
||||||
extractedVerify(token)
|
|
||||||
} else {
|
|
||||||
next('/Login')
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}else {
|
|
||||||
extractedVerify(token)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
function weixinClosePage() {
|
|
||||||
if (typeof WeixinJSBridge == "undefined") {
|
|
||||||
if (document.addEventListener) {
|
|
||||||
document.addEventListener('WeixinJSBridgeReady', weixin_ClosePage, false);
|
|
||||||
} else if (document.attachEvent) {
|
|
||||||
document.attachEvent('WeixinJSBridgeReady', weixin_ClosePage);
|
|
||||||
document.attachEvent('onWeixinJSBridgeReady', weixin_ClosePage);
|
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
weixin_ClosePage();
|
if (webLoginType === 'idm') {
|
||||||
}
|
if (isMobile()) {
|
||||||
}
|
loginInPhone().then(() => {
|
||||||
function weixin_ClosePage() {
|
|
||||||
WeixinJSBridge.call('closeWindow');
|
|
||||||
}
|
|
||||||
function extractedVerify() {
|
|
||||||
if (taskId !== undefined && taskId !== null && prcId !== undefined && prcId !== null) {
|
|
||||||
get_verify_by_instance({
|
|
||||||
taskId: taskId, // 任务id
|
|
||||||
pId: prcId // 流程实例
|
|
||||||
}).then(res => {
|
|
||||||
let hisCount = res.hisCount === undefined ? 0 : res.hisCount;
|
|
||||||
let commitStatus = res.commitStatus === undefined ? 0 : res.commitStatus;
|
|
||||||
let isNotFinished = res.isNotFinished === undefined ? 0 : res.isNotFinished;
|
|
||||||
if ((hisCount && hisCount > 0)) { // 业务系统 当前节点已完成
|
|
||||||
if(isMobile()){
|
|
||||||
next('/processedPage')
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
} else { // 业务系统 当前节点未完成
|
|
||||||
// commitStatus 大于0 表示当前节点存在未完成干活流程
|
|
||||||
// isNotFinished OA 系统显示接受任务 已置为已办
|
|
||||||
if (routerType && routerType === 'oa' &&isNotFinished && isNotFinished > 0 && commitStatus && commitStatus > 0) {
|
|
||||||
if(isMobile()) {
|
|
||||||
extractedIphone()
|
|
||||||
}else if (prcType === '3') {
|
|
||||||
//标准征求意见 接受节点 未完成 oa已办 跳转详情页面
|
|
||||||
if (path === '/bzzqyjStep3') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}else if (prcType === '5') {
|
|
||||||
if (path === '/xmpgStep4') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}else if (prcType === '2') {
|
|
||||||
if (path === '/bzdyStep3') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}else if (prcType === '9') {
|
|
||||||
if (path === '/bzjdStep3') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}else if (prcType === '6') {
|
|
||||||
if (path === '/xmpg2Step6') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}else if (prcType === '10') {
|
|
||||||
if (path === '/xmqdqrStep2') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}else if (prcType === '8') {
|
|
||||||
if (path === '/wfhxzgStep4') {
|
|
||||||
extracted2("processAcceptDetail","prcNum=" + prcNum + "&tabsName=AlreadyProcess");
|
|
||||||
}
|
|
||||||
}
|
|
||||||
} else {
|
|
||||||
if(isMobile()) {
|
|
||||||
extractedIphone()
|
|
||||||
}else{
|
|
||||||
extracted3()
|
|
||||||
}
|
|
||||||
|
|
||||||
}
|
|
||||||
}
|
|
||||||
function extracted(routerPath) {
|
|
||||||
if (token === null || token === '') {
|
|
||||||
extractedLocalStorage(routerPath,param);
|
|
||||||
// ssoLoginUrlDev 默认sso 地址
|
|
||||||
window.location.href = ssoLoginUrlDev
|
|
||||||
} else {
|
|
||||||
next({path: routerPath + '?' +param})
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
function extracted3() {
|
|
||||||
if (token === null || token === '') {
|
|
||||||
extractedLocalStorage(toName,param);
|
|
||||||
// ssoLoginUrlDev 默认sso 地址
|
|
||||||
window.location.href = ssoLoginUrlDev
|
|
||||||
} else {
|
|
||||||
next()
|
next()
|
||||||
closeLoading()
|
})
|
||||||
}
|
} else {
|
||||||
}
|
if (getCode()) {
|
||||||
|
loginInIdm(getCode()).then(() => {
|
||||||
function extractedIphone() {
|
const path = to.fullPath.replace('code=' + getCode(), '')
|
||||||
let paramPhone = 'taskIds=' + taskId + '&prcId=' + prcId + '&prcNum=' + prcNum +
|
next({ path })
|
||||||
'&taskAssignee=' + toName + '&prcName=' + prcName + '&prcType=' + prcType
|
})
|
||||||
let phoneRouter = 'phone' + toName.charAt(0).toUpperCase() + toName.slice(1)
|
|
||||||
console.log(phoneRouter);
|
|
||||||
next({path: phoneRouter + '?' + paramPhone})
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
function extracted2(routerPath,param2) {
|
|
||||||
if (token === null || token === '') {
|
|
||||||
extractedLocalStorage(routerPath,param2);
|
|
||||||
// ssoLoginUrlDev 默认sso 地址
|
|
||||||
window.location.href = ssoLoginUrlDev
|
|
||||||
} else {
|
} else {
|
||||||
next({path: routerPath + '?' + param2})
|
toIdmLoginPage(window.location.href)
|
||||||
closeLoading()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
function extracted4(routerPath,param4) {
|
}
|
||||||
if (token === null || token === '') {
|
if (webLoginType === 'dev') {
|
||||||
extractedLocalStorage(routerPath,param4);
|
if (isMobile()) {
|
||||||
// ssoLoginUrlDev 默认sso 地址
|
next('/login')
|
||||||
window.location.href = ssoLoginUrlDev
|
} else {
|
||||||
} else {
|
next('/login')
|
||||||
next({path: routerPath + '?' + param4})
|
|
||||||
closeLoading()
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
})
|
|
||||||
}
|
|
||||||
if(path === '/loginVerify'){
|
|
||||||
if(webLoginType != null && webLoginType === 'dev'){
|
|
||||||
next('/Login')
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
}
|
}
|
||||||
}else {
|
|
||||||
/*
|
|
||||||
if((fromName === undefined || fromName === null) && (path.indexOf("/standardSearch/All&userName") !== -1 || (path.indexOf("/standardSearch/All") !== -1 && userName !== undefined))) {
|
|
||||||
extractedLocalStorage("standardSearch/All",userName)
|
|
||||||
localStorage.setItem('external', "external")
|
|
||||||
next('/LoginVerifyNoEncryption')
|
|
||||||
closeLoading()
|
|
||||||
}else {
|
|
||||||
*/
|
|
||||||
next()
|
|
||||||
closeLoading()
|
|
||||||
/*
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
|
|
||||||
// 设置用户信息
|
|
||||||
function setUserInfo (userInfo) {
|
|
||||||
const timeStamp = new Date().getTime().toString()
|
|
||||||
const _USERINFO = JSON.parse(userInfo)
|
|
||||||
_USERINFO.userId = _USERINFO.userId || _USERINFO.usId
|
|
||||||
_USERINFO.userName = _USERINFO.userName || _USERINFO.uName
|
|
||||||
try {
|
|
||||||
localStorage.setItem('userInfo', JSON.stringify(_USERINFO))
|
|
||||||
localStorage.setItem('userInfoModifyTime', timeStamp)
|
|
||||||
} catch (e) {}
|
|
||||||
}
|
|
||||||
|
|
||||||
|
|
||||||
Vue.config.productionTip = false
|
Vue.config.productionTip = false
|
||||||
// jquery
|
// jquery
|
||||||
Vue.prototype.$ = $
|
Vue.prototype.$ = $
|
||||||
@@ -537,7 +136,7 @@ Vue.use(Contextmenu)
|
|||||||
Vue.use(animate)
|
Vue.use(animate)
|
||||||
Vue.use(vant)
|
Vue.use(vant)
|
||||||
|
|
||||||
// Vue.prototype.$echarts = echarts
|
Vue.prototype.$close = close
|
||||||
// 原生axios
|
// 原生axios
|
||||||
Vue.prototype.axios = axios
|
Vue.prototype.axios = axios
|
||||||
// 封装后的axios
|
// 封装后的axios
|
||||||
|
|||||||
@@ -1,26 +1,35 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="blankPage">
|
<div class="blankPage">
|
||||||
<van-icon name="clear" color="#dabb27" size="70"/>
|
<van-icon name="clear" color="#dabb27" size="70" />
|
||||||
<div style="font-size: 15px;margin-top: 20px;color: #8c939d">当前任务不支持手机端处理</div>
|
<div style="font-size: 15px;margin-top: 20px;color: #8c939d">
|
||||||
<el-button type="primary" size="small" style="margin-top: 30px;width: 270px;" @click="closeWindow()">返回</el-button>
|
当前任务不支持手机端处理
|
||||||
|
</div>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="small"
|
||||||
|
style="margin-top: 30px;width: 270px;"
|
||||||
|
@click="closeWindow()"
|
||||||
|
>
|
||||||
|
返回
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import Vue from 'vue';
|
import Vue from 'vue';
|
||||||
import { Icon } from 'vant';
|
import { Icon } from 'vant';
|
||||||
import hwh5 from '../../api/hwh5-cloudonline.js';
|
|
||||||
|
|
||||||
Vue.use(Icon);
|
Vue.use(Icon);
|
||||||
export default {
|
export default {
|
||||||
name: "blankPage",
|
name: 'BlankPage',
|
||||||
data() {
|
data () {
|
||||||
return {}
|
return {}
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
closeWindow(){
|
closeWindow () {
|
||||||
// hwh5.close()
|
// hwh5.close()
|
||||||
this.$router.go(-2)
|
// this.$router.go(-2)
|
||||||
|
this.$close()
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -17,7 +17,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane label="标准体系" name="standSystem" v-if="standSystem">
|
<el-tab-pane label="标准体系" name="standSystem" v-if="standSystem">
|
||||||
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0;">
|
<div style="position: absolute;top: 0;left: 0;right: 0;bottom: 0; overflow: auto">
|
||||||
<standSystem v-if="tabValue === 'standSystem'" ></standSystem>
|
<standSystem v-if="tabValue === 'standSystem'" ></standSystem>
|
||||||
</div>
|
</div>
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
|
|||||||
@@ -0,0 +1,167 @@
|
|||||||
|
<template>
|
||||||
|
<el-drawer
|
||||||
|
title="绑定角色"
|
||||||
|
:visible.sync="visible"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="800px"
|
||||||
|
>
|
||||||
|
<div class="drawer-content" style="padding-top: 20px">
|
||||||
|
<el-form
|
||||||
|
ref="form"
|
||||||
|
:model="form"
|
||||||
|
label-width="120px"
|
||||||
|
label-position="left"
|
||||||
|
>
|
||||||
|
<el-form-item label="部门名称">
|
||||||
|
{{ form.institutionName }}
|
||||||
|
</el-form-item>
|
||||||
|
<el-divider style="margin: 0" />
|
||||||
|
<el-form-item label="绑定角色" class="search-item">
|
||||||
|
<el-select
|
||||||
|
:value="getRoleIds"
|
||||||
|
placeholder="请选择"
|
||||||
|
multiple
|
||||||
|
size="medium"
|
||||||
|
@change="roleIdsChange"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in allRoleOptions"
|
||||||
|
:key="item.id"
|
||||||
|
:label="item.name"
|
||||||
|
:value="item.id"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<div class="drawer-footer">
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
icon="el-icon-close"
|
||||||
|
size="mini"
|
||||||
|
:loading="btnLoading"
|
||||||
|
@click="onCancel"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
class="common-button-primary"
|
||||||
|
icon="el-icon-check"
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
:loading="btnLoading"
|
||||||
|
@click="onSubmit"
|
||||||
|
>
|
||||||
|
确定
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<loading :loading="loading">加载中...</loading>
|
||||||
|
</el-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: 'SetRoleForDepartment',
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
allRoleOptions: [],
|
||||||
|
form: {
|
||||||
|
institutionId: '', // 部门id
|
||||||
|
institutionName: '',
|
||||||
|
roleIds: '', // 角色id
|
||||||
|
},
|
||||||
|
loading: false,
|
||||||
|
btnLoading: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
getRoleIds () {
|
||||||
|
if (!this.form.roleIds || this.form.roleIds === '') {
|
||||||
|
return []
|
||||||
|
} else {
|
||||||
|
return this.form.roleIds.split(',')
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
this.getAllRole()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
open (id) {
|
||||||
|
this.form.institutionId = id
|
||||||
|
this.form.roleIds = ''
|
||||||
|
this.form.institutionName = ''
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'loading'
|
||||||
|
}
|
||||||
|
const query = { institutionId: this.form.institutionId }
|
||||||
|
this.$http._getData('SarInstitution/institution/findInstitutionTree', query, config).then(res => {
|
||||||
|
if (res.ok && res.data) {
|
||||||
|
this.form.institutionName = res.data.institutionName
|
||||||
|
this.form.roleIds = res.data.selectedRoleIds.join(',') || ''
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.visible = true
|
||||||
|
},
|
||||||
|
getAllRole () {
|
||||||
|
this.$http._getData('sarRole/role/getAllRole').then(res => {
|
||||||
|
if (res.ok && res.data) {
|
||||||
|
this.allRoleOptions = res.data
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
roleIdsChange (val) {
|
||||||
|
this.form.roleIds = val.join(',')
|
||||||
|
},
|
||||||
|
onSubmit () {
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'btnLoading'
|
||||||
|
}
|
||||||
|
this.$http._getData('/SarInstitution/institution/setRoleToInstitutionAndUser', this.form, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.$emit('success')
|
||||||
|
this.onCancel()
|
||||||
|
}
|
||||||
|
})
|
||||||
|
console.log(this.form)
|
||||||
|
},
|
||||||
|
onCancel () {
|
||||||
|
this.visible = false
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.drawer-content {
|
||||||
|
padding: 0 19px;
|
||||||
|
overflow-y: auto;
|
||||||
|
flex: auto;
|
||||||
|
/deep/.el-form-item{
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
/deep/.el-select--medium{
|
||||||
|
width: 100%;
|
||||||
|
margin: 5px 0;
|
||||||
|
}
|
||||||
|
/deep/.el-divider{
|
||||||
|
margin: 0 !important;
|
||||||
|
}
|
||||||
|
/deep/ .el-select .el-tag {
|
||||||
|
//max-width: 110px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.drawer-footer {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0 20px;
|
||||||
|
height: 70px;
|
||||||
|
line-height: 69px;
|
||||||
|
border-top: 1px solid #e8e8e8;
|
||||||
|
text-align: right;
|
||||||
|
background: #fff;
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -5,76 +5,66 @@
|
|||||||
<div class="tree">
|
<div class="tree">
|
||||||
<!-- @keyup.enter.native="searchPeople"-->
|
<!-- @keyup.enter.native="searchPeople"-->
|
||||||
<el-input
|
<el-input
|
||||||
|
v-model="filterText"
|
||||||
class="filter-tree-input"
|
class="filter-tree-input"
|
||||||
placeholder="输入关键字进行过滤"
|
placeholder="输入关键字进行过滤"
|
||||||
v-model="filterText">
|
/>
|
||||||
</el-input>
|
|
||||||
<!-- <el-tree-->
|
|
||||||
<!-- node-key="id"-->
|
|
||||||
<!-- :data="treeData"-->
|
|
||||||
<!-- :props="defaultProps"-->
|
|
||||||
<!-- :default-checked-keys="nodeList"-->
|
|
||||||
<!-- :current-node-key="nodeKeyId"-->
|
|
||||||
<!-- highlight-current-->
|
|
||||||
<!-- check-strictly-->
|
|
||||||
<!-- :expand-on-click-node="false"-->
|
|
||||||
<!-- ref="tree"-->
|
|
||||||
<!-- :load="loadNode"-->
|
|
||||||
<!-- @node-click="handleNodeClick"-->
|
|
||||||
<!-- lazy>-->
|
|
||||||
<!-- </el-tree>-->
|
|
||||||
<el-tree
|
<el-tree
|
||||||
|
ref="tree"
|
||||||
:data="treeData"
|
:data="treeData"
|
||||||
:props="defaultProps"
|
:props="defaultProps"
|
||||||
:current-node-key="nodeKeyId"
|
:current-node-key="nodeKeyId"
|
||||||
node-key="id"
|
node-key="id"
|
||||||
:filter-node-method="filterNode"
|
:filter-node-method="filterNode"
|
||||||
highlight-current
|
highlight-current
|
||||||
ref="tree"
|
|
||||||
:expand-on-click-node="false"
|
:expand-on-click-node="false"
|
||||||
@node-click="handleNodeClick">
|
@node-click="handleNodeClick"
|
||||||
</el-tree>
|
/>
|
||||||
</div>
|
</div>
|
||||||
<div class="tree-collapse" @click="treeCollapse" :class="{ 'tree-close': sideClose }">
|
<div class="tree-collapse" :class="{ 'tree-close': sideClose }" @click="treeCollapse">
|
||||||
<!--切换折叠样式-->
|
<!--切换折叠样式-->
|
||||||
<i class="el-icon-arrow-left" v-if="sideClose === false"></i>
|
<i v-if="sideClose === false" class="el-icon-arrow-left" />
|
||||||
<i class="el-icon-arrow-right" v-if="sideClose === true"></i>
|
<i v-if="sideClose === true" class="el-icon-arrow-right" />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="tree-right">
|
<div class="tree-right">
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<!--搜索区域-->
|
<!--搜索区域-->
|
||||||
<div class="search-area">
|
<div class="search-area">
|
||||||
<el-form inline class="label-input-form" v-model="searchForm">
|
<el-form v-model="searchForm" inline class="label-input-form">
|
||||||
<el-form-item label="姓名" class="search-item">
|
<el-form-item label="姓名" class="search-item">
|
||||||
<el-input placeholder="根据姓名查询" clearable v-model="searchForm.uname">
|
<el-input v-model="searchForm.uname" placeholder="根据姓名查询" clearable />
|
||||||
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="邮箱" class="search-item">
|
<el-form-item label="邮箱" class="search-item">
|
||||||
<el-input placeholder="根据邮箱查询" clearable v-model="searchForm.email">
|
<el-input v-model="searchForm.email" placeholder="根据邮箱查询" clearable />
|
||||||
|
|
||||||
</el-input>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button type="primary" size="mini"
|
<el-button
|
||||||
class="common-button-primary" @click="getDatas('1')" v-btn-permission="'d285ee99b52abcd63d863f6783e350f0'">
|
v-btn-permission="'d285ee99b52abcd63d863f6783e350f0'"
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
class="common-button-primary"
|
||||||
|
@click="getDatas('1')"
|
||||||
|
>
|
||||||
查询
|
查询
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button size="mini" class="common-button-default" @click="clearAllSearch" v-btn-permission="'12a6b1f548cef7b152746c978fc32dbb'">
|
<el-button v-btn-permission="'12a6b1f548cef7b152746c978fc32dbb'" size="mini" class="common-button-default" @click="clearAllSearch">
|
||||||
清空
|
清空
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
|
|
||||||
<el-form-item>
|
<el-form-item>
|
||||||
<el-button size="mini" type="primary" @click="selectEdit" v-btn-permission="'786a941b255a4fe4d13b7e67f100a4e5'">
|
<el-button v-btn-permission="'786a941b255a4fe4d13b7e67f100a4e5'" size="mini" type="primary" @click="selectEdit">
|
||||||
批量配置角色
|
批量配置角色
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button size="mini" type="primary" @click="selectEditOfOrg" v-btn-permission="'786a941b255a4fe4d13b7e67f100a4e5'">
|
<el-button v-btn-permission="'786a941b255a4fe4d13b7e67f100a4e5'" size="mini" type="primary" @click="selectEditOfOrg">
|
||||||
根据部门批量配置角色
|
根据部门批量配置角色
|
||||||
</el-button>
|
</el-button>
|
||||||
|
<el-button v-btn-permission="'335a0e7929ac7e11887bec0d7efd0fef'" size="mini" type="primary" @click="setRoleForDepartment">
|
||||||
|
配置部门绑定角色
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
@@ -86,19 +76,21 @@
|
|||||||
style="width: 100%; flex: auto;"
|
style="width: 100%; flex: auto;"
|
||||||
class="drag-table"
|
class="drag-table"
|
||||||
height="100%"
|
height="100%"
|
||||||
@selection-change="selectedData"
|
|
||||||
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
:header-cell-style="{background: '#E8E8E8', color: '#333333', fontSize: '16px',
|
||||||
fontWeight: 'bold', height: '48px'}">
|
fontWeight: 'bold', height: '48px'}"
|
||||||
|
@selection-change="selectedData"
|
||||||
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
width="55"
|
width="55"
|
||||||
align="center"
|
align="center"
|
||||||
/>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="index"
|
type="index"
|
||||||
width="55"
|
width="55"
|
||||||
label="序号"
|
label="序号"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="{scope, column, $index}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
</template>
|
</template>
|
||||||
@@ -106,17 +98,18 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="account"
|
prop="account"
|
||||||
label="账号"
|
label="账号"
|
||||||
width="100px">
|
width="100px"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="uname"
|
prop="uname"
|
||||||
label="姓名"
|
label="姓名"
|
||||||
width="100px">
|
width="100px"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="sex"
|
prop="sex"
|
||||||
label="性别"
|
label="性别"
|
||||||
width="50px">
|
width="50px"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div v-if="scope.row.sex === '1'">男</div>
|
<div v-if="scope.row.sex === '1'">男</div>
|
||||||
<div v-if="scope.row.sex === '2'">女</div>
|
<div v-if="scope.row.sex === '2'">女</div>
|
||||||
@@ -125,54 +118,57 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="phone"
|
prop="phone"
|
||||||
label="电话"
|
label="电话"
|
||||||
width="170px">
|
width="170px"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="email"
|
prop="email"
|
||||||
label="邮箱"
|
label="邮箱"
|
||||||
width="170px">
|
width="170px"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="institutionName"
|
prop="institutionName"
|
||||||
label="所属部门">
|
label="所属部门"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-popover trigger="hover" placement="top">
|
<el-popover trigger="hover" placement="top">
|
||||||
{{ scope.row.institutionName }}
|
{{ scope.row.institutionName }}
|
||||||
<div slot="reference" class="name-wrapper">
|
<div slot="reference" class="name-wrapper">
|
||||||
<p v-if="!scope.row.institutionName || scope.row.institutionName.length<15">
|
<!-- <p v-if="!scope.row.institutionName || scope.row.institutionName.length<15">
|
||||||
{{ scope.row.institutionName }}
|
{{ scope.row.institutionName }}
|
||||||
</p>
|
</p>
|
||||||
<p v-else> {{ scope.row.institutionName.substring(0, 15) }}...</p>
|
<p v-else> {{ scope.row.institutionName.substring(0, 15) }}...</p>-->
|
||||||
|
<p> {{ scope.row.institutionName }}</p>
|
||||||
</div>
|
</div>
|
||||||
</el-popover>
|
</el-popover>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="roles"
|
prop="roles"
|
||||||
label="角色"
|
label="角色"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
{{getRoleName(scope.row.roles)}}
|
{{ scope.row.roles }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<!-- <el-table-column-->
|
<!-- <el-table-column-->
|
||||||
<!-- prop="NameList"-->
|
<!-- prop="NameList"-->
|
||||||
<!-- label="所属岗位">-->
|
<!-- label="所属岗位">-->
|
||||||
<!-- <template slot-scope="scope">-->
|
<!-- <template slot-scope="scope">-->
|
||||||
<!-- <el-popover trigger="hover" placement="top">-->
|
<!-- <el-popover trigger="hover" placement="top">-->
|
||||||
<!-- {{ scope.row.NameList }}-->
|
<!-- {{ scope.row.NameList }}-->
|
||||||
<!-- <div slot="reference" class="name-wrapper">-->
|
<!-- <div slot="reference" class="name-wrapper">-->
|
||||||
<!-- <p v-if="!scope.row.institutionName ||scope.row.NameList.length<15">-->
|
<!-- <p v-if="!scope.row.institutionName ||scope.row.NameList.length<15">-->
|
||||||
<!-- {{ scope.row.NameList }}-->
|
<!-- {{ scope.row.NameList }}-->
|
||||||
<!-- </p>-->
|
<!-- </p>-->
|
||||||
<!-- <p v-else> {{ scope.row.NameList.substring(0, 15) }}...</p>-->
|
<!-- <p v-else> {{ scope.row.NameList.substring(0, 15) }}...</p>-->
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<!-- </el-popover>-->
|
<!-- </el-popover>-->
|
||||||
<!-- </template>-->
|
<!-- </template>-->
|
||||||
<!-- </el-table-column>-->
|
<!-- </el-table-column>-->
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="状态"
|
label="状态"
|
||||||
width="100px">
|
width="100px"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div v-if="scope.row.disableFlag === '1'">已禁用</div>
|
<div v-if="scope.row.disableFlag === '1'">已禁用</div>
|
||||||
<div v-else>已启用</div>
|
<div v-else>已启用</div>
|
||||||
@@ -180,16 +176,17 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="操作"
|
label="操作"
|
||||||
width="50px">
|
width="50px"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<div @click.stop style="display: inline-block">
|
<div style="display: inline-block" @click.stop>
|
||||||
<el-dropdown trigger="click" @command="handleCommand">
|
<el-dropdown trigger="click" @command="handleCommand">
|
||||||
<i class="iconfont"></i>
|
<i class="iconfont"></i>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item v-btn-permission="'30db3b395deb5004266cd65d302c2776'" v-if="scope.row.disableFlag === '1'" :command="[scope.row, '启用']" >
|
<el-dropdown-item v-if="scope.row.disableFlag === '1'" v-btn-permission="'30db3b395deb5004266cd65d302c2776'" :command="[scope.row, '启用']">
|
||||||
启用
|
启用
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<el-dropdown-item v-btn-permission="'30db3b395deb5004266cd65d302c2776'" v-if="scope.row.disableFlag === '0'" :command="[scope.row, '禁用']">
|
<el-dropdown-item v-if="scope.row.disableFlag === '0'" v-btn-permission="'30db3b395deb5004266cd65d302c2776'" :command="[scope.row, '禁用']">
|
||||||
禁用
|
禁用
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
|
|
||||||
@@ -204,7 +201,13 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
</div>
|
</div>
|
||||||
<loading :loading="Loading">加载中...</loading>
|
<loading :loading="Loading">加载中...</loading>
|
||||||
<pagination :page="page" :total="total" :pageSize="pageSize" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
<pagination
|
||||||
|
:page="page"
|
||||||
|
:total="total"
|
||||||
|
:pageSize="pageSize"
|
||||||
|
@pageChange="pageChange"
|
||||||
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
<el-drawer
|
<el-drawer
|
||||||
class="postPage"
|
class="postPage"
|
||||||
@@ -215,29 +218,42 @@
|
|||||||
@close="resetFormPost"
|
@close="resetFormPost"
|
||||||
>
|
>
|
||||||
<el-form ref="" :model="sarPost" inline>
|
<el-form ref="" :model="sarPost" inline>
|
||||||
<el-form-item class="search-item" style="padding-left: 25px">
|
<el-form-item class="search-item" style="padding-left: 25px">
|
||||||
<el-input v-model="sarPost.name"
|
<el-input
|
||||||
size="small"
|
v-model="sarPost.name"
|
||||||
placeholder="角色名称查找"
|
size="small"
|
||||||
clearable></el-input>
|
placeholder="角色名称查找"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="" class="search-item btn-box">
|
<el-form-item label="" class="search-item btn-box">
|
||||||
<el-button class="common-button-primary" type="primary" size="mini" @click="searchPostName"
|
<el-button
|
||||||
v-btn-permission="''">查询
|
v-btn-permission="''"
|
||||||
|
class="common-button-primary"
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
@click="searchPostName"
|
||||||
|
>
|
||||||
|
查询
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="" class="search-item btn-box">
|
<el-form-item label="" class="search-item btn-box">
|
||||||
<el-button class="common-button-default" @click="resetSelect" size="mini"
|
<el-button
|
||||||
v-btn-permission="">清空
|
v-btn-permission=""
|
||||||
|
class="common-button-default"
|
||||||
|
size="mini"
|
||||||
|
@click="resetSelect"
|
||||||
|
>
|
||||||
|
清空
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<el-tree
|
<el-tree
|
||||||
|
v-if="modalPost"
|
||||||
ref="tree2"
|
ref="tree2"
|
||||||
node-key="id"
|
node-key="id"
|
||||||
class="filter-tree"
|
class="filter-tree"
|
||||||
style="height: 100%; overflow: auto;"
|
style="height: 100%; overflow: auto;"
|
||||||
v-if="modalPost"
|
|
||||||
:props="props"
|
:props="props"
|
||||||
:data="postList"
|
:data="postList"
|
||||||
:filter-node-method="filterNode"
|
:filter-node-method="filterNode"
|
||||||
@@ -246,9 +262,16 @@
|
|||||||
check-strictly
|
check-strictly
|
||||||
default-expand-all
|
default-expand-all
|
||||||
:expand-on-click-node="false"
|
:expand-on-click-node="false"
|
||||||
show-checkbox>
|
show-checkbox
|
||||||
</el-tree>
|
/>
|
||||||
<pagination :auto-size="true" :page="page1" :pageSize="pageSize1" :total="total2" @pageChange="pageChange2" @pageSizeChange="pageSizeChange2"></pagination>
|
<pagination
|
||||||
|
:auto-size="true"
|
||||||
|
:page="page1"
|
||||||
|
:pageSize="pageSize1"
|
||||||
|
:total="total2"
|
||||||
|
@pageChange="pageChange2"
|
||||||
|
@pageSizeChange="pageSizeChange2"
|
||||||
|
/>
|
||||||
<div id="roleFormButton" class="demo-drawer-footer">
|
<div id="roleFormButton" class="demo-drawer-footer">
|
||||||
<el-button
|
<el-button
|
||||||
size="mini"
|
size="mini"
|
||||||
@@ -257,26 +280,32 @@
|
|||||||
type="primary"
|
type="primary"
|
||||||
:loading="butionLoading"
|
:loading="butionLoading"
|
||||||
@click="PostSubmit"
|
@click="PostSubmit"
|
||||||
>确定
|
>
|
||||||
|
确定
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="resetFormPost">取消</el-button>
|
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="resetFormPost">取消</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
<loading style="z-index: 2099;" :loading="treeLoading">导入中...</loading>
|
<loading style="z-index: 2099;" :loading="treeLoading">导入中...</loading>
|
||||||
|
<SetRoleForDepartment ref="SetRoleForDepartmentRef" @success="getDatas('1')" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import SetRoleForDepartment from '../components/SetRoleForDepartment'
|
||||||
export default {
|
export default {
|
||||||
name: 'mechanism',
|
name: 'Mechanism',
|
||||||
data() {
|
components: {
|
||||||
|
SetRoleForDepartment
|
||||||
|
},
|
||||||
|
data () {
|
||||||
return {
|
return {
|
||||||
formLoading: true,
|
formLoading: true,
|
||||||
peopleType: '', //1为树结构 2 为全机构
|
peopleType: '', // 1为树结构 2 为全机构
|
||||||
nodeKeyId: '',
|
nodeKeyId: '',
|
||||||
searchForm: {
|
searchForm: {
|
||||||
uname: "",
|
uname: '',
|
||||||
email: ""
|
email: ''
|
||||||
},
|
},
|
||||||
userId: '',
|
userId: '',
|
||||||
postList: [],
|
postList: [],
|
||||||
@@ -287,7 +316,7 @@ export default {
|
|||||||
nodeList: [],
|
nodeList: [],
|
||||||
modalPost: false,
|
modalPost: false,
|
||||||
sarPost: {
|
sarPost: {
|
||||||
name: "", // 角色名称
|
name: '', // 角色名称
|
||||||
},
|
},
|
||||||
filterText: '', // 树结构检索条件
|
filterText: '', // 树结构检索条件
|
||||||
defaultProps: {
|
defaultProps: {
|
||||||
@@ -299,8 +328,8 @@ export default {
|
|||||||
total: 0,
|
total: 0,
|
||||||
total2: 0,
|
total2: 0,
|
||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
page1:1,
|
page1: 1,
|
||||||
pageSize1:20,
|
pageSize1: 20,
|
||||||
sideClose: false,
|
sideClose: false,
|
||||||
data: [], // table数据
|
data: [], // table数据
|
||||||
treeLoading: false,
|
treeLoading: false,
|
||||||
@@ -309,31 +338,46 @@ export default {
|
|||||||
id: '',
|
id: '',
|
||||||
// 批量配置角色勾选暂存
|
// 批量配置角色勾选暂存
|
||||||
manageData: [],
|
manageData: [],
|
||||||
configOrgManage:false,
|
configOrgManage: false,
|
||||||
drawerTitle: '配置角色'
|
drawerTitle: '配置角色'
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
computed: {},
|
||||||
|
watch: {
|
||||||
|
filterText (val) {
|
||||||
|
this.$refs.tree.filter(val);
|
||||||
|
},
|
||||||
|
},
|
||||||
|
mounted () {
|
||||||
|
// 获取组织结构树
|
||||||
|
this.getTree()
|
||||||
|
this.getTree2()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getRoleName(roles){
|
// 给部门所有人员配置角色·
|
||||||
let names=roles.map(item=>{
|
setRoleForDepartment () {
|
||||||
return item.name
|
this.$refs.SetRoleForDepartmentRef.open(this.id)
|
||||||
})
|
},
|
||||||
|
getRoleName (roles) {
|
||||||
|
const names = roles.map(item => {
|
||||||
|
return item.name
|
||||||
|
})
|
||||||
return names.join(',')
|
return names.join(',')
|
||||||
},
|
},
|
||||||
clearAllSearch() {
|
clearAllSearch () {
|
||||||
this.searchForm = {
|
this.searchForm = {
|
||||||
uname: "",
|
uname: '',
|
||||||
email: ""
|
email: ''
|
||||||
}
|
}
|
||||||
this.page = 1
|
this.page = 1
|
||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
resetFormPost() {
|
resetFormPost () {
|
||||||
this.modalPost = false
|
this.modalPost = false
|
||||||
this.postList = []
|
this.postList = []
|
||||||
this.page1 = 1
|
this.page1 = 1
|
||||||
},
|
},
|
||||||
PostSubmit() {
|
PostSubmit () {
|
||||||
this.butionLoading = true
|
this.butionLoading = true
|
||||||
if (this.drawerTitle === '配置角色') {
|
if (this.drawerTitle === '配置角色') {
|
||||||
this.$http.postData('sarUser/user/role', {
|
this.$http.postData('sarUser/user/role', {
|
||||||
@@ -347,8 +391,8 @@ export default {
|
|||||||
this.getData()
|
this.getData()
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
} else if(this.configOrgManage){
|
} else if(this.configOrgManage) {
|
||||||
//批量配置角色信息
|
// 批量配置角色信息
|
||||||
this.$http.postData('sarUser/user/roleBatchByOrgId', {
|
this.$http.postData('sarUser/user/roleBatchByOrgId', {
|
||||||
roleIds: this.$refs.tree2.getCheckedKeys(),
|
roleIds: this.$refs.tree2.getCheckedKeys(),
|
||||||
orgId: this.id
|
orgId: this.id
|
||||||
@@ -373,18 +417,17 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
searchPostName() {
|
searchPostName () {
|
||||||
this.page = 1;
|
this.page = 1;
|
||||||
this.getTree2();
|
this.getTree2();
|
||||||
this.sarPost.name = "";
|
this.sarPost.name = '';
|
||||||
}, // 查询
|
}, // 查询
|
||||||
resetSelect() {
|
resetSelect () {
|
||||||
this.sarPost.name = "";
|
this.sarPost.name = '';
|
||||||
this.getTree2();
|
this.getTree2();
|
||||||
}, // 外层清空条件查询
|
}, // 外层清空条件查询
|
||||||
handleCommand(command) {
|
handleCommand (command) {
|
||||||
switch (command[1]) {
|
switch (command[1]) {
|
||||||
case '启用':
|
case '启用':
|
||||||
this.disableFlagEdit(command[0], 0)
|
this.disableFlagEdit(command[0], 0)
|
||||||
@@ -398,7 +441,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|
||||||
getTree2() {
|
getTree2 () {
|
||||||
this.$http.get('sarRole/role/allPage', {
|
this.$http.get('sarRole/role/allPage', {
|
||||||
current: this.page1,
|
current: this.page1,
|
||||||
pageSize: this.pageSize1,
|
pageSize: this.pageSize1,
|
||||||
@@ -410,10 +453,10 @@ export default {
|
|||||||
this.total2 = res.data.total
|
this.total2 = res.data.total
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
postsConfigure(row) {
|
postsConfigure (row) {
|
||||||
this.configOrgManage = false
|
this.configOrgManage = false
|
||||||
this.drawerTitle = '配置角色'
|
this.drawerTitle = '配置角色'
|
||||||
var arr = []
|
const arr = []
|
||||||
this.userId = row.userId
|
this.userId = row.userId
|
||||||
row.positions.forEach((item) => {
|
row.positions.forEach((item) => {
|
||||||
arr.push(item.id)
|
arr.push(item.id)
|
||||||
@@ -422,8 +465,8 @@ export default {
|
|||||||
this.modalPost = true
|
this.modalPost = true
|
||||||
this.getTree2()
|
this.getTree2()
|
||||||
},
|
},
|
||||||
disableFlagEdit(row, type) {
|
disableFlagEdit (row, type) {
|
||||||
let json = {}
|
const json = {}
|
||||||
json.userId = row.userId
|
json.userId = row.userId
|
||||||
json.disableFlag = type
|
json.disableFlag = type
|
||||||
this.$http.postData('sarUser/user/disable', json, {},
|
this.$http.postData('sarUser/user/disable', json, {},
|
||||||
@@ -438,14 +481,14 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
treeCollapse() {
|
treeCollapse () {
|
||||||
this.sideClose = !this.sideClose
|
this.sideClose = !this.sideClose
|
||||||
},
|
},
|
||||||
filterNode(value, data) {
|
filterNode (value, data) {
|
||||||
if (!value) return true;
|
if (!value) return true;
|
||||||
return data.name.indexOf(value) !== -1;
|
return data.name.indexOf(value) !== -1;
|
||||||
},
|
},
|
||||||
handleNodeClick(data) {
|
handleNodeClick (data) {
|
||||||
this.id = data.id
|
this.id = data.id
|
||||||
this.page = 1
|
this.page = 1
|
||||||
this.getData()
|
this.getData()
|
||||||
@@ -485,7 +528,7 @@ export default {
|
|||||||
// }, e => {
|
// }, e => {
|
||||||
// })
|
// })
|
||||||
// },
|
// },
|
||||||
getTree() {
|
getTree () {
|
||||||
this.$http.get('SarInstitution/institution', {}, {
|
this.$http.get('SarInstitution/institution', {}, {
|
||||||
_this: this,
|
_this: this,
|
||||||
loading: 'treeLoading'
|
loading: 'treeLoading'
|
||||||
@@ -501,7 +544,7 @@ export default {
|
|||||||
console.log(e);
|
console.log(e);
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getDatas(type) {
|
getDatas (type) {
|
||||||
if (type === '1') {
|
if (type === '1') {
|
||||||
this.page = 1
|
this.page = 1
|
||||||
}
|
}
|
||||||
@@ -530,7 +573,7 @@ export default {
|
|||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getData() {
|
getData () {
|
||||||
this.peopleType = 1;
|
this.peopleType = 1;
|
||||||
this.$http.post('SarInstitution/institution/userUnderInstitution', {
|
this.$http.post('SarInstitution/institution/userUnderInstitution', {
|
||||||
current: this.page,
|
current: this.page,
|
||||||
@@ -556,42 +599,42 @@ export default {
|
|||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
if(this.peopleType === 1){
|
if(this.peopleType === 1) {
|
||||||
this.getData()
|
this.getData()
|
||||||
}else{
|
}else{
|
||||||
this.getDatas()
|
this.getDatas()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = pageSize
|
this.pageSize = pageSize
|
||||||
if(this.peopleType === 1){
|
if(this.peopleType === 1) {
|
||||||
this.getData()
|
this.getData()
|
||||||
}else{
|
}else{
|
||||||
this.getDatas()
|
this.getDatas()
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
pageChange2(page1) {
|
pageChange2 (page1) {
|
||||||
this.page1 = page1
|
this.page1 = page1
|
||||||
this.getTree2()
|
this.getTree2()
|
||||||
},
|
},
|
||||||
pageSizeChange2(pageSize1) {
|
pageSizeChange2 (pageSize1) {
|
||||||
this.pageSize1 = pageSize1
|
this.pageSize1 = pageSize1
|
||||||
this.getTree2()
|
this.getTree2()
|
||||||
},
|
},
|
||||||
|
|
||||||
/** 批量编辑角色的勾选数据 */
|
/** 批量编辑角色的勾选数据 */
|
||||||
selectedData(val) {
|
selectedData (val) {
|
||||||
this.manageData = val
|
this.manageData = val
|
||||||
},
|
},
|
||||||
|
|
||||||
selectEdit() {
|
selectEdit () {
|
||||||
this.configOrgManage = false
|
this.configOrgManage = false
|
||||||
this.getTree2()
|
this.getTree2()
|
||||||
if(this.manageData.length){
|
if(this.manageData.length) {
|
||||||
this.userId = []
|
this.userId = []
|
||||||
this.manageData.forEach(item=>{
|
this.manageData.forEach(item => {
|
||||||
this.userId.push(item.userId)
|
this.userId.push(item.userId)
|
||||||
})
|
})
|
||||||
this.drawerTitle = '批量配置角色'
|
this.drawerTitle = '批量配置角色'
|
||||||
@@ -600,24 +643,13 @@ export default {
|
|||||||
this.$message.warning('请选择需要批量配置的角色')
|
this.$message.warning('请选择需要批量配置的角色')
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
selectEditOfOrg() {
|
selectEditOfOrg () {
|
||||||
this.configOrgManage = true
|
this.configOrgManage = true
|
||||||
this.getTree2()
|
this.getTree2()
|
||||||
this.drawerTitle = '批量配置角色'
|
this.drawerTitle = '批量配置角色'
|
||||||
this.modalPost = true
|
this.modalPost = true
|
||||||
},
|
},
|
||||||
|
|
||||||
},
|
|
||||||
computed: {},
|
|
||||||
watch: {
|
|
||||||
filterText(val) {
|
|
||||||
this.$refs.tree.filter(val);
|
|
||||||
},
|
|
||||||
},
|
|
||||||
mounted() {
|
|
||||||
// 获取组织结构树
|
|
||||||
this.getTree()
|
|
||||||
this.getTree2()
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -728,5 +760,4 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -362,7 +362,7 @@
|
|||||||
tooltip-effect="dark"
|
tooltip-effect="dark"
|
||||||
style="width: 100%;"
|
style="width: 100%;"
|
||||||
border
|
border
|
||||||
height="100%"
|
height="93%"
|
||||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold', height: '48px'}">
|
fontWeight: 'bold', fontFamily: 'MicrosoftYaHei-Bold', height: '48px'}">
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@@ -917,6 +917,7 @@ export default {
|
|||||||
res.data.forEach(item => {
|
res.data.forEach(item => {
|
||||||
if (item.id && item.id == 'asdfadf') {
|
if (item.id && item.id == 'asdfadf') {
|
||||||
item.disabled = true;
|
item.disabled = true;
|
||||||
|
this.nodeList.push(item.id)
|
||||||
// if (item.childNodes && item.childNodes.length !== 0) {
|
// if (item.childNodes && item.childNodes.length !== 0) {
|
||||||
// this.addAttr(item.childNodes);
|
// this.addAttr(item.childNodes);
|
||||||
// }
|
// }
|
||||||
|
|||||||
@@ -390,12 +390,13 @@ export default {
|
|||||||
},
|
},
|
||||||
goNuwPage (item) {
|
goNuwPage (item) {
|
||||||
this.$store.commit('setDetailMap', this.$route.path)
|
this.$store.commit('setDetailMap', this.$route.path)
|
||||||
|
console.log(item);
|
||||||
const params = {
|
const params = {
|
||||||
id: item.id,
|
id: item.id,
|
||||||
dictionaryName: item.dictionaryName,
|
dictionaryName: item.dictionaryName,
|
||||||
dictionType: item.dictionType,
|
dictionType: item.dictionType,
|
||||||
isRelate: item.isRelate,
|
isRelate: item.isRelate,
|
||||||
relateDicId: item.relateDicId
|
relateDicId: item.relateDicId || '1'
|
||||||
}
|
}
|
||||||
if(item.dictionType && item.dictionType === 'TREE'){
|
if(item.dictionType && item.dictionType === 'TREE'){
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
@@ -408,7 +409,6 @@ export default {
|
|||||||
params: params
|
params: params
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
handleSelectone (data) {
|
handleSelectone (data) {
|
||||||
this.selectedList = []
|
this.selectedList = []
|
||||||
|
|||||||
@@ -8,13 +8,16 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>基础信息</span>
|
<i class="icon-modular-title" /><span>基础信息</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="modular-header-btn">
|
<div class="modular-header-btn">
|
||||||
<el-button class="relation-btn"
|
<el-button
|
||||||
icon="icon-relation"
|
class="relation-btn"
|
||||||
@click.stop="relateEvent()"
|
icon="icon-relation"
|
||||||
>更新记录</el-button>
|
@click.stop="relateEvent()"
|
||||||
|
>
|
||||||
|
更新记录
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -29,10 +32,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">会议纪要</label>
|
<label style=" margin-right: 132px;line-height: 44px">会议纪要</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.meetingMinutesList && form.meetingMinutesList.length > 0">
|
<template v-if="form.meetingMinutesList && form.meetingMinutesList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.meetingMinutesList">
|
<p v-for="file in form.meetingMinutesList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -45,7 +48,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>会议分类</span>
|
<i class="icon-modular-title" /><span>会议分类</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -58,7 +61,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>会议议题</span>
|
<i class="icon-modular-title" /><span>会议议题{{ index + 1 }}</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -68,10 +71,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">议题材料</label>
|
<label style=" margin-right: 132px;line-height: 44px">议题材料</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="item.agendaMaterialsList && item.agendaMaterialsList.length > 0">
|
<template v-if="item.agendaMaterialsList && item.agendaMaterialsList.length > 0">
|
||||||
<p class="file-item" v-for="file in item.agendaMaterialsList">
|
<p v-for="file in item.agendaMaterialsList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -87,19 +90,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 更新LOG -->
|
<!-- 更新LOG -->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
title="更新记录"
|
title="更新记录"
|
||||||
:visible.sync="relateDialog"
|
:visible.sync="relateDialog"
|
||||||
width="60%"
|
width="60%"
|
||||||
class="relateClass"
|
class="relateClass"
|
||||||
:before-close="relateDialogClose">
|
:before-close="relateDialogClose"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in relateNowList"
|
v-for="(item, index) in relateNowList"
|
||||||
:key="index"
|
v-if="relateNowList"
|
||||||
v-if="relateNowList"
|
:key="index"
|
||||||
style="margin-bottom: 10px;line-height: 20px"
|
style="margin-bottom: 10px;line-height: 20px"
|
||||||
>
|
>
|
||||||
{{index+1}}. {{item.creationUserName}} {{item.creationTime}} {{item.content}}
|
{{ index+1 }}. {{ item.creationUserName }} {{ item.creationTime }} {{ item.content }}
|
||||||
<div v-if="relateNowList.length >1"><el-divider></el-divider></div>
|
<div v-if="relateNowList.length >1"><el-divider /></div>
|
||||||
</div>
|
</div>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
||||||
@@ -110,10 +114,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getBusStandFileByAttId } from 'api/process'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "meetingDetail",
|
name: 'MeetingDetail',
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
url: {
|
url: {
|
||||||
@@ -121,14 +123,14 @@ export default {
|
|||||||
getLogList: 'lawss/sarUpdLog/getLogList', // 更新记录
|
getLogList: 'lawss/sarUpdLog/getLogList', // 更新记录
|
||||||
},
|
},
|
||||||
form: {},
|
form: {},
|
||||||
activeNames: ['1', '2'],
|
activeNames: [ '1', '2' ],
|
||||||
// 更新记录
|
// 更新记录
|
||||||
relateDialog: false,
|
relateDialog: false,
|
||||||
relateNowList: [],
|
relateNowList: [],
|
||||||
loading: false
|
loading: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -141,7 +143,7 @@ export default {
|
|||||||
res.data.meetingTopicList.forEach((item, index) => {
|
res.data.meetingTopicList.forEach((item, index) => {
|
||||||
activeNames.push(index)
|
activeNames.push(index)
|
||||||
})
|
})
|
||||||
this.activeNames = [...this.activeNames, ...activeNames]
|
this.activeNames = [ ...this.activeNames, ...activeNames ]
|
||||||
}
|
}
|
||||||
this.$set(this, 'form', res.data)
|
this.$set(this, 'form', res.data)
|
||||||
}
|
}
|
||||||
@@ -158,9 +160,9 @@ export default {
|
|||||||
if (res.ok && res.data.length > 0) {
|
if (res.ok && res.data.length > 0) {
|
||||||
this.relateDialog = true
|
this.relateDialog = true
|
||||||
const relateList = res.data
|
const relateList = res.data
|
||||||
var i
|
let i
|
||||||
for (i = 0; i < relateList.length; i++) {
|
for (i = 0; i < relateList.length; i++) {
|
||||||
let obj = {creationUserName: '', creationTime: '', content: ''}
|
const obj = { creationUserName: '', creationTime: '', content: '' }
|
||||||
obj.creationUserName = relateList[i].creationUserName
|
obj.creationUserName = relateList[i].creationUserName
|
||||||
obj.creationTime = relateList[i].creationTime
|
obj.creationTime = relateList[i].creationTime
|
||||||
obj.content = relateList[i].content
|
obj.content = relateList[i].content
|
||||||
@@ -193,21 +195,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getBusStandFileByAttId(attId) {
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
getBusStandFileByAttId({
|
|
||||||
attId
|
|
||||||
}).then(res => {
|
|
||||||
if (res.ok) {
|
|
||||||
resolve(res.data)
|
|
||||||
} else {
|
|
||||||
reject()
|
|
||||||
}
|
|
||||||
}).catch(e => {
|
|
||||||
reject(e)
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
openFileInPdf (attId, fileName) {
|
openFileInPdf (attId, fileName) {
|
||||||
this.$preview(attId)
|
this.$preview(attId)
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
<!-- eslint-disable -->
|
||||||
<!--企标详情页-->
|
<!--企标详情页-->
|
||||||
<template>
|
<template>
|
||||||
<div class="other-standard-details v-class" :class="{'hidden': !isMoreAwayBtn}">
|
<div class="other-standard-details v-class" :class="{'hidden': !isMoreAwayBtn}">
|
||||||
@@ -5,7 +6,7 @@
|
|||||||
<div class="details-header">
|
<div class="details-header">
|
||||||
<span>{{sarStandardsInfoEO.standCode}} 《{{sarStandardsInfoEO.standName ? sarStandardsInfoEO.standName : sarStandardsInfoEO.standEnName}}》 企标详情</span>
|
<span>{{sarStandardsInfoEO.standCode}} 《{{sarStandardsInfoEO.standName ? sarStandardsInfoEO.standName : sarStandardsInfoEO.standEnName}}》 企标详情</span>
|
||||||
<!--<b style="float:right;font-size: 25px;color: #ff9900">{{ ((qualityCommentScore*2*0.9)+(dynamicCommentScore*2*0.1)).toFixed(1) }}</b>-->
|
<!--<b style="float:right;font-size: 25px;color: #ff9900">{{ ((qualityCommentScore*2*0.9)+(dynamicCommentScore*2*0.1)).toFixed(1) }}</b>-->
|
||||||
<b style="float:right;font-size: 25px;color: #ff9900">{{ score }}</b>
|
<b v-show="score !== '0.00'" style="float:right;font-size: 25px;color: #ff9900;">{{ score }}</b>
|
||||||
<!-- 之前的,先注掉-->
|
<!-- 之前的,先注掉-->
|
||||||
<!-- <span>{{sarStandardsInfoEO.standCode}}-{{sarStandardsInfoEO.standYear}} 《{{sarStandardsInfoEO.standName}}》 企标详情</span>-->
|
<!-- <span>{{sarStandardsInfoEO.standCode}}-{{sarStandardsInfoEO.standYear}} 《{{sarStandardsInfoEO.standName}}》 企标详情</span>-->
|
||||||
</div>
|
</div>
|
||||||
@@ -444,7 +445,7 @@
|
|||||||
<p class="half">
|
<p class="half">
|
||||||
<label style=" margin-right: 156px;"
|
<label style=" margin-right: 156px;"
|
||||||
title="“修订中”为现行有效版本;“已修订”标准的有效性需根据实际实施情况判定"
|
title="“修订中”为现行有效版本;“已修订”标准的有效性需根据实际实施情况判定"
|
||||||
>文本状态</label><span>{{ sarStandardsInfoEO.textStatusBussShow || '-' }}</span>
|
>标准状态</label><span>{{ sarStandardsInfoEO.textStatusBussShow || '-' }}</span>
|
||||||
</p>
|
</p>
|
||||||
<p class="half"><label style=" margin-right: 157px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
||||||
<p class="half" style=""><label style=" margin-right: 122px;">企标实施日期</label><span>{{ sarStandardsInfoEO.putTime || '-' }}</span></p>
|
<p class="half" style=""><label style=" margin-right: 122px;">企标实施日期</label><span>{{ sarStandardsInfoEO.putTime || '-' }}</span></p>
|
||||||
@@ -1341,6 +1342,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
/* eslint-disable */
|
||||||
import PutQuestionButton from '@/components/PutQuestionButton'
|
import PutQuestionButton from '@/components/PutQuestionButton'
|
||||||
import {dateFormat} from '../../../common/date'
|
import {dateFormat} from '../../../common/date'
|
||||||
import { getBusStandFileByAttId } from 'api/process'
|
import { getBusStandFileByAttId } from 'api/process'
|
||||||
@@ -1371,6 +1373,7 @@ export default {
|
|||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
score: 0,
|
score: 0,
|
||||||
|
XGLC:'',
|
||||||
externalStatus:'',
|
externalStatus:'',
|
||||||
QFTP: false,
|
QFTP: false,
|
||||||
textOptions: [],
|
textOptions: [],
|
||||||
@@ -1670,7 +1673,7 @@ export default {
|
|||||||
getScore () {
|
getScore () {
|
||||||
//查询动态评价总平均分和质量评价总平均分
|
//查询动态评价总平均分和质量评价总平均分
|
||||||
let standId = this.$route.params.id
|
let standId = this.$route.params.id
|
||||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getScore', {lawId:standId}, {
|
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getScore', {lawId:standId,prcNum:this.XGLC}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
@@ -2488,6 +2491,12 @@ export default {
|
|||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.sarStandardsInfoEO = res.data || {}
|
this.sarStandardsInfoEO = res.data || {}
|
||||||
|
if (res.data.attrInfoMap && res.data.attrInfoMap.XGLC){
|
||||||
|
let XGLCData = res.data.attrInfoMap.XGLC.split(',')
|
||||||
|
this.XGLC = XGLCData[XGLCData.length - 1]
|
||||||
|
}else{
|
||||||
|
this.XGLC = ''
|
||||||
|
}
|
||||||
if (this.sarStandardsInfoEO.standCode && this.sarStandardsInfoEO.standCode.indexOf('Q/QCBFC') !== -1) {
|
if (this.sarStandardsInfoEO.standCode && this.sarStandardsInfoEO.standCode.indexOf('Q/QCBFC') !== -1) {
|
||||||
this.QFTP = true
|
this.QFTP = true
|
||||||
}
|
}
|
||||||
@@ -2590,6 +2599,12 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
openFileInPdf (attId, oldFileName) {
|
openFileInPdf (attId, oldFileName) {
|
||||||
|
if (this.$hasPermission('43ae63abc1b64e6bd5cf3bb75b423bc2')) {
|
||||||
|
this.$preview(attId)
|
||||||
|
} else {
|
||||||
|
this.$message.error('没有在线预览文档权限!')
|
||||||
|
}
|
||||||
|
/*
|
||||||
// 判断是否是图片格式,图片格式不预览,直接下载
|
// 判断是否是图片格式,图片格式不预览,直接下载
|
||||||
let index1 = oldFileName.lastIndexOf('.')
|
let index1 = oldFileName.lastIndexOf('.')
|
||||||
let index2 = oldFileName.length
|
let index2 = oldFileName.length
|
||||||
@@ -2680,6 +2695,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
this.$message.error('没有在线预览文档权限!')
|
this.$message.error('没有在线预览文档权限!')
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
this.$http.get('lawss/sarBussionessStand/logBuss', {
|
this.$http.get('lawss/sarBussionessStand/logBuss', {
|
||||||
standCode: this.sarStandardsInfoEO.standCode,
|
standCode: this.sarStandardsInfoEO.standCode,
|
||||||
standName: this.sarStandardsInfoEO.standName
|
standName: this.sarStandardsInfoEO.standName
|
||||||
@@ -2790,7 +2806,8 @@ export default {
|
|||||||
showReplaceStandInfo (item) {
|
showReplaceStandInfo (item) {
|
||||||
// this.replaceStandInfoEO.standType = this.sarStandardsInfoEO.standType
|
// this.replaceStandInfoEO.standType = this.sarStandardsInfoEO.standType
|
||||||
this.$http.get('sarStandardsInfo/sar-standards-info/queryInfoByStandNum', {
|
this.$http.get('sarStandardsInfo/sar-standards-info/queryInfoByStandNum', {
|
||||||
standNumber: item
|
standNumber: item,
|
||||||
|
standType: 'BUSS'
|
||||||
}, {
|
}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
@@ -3381,12 +3398,12 @@ export default {
|
|||||||
this.applyArcticOptions = res.data.ENERGYTYPES // 根据需求文档,产品类别对应标准属性中的“适用车型”
|
this.applyArcticOptions = res.data.ENERGYTYPES // 根据需求文档,产品类别对应标准属性中的“适用车型”
|
||||||
this.emergyKindOptions = res.data.ENERGYTYPES
|
this.emergyKindOptions = res.data.ENERGYTYPES
|
||||||
this.requestOptions = res.data.REQUESTTYPE
|
this.requestOptions = res.data.REQUESTTYPE
|
||||||
this.textOptions = res.data.TEXTSTATUSBUSS //企标文本状态
|
this.textOptions = res.data.TEXTSTATUSBUSS //企标标准状态
|
||||||
this.mjOptions = res.data.MJ
|
this.mjOptions = res.data.MJ
|
||||||
this.STANDSOURCEREVISION = res.data.STANDSOURCEREVISION
|
this.STANDSOURCEREVISION = res.data.STANDSOURCEREVISION
|
||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
this.getScore()
|
|
||||||
/*
|
/*
|
||||||
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getScore', {lawId:standId}, {
|
this.$http.get('sarEnterpriseStandardEvaluation/quality-evaluation/getScore', {lawId:standId}, {
|
||||||
_this: this
|
_this: this
|
||||||
@@ -3439,6 +3456,7 @@ export default {
|
|||||||
this.getOrgTreeSource()
|
this.getOrgTreeSource()
|
||||||
this.standItemEO.standId = this.$route.params.id
|
this.standItemEO.standId = this.$route.params.id
|
||||||
Promise.all([this.queryDisplayLocation(), this.selectStandMessage(), this.getAddFormFieldList()]).then(async(values) => {
|
Promise.all([this.queryDisplayLocation(), this.selectStandMessage(), this.getAddFormFieldList()]).then(async(values) => {
|
||||||
|
this.getScore()
|
||||||
const [displayLocation, {attrInfoMap: dynamicFormField}, formFieldList] = values
|
const [displayLocation, {attrInfoMap: dynamicFormField}, formFieldList] = values
|
||||||
// const relatedPlansRes = await this.queryRelatedPlans()
|
// const relatedPlansRes = await this.queryRelatedPlans()
|
||||||
// const relatedPlans = relatedPlansRes.list
|
// const relatedPlans = relatedPlansRes.list
|
||||||
|
|||||||
@@ -420,7 +420,7 @@
|
|||||||
<p class="half">
|
<p class="half">
|
||||||
<label style=" margin-right: 156px;"
|
<label style=" margin-right: 156px;"
|
||||||
title="“修订中”为现行有效版本;“已修订”标准的有效性需根据实际实施情况判定"
|
title="“修订中”为现行有效版本;“已修订”标准的有效性需根据实际实施情况判定"
|
||||||
>文本状态</label><span>{{ sarStandardsInfoEO.textStatusBussShow || '-' }}</span>
|
>标准状态</label><span>{{ sarStandardsInfoEO.textStatusBussShow || '-' }}</span>
|
||||||
</p>
|
</p>
|
||||||
<p class="half"><label style=" margin-right: 157px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
||||||
<p class="half" style=""><label style=" margin-right: 122px;">企标实施日期</label><span>{{ sarStandardsInfoEO.putTime || '-' }}</span></p>
|
<p class="half" style=""><label style=" margin-right: 122px;">企标实施日期</label><span>{{ sarStandardsInfoEO.putTime || '-' }}</span></p>
|
||||||
@@ -3113,7 +3113,7 @@ export default {
|
|||||||
this.applyArcticOptions = res.data.ENERGYTYPES // 根据需求文档,产品类别对应标准属性中的“适用车型”
|
this.applyArcticOptions = res.data.ENERGYTYPES // 根据需求文档,产品类别对应标准属性中的“适用车型”
|
||||||
this.emergyKindOptions = res.data.ENERGYTYPES
|
this.emergyKindOptions = res.data.ENERGYTYPES
|
||||||
this.requestOptions = res.data.REQUESTTYPE
|
this.requestOptions = res.data.REQUESTTYPE
|
||||||
this.textOptions = res.data.TEXTSTATUSBUSS //企标文本状态
|
this.textOptions = res.data.TEXTSTATUSBUSS //企标标准状态
|
||||||
this.mjOptions = res.data.MJ
|
this.mjOptions = res.data.MJ
|
||||||
this.STANDSOURCEREVISION = res.data.STANDSOURCEREVISION
|
this.STANDSOURCEREVISION = res.data.STANDSOURCEREVISION
|
||||||
}, e => {
|
}, e => {
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
<!-- eslint-disable -->
|
||||||
<!--政策详情页-->
|
<!--政策详情页-->
|
||||||
<template>
|
<template>
|
||||||
<div class="other-standard-details v-class" :class="{'hidden': !isMoreAwayBtn}">
|
<div class="other-standard-details v-class" :class="{'hidden': !isMoreAwayBtn}">
|
||||||
@@ -42,9 +43,9 @@
|
|||||||
<div class="basic-information-content">
|
<div class="basic-information-content">
|
||||||
<!--<p style="" class="half"><label style=" margin-right: 157px;">政策分类</label><span>{{ sarStandardsInfoEO.lawsType }}</span></p>-->
|
<!--<p style="" class="half"><label style=" margin-right: 157px;">政策分类</label><span>{{ sarStandardsInfoEO.lawsType }}</span></p>-->
|
||||||
<p style="" class="half"><label style=" margin-right: 132px;">1级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeFirstLevelName || '-' }}</span></p>
|
<p style="" class="half"><label style=" margin-right: 132px;">1级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeFirstLevelName || '-' }}</span></p>
|
||||||
<p style="" class="half"><label style=" margin-right: 132px;">2级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeFourthLevelName || '-' }}</span></p>
|
<p style="" class="half"><label style=" margin-right: 132px;">2级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeSecondLevelName || '-' }}</span></p>
|
||||||
<p style="" class="half"><label style=" margin-right: 132px;">3级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeSecondLevelName || '-' }}</span></p>
|
<p style="" class="half"><label style=" margin-right: 132px;">3级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeThirdLevelName || '-' }}</span></p>
|
||||||
<p style="" class="half"><label style=" margin-right: 132px;">4级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeThirdLevelName || '-' }}</span></p>
|
<p style="" class="half"><label style=" margin-right: 132px;">4级政策分类</label><span>{{ sarStandardsInfoEO.lawTypeFourthLevelName || '-' }}</span></p>
|
||||||
<!--<p style="" class="half"><label style=" margin-right: 157px;">政策编号</label><span>{{ sarStandardsInfoEO.lawsNumber }}</span></p>-->
|
<!--<p style="" class="half"><label style=" margin-right: 157px;">政策编号</label><span>{{ sarStandardsInfoEO.lawsNumber }}</span></p>-->
|
||||||
<p class="half"><label style=" margin-right: 157px;">政策名称</label><span>{{ sarStandardsInfoEO.lawsName || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">政策名称</label><span>{{ sarStandardsInfoEO.lawsName || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 157px;">英文名称</label><span>{{ sarStandardsInfoEO.lawsEnName || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">英文名称</label><span>{{ sarStandardsInfoEO.lawsEnName || '-' }}</span></p>
|
||||||
@@ -52,7 +53,7 @@
|
|||||||
<p class="half"><label style=" margin-right: 157px;">发文日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">发文日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 157px;">发文单位</label><span>{{ sarStandardsInfoEO.issueCompany || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">发文单位</label><span>{{ sarStandardsInfoEO.issueCompany || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 125px;">征集意见周期</label><span>{{ formatDateFunc(sarStandardsInfoEO.commentCycleStart) || '' }} - {{formatDateFunc(sarStandardsInfoEO.commentCycleEnd) || ''}}</span></p>
|
<p class="half"><label style=" margin-right: 125px;">征集意见周期</label><span>{{ formatDateFunc(sarStandardsInfoEO.commentCycleStart) || '' }} - {{formatDateFunc(sarStandardsInfoEO.commentCycleEnd) || ''}}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 156px;">文本状态</label><span style="">{{ sarStandardsInfoEO.standStatusShow || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 156px;">政策状态</label><span style="">{{ sarStandardsInfoEO.standStatusShow || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 157px;">适用车型</label><span>{{ sarStandardsInfoEO.lawsSycx || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">适用车型</label><span>{{ sarStandardsInfoEO.lawsSycx || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 95px;">是否纳入认证清单</label><span>{{ sarStandardsInfoEO.isRelateAccess === '1' ? '是' : (sarStandardsInfoEO.isRelateAccess ? '否':'-')}}</span></p>
|
<p class="half"><label style=" margin-right: 95px;">是否纳入认证清单</label><span>{{ sarStandardsInfoEO.isRelateAccess === '1' ? '是' : (sarStandardsInfoEO.isRelateAccess ? '否':'-')}}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 190px;">年度</label><span>{{ sarStandardsInfoEO.lawsYear || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 190px;">年度</label><span>{{ sarStandardsInfoEO.lawsYear || '-' }}</span></p>
|
||||||
@@ -63,11 +64,17 @@
|
|||||||
<span v-else>{{ sarStandardsInfoEO.lawsNotisyncNum || '-' }}</span>
|
<span v-else>{{ sarStandardsInfoEO.lawsNotisyncNum || '-' }}</span>
|
||||||
</p>
|
</p>
|
||||||
<!--<p class="half"><label style=" margin-right: 125px;">通知文号链接</label><span>{{ sarStandardsInfoEO.notisyncNumLink || '-' }}</span></p>-->
|
<!--<p class="half"><label style=" margin-right: 125px;">通知文号链接</label><span>{{ sarStandardsInfoEO.notisyncNumLink || '-' }}</span></p>-->
|
||||||
<p class="half"><label style=" margin-right: 157px;">信息简报</label><span>{{ sarStandardsInfoEO.lawsBulletin || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 157px;">信息月报</label><span>{{ sarStandardsInfoEO.lawsBulletin || '-' }}</span></p>
|
||||||
|
<p class="half"><label style=" margin-right: 157px;">参考消息</label><span>{{ sarStandardsInfoEO.referenceNews || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 190px;">标签</label><span>{{ sarStandardsInfoEO.lawsLabel || '-' }}</span></p>
|
<p class="half"><label style=" margin-right: 190px;">标签</label><span>{{ sarStandardsInfoEO.lawsLabel || '-' }}</span></p>
|
||||||
<p class="half"><label style=" margin-right: 62px;">备注(最终政策发布)</label><span>{{ sarStandardsInfoEO.lawsRemark || '-' }}</span></p>
|
<!-- <p class="half"><label style=" margin-right: 62px;">备注(最终政策发布)</label><span>{{ sarStandardsInfoEO.lawsRemark || '-' }}</span></p>-->
|
||||||
<!--<p class="half"><label style=" margin-right: 157px;">适用区域</label><span>{{ sarStandardsInfoEO.lawsSyqy || '-' }}</span></p>-->
|
<p class="half"><label style=" margin-right: 157px;">政策要点</label><span>{{ sarStandardsInfoEO.lawsKeyPoint || '-' }}</span></p>
|
||||||
<!--<p class="half"><label style=" margin-right: 157px;">政策文号</label><span>{{ sarStandardsInfoEO.lawsNo || '-' }}</span></p>-->
|
<p class="half"><label style=" margin-right: 190px;">备注</label><span>{{ sarStandardsInfoEO.lawsRemark || '-' }}</span></p>
|
||||||
|
<p class="half">
|
||||||
|
<label style=" margin-right: 125px;">政策原文链接</label>
|
||||||
|
<a v-if="sarStandardsInfoEO.lawsOriginalLink && sarStandardsInfoEO.lawsOriginalLink !== ''" :href="sarStandardsInfoEO.lawsOriginalLink" target="_blank">{{ sarStandardsInfoEO.lawsOriginalLink }}</a>
|
||||||
|
<span v-else>-</span>
|
||||||
|
</p>
|
||||||
<template v-for="(child, childIndex) in item.child2">
|
<template v-for="(child, childIndex) in item.child2">
|
||||||
<p class="half">
|
<p class="half">
|
||||||
<label style=" margin-right: 156px;">{{child.attrName}}</label>
|
<label style=" margin-right: 156px;">{{child.attrName}}</label>
|
||||||
@@ -906,6 +913,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
/* eslint-disable */
|
||||||
import PutQuestionButton from '@/components/PutQuestionButton'
|
import PutQuestionButton from '@/components/PutQuestionButton'
|
||||||
import {dateFormat} from '../../../common/date'
|
import {dateFormat} from '../../../common/date'
|
||||||
import { getBusStandFileByAttId } from 'api/process'
|
import { getBusStandFileByAttId } from 'api/process'
|
||||||
@@ -1511,6 +1519,12 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
openFileInPdf (attId, oldFileName) {
|
openFileInPdf (attId, oldFileName) {
|
||||||
|
if (this.$hasPermission('fd83032ae5f41a0021b00e93c88edbbg')) {
|
||||||
|
this.$preview(attId)
|
||||||
|
} else {
|
||||||
|
this.$message.error('没有在线预览文档权限!')
|
||||||
|
}
|
||||||
|
/*
|
||||||
// 判断是否是图片格式,图片格式不预览,直接下载
|
// 判断是否是图片格式,图片格式不预览,直接下载
|
||||||
let index1 = oldFileName.lastIndexOf('.')
|
let index1 = oldFileName.lastIndexOf('.')
|
||||||
let index2 = oldFileName.length
|
let index2 = oldFileName.length
|
||||||
@@ -1601,6 +1615,7 @@ export default {
|
|||||||
} else {
|
} else {
|
||||||
this.$message.error('没有在线预览文档权限!')
|
this.$message.error('没有在线预览文档权限!')
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
},
|
},
|
||||||
showItemsModel (attField) {
|
showItemsModel (attField) {
|
||||||
this.fileType = attField
|
this.fileType = attField
|
||||||
|
|||||||
@@ -88,7 +88,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="fileTypeShow"
|
prop="fileTypeShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
@@ -99,7 +99,7 @@ export default {
|
|||||||
standId: '',
|
standId: '',
|
||||||
standNumSplit: '', // 标准号/政策号
|
standNumSplit: '', // 标准号/政策号
|
||||||
standNameSplit: '', // 标准名称/政策名称
|
standNameSplit: '', // 标准名称/政策名称
|
||||||
fileType: '' // 文本状态
|
fileType: '' // 标准状态
|
||||||
},
|
},
|
||||||
itemsTextDialogs:false,
|
itemsTextDialogs:false,
|
||||||
itemsText: ""
|
itemsText: ""
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
<!-- eslint-disable -->
|
||||||
<!--国内标准法规详情页-->
|
<!--国内标准法规详情页-->
|
||||||
<template>
|
<template>
|
||||||
<div :class="{'hidden': !isMoreAwayBtn}" class="other-standard-details v-class">
|
<div :class="{'hidden': !isMoreAwayBtn}" class="other-standard-details v-class">
|
||||||
@@ -291,15 +292,17 @@
|
|||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p class="half">
|
<p class="half">
|
||||||
<label style=" margin-right: 150px;" title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。">文本状态</label>
|
<label style=" margin-right: 150px;" title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。">标准状态</label>
|
||||||
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
||||||
</p>
|
</p>
|
||||||
<p class="half"><label style=" margin-right: 150px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span>
|
<p class="half"><label style=" margin-right: 150px;">发布日期</label><span>{{ sarStandardsInfoEO.issueTime || '-' }}</span>
|
||||||
</p>
|
</p>
|
||||||
|
|
||||||
<p class="half"><label style=" margin-right: 150px;">标准体系</label><span>{{
|
<p class="half" style="display: flex"><label style=" margin-right: 150px;">标准体系</label>
|
||||||
sarStandardsInfoEO.standSystem || '-'
|
<el-tooltip class="item" effect="dark" :content="sarStandardsInfoEO.standSystem" placement="top">
|
||||||
}}</span></p>
|
<span style="width: 60%;display: inline-block;overflow: hidden;text-overflow: ellipsis;white-space: nowrap">{{sarStandardsInfoEO.standSystem}}</span>
|
||||||
|
</el-tooltip>
|
||||||
|
</p>
|
||||||
<p class="half">
|
<p class="half">
|
||||||
<label style=" margin-right: 84px;">是否纳入认证清单</label>
|
<label style=" margin-right: 84px;">是否纳入认证清单</label>
|
||||||
<span>
|
<span>
|
||||||
@@ -561,7 +564,7 @@
|
|||||||
<div
|
<div
|
||||||
v-show="child.attrField !== 'ZBJBD' && child.attrField !== 'KWJ' && child.attrField !== 'FBGYWBD' "
|
v-show="child.attrField !== 'ZBJBD' && child.attrField !== 'KWJ' && child.attrField !== 'FBGYWBD' "
|
||||||
:key="child.id"
|
:key="child.id"
|
||||||
:class="'modular-item half'"
|
:class="'modular-item' + ($route.params.pageType === 'FOREIGN_STAND' ? '' : ' half')"
|
||||||
>
|
>
|
||||||
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
<label :title="child.attrName" class="modular-content-p-name">{{ child.attrName }}</label>
|
||||||
<span
|
<span
|
||||||
@@ -576,13 +579,14 @@
|
|||||||
v-for="(file, fileIndex) in child.value"
|
v-for="(file, fileIndex) in child.value"
|
||||||
:key="fileIndex"
|
:key="fileIndex"
|
||||||
class="files-title"
|
class="files-title"
|
||||||
|
style="width: calc(100% - 80px)"
|
||||||
>
|
>
|
||||||
<!--发布稿、增补件单独设置下载权限-->
|
<!--发布稿、增补件单独设置下载权限-->
|
||||||
<template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG'
|
<template v-if="child.attrField === 'XGD' || child.attrField === 'FBGBJBD' || child.attrField === 'BPG'
|
||||||
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|
|| child.attrField === 'SSG'|| child.attrField === 'ZQYJG'|| child.attrField === 'CA'
|
||||||
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
|
|| child.attrField === 'JDWJ' || child.attrField === 'GLWJ'">
|
||||||
<a :title="file.oldFileName" target="_blank"
|
<a :title="file.oldFileName" target="_blank"
|
||||||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis }}</a>
|
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName}}</a>
|
||||||
<i
|
<i
|
||||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||||||
class="icon-download"
|
class="icon-download"
|
||||||
@@ -597,8 +601,8 @@
|
|||||||
/>
|
/>
|
||||||
</template>
|
</template>
|
||||||
<template v-else>
|
<template v-else>
|
||||||
<a :title="file.oldFileName" target="_blank"
|
<a :title="file.oldFileName" target="_blank"
|
||||||
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName | ellipsis }}</a>
|
@click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName}}</a>
|
||||||
<i
|
<i
|
||||||
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
v-btn-permission="$route.params.pageType === 'INLAND_STAND' ? 'd5b28957b5105c805e90a16fd5056a45' : 'a772afab2a6708883335500f3f86e771'"
|
||||||
class="icon-download"
|
class="icon-download"
|
||||||
@@ -673,6 +677,7 @@
|
|||||||
v-for="(file, fileIndex) in child.value"
|
v-for="(file, fileIndex) in child.value"
|
||||||
:key="fileIndex"
|
:key="fileIndex"
|
||||||
class="files-title"
|
class="files-title"
|
||||||
|
style="width: calc(100% - 80px)"
|
||||||
>
|
>
|
||||||
<!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>-->
|
<!-- <span style="cursor: pointer;" @click="openFileInPdf(file.id, file.oldFileName)">|{{file.id}}|</span>-->
|
||||||
<!--发布稿、增补件单独设置下载权限-->
|
<!--发布稿、增补件单独设置下载权限-->
|
||||||
@@ -1820,6 +1825,7 @@
|
|||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
<script>
|
<script>
|
||||||
|
/* eslint-disable */
|
||||||
import PutQuestionButton from '@/components/PutQuestionButton'
|
import PutQuestionButton from '@/components/PutQuestionButton'
|
||||||
import CustomSVPPS from '@/components/CustomFormComponents/SVPPS'
|
import CustomSVPPS from '@/components/CustomFormComponents/SVPPS'
|
||||||
import CustomSelectArray from '@/components/CustomFormComponents/SelectArray'
|
import CustomSelectArray from '@/components/CustomFormComponents/SelectArray'
|
||||||
@@ -1840,6 +1846,13 @@ export default {
|
|||||||
RelatedTermsSelect
|
RelatedTermsSelect
|
||||||
},
|
},
|
||||||
filters: {
|
filters: {
|
||||||
|
ellipsis20(value) {
|
||||||
|
if (!value) return ''
|
||||||
|
if (value.length > 20) {
|
||||||
|
return value.slice(0, 20) + '...'
|
||||||
|
}
|
||||||
|
return value
|
||||||
|
},
|
||||||
ellipsis(value) {
|
ellipsis(value) {
|
||||||
if (!value) return ''
|
if (!value) return ''
|
||||||
if (value.length > 12) {
|
if (value.length > 12) {
|
||||||
@@ -2397,7 +2410,7 @@ export default {
|
|||||||
FormatDate(date) {
|
FormatDate(date) {
|
||||||
return moment(date).format('YYYY-MM-DD');
|
return moment(date).format('YYYY-MM-DD');
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
@@ -2841,6 +2854,7 @@ export default {
|
|||||||
// 代替标准编号
|
// 代替标准编号
|
||||||
showReplaceStandInfo(item) {
|
showReplaceStandInfo(item) {
|
||||||
this.replaceStandInfoEO.standNumber = item
|
this.replaceStandInfoEO.standNumber = item
|
||||||
|
this.replaceStandInfoEO.standType = this.$route.params.pageType=='INLAND_STAND'?'INLAND':'FOREIGN'
|
||||||
// this.replaceStandInfoEO.standType = this.sarStandardsInfoEO.standType
|
// this.replaceStandInfoEO.standType = this.sarStandardsInfoEO.standType
|
||||||
this.$http.get('sarStandardsInfo/sar-standards-info/queryInfoByStandNum', this.replaceStandInfoEO, {
|
this.$http.get('sarStandardsInfo/sar-standards-info/queryInfoByStandNum', this.replaceStandInfoEO, {
|
||||||
_this: this
|
_this: this
|
||||||
@@ -3269,6 +3283,14 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
openFileInPdf(attId, oldFileName) {
|
openFileInPdf(attId, oldFileName) {
|
||||||
|
if (this.$route.params.pageType === 'INLAND_STAND' && this.$hasPermission('2d6ab9d465ab73d415194e1ca4313793')) {
|
||||||
|
this.$preview(attId)
|
||||||
|
} else if (this.$route.params.pageType === 'FOREIGN_STAND' && this.$hasPermission('ee684b4a9975f5d8a6dfe898c0332f98')) {
|
||||||
|
this.$preview(attId)
|
||||||
|
} else {
|
||||||
|
this.$message.error('没有在线预览文档权限!')
|
||||||
|
}
|
||||||
|
/*
|
||||||
// 判断是否是图片格式,图片格式不预览,直接下载
|
// 判断是否是图片格式,图片格式不预览,直接下载
|
||||||
let index1 = oldFileName.lastIndexOf('.')
|
let index1 = oldFileName.lastIndexOf('.')
|
||||||
let index2 = oldFileName.length
|
let index2 = oldFileName.length
|
||||||
@@ -3391,6 +3413,7 @@ export default {
|
|||||||
this.$message.error('没有在线预览文档权限!')
|
this.$message.error('没有在线预览文档权限!')
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
if (this.$route.params.pageType === 'INLAND_STAND') {
|
if (this.$route.params.pageType === 'INLAND_STAND') {
|
||||||
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
|
let standNumber = this.sarStandardsInfoEO.standSortShow + ' ' + this.sarStandardsInfoEO.standNumber + '-' + this.sarStandardsInfoEO.standYear || this.sarStandardsInfoEO.standSort + ' ' + this.sarStandardsInfoEO.standNumber
|
||||||
this.$http.get('sarStandardsInfo/sar-standards-info/logInvalid', {
|
this.$http.get('sarStandardsInfo/sar-standards-info/logInvalid', {
|
||||||
@@ -4028,7 +4051,7 @@ export default {
|
|||||||
this.emergyKindOptions = res.data.ENERGYTYPES
|
this.emergyKindOptions = res.data.ENERGYTYPES
|
||||||
this.requestOptions = res.data.REQUESTTYPE
|
this.requestOptions = res.data.REQUESTTYPE
|
||||||
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
||||||
this.setMap(res.data.WBZTCLASS) // 文本状态
|
this.setMap(res.data.WBZTCLASS) // 标准状态
|
||||||
this.setMap(res.data.SARPROPERTY) // 标准性质
|
this.setMap(res.data.SARPROPERTY) // 标准性质
|
||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
@@ -4216,9 +4239,12 @@ export default {
|
|||||||
a {
|
a {
|
||||||
overflow: hidden;
|
overflow: hidden;
|
||||||
text-overflow: ellipsis;
|
text-overflow: ellipsis;
|
||||||
|
display: -webkit-box;
|
||||||
|
-webkit-line-clamp: 2;
|
||||||
|
-webkit-box-orient: vertical;
|
||||||
width: calc(~'100% - 40px');
|
width: calc(~'100% - 40px');
|
||||||
white-space: nowrap;
|
white-space: break-spaces;
|
||||||
display: block;
|
word-break: break-all;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -4322,7 +4348,8 @@ export default {
|
|||||||
|
|
||||||
.other-standard-details {
|
.other-standard-details {
|
||||||
padding: 15px 30px 0;
|
padding: 15px 30px 0;
|
||||||
width: 1200px;
|
width: 85%;
|
||||||
|
min-width: 1200px;
|
||||||
margin: 0 auto;
|
margin: 0 auto;
|
||||||
height: 100%;
|
height: 100%;
|
||||||
|
|
||||||
@@ -4612,7 +4639,7 @@ export default {
|
|||||||
width: calc(~'100% - 225px');
|
width: calc(~'100% - 225px');
|
||||||
|
|
||||||
& > .files-title {
|
& > .files-title {
|
||||||
width: calc(~'100% - 120px');
|
width: calc(~'100% - 10px');
|
||||||
//报批稿撑开
|
//报批稿撑开
|
||||||
//min-height: 50px;
|
//min-height: 50px;
|
||||||
//line-height: 50px;
|
//line-height: 50px;
|
||||||
|
|||||||
@@ -79,7 +79,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="fileTypeShow"
|
prop="fileTypeShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
@@ -261,7 +261,7 @@
|
|||||||
<p class="half">
|
<p class="half">
|
||||||
<label style=" margin-right: 150px;"
|
<label style=" margin-right: 150px;"
|
||||||
title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。"
|
title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。"
|
||||||
>文本状态</label>
|
>标准状态</label>
|
||||||
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
||||||
</p>
|
</p>
|
||||||
<p class="half"><label style=" margin-right: 150px;">发布日期</label><span>{{
|
<p class="half"><label style=" margin-right: 150px;">发布日期</label><span>{{
|
||||||
@@ -2189,7 +2189,7 @@ export default {
|
|||||||
FormatDate(date) {
|
FormatDate(date) {
|
||||||
return moment(date).format('YYYY-MM-DD');
|
return moment(date).format('YYYY-MM-DD');
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
@@ -3758,7 +3758,7 @@ export default {
|
|||||||
this.emergyKindOptions = res.data.ENERGYTYPES
|
this.emergyKindOptions = res.data.ENERGYTYPES
|
||||||
this.requestOptions = res.data.REQUESTTYPE
|
this.requestOptions = res.data.REQUESTTYPE
|
||||||
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
||||||
this.setMap(res.data.WBZTCLASS) // 文本状态
|
this.setMap(res.data.WBZTCLASS) // 标准状态
|
||||||
this.setMap(res.data.SARPROPERTY) // 标准性质
|
this.setMap(res.data.SARPROPERTY) // 标准性质
|
||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -8,13 +8,16 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>基础信息</span>
|
<i class="icon-modular-title" /><span>基础信息</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="modular-header-btn">
|
<div class="modular-header-btn">
|
||||||
<el-button class="relation-btn"
|
<el-button
|
||||||
icon="icon-relation"
|
class="relation-btn"
|
||||||
@click.stop="relateEvent()"
|
icon="icon-relation"
|
||||||
>更新记录</el-button>
|
@click.stop="relateEvent()"
|
||||||
|
>
|
||||||
|
更新记录
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -31,10 +34,10 @@
|
|||||||
<label style=" margin-right: 164px;line-height: 44px">协议</label>
|
<label style=" margin-right: 164px;line-height: 44px">协议</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.agreementList && form.agreementList.length > 0">
|
<template v-if="form.agreementList && form.agreementList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.agreementList">
|
<p v-for="file in form.agreementList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -47,7 +50,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>课题组会议</span>
|
<i class="icon-modular-title" /><span>课题组会议</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -64,7 +67,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>课题组资料</span>
|
<i class="icon-modular-title" /><span>课题组资料</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -73,10 +76,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">研究方案</label>
|
<label style=" margin-right: 132px;line-height: 44px">研究方案</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.researchPlanList && form.researchPlanList.length > 0">
|
<template v-if="form.researchPlanList && form.researchPlanList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.researchPlanList">
|
<p v-for="file in form.researchPlanList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -86,10 +89,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">研究成果</label>
|
<label style=" margin-right: 132px;line-height: 44px">研究成果</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.researchFindingsList && form.researchFindingsList.length > 0">
|
<template v-if="form.researchFindingsList && form.researchFindingsList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.researchFindingsList">
|
<p v-for="file in form.researchFindingsList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -99,10 +102,10 @@
|
|||||||
<label style=" margin-right: 164px;line-height: 44px">其他</label>
|
<label style=" margin-right: 164px;line-height: 44px">其他</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.researchGroupOtherList && form.researchGroupOtherList.length > 0">
|
<template v-if="form.researchGroupOtherList && form.researchGroupOtherList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.researchGroupOtherList">
|
<p v-for="file in form.researchGroupOtherList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -112,10 +115,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">会议资料</label>
|
<label style=" margin-right: 132px;line-height: 44px">会议资料</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.conferenceMaterialsList && form.conferenceMaterialsList.length > 0">
|
<template v-if="form.conferenceMaterialsList && form.conferenceMaterialsList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.conferenceMaterialsList">
|
<p v-for="file in form.conferenceMaterialsList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -128,7 +131,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>课题组联系方式</span>
|
<i class="icon-modular-title" /><span>课题组联系方式</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -145,7 +148,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>内部资料</span>
|
<i class="icon-modular-title" /><span>内部资料</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -154,10 +157,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">立项报告</label>
|
<label style=" margin-right: 132px;line-height: 44px">立项报告</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.insideProjectProposalReportList && form.insideProjectProposalReportList.length > 0">
|
<template v-if="form.insideProjectProposalReportList && form.insideProjectProposalReportList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.insideProjectProposalReportList">
|
<p v-for="file in form.insideProjectProposalReportList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -167,10 +170,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">研究方案</label>
|
<label style=" margin-right: 132px;line-height: 44px">研究方案</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.insideResearchPlanList && form.insideResearchPlanList.length > 0">
|
<template v-if="form.insideResearchPlanList && form.insideResearchPlanList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.insideResearchPlanList">
|
<p v-for="file in form.insideResearchPlanList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -180,10 +183,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">会议资料</label>
|
<label style=" margin-right: 132px;line-height: 44px">会议资料</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.insideConferenceMaterialsList && form.insideConferenceMaterialsList.length > 0">
|
<template v-if="form.insideConferenceMaterialsList && form.insideConferenceMaterialsList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.insideConferenceMaterialsList">
|
<p v-for="file in form.insideConferenceMaterialsList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -193,10 +196,10 @@
|
|||||||
<label style=" margin-right: 132px;line-height: 44px">研究成果</label>
|
<label style=" margin-right: 132px;line-height: 44px">研究成果</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.insideResearchFindingsList && form.insideResearchFindingsList.length > 0">
|
<template v-if="form.insideResearchFindingsList && form.insideResearchFindingsList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.insideResearchFindingsList">
|
<p v-for="file in form.insideResearchFindingsList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -206,10 +209,10 @@
|
|||||||
<label style=" margin-right: 164px;line-height: 44px">其他</label>
|
<label style=" margin-right: 164px;line-height: 44px">其他</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.insideOtherList && form.insideOtherList.length > 0">
|
<template v-if="form.insideOtherList && form.insideOtherList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.insideOtherList">
|
<p v-for="file in form.insideOtherList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -222,7 +225,7 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>内部联系方式</span>
|
<i class="icon-modular-title" /><span>内部联系方式</span>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -239,19 +242,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 更新LOG -->
|
<!-- 更新LOG -->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
title="更新记录"
|
title="更新记录"
|
||||||
:visible.sync="relateDialog"
|
:visible.sync="relateDialog"
|
||||||
width="60%"
|
width="60%"
|
||||||
class="relateClass"
|
class="relateClass"
|
||||||
:before-close="relateDialogClose">
|
:before-close="relateDialogClose"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in relateNowList"
|
v-for="(item, index) in relateNowList"
|
||||||
:key="index"
|
v-if="relateNowList"
|
||||||
v-if="relateNowList"
|
:key="index"
|
||||||
style="margin-bottom: 10px;line-height: 20px"
|
style="margin-bottom: 10px;line-height: 20px"
|
||||||
>
|
>
|
||||||
{{index+1}}. {{item.creationUserName}} {{item.creationTime}} {{item.content}}
|
{{ index+1 }}. {{ item.creationUserName }} {{ item.creationTime }} {{ item.content }}
|
||||||
<div v-if="relateNowList.length >1"><el-divider></el-divider></div>
|
<div v-if="relateNowList.length >1"><el-divider /></div>
|
||||||
</div>
|
</div>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
||||||
@@ -262,10 +266,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getBusStandFileByAttId } from 'api/process'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "policyTopicsDetail",
|
name: 'PolicyTopicsDetail',
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
url: {
|
url: {
|
||||||
@@ -273,14 +275,14 @@ export default {
|
|||||||
getLogList: 'lawss/sarUpdLog/getLogList', // 更新记录
|
getLogList: 'lawss/sarUpdLog/getLogList', // 更新记录
|
||||||
},
|
},
|
||||||
form: {},
|
form: {},
|
||||||
activeNames: ['1', '2', '3'],
|
activeNames: [ '1', '2', '3' ],
|
||||||
// 更新记录
|
// 更新记录
|
||||||
relateDialog: false,
|
relateDialog: false,
|
||||||
relateNowList: [],
|
relateNowList: [],
|
||||||
loading: false
|
loading: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -298,7 +300,7 @@ export default {
|
|||||||
res.data.insideContactInformationList.forEach((item, index) => {
|
res.data.insideContactInformationList.forEach((item, index) => {
|
||||||
activeNames.push('insideContactInformationList' + index)
|
activeNames.push('insideContactInformationList' + index)
|
||||||
})
|
})
|
||||||
this.activeNames = [...this.activeNames, ...activeNames]
|
this.activeNames = [ ...this.activeNames, ...activeNames ]
|
||||||
this.$set(this, 'form', res.data)
|
this.$set(this, 'form', res.data)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -314,9 +316,9 @@ export default {
|
|||||||
if (res.ok && res.data.length > 0) {
|
if (res.ok && res.data.length > 0) {
|
||||||
this.relateDialog = true
|
this.relateDialog = true
|
||||||
const relateList = res.data
|
const relateList = res.data
|
||||||
var i
|
let i
|
||||||
for (i = 0; i < relateList.length; i++) {
|
for (i = 0; i < relateList.length; i++) {
|
||||||
let obj = {creationUserName: '', creationTime: '', content: ''}
|
const obj = { creationUserName: '', creationTime: '', content: '' }
|
||||||
obj.creationUserName = relateList[i].creationUserName
|
obj.creationUserName = relateList[i].creationUserName
|
||||||
obj.creationTime = relateList[i].creationTime
|
obj.creationTime = relateList[i].creationTime
|
||||||
obj.content = relateList[i].content
|
obj.content = relateList[i].content
|
||||||
@@ -349,21 +351,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getBusStandFileByAttId(attId) {
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
getBusStandFileByAttId({
|
|
||||||
attId
|
|
||||||
}).then(res => {
|
|
||||||
if (res.ok) {
|
|
||||||
resolve(res.data)
|
|
||||||
} else {
|
|
||||||
reject()
|
|
||||||
}
|
|
||||||
}).catch(e => {
|
|
||||||
reject(e)
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
openFileInPdf (attId, fileName) {
|
openFileInPdf (attId, fileName) {
|
||||||
this.$preview(attId)
|
this.$preview(attId)
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -8,27 +8,32 @@
|
|||||||
<template slot="title">
|
<template slot="title">
|
||||||
<div class="modular-header">
|
<div class="modular-header">
|
||||||
<div class="modular-header-title">
|
<div class="modular-header-title">
|
||||||
<i class="icon-modular-title"/><span>基础信息</span>
|
<i class="icon-modular-title" /><span>基础信息</span>
|
||||||
</div>
|
</div>
|
||||||
<div class="modular-header-btn">
|
<div class="modular-header-btn">
|
||||||
<el-button v-if="form.collectId"
|
<el-button
|
||||||
@click.stop="collectClick(form.collectId)"
|
v-if="form.collectId"
|
||||||
title="取消收藏"
|
title="取消收藏"
|
||||||
class="collection-btn"
|
class="collection-btn"
|
||||||
icon="el-icon-star-on"
|
icon="el-icon-star-on"
|
||||||
:loading="isSubmit"
|
:loading="isSubmit"
|
||||||
></el-button>
|
@click.stop="collectClick(form.collectId)"
|
||||||
<el-button v-else
|
/>
|
||||||
@click.stop="collectClick()"
|
<el-button
|
||||||
title="收藏"
|
v-else
|
||||||
class="collection-btn"
|
title="收藏"
|
||||||
icon="el-icon-star-off"
|
class="collection-btn"
|
||||||
:loading="isSubmit"
|
icon="el-icon-star-off"
|
||||||
></el-button>
|
:loading="isSubmit"
|
||||||
<el-button class="relation-btn"
|
@click.stop="collectClick()"
|
||||||
icon="icon-relation"
|
/>
|
||||||
@click.stop="relateEvent()"
|
<el-button
|
||||||
>更新记录</el-button>
|
class="relation-btn"
|
||||||
|
icon="icon-relation"
|
||||||
|
@click.stop="relateEvent()"
|
||||||
|
>
|
||||||
|
更新记录
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -46,10 +51,10 @@
|
|||||||
<label style=" margin-right: 156px;line-height: 44px">资料文件</label>
|
<label style=" margin-right: 156px;line-height: 44px">资料文件</label>
|
||||||
<div style="min-height: 44px;padding: 8px 0;">
|
<div style="min-height: 44px;padding: 8px 0;">
|
||||||
<template v-if="form.informationFileList && form.informationFileList.length > 0">
|
<template v-if="form.informationFileList && form.informationFileList.length > 0">
|
||||||
<p class="file-item" v-for="file in form.informationFileList">
|
<p v-for="file in form.informationFileList" class="file-item">
|
||||||
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
<a class="file-title" target="_blank" :title="file.oldFileName" @click="openFileInPdf(file.id, file.oldFileName)">{{ file.oldFileName }}</a>
|
||||||
<i v-if="form.downloadable" title="下载" class="icon-download" @click="downloadFile(file.id)"></i>
|
<i v-if="form.downloadable" title="下载" class="icon-download" @click="downloadFile(file.id)" />
|
||||||
<i v-if="form.downloadable" title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)"></i>
|
<i v-if="form.downloadable" title="下载带水印" class="icon-download2" @click="downloadFileByWater(file.id, file.fileSuffix)" />
|
||||||
</p>
|
</p>
|
||||||
</template>
|
</template>
|
||||||
<p v-else>-</p>
|
<p v-else>-</p>
|
||||||
@@ -64,19 +69,20 @@
|
|||||||
</div>
|
</div>
|
||||||
<!-- 更新LOG -->
|
<!-- 更新LOG -->
|
||||||
<el-dialog
|
<el-dialog
|
||||||
title="更新记录"
|
title="更新记录"
|
||||||
:visible.sync="relateDialog"
|
:visible.sync="relateDialog"
|
||||||
width="60%"
|
width="60%"
|
||||||
class="relateClass"
|
class="relateClass"
|
||||||
:before-close="relateDialogClose">
|
:before-close="relateDialogClose"
|
||||||
|
>
|
||||||
<div
|
<div
|
||||||
v-for="(item, index) in relateNowList"
|
v-for="(item, index) in relateNowList"
|
||||||
:key="index"
|
v-if="relateNowList"
|
||||||
v-if="relateNowList"
|
:key="index"
|
||||||
style="margin-bottom: 10px;line-height: 20px"
|
style="margin-bottom: 10px;line-height: 20px"
|
||||||
>
|
>
|
||||||
{{index+1}}. {{item.creationUserName}} {{item.creationTime}} {{item.content}}
|
{{ index+1 }}. {{ item.creationUserName }} {{ item.creationTime }} {{ item.content }}
|
||||||
<div v-if="relateNowList.length >1"><el-divider></el-divider></div>
|
<div v-if="relateNowList.length >1"><el-divider /></div>
|
||||||
</div>
|
</div>
|
||||||
<span slot="footer" class="dialog-footer">
|
<span slot="footer" class="dialog-footer">
|
||||||
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
<el-button type="primary" @click="relateDialogClose()">关 闭</el-button>
|
||||||
@@ -87,10 +93,8 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import { getBusStandFileByAttId } from 'api/process'
|
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "regulatoryMaterialsDetail",
|
name: 'RegulatoryMaterialsDetail',
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
url: {
|
url: {
|
||||||
@@ -100,7 +104,7 @@ export default {
|
|||||||
updateByUserId: 'person/personCollect/updateByUserId', // 取消收藏
|
updateByUserId: 'person/personCollect/updateByUserId', // 取消收藏
|
||||||
},
|
},
|
||||||
form: {},
|
form: {},
|
||||||
activeNames: ['1'],
|
activeNames: [ '1' ],
|
||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
|
|
||||||
// 更新记录
|
// 更新记录
|
||||||
@@ -109,7 +113,7 @@ export default {
|
|||||||
loading: false,
|
loading: false,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
@@ -117,7 +121,7 @@ export default {
|
|||||||
return (userStr && userStr !== '') ? userStr.split(',').map(item => item.split('(')[1].split(')')[0]) : []
|
return (userStr && userStr !== '') ? userStr.split(',').map(item => item.split('(')[1].split(')')[0]) : []
|
||||||
},
|
},
|
||||||
// 下载权限
|
// 下载权限
|
||||||
hasDownLoadPermission() {
|
hasDownLoadPermission () {
|
||||||
const userId = this.$store.getters.userInfo.userId
|
const userId = this.$store.getters.userInfo.userId
|
||||||
// 未设置可下载者 创建人和审批人可下载
|
// 未设置可下载者 创建人和审批人可下载
|
||||||
if (!this.form.downloadableBy || this.form.downloadableBy === '') {
|
if (!this.form.downloadableBy || this.form.downloadableBy === '') {
|
||||||
@@ -141,7 +145,7 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
removeCommasAtStartAndEnd(inputString) {
|
removeCommasAtStartAndEnd (inputString) {
|
||||||
// 检查字符串是否以逗号开头
|
// 检查字符串是否以逗号开头
|
||||||
if (inputString.charAt(0) === ',') {
|
if (inputString.charAt(0) === ',') {
|
||||||
inputString = inputString.slice(1); // 去除开头的逗号
|
inputString = inputString.slice(1); // 去除开头的逗号
|
||||||
@@ -163,7 +167,7 @@ export default {
|
|||||||
// 取消收藏
|
// 取消收藏
|
||||||
this.$http._put(this.url.updateByUserId, {
|
this.$http._put(this.url.updateByUserId, {
|
||||||
id: collectId
|
id: collectId
|
||||||
},{
|
}, {
|
||||||
_this: this,
|
_this: this,
|
||||||
loading: 'isSubmit'
|
loading: 'isSubmit'
|
||||||
}).then(res => {
|
}).then(res => {
|
||||||
@@ -171,7 +175,7 @@ export default {
|
|||||||
})
|
})
|
||||||
} else {
|
} else {
|
||||||
// 加收藏
|
// 加收藏
|
||||||
let personCollect = {
|
const personCollect = {
|
||||||
userId: this.$store.getters.userInfo.userId,
|
userId: this.$store.getters.userInfo.userId,
|
||||||
collectResId: this.form.id,
|
collectResId: this.form.id,
|
||||||
collectTitle: this.form.name,
|
collectTitle: this.form.name,
|
||||||
@@ -198,9 +202,9 @@ export default {
|
|||||||
if (res.ok && res.data.length > 0) {
|
if (res.ok && res.data.length > 0) {
|
||||||
this.relateDialog = true
|
this.relateDialog = true
|
||||||
const relateList = res.data
|
const relateList = res.data
|
||||||
var i
|
let i
|
||||||
for (i = 0; i < relateList.length; i++) {
|
for (i = 0; i < relateList.length; i++) {
|
||||||
let obj = {creationUserName: '', creationTime: '', content: ''}
|
const obj = { creationUserName: '', creationTime: '', content: '' }
|
||||||
obj.creationUserName = relateList[i].creationUserName
|
obj.creationUserName = relateList[i].creationUserName
|
||||||
obj.creationTime = relateList[i].creationTime
|
obj.creationTime = relateList[i].creationTime
|
||||||
obj.content = relateList[i].content
|
obj.content = relateList[i].content
|
||||||
@@ -233,21 +237,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
getBusStandFileByAttId(attId) {
|
|
||||||
return new Promise((resolve, reject) => {
|
|
||||||
getBusStandFileByAttId({
|
|
||||||
attId
|
|
||||||
}).then(res => {
|
|
||||||
if (res.ok) {
|
|
||||||
resolve(res.data)
|
|
||||||
} else {
|
|
||||||
reject()
|
|
||||||
}
|
|
||||||
}).catch(e => {
|
|
||||||
reject(e)
|
|
||||||
})
|
|
||||||
})
|
|
||||||
},
|
|
||||||
openFileInPdf (attId, fileName) {
|
openFileInPdf (attId, fileName) {
|
||||||
this.$preview(attId)
|
this.$preview(attId)
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,61 +1,72 @@
|
|||||||
<!-- 标准发布 -->
|
<!-- 标准发布 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<!-- <ul>-->
|
<el-table
|
||||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
ref="selection"
|
||||||
<!-- <div style="height: 18px;">-->
|
:data="standardReleaseList"
|
||||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
tooltip-effect="dark"
|
||||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
border
|
||||||
<!-- </div>-->
|
style="cursor:pointer;"
|
||||||
<!-- </li>-->
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
<!-- </ul>-->
|
>
|
||||||
<el-table
|
<el-table-column
|
||||||
ref="selection"
|
label="序号"
|
||||||
:data="standardReleaseList"
|
type="index"
|
||||||
tooltip-effect="dark"
|
align="center"
|
||||||
border
|
width="55"
|
||||||
style="cursor:pointer;"
|
>
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
<el-table-column
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
label="序号"
|
</template>
|
||||||
type="index"
|
</el-table-column>
|
||||||
align="center"
|
<el-table-column
|
||||||
width="55">
|
width="200"
|
||||||
<template slot-scope="{scope, column, $index}">
|
label="标准编号"
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
>
|
||||||
</template>
|
<template slot-scope="scope">
|
||||||
</el-table-column>
|
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
||||||
<el-table-column
|
</template>
|
||||||
width="200"
|
</el-table-column>
|
||||||
label="标准编号">
|
<el-table-column
|
||||||
<template slot-scope="scope">
|
prop="standName"
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
label="标准名称"
|
||||||
</template>
|
>
|
||||||
</el-table-column>
|
<template slot-scope="scope">
|
||||||
<el-table-column
|
<span style="display: flex;align-items: center" @click="handlePreview(scope.row)">
|
||||||
prop="standName"
|
<span>{{ scope.row.standardName }}</span>
|
||||||
label="标准名称">
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
<template slot-scope="scope">
|
</span>
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standardName }}</span>
|
</template>
|
||||||
</template>
|
</el-table-column>
|
||||||
</el-table-column>
|
<el-table-column
|
||||||
<el-table-column
|
width="120"
|
||||||
width="120"
|
label="发布时间"
|
||||||
label="发布时间">
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
<span>{{ scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
<el-table-column
|
||||||
<div class="more" v-if="!pageVerify" @click="togo">更多 ⋙</div>
|
width="120"
|
||||||
<loading :loading="loading">加载中...</loading>
|
v-if="messageType == 'GNBZFG'"
|
||||||
<pagination
|
prop="putTime"
|
||||||
v-if="pageVerify"
|
label="实施时间"
|
||||||
style="position: static;"
|
>
|
||||||
:page="page"
|
<template slot-scope="scope">
|
||||||
:total="total"
|
<span>{{ scope.row.putTime }}</span>
|
||||||
@pageChange="pageChange"
|
</template>
|
||||||
@pageSizeChange="pageSizeChange"></pagination>
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div v-if="!pageVerify" class="more" @click="togo">更多 ⋙</div>
|
||||||
|
<loading :loading="loading">加载中...</loading>
|
||||||
|
<pagination
|
||||||
|
v-if="pageVerify"
|
||||||
|
style="position: static;"
|
||||||
|
:page="page"
|
||||||
|
:total="total"
|
||||||
|
@pageChange="pageChange"
|
||||||
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -64,48 +75,52 @@ export default {
|
|||||||
name: 'Release',
|
name: 'Release',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
loading: false,
|
|
||||||
pageVerify: false,
|
|
||||||
page: 1,
|
|
||||||
pageSize: this.$store.getters.userInfo.configContent,
|
|
||||||
total: 0,
|
|
||||||
putTime: '',
|
|
||||||
standardReleaseList: [], //标准发布数据
|
|
||||||
}
|
|
||||||
},
|
|
||||||
props: {
|
props: {
|
||||||
messageType: {
|
messageType: {
|
||||||
type: String,
|
type: String,
|
||||||
required: true
|
required: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
loading: false,
|
||||||
|
pageVerify: false,
|
||||||
|
page: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
total: 0,
|
||||||
|
putTime: '',
|
||||||
|
standardReleaseList: [], // 标准发布数据
|
||||||
|
}
|
||||||
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate()
|
this.getDate()
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// this.addDate()
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// 此处需要调用接口,修改个人配置
|
// 此处需要调用接口,修改个人配置
|
||||||
},
|
},
|
||||||
togo () {
|
togo () {
|
||||||
this.$router.push({path:'/release2'})
|
this.$router.push({
|
||||||
},
|
path: '/release2',
|
||||||
|
query: {
|
||||||
|
messageType: this.messageType
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherStandardDetails',
|
name: 'OtherStandardDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.standardId,
|
id: item.standardId,
|
||||||
@@ -114,32 +129,37 @@ export default {
|
|||||||
})
|
})
|
||||||
window.open(routeUrl.href, '_blank')
|
window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate (date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.$http.get("/lawss/NewsFeed/getNewsFeed", {
|
this.$http.get('/lawss/NewsFeed/getNewsFeed', {
|
||||||
// messageType: 'GNWBZFG',
|
messageType: this.messageType,
|
||||||
messageType: this.messageType,
|
page: this.page,
|
||||||
page: this.page,
|
pageSize: this.pageSize
|
||||||
pageSize: this.pageSize
|
}, {
|
||||||
}, {
|
_this: this, loading: 'loading'
|
||||||
_this: this,loading: 'loading'
|
}, res => {
|
||||||
}, res => {
|
this.standardReleaseList = res.data.records
|
||||||
this.standardReleaseList = res.data.records
|
this.total = res.data.total
|
||||||
this.total = res.data.total
|
this.loading = false
|
||||||
this.loading = false
|
if (res.data && res.data.records && res.data.records.length > 0) {
|
||||||
|
const isNew = res.data.records[0].threeDaysNew || false
|
||||||
|
this.$emit('isNew', isNew)
|
||||||
|
}
|
||||||
}, e => {
|
}, e => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.standardReleaseList = []
|
this.standardReleaseList = []
|
||||||
this.total = 0
|
this.total = 0
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
checkTime (time) {
|
||||||
|
return this.$moment(time.slice(0, 10)).diff(this.$moment(), 'day') > -3
|
||||||
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -1,62 +1,63 @@
|
|||||||
<!-- 标准发布 -->
|
<!-- 标准发布 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<!-- <ul>-->
|
<el-table
|
||||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
ref="selection"
|
||||||
<!-- <div style="height: 18px;">-->
|
:data="standardReleaseList"
|
||||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
tooltip-effect="dark"
|
||||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
border
|
||||||
<!-- </div>-->
|
height="90%"
|
||||||
<!-- </li>-->
|
style="width: 100%; flex: auto;"
|
||||||
<!-- </ul>-->
|
class="drag-table"
|
||||||
<el-table
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
ref="selection"
|
fontWeight: 'bold', height: '48px'}"
|
||||||
:data="standardReleaseList"
|
>
|
||||||
tooltip-effect="dark"
|
<el-table-column
|
||||||
border
|
label="序号"
|
||||||
height="90%"
|
type="index"
|
||||||
style="width: 100%; flex: auto;"
|
align="center"
|
||||||
class="drag-table"
|
width="55"
|
||||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
>
|
||||||
fontWeight: 'bold', height: '48px'}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
<el-table-column
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
label="序号"
|
</template>
|
||||||
type="index"
|
</el-table-column>
|
||||||
align="center"
|
<el-table-column
|
||||||
width="55">
|
width="200"
|
||||||
<template slot-scope="{scope, column, $index}">
|
label="标准编号"
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
>
|
||||||
</template>
|
<template slot-scope="scope">
|
||||||
</el-table-column>
|
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
||||||
<el-table-column
|
</template>
|
||||||
width="200"
|
</el-table-column>
|
||||||
label="标准编号">
|
<el-table-column
|
||||||
<template slot-scope="scope">
|
prop="standName"
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
label="标准名称"
|
||||||
</template>
|
>
|
||||||
</el-table-column>
|
<template slot-scope="scope">
|
||||||
<el-table-column
|
<span style="display: flex;align-items: center" @click="handlePreview(scope.row)">
|
||||||
prop="standName"
|
{{ scope.row.standardName }}
|
||||||
label="标准名称">
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
<template slot-scope="scope">
|
</span>
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standardName }}</span>
|
</template>
|
||||||
</template>
|
</el-table-column>
|
||||||
</el-table-column>
|
<el-table-column
|
||||||
<el-table-column
|
width="120"
|
||||||
width="120"
|
label="发布时间"
|
||||||
label="发布时间">
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
<span>{{ scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<loading :loading="loading">加载中...</loading>
|
<loading :loading="loading">加载中...</loading>
|
||||||
<pagination
|
<pagination
|
||||||
style="position: static;"
|
style="position: static;"
|
||||||
:page="page"
|
:page="page"
|
||||||
:total="total"
|
:total="total"
|
||||||
@pageChange="pageChange"
|
@pageChange="pageChange"
|
||||||
@pageSizeChange="pageSizeChange"></pagination>
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -65,48 +66,47 @@ export default {
|
|||||||
name: 'Release',
|
name: 'Release',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
pageVerify: false,
|
pageVerify: false,
|
||||||
page: 1,
|
page: 1,
|
||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
total: 0,
|
total: 0,
|
||||||
putTime: '',
|
putTime: '',
|
||||||
standardReleaseList: [], //标准发布数据
|
standardReleaseList: [], // 标准发布数据
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate()
|
this.getDate()
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// this.addDate()
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// 此处需要调用接口,修改个人配置
|
// 此处需要调用接口,修改个人配置
|
||||||
},
|
},
|
||||||
togo () {
|
togo () {
|
||||||
if(this.total && this.total > 10){
|
if(this.total && this.total > 10) {
|
||||||
this.pageVerify = true
|
this.pageVerify = true
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
}else {
|
}else {
|
||||||
this.pageVerify = false
|
this.pageVerify = false
|
||||||
}
|
}
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherStandardDetails',
|
name: 'OtherStandardDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.standardId,
|
id: item.standardId,
|
||||||
@@ -115,27 +115,27 @@ export default {
|
|||||||
})
|
})
|
||||||
window.open(routeUrl.href, '_blank')
|
window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate (date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.$http.get("/lawss/NewsFeed/getNewsFeed", {
|
this.$http.get('/lawss/NewsFeed/getNewsFeed', {
|
||||||
messageType: 'GNWBZFG',
|
messageType: this.$route.query.messageType,
|
||||||
page: this.page,
|
page: this.page,
|
||||||
pageSize: this.pageSize
|
pageSize: this.pageSize
|
||||||
}, {
|
}, {
|
||||||
_this: this,loading: 'loading'
|
_this: this, loading: 'loading'
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standardReleaseList = res.data.records
|
this.standardReleaseList = res.data.records
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}, e => {
|
}, e => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.standardReleaseList = []
|
this.standardReleaseList = []
|
||||||
this.total = 0
|
this.total = 0
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
@@ -152,12 +152,12 @@ export default {
|
|||||||
font-size: 13px;
|
font-size: 13px;
|
||||||
}
|
}
|
||||||
/deep/.more {
|
/deep/.more {
|
||||||
position: absolute;
|
//position: absolute;
|
||||||
right: 0;
|
//right: 0;
|
||||||
bottom: 2px;
|
//bottom: 2px;
|
||||||
font-size: 15px;
|
//font-size: 15px;
|
||||||
float: right;
|
//float: right;
|
||||||
color: #4788c0;
|
//color: #4788c0;
|
||||||
&:hover {
|
&:hover {
|
||||||
color: #3a8ee6;
|
color: #3a8ee6;
|
||||||
cursor: pointer;
|
cursor: pointer;
|
||||||
|
|||||||
@@ -1,64 +1,78 @@
|
|||||||
<!-- 企标发布 -->
|
<!-- 企标发布 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<!-- <ul>-->
|
<el-table
|
||||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
ref="selection"
|
||||||
<!-- <div style="height: 18px;">-->
|
:data="standardReleaseList"
|
||||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
tooltip-effect="dark"
|
||||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
border
|
||||||
<!-- </div>-->
|
style="cursor:pointer;"
|
||||||
<!-- </li>-->
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
<!-- </ul>-->
|
>
|
||||||
<el-table
|
<el-table-column
|
||||||
ref="selection"
|
label="序号"
|
||||||
:data="standardReleaseList"
|
type="index"
|
||||||
tooltip-effect="dark"
|
align="center"
|
||||||
border
|
width="55"
|
||||||
style="cursor:pointer;"
|
>
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
<el-table-column
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
label="序号"
|
</template>
|
||||||
type="index"
|
</el-table-column>
|
||||||
align="center"
|
<el-table-column
|
||||||
width="55">
|
width="200"
|
||||||
<template slot-scope="{scope, column, $index}">
|
label="标准编号"
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
>
|
||||||
</template>
|
<template slot-scope="scope">
|
||||||
</el-table-column>
|
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
||||||
<el-table-column
|
</template>
|
||||||
width="200"
|
</el-table-column>
|
||||||
label="标准编号">
|
<el-table-column
|
||||||
<template slot-scope="scope">
|
prop="standName"
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
label="标准名称"
|
||||||
</template>
|
>
|
||||||
</el-table-column>
|
<template slot-scope="scope">
|
||||||
<el-table-column
|
<span style="display: flex;align-items: center" @click="handlePreview(scope.row)">
|
||||||
prop="standName"
|
<span>{{ scope.row.standardName }}</span>
|
||||||
label="标准名称">
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
<template slot-scope="scope">
|
</span>
|
||||||
<span @click="handlePreview(scope.row)" style="display: flex;align-items: center">
|
</template>
|
||||||
<span>{{ scope.row.standardName }}</span>
|
</el-table-column>
|
||||||
<img v-if="checkTime(scope.row.releaseDate)" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
<el-table-column
|
||||||
</span>
|
width="150"
|
||||||
</template>
|
label="代替标准号"
|
||||||
</el-table-column>
|
>
|
||||||
<el-table-column
|
<template slot-scope="scope">
|
||||||
width="120"
|
<span>{{ scope.row.dtbzh }}</span>
|
||||||
label="发布时间">
|
</template>
|
||||||
<template slot-scope="scope">
|
</el-table-column>
|
||||||
<span>{{scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
<el-table-column
|
||||||
</template>
|
width="120"
|
||||||
</el-table-column>
|
label="发布时间"
|
||||||
</el-table>
|
>
|
||||||
<div class="more" v-if="!pageVerify" @click="togo">更多 ⋙</div>
|
<template slot-scope="scope">
|
||||||
<loading :loading="loading">加载中...</loading>
|
<span>{{ scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
||||||
<pagination
|
</template>
|
||||||
v-if="pageVerify"
|
</el-table-column>
|
||||||
style="position: static;"
|
<el-table-column
|
||||||
:page="page"
|
width="120"
|
||||||
:total="total"
|
label="实施时间"
|
||||||
@pageChange="pageChange"
|
>
|
||||||
@pageSizeChange="pageSizeChange"></pagination>
|
<template slot-scope="scope">
|
||||||
|
<span>{{ scope.row.putTime ? $moment(scope.row.putTime).format('YYYY-MM-DD') : '' }}</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<div v-if="!pageVerify" class="more" @click="togo">更多 ⋙</div>
|
||||||
|
<loading :loading="loading">加载中...</loading>
|
||||||
|
<pagination
|
||||||
|
v-if="pageVerify"
|
||||||
|
style="position: static;"
|
||||||
|
:page="page"
|
||||||
|
:total="total"
|
||||||
|
@pageChange="pageChange"
|
||||||
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -68,78 +82,81 @@ export default {
|
|||||||
name: 'ReleaseBuss',
|
name: 'ReleaseBuss',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
pageVerify: false,
|
pageVerify: false,
|
||||||
page: 1,
|
page: 1,
|
||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: 10,
|
||||||
total: 0,
|
total: 0,
|
||||||
putTime: '',
|
putTime: '',
|
||||||
standardReleaseList: [], //标准发布数据
|
standardReleaseList: [], // 标准发布数据
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate()
|
this.getDate()
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// this.addDate()
|
// this.addDate()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
checkTime (time) {
|
checkTime (time) {
|
||||||
return moment(time.slice(0,10)).diff(moment(), 'day') > -3
|
return moment(time.slice(0, 10)).diff(moment(), 'day') > -3
|
||||||
},
|
},
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// 此处需要调用接口,修改个人配置
|
// 此处需要调用接口,修改个人配置
|
||||||
},
|
},
|
||||||
togo () {
|
togo () {
|
||||||
this.$router.push({path:'/releaseBuss2'})
|
this.$router.push({ path: '/releaseBuss2' })
|
||||||
},
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherBussStandardDetails',
|
name: 'OtherBussStandardDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.standardId,
|
id: item.standardId,
|
||||||
pageType: 'BUSINESS_STAND'
|
pageType: 'BUSINESS_STAND'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
window.open(routeUrl.href, '_blank')
|
window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate (date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.$http.get("/lawss/NewsFeed/getNewsFeed", {
|
this.$http.get('/lawss/NewsFeed/getNewsFeed', {
|
||||||
messageType: 'QYBZFB',
|
messageType: 'QYBZFB',
|
||||||
page: this.page,
|
page: this.page,
|
||||||
pageSize: this.pageSize
|
pageSize: this.pageSize
|
||||||
}, {
|
}, {
|
||||||
_this: this,loading: 'loading'
|
_this: this, loading: 'loading'
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standardReleaseList = res.data.records
|
this.standardReleaseList = res.data.records
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}, e => {
|
if (res.data && res.data.records && res.data.records.length > 0) {
|
||||||
this.loading = false
|
const isNew = res.data.records[0].threeDaysNew || false
|
||||||
this.standardReleaseList = []
|
this.$emit('isNew', isNew)
|
||||||
this.total = 0
|
}
|
||||||
})
|
}, e => {
|
||||||
|
this.loading = false
|
||||||
|
this.standardReleaseList = []
|
||||||
|
this.total = 0
|
||||||
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
|
|||||||
@@ -1,65 +1,63 @@
|
|||||||
<!-- 企标发布 -->
|
<!-- 企标发布 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<!-- <ul>-->
|
<el-table
|
||||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
ref="selection"
|
||||||
<!-- <div style="height: 18px;">-->
|
:data="standardReleaseList"
|
||||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
tooltip-effect="dark"
|
||||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
border
|
||||||
<!-- </div>-->
|
height="90%"
|
||||||
<!-- </li>-->
|
style="width: 100%; flex: auto;"
|
||||||
<!-- </ul>-->
|
class="drag-table"
|
||||||
<el-table
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
ref="selection"
|
fontWeight: 'bold', height: '48px'}"
|
||||||
:data="standardReleaseList"
|
>
|
||||||
tooltip-effect="dark"
|
<el-table-column
|
||||||
border
|
label="序号"
|
||||||
height="90%"
|
type="index"
|
||||||
style="width: 100%; flex: auto;"
|
align="center"
|
||||||
class="drag-table"
|
width="55"
|
||||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
>
|
||||||
fontWeight: 'bold', height: '48px'}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
<el-table-column
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
label="序号"
|
</template>
|
||||||
type="index"
|
</el-table-column>
|
||||||
align="center"
|
<el-table-column
|
||||||
width="55">
|
width="200"
|
||||||
<template slot-scope="{scope, column, $index}">
|
label="标准编号"
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
>
|
||||||
</template>
|
<template slot-scope="scope">
|
||||||
</el-table-column>
|
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
||||||
<el-table-column
|
</template>
|
||||||
width="200"
|
</el-table-column>
|
||||||
label="标准编号">
|
<el-table-column
|
||||||
<template slot-scope="scope">
|
prop="standName"
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
label="标准名称"
|
||||||
</template>
|
>
|
||||||
</el-table-column>
|
<template slot-scope="scope">
|
||||||
<el-table-column
|
<span style="display: flex;align-items: center" @click="handlePreview(scope.row)">
|
||||||
prop="standName"
|
{{ scope.row.standardName }}
|
||||||
label="标准名称">
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
<template slot-scope="scope">
|
</span>
|
||||||
<span @click="handlePreview(scope.row)" style="display: flex;align-items: center">
|
</template>
|
||||||
{{ scope.row.standardName }}
|
</el-table-column>
|
||||||
<img v-if="checkTime(scope.row.releaseDate)" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
<el-table-column
|
||||||
</span>
|
width="120"
|
||||||
</template>
|
label="发布时间"
|
||||||
</el-table-column>
|
>
|
||||||
<el-table-column
|
<template slot-scope="scope">
|
||||||
width="120"
|
<span>{{ scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
||||||
label="发布时间">
|
</template>
|
||||||
<template slot-scope="scope">
|
</el-table-column>
|
||||||
<span>{{scope.row.releaseDate ? $moment(scope.row.releaseDate).format('YYYY-MM-DD') : '' }}</span>
|
</el-table>
|
||||||
</template>
|
<loading :loading="loading">加载中...</loading>
|
||||||
</el-table-column>
|
<pagination
|
||||||
</el-table>
|
style="position: static;"
|
||||||
<loading :loading="loading">加载中...</loading>
|
:page="page"
|
||||||
<pagination
|
:total="total"
|
||||||
style="position: static;"
|
@pageChange="pageChange"
|
||||||
:page="page"
|
@pageSizeChange="pageSizeChange"
|
||||||
:total="total"
|
/>
|
||||||
@pageChange="pageChange"
|
|
||||||
@pageSizeChange="pageSizeChange"></pagination>
|
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -69,7 +67,7 @@ export default {
|
|||||||
name: 'ReleaseBuss2',
|
name: 'ReleaseBuss2',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
pageVerify: false,
|
pageVerify: false,
|
||||||
@@ -77,73 +75,72 @@ export default {
|
|||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
total: 0,
|
total: 0,
|
||||||
putTime: '',
|
putTime: '',
|
||||||
standardReleaseList: [], //标准发布数据
|
standardReleaseList: [], // 标准发布数据
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate()
|
this.getDate()
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// this.addDate()
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
checkTime (time) {
|
checkTime (time) {
|
||||||
return moment(time.slice(0,10)).diff(moment(), 'day') > -3
|
return moment(time.slice(0, 10)).diff(moment(), 'day') > -3
|
||||||
},
|
},
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// 此处需要调用接口,修改个人配置
|
// 此处需要调用接口,修改个人配置
|
||||||
},
|
},
|
||||||
togo () {
|
togo () {
|
||||||
if(this.total && this.total > 10){
|
if(this.total && this.total > 10) {
|
||||||
this.pageVerify = true
|
this.pageVerify = true
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
}else {
|
}else {
|
||||||
this.pageVerify = false
|
this.pageVerify = false
|
||||||
}
|
}
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherBussStandardDetails',
|
name: 'OtherBussStandardDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.standardId,
|
id: item.standardId,
|
||||||
pageType: 'BUSINESS_STAND'
|
pageType: 'BUSINESS_STAND'
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
window.open(routeUrl.href, '_blank')
|
window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate (date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.$http.get("/lawss/NewsFeed/getNewsFeed", {
|
this.$http.get('/lawss/NewsFeed/getNewsFeed', {
|
||||||
messageType: 'QYBZFB',
|
messageType: 'QYBZFB',
|
||||||
page: this.page,
|
page: this.page,
|
||||||
pageSize: this.pageSize
|
pageSize: this.pageSize
|
||||||
}, {
|
}, {
|
||||||
_this: this,loading: 'loading'
|
_this: this, loading: 'loading'
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standardReleaseList = res.data.records
|
this.standardReleaseList = res.data.records
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}, e => {
|
}, e => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.standardReleaseList = []
|
this.standardReleaseList = []
|
||||||
this.total = 0
|
this.total = 0
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -1,51 +1,57 @@
|
|||||||
<!-- 标准问答 -->
|
<!-- 标准问答 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<el-table ref="table"
|
<el-table
|
||||||
:data="data"
|
ref="table"
|
||||||
tooltip-effect = "dark"
|
:data="data"
|
||||||
border
|
tooltip-effect="dark"
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
border
|
||||||
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="序号"
|
label="序号"
|
||||||
type="index"
|
type="index"
|
||||||
align="center"
|
align="center"
|
||||||
width="55">
|
width="55"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="classification"
|
prop="classification"
|
||||||
label="类型"
|
label="类型"
|
||||||
width="150"
|
width="150"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standardEncdoing"
|
prop="standardEncdoing"
|
||||||
label="标准编号"
|
label="标准编号"
|
||||||
width="150"
|
width="150"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="problemDescription"
|
prop="problemDescription"
|
||||||
label="问题描述"
|
label="问题描述"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a class="table-jump" @click="handleClick(scope.row.id)">{{ scope.row.problemDescription }}</a>
|
<span style="display: flex;align-items: center;justify-content: center">
|
||||||
|
<a class="table-jump" @click="handleClick(scope.row.id)">{{ scope.row.problemDescription }}</a>
|
||||||
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="questioner"
|
prop="questioner"
|
||||||
label="提问人"
|
label="提问人"
|
||||||
width="150"
|
width="150"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="questionTime"
|
prop="questionTime"
|
||||||
label="提问时间"
|
label="提问时间"
|
||||||
width="150"
|
width="150"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div class="more" v-if="!pageVerify" @click="togo">更多 ⋙</div>
|
<div v-if="!pageVerify" class="more" @click="togo">更多 ⋙</div>
|
||||||
<loading :loading="loading">加载中...</loading>
|
<loading :loading="loading">加载中...</loading>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
@@ -55,7 +61,7 @@ export default {
|
|||||||
name: 'ReleaseQA',
|
name: 'ReleaseQA',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
pageVerify: false,
|
pageVerify: false,
|
||||||
@@ -63,36 +69,36 @@ export default {
|
|||||||
total: 0,
|
total: 0,
|
||||||
currentPage: 1,
|
currentPage: 1,
|
||||||
data: [],
|
data: [],
|
||||||
form:{
|
form: {
|
||||||
classification:"", // 类型
|
classification: '', // 类型
|
||||||
problemDescription: "", // 问题描述
|
problemDescription: '', // 问题描述
|
||||||
},
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate()
|
this.getDate()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
togo () {
|
togo () {
|
||||||
this.$router.push({path:'/releaseQA2'})
|
this.$router.push({ path: '/releaseQA2' })
|
||||||
},
|
},
|
||||||
handleClick (id) {
|
handleClick (id) {
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
path:'/standQA',
|
path: '/standQA',
|
||||||
query: { id }
|
query: { id }
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
getDate(){
|
getDate () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
let form = this.form
|
const form = this.form
|
||||||
form.userId = this.$store.getters.userInfo.account
|
form.userId = this.$store.getters.userInfo.account
|
||||||
form.pageSize = this.pageSize
|
form.pageSize = this.pageSize
|
||||||
form.page = this.currentPage
|
form.page = this.currentPage
|
||||||
return new Promise((resolve,reject)=>{
|
return new Promise((resolve, reject) => {
|
||||||
this.$http.get('lawss/AskQuestions/getAskQuestionsPage', form, {_this: this }, res => {
|
this.$http.get('lawss/AskQuestions/getAskQuestionsPage', form, { _this: this }, res => {
|
||||||
if(res.data){
|
if(res.data) {
|
||||||
const data = res.data
|
const data = res.data
|
||||||
this.data = data.records
|
this.data = data.records
|
||||||
this.total = data.total
|
this.total = data.total
|
||||||
@@ -101,6 +107,11 @@ export default {
|
|||||||
}
|
}
|
||||||
this.loading = false
|
this.loading = false
|
||||||
resolve(res)
|
resolve(res)
|
||||||
|
|
||||||
|
if (res.data && res.data.records && res.data.records.length > 0) {
|
||||||
|
const isNew = res.data.records[0].threeDaysNew || false
|
||||||
|
this.$emit('isNew', isNew)
|
||||||
|
}
|
||||||
}, e => {
|
}, e => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
reject(e)
|
reject(e)
|
||||||
|
|||||||
@@ -1,62 +1,68 @@
|
|||||||
<!-- 标准发布 -->
|
<!-- 标准发布 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<!-- <ul>-->
|
<!-- <ul>-->
|
||||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
||||||
<!-- <div style="height: 18px;">-->
|
<!-- <div style="height: 18px;">-->
|
||||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
||||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
||||||
<!-- </div>-->
|
<!-- </div>-->
|
||||||
<!-- </li>-->
|
<!-- </li>-->
|
||||||
<!-- </ul>-->
|
<!-- </ul>-->
|
||||||
<el-table
|
<el-table
|
||||||
ref="selection"
|
ref="selection"
|
||||||
:data="standardReleaseList"
|
:data="standardReleaseList"
|
||||||
tooltip-effect="dark"
|
tooltip-effect="dark"
|
||||||
border
|
border
|
||||||
style="cursor:pointer;"
|
style="cursor:pointer;"
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
<el-table-column
|
>
|
||||||
label="序号"
|
<el-table-column
|
||||||
type="index"
|
label="序号"
|
||||||
align="center"
|
type="index"
|
||||||
width="55">
|
align="center"
|
||||||
<template slot-scope="{scope, column, $index}">
|
width="55"
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
>
|
||||||
</template>
|
<template slot-scope="{scope, column, $index}">
|
||||||
</el-table-column>
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
<el-table-column
|
</template>
|
||||||
width="200"
|
</el-table-column>
|
||||||
prop="standard"
|
<el-table-column
|
||||||
label="标准编号">
|
width="200"
|
||||||
<template slot-scope="scope">
|
prop="standard"
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
label="标准编号"
|
||||||
</template>
|
>
|
||||||
</el-table-column>
|
<template slot-scope="scope">
|
||||||
<el-table-column
|
<span @click="handlePreview(scope.row)">{{ scope.row.standard }}</span>
|
||||||
prop="standardName"
|
</template>
|
||||||
label="标准名称">
|
</el-table-column>
|
||||||
<template slot-scope="scope">
|
<el-table-column
|
||||||
<span @click="handlePreview(scope.row)">{{ scope.row.standardName }}</span>
|
prop="standardName"
|
||||||
</template>
|
label="标准名称"
|
||||||
</el-table-column>
|
>
|
||||||
<el-table-column
|
<template slot-scope="scope">
|
||||||
width="120"
|
<span @click="handlePreview(scope.row)">{{ scope.row.standardName }}</span>
|
||||||
label="文本状态">
|
</template>
|
||||||
<template slot-scope="scope">
|
</el-table-column>
|
||||||
<span>{{ textStatusMap[scope.row.textState] }}</span>
|
<el-table-column
|
||||||
</template>
|
width="120"
|
||||||
</el-table-column>
|
label="标准状态"
|
||||||
</el-table>
|
>
|
||||||
<div class="more" v-if="!pageVerify" @click="togo">更多 ⋙</div>
|
<template slot-scope="scope">
|
||||||
<loading :loading="loading">加载中...</loading>
|
<span>{{ textStatusMap[scope.row.textState] }}</span>
|
||||||
<pagination
|
</template>
|
||||||
v-if="pageVerify"
|
</el-table-column>
|
||||||
style="position: static;"
|
</el-table>
|
||||||
:page="page"
|
<div v-if="!pageVerify" class="more" @click="togo">更多 ⋙</div>
|
||||||
:total="total"
|
<loading :loading="loading">加载中...</loading>
|
||||||
@pageChange="pageChange"
|
<pagination
|
||||||
@pageSizeChange="pageSizeChange"></pagination>
|
v-if="pageVerify"
|
||||||
|
style="position: static;"
|
||||||
|
:page="page"
|
||||||
|
:total="total"
|
||||||
|
@pageChange="pageChange"
|
||||||
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -65,7 +71,7 @@ export default {
|
|||||||
name: 'ReleaseUs',
|
name: 'ReleaseUs',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
pageVerify: false,
|
pageVerify: false,
|
||||||
@@ -73,49 +79,49 @@ export default {
|
|||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
total: 0,
|
total: 0,
|
||||||
putTime: '',
|
putTime: '',
|
||||||
standardReleaseList: [], //标准发布数据
|
standardReleaseList: [], // 标准发布数据
|
||||||
textStatusMap: {} // 文本状态id与name对应
|
textStatusMap: {} // 标准状态id与name对应
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
this.$http.get('sys/dictype/getDicTypeListCode', '', {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
if (res.data.WBZTCLASS !== undefined && res.data.WBZTCLASS !== null){
|
if (res.data.WBZTCLASS !== undefined && res.data.WBZTCLASS !== null) {
|
||||||
this.setMap(res.data.WBZTCLASS) // 文本状态
|
this.setMap(res.data.WBZTCLASS) // 标准状态
|
||||||
}
|
}
|
||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
this.getDate()
|
this.getDate()
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// this.addDate()
|
// this.addDate()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// 此处需要调用接口,修改个人配置
|
// 此处需要调用接口,修改个人配置
|
||||||
},
|
},
|
||||||
togo () {
|
togo () {
|
||||||
this.$router.push({path:'/releaseUs2'})
|
this.$router.push({ path: '/releaseUs2' })
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap (data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherStandardDetails',
|
name: 'OtherStandardDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.standardId,
|
id: item.standardId,
|
||||||
@@ -124,28 +130,28 @@ export default {
|
|||||||
})
|
})
|
||||||
window.open(routeUrl.href, '_blank')
|
window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate (date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
this.$http.get("/lawss/NewsFeed/getNewsFeed", {
|
this.$http.get('/lawss/NewsFeed/getNewsFeed', {
|
||||||
messageType: 'ZYBZFG',
|
messageType: 'ZYBZFG',
|
||||||
page: this.page,
|
page: this.page,
|
||||||
pageSize: this.pageSize
|
pageSize: this.pageSize
|
||||||
}, {
|
}, {
|
||||||
_this: this,loading: 'loading'
|
_this: this, loading: 'loading'
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standardReleaseList = res.data.records
|
this.standardReleaseList = res.data.records
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}, e => {
|
}, e => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
this.standardReleaseList = []
|
this.standardReleaseList = []
|
||||||
this.total = 0
|
this.total = 0
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -45,7 +45,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
width="120"
|
width="120"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{ textStatusMap[scope.row.textState] }}</span>
|
<span>{{ textStatusMap[scope.row.textState] }}</span>
|
||||||
</template>
|
</template>
|
||||||
@@ -75,7 +75,7 @@ export default {
|
|||||||
total: 0,
|
total: 0,
|
||||||
putTime: '',
|
putTime: '',
|
||||||
standardReleaseList: [], //标准发布数据
|
standardReleaseList: [], //标准发布数据
|
||||||
textStatusMap: {} // 文本状态id与name对应
|
textStatusMap: {} // 标准状态id与name对应
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
@@ -85,7 +85,7 @@ export default {
|
|||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
if (res.data.WBZTCLASS !== undefined && res.data.WBZTCLASS !== null){
|
if (res.data.WBZTCLASS !== undefined && res.data.WBZTCLASS !== null){
|
||||||
this.setMap(res.data.WBZTCLASS) // 文本状态
|
this.setMap(res.data.WBZTCLASS) // 标准状态
|
||||||
}
|
}
|
||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
@@ -114,7 +114,7 @@ export default {
|
|||||||
}
|
}
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
|
|||||||
@@ -1,66 +1,66 @@
|
|||||||
<!-- 企标发布 -->
|
<!-- 企标发布 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="release">
|
<div class="release">
|
||||||
<!-- <ul>-->
|
<el-table
|
||||||
<!-- <li v-for="item in standardReleaseList" :key="item.id" class="time-title" >-->
|
ref="selection"
|
||||||
<!-- <div style="height: 18px;">-->
|
:data="standardReleaseList"
|
||||||
<!-- <a @click="handlePreview(item)" style="color: #333333" class="table-jump">{{ item.standName }}</a>-->
|
tooltip-effect="dark"
|
||||||
<!-- <span class="time">{{item.issueTime ? $moment(item.issueTime).format('YYYY-MM-DD') : '' }}</span>-->
|
border
|
||||||
<!-- </div>-->
|
style="cursor:pointer;"
|
||||||
<!-- </li>-->
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
<!-- </ul>-->
|
>
|
||||||
<el-table
|
<el-table-column
|
||||||
ref="selection"
|
type="index"
|
||||||
:data="standardReleaseList"
|
width="55"
|
||||||
tooltip-effect="dark"
|
label="序号"
|
||||||
border
|
align="center"
|
||||||
style="cursor:pointer;"
|
>
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
<el-table-column
|
{{ ($index + 1) + (page - 1) * pageSize }}
|
||||||
type="index"
|
</template>
|
||||||
width="55"
|
</el-table-column>
|
||||||
label="序号"
|
<el-table-column
|
||||||
align="center">
|
prop="dataType"
|
||||||
<template slot-scope="{scope, column, $index}">
|
width="250"
|
||||||
{{ ($index + 1) + (page - 1) * pageSize }}
|
label="类型"
|
||||||
</template>
|
:show-overflow-tooltip="true"
|
||||||
</el-table-column>
|
align="center"
|
||||||
<el-table-column
|
/>
|
||||||
prop="dataType"
|
<el-table-column
|
||||||
width="250"
|
prop="dataTitle"
|
||||||
label="类型"
|
min-width="250"
|
||||||
:show-overflow-tooltip="true"
|
label="资料标题"
|
||||||
align="center">
|
:show-overflow-tooltip="true"
|
||||||
</el-table-column>
|
align="center"
|
||||||
<el-table-column
|
>
|
||||||
prop="dataTitle"
|
<template slot-scope="scope">
|
||||||
min-width="250"
|
<span style="display: flex;align-items: center;justify-content: center">
|
||||||
label="资料标题"
|
<span style="cursor:pointer;color: #409eff" @click.stop="toDetail(scope.row)">{{ scope.row.dataTitle }}</span>
|
||||||
:show-overflow-tooltip="true"
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
align="center">
|
</span>
|
||||||
<template slot-scope="scope">
|
</template>
|
||||||
<span @click.stop="toDetail(scope.row)" style="cursor:pointer;color: #409eff">{{ scope.row.dataTitle }}</span>
|
</el-table-column>
|
||||||
</template>
|
<el-table-column
|
||||||
</el-table-column>
|
prop="dataUploadTime"
|
||||||
<el-table-column
|
width="250"
|
||||||
prop="dataUploadTime"
|
label="上传时间"
|
||||||
width="250"
|
align="center"
|
||||||
label="上传时间"
|
>
|
||||||
align="center">
|
<template slot-scope="scope">
|
||||||
<template slot-scope="scope">
|
<span>{{ $moment(scope.row.dataUploadTime).format("YYYY-MM-DD") }}</span>
|
||||||
<span>{{ $moment(scope.row.dataUploadTime).format("YYYY-MM-DD") }}</span>
|
</template>
|
||||||
</template>
|
</el-table-column>
|
||||||
</el-table-column>
|
</el-table>
|
||||||
</el-table>
|
<div v-if="!pageVerify" class="more" @click="togo">更多 ⋙</div>
|
||||||
<div class="more" v-if="!pageVerify" @click="togo">更多 ⋙</div>
|
<loading :loading="loading">加载中...</loading>
|
||||||
<loading :loading="loading">加载中...</loading>
|
<pagination
|
||||||
<pagination
|
v-if="pageVerify"
|
||||||
v-if="pageVerify"
|
style="position: static;"
|
||||||
style="position: static;"
|
:page="page"
|
||||||
:page="page"
|
:total="total"
|
||||||
:total="total"
|
@pageChange="pageChange"
|
||||||
@pageChange="pageChange"
|
@pageSizeChange="pageSizeChange"
|
||||||
@pageSizeChange="pageSizeChange"></pagination>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -69,7 +69,7 @@ export default {
|
|||||||
name: 'ReleaseQA',
|
name: 'ReleaseQA',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
loading: false,
|
loading: false,
|
||||||
pageVerify: false,
|
pageVerify: false,
|
||||||
@@ -77,76 +77,80 @@ export default {
|
|||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
total: 0,
|
total: 0,
|
||||||
putTime: '',
|
putTime: '',
|
||||||
standardReleaseList: [], //标准问答数据
|
standardReleaseList: [], // 标准问答数据
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate()
|
this.getDate()
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// this.addDate()
|
// this.addDate()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
pageChange(page) {
|
pageChange (page) {
|
||||||
this.page = page
|
this.page = page
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
},
|
},
|
||||||
// 分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
pageSizeChange(pageSize) {
|
pageSizeChange (pageSize) {
|
||||||
this.pageSize = this.$store.getters.userInfo.configContent
|
this.pageSize = this.$store.getters.userInfo.configContent
|
||||||
this.getAdvice()
|
this.getAdvice()
|
||||||
// 此处需要调用接口,修改个人配置
|
// 此处需要调用接口,修改个人配置
|
||||||
},
|
},
|
||||||
togo () {
|
togo () {
|
||||||
this.$router.push({path:'/dataCenter'})
|
this.$router.push({ path: '/dataCenter' })
|
||||||
},
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
// let routeUrl = this.$router.resolve({
|
// let routeUrl = this.$router.resolve({
|
||||||
// name: 'OtherBussStandardDetails',
|
// name: 'OtherBussStandardDetails',
|
||||||
// params: {
|
// params: {
|
||||||
// id: item.standardId,
|
// id: item.standardId,
|
||||||
// pageType: 'BUSINESS_STAND'
|
// pageType: 'BUSINESS_STAND'
|
||||||
// }
|
// }
|
||||||
// })
|
// })
|
||||||
// window.open(routeUrl.href, '_blank')
|
// window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate (date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
return date != null ? date.substring(0, date.indexOf(' ')) : ''
|
||||||
},
|
},
|
||||||
toDetail(row){
|
toDetail (row) {
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: "dataCenterDetail",
|
name: 'dataCenterDetail',
|
||||||
query: {
|
query: {
|
||||||
id: row.id
|
id: row.id
|
||||||
}
|
}
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.loading = true
|
this.loading = true
|
||||||
// 模拟加载
|
// 模拟加载
|
||||||
const timer = setInterval(() => {
|
const timer = setInterval(() => {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}, 2000)
|
}, 2000)
|
||||||
console.log(timer)
|
console.log(timer)
|
||||||
let userInfo = JSON.parse(localStorage.getItem('userInfo'));
|
const userInfo = JSON.parse(localStorage.getItem('userInfo'));
|
||||||
this.$http.get("fileMaterialCenter/file-material/getFileMaterialIndex", {
|
this.$http.get('fileMaterialCenter/file-material/getFileMaterialIndex', {
|
||||||
userId: userInfo.userId,
|
userId: userInfo.userId,
|
||||||
}, {
|
}, {
|
||||||
_this: this,loading: 'loading'
|
_this: this, loading: 'loading'
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standardReleaseList = res.data
|
this.standardReleaseList = res.data
|
||||||
this.total = res.data.total
|
this.total = res.data.total
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}, e => {
|
if (res.data && res.data.length > 0) {
|
||||||
this.loading = false
|
const isNew = res.data[0].threeDaysNew || false
|
||||||
this.standardReleaseList = []
|
this.$emit('isNew', isNew)
|
||||||
this.total = 0
|
}
|
||||||
})
|
}, e => {
|
||||||
|
this.loading = false
|
||||||
|
this.standardReleaseList = []
|
||||||
|
this.total = 0
|
||||||
|
})
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|
||||||
|
|||||||
@@ -1,41 +1,36 @@
|
|||||||
<!-- 标准征求意见 -->
|
<!-- 标准征求意见 -->
|
||||||
<template>
|
<template>
|
||||||
<div class="solicitopinions">
|
<div class="solicitopinions">
|
||||||
<!-- <ul>-->
|
|
||||||
<!-- <li v-for="item in domesticDynamics" :key="item.id" class="time-title">-->
|
|
||||||
<!-- <div style="height: 18px; border-bottom: dashed 1px #cccccc">-->
|
|
||||||
<!-- <a class="title" style="color: #333333;" :title="item.cname" @click="standForComments(item)">{{ item.cid }}</a>-->
|
|
||||||
<!-- <span class="time">{{ item.endTime }}</span>-->
|
|
||||||
<!-- </div>-->
|
|
||||||
<!-- </li>-->
|
|
||||||
<!-- </ul>-->
|
|
||||||
<el-table
|
<el-table
|
||||||
ref="selection"
|
ref="selection"
|
||||||
:data="domesticDynamics"
|
:data="domesticDynamics"
|
||||||
tooltip-effect="dark"
|
tooltip-effect="dark"
|
||||||
border
|
border
|
||||||
style="cursor:pointer;"
|
style="cursor:pointer;"
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}">
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
style="width: 100%">
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
label="序号"
|
label="序号"
|
||||||
type="index"
|
type="index"
|
||||||
align="center"
|
align="center"
|
||||||
width="55">
|
width="55"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="cid"
|
prop="cid"
|
||||||
show-overflow-tooltip
|
label="标准名称"
|
||||||
label="标准名称">
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span @click="standForComments(scope.row)">{{ scope.row.cid }}</span>
|
<span style="display: flex;align-items: center" @click="standForComments(scope.row)">
|
||||||
|
<span>{{ scope.row.cid }}</span>
|
||||||
|
<img v-if="scope.row.threeDaysNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">
|
||||||
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="endTime"
|
prop="endTime"
|
||||||
width="120"
|
width="120"
|
||||||
label="结束时间">
|
label="结束时间"
|
||||||
</el-table-column>
|
/>
|
||||||
</el-table>
|
</el-table>
|
||||||
<div class="more" @click="$router.push('standardForComments')">更多 ⋙</div>
|
<div class="more" @click="$router.push('standardForComments')">更多 ⋙</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -43,45 +38,48 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "Solicitopinions",
|
name: 'Solicitopinions',
|
||||||
components: {},
|
components: {},
|
||||||
mixins: [],
|
mixins: [],
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
updateTime: "",
|
updateTime: '',
|
||||||
putTime: "",
|
putTime: '',
|
||||||
domesticDynamics: [] //标准征求意见数据
|
domesticDynamics: [] // 标准征求意见数据
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {},
|
computed: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.getDate();
|
this.getDate();
|
||||||
this.getAdvice();
|
this.getAdvice();
|
||||||
// this.addDate();
|
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
//截取时间
|
// 截取时间
|
||||||
getDate(date) {
|
getDate (date) {
|
||||||
return date != null ? date.substring(0, date.indexOf(" ")) : "";
|
return date != null ? date.substring(0, date.indexOf(' ')) : '';
|
||||||
},
|
},
|
||||||
//获取数据
|
// 获取数据
|
||||||
getAdvice() {
|
getAdvice () {
|
||||||
this.$http.get("slrs/sar-public-idea/SelectAllPage", {
|
this.$http.get('slrs/sar-public-idea/SelectAllPage', {
|
||||||
page: 1,
|
page: 1,
|
||||||
size: 10
|
size: 10
|
||||||
}, {
|
}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.domesticDynamics = res.data.records
|
this.domesticDynamics = res.data.records
|
||||||
|
if (res.data && res.data.records && res.data.records.length > 0) {
|
||||||
|
const isNew = res.data.records[0].threeDaysNew || false
|
||||||
|
this.$emit('isNew', isNew)
|
||||||
|
}
|
||||||
}, e => {
|
}, e => {
|
||||||
|
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
standForComments(item) {
|
standForComments (item) {
|
||||||
this.$store.commit("setDetailMap", this.$router.path);
|
this.$store.commit('setDetailMap', this.$router.path);
|
||||||
this.$router.push({
|
this.$router.push({
|
||||||
name: "consultationDetails",
|
name: 'consultationDetails',
|
||||||
query: {
|
query: {
|
||||||
item: JSON.stringify(item)
|
item: JSON.stringify(item)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -188,6 +188,16 @@ export default {
|
|||||||
}
|
}
|
||||||
break
|
break
|
||||||
case 'buss1':
|
case 'buss1':
|
||||||
|
let oldAndNewBuss = ''
|
||||||
|
const currentDateBuss = new Date('2024-04-01 00:00:00').getTime();
|
||||||
|
const dateBuss = new Date(row.creatTime);
|
||||||
|
const timestampBuss = dateBuss.getTime();
|
||||||
|
if (currentDateBuss > timestampBuss){
|
||||||
|
oldAndNewBuss = 'old'
|
||||||
|
}else{
|
||||||
|
oldAndNewBuss = 'new'
|
||||||
|
}
|
||||||
|
query.oldAndNew = oldAndNewBuss
|
||||||
if (row.taskInfo === '企标编写') {
|
if (row.taskInfo === '企标编写') {
|
||||||
name = 'bussLibrary2'
|
name = 'bussLibrary2'
|
||||||
}else if (row.taskInfo === '企标编写汇总'){
|
}else if (row.taskInfo === '企标编写汇总'){
|
||||||
@@ -219,8 +229,36 @@ export default {
|
|||||||
}else if (row.taskInfo === '发布'){
|
}else if (row.taskInfo === '发布'){
|
||||||
name = 'bussLibrary13'
|
name = 'bussLibrary13'
|
||||||
}
|
}
|
||||||
|
|
||||||
break
|
break
|
||||||
case 'buss2':
|
case 'buss2':
|
||||||
|
name = 'bussLibraryProduct'
|
||||||
|
if (row.taskInfo === '企标编写') {
|
||||||
|
params.type = '2'
|
||||||
|
}else if (row.taskInfo === '企标编写汇总') {
|
||||||
|
params.type = '3'
|
||||||
|
}else if (row.taskInfo === '重新企标编写汇总') {
|
||||||
|
params.type = 'C3'
|
||||||
|
}else if (row.taskInfo === '标准化初审') {
|
||||||
|
params.type = '4'
|
||||||
|
}else if (row.taskInfo === '征求意见') {
|
||||||
|
params.type = '5'
|
||||||
|
}else if (row.taskInfo === '意见汇总修订') {
|
||||||
|
params.type = '6'
|
||||||
|
}else if (row.taskInfo === '重新意见汇总修订') {
|
||||||
|
params.type = 'C6'
|
||||||
|
}else if (row.taskInfo === '标准化复审') {
|
||||||
|
params.type = '7'
|
||||||
|
}else if (row.taskInfo === '审核') {
|
||||||
|
params.type = '8'
|
||||||
|
}else if (row.taskInfo === '审定') {
|
||||||
|
params.type = '10'
|
||||||
|
}else if (row.taskInfo === '批准') {
|
||||||
|
params.type = '12'
|
||||||
|
}else if (row.taskInfo === '发布') {
|
||||||
|
params.type = '13'
|
||||||
|
}
|
||||||
|
/*
|
||||||
if (row.taskInfo === '企标编写') {
|
if (row.taskInfo === '企标编写') {
|
||||||
name = 'bussLibraryProduct2'
|
name = 'bussLibraryProduct2'
|
||||||
}else if (row.taskInfo === '企标编写汇总'){
|
}else if (row.taskInfo === '企标编写汇总'){
|
||||||
@@ -248,6 +286,7 @@ export default {
|
|||||||
}else if (row.taskInfo === '抄送'){
|
}else if (row.taskInfo === '抄送'){
|
||||||
name = 'bussLibraryProduct14'
|
name = 'bussLibraryProduct14'
|
||||||
}
|
}
|
||||||
|
*/
|
||||||
break;
|
break;
|
||||||
case 'buss3':
|
case 'buss3':
|
||||||
if (row.taskInfo === '选择复审人') {
|
if (row.taskInfo === '选择复审人') {
|
||||||
@@ -289,6 +328,16 @@ export default {
|
|||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
case '3':
|
case '3':
|
||||||
|
let oldAndNewBuss1 = ''
|
||||||
|
const currentDateBuss1 = new Date('2024-04-01 00:00:00').getTime();
|
||||||
|
const dateBuss1 = new Date(row.creatTime);
|
||||||
|
const timestampBuss1 = dateBuss1.getTime();
|
||||||
|
if (currentDateBuss1 > timestampBuss1){
|
||||||
|
oldAndNewBuss1 = 'old'
|
||||||
|
}else{
|
||||||
|
oldAndNewBuss1 = 'new'
|
||||||
|
}
|
||||||
|
query.oldAndNew = oldAndNewBuss1
|
||||||
if (row.taskInfo === '任务分发') {
|
if (row.taskInfo === '任务分发') {
|
||||||
name = 'bzzqyjStep2'
|
name = 'bzzqyjStep2'
|
||||||
} else if (row.taskInfo === '意见反馈'){
|
} else if (row.taskInfo === '意见反馈'){
|
||||||
|
|||||||
+111
-72
@@ -1,61 +1,91 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="home">
|
<div class="home">
|
||||||
<div class="home_main">
|
<div class="home_main">
|
||||||
<div class="left_wrapper">
|
<div class="left_wrapper">
|
||||||
<search-group></search-group>
|
<search-group />
|
||||||
<div class="main-tabs" style="box-shadow:1px 1px 10px rgba(0,0,0,0.1);border-radius: 3px;" >
|
<div class="main-tabs" style="box-shadow:1px 1px 10px rgba(0,0,0,0.1);border-radius: 3px;">
|
||||||
<div class="main-left-wrap" >
|
<div class="main-left-wrap">
|
||||||
<!-- <el-button type="text" style="font-size: 14px" class="more" @click="MORE">MORE</el-button>-->
|
<el-tabs
|
||||||
<el-tabs
|
v-model="activeName"
|
||||||
v-model="activeName"
|
class="home-tabs"
|
||||||
class="home-tabs"
|
@tab-click="handleTabClick"
|
||||||
@tab-click="handleTabClick"
|
>
|
||||||
>
|
<el-tab-pane name="solicitOpinions">
|
||||||
<el-tab-pane name="solicitOpinions">
|
<span slot="label" style="position: relative">
|
||||||
<span slot="label"><i class="el-icon-s-order"></i> 标准征求意见</span>
|
<i class="el-icon-s-order" />
|
||||||
<solicitOpinions></solicitOpinions>
|
标准征求意见
|
||||||
</el-tab-pane>
|
<span v-if="opinionIsNew" class="more-doc" />
|
||||||
<el-tab-pane name="releaseZL" style="overflow-y: auto;height: 100%">
|
</span>
|
||||||
<span slot="label"><i class="el-icon-chat-line-round"></i> 标准化动态</span>
|
<solicitOpinions @isNew="setIsNew($event, 'opinionIsNew')" />
|
||||||
<releaseZL></releaseZL>
|
</el-tab-pane>
|
||||||
</el-tab-pane>
|
|
||||||
<el-tab-pane name="releaseUs" style="overflow-y: auto;height: 100%">
|
<el-tab-pane name="releaseZL" style="overflow-y: auto;height: 100%">
|
||||||
<span slot="label"><i class="el-icon-s-operation"></i> 在研标准法规动态</span>
|
<span slot="label" style="position: relative">
|
||||||
<releaseUs></releaseUs>
|
<i class="el-icon-chat-line-round" />
|
||||||
</el-tab-pane>
|
标准化动态
|
||||||
<el-tab-pane name="releaseCn" style="overflow-y: auto;height: 100%">
|
<span v-if="trendsIsNew" class="more-doc" />
|
||||||
<span slot="label"><i class="el-icon-s-promotion"></i> 国内标准法规动态</span>
|
</span>
|
||||||
<release messageType="GNBZFG"></release>
|
<releaseZL @isNew="setIsNew($event, 'trendsIsNew')" />
|
||||||
</el-tab-pane>
|
</el-tab-pane>
|
||||||
<el-tab-pane name="release" style="overflow-y: auto;height: 100%">
|
|
||||||
<span slot="label"><i class="el-icon-s-promotion"></i> 国外标准法规动态</span>
|
<el-tab-pane name="releaseUs" style="overflow-y: auto;height: 100%">
|
||||||
<release messageType="GWBZFG"></release>
|
<span slot="label" style="position: relative">
|
||||||
</el-tab-pane>
|
<i class="el-icon-s-operation" />
|
||||||
<el-tab-pane name="releaseBuss" style="overflow-y: auto;height: 100%">
|
在研标准法规动态
|
||||||
<span slot="label" style="position: relative"><i class="el-icon-s-promotion"></i>
|
<span v-if="underResearchIsNew" class="more-doc" />
|
||||||
企业标准发布
|
</span>
|
||||||
<span v-if="isNew" class="more-doc"></span>
|
<!-- <releaseUs />-->
|
||||||
<!--<img v-if="isNew" src="/static/images/new.png" style="width: 30px;margin-left: 5px">-->
|
<release messageType="ZYBZFG" @isNew="setIsNew($event, 'underResearchIsNew')" />
|
||||||
</span>
|
</el-tab-pane>
|
||||||
<releaseBuss></releaseBuss>
|
|
||||||
</el-tab-pane>
|
<el-tab-pane name="releaseCn" style="overflow-y: auto;height: 100%">
|
||||||
<el-tab-pane name="releaseQA" style="overflow-y: auto;height: 100%">
|
<span slot="label" style="position: relative">
|
||||||
<span slot="label"><i class="el-icon-chat-line-round"></i> 标准问答</span>
|
<i class="el-icon-s-promotion" />
|
||||||
<releaseQA></releaseQA>
|
国内标准法规动态
|
||||||
</el-tab-pane>
|
<span v-if="domIsNew" class="more-doc" />
|
||||||
</el-tabs>
|
</span>
|
||||||
</div>
|
<release messageType="GNBZFG" @isNew="setIsNew($event, 'domIsNew')" />
|
||||||
</div>
|
</el-tab-pane>
|
||||||
</div>
|
|
||||||
<div class="right_wrapper">
|
<el-tab-pane name="release" style="overflow-y: auto;height: 100%">
|
||||||
<nav-menu></nav-menu>
|
<span slot="label" style="position: relative">
|
||||||
<todo-list></todo-list>
|
<i class="el-icon-s-promotion" />
|
||||||
|
国外标准法规动态
|
||||||
|
<span v-if="abroadIsNew" class="more-doc" />
|
||||||
|
</span>
|
||||||
|
<release messageType="GWBZFG" @isNew="setIsNew($event, 'abroadIsNew')" />
|
||||||
|
</el-tab-pane>
|
||||||
|
|
||||||
|
<el-tab-pane name="releaseBuss" style="overflow-y: auto;height: 100%">
|
||||||
|
<span slot="label" style="position: relative">
|
||||||
|
<i class="el-icon-s-promotion" />
|
||||||
|
企业标准发布
|
||||||
|
<span v-if="isNew" class="more-doc" />
|
||||||
|
</span>
|
||||||
|
<releaseBuss @isNew="setIsNew($event, 'isNew')" />
|
||||||
|
</el-tab-pane>
|
||||||
|
|
||||||
|
<el-tab-pane name="releaseQA" style="overflow-y: auto;height: 100%">
|
||||||
|
<span slot="label" style="position: relative">
|
||||||
|
<i class="el-icon-chat-line-round" />
|
||||||
|
标准问答
|
||||||
|
<span v-if="questionIsNew" class="more-doc" />
|
||||||
|
</span>
|
||||||
|
<releaseQA @isNew="setIsNew($event, 'questionIsNew')" />
|
||||||
|
</el-tab-pane>
|
||||||
|
</el-tabs>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div class="right_wrapper">
|
||||||
|
<nav-menu />
|
||||||
|
<todo-list />
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
<div calss="home_footer" style="padding: 0">
|
||||||
|
<Empennage />
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div calss="home_footer" style="padding: 0">
|
|
||||||
<Empennage></Empennage>
|
|
||||||
</div>
|
|
||||||
</div>
|
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
@@ -70,9 +100,9 @@ import releaseZL from './components/releaseZL'
|
|||||||
import solicitOpinions from './components/solicitopinions'
|
import solicitOpinions from './components/solicitopinions'
|
||||||
import navMenu from './components/navMenu'
|
import navMenu from './components/navMenu'
|
||||||
import todoList from './components/todoList'
|
import todoList from './components/todoList'
|
||||||
import Empennage from "./components/empennage"
|
import Empennage from './components/empennage'
|
||||||
export default {
|
export default {
|
||||||
name: "Home2",
|
name: 'Home2',
|
||||||
components: {
|
components: {
|
||||||
searchGroup,
|
searchGroup,
|
||||||
solicitOpinions,
|
solicitOpinions,
|
||||||
@@ -85,18 +115,27 @@ export default {
|
|||||||
todoList,
|
todoList,
|
||||||
Empennage,
|
Empennage,
|
||||||
},
|
},
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
activeName: 'solicitOpinions',
|
activeName: 'solicitOpinions',
|
||||||
isNew: false
|
opinionIsNew: false,
|
||||||
|
trendsIsNew: false,
|
||||||
|
underResearchIsNew: false,
|
||||||
|
domIsNew: false,
|
||||||
|
abroadIsNew: false,
|
||||||
|
isNew: false,
|
||||||
|
questionIsNew: false,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getAdvice()
|
// this.getAdvice()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
getAdvice() {
|
setIsNew (isNew, key) {
|
||||||
this.$http.get("/lawss/NewsFeed/getNewsFeed", {
|
this.$set(this, key, isNew)
|
||||||
|
},
|
||||||
|
getAdvice () {
|
||||||
|
this.$http.get('/lawss/NewsFeed/getNewsFeed', {
|
||||||
messageType: 'QYBZFB',
|
messageType: 'QYBZFB',
|
||||||
page: 1,
|
page: 1,
|
||||||
pageSize: 1
|
pageSize: 1
|
||||||
@@ -104,7 +143,7 @@ export default {
|
|||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
if (res.data && res.data.records && res.data.records.length > 0) {
|
if (res.data && res.data.records && res.data.records.length > 0) {
|
||||||
if (res.data.records[0].releaseDate && res.data.records[0].releaseDate!== '') {
|
if (res.data.records[0].releaseDate && res.data.records[0].releaseDate !== '') {
|
||||||
this.isNew = this.checkTime(res.data.records[0].releaseDate)
|
this.isNew = this.checkTime(res.data.records[0].releaseDate)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -113,11 +152,11 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
checkTime (time) {
|
checkTime (time) {
|
||||||
return moment(time.slice(0,10)).diff(moment(), 'day') > -3
|
return moment(time.slice(0, 10)).diff(moment(), 'day') > -3
|
||||||
},
|
},
|
||||||
handleTabClick(tab, event) {},
|
handleTabClick (tab, event) {},
|
||||||
//退出登录
|
// 退出登录
|
||||||
logout(){
|
logout () {
|
||||||
this.$confirm('您确认要退出吗?', '提示', {
|
this.$confirm('您确认要退出吗?', '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
cancelButtonText: '取消',
|
cancelButtonText: '取消',
|
||||||
@@ -135,10 +174,10 @@ export default {
|
|||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
MORE() {
|
MORE () {
|
||||||
switch (this.activeName) {
|
switch (this.activeName) {
|
||||||
case 'solicitOpinions':
|
case 'solicitOpinions':
|
||||||
this.$router.push({name: 'standardForComments'})
|
this.$router.push({ name: 'standardForComments' })
|
||||||
break
|
break
|
||||||
case 'release':
|
case 'release':
|
||||||
this.$confirm('请选择国内/海外标准', {
|
this.$confirm('请选择国内/海外标准', {
|
||||||
@@ -147,9 +186,9 @@ export default {
|
|||||||
type: 'warning',
|
type: 'warning',
|
||||||
center: true
|
center: true
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$router.push({name: 'domesticStandardsAndRegulations'})
|
this.$router.push({ name: 'domesticStandardsAndRegulations' })
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$router.push({name: 'foreignStandardsAndRegulations'})
|
this.$router.push({ name: 'foreignStandardsAndRegulations' })
|
||||||
});
|
});
|
||||||
break
|
break
|
||||||
default:
|
default:
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -779,12 +779,12 @@
|
|||||||
<el-input v-model="editForm.standNameSplit" :maxlength="100" placeholder="请输入标准名称/政策名称" clearable></el-input>
|
<el-input v-model="editForm.standNameSplit" :maxlength="100" placeholder="请输入标准名称/政策名称" clearable></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item
|
<el-form-item
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
class="add-form-item"
|
class="add-form-item"
|
||||||
prop="fileType"
|
prop="fileType"
|
||||||
label-width="140px"
|
label-width="140px"
|
||||||
>
|
>
|
||||||
<el-select v-model="editForm.fileType" placeholder="请选择文本状态" clearable>
|
<el-select v-model="editForm.fileType" placeholder="请选择标准状态" clearable>
|
||||||
<el-option v-for="opt in standFileClassifyOptions" :key="opt.value" :value="opt.value" :label="opt.label"></el-option>
|
<el-option v-for="opt in standFileClassifyOptions" :key="opt.value" :value="opt.value" :label="opt.label"></el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -831,19 +831,19 @@ export default {
|
|||||||
standId: '',
|
standId: '',
|
||||||
standNumSplit: '', // 标准号/政策号
|
standNumSplit: '', // 标准号/政策号
|
||||||
standNameSplit: '', // 标准名称/政策名称
|
standNameSplit: '', // 标准名称/政策名称
|
||||||
fileType: '' // 文本状态
|
fileType: '' // 标准状态
|
||||||
},
|
},
|
||||||
editForm: {
|
editForm: {
|
||||||
id: '',
|
id: '',
|
||||||
standId: '',
|
standId: '',
|
||||||
standNumSplit: '', // 标准号/政策号
|
standNumSplit: '', // 标准号/政策号
|
||||||
standNameSplit: '', // 标准名称/政策名称
|
standNameSplit: '', // 标准名称/政策名称
|
||||||
fileType: '' // 文本状态
|
fileType: '' // 标准状态
|
||||||
},
|
},
|
||||||
editFormRules: {
|
editFormRules: {
|
||||||
standNumSplit: [{required: true, message: '标准号/政策号不能为空', trigger: 'blur'}],
|
standNumSplit: [{required: true, message: '标准号/政策号不能为空', trigger: 'blur'}],
|
||||||
standNameSplit: [{required: true, message: '标准名称/政策名称不能为空', trigger: 'blur'}],
|
standNameSplit: [{required: true, message: '标准名称/政策名称不能为空', trigger: 'blur'}],
|
||||||
fileType: [{ required: true, message: '文本状态不能为空', trigger: 'change' }]
|
fileType: [{ required: true, message: '标准状态不能为空', trigger: 'change' }]
|
||||||
},
|
},
|
||||||
standFileClassifyOptions: [],
|
standFileClassifyOptions: [],
|
||||||
openSubmitAndExamineVisible: false,
|
openSubmitAndExamineVisible: false,
|
||||||
@@ -1692,6 +1692,7 @@ export default {
|
|||||||
this.isSubmit = false
|
this.isSubmit = false
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
this.modalItemaddShowflag = false
|
this.modalItemaddShowflag = false
|
||||||
|
this.selectMenu()
|
||||||
// this.showItemRequestDetails()
|
// this.showItemRequestDetails()
|
||||||
// let content = res.data.itermsConditions
|
// let content = res.data.itermsConditions
|
||||||
// $('#itemContentHtml').html(content)
|
// $('#itemContentHtml').html(content)
|
||||||
|
|||||||
@@ -76,7 +76,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="oldFileTypeShow"
|
prop="oldFileTypeShow"
|
||||||
label="旧文本状态"
|
label="旧标准状态"
|
||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@@ -93,7 +93,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="newFileTypeShow"
|
prop="newFileTypeShow"
|
||||||
label="新文本状态"
|
label="新标准状态"
|
||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
@@ -82,7 +82,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="fileTypeShow"
|
prop="fileTypeShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
@@ -181,7 +181,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="fileTypeShow"
|
prop="fileTypeShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
align="center">
|
align="center">
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
|
|||||||
@@ -60,12 +60,15 @@
|
|||||||
:label="$t('m.action')"
|
:label="$t('m.action')"
|
||||||
width="280px"
|
width="280px"
|
||||||
align="center">
|
align="center">
|
||||||
|
<!-- v-btn-permission="'99CSTACRWA5SKM94W2F2'"-->
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<el-button
|
||||||
class="opera-btn"
|
class="opera-btn"
|
||||||
size="mini"
|
size="mini"
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="handlePreview(scope.row)" v-btn-permission="'99CSTACRWA5SKM94W2F2'">{{$t('m.lookAtTheDifferences')}}</el-button>
|
@click="handlePreview(scope.row)">
|
||||||
|
{{$t('m.lookAtTheDifferences')}}
|
||||||
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
|
|||||||
@@ -198,7 +198,7 @@
|
|||||||
:placeholder="$t('m.pleaseEnterTheStandardNameAndPolicyName')"
|
:placeholder="$t('m.pleaseEnterTheStandardNameAndPolicyName')"
|
||||||
></el-input>
|
></el-input>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="文本状态" prop="fileType" label-width="145px">
|
<el-form-item label="标准状态" prop="fileType" label-width="145px">
|
||||||
<el-select class="bead-input" v-model="uploadFilesdfEo.fileType">
|
<el-select class="bead-input" v-model="uploadFilesdfEo.fileType">
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in options"
|
v-for="item in options"
|
||||||
@@ -395,10 +395,10 @@
|
|||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
width="110"
|
width="110"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<!-- <template slot="header" slot-scope="scope">-->
|
<!-- <template slot="header" slot-scope="scope">-->
|
||||||
<!-- <el-tooltip class="item" effect="dark" content="计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。" placement="bottom">-->
|
<!-- <el-tooltip class="item" effect="dark" content="计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。" placement="bottom">-->
|
||||||
<!-- <span>文本状态<i class="el-icon-warning-outline"></i></span>-->
|
<!-- <span>标准状态<i class="el-icon-warning-outline"></i></span>-->
|
||||||
<!-- </el-tooltip>-->
|
<!-- </el-tooltip>-->
|
||||||
<!-- </template>-->
|
<!-- </template>-->
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -520,10 +520,10 @@
|
|||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
width="110"
|
width="110"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<!-- <template slot="header" slot-scope="scope">-->
|
<!-- <template slot="header" slot-scope="scope">-->
|
||||||
<!-- <el-tooltip class="item" effect="dark" content="计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。" placement="bottom">-->
|
<!-- <el-tooltip class="item" effect="dark" content="计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。" placement="bottom">-->
|
||||||
<!-- <span>文本状态 <i class="el-icon-warning-outline"></i></span>-->
|
<!-- <span>标准状态 <i class="el-icon-warning-outline"></i></span>-->
|
||||||
<!-- </el-tooltip>-->
|
<!-- </el-tooltip>-->
|
||||||
<!-- </template>-->
|
<!-- </template>-->
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -602,7 +602,7 @@
|
|||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
sortable
|
sortable
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="110"
|
width="110"
|
||||||
>
|
>
|
||||||
|
|
||||||
@@ -684,7 +684,7 @@
|
|||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
sortable
|
sortable
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="110"
|
width="110"
|
||||||
>
|
>
|
||||||
|
|
||||||
@@ -723,6 +723,7 @@
|
|||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
|
import {baseUrl} from '@/sysConfig'
|
||||||
import axios from 'axios'
|
import axios from 'axios'
|
||||||
export default {
|
export default {
|
||||||
name: "StandardRecognition",
|
name: "StandardRecognition",
|
||||||
@@ -730,7 +731,7 @@ export default {
|
|||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
selectTableDatas: [],
|
selectTableDatas: [],
|
||||||
textStatusMap: {}, // 文本状态id与name对应
|
textStatusMap: {}, // 标准状态id与name对应
|
||||||
lawInfoTable:[],
|
lawInfoTable:[],
|
||||||
lawInfoTableLoading: true,
|
lawInfoTableLoading: true,
|
||||||
//手动查找的模态框
|
//手动查找的模态框
|
||||||
@@ -789,7 +790,7 @@ export default {
|
|||||||
// },
|
// },
|
||||||
// ],
|
// ],
|
||||||
fileType: [
|
fileType: [
|
||||||
{ required: true, message: "文本状态称不能为空", trigger: "change" },
|
{ required: true, message: "标准状态称不能为空", trigger: "change" },
|
||||||
],
|
],
|
||||||
fileName: [
|
fileName: [
|
||||||
{ required: true, message: '文件不能为空', trigger: 'change' }
|
{ required: true, message: '文件不能为空', trigger: 'change' }
|
||||||
@@ -816,7 +817,7 @@ export default {
|
|||||||
props: {},
|
props: {},
|
||||||
watch: {},
|
watch: {},
|
||||||
methods: {
|
methods: {
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
@@ -835,7 +836,7 @@ export default {
|
|||||||
this.uploadFilesdfEo.standNumber =this.handleSelectTableList[0].standCode || this.handleSelectTableList[0].lawsNumber || this.handleSelectTableList[0].standSort+" "+this.handleSelectTableList[0].standNumber+"-"+this.handleSelectTableList[0].standYear
|
this.uploadFilesdfEo.standNumber =this.handleSelectTableList[0].standCode || this.handleSelectTableList[0].lawsNumber || this.handleSelectTableList[0].standSort+" "+this.handleSelectTableList[0].standNumber+"-"+this.handleSelectTableList[0].standYear
|
||||||
this.uploadFilesdfEo.standName = this.handleSelectTableList[0].standName || this.handleSelectTableList[0].lawsName
|
this.uploadFilesdfEo.standName = this.handleSelectTableList[0].standName || this.handleSelectTableList[0].lawsName
|
||||||
// console.log('999',this.handleSelectTableList[0])
|
// console.log('999',this.handleSelectTableList[0])
|
||||||
//文本状态,下次一定(tnnd,人家的文本状态和这个的文本状态都不是一个东西,不用画蛇添足)
|
//标准状态,下次一定(tnnd,人家的标准状态和这个的标准状态都不是一个东西,不用画蛇添足)
|
||||||
// this.uploadFilesdfEo.fileType = this.handleSelectTableList[0].standTextStatusShow || this.handleSelectTableList[0].standStatusShow
|
// this.uploadFilesdfEo.fileType = this.handleSelectTableList[0].standTextStatusShow || this.handleSelectTableList[0].standStatusShow
|
||||||
this.selectModal = false
|
this.selectModal = false
|
||||||
}
|
}
|
||||||
@@ -1276,7 +1277,7 @@ export default {
|
|||||||
},
|
},
|
||||||
// 获取doc文件
|
// 获取doc文件
|
||||||
downloadFile(data) {
|
downloadFile(data) {
|
||||||
let URL = 'https://srms.foton.com.cn/ocrResultFile/' + data.docRealName
|
let URL = baseUrl + '/ocrResultFile/' + data.docRealName
|
||||||
window.open(URL)
|
window.open(URL)
|
||||||
// console.log(URL);
|
// console.log(URL);
|
||||||
// window.open(data.docRealFile);
|
// window.open(data.docRealFile);
|
||||||
|
|||||||
@@ -4,7 +4,7 @@
|
|||||||
<div class="dynamic-content">
|
<div class="dynamic-content">
|
||||||
<!-- 实施预警 -->
|
<!-- 实施预警 -->
|
||||||
<div class="dynamic">
|
<div class="dynamic">
|
||||||
<div class="container">
|
<div class="container" style="height: 100%">
|
||||||
<!-- <el-tabs v-model="activeName" @tab-click="handleClick">-->
|
<!-- <el-tabs v-model="activeName" @tab-click="handleClick">-->
|
||||||
<!-- <el-tab-pane label="标准预警" name="STANDARD">-->
|
<!-- <el-tab-pane label="标准预警" name="STANDARD">-->
|
||||||
<div class="dynamic-content">
|
<div class="dynamic-content">
|
||||||
@@ -16,23 +16,36 @@
|
|||||||
<el-row :gutter="24">
|
<el-row :gutter="24">
|
||||||
<el-col>
|
<el-col>
|
||||||
<el-form-item label="标准编号">
|
<el-form-item label="标准编号">
|
||||||
<el-input clearable size="mini"
|
<el-input
|
||||||
v-model="dynamic.standCode"
|
v-model="dynamic.standCode"
|
||||||
placeholder="根据标准编号查找">
|
clearable
|
||||||
</el-input>
|
size="mini"
|
||||||
|
placeholder="根据标准编号查找"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="标准名称">
|
<el-form-item label="标准名称">
|
||||||
<el-input clearable size="mini"
|
<el-input
|
||||||
v-model="dynamic.standName"
|
v-model="dynamic.standName"
|
||||||
placeholder="根据标准名称查找">
|
clearable
|
||||||
</el-input>
|
size="mini"
|
||||||
|
placeholder="根据标准名称查找"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<!-- 适用车型-->
|
<!-- 适用车型-->
|
||||||
<el-form-item :label="$t('m.applicableModels')" class="add-form-item form-item-disabled">
|
<el-form-item :label="$t('m.applicableModels')" class="add-form-item form-item-disabled">
|
||||||
<el-select v-model="dynamic.applyType" size="mini"
|
<el-select
|
||||||
:placeholder="$t('m.searchAccordingToThApplicableModel')" clearable>
|
v-model="dynamic.applyType"
|
||||||
<el-option v-for="opt in applyArcticOptions" :value="opt.value === undefined ? '' :opt.value"
|
size="mini"
|
||||||
:key="opt.value" :label="opt.label">{{ opt.label }}
|
:placeholder="$t('m.searchAccordingToThApplicableModel')"
|
||||||
|
clearable
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="opt in applyArcticOptions"
|
||||||
|
:key="opt.value"
|
||||||
|
:value="opt.value === undefined ? '' :opt.value"
|
||||||
|
:label="opt.label"
|
||||||
|
>
|
||||||
|
{{ opt.label }}
|
||||||
</el-option>
|
</el-option>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
@@ -53,8 +66,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
:picker-options="pickerBeginDateBefore"
|
:picker-options="pickerBeginDateBefore"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
placeholder="选择开始时间">
|
placeholder="选择开始时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="至" label-width="25px">
|
<el-form-item label="至" label-width="25px">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -63,8 +76,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
:picker-options="pickerBeginDateAfter"
|
:picker-options="pickerBeginDateAfter"
|
||||||
placeholder="选择结束时间">
|
placeholder="选择结束时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="新车型实施日期" style="margin-right: 10px" class="choose-time-area">
|
<el-form-item label="新车型实施日期" style="margin-right: 10px" class="choose-time-area">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -73,8 +86,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
:picker-options="XCXSSRQDateBefore"
|
:picker-options="XCXSSRQDateBefore"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
placeholder="选择开始时间">
|
placeholder="选择开始时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="至" label-width="25px">
|
<el-form-item label="至" label-width="25px">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -83,8 +96,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
:picker-options="XCXSSRQDateAfter"
|
:picker-options="XCXSSRQDateAfter"
|
||||||
placeholder="选择结束时间">
|
placeholder="选择结束时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
@@ -97,8 +110,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
:picker-options="SSRQDateBefore"
|
:picker-options="SSRQDateBefore"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
placeholder="选择开始时间">
|
placeholder="选择开始时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="至" label-width="25px">
|
<el-form-item label="至" label-width="25px">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -107,8 +120,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
:picker-options="SSRQDateAfter"
|
:picker-options="SSRQDateAfter"
|
||||||
placeholder="选择结束时间">
|
placeholder="选择结束时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="在产车实施日期" style="margin-right: 10px" class="choose-time-area">
|
<el-form-item label="在产车实施日期" style="margin-right: 10px" class="choose-time-area">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -117,8 +130,8 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
:picker-options="ZCCSSRQDateBefore"
|
:picker-options="ZCCSSRQDateBefore"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
placeholder="选择开始时间">
|
placeholder="选择开始时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item label="至" label-width="25px">
|
<el-form-item label="至" label-width="25px">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
@@ -127,57 +140,65 @@
|
|||||||
size="mini"
|
size="mini"
|
||||||
format="yyyy-MM-dd"
|
format="yyyy-MM-dd"
|
||||||
:picker-options="ZCCSSRQDateAfter"
|
:picker-options="ZCCSSRQDateAfter"
|
||||||
placeholder="选择结束时间">
|
placeholder="选择结束时间"
|
||||||
</el-date-picker>
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-button
|
<el-button
|
||||||
|
v-btn-permission="'5dca375c3d8d57c45e4815acf3611b34'"
|
||||||
style="margin: 6px 8px 0 0"
|
style="margin: 6px 8px 0 0"
|
||||||
type="primary"
|
type="primary"
|
||||||
size="mini"
|
size="mini"
|
||||||
v-btn-permission="'5dca375c3d8d57c45e4815acf3611b34'"
|
class="common-button-primary"
|
||||||
@click="searchBtnClick"
|
@click="searchBtnClick"
|
||||||
class="common-button-primary">
|
>
|
||||||
查询
|
查询
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
|
v-btn-permission="'8258ee44344e92365e7e5bd90f3c8d21'"
|
||||||
style="margin: 6px 0 0 0"
|
style="margin: 6px 0 0 0"
|
||||||
size="mini"
|
size="mini"
|
||||||
v-btn-permission="'8258ee44344e92365e7e5bd90f3c8d21'"
|
class="common-button-primary"
|
||||||
@click="clearBtnClick"
|
@click="clearBtnClick"
|
||||||
class="common-button-primary">
|
>
|
||||||
清空
|
清空
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<div style="float: right;margin: 0 3% 10px 0">
|
<div style="margin: 0 3% 10px 0;display: flex;justify-content: right">
|
||||||
<el-button type="primary" size="mini"
|
<el-button
|
||||||
v-btn-permission="'a34dcbc3a44a297a6b6cc95e450b28ea'"
|
v-btn-permission="'a34dcbc3a44a297a6b6cc95e450b28ea'"
|
||||||
@click="exportExcelBtn">导出Excel</el-button>
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
@click="exportExcelBtn"
|
||||||
|
>
|
||||||
|
导出Excel
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content" style="height: calc(100% - 224px);padding-bottom: 0">
|
||||||
<!-- <el-divider content-position="left" class="dynamic-child-title">实施日期预警</el-divider>-->
|
<!-- <el-divider content-position="left" class="dynamic-child-title">实施日期预警</el-divider>-->
|
||||||
<el-table
|
<el-table
|
||||||
|
v-loading="warningTableLoading"
|
||||||
:data="warningTableDatas"
|
:data="warningTableDatas"
|
||||||
style="overflow-y: auto;"
|
style="overflow-y: auto;"
|
||||||
height="100%"
|
height="calc(100% - 57px)"
|
||||||
border
|
border
|
||||||
:resizable="false"
|
:resizable="false"
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
v-loading="warningTableLoading"
|
|
||||||
@selection-change="selectChange"
|
@selection-change="selectChange"
|
||||||
>
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
width="55"
|
width="55"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="index"
|
type="index"
|
||||||
width="55"
|
width="55"
|
||||||
label="序号"
|
label="序号"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="{scope, column, $index}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
{{ ($index + 1) + (pageConfig.page - 1) * pageConfig.pageSize }}
|
{{ ($index + 1) + (pageConfig.page - 1) * pageConfig.pageSize }}
|
||||||
</template>
|
</template>
|
||||||
@@ -206,7 +227,13 @@
|
|||||||
<a @click="handlePreview(scope.row)">{{ scope.row.itemsNum }}</a>
|
<a @click="handlePreview(scope.row)">{{ scope.row.itemsNum }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="itemsName" width="320" label="条款名称" align="center" show-overflow-tooltip>
|
<el-table-column
|
||||||
|
prop="itemsName"
|
||||||
|
width="320"
|
||||||
|
label="条款名称"
|
||||||
|
align="center"
|
||||||
|
show-overflow-tooltip
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a @click="handlePreview(scope.row)">{{ scope.row.itemsName }}</a>
|
<a @click="handlePreview(scope.row)">{{ scope.row.itemsName }}</a>
|
||||||
</template>
|
</template>
|
||||||
@@ -215,12 +242,13 @@
|
|||||||
prop="termsConditions"
|
prop="termsConditions"
|
||||||
label="条款内容"
|
label="条款内容"
|
||||||
width="400"
|
width="400"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.termsConditions === null"></a>
|
<a v-if="scope.row.termsConditions === null" />
|
||||||
<a v-else @click="openDialog(scope.row.termsConditions)">{{
|
<a v-else @click="openDialog(scope.row.termsConditions)">{{
|
||||||
scope.row.termsConditions.replace(/<[^>]+>/g, '').slice(0, 20) + '...'
|
scope.row.termsConditions.replace(/<[^>]+>/g, '').slice(0, 20) + '...'
|
||||||
}}</a>
|
}}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="issueTime" label="发布日期" width="120" align="center">
|
<el-table-column prop="issueTime" label="发布日期" width="120" align="center">
|
||||||
@@ -243,15 +271,22 @@
|
|||||||
<span>{{ scope.row.zccssrq }}</span>
|
<span>{{ scope.row.zccssrq }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column prop="applyType" label="适用车型" width="150" align="center">
|
<el-table-column prop="applyType" label="适用车型" width="150" align="center" />
|
||||||
</el-table-column>
|
<el-table-column
|
||||||
<el-table-column label="操作" width="100" align="center" v-if="isShowBtn" fixed="right">
|
v-if="isShowBtn"
|
||||||
|
label="操作"
|
||||||
|
width="100"
|
||||||
|
align="center"
|
||||||
|
fixed="right"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<el-button
|
<el-button
|
||||||
|
v-btn-permission="'30d080f4194a10a76cc4994bad0afc9e'"
|
||||||
size="mini"
|
size="mini"
|
||||||
type="danger"
|
type="danger"
|
||||||
v-btn-permission="'30d080f4194a10a76cc4994bad0afc9e'"
|
@click="cancelWarning(scope.$index, scope.row)"
|
||||||
@click="cancelWarning(scope.$index, scope.row)">取消预警
|
>
|
||||||
|
取消预警
|
||||||
</el-button>
|
</el-button>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@@ -263,46 +298,58 @@
|
|||||||
:total="pageConfig.total"
|
:total="pageConfig.total"
|
||||||
autoSize
|
autoSize
|
||||||
@pageChange="page => handlePageChange('page', page)"
|
@pageChange="page => handlePageChange('page', page)"
|
||||||
@pageSizeChange="pageSize => handlePageSizeChange('pageSize', pageSize)"></pagination>
|
@pageSizeChange="pageSize => handlePageSizeChange('pageSize', pageSize)"
|
||||||
|
/>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<adc-back-top scroll-bind="dynamicInformation"></adc-back-top>
|
<adc-back-top scroll-bind="dynamicInformation" />
|
||||||
<!--导出模态框区域-->
|
<!--导出模态框区域-->
|
||||||
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
|
<el-dialog :visible.sync="exportModelFlag" title="导出文件" width="300px">
|
||||||
<el-form :inline="true" class="label-input-form search-area">
|
<el-form :inline="true" class="label-input-form search-area">
|
||||||
<el-form-item label="导出名称" class="search-item">
|
<el-form-item label="导出名称" class="search-item">
|
||||||
<el-input v-model="exportName" placeholder="请输入导出文件名称" :maxlength="30" clearable label="导出名称"/>
|
<el-input
|
||||||
|
v-model="exportName"
|
||||||
|
placeholder="请输入导出文件名称"
|
||||||
|
:maxlength="30"
|
||||||
|
clearable
|
||||||
|
label="导出名称"
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
<span slot="footer" class="demo-drawer-footer">
|
<span slot="footer" class="demo-drawer-footer">
|
||||||
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="cancal">取消</el-button>
|
<el-button size="mini" class="common-button-default" icon="el-icon-close" @click="cancal">取消</el-button>
|
||||||
<el-button type="primary" size="mini" class="common-button-primary" icon="el-icon-check"
|
<el-button
|
||||||
@click="exportExcel">提交</el-button>
|
type="primary"
|
||||||
</span>
|
size="mini"
|
||||||
|
class="common-button-primary"
|
||||||
|
icon="el-icon-check"
|
||||||
|
@click="exportExcel"
|
||||||
|
>提交</el-button>
|
||||||
|
</span>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<el-dialog
|
<el-dialog
|
||||||
class="textDialog"
|
class="textDialog"
|
||||||
title="条款内容"
|
title="条款内容"
|
||||||
:visible.sync="detailTextDialog"
|
:visible.sync="detailTextDialog"
|
||||||
width="50%">
|
width="50%"
|
||||||
<span style="line-height: normal" v-html="detailText"></span>
|
>
|
||||||
<div slot="footer" class="dialog-footer">
|
<span style="line-height: normal" v-html="detailText" />
|
||||||
</div>
|
<div slot="footer" class="dialog-footer" />
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import {mapMutations} from "vuex";
|
import { mapMutations } from 'vuex';
|
||||||
import {interfaceUrl} from "@/sysConfig";
|
import { interfaceUrl } from '@/sysConfig';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "standardWarning",
|
name: 'StandardWarning',
|
||||||
data() {
|
data () {
|
||||||
return {
|
return {
|
||||||
detailTextDialog: false,
|
detailTextDialog: false,
|
||||||
detailText: '',
|
detailText: '',
|
||||||
@@ -313,7 +360,7 @@ export default {
|
|||||||
warningTableHeight: '',
|
warningTableHeight: '',
|
||||||
applyArcticOptions: [], // 适用车型下拉框
|
applyArcticOptions: [], // 适用车型下拉框
|
||||||
isShowBtn: true,
|
isShowBtn: true,
|
||||||
activeName: "STANDARD", //tab 默认选中值
|
activeName: 'STANDARD', // tab 默认选中值
|
||||||
// 头部搜索框
|
// 头部搜索框
|
||||||
dynamic: {
|
dynamic: {
|
||||||
// 发布日期
|
// 发布日期
|
||||||
@@ -322,33 +369,33 @@ export default {
|
|||||||
// 实施日期
|
// 实施日期
|
||||||
startSSRQ: '',
|
startSSRQ: '',
|
||||||
endSSRQ: '',
|
endSSRQ: '',
|
||||||
//新车型实施日期
|
// 新车型实施日期
|
||||||
startXCXSSRQ: '',
|
startXCXSSRQ: '',
|
||||||
endXCXSSRQ: '',
|
endXCXSSRQ: '',
|
||||||
// 在产车实施日期
|
// 在产车实施日期
|
||||||
startZCCSSRQ: '',
|
startZCCSSRQ: '',
|
||||||
endZCCSSRQ: '',
|
endZCCSSRQ: '',
|
||||||
//标准编号
|
// 标准编号
|
||||||
standCode: "",
|
standCode: '',
|
||||||
//标准名称
|
// 标准名称
|
||||||
standName: "",
|
standName: '',
|
||||||
//发布日期
|
// 发布日期
|
||||||
putTime: [],
|
putTime: [],
|
||||||
//实施日期
|
// 实施日期
|
||||||
SSRQ: [],
|
SSRQ: [],
|
||||||
//新车型实施日期
|
// 新车型实施日期
|
||||||
XCXSSRQ: [],
|
XCXSSRQ: [],
|
||||||
//在产车实施日期
|
// 在产车实施日期
|
||||||
ZCCSSRQ: [],
|
ZCCSSRQ: [],
|
||||||
//适用车型
|
// 适用车型
|
||||||
applyType: "",
|
applyType: '',
|
||||||
},
|
},
|
||||||
height: null,
|
height: null,
|
||||||
energyKindOptions: [], //存放适用车型数据
|
energyKindOptions: [], // 存放适用车型数据
|
||||||
zrgcs: [], //责任工程师
|
zrgcs: [], // 责任工程师
|
||||||
// 新车型实施日期预警
|
// 新车型实施日期预警
|
||||||
newItems: [],
|
newItems: [],
|
||||||
//政策新车型实施日期预警
|
// 政策新车型实施日期预警
|
||||||
newPolicy: [],
|
newPolicy: [],
|
||||||
// 新车型条款预警
|
// 新车型条款预警
|
||||||
newStand: [],
|
newStand: [],
|
||||||
@@ -356,7 +403,7 @@ export default {
|
|||||||
oldItems: [],
|
oldItems: [],
|
||||||
// 在产车条款预警
|
// 在产车条款预警
|
||||||
oldStand: [],
|
oldStand: [],
|
||||||
//政策在产车实施日期预警
|
// 政策在产车实施日期预警
|
||||||
oldPolicy: [],
|
oldPolicy: [],
|
||||||
tableHeight: 0,
|
tableHeight: 0,
|
||||||
pageConfig: {
|
pageConfig: {
|
||||||
@@ -371,7 +418,7 @@ export default {
|
|||||||
// 发布日期当前日期之前不可选择
|
// 发布日期当前日期之前不可选择
|
||||||
pickerBeginDateBefore: {
|
pickerBeginDateBefore: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.endIssueTime;
|
const beginDateVal = this.dynamic.endIssueTime;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() > beginDateVal;
|
return time.getTime() > beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -379,7 +426,7 @@ export default {
|
|||||||
},
|
},
|
||||||
pickerBeginDateAfter: {
|
pickerBeginDateAfter: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.startIssueTime;
|
const beginDateVal = this.dynamic.startIssueTime;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() < beginDateVal;
|
return time.getTime() < beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -388,7 +435,7 @@ export default {
|
|||||||
|
|
||||||
SSRQDateBefore: {
|
SSRQDateBefore: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.endSSRQ;
|
const beginDateVal = this.dynamic.endSSRQ;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() > beginDateVal;
|
return time.getTime() > beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -396,7 +443,7 @@ export default {
|
|||||||
},
|
},
|
||||||
SSRQDateAfter: {
|
SSRQDateAfter: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.startSSRQ;
|
const beginDateVal = this.dynamic.startSSRQ;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() < beginDateVal;
|
return time.getTime() < beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -405,7 +452,7 @@ export default {
|
|||||||
|
|
||||||
XCXSSRQDateBefore: {
|
XCXSSRQDateBefore: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.endXCXSSRQ;
|
const beginDateVal = this.dynamic.endXCXSSRQ;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() > beginDateVal;
|
return time.getTime() > beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -413,7 +460,7 @@ export default {
|
|||||||
},
|
},
|
||||||
XCXSSRQDateAfter: {
|
XCXSSRQDateAfter: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.startXCXSSRQ;
|
const beginDateVal = this.dynamic.startXCXSSRQ;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() < beginDateVal;
|
return time.getTime() < beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -421,7 +468,7 @@ export default {
|
|||||||
},
|
},
|
||||||
ZCCSSRQDateBefore: {
|
ZCCSSRQDateBefore: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.endZCCSSRQ;
|
const beginDateVal = this.dynamic.endZCCSSRQ;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() > beginDateVal;
|
return time.getTime() > beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -429,7 +476,7 @@ export default {
|
|||||||
},
|
},
|
||||||
ZCCSSRQDateAfter: {
|
ZCCSSRQDateAfter: {
|
||||||
disabledDate: (time) => {
|
disabledDate: (time) => {
|
||||||
let beginDateVal = this.dynamic.startZCCSSRQ;
|
const beginDateVal = this.dynamic.startZCCSSRQ;
|
||||||
if (beginDateVal) {
|
if (beginDateVal) {
|
||||||
return time.getTime() < beginDateVal;
|
return time.getTime() < beginDateVal;
|
||||||
}
|
}
|
||||||
@@ -438,12 +485,12 @@ export default {
|
|||||||
};
|
};
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
//取消导出
|
// 取消导出
|
||||||
cancal() {
|
cancal () {
|
||||||
this.exportModelFlag = false
|
this.exportModelFlag = false
|
||||||
},
|
},
|
||||||
//确认导出
|
// 确认导出
|
||||||
exportExcel() {
|
exportExcel () {
|
||||||
console.log('293', this.selectedList)
|
console.log('293', this.selectedList)
|
||||||
const exportURL = interfaceUrl + 'sys/EarlyWarning/exportWarning?' +
|
const exportURL = interfaceUrl + 'sys/EarlyWarning/exportWarning?' +
|
||||||
'&ids=' + this.selectedList.join(',') + '&exportName=' + this.exportName
|
'&ids=' + this.selectedList.join(',') + '&exportName=' + this.exportName
|
||||||
@@ -451,12 +498,12 @@ export default {
|
|||||||
this.$message.success('导出信息成功')
|
this.$message.success('导出信息成功')
|
||||||
this.exportModelFlag = false
|
this.exportModelFlag = false
|
||||||
},
|
},
|
||||||
exportExcelBtn() {
|
exportExcelBtn () {
|
||||||
console.log('302', this.selectedList)
|
console.log('302', this.selectedList)
|
||||||
this.exportName = ''
|
this.exportName = ''
|
||||||
this.exportModelFlag = true
|
this.exportModelFlag = true
|
||||||
},
|
},
|
||||||
selectChange(alldata) {
|
selectChange (alldata) {
|
||||||
console.log('307', alldata)
|
console.log('307', alldata)
|
||||||
this.selectedList = []
|
this.selectedList = []
|
||||||
for (let i = 0; i < alldata.length; i++) {
|
for (let i = 0; i < alldata.length; i++) {
|
||||||
@@ -464,7 +511,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 获取标准预警数据 (type用于区别分页器切换)
|
// 获取标准预警数据 (type用于区别分页器切换)
|
||||||
getEarlyDate() {
|
getEarlyDate () {
|
||||||
this.warningTableLoading = true
|
this.warningTableLoading = true
|
||||||
this.$http.get('sys/EarlyWarning/getStandWarning', {
|
this.$http.get('sys/EarlyWarning/getStandWarning', {
|
||||||
applyType: '',
|
applyType: '',
|
||||||
@@ -478,58 +525,58 @@ export default {
|
|||||||
this[field].forEach(item => {
|
this[field].forEach(item => {
|
||||||
// 适用车型转换
|
// 适用车型转换
|
||||||
if (item.applyType !== null) {
|
if (item.applyType !== null) {
|
||||||
let k = (item.applyType || "").split(",");
|
const k = (item.applyType || '').split(',');
|
||||||
for (let i in this.energyKindOptions) {
|
for (const i in this.energyKindOptions) {
|
||||||
for (let m = 0; m < k.length; m++) {
|
for (let m = 0; m < k.length; m++) {
|
||||||
if (this.energyKindOptions[i].value === k[m]) {
|
if (this.energyKindOptions[i].value === k[m]) {
|
||||||
k[m] = this.energyKindOptions[i].label;
|
k[m] = this.energyKindOptions[i].label;
|
||||||
}
|
}
|
||||||
item.applyType = k.join(",");
|
item.applyType = k.join(',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 责任工程师转换
|
// 责任工程师转换
|
||||||
if (item.dutyEngineer !== null) {
|
if (item.dutyEngineer !== null) {
|
||||||
let k = (item.dutyEngineer || "").split(",");
|
const k = (item.dutyEngineer || '').split(',');
|
||||||
for (let i in this.zrgcs) {
|
for (const i in this.zrgcs) {
|
||||||
for (let m = 0; m < k.length; m++) {
|
for (let m = 0; m < k.length; m++) {
|
||||||
if (this.zrgcs[i].value === k[m]) {
|
if (this.zrgcs[i].value === k[m]) {
|
||||||
k[m] = this.zrgcs[i].label;
|
k[m] = this.zrgcs[i].label;
|
||||||
}
|
}
|
||||||
item.dutyEngineer = k.join(",");
|
item.dutyEngineer = k.join(',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
let arr = result.newItems.records
|
const arr = result.newItems.records
|
||||||
arr.forEach(item => {
|
arr.forEach(item => {
|
||||||
// 适用车型转换
|
// 适用车型转换
|
||||||
if (item.applyType !== null) {
|
if (item.applyType !== null) {
|
||||||
let k = (item.applyType || "").split(",");
|
const k = (item.applyType || '').split(',');
|
||||||
for (let i in this.energyKindOptions) {
|
for (const i in this.energyKindOptions) {
|
||||||
for (let m = 0; m < k.length; m++) {
|
for (let m = 0; m < k.length; m++) {
|
||||||
if (this.energyKindOptions[i].value === k[m]) {
|
if (this.energyKindOptions[i].value === k[m]) {
|
||||||
k[m] = this.energyKindOptions[i].label;
|
k[m] = this.energyKindOptions[i].label;
|
||||||
}
|
}
|
||||||
item.applyType = k.join(",");
|
item.applyType = k.join(',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
// 责任工程师转换
|
// 责任工程师转换
|
||||||
if (item.dutyEngineer !== null) {
|
if (item.dutyEngineer !== null) {
|
||||||
let k = (item.dutyEngineer || "").split(",");
|
const k = (item.dutyEngineer || '').split(',');
|
||||||
for (let i in this.zrgcs) {
|
for (const i in this.zrgcs) {
|
||||||
for (let m = 0; m < k.length; m++) {
|
for (let m = 0; m < k.length; m++) {
|
||||||
if (this.zrgcs[i].value === k[m]) {
|
if (this.zrgcs[i].value === k[m]) {
|
||||||
k[m] = this.zrgcs[i].label;
|
k[m] = this.zrgcs[i].label;
|
||||||
}
|
}
|
||||||
item.dutyEngineer = k.join(",");
|
item.dutyEngineer = k.join(',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.newItems = arr
|
this.newItems = arr
|
||||||
//可能还需要调整一下条款或标准的顺序(zyh)
|
// 可能还需要调整一下条款或标准的顺序(zyh)
|
||||||
switch (field) {
|
switch (field) {
|
||||||
case 'newItems':
|
case 'newItems':
|
||||||
this.pageConfig.count1 = result.newItems.total
|
this.pageConfig.count1 = result.newItems.total
|
||||||
@@ -549,9 +596,9 @@ export default {
|
|||||||
}, e => {
|
}, e => {
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//点击查看详情
|
// 点击查看详情
|
||||||
handlePreview(item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherStandardDetails',
|
name: 'OtherStandardDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.standId,
|
id: item.standId,
|
||||||
@@ -560,8 +607,8 @@ export default {
|
|||||||
})
|
})
|
||||||
window.open(routeUrl.href, '_blank')
|
window.open(routeUrl.href, '_blank')
|
||||||
},
|
},
|
||||||
//获取政策预警数据(type用于区别分页器切换)
|
// 获取政策预警数据(type用于区别分页器切换)
|
||||||
getPolicyDate() {
|
getPolicyDate () {
|
||||||
this.loading[this.field] = true
|
this.loading[this.field] = true
|
||||||
this.$http.get('sys/EarlyWarning/PolicyWarning', {
|
this.$http.get('sys/EarlyWarning/PolicyWarning', {
|
||||||
applyType: '',
|
applyType: '',
|
||||||
@@ -588,12 +635,12 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
// 切换tab
|
// 切换tab
|
||||||
handleClick(tab, event) {
|
handleClick (tab, event) {
|
||||||
this.getPolicyDate();
|
this.getPolicyDate();
|
||||||
switch (tab.name) {
|
switch (tab.name) {
|
||||||
case "POLICY":
|
case 'POLICY':
|
||||||
const computedHeight = () => {
|
const computedHeight = () => {
|
||||||
this.tableHeight = $(".content-group").find(".table-wrap").height();
|
this.tableHeight = $('.content-group').find('.table-wrap').height();
|
||||||
}
|
}
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
computedHeight()
|
computedHeight()
|
||||||
@@ -604,8 +651,8 @@ export default {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
//查找适用车型
|
// 查找适用车型
|
||||||
searchBtnClick() {
|
searchBtnClick () {
|
||||||
if (this.dynamic.putTime === null) {
|
if (this.dynamic.putTime === null) {
|
||||||
this.dynamic.putTime = []
|
this.dynamic.putTime = []
|
||||||
}
|
}
|
||||||
@@ -622,23 +669,23 @@ export default {
|
|||||||
this.warningTableLoading = true
|
this.warningTableLoading = true
|
||||||
this.$http.get('sys/EarlyWarning/getStandWarning', {
|
this.$http.get('sys/EarlyWarning/getStandWarning', {
|
||||||
...this.pageConfig,
|
...this.pageConfig,
|
||||||
//标准编号
|
// 标准编号
|
||||||
standCode: this.dynamic.standCode,
|
standCode: this.dynamic.standCode,
|
||||||
//标准名称
|
// 标准名称
|
||||||
standName: this.dynamic.standName,
|
standName: this.dynamic.standName,
|
||||||
//发布日期
|
// 发布日期
|
||||||
startIssueTime: this.dynamic.startIssueTime ? this.$moment(this.dynamic.startIssueTime).format('YYYY-MM-DD') : '',
|
startIssueTime: this.dynamic.startIssueTime ? this.$moment(this.dynamic.startIssueTime).format('YYYY-MM-DD') : '',
|
||||||
endIssueTime: this.dynamic.endIssueTime ? this.$moment(this.dynamic.endIssueTime).format('YYYY-MM-DD') : '',
|
endIssueTime: this.dynamic.endIssueTime ? this.$moment(this.dynamic.endIssueTime).format('YYYY-MM-DD') : '',
|
||||||
//实施日期
|
// 实施日期
|
||||||
startSSRQ: this.dynamic.startSSRQ ? this.$moment(this.dynamic.startSSRQ).format('YYYY-MM-DD') : '',
|
startSSRQ: this.dynamic.startSSRQ ? this.$moment(this.dynamic.startSSRQ).format('YYYY-MM-DD') : '',
|
||||||
endSSRQ: this.dynamic.endSSRQ ? this.$moment(this.dynamic.endSSRQ).format('YYYY-MM-DD') : '',
|
endSSRQ: this.dynamic.endSSRQ ? this.$moment(this.dynamic.endSSRQ).format('YYYY-MM-DD') : '',
|
||||||
//新车型实施日期
|
// 新车型实施日期
|
||||||
startXCXSSRQ: this.dynamic.startXCXSSRQ ? this.$moment(this.dynamic.startXCXSSRQ).format('YYYY-MM-DD') : '',
|
startXCXSSRQ: this.dynamic.startXCXSSRQ ? this.$moment(this.dynamic.startXCXSSRQ).format('YYYY-MM-DD') : '',
|
||||||
endXCXSSRQ: this.dynamic.endXCXSSRQ ? this.$moment(this.dynamic.endXCXSSRQ).format('YYYY-MM-DD') : '',
|
endXCXSSRQ: this.dynamic.endXCXSSRQ ? this.$moment(this.dynamic.endXCXSSRQ).format('YYYY-MM-DD') : '',
|
||||||
//在产车实施日期
|
// 在产车实施日期
|
||||||
startZCCSSRQ: this.dynamic.startZCCSSRQ ? this.$moment(this.dynamic.startZCCSSRQ).format('YYYY-MM-DD') : '',
|
startZCCSSRQ: this.dynamic.startZCCSSRQ ? this.$moment(this.dynamic.startZCCSSRQ).format('YYYY-MM-DD') : '',
|
||||||
endZCCSSRQ: this.dynamic.endZCCSSRQ ? this.$moment(this.dynamic.endZCCSSRQ).format('YYYY-MM-DD') : '',
|
endZCCSSRQ: this.dynamic.endZCCSSRQ ? this.$moment(this.dynamic.endZCCSSRQ).format('YYYY-MM-DD') : '',
|
||||||
//适用车型
|
// 适用车型
|
||||||
applyType: this.dynamic.applyType
|
applyType: this.dynamic.applyType
|
||||||
}, {
|
}, {
|
||||||
_this: this,
|
_this: this,
|
||||||
@@ -646,13 +693,13 @@ export default {
|
|||||||
// 适用车型转换
|
// 适用车型转换
|
||||||
for (let a = 0; a < res.data.records.length; a++) {
|
for (let a = 0; a < res.data.records.length; a++) {
|
||||||
if (res.data.records[a].applyType !== null) {
|
if (res.data.records[a].applyType !== null) {
|
||||||
let k = (res.data.records[a].applyType || "").split(",");
|
const k = (res.data.records[a].applyType || '').split(',');
|
||||||
for (let i in this.energyKindOptions) {
|
for (const i in this.energyKindOptions) {
|
||||||
for (let m = 0; m < k.length; m++) {
|
for (let m = 0; m < k.length; m++) {
|
||||||
if (this.energyKindOptions[i].value === k[m]) {
|
if (this.energyKindOptions[i].value === k[m]) {
|
||||||
k[m] = this.energyKindOptions[i].label;
|
k[m] = this.energyKindOptions[i].label;
|
||||||
}
|
}
|
||||||
res.data.records[a].applyType = k.join(",");
|
res.data.records[a].applyType = k.join(',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -671,28 +718,28 @@ export default {
|
|||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
clearBtnClick() {
|
clearBtnClick () {
|
||||||
this.dynamic = {
|
this.dynamic = {
|
||||||
//标准编号
|
// 标准编号
|
||||||
standCode: "",
|
standCode: '',
|
||||||
//标准名称
|
// 标准名称
|
||||||
standName: "",
|
standName: '',
|
||||||
//发布日期
|
// 发布日期
|
||||||
putTime: [],
|
putTime: [],
|
||||||
//实施日期
|
// 实施日期
|
||||||
SSRQ: [],
|
SSRQ: [],
|
||||||
//新车型实施日期
|
// 新车型实施日期
|
||||||
XCXSSRQ: [],
|
XCXSSRQ: [],
|
||||||
//在产车实施日期
|
// 在产车实施日期
|
||||||
ZCCSSRQ: [],
|
ZCCSSRQ: [],
|
||||||
//适用车型
|
// 适用车型
|
||||||
applyType: "",
|
applyType: '',
|
||||||
}
|
}
|
||||||
this.pageConfig.page = 1
|
this.pageConfig.page = 1
|
||||||
this.searchBtnClick()
|
this.searchBtnClick()
|
||||||
},
|
},
|
||||||
//取消预警
|
// 取消预警
|
||||||
cancelWarning(index, row) {
|
cancelWarning (index, row) {
|
||||||
this.$confirm('确认取消预警?', '提示', {
|
this.$confirm('确认取消预警?', '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
confirmButtonClass: 'common-button-primary',
|
confirmButtonClass: 'common-button-primary',
|
||||||
@@ -701,22 +748,22 @@ export default {
|
|||||||
roundButton: false
|
roundButton: false
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$http.get('sys/EarlyWarning/ChangePermissions', {
|
this.$http.get('sys/EarlyWarning/ChangePermissions', {
|
||||||
id: row.id,
|
id: row.id,
|
||||||
}, {}, res => {
|
}, {}, res => {
|
||||||
this.pageConfig.page = 1
|
this.pageConfig.page = 1
|
||||||
this.pageConfig.newPolicyPage = 1
|
this.pageConfig.newPolicyPage = 1
|
||||||
this.pageConfig.oldPolicyPage = 1
|
this.pageConfig.oldPolicyPage = 1
|
||||||
this.searchBtnClick()
|
this.searchBtnClick()
|
||||||
this.getEarlyDate()
|
this.getEarlyDate()
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}).catch(() => {
|
}).catch(() => {
|
||||||
this.$message.warning('取消事件')
|
this.$message.warning('取消事件')
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
showStandDetails(item) {
|
showStandDetails (item) {
|
||||||
let getStandId = item.sarId;
|
const getStandId = item.sarId;
|
||||||
let getStandType = item.sortName;
|
const getStandType = item.sortName;
|
||||||
// this.$http.get("lawss/sarMenu/judgeSarMenuByRole", {
|
// this.$http.get("lawss/sarMenu/judgeSarMenuByRole", {
|
||||||
// sarId: getStandId,
|
// sarId: getStandId,
|
||||||
// sarType: getStandType,
|
// sarType: getStandType,
|
||||||
@@ -774,24 +821,24 @@ export default {
|
|||||||
* @author: chenxiaoxi
|
* @author: chenxiaoxi
|
||||||
* @date: 2018/11/01 10:20:12
|
* @date: 2018/11/01 10:20:12
|
||||||
*/
|
*/
|
||||||
dateFormat(date) {
|
dateFormat (date) {
|
||||||
let year = new Date(date).getFullYear();
|
const year = new Date(date).getFullYear();
|
||||||
let month = new Date(date).getMonth() + 1;
|
const month = new Date(date).getMonth() + 1;
|
||||||
let day = new Date(date).getDate();
|
const day = new Date(date).getDate();
|
||||||
return year + "-" + (month < 10 ? "0" + month : month) + "-" + (day < 10 ? "0" + day : day);
|
return year + '-' + (month < 10 ? '0' + month : month) + '-' + (day < 10 ? '0' + day : day);
|
||||||
},
|
},
|
||||||
getDate(date) {
|
getDate (date) {
|
||||||
return date !== undefined && date != null ? date.split(" ")[0] : "";
|
return date !== undefined && date != null ? date.split(' ')[0] : '';
|
||||||
},
|
},
|
||||||
handlePageChange(field, page) {
|
handlePageChange (field, page) {
|
||||||
this.pageConfig.page = page
|
this.pageConfig.page = page
|
||||||
this.searchBtnClick()
|
this.searchBtnClick()
|
||||||
console.log('735', this.warningTableDatas)
|
console.log('735', this.warningTableDatas)
|
||||||
this.activeName === 'STANDARD' ? this.getEarlyDate() : this.getPolicyDate()
|
this.activeName === 'STANDARD' ? this.getEarlyDate() : this.getPolicyDate()
|
||||||
this.field = field
|
this.field = field
|
||||||
},
|
},
|
||||||
//分页每页显示数改变后方法
|
// 分页每页显示数改变后方法
|
||||||
handlePageSizeChange(field, pageSize) {
|
handlePageSizeChange (field, pageSize) {
|
||||||
// const _pageSize = field + 'PageSize'
|
// const _pageSize = field + 'PageSize'
|
||||||
// this.pageConfig[_pageSize] = pageSize
|
// this.pageConfig[_pageSize] = pageSize
|
||||||
this.pageConfig.pageSize = pageSize
|
this.pageConfig.pageSize = pageSize
|
||||||
@@ -800,9 +847,9 @@ export default {
|
|||||||
// this.activeName === 'STANDARD' ? this.getEarlyDate() : this.getPolicyDate()
|
// this.activeName === 'STANDARD' ? this.getEarlyDate() : this.getPolicyDate()
|
||||||
// this.field = field
|
// this.field = field
|
||||||
},
|
},
|
||||||
...mapMutations(["setDetailMap"]),
|
...mapMutations([ 'setDetailMap' ]),
|
||||||
|
|
||||||
openDialog(text) {
|
openDialog (text) {
|
||||||
this.detailText = text
|
this.detailText = text
|
||||||
this.detailTextDialog = true
|
this.detailTextDialog = true
|
||||||
},
|
},
|
||||||
@@ -813,7 +860,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
containerStyle() {
|
containerStyle () {
|
||||||
this.$nextTick(() => {
|
this.$nextTick(() => {
|
||||||
return this.activeName === 'POLICY' ? {
|
return this.activeName === 'POLICY' ? {
|
||||||
height: '100%'
|
height: '100%'
|
||||||
@@ -822,7 +869,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {},
|
watch: {},
|
||||||
mounted() {
|
mounted () {
|
||||||
this.warningTableLoading = true
|
this.warningTableLoading = true
|
||||||
// this.$nextTick(() => {
|
// this.$nextTick(() => {
|
||||||
// this.warningTableHeight = $(window).height()*0.54
|
// this.warningTableHeight = $(window).height()*0.54
|
||||||
@@ -835,8 +882,8 @@ export default {
|
|||||||
// window.onresize = () => {
|
// window.onresize = () => {
|
||||||
// this.height = $(".content").height();
|
// this.height = $(".content").height();
|
||||||
// };
|
// };
|
||||||
//从数据库中查询下拉框数据
|
// 从数据库中查询下拉框数据
|
||||||
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
this.$http.get('sys/dictype/getDicTypeListCode', {}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.energyKindOptions = res.data.ENERGYTYPES; // 文本状态
|
this.energyKindOptions = res.data.ENERGYTYPES; // 文本状态
|
||||||
@@ -852,13 +899,13 @@ export default {
|
|||||||
// 适用车型转换
|
// 适用车型转换
|
||||||
for (let a = 0; a < res.data.records.length; a++) {
|
for (let a = 0; a < res.data.records.length; a++) {
|
||||||
if (res.data.records[a].applyType !== null) {
|
if (res.data.records[a].applyType !== null) {
|
||||||
let k = (res.data.records[a].applyType || "").split(",");
|
const k = (res.data.records[a].applyType || '').split(',');
|
||||||
for (let i in this.energyKindOptions) {
|
for (const i in this.energyKindOptions) {
|
||||||
for (let m = 0; m < k.length; m++) {
|
for (let m = 0; m < k.length; m++) {
|
||||||
if (this.energyKindOptions[i].value === k[m]) {
|
if (this.energyKindOptions[i].value === k[m]) {
|
||||||
k[m] = this.energyKindOptions[i].label;
|
k[m] = this.energyKindOptions[i].label;
|
||||||
}
|
}
|
||||||
res.data.records[a].applyType = k.join(",");
|
res.data.records[a].applyType = k.join(',');
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -873,7 +920,6 @@ export default {
|
|||||||
});
|
});
|
||||||
});
|
});
|
||||||
this.searchBtnClick()
|
this.searchBtnClick()
|
||||||
|
|
||||||
}
|
}
|
||||||
};
|
};
|
||||||
</script>
|
</script>
|
||||||
@@ -1151,7 +1197,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
::v-deep {
|
::v-deep {
|
||||||
|
|||||||
@@ -29,6 +29,7 @@
|
|||||||
import { mapMutations, mapActions } from 'vuex'
|
import { mapMutations, mapActions } from 'vuex'
|
||||||
import axios from 'axios'
|
import axios from 'axios'
|
||||||
import util from 'util'
|
import util from 'util'
|
||||||
|
import isMobile from "../../store/isMobile";
|
||||||
export default {
|
export default {
|
||||||
name: 'Login',
|
name: 'Login',
|
||||||
data () {
|
data () {
|
||||||
@@ -187,6 +188,10 @@
|
|||||||
if (this.showIETips) {//判断是否IE浏览器
|
if (this.showIETips) {//判断是否IE浏览器
|
||||||
alert('为了最佳显示效果 请使用google chrome')
|
alert('为了最佳显示效果 请使用google chrome')
|
||||||
}
|
}
|
||||||
|
if (isMobile()) {
|
||||||
|
this.$router.push('/phoneHome')
|
||||||
|
return;
|
||||||
|
}
|
||||||
this.$router.push('/home2')
|
this.$router.push('/home2')
|
||||||
}, e => {
|
}, e => {
|
||||||
this.$message.warning('未获取到菜单')
|
this.$message.warning('未获取到菜单')
|
||||||
|
|||||||
@@ -39,7 +39,8 @@
|
|||||||
showCancelButton: false,
|
showCancelButton: false,
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
// hwh5.close()
|
// hwh5.close()
|
||||||
this.$router.go(-2)
|
// this.$router.go(-2)
|
||||||
|
this.$close()
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
/**
|
/**
|
||||||
|
|||||||
@@ -1023,7 +1023,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
width="110"
|
width="110"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' " style="color: #F56C6C">{{
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止' " style="color: #F56C6C">{{
|
||||||
textStatusMap[scope.row.textStatus]
|
textStatusMap[scope.row.textStatus]
|
||||||
@@ -1138,7 +1138,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
width="110"
|
width="110"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
textStatusMap[scope.row.textStatus]
|
textStatusMap[scope.row.textStatus]
|
||||||
@@ -1212,7 +1212,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="110"
|
width="110"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -1309,7 +1309,7 @@ export default {
|
|||||||
validFlag: '0',
|
validFlag: '0',
|
||||||
menuId: 'nomenu'
|
menuId: 'nomenu'
|
||||||
},
|
},
|
||||||
textStatusMap: {},// 文本状态id与name对应
|
textStatusMap: {},// 标准状态id与name对应
|
||||||
textState: [],
|
textState: [],
|
||||||
standModel: false,
|
standModel: false,
|
||||||
lawInfoTableLoading: true,
|
lawInfoTableLoading: true,
|
||||||
@@ -1367,8 +1367,8 @@ export default {
|
|||||||
_this: this,
|
_this: this,
|
||||||
loading: "loading"
|
loading: "loading"
|
||||||
}, res => {
|
}, res => {
|
||||||
this.setMap(res.data.WBZTCLASS);// 文本状态
|
this.setMap(res.data.WBZTCLASS);// 标准状态
|
||||||
this.textState = res.data.WBZTCLASS // 文本状态
|
this.textState = res.data.WBZTCLASS // 标准状态
|
||||||
this.pubOptions = res.data.DYGGWT //问答公共问题
|
this.pubOptions = res.data.DYGGWT //问答公共问题
|
||||||
}, e => {
|
}, e => {
|
||||||
});
|
});
|
||||||
@@ -1471,7 +1471,7 @@ export default {
|
|||||||
});
|
});
|
||||||
window.open(routeUrl.href, "_blank");
|
window.open(routeUrl.href, "_blank");
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
|
|||||||
@@ -1035,7 +1035,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
width="110"
|
width="110"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止' " style="color: #F56C6C">{{
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止' " style="color: #F56C6C">{{
|
||||||
textStatusMap[scope.row.textStatus]
|
textStatusMap[scope.row.textStatus]
|
||||||
@@ -1150,7 +1150,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
prop="textStatus"
|
prop="textStatus"
|
||||||
width="110"
|
width="110"
|
||||||
label="文本状态">
|
label="标准状态">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
<span v-if="textStatusMap[scope.row.textStatus] === '废止'" style="color: #F56C6C">{{
|
||||||
textStatusMap[scope.row.textStatus]
|
textStatusMap[scope.row.textStatus]
|
||||||
@@ -1224,7 +1224,7 @@
|
|||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="标准状态"
|
||||||
width="110"
|
width="110"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
@@ -1322,7 +1322,7 @@ export default {
|
|||||||
validFlag: '0',
|
validFlag: '0',
|
||||||
menuId: 'nomenu'
|
menuId: 'nomenu'
|
||||||
},
|
},
|
||||||
textStatusMap: {},// 文本状态id与name对应
|
textStatusMap: {},// 标准状态id与name对应
|
||||||
textState: [],
|
textState: [],
|
||||||
standModel: false,
|
standModel: false,
|
||||||
lawInfoTableLoading: true,
|
lawInfoTableLoading: true,
|
||||||
@@ -1415,8 +1415,8 @@ export default {
|
|||||||
_this: this,
|
_this: this,
|
||||||
loading: "loading"
|
loading: "loading"
|
||||||
}, res => {
|
}, res => {
|
||||||
this.setMap(res.data.WBZTCLASS);// 文本状态
|
this.setMap(res.data.WBZTCLASS);// 标准状态
|
||||||
this.textState = res.data.WBZTCLASS // 文本状态
|
this.textState = res.data.WBZTCLASS // 标准状态
|
||||||
this.pubOptions = res.data.DYGGWT //问答公共问题
|
this.pubOptions = res.data.DYGGWT //问答公共问题
|
||||||
}, e => {
|
}, e => {
|
||||||
});
|
});
|
||||||
@@ -1530,7 +1530,7 @@ export default {
|
|||||||
});
|
});
|
||||||
window.open(routeUrl.href, "_blank");
|
window.open(routeUrl.href, "_blank");
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
|
|||||||
@@ -1,10 +1,12 @@
|
|||||||
<template>
|
<template>
|
||||||
<van-popup v-model="popupShow"
|
<van-popup
|
||||||
position="right"
|
v-model="popupShow"
|
||||||
:style="{ height: '100%', width: '90%' }"
|
position="right"
|
||||||
round
|
:style="{ height: '100%', width: '70%' }"
|
||||||
:close-on-click-overlay="false"
|
round
|
||||||
@click-overlay="handleCancel">
|
:close-on-click-overlay="false"
|
||||||
|
@click-overlay="handleCancel"
|
||||||
|
>
|
||||||
<h3 class="popup-title">
|
<h3 class="popup-title">
|
||||||
<span>体系结构</span>
|
<span>体系结构</span>
|
||||||
<van-icon name="cross" size="22px" @click="handleCancel" />
|
<van-icon name="cross" size="22px" @click="handleCancel" />
|
||||||
@@ -13,28 +15,43 @@
|
|||||||
<van-field name="radio" label="标准状态">
|
<van-field name="radio" label="标准状态">
|
||||||
<template #input>
|
<template #input>
|
||||||
<van-radio-group v-model="textStatusName" direction="horizontal">
|
<van-radio-group v-model="textStatusName" direction="horizontal">
|
||||||
<van-radio name="全部">全部</van-radio>
|
<van-radio name="全部" style="margin-bottom: 5px;">全部</van-radio>
|
||||||
<van-radio name="现行有效">现行有效</van-radio>
|
<van-radio name="现行有效">现行有效</van-radio>
|
||||||
</van-radio-group>
|
</van-radio-group>
|
||||||
</template>
|
</template>
|
||||||
</van-field>
|
</van-field>
|
||||||
<standardSystemTree ref="standardSystemTreeRef" :data="standardSystemTreeData" :loading="loading" @checkedKey="getCheckedKey"></standardSystemTree>
|
<standardSystemTree ref="standardSystemTreeRef" :data="standardSystemTreeData" :loading="loading" @checkedKey="getCheckedKey" />
|
||||||
</div>
|
</div>
|
||||||
<div class="popup-footer">
|
<div class="popup-footer">
|
||||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleReset">重置</el-button>
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleReset">重置</el-button>
|
||||||
<!--<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleCancel">取消</el-button>-->
|
<!--<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleCancel">取消</el-button>-->
|
||||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="handleOk">确定</el-button>
|
<el-button
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
icon="el-icon-check"
|
||||||
|
type="primary"
|
||||||
|
@click="handleOk"
|
||||||
|
>
|
||||||
|
确定
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</van-popup>
|
</van-popup>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import standardSystemTree from "./standardSystemTree";
|
import standardSystemTree from './standardSystemTree';
|
||||||
export default {
|
export default {
|
||||||
name: "standardSystemPopup",
|
name: 'StandardSystemPopup',
|
||||||
components: {
|
components: {
|
||||||
standardSystemTree,
|
standardSystemTree,
|
||||||
},
|
},
|
||||||
|
props: {
|
||||||
|
// 以前的选中项
|
||||||
|
initKeys: {
|
||||||
|
type: Array,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
popupShow: true,
|
popupShow: true,
|
||||||
@@ -48,13 +65,6 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
|
||||||
// 以前的选中项
|
|
||||||
initKeys: {
|
|
||||||
type: Array,
|
|
||||||
required: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
initOpen () {
|
initOpen () {
|
||||||
this.checkedKeys = []
|
this.checkedKeys = []
|
||||||
@@ -76,8 +86,8 @@ export default {
|
|||||||
},
|
},
|
||||||
handleOk () {
|
handleOk () {
|
||||||
// if (this.checkedKeys.length > 0) {
|
// if (this.checkedKeys.length > 0) {
|
||||||
this.popupShow = false
|
this.popupShow = false
|
||||||
// this.$emit('standSystemKeys', this.checkedKeys)
|
// this.$emit('standSystemKeys', this.checkedKeys)
|
||||||
this.$emit('searchQuery', { checkedKeys: this.checkedKeys, textStatusName: this.textStatusName })
|
this.$emit('searchQuery', { checkedKeys: this.checkedKeys, textStatusName: this.textStatusName })
|
||||||
// } else {
|
// } else {
|
||||||
// // this.$toast('请至少选择一项');
|
// // this.$toast('请至少选择一项');
|
||||||
@@ -87,7 +97,7 @@ export default {
|
|||||||
},
|
},
|
||||||
handleCancel () {
|
handleCancel () {
|
||||||
// if (this.initKeys.length > 0) {
|
// if (this.initKeys.length > 0) {
|
||||||
this.hide()
|
this.hide()
|
||||||
// } else {
|
// } else {
|
||||||
// this.$message.error('请至少选择一项')
|
// this.$message.error('请至少选择一项')
|
||||||
// this.open()
|
// this.open()
|
||||||
@@ -100,7 +110,7 @@ export default {
|
|||||||
},
|
},
|
||||||
async getData () {
|
async getData () {
|
||||||
let url = this.api.getListStand
|
let url = this.api.getListStand
|
||||||
let query = { sorDivide: 'INLAND_STAND' }
|
const query = { sorDivide: 'INLAND_STAND' }
|
||||||
switch (this.$route.query.standType) {
|
switch (this.$route.query.standType) {
|
||||||
case 'INLAND':
|
case 'INLAND':
|
||||||
break
|
break
|
||||||
@@ -112,9 +122,9 @@ export default {
|
|||||||
query.sorDivide = 'BUSINESS_STAND'
|
query.sorDivide = 'BUSINESS_STAND'
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
//INLAND 国内 FOREIGN 海外 bussstand 企标
|
// INLAND 国内 FOREIGN 海外 bussstand 企标
|
||||||
const res = await this.$http._getData(url,query,{
|
const res = await this.$http._getData(url, query, {
|
||||||
_this:this,
|
_this: this,
|
||||||
loading: 'loading'
|
loading: 'loading'
|
||||||
})
|
})
|
||||||
if (res.ok && res.data) {
|
if (res.ok && res.data) {
|
||||||
|
|||||||
+2749
-2611
File diff suppressed because it is too large
Load Diff
@@ -133,10 +133,10 @@ export default {
|
|||||||
loading: true,
|
loading: true,
|
||||||
page: 1,
|
page: 1,
|
||||||
standList: [],
|
standList: [],
|
||||||
standStateOptions: [], //标准文本状态
|
standStateOptions: [], //标准标准状态
|
||||||
lawsTextStateOptions: [], //政策文本状态
|
lawsTextStateOptions: [], //政策标准状态
|
||||||
standNatureOptions: [],
|
standNatureOptions: [],
|
||||||
textStatusMap: {},// 文本状态id与name对应
|
textStatusMap: {},// 标准状态id与name对应
|
||||||
natureMap:{},
|
natureMap:{},
|
||||||
lawsMap:{},
|
lawsMap:{},
|
||||||
textStatus: '现行有效',
|
textStatus: '现行有效',
|
||||||
@@ -587,7 +587,7 @@ export default {
|
|||||||
back(){
|
back(){
|
||||||
this.$router.push('/phoneHome')
|
this.$router.push('/phoneHome')
|
||||||
},
|
},
|
||||||
//将文本状态的id和name相对应
|
//将标准状态的id和name相对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label);
|
this.$set(this.textStatusMap, item.value, item.label);
|
||||||
@@ -625,8 +625,8 @@ export default {
|
|||||||
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standStateOptions = res.data.WBZTCLASS; // 标准文本状态
|
this.standStateOptions = res.data.WBZTCLASS; // 标准标准状态
|
||||||
this.lawsTextStateOptions = res.data.lawsTextState //政策文本状态
|
this.lawsTextStateOptions = res.data.lawsTextState //政策标准状态
|
||||||
console.log(this.lawsTextStateOptions);
|
console.log(this.lawsTextStateOptions);
|
||||||
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
|
this.standNatureOptions = res.data.SARPROPERTY // 标准性质
|
||||||
this.setMap(this.standStateOptions);
|
this.setMap(this.standStateOptions);
|
||||||
|
|||||||
@@ -8,7 +8,7 @@
|
|||||||
<div style="display: flex;align-items: center">
|
<div style="display: flex;align-items: center">
|
||||||
<van-search
|
<van-search
|
||||||
style="flex: 1;padding-right: 0"
|
style="flex: 1;padding-right: 0"
|
||||||
v-model="searchQuery.selectValue"
|
v-model="searchQuery.findValue"
|
||||||
show-action
|
show-action
|
||||||
placeholder="请输入搜索关键词"
|
placeholder="请输入搜索关键词"
|
||||||
@search="onSearch"
|
@search="onSearch"
|
||||||
@@ -40,60 +40,44 @@
|
|||||||
:key="item.id"
|
:key="item.id"
|
||||||
@click="jumpDetails(item)">
|
@click="jumpDetails(item)">
|
||||||
<div class="standTitle">
|
<div class="standTitle">
|
||||||
<div v-if="$route.query.standType === 'POLICY'" class="title">{{item.lawsNumber}}</div>
|
<div class="title" v-if="$route.query.standType === 'INLAND' || $route.query.standType === 'FOREIGN'">{{ convertTitle(item.standSort, item.standNumber, item.standYear) }}</div>
|
||||||
<div v-else class="title">{{ item.stand_code || item.numbershow }}</div>
|
<div class="title" v-else-if="$route.query.standType === 'bussstand'">{{ item.standCode || convertTitle(item.standSort, item.standNumber, item.standYear) }}</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="standContent">
|
<div class="standContent">
|
||||||
<div class="standState">{{(item.nameshow && item.nameshow !== '') ? item.nameshow : (item.standName && item.standName !== '') ? item.standName : item.standEnName }}</div>
|
<div class="standState">{{ item.standName || item.standEnName || '-' }}</div>
|
||||||
<div class="standSubTime" v-if="$route.query.standType === 'POLICY'">标准状态:
|
|
||||||
<span v-if="lawsMap[item.lawsTextState] === '作废'"
|
<template>
|
||||||
style="color: #F56C6C; padding-left: 5px;">
|
<div class="standSubTime" v-if="$route.query.standType === 'INLAND' || $route.query.standType === 'FOREIGN'">
|
||||||
{{ lawsMap[item.lawsTextState] }}
|
标准状态:
|
||||||
</span>
|
<span v-if="item.standTextStatusShow === '废止'" style="color: #F56C6C; padding-left: 5px;">{{ item.standTextStatusShow }}</span>
|
||||||
<span v-else-if="lawsMap[item.lawsTextState] === '参考' || lawsMap[item.lawsTextState] === '被代替' || lawsMap[item.lawsTextState] === '现行有效'"
|
<span v-else-if="item.standTextStatusShow === '参考' || item.standTextStatusShow === '被代替'" style="color: #35720B; padding-left: 5px;">{{ item.standTextStatusShow }}</span>
|
||||||
style="color: #35720B; padding-left: 5px;">
|
<span v-else style=" padding-left: 5px;">{{ item.standTextStatusShow }}</span>
|
||||||
{{ lawsMap[item.lawsTextState] }}
|
</div>
|
||||||
</span>
|
|
||||||
<span v-else style=" padding-left: 5px;">
|
<div class="standSubTime" v-else-if="$route.query.standType === 'bussstand'">
|
||||||
{{ lawsMap[item.lawsTextState] }}
|
标准状态:
|
||||||
</span>
|
<span v-if="item.standStatusShow === '废止'" style="color: #F56C6C; padding-left: 5px;">{{ item.standStatusShow }}</span>
|
||||||
</div>
|
<span v-else-if="item.standStatusShow === '参考' || item.standStatusShow === '被代替'" style="color: #35720B; padding-left: 5px;">{{ item.standStatusShow }}</span>
|
||||||
<div class="standSubTime" v-else-if="$route.query.standType === 'bussstand'" >标准状态:
|
<span v-else style=" padding-left: 5px;">{{ item.standStatusShow }}</span>
|
||||||
<span v-if="item.textStatusBussName === '废止'" style="color: #F56C6C; padding-left: 5px;"> {{ item.textStatusBussName }} </span>
|
</div>
|
||||||
<span v-else-if="item.textStatusBussName === '参考' || item.textStatusBussName === '被代替'" style="color: #35720B; padding-left: 5px;">{{ item.textStatusBussName }}</span>
|
</template>
|
||||||
<span v-else style=" padding-left: 5px;">{{ item.textStatusBussName }}</span>
|
|
||||||
</div>
|
|
||||||
<div class="standSubTime" v-else >标准状态:
|
|
||||||
<span v-if="textStatusMap[item.textStatus] === '废止'"
|
|
||||||
style="color: #F56C6C; padding-left: 5px;">
|
|
||||||
{{ textStatusMap[item.textStatus] }}
|
|
||||||
</span>
|
|
||||||
<span v-else-if="textStatusMap[item.textStatus] === '参考' || textStatusMap[item.textStatus] === '被代替'"
|
|
||||||
style="color: #35720B; padding-left: 5px;">
|
|
||||||
{{ textStatusMap[item.textStatus] }}
|
|
||||||
</span>
|
|
||||||
<span v-else style=" padding-left: 5px;">
|
|
||||||
{{ textStatusMap[item.textStatus] }}
|
|
||||||
</span>
|
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="content-time">
|
<div class="content-time">
|
||||||
<div style="margin-top: 10px">
|
<div style="width: 50%">发布日期: <span style="padding-left: 5px;">{{ convertTime(item.issueTime) }}</span></div>
|
||||||
<span style="padding-left: 10px;min-width: 200px;">
|
<template>
|
||||||
发布日期: {{ item.issueTime ? (item.issueTime !== '' ? $moment(item.issueTime).format("YYYY-MM-DD") : " ") : " " }}
|
<div v-if="$route.query.standType === 'INLAND' || $route.query.standType === 'FOREIGN'"
|
||||||
</span>
|
style="width: 50%">实施日期: <span style="padding-left: 5px;">{{ convertTime(item.ssrq) }}</span></div>
|
||||||
<span style="padding-left: 15px;" v-if="$route.query.standType === 'POLICY'">实施日期: {{item.XCXSSRQLAWS}}</span>
|
<div v-else-if="$route.query.standType === 'bussstand'"
|
||||||
<span style="padding-left: 15px;" v-else-if="$route.query.standType === 'bussstand'">实施日期: {{item.putTime}}</span>
|
style="width: 50%">实施日期: <span style="padding-left: 5px;">{{ convertTime(item.putTime) }}</span></div>
|
||||||
<span style="padding-left: 15px;" v-else>实施日期: {{item.SSRQ}}</span>
|
</template>
|
||||||
</div>
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</PhoneScroll>
|
</PhoneScroll>
|
||||||
|
|
||||||
<standardSystemPopup :init-keys="searchQuery.standSystem" @searchQuery="setSearchQuery" ref="standardSystemPopupRef" />
|
<standardSystemPopup :init-keys="convertId(searchQuery.menuId)" @searchQuery="setSearchQuery" ref="standardSystemPopupRef" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -109,12 +93,10 @@ export default {
|
|||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
const searchQuery = {
|
const searchQuery = {
|
||||||
selectIndex: 'stand',
|
|
||||||
selectValue: '',
|
|
||||||
standSystem: [],
|
|
||||||
textStatus: '全部',
|
|
||||||
selectType: 'titleSearch',
|
|
||||||
standType: 'INLAND',
|
standType: 'INLAND',
|
||||||
|
findValue: '',
|
||||||
|
textState: '全部',
|
||||||
|
menuId: '',
|
||||||
page: 1,
|
page: 1,
|
||||||
pageSize: 20
|
pageSize: 20
|
||||||
}
|
}
|
||||||
@@ -126,7 +108,9 @@ export default {
|
|||||||
loading: false,
|
loading: false,
|
||||||
list: [],
|
list: [],
|
||||||
url: {
|
url: {
|
||||||
searchSarBykey: 'search/searchCenter/searchSarBykey'
|
searchSarBykey: 'search/searchCenter/searchSarBykey',
|
||||||
|
getSarStandardsInfoPageForPhone: 'sarStandardsInfo/sar-standards-info/getSarStandardsInfoPageForPhone',
|
||||||
|
getSarBussionStandPageForPhone: 'lawss/sarBussionessStand/getSarBussionStandPageForPhone'
|
||||||
},
|
},
|
||||||
textStatusMap: {},
|
textStatusMap: {},
|
||||||
natureMap:{},
|
natureMap:{},
|
||||||
@@ -147,9 +131,6 @@ export default {
|
|||||||
case 'bussstand':
|
case 'bussstand':
|
||||||
vm.titleName = '企业标准'
|
vm.titleName = '企业标准'
|
||||||
break
|
break
|
||||||
case 'POLICY':
|
|
||||||
vm.titleName = '国内外政策库'
|
|
||||||
break
|
|
||||||
}
|
}
|
||||||
vm.searchQuery = { ...vm.initSearQuery }
|
vm.searchQuery = { ...vm.initSearQuery }
|
||||||
vm.$refs.standardSystemPopupRef.initOpen()
|
vm.$refs.standardSystemPopupRef.initOpen()
|
||||||
@@ -183,6 +164,31 @@ export default {
|
|||||||
// this.getData()
|
// this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
convertTitle (standSort, standName, standYear) {
|
||||||
|
if (!standYear || standYear === '') {
|
||||||
|
return standSort + ' ' + standName
|
||||||
|
} else {
|
||||||
|
return standSort + ' ' + standName + '-' + standYear
|
||||||
|
}
|
||||||
|
},
|
||||||
|
convertTime (time) {
|
||||||
|
if (!time || time === '') {
|
||||||
|
return '-'
|
||||||
|
} else {
|
||||||
|
const timeArr = time.split(',')
|
||||||
|
if (timeArr.length === 1) {
|
||||||
|
return this.$moment(time).format('YYYY-MM-DD')
|
||||||
|
} else {
|
||||||
|
return this.$moment(timeArr[0]).format('YYYY-MM-DD') + ',...'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
convertId (idArr) {
|
||||||
|
if (idArr === '') {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
return idArr.split(',')
|
||||||
|
},
|
||||||
onSearch () {
|
onSearch () {
|
||||||
this.list = []
|
this.list = []
|
||||||
// this.searchQuery.page = 1
|
// this.searchQuery.page = 1
|
||||||
@@ -193,21 +199,14 @@ export default {
|
|||||||
getData (page) {
|
getData (page) {
|
||||||
switch (this.$route.query.standType) {
|
switch (this.$route.query.standType) {
|
||||||
case 'INLAND':
|
case 'INLAND':
|
||||||
this.searchQuery.selectIndex = 'stand'
|
|
||||||
this.searchQuery.standType = 'INLAND'
|
this.searchQuery.standType = 'INLAND'
|
||||||
break
|
break
|
||||||
case 'FOREIGN':
|
case 'FOREIGN':
|
||||||
this.searchQuery.selectIndex = 'stand'
|
|
||||||
this.searchQuery.standType = 'FOREIGN'
|
this.searchQuery.standType = 'FOREIGN'
|
||||||
break
|
break
|
||||||
case 'bussstand':
|
case 'bussstand':
|
||||||
this.searchQuery.selectIndex = 'bussstand'
|
|
||||||
this.searchQuery.standType = 'bussstand'
|
this.searchQuery.standType = 'bussstand'
|
||||||
break
|
break
|
||||||
case 'POLICY':
|
|
||||||
this.searchQuery.selectIndex = 'laws'
|
|
||||||
this.searchQuery.standType = 'laws'
|
|
||||||
break
|
|
||||||
}
|
}
|
||||||
return new Promise((resolve, reject) => {
|
return new Promise((resolve, reject) => {
|
||||||
const config = {
|
const config = {
|
||||||
@@ -217,7 +216,11 @@ export default {
|
|||||||
if (page) {
|
if (page) {
|
||||||
this.searchQuery.page = page
|
this.searchQuery.page = page
|
||||||
}
|
}
|
||||||
this.$http._post("search/searchCenter/searchSarBykey", this.searchQuery, config).then(res => {
|
let url = this.url.getSarStandardsInfoPageForPhone
|
||||||
|
if (this.$route.query.standType === 'bussstand') {
|
||||||
|
url = this.url.getSarBussionStandPageForPhone
|
||||||
|
}
|
||||||
|
this.$http._getData(url, this.searchQuery, config).then(res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
this.total = res.data.count
|
this.total = res.data.count
|
||||||
|
|
||||||
@@ -236,8 +239,8 @@ export default {
|
|||||||
this.$refs.standardSystemPopupRef.open()
|
this.$refs.standardSystemPopupRef.open()
|
||||||
},
|
},
|
||||||
setSearchQuery (searchQuery) {
|
setSearchQuery (searchQuery) {
|
||||||
this.searchQuery.standSystem = searchQuery.checkedKeys
|
this.searchQuery.menuId = searchQuery.checkedKeys.join(',')
|
||||||
this.searchQuery.textStatus = searchQuery.textStatusName
|
this.searchQuery.textState = searchQuery.textStatusName
|
||||||
this.onSearch()
|
this.onSearch()
|
||||||
},
|
},
|
||||||
getDicTypeListCode () {
|
getDicTypeListCode () {
|
||||||
@@ -371,8 +374,10 @@ export default {
|
|||||||
font-size: 3.4vw;
|
font-size: 3.4vw;
|
||||||
width: 100%;
|
width: 100%;
|
||||||
height: 35px;
|
height: 35px;
|
||||||
margin-top: 5px;
|
line-height: 35px;
|
||||||
|
padding: 0 10px;
|
||||||
border-top: 1px solid #cccccc;
|
border-top: 1px solid #cccccc;
|
||||||
|
display: flex;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
.card-content:first-child{
|
.card-content:first-child{
|
||||||
|
|||||||
@@ -219,7 +219,7 @@
|
|||||||
</template>
|
</template>
|
||||||
<el-row :gutter="5" class="half">
|
<el-row :gutter="5" class="half">
|
||||||
<el-col :span="8">
|
<el-col :span="8">
|
||||||
<label title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。">文本状态</label>
|
<label title="“计划修订”、“修订中”均为现行有效版本;“已修订”标准的有效性根据实际实施情况判定。">标准状态</label>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="16">
|
<el-col :span="16">
|
||||||
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
<span>{{ textStatusMap[sarStandardsInfoEO.textStatus] || '-' }}</span>
|
||||||
@@ -1978,7 +1978,7 @@ export default {
|
|||||||
FormatDate(date) {
|
FormatDate(date) {
|
||||||
return moment(date).format('YYYY-MM-DD');
|
return moment(date).format('YYYY-MM-DD');
|
||||||
},
|
},
|
||||||
// 将文本状态的id与name对应
|
// 将标准状态的id与name对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label)
|
this.$set(this.textStatusMap, item.value, item.label)
|
||||||
@@ -3445,7 +3445,7 @@ export default {
|
|||||||
this.emergyKindOptions = res.data.ENERGYTYPES
|
this.emergyKindOptions = res.data.ENERGYTYPES
|
||||||
this.requestOptions = res.data.REQUESTTYPE
|
this.requestOptions = res.data.REQUESTTYPE
|
||||||
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
this.BZFGGXOUIUJ = res.data.BZFGGXOUIUJ // 企标覆盖关系
|
||||||
this.setMap(res.data.WBZTCLASS) // 文本状态
|
this.setMap(res.data.WBZTCLASS) // 标准状态
|
||||||
this.setMap(res.data.SARPROPERTY) // 标准性质
|
this.setMap(res.data.SARPROPERTY) // 标准性质
|
||||||
}, e => {
|
}, e => {
|
||||||
})
|
})
|
||||||
|
|||||||
@@ -135,8 +135,8 @@ export default {
|
|||||||
standList: [],
|
standList: [],
|
||||||
standardReleaseList: [],
|
standardReleaseList: [],
|
||||||
page: 1,
|
page: 1,
|
||||||
standStateOptions: [], //存放文本状态
|
standStateOptions: [], //存放标准状态
|
||||||
textStatusMap: {},// 文本状态id与name对应
|
textStatusMap: {},// 标准状态id与name对应
|
||||||
loading: true,
|
loading: true,
|
||||||
scrolled: "",
|
scrolled: "",
|
||||||
moreFlag: false,
|
moreFlag: false,
|
||||||
@@ -310,7 +310,7 @@ export default {
|
|||||||
console.log(e);
|
console.log(e);
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
//将文本状态的id和name相对应
|
//将标准状态的id和name相对应
|
||||||
setMap(data) {
|
setMap(data) {
|
||||||
data.forEach(item => {
|
data.forEach(item => {
|
||||||
this.$set(this.textStatusMap, item.value, item.label);
|
this.$set(this.textStatusMap, item.value, item.label);
|
||||||
@@ -336,7 +336,7 @@ export default {
|
|||||||
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
this.$http.get("sys/dictype/getDicTypeListCode", {}, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.standStateOptions = res.data.WBZTCLASS; // 文本状态
|
this.standStateOptions = res.data.WBZTCLASS; // 标准状态
|
||||||
this.setMap(this.standStateOptions);
|
this.setMap(this.standStateOptions);
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -0,0 +1,146 @@
|
|||||||
|
<template>
|
||||||
|
<PhoneScroll
|
||||||
|
height="calc(100vh - 101px)"
|
||||||
|
:data="list"
|
||||||
|
:page="searchQuery.page"
|
||||||
|
:pageSize="searchQuery.size"
|
||||||
|
:total="total"
|
||||||
|
:loading="loading"
|
||||||
|
pullUpLoad
|
||||||
|
pullDownRefresh
|
||||||
|
:getDataHandler="getData">
|
||||||
|
<div style="padding-top: 10px">
|
||||||
|
<div class="card-content" v-for="item in list" :key="item.id" @click="jumpDetails(item)">
|
||||||
|
<div class="standTitle">
|
||||||
|
<div class="title">{{ item.cid }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="standContent">
|
||||||
|
<div class="standState">{{ item.standardName }}</div>
|
||||||
|
<div class="standState">
|
||||||
|
标准/政策: <span style="color: #35720B; padding-left: 5px;">{{ item.category }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="timeFooter">
|
||||||
|
<div style="width: 50%">开始日期: <span style="padding-left: 5px;">{{ convertTime(item.startTime) }}</span></div>
|
||||||
|
<div style="width: 50%">结束日期: <span style="padding-left: 5px;">{{ convertTime(item.endTime) }}</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</PhoneScroll>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import PhoneScroll from "@/components/hzwlComponents/phone/PhoneScroll";
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: "SolicitOpinions",
|
||||||
|
components: {
|
||||||
|
PhoneScroll
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
searchQuery: {
|
||||||
|
page: 1,
|
||||||
|
size: 10,
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
list: [],
|
||||||
|
loading: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
convertTime (time) {
|
||||||
|
return time !== '' ? this.$moment(time).format('YYYY-MM-DD') : '-'
|
||||||
|
},
|
||||||
|
getData (page) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'loading'
|
||||||
|
}
|
||||||
|
if (page) {
|
||||||
|
this.searchQuery.page = page
|
||||||
|
}
|
||||||
|
this.$http._getData("slrs/sar-public-idea/SelectAllPage", this.searchQuery, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.total = res.data.total
|
||||||
|
|
||||||
|
if (this.searchQuery.page === 1) {
|
||||||
|
this.list = res.data.records
|
||||||
|
} else {
|
||||||
|
this.list = [...this.list, ...res.data.records]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).finally(() => {
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
jumpDetails () {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.scroll-wrapper {
|
||||||
|
height: calc(100vh - 131px);
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-content {
|
||||||
|
width: 95%;
|
||||||
|
height: auto;
|
||||||
|
margin: 10px;
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
border-radius: 5px;
|
||||||
|
box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.1);
|
||||||
|
|
||||||
|
.standTitle {
|
||||||
|
.title {
|
||||||
|
font-size: 3.4vw;
|
||||||
|
color: #333333;
|
||||||
|
font-weight: 600;
|
||||||
|
height: auto;
|
||||||
|
line-height: 20px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
text-align: left;
|
||||||
|
border-bottom: 1px solid #cccccc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.standContent {
|
||||||
|
font-size: 3.4vw;
|
||||||
|
color: #555555;
|
||||||
|
font-weight: 450;
|
||||||
|
margin-top: 5px;
|
||||||
|
|
||||||
|
.standState {
|
||||||
|
padding-left: 10px;
|
||||||
|
//height: 35px;
|
||||||
|
line-height: 25px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.timeFooter {
|
||||||
|
font-size: 3.4vw;
|
||||||
|
padding: 0 10px;
|
||||||
|
height: 35px;
|
||||||
|
line-height: 35px;
|
||||||
|
border-top: 1px solid #cccccc;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.card-content:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
|
|
||||||
@@ -0,0 +1,199 @@
|
|||||||
|
<template>
|
||||||
|
<PhoneScroll
|
||||||
|
height="calc(100vh - 101px)"
|
||||||
|
:data="list"
|
||||||
|
:page="searchQuery.page"
|
||||||
|
:pageSize="searchQuery.pageSize"
|
||||||
|
:total="total"
|
||||||
|
:loading="loading"
|
||||||
|
pullUpLoad
|
||||||
|
pullDownRefresh
|
||||||
|
:getDataHandler="getData"
|
||||||
|
>
|
||||||
|
<div style="padding-top: 10px">
|
||||||
|
<div v-for="item in list" :key="item.id" class="card-content" @click="jumpDetails(item)">
|
||||||
|
<div class="standTitle">
|
||||||
|
<div class="title">{{ item.standard || '-' }}</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="standContent">
|
||||||
|
<div class="standState">{{ item.standardName || '-' }}</div>
|
||||||
|
<div class="standState">
|
||||||
|
标准状态: <span style="color: #35720B; padding-left: 5px;">{{ textStateMap[item.textState] || '-' }}</span>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="timeFooter">
|
||||||
|
<div style="width: 50%">发布日期: <span style="padding-left: 5px;">{{ convertTime(item.releaseDate) }}</span></div>
|
||||||
|
<div style="width: 50%">实施日期: <span style="padding-left: 5px;">{{ convertTime(item.putTime) }}</span></div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</PhoneScroll>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import PhoneScroll from '@/components/hzwlComponents/phone/PhoneScroll';
|
||||||
|
|
||||||
|
export default {
|
||||||
|
name: 'Standard',
|
||||||
|
components: {
|
||||||
|
PhoneScroll
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
messageType: {
|
||||||
|
type: String,
|
||||||
|
default: 'ZYBZFG'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
searchQuery: {
|
||||||
|
page: 1,
|
||||||
|
pageSize: 10,
|
||||||
|
messageType: this.messageType
|
||||||
|
},
|
||||||
|
total: 0,
|
||||||
|
list: [],
|
||||||
|
loading: false,
|
||||||
|
dict: {},
|
||||||
|
textStateMap: {}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
this.getDicTypeListCode()
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
convertTime (time) {
|
||||||
|
// return (time && time !== '') ? this.$moment(time).format('YYYY-MM-DD') : '-'
|
||||||
|
if (!time || time === '') {
|
||||||
|
return '-'
|
||||||
|
} else {
|
||||||
|
const timeArr = time.split(',')
|
||||||
|
if (timeArr.length === 1) {
|
||||||
|
return this.$moment(time).format('YYYY-MM-DD')
|
||||||
|
} else {
|
||||||
|
return this.$moment(timeArr[0]).format('YYYY-MM-DD') + ',...'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
getData (page) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'loading'
|
||||||
|
}
|
||||||
|
if (page) {
|
||||||
|
this.searchQuery.page = page
|
||||||
|
}
|
||||||
|
this.$http._getData('lawss/NewsFeed/getNewsFeed', this.searchQuery, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.total = res.data.total
|
||||||
|
|
||||||
|
if (this.searchQuery.page === 1) {
|
||||||
|
this.list = res.data.records
|
||||||
|
} else {
|
||||||
|
this.list = [ ...this.list, ...res.data.records ]
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}).finally(() => {
|
||||||
|
resolve()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getDicTypeListCode () {
|
||||||
|
this.$http._getData('sys/dictype/getDicTypeListCode').then(res => {
|
||||||
|
this.dict = { ...res.data }
|
||||||
|
// WBZTCLASS 国内、国外 TEXTSTATUSBUSS 企业
|
||||||
|
this.setMap([ ...this.dict.WBZTCLASS, ...this.dict.TEXTSTATUSBUSS ], 'textStateMap')
|
||||||
|
})
|
||||||
|
},
|
||||||
|
setMap (data, key) {
|
||||||
|
data.forEach(item => {
|
||||||
|
this.$set(this[key], item.value, item.label);
|
||||||
|
});
|
||||||
|
},
|
||||||
|
jumpDetails (item) {
|
||||||
|
let pageType = ''
|
||||||
|
switch (item.resourceType) {
|
||||||
|
case 'INLAND':
|
||||||
|
pageType = 'INLAND_STAND'
|
||||||
|
break
|
||||||
|
case 'FOREIGN':
|
||||||
|
pageType = 'FOREIGN_STAND'
|
||||||
|
break
|
||||||
|
case 'BUSINESS':
|
||||||
|
pageType = 'BUSS'
|
||||||
|
break
|
||||||
|
}
|
||||||
|
this.$router.push({
|
||||||
|
name: 'domesticDetails',
|
||||||
|
query: {
|
||||||
|
id: item.standardId,
|
||||||
|
pageType
|
||||||
|
}
|
||||||
|
});
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.root {
|
||||||
|
height: 100%;
|
||||||
|
}
|
||||||
|
.scroll-wrapper {
|
||||||
|
height: calc(100vh - 131px);
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.card-content {
|
||||||
|
width: 95%;
|
||||||
|
height: auto;
|
||||||
|
margin: 10px;
|
||||||
|
background-color: #FFFFFF;
|
||||||
|
border-radius: 5px;
|
||||||
|
box-shadow: 1px 1px 10px rgba(0, 0, 0, 0.1);
|
||||||
|
|
||||||
|
.standTitle {
|
||||||
|
.title {
|
||||||
|
font-size: 3.4vw;
|
||||||
|
color: #333333;
|
||||||
|
font-weight: 600;
|
||||||
|
height: auto;
|
||||||
|
line-height: 20px;
|
||||||
|
padding: 5px 10px;
|
||||||
|
text-align: left;
|
||||||
|
border-bottom: 1px solid #cccccc;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.standContent {
|
||||||
|
font-size: 3.4vw;
|
||||||
|
color: #555555;
|
||||||
|
font-weight: 450;
|
||||||
|
margin-top: 5px;
|
||||||
|
|
||||||
|
.standState {
|
||||||
|
padding-left: 10px;
|
||||||
|
//height: 35px;
|
||||||
|
line-height: 25px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.timeFooter {
|
||||||
|
font-size: 3.4vw;
|
||||||
|
padding: 0 10px;
|
||||||
|
height: 35px;
|
||||||
|
line-height: 35px;
|
||||||
|
border-top: 1px solid #cccccc;
|
||||||
|
display: flex;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
.card-content:first-child {
|
||||||
|
margin-top: 0;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -1,30 +1,40 @@
|
|||||||
<template>
|
<template>
|
||||||
<van-popup v-model="popupShow"
|
<van-popup
|
||||||
position="right"
|
v-model="popupShow"
|
||||||
:style="{ height: '100%', width: '90%' }"
|
position="right"
|
||||||
round
|
:style="{ height: '100%', width: '70%' }"
|
||||||
:close-on-click-overlay="false"
|
round
|
||||||
@click-overlay="handleCancel"
|
:close-on-click-overlay="false"
|
||||||
get-container="body">
|
get-container="body"
|
||||||
|
@click-overlay="handleCancel"
|
||||||
|
>
|
||||||
<h3 class="popup-title">
|
<h3 class="popup-title">
|
||||||
<span>体系结构</span>
|
<span>体系结构</span>
|
||||||
<van-icon name="cross" size="22px" @click="handleCancel" />
|
<van-icon name="cross" size="22px" @click="handleCancel" />
|
||||||
</h3>
|
</h3>
|
||||||
<div class="popup-main">
|
<div class="popup-main">
|
||||||
<folderTree ref="folderTreeRef" @checked="getChecked"></folderTree>
|
<folderTree ref="folderTreeRef" @checked="getChecked" />
|
||||||
</div>
|
</div>
|
||||||
<div class="popup-footer">
|
<div class="popup-footer">
|
||||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleReset">重置</el-button>
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleReset">重置</el-button>
|
||||||
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleCancel">取消</el-button>
|
<el-button class="common-button-default" size="mini" icon="el-icon-close" @click="handleCancel">取消</el-button>
|
||||||
<el-button class="common-button-primary" size="mini" icon="el-icon-check" type="primary" @click="handleOk">确定</el-button>
|
<el-button
|
||||||
|
class="common-button-primary"
|
||||||
|
size="mini"
|
||||||
|
icon="el-icon-check"
|
||||||
|
type="primary"
|
||||||
|
@click="handleOk"
|
||||||
|
>
|
||||||
|
确定
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</van-popup>
|
</van-popup>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import folderTree from "./folderTree";
|
import folderTree from './folderTree';
|
||||||
export default {
|
export default {
|
||||||
name: "folderPopup",
|
name: 'FolderPopup',
|
||||||
components: {
|
components: {
|
||||||
folderTree,
|
folderTree,
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -6,36 +6,45 @@
|
|||||||
<span class="left-title" @click="back"> < </span>
|
<span class="left-title" @click="back"> < </span>
|
||||||
<span class="right-title">标准化动态</span>
|
<span class="right-title">标准化动态</span>
|
||||||
</div>
|
</div>
|
||||||
<van-tabs v-model="active">
|
<van-tabs v-model="active" :ellipsis="false" swipeable>
|
||||||
<van-tab name="ZYBZFG" title="在研标准入库">
|
<van-tab name="UnderResearchStandards" title="在研标准入库">
|
||||||
<UnderResearchStandards></UnderResearchStandards>
|
<Standard message-type="ZYBZFG"></Standard>
|
||||||
</van-tab>
|
</van-tab>
|
||||||
<van-tab name="GNWBZFG" title="标准法规入库">
|
<van-tab name="Domestic" title="国内法规入库">
|
||||||
<StandardRegulations></StandardRegulations>
|
<Standard message-type="GNBZFG"></Standard>
|
||||||
</van-tab>
|
</van-tab>
|
||||||
<van-tab name="ZLZX" title="资料中心">
|
<van-tab name="Abroad" title="国外法规入库">
|
||||||
|
<Standard message-type="GWBZFG"></Standard>
|
||||||
|
</van-tab>
|
||||||
|
<van-tab name="DataCenter" title="资料中心">
|
||||||
<DataCenter></DataCenter>
|
<DataCenter></DataCenter>
|
||||||
</van-tab>
|
</van-tab>
|
||||||
|
<!--<van-tab name="SolicitOpinions" title="标准征求意见">-->
|
||||||
|
<!-- <SolicitOpinions></SolicitOpinions>-->
|
||||||
|
<!--</van-tab>-->
|
||||||
|
<van-tab name="EnterpriseStandard" title="企业标准发布">
|
||||||
|
<Standard message-type="QYBZFB"></Standard>
|
||||||
|
</van-tab>
|
||||||
</van-tabs>
|
</van-tabs>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import UnderResearchStandards from "./components/UnderResearchStandards";
|
import Standard from "./components/Standard";
|
||||||
import StandardRegulations from "./components/StandardRegulations";
|
import SolicitOpinions from "./components/SolicitOpinions";
|
||||||
import DataCenter from "./components/DataCenter";
|
import DataCenter from "./components/DataCenter";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "standDynamics",
|
name: "standDynamics",
|
||||||
components: {
|
components: {
|
||||||
UnderResearchStandards,
|
Standard,
|
||||||
StandardRegulations,
|
SolicitOpinions,
|
||||||
DataCenter
|
DataCenter
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
active: "ZYBZFG",
|
active: "UnderResearchStandards",
|
||||||
isShow: true
|
isShow: true
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
@@ -43,7 +52,7 @@ export default {
|
|||||||
next(vm => {
|
next(vm => {
|
||||||
if (from.name === 'phoneHome') {
|
if (from.name === 'phoneHome') {
|
||||||
// 首页进入 重新加载
|
// 首页进入 重新加载
|
||||||
vm.active = "ZYBZFG";
|
vm.active = "UnderResearchStandards";
|
||||||
vm.isShow = false
|
vm.isShow = false
|
||||||
vm.$nextTick(() => {
|
vm.$nextTick(() => {
|
||||||
vm.isShow = true
|
vm.isShow = true
|
||||||
|
|||||||
+1796
-1796
File diff suppressed because it is too large
Load Diff
@@ -1,87 +1,101 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-drawer :title="title"
|
<el-drawer
|
||||||
:visible="showDrawer"
|
:title="title"
|
||||||
:wrapperClosable="false"
|
:visible="showDrawer"
|
||||||
@close="onClose"
|
:wrapperClosable="false"
|
||||||
size="1050px">
|
size="1050px"
|
||||||
|
@close="onClose"
|
||||||
|
>
|
||||||
<div class="drawer-content">
|
<div class="drawer-content">
|
||||||
<el-form
|
<el-form
|
||||||
v-if="showDrawer && reloadForm"
|
v-if="showDrawer && reloadForm"
|
||||||
ref="formRef"
|
ref="formRef"
|
||||||
:model="form"
|
:model="form"
|
||||||
:rules="rules"
|
:rules="rules"
|
||||||
class="label-input-form"
|
class="label-input-form"
|
||||||
>
|
>
|
||||||
<el-col :span="24"><div class="divider-line">基础信息</div></el-col>
|
<el-col :span="24"><div class="divider-line">基础信息</div></el-col>
|
||||||
<el-row>
|
<el-row>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="会议名称" prop="meetingName" label-width="150px" class="add-form-item">
|
<el-form-item label="会议名称" prop="meetingName" label-width="150px" class="add-form-item">
|
||||||
<el-input v-model="form.meetingName"
|
<el-input
|
||||||
placeholder="请输入会议名称"
|
v-model="form.meetingName"
|
||||||
clearable></el-input>
|
placeholder="请输入会议名称"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="课题名称" prop="topicName" label-width="150px" class="add-form-item">
|
<el-form-item label="课题名称" prop="topicName" label-width="150px" class="add-form-item">
|
||||||
<el-input v-model="form.topicName"
|
<el-input
|
||||||
placeholder="请输入课题名称"
|
v-model="form.topicName"
|
||||||
clearable></el-input>
|
placeholder="请输入课题名称"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
class="common-button-primary"
|
class="common-button-primary"
|
||||||
size="mini"
|
size="mini"
|
||||||
style="position:absolute;top: 10px;right: 0;"
|
style="position:absolute;top: 10px;right: 0;"
|
||||||
@click="handleGetTopic"
|
@click="handleGetTopic"
|
||||||
>调取课题</el-button>
|
>
|
||||||
|
调取课题
|
||||||
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="会议主办单位" prop="meetingOrganizer" label-width="150px" class="add-form-item">
|
<el-form-item label="会议主办单位" prop="meetingOrganizer" label-width="150px" class="add-form-item">
|
||||||
<el-input v-model="form.meetingOrganizer"
|
<el-input
|
||||||
placeholder="请输入会议主办单位"
|
v-model="form.meetingOrganizer"
|
||||||
clearable></el-input>
|
placeholder="请输入会议主办单位"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<CustomDatePick
|
<CustomDatePick
|
||||||
:config="{
|
v-model="form.meetingTime"
|
||||||
attrName: '会议时间',
|
:config="{
|
||||||
attrField: 'meetingTime'
|
attrName: '会议时间',
|
||||||
}"
|
attrField: 'meetingTime'
|
||||||
v-model="form.meetingTime"
|
}"
|
||||||
></CustomDatePick>
|
/>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="会议地点" prop="meetingAddress" label-width="150px" class="add-form-item">
|
<el-form-item label="会议地点" prop="meetingAddress" label-width="150px" class="add-form-item">
|
||||||
<el-input v-model="form.meetingAddress"
|
<el-input
|
||||||
placeholder="请输入会议地点"
|
v-model="form.meetingAddress"
|
||||||
clearable></el-input>
|
placeholder="请输入会议地点"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="参会人员" prop="participants" label-width="150px" class="add-form-item">
|
<el-form-item label="参会人员" prop="participants" label-width="150px" class="add-form-item">
|
||||||
<el-input v-model="form.participants"
|
<el-input
|
||||||
placeholder="请输入参会人员"
|
v-model="form.participants"
|
||||||
clearable></el-input>
|
placeholder="请输入参会人员"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<custom-file
|
<custom-file
|
||||||
:config="{
|
v-model="form.meetingMinutes"
|
||||||
attrName: '会议纪要',
|
:config="{
|
||||||
attrField: 'meetingMinutes'
|
attrName: '会议纪要',
|
||||||
}"
|
attrField: 'meetingMinutes'
|
||||||
v-model="form.meetingMinutes"
|
}"
|
||||||
></custom-file>
|
/>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<CustomTextarea
|
<CustomTextarea
|
||||||
:config="{
|
v-model="form.meetingContent"
|
||||||
|
:config="{
|
||||||
attrName: '会议主要内容',
|
attrName: '会议主要内容',
|
||||||
attrField: 'meetingContent'
|
attrField: 'meetingContent'
|
||||||
}"
|
}"
|
||||||
v-model="form.meetingContent"
|
/>
|
||||||
></CustomTextarea>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<el-col :span="24"><div class="divider-line">会议分类</div></el-col>
|
<el-col :span="24"><div class="divider-line">会议分类</div></el-col>
|
||||||
@@ -89,13 +103,16 @@
|
|||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="1级会议分类" prop="firstMeetingType" label-width="150px" class="add-form-item">
|
<el-form-item label="1级会议分类" prop="firstMeetingType" label-width="150px" class="add-form-item">
|
||||||
<template slot="label">1级会议分类</template>
|
<template slot="label">1级会议分类</template>
|
||||||
<el-select v-model="form.firstMeetingType"
|
<el-select
|
||||||
placeholder="请选择1级会议分类"
|
v-model="form.firstMeetingType"
|
||||||
clearable>
|
placeholder="请选择1级会议分类"
|
||||||
|
clearable
|
||||||
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="opt in dict.firstMeetingType"
|
v-for="opt in dict.firstMeetingType"
|
||||||
:key="opt.value"
|
:key="opt.value"
|
||||||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
:value="opt.value === undefined ? '' :opt.value"
|
||||||
|
:label="opt.label"
|
||||||
>
|
>
|
||||||
{{ opt.label }}
|
{{ opt.label }}
|
||||||
</el-option>
|
</el-option>
|
||||||
@@ -105,13 +122,16 @@
|
|||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="2级会议分类" prop="secondMeetingType" label-width="150px" class="add-form-item">
|
<el-form-item label="2级会议分类" prop="secondMeetingType" label-width="150px" class="add-form-item">
|
||||||
<template slot="label">2级会议分类</template>
|
<template slot="label">2级会议分类</template>
|
||||||
<el-select v-model="form.secondMeetingType"
|
<el-select
|
||||||
placeholder="请选择2级会议分类"
|
v-model="form.secondMeetingType"
|
||||||
clearable>
|
placeholder="请选择2级会议分类"
|
||||||
|
clearable
|
||||||
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="opt in dict.secondMeetingType"
|
v-for="opt in dict.secondMeetingType"
|
||||||
:key="opt.value"
|
:key="opt.value"
|
||||||
:value="opt.value === undefined ? '' :opt.value" :label="opt.label"
|
:value="opt.value === undefined ? '' :opt.value"
|
||||||
|
:label="opt.label"
|
||||||
>
|
>
|
||||||
{{ opt.label }}
|
{{ opt.label }}
|
||||||
</el-option>
|
</el-option>
|
||||||
@@ -121,65 +141,115 @@
|
|||||||
</el-row>
|
</el-row>
|
||||||
<el-row>
|
<el-row>
|
||||||
<template v-for="(item, index) in form.meetingTopicList">
|
<template v-for="(item, index) in form.meetingTopicList">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div class="divider-line">
|
<div class="divider-line" style="display: flex;align-items: center;justify-content: space-between">
|
||||||
会议议题
|
<div>
|
||||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addMeetingTopic"
|
会议议题{{ index + 1 }}
|
||||||
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
<el-button
|
||||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeMeetingTopic(index)"
|
style="margin-left: 10px"
|
||||||
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
type="primary"
|
||||||
</div>
|
size="mini"
|
||||||
</el-col>
|
icon="el-icon-plus"
|
||||||
|
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'visible' : 'collapse'}"
|
||||||
|
@click="addMeetingTopic"
|
||||||
|
/>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
icon="el-icon-minus"
|
||||||
|
:style="{visibility: (form.meetingTopicList.length < 2 && index === 0) ? 'collapse' : 'visible'}"
|
||||||
|
@click="removeMeetingTopic(index)"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
<div style="display: flex;align-items: center">
|
||||||
|
<i
|
||||||
|
class="el-icon-bottom move-icon"
|
||||||
|
style="transform: rotate(180deg)"
|
||||||
|
:style="{visibility: (index === 0) ? 'collapse' : 'visible'}"
|
||||||
|
@click="moveOrder(index, 'top')"
|
||||||
|
/>
|
||||||
|
<i
|
||||||
|
class="el-icon-bottom move-icon"
|
||||||
|
:style="{visibility: (index === form.meetingTopicList.length - 1) ? 'collapse' : 'visible'}"
|
||||||
|
@click="moveOrder(index, 'bottom')"
|
||||||
|
/>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="议题名称" :prop="'meetingTopicList.' + index + '.agendaName'" :rules="rules.agendaName" label-width="150px" class="add-form-item">
|
<el-form-item
|
||||||
<el-input v-model="item.agendaName"
|
label="议题名称"
|
||||||
placeholder="请输入议题名称"
|
:prop="'meetingTopicList.' + index + '.agendaName'"
|
||||||
clearable></el-input>
|
:rules="rules.agendaName"
|
||||||
|
label-width="150px"
|
||||||
|
class="add-form-item"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="item.agendaName"
|
||||||
|
placeholder="请输入议题名称"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<customFile
|
<customFile
|
||||||
|
v-model="item.agendaMaterials"
|
||||||
:config="{
|
:config="{
|
||||||
attrName: '议题材料',
|
attrName: '议题材料',
|
||||||
attrField: `meetingTopicList.${index}.agendaMaterials`
|
attrField: `meetingTopicList.${index}.agendaMaterials`
|
||||||
}"
|
}"
|
||||||
:rules="rules.agendaMaterials"
|
:rules="rules.agendaMaterials"
|
||||||
v-model="item.agendaMaterials"
|
/>
|
||||||
></customFile>
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="汇报人" :prop="'meetingTopicList.' + index + '.reporter'" :rules="rules.reporter" label-width="150px" class="add-form-item">
|
<el-form-item
|
||||||
<el-input v-model="item.reporter"
|
label="汇报人"
|
||||||
placeholder="请输入汇报人"
|
:prop="'meetingTopicList.' + index + '.reporter'"
|
||||||
clearable></el-input>
|
:rules="rules.reporter"
|
||||||
|
label-width="150px"
|
||||||
|
class="add-form-item"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="item.reporter"
|
||||||
|
placeholder="请输入汇报人"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<el-form-item label="汇报人单位" :prop="'meetingTopicList.' + index + '.reportingUnit'" :rules="rules.reportingUnit" label-width="150px" class="add-form-item">
|
<el-form-item
|
||||||
<el-input v-model="item.reportingUnit"
|
label="汇报人单位"
|
||||||
placeholder="请输入汇报人单位"
|
:prop="'meetingTopicList.' + index + '.reportingUnit'"
|
||||||
clearable></el-input>
|
:rules="rules.reportingUnit"
|
||||||
|
label-width="150px"
|
||||||
|
class="add-form-item"
|
||||||
|
>
|
||||||
|
<el-input
|
||||||
|
v-model="item.reportingUnit"
|
||||||
|
placeholder="请输入汇报人单位"
|
||||||
|
clearable
|
||||||
|
/>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<CustomTextarea
|
<CustomTextarea
|
||||||
:config="{
|
v-model="item.agendaContent"
|
||||||
attrName: '议题主要内容',
|
:config="{
|
||||||
attrField: `meetingTopicList.${index}.agendaContent`
|
attrName: '议题主要内容',
|
||||||
}"
|
attrField: `meetingTopicList.${index}.agendaContent`
|
||||||
:rules="rules.agendaContent"
|
}"
|
||||||
v-model="item.agendaContent"
|
:rules="rules.agendaContent"
|
||||||
></CustomTextarea>
|
/>
|
||||||
</el-col>
|
</el-col>
|
||||||
</template>
|
</template>
|
||||||
</el-row>
|
</el-row>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<div class="drawer-footer">
|
<div class="drawer-footer">
|
||||||
<el-button icon="el-icon-check" type="primary" @click="onSubmit" :loading="isSubmit">提交</el-button>
|
<el-button icon="el-icon-check" type="primary" :loading="isSubmit" @click="onSubmit">提交</el-button>
|
||||||
<el-button icon="el-icon-close" @click="onClose" :loading="isSubmit">取消</el-button>
|
<el-button icon="el-icon-close" :loading="isSubmit" @click="onClose">取消</el-button>
|
||||||
</div>
|
</div>
|
||||||
<TopicsTable ref="TopicsTableRef" @dragIn="dragIn"></TopicsTable>
|
<TopicsTable ref="TopicsTableRef" @dragIn="dragIn" />
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@@ -187,10 +257,10 @@
|
|||||||
import CustomDatePick from '@/components/CustomFormComponents/DatePicker'
|
import CustomDatePick from '@/components/CustomFormComponents/DatePicker'
|
||||||
import CustomFile from '@/components/CustomFormComponents/File'
|
import CustomFile from '@/components/CustomFormComponents/File'
|
||||||
import CustomTextarea from '@/components/CustomFormComponents/Textarea'
|
import CustomTextarea from '@/components/CustomFormComponents/Textarea'
|
||||||
import TopicsTable from "./TopicsTable";
|
import TopicsTable from './TopicsTable';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "editDrawer",
|
name: 'EditDrawer',
|
||||||
components: {
|
components: {
|
||||||
CustomDatePick,
|
CustomDatePick,
|
||||||
CustomFile,
|
CustomFile,
|
||||||
@@ -213,52 +283,52 @@ export default {
|
|||||||
type: Object
|
type: Object
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data (){
|
data () {
|
||||||
const rules = {
|
const rules = {
|
||||||
meetingName: [
|
meetingName: [
|
||||||
{required: true, type: 'string', message: '会议名称不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '会议名称不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
meetingOrganizer: [
|
meetingOrganizer: [
|
||||||
{required: true, type: 'string', message: '会议主办单位不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '会议主办单位不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '会议主办单位不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '会议主办单位不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
meetingTime: [
|
meetingTime: [
|
||||||
{required: true, message: '会议时间不能为空', trigger: 'change'}
|
{ required: true, message: '会议时间不能为空', trigger: 'change' }
|
||||||
],
|
],
|
||||||
meetingAddress: [
|
meetingAddress: [
|
||||||
{required: true, type: 'string', message: '会议地点不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '会议地点不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '会议地点不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '会议地点不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
participants: [
|
participants: [
|
||||||
{required: true, type: 'string', message: '参会人员不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '参会人员不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '参会人员不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '参会人员不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
meetingContent: [
|
meetingContent: [
|
||||||
{required: true, type: 'string', message: '会议主要内容不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '会议主要内容不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '会议主要内容不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '会议主要内容不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
firstMeetingType: [
|
firstMeetingType: [
|
||||||
{required: true, message: '1级会议分类不能为空', trigger: 'change'}
|
{ required: true, message: '1级会议分类不能为空', trigger: 'change' }
|
||||||
],
|
],
|
||||||
secondMeetingType: [
|
secondMeetingType: [
|
||||||
{required: true, message: '2级会议分类不能为空', trigger: 'change'}
|
{ required: true, message: '2级会议分类不能为空', trigger: 'change' }
|
||||||
],
|
],
|
||||||
agendaName: [
|
agendaName: [
|
||||||
{required: true, type: 'string', message: '议题名称不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '议题名称不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '议题名称不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '议题名称不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
reporter: [
|
reporter: [
|
||||||
{required: true, type: 'string', message: '汇报人不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '汇报人不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '汇报人不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '汇报人不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
reportingUnit: [
|
reportingUnit: [
|
||||||
{required: true, type: 'string', message: '汇报人单位不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '汇报人单位不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '汇报人单位不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '汇报人单位不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
agendaContent: [
|
agendaContent: [
|
||||||
{required: true, type: 'string', message: '议题主要内容不能为空', trigger: 'change'},
|
{ required: true, type: 'string', message: '议题主要内容不能为空', trigger: 'change' },
|
||||||
{type: 'string', max: 500, message: '议题主要内容不能超过500个字符', trigger: 'change'}
|
{ type: 'string', max: 500, message: '议题主要内容不能超过500个字符', trigger: 'change' }
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
const form = {
|
const form = {
|
||||||
@@ -288,7 +358,7 @@ export default {
|
|||||||
reloadForm: true,
|
reloadForm: true,
|
||||||
api: {
|
api: {
|
||||||
add: 'lawss/insideOutsideMeeting/addMeetingInfo',
|
add: 'lawss/insideOutsideMeeting/addMeetingInfo',
|
||||||
delete :'lawss/insideOutsideMeeting/deleteMeetingInfo',
|
delete: 'lawss/insideOutsideMeeting/deleteMeetingInfo',
|
||||||
update: 'lawss/insideOutsideMeeting/updateMeetingInfo'
|
update: 'lawss/insideOutsideMeeting/updateMeetingInfo'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
@@ -311,10 +381,10 @@ export default {
|
|||||||
reportingUnit: '',
|
reportingUnit: '',
|
||||||
agendaContent: ''
|
agendaContent: ''
|
||||||
}
|
}
|
||||||
this.form.meetingTopicList = [...this.form.meetingTopicList, meetingTopicItem]
|
this.form.meetingTopicList = [ ...this.form.meetingTopicList, meetingTopicItem ]
|
||||||
},
|
},
|
||||||
removeMeetingTopic (index) {
|
removeMeetingTopic (index) {
|
||||||
let res = []
|
const res = []
|
||||||
this.form.meetingTopicList.forEach((item, i) => {
|
this.form.meetingTopicList.forEach((item, i) => {
|
||||||
if (i !== index) {
|
if (i !== index) {
|
||||||
res.push(item)
|
res.push(item)
|
||||||
@@ -353,6 +423,9 @@ export default {
|
|||||||
this.$refs.formRef.validate(valid => {
|
this.$refs.formRef.validate(valid => {
|
||||||
if (valid) {
|
if (valid) {
|
||||||
this.isSubmit = true
|
this.isSubmit = true
|
||||||
|
this.form.meetingTopicList.forEach((item, index) => {
|
||||||
|
item.sort = index
|
||||||
|
})
|
||||||
if (this.title === '新增') {
|
if (this.title === '新增') {
|
||||||
this.$http._postData(this.api.add, this.form).then(res => {
|
this.$http._postData(this.api.add, this.form).then(res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
@@ -382,7 +455,21 @@ export default {
|
|||||||
},
|
},
|
||||||
dragIn (val) {
|
dragIn (val) {
|
||||||
this.$set(this.form, 'topicName', val.topicName)
|
this.$set(this.form, 'topicName', val.topicName)
|
||||||
}
|
},
|
||||||
|
moveOrder (index, type) {
|
||||||
|
if (type === 'top') {
|
||||||
|
const obj1 = this.form.meetingTopicList[index]
|
||||||
|
const obj2 = this.form.meetingTopicList[index - 1]
|
||||||
|
this.$set(this.form.meetingTopicList, index - 1, obj1)
|
||||||
|
this.$set(this.form.meetingTopicList, index, obj2)
|
||||||
|
}
|
||||||
|
if (type === 'bottom') {
|
||||||
|
const obj1 = this.form.meetingTopicList[index]
|
||||||
|
const obj2 = this.form.meetingTopicList[index + 1]
|
||||||
|
this.$set(this.form.meetingTopicList, index + 1, obj1)
|
||||||
|
this.$set(this.form.meetingTopicList, index, obj2)
|
||||||
|
}
|
||||||
|
},
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
@@ -403,4 +490,11 @@ export default {
|
|||||||
background: #fff;
|
background: #fff;
|
||||||
z-index: 999;
|
z-index: 999;
|
||||||
}
|
}
|
||||||
|
.move-icon {
|
||||||
|
font-size: 20px;
|
||||||
|
cursor: pointer
|
||||||
|
}
|
||||||
|
.move-icon:hover {
|
||||||
|
color: #409EFF;
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
@@ -4,200 +4,236 @@
|
|||||||
<div class="search-area">
|
<div class="search-area">
|
||||||
<el-form :modal="searchForm" :inline="true" class="label-input-form">
|
<el-form :modal="searchForm" :inline="true" class="label-input-form">
|
||||||
<el-formItem label="会议名称" prop="meetingName" class="search-item">
|
<el-formItem label="会议名称" prop="meetingName" class="search-item">
|
||||||
<el-input v-model="searchForm.meetingName" clearable placeholder="请输入会议名称" :maxlength="100" @keyup.enter.native="onSearch"/>
|
<el-input
|
||||||
|
v-model="searchForm.meetingName"
|
||||||
|
clearable
|
||||||
|
placeholder="请输入会议名称"
|
||||||
|
:maxlength="100"
|
||||||
|
@keyup.enter.native="onSearch"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-formItem label="会议主办单位" prop="meetingOrganizer" class="search-item">
|
<el-formItem label="会议主办单位" prop="meetingOrganizer" class="search-item">
|
||||||
<el-input v-model="searchForm.meetingOrganizer" clearable placeholder="请输入会议主办单位" :maxlength="100" @keyup.enter.native="onSearch"/>
|
<el-input
|
||||||
|
v-model="searchForm.meetingOrganizer"
|
||||||
|
clearable
|
||||||
|
placeholder="请输入会议主办单位"
|
||||||
|
:maxlength="100"
|
||||||
|
@keyup.enter.native="onSearch"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-formItem label="会议时间" class="search-item" style="margin-right: 0">
|
<el-formItem label="会议时间" class="search-item" style="margin-right: 0">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
value-format="yyyy-MM-dd"
|
v-model="searchForm.meetingTimeBegin"
|
||||||
format="yyyy-MM-dd"
|
value-format="yyyy-MM-dd"
|
||||||
type="date"
|
format="yyyy-MM-dd"
|
||||||
clearable
|
type="date"
|
||||||
:editable="true"
|
clearable
|
||||||
placeholder="选择开始时间"
|
:editable="true"
|
||||||
v-model="searchForm.meetingTimeBegin"
|
placeholder="选择开始时间"
|
||||||
>
|
/>
|
||||||
</el-date-picker>
|
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-form-item label="至" label-width="25px" class="search-item">
|
<el-form-item label="至" label-width="25px" class="search-item">
|
||||||
<el-date-picker
|
<el-date-picker
|
||||||
value-format="yyyy-MM-dd"
|
v-model="searchForm.meetingTimeEnd"
|
||||||
format="yyyy-MM-dd"
|
value-format="yyyy-MM-dd"
|
||||||
type="date"
|
format="yyyy-MM-dd"
|
||||||
clearable
|
type="date"
|
||||||
:editable="true"
|
clearable
|
||||||
placeholder="选择结束时间"
|
:editable="true"
|
||||||
v-model="searchForm.meetingTimeEnd"
|
placeholder="选择结束时间"
|
||||||
>
|
/>
|
||||||
</el-date-picker>
|
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item class="search-item btn-box">
|
<el-form-item class="search-item btn-box">
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
v-btn-permission="'520f8524252e76e751a883a0a8a8615c'"
|
||||||
size="mini"
|
type="primary"
|
||||||
class="common-button-primary"
|
size="mini"
|
||||||
v-btn-permission="'520f8524252e76e751a883a0a8a8615c'"
|
class="common-button-primary"
|
||||||
@click="onSearch">
|
@click="onSearch"
|
||||||
|
>
|
||||||
查询
|
查询
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
size="mini"
|
v-btn-permission="'6a9483964b7b49dd473ef9e6fd4a649e'"
|
||||||
class="common-button-default"
|
size="mini"
|
||||||
v-btn-permission="'6a9483964b7b49dd473ef9e6fd4a649e'"
|
class="common-button-default"
|
||||||
@click="onClear">清空
|
@click="onClear"
|
||||||
|
>
|
||||||
|
清空
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
size="mini"
|
v-btn-permission="'7f98cd8b424d6ad83b1770a6576993fc'"
|
||||||
type="primary"
|
size="mini"
|
||||||
class="common-button-primary"
|
type="primary"
|
||||||
v-btn-permission="'7f98cd8b424d6ad83b1770a6576993fc'"
|
class="common-button-primary"
|
||||||
@click="advancedSearch">高级检索
|
@click="advancedSearch"
|
||||||
|
>
|
||||||
|
高级检索
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<!--按钮区-->
|
<!--按钮区-->
|
||||||
<div class="action-bar">
|
<div class="action-bar">
|
||||||
<el-button class="common-button-default export-button"
|
<el-button
|
||||||
size="mini"
|
v-btn-permission="'6d749caee927a480fa99e5ddc48d8e05'"
|
||||||
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
|
class="common-button-default export-button"
|
||||||
v-btn-permission="'6d749caee927a480fa99e5ddc48d8e05'"
|
size="mini"
|
||||||
@click="exportData"><i class="iconfont"></i>导出
|
title="不勾选时默认导出所有筛选项;勾选时仅导出勾选项"
|
||||||
|
@click="exportData"
|
||||||
|
>
|
||||||
|
<i class="iconfont"></i>导出
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button class="common-button-default in-button"
|
<el-button
|
||||||
size="mini"
|
v-btn-permission="'b168e0381ec7ba5d762c36ad2935542f'"
|
||||||
v-btn-permission="'b168e0381ec7ba5d762c36ad2935542f'"
|
class="common-button-default in-button"
|
||||||
@click="addImportModal"><i class="iconfont"></i>导入
|
size="mini"
|
||||||
|
@click="addImportModal"
|
||||||
|
>
|
||||||
|
<i class="iconfont"></i>导入
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button class="common-button-default in-button"
|
<el-button
|
||||||
size="mini"
|
v-btn-permission="'7990fb64c468c2d37cc2246fc3cb694e'"
|
||||||
v-btn-permission="'7990fb64c468c2d37cc2246fc3cb694e'"
|
class="common-button-default in-button"
|
||||||
@click="handleMoudel"><i class="iconfont"></i>模板下载
|
size="mini"
|
||||||
|
@click="handleMoudel"
|
||||||
|
>
|
||||||
|
<i class="iconfont"></i>模板下载
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button type="primary"
|
<el-button
|
||||||
class="common-button-primary add-button"
|
v-btn-permission="'f0e663244c1f823caa07e99bfc6535dc'"
|
||||||
size="mini"
|
type="primary"
|
||||||
v-btn-permission="'f0e663244c1f823caa07e99bfc6535dc'"
|
class="common-button-primary add-button"
|
||||||
@click="openDrawer('add')"
|
size="mini"
|
||||||
><i class="el-icon-plus"></i>新增
|
@click="openDrawer('add')"
|
||||||
|
>
|
||||||
|
<i class="el-icon-plus" />新增
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
<!-- 表格 -->
|
<!-- 表格 -->
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<el-table
|
<el-table
|
||||||
ref="selection"
|
ref="selection"
|
||||||
:data="data"
|
:data="data"
|
||||||
tooltip-effect="dark"
|
tooltip-effect="dark"
|
||||||
style="width:100%;height: calc(100% - 57px)"
|
style="width:100%;height: calc(100% - 57px)"
|
||||||
height="string"
|
height="string"
|
||||||
border
|
border
|
||||||
class="drag-table"
|
class="drag-table"
|
||||||
@sort-change="sortChange"
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
||||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
:cell-style="{padding: 0}"
|
||||||
:cell-style="{padding: 0}"
|
@sort-change="sortChange"
|
||||||
@selection-change="selectionChange"
|
@selection-change="selectionChange"
|
||||||
>
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
width="55"
|
width="55"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="index"
|
type="index"
|
||||||
width="55"
|
width="55"
|
||||||
label="序号"
|
label="序号"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="{scope, column, $index}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
{{ ($index + 1) + (searchForm.page - 1) * searchForm.pageSize }}
|
{{ ($index + 1) + (searchForm.page - 1) * searchForm.pageSize }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="meetingName"
|
prop="meetingName"
|
||||||
label="会议名称"
|
label="会议名称"
|
||||||
align="center"
|
align="center"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
>
|
>
|
||||||
<template slot-scope="{row, column, $index}">
|
<template slot-scope="{row, column, $index}">
|
||||||
<a class="table-jump" style="color: #2d8cf0" @click="handlePreview(row.id)">{{ row.meetingName }}</a>
|
<a class="table-jump" style="color: #2d8cf0" @click="handlePreview(row.id)">{{ row.meetingName }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="meetingOrganizer"
|
prop="meetingOrganizer"
|
||||||
label="会议主办单位"
|
label="会议主办单位"
|
||||||
align="center"
|
align="center"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
>
|
/>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="meetingTime"
|
prop="meetingTime"
|
||||||
label="会议时间"
|
label="会议时间"
|
||||||
align="center"
|
align="center"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
>
|
/>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="meetingAddress"
|
prop="meetingAddress"
|
||||||
label="会议地点"
|
label="会议地点"
|
||||||
align="center"
|
align="center"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
>
|
/>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="agendaNameStr"
|
prop="agendaNameStr"
|
||||||
label="议题名称"
|
label="议题名称"
|
||||||
align="center"
|
align="center"
|
||||||
sortable="custom"
|
sortable="custom"
|
||||||
>
|
/>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
<el-table-column
|
||||||
v-if="isPermission('62cdf3d570941c154d28371632ccfa2e,71155d105e930bb8e7881a8a9809646a') > 0"
|
v-if="isPermission('62cdf3d570941c154d28371632ccfa2e,71155d105e930bb8e7881a8a9809646a') > 0"
|
||||||
prop="action"
|
prop="action"
|
||||||
label="操作"
|
label="操作"
|
||||||
align="center"
|
align="center"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a class="table-jump" v-btn-permission="'62cdf3d570941c154d28371632ccfa2e'" style="color: #2d8cf0" @click="openDrawer('edit', scope.row)">编辑</a>
|
<a v-btn-permission="'62cdf3d570941c154d28371632ccfa2e'" class="table-jump" style="color: #2d8cf0" @click="openDrawer('edit', scope.row)">编辑</a>
|
||||||
<a class="table-jump" v-btn-permission="'71155d105e930bb8e7881a8a9809646a'" style="color: #f56c6c;margin-left: 10px" @click="onDelete(scope.row.id)">删除</a>
|
<a v-btn-permission="'71155d105e930bb8e7881a8a9809646a'" class="table-jump" style="color: #f56c6c;margin-left: 10px" @click="onDelete(scope.row.id)">删除</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<pagination :page="searchForm.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
<pagination :page="searchForm.page" :total="total" @pageChange="pageChange" @pageSizeChange="pageSizeChange" />
|
||||||
<loading :loading="loading">数据获取中...</loading>
|
<loading :loading="loading">数据获取中...</loading>
|
||||||
</div>
|
</div>
|
||||||
<!-- 高级搜索 -->
|
<!-- 高级搜索 -->
|
||||||
<AdvancedSearch :visible.sync="advancedSearchVisible" :form="advancedSearchForm" :dict="dict" @search="onSearch" @resetAdvancedSearchForm="resetAdvancedSearchForm"></AdvancedSearch>
|
<AdvancedSearch
|
||||||
|
:visible.sync="advancedSearchVisible"
|
||||||
|
:form="advancedSearchForm"
|
||||||
|
:dict="dict"
|
||||||
|
@search="onSearch"
|
||||||
|
@resetAdvancedSearchForm="resetAdvancedSearchForm"
|
||||||
|
/>
|
||||||
<!-- 新增编辑 -->
|
<!-- 新增编辑 -->
|
||||||
<editDrawer ref="editDrawerRef" :dict="dict" :showDrawer.sync="showDrawer" :title="titleDrawer" :editForm="editForm" @load="getData"></editDrawer>
|
<editDrawer
|
||||||
|
ref="editDrawerRef"
|
||||||
|
:dict="dict"
|
||||||
|
:showDrawer.sync="showDrawer"
|
||||||
|
:title="titleDrawer"
|
||||||
|
:editForm="editForm"
|
||||||
|
@load="getData"
|
||||||
|
/>
|
||||||
<!-- 导入 -->
|
<!-- 导入 -->
|
||||||
<ImportZip :visible.sync="importModalShowFlag" :action="importExcelUrl" @onSuccess="getData"></ImportZip>
|
<ImportZip :visible.sync="importModalShowFlag" :action="importExcelUrl" @onSuccess="getData" />
|
||||||
<!-- 导出 -->
|
<!-- 导出 -->
|
||||||
<ExportDialog ref="exportDialogRef" @exportName="handleExport"></ExportDialog>
|
<ExportDialog ref="exportDialogRef" @exportName="handleExport" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import editDrawer from "./components/editDrawer";
|
import editDrawer from './components/editDrawer';
|
||||||
import AdvancedSearch from './components/advancedSearch'
|
import AdvancedSearch from './components/advancedSearch'
|
||||||
import ImportZip from '@/components/hzwlComponents/importZip'
|
import ImportZip from '@/components/hzwlComponents/importZip'
|
||||||
import ExportDialog from '@/components/hzwlComponents/exportDialog'
|
import ExportDialog from '@/components/hzwlComponents/exportDialog'
|
||||||
import store from "@/store";
|
import store from '@/store';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "meeting",
|
name: 'Meeting',
|
||||||
components: {
|
components: {
|
||||||
editDrawer,
|
editDrawer,
|
||||||
AdvancedSearch,
|
AdvancedSearch,
|
||||||
ImportZip,
|
ImportZip,
|
||||||
ExportDialog
|
ExportDialog
|
||||||
},
|
},
|
||||||
data(){
|
data () {
|
||||||
return {
|
return {
|
||||||
searchForm: {},
|
searchForm: {},
|
||||||
advancedSearchForm: {},
|
advancedSearchForm: {},
|
||||||
@@ -216,18 +252,18 @@ export default {
|
|||||||
editForm: void 0,
|
editForm: void 0,
|
||||||
api: {
|
api: {
|
||||||
page: 'lawss/insideOutsideMeeting/page',
|
page: 'lawss/insideOutsideMeeting/page',
|
||||||
delete :'lawss/insideOutsideMeeting/deleteMeetingInfo'
|
delete: 'lawss/insideOutsideMeeting/deleteMeetingInfo'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getDicTypeListCode()
|
this.getDicTypeListCode()
|
||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview(id) {
|
handlePreview (id) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'meetingDetail',
|
name: 'meetingDetail',
|
||||||
params: { id }
|
params: { id }
|
||||||
})
|
})
|
||||||
@@ -235,13 +271,13 @@ export default {
|
|||||||
},
|
},
|
||||||
isPermission (value) {
|
isPermission (value) {
|
||||||
let hasCount = 0
|
let hasCount = 0
|
||||||
let set =new Set( value.split(","))
|
const set = new Set( value.split(','))
|
||||||
let menuList = store.getters.getMenuList
|
const menuList = store.getters.getMenuList
|
||||||
if (menuList === '') {
|
if (menuList === '') {
|
||||||
return hasCount
|
return hasCount
|
||||||
} else {
|
} else {
|
||||||
menuList.map((menu) => {
|
menuList.map((menu) => {
|
||||||
if ( set.has(menu.id)|| value === undefined || value === '') {
|
if ( set.has(menu.id) || value === undefined || value === '') {
|
||||||
hasCount++
|
hasCount++
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -251,14 +287,14 @@ export default {
|
|||||||
async getData () {
|
async getData () {
|
||||||
this.searchForm.pageSize = this.searchForm.pageSize || this.$store.getters.userInfo.configContent
|
this.searchForm.pageSize = this.searchForm.pageSize || this.$store.getters.userInfo.configContent
|
||||||
this.searchForm.page = this.searchForm.page || 1
|
this.searchForm.page = this.searchForm.page || 1
|
||||||
let params = { ...this.searchForm, ...this.advancedSearchForm }
|
const params = { ...this.searchForm, ...this.advancedSearchForm }
|
||||||
const res = await this.$http._getData(this.api.page, params, {_this:this,loading: 'loading'})
|
const res = await this.$http._getData(this.api.page, params, { _this: this, loading: 'loading' })
|
||||||
if (res.ok && res.data) {
|
if (res.ok && res.data) {
|
||||||
this.data = res.data.list
|
this.data = res.data.list
|
||||||
this.total = res.data.count
|
this.total = res.data.count
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
onSearch(){
|
onSearch () {
|
||||||
this.getData()
|
this.getData()
|
||||||
},
|
},
|
||||||
onClear () {
|
onClear () {
|
||||||
@@ -283,7 +319,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 表格排序
|
// 表格排序
|
||||||
sortChange({ column, prop, order }) {
|
sortChange ({ column, prop, order }) {
|
||||||
this.searchForm.sortField = prop
|
this.searchForm.sortField = prop
|
||||||
this.searchForm.sortMode = 'asc'
|
this.searchForm.sortMode = 'asc'
|
||||||
if (order === 'descending') {
|
if (order === 'descending') {
|
||||||
@@ -317,23 +353,23 @@ export default {
|
|||||||
exportIds: this.selectedList.join(',')
|
exportIds: this.selectedList.join(',')
|
||||||
}
|
}
|
||||||
let query = '?'
|
let query = '?'
|
||||||
for(let i in params){
|
for(const i in params) {
|
||||||
if (params[i] && params[i]!=='') {
|
if (params[i] && params[i] !== '') {
|
||||||
query = query + i + '=' + params[i] + '&'
|
query = query + i + '=' + params[i] + '&'
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
query = query.slice(0,-1)
|
query = query.slice(0, -1)
|
||||||
window.open('/api/lawss/insideOutsideMeeting/exportMeetingInfo' + query)
|
window.open('/api/lawss/insideOutsideMeeting/exportMeetingInfo' + query)
|
||||||
this.$refs.exportDialogRef.cancel()
|
this.$refs.exportDialogRef.cancel()
|
||||||
this.$message.success('导出信息成功')
|
this.$message.success('导出信息成功')
|
||||||
},
|
},
|
||||||
// 导入
|
// 导入
|
||||||
addImportModal() {
|
addImportModal () {
|
||||||
this.importModalShowFlag = true
|
this.importModalShowFlag = true
|
||||||
this.importExcelUrl = '/api/lawss/insideOutsideMeeting/importMeetingInfo'
|
this.importExcelUrl = '/api/lawss/insideOutsideMeeting/importMeetingInfo'
|
||||||
},
|
},
|
||||||
// 模板下载
|
// 模板下载
|
||||||
handleMoudel(){
|
handleMoudel () {
|
||||||
window.open('/api/lawss/insideOutsideMeeting/exportTemplateFile?fileName=内外部会议导入模板')
|
window.open('/api/lawss/insideOutsideMeeting/exportTemplateFile?fileName=内外部会议导入模板')
|
||||||
},
|
},
|
||||||
// 新增编辑
|
// 新增编辑
|
||||||
@@ -348,7 +384,7 @@ export default {
|
|||||||
this.$set(this, 'editForm', row)
|
this.$set(this, 'editForm', row)
|
||||||
break
|
break
|
||||||
}
|
}
|
||||||
this.$nextTick(()=>{
|
this.$nextTick(() => {
|
||||||
this.showDrawer = true
|
this.showDrawer = true
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,218 +1,151 @@
|
|||||||
<template>
|
<template>
|
||||||
<el-drawer
|
<el-drawer
|
||||||
title="高级搜索"
|
title="高级搜索"
|
||||||
size="800px"
|
size="800px"
|
||||||
:wrapperClosable="false"
|
:wrapperClosable="false"
|
||||||
:visible.sync="isAdvancedSearch">
|
:visible.sync="isAdvancedSearch"
|
||||||
|
>
|
||||||
<div class="demo-drawer-content">
|
<div class="demo-drawer-content">
|
||||||
<el-form
|
<el-form
|
||||||
:model="lawsStandInfoSearch"
|
:model="lawsStandInfoSearch"
|
||||||
class="label-input-form table-lattice"
|
class="label-input-form table-lattice"
|
||||||
label-width="80px">
|
label-width="80px"
|
||||||
|
>
|
||||||
<ProcessTitle>
|
<ProcessTitle>
|
||||||
<template slot="title">基础信息</template>
|
<template slot="title">基础信息</template>
|
||||||
</ProcessTitle>
|
</ProcessTitle>
|
||||||
<div class="prc-content-border">
|
<div class="prc-content-border">
|
||||||
<el-row :gutter="24">
|
<el-row :gutter="24">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<SelectFormItem label="1级政策分类"
|
<SelectFormItem
|
||||||
title="1级政策分类"
|
v-model="lawsStandInfoSearch.lawsTypeFirstLevel"
|
||||||
v-model="lawsStandInfoSearch.lawsTypeFirstLevel"
|
label="1级政策分类"
|
||||||
:options="dict.lawsTypeFirstLevelOptions">
|
title="1级政策分类"
|
||||||
</SelectFormItem>
|
:options="dict.lawsTypeFirstLevelOptions"
|
||||||
<SelectFormItem label="3级政策分类"
|
/>
|
||||||
title="3级政策分类"
|
<SelectFormItem
|
||||||
v-model="lawsStandInfoSearch.lawsTypeThirdLevel"
|
v-model="lawsStandInfoSearch.lawsTypeThirdLevel"
|
||||||
:options="dict.lawsTypeThirdLevelOptions">
|
label="3级政策分类"
|
||||||
</SelectFormItem>
|
title="3级政策分类"
|
||||||
<InputFormItem label="政策名称"
|
:options="dict.lawsTypeThirdLevelOptions"
|
||||||
title="政策名称"
|
/>
|
||||||
v-model="lawsStandInfoSearch.lawsName">
|
<InputFormItem
|
||||||
</InputFormItem>
|
v-model="lawsStandInfoSearch.lawsName"
|
||||||
<InputFormItem label="政策文号"
|
label="政策名称"
|
||||||
title="政策文号"
|
title="政策名称"
|
||||||
v-model="lawsStandInfoSearch.lawsNo">
|
/>
|
||||||
</InputFormItem>
|
<InputFormItem
|
||||||
<InputFormItem label="发文单位"
|
v-model="lawsStandInfoSearch.lawsNo"
|
||||||
title="发文单位"
|
label="政策文号"
|
||||||
v-model="lawsStandInfoSearch.issueCompany">
|
title="政策文号"
|
||||||
</InputFormItem>
|
/>
|
||||||
<SelectFormItem label="文本状态"
|
<InputFormItem
|
||||||
title="文本状态"
|
v-model="lawsStandInfoSearch.issueCompany"
|
||||||
v-model="lawsStandInfoSearch.lawsTextState"
|
label="发文单位"
|
||||||
:options="dict.lawsTextStateOptions">
|
title="发文单位"
|
||||||
</SelectFormItem>
|
/>
|
||||||
<SelectFormItem label="是否纳入认证清单"
|
<SelectFormItem
|
||||||
title="是否纳入认证清单"
|
v-model="lawsStandInfoSearch.lawsTextState"
|
||||||
v-model="lawsStandInfoSearch.isRelateAccess"
|
label="政策状态"
|
||||||
:options="isRelateAccessOptions || []">
|
title="政策状态"
|
||||||
</SelectFormItem>
|
:options="dict.lawsTextStateOptions"
|
||||||
<InputFormItem label="福田转发通知文号"
|
/>
|
||||||
title="福田转发通知文号"
|
<SelectFormItem
|
||||||
v-model="lawsStandInfoSearch.lawsNotisyncNum">
|
v-model="lawsStandInfoSearch.isRelateAccess"
|
||||||
</InputFormItem>
|
label="是否纳入认证清单"
|
||||||
<InputFormItem label="信息简报"
|
title="是否纳入认证清单"
|
||||||
title="信息简报"
|
:options="isRelateAccessOptions || []"
|
||||||
v-model="lawsStandInfoSearch.lawsBulletin">
|
/>
|
||||||
</InputFormItem>
|
<InputFormItem
|
||||||
<InputFormItem label="备注(最终政策发布)"
|
v-model="lawsStandInfoSearch.lawsNotisyncNum"
|
||||||
title="备注(最终政策发布)"
|
label="福田转发通知文号"
|
||||||
v-model="lawsStandInfoSearch.lawsRemark">
|
title="福田转发通知文号"
|
||||||
</InputFormItem>
|
/>
|
||||||
|
<InputFormItem
|
||||||
<!--#region-->
|
v-model="lawsStandInfoSearch.lawsBulletin"
|
||||||
<!--<el-form-item label="政策分类" title="政策分类" class="add-form-item form-item-disabled">-->
|
label="信息月报"
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsType" filterable clearable>-->
|
title="信息月报"
|
||||||
<!-- <el-option-->
|
/>
|
||||||
<!-- v-for="item in dict.lawsTypeOptions"-->
|
<!-- <InputFormItem-->
|
||||||
<!-- placeholder="请选择"-->
|
<!-- v-model="lawsStandInfoSearch.lawsRemark"-->
|
||||||
<!-- :key="item.value"-->
|
<!-- label="备注(最终政策发布)"-->
|
||||||
<!-- :value="item.value"-->
|
<!-- title="备注(最终政策发布)"-->
|
||||||
<!-- :label="item.label"-->
|
<!-- />-->
|
||||||
<!-- ></el-option>-->
|
<SelectMultipleFormItem
|
||||||
<!-- </el-select>-->
|
v-model="lawsStandInfoSearch.lawsLabel"
|
||||||
<!--</el-form-item>-->
|
label="标签"
|
||||||
<!--<el-form-item label="发文日期" class="add-form-item form-item-disabled">-->
|
title="标签"
|
||||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.issueTime"-->
|
:options="dict.lawsLabelOptions"
|
||||||
<!-- :editable="false"-->
|
/>
|
||||||
<!-- placeholder="请选择发文日期"-->
|
<InputFormItem
|
||||||
<!-- value-format="yyyy-MM-dd"-->
|
v-model="lawsStandInfoSearch.lawsRemark"
|
||||||
<!-- clearable></el-datePicker>-->
|
label="备注"
|
||||||
<!--</el-form-item>-->
|
title="备注"
|
||||||
<!--<el-form-item label="适用区域" class="add-form-item form-item-disabled">-->
|
/>
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsSyqy" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.lawsSyqyOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="年度" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsYear" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.lawsYearOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="信息简报" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsBulletin" clearable-->
|
|
||||||
<!-- placeholder="请输入政策文号"-->
|
|
||||||
<!-- ></el-input>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<SelectFormItem label="2级政策分类"
|
<SelectFormItem
|
||||||
title="2级政策分类"
|
v-model="lawsStandInfoSearch.lawsTypeSecondLevel"
|
||||||
v-model="lawsStandInfoSearch.lawsTypeSecondLevel"
|
label="2级政策分类"
|
||||||
:options="dict.lawsTypeSecondLevelOptions">
|
title="2级政策分类"
|
||||||
</SelectFormItem>
|
:options="dict.lawsTypeSecondLevelOptions"
|
||||||
<SelectFormItem label="4级政策分类"
|
/>
|
||||||
title="4级政策分类"
|
<SelectFormItem
|
||||||
v-model="lawsStandInfoSearch.lawsTypeFourthLevel"
|
v-model="lawsStandInfoSearch.lawsTypeFourthLevel"
|
||||||
:options="dict.lawsTypeFourthLevelOptions">
|
label="4级政策分类"
|
||||||
</SelectFormItem>
|
title="4级政策分类"
|
||||||
<InputFormItem label="英文名称"
|
:options="dict.lawsTypeFourthLevelOptions"
|
||||||
title="英文名称"
|
/>
|
||||||
v-model="lawsStandInfoSearch.lawsEnName">
|
<InputFormItem
|
||||||
</InputFormItem>
|
v-model="lawsStandInfoSearch.lawsEnName"
|
||||||
<DatePickerFormItem label="发文日期"
|
label="英文名称"
|
||||||
title="发文日期"
|
title="英文名称"
|
||||||
v-model="lawsStandInfoSearch.issueTime">
|
/>
|
||||||
</DatePickerFormItem>
|
<DatePickerFormItem
|
||||||
<DataRangePickerFormItem label="征集意见周期"
|
v-model="lawsStandInfoSearch.issueTime"
|
||||||
title="征集意见周期"
|
label="发文日期"
|
||||||
:startTime.sync="lawsStandInfoSearch.commentCycleStart"
|
title="发文日期"
|
||||||
:endTime.sync="lawsStandInfoSearch.commentCycleEnd">
|
/>
|
||||||
</DataRangePickerFormItem>
|
<DataRangePickerFormItem
|
||||||
<SelectMultipleFormItem label="适用车型"
|
label="征集意见周期"
|
||||||
title="适用车型"
|
title="征集意见周期"
|
||||||
v-model="lawsStandInfoSearch.lawsSycx"
|
:startTime.sync="lawsStandInfoSearch.commentCycleStart"
|
||||||
:options="dict.lawsSycxOptions || []">
|
:endTime.sync="lawsStandInfoSearch.commentCycleEnd"
|
||||||
</SelectMultipleFormItem>
|
/>
|
||||||
<SelectFormItem label="年度"
|
<SelectMultipleFormItem
|
||||||
title="年度"
|
v-model="lawsStandInfoSearch.lawsSycx"
|
||||||
v-model="lawsStandInfoSearch.lawsYear"
|
label="适用车型"
|
||||||
:options="dict.lawsYearOptions">
|
title="适用车型"
|
||||||
</SelectFormItem>
|
:options="dict.lawsSycxOptions || []"
|
||||||
<InputFormItem label="通知文号链接"
|
/>
|
||||||
title="通知文号链接"
|
<SelectFormItem
|
||||||
v-model="lawsStandInfoSearch.notisyncNumLink">
|
v-model="lawsStandInfoSearch.lawsYear"
|
||||||
</InputFormItem>
|
label="年度"
|
||||||
<SelectMultipleFormItem label="标签"
|
title="年度"
|
||||||
title="标签"
|
:options="dict.lawsYearOptions"
|
||||||
v-model="lawsStandInfoSearch.lawsLabel"
|
/>
|
||||||
:options="dict.lawsLabelOptions">
|
<InputFormItem
|
||||||
</SelectMultipleFormItem>
|
v-model="lawsStandInfoSearch.notisyncNumLink"
|
||||||
|
label="通知文号链接"
|
||||||
<!--#region-->
|
title="通知文号链接"
|
||||||
<!--<el-form-item label="政策文号" class="add-form-item form-item-disabled">-->
|
/>
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsNo" clearable-->
|
<InputFormItem
|
||||||
<!-- placeholder="请输入政策文号"></el-input>-->
|
v-model="lawsStandInfoSearch.referenceNews"
|
||||||
<!--</el-form-item>-->
|
label="参考消息"
|
||||||
<!--<el-form-item label="发文单位" title="发文单位" class="add-form-item form-item-disabled">-->
|
title="参考消息"
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.issueCompany" placeholder="请输入发文单位" clearable></el-input>-->
|
/>
|
||||||
<!--</el-form-item>-->
|
<InputFormItem
|
||||||
<!--<el-form-item label="适用车型" class="add-form-item form-item-disabled">-->
|
v-model="lawsStandInfoSearch.lawsKeyPoint"
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsSycx" filterable clearable>-->
|
label="政策要点"
|
||||||
<!-- <el-option-->
|
title="政策要点"
|
||||||
<!-- v-for="item in dict.lawsSycxOptions"-->
|
/>
|
||||||
<!-- placeholder="请选择"-->
|
<InputFormItem
|
||||||
<!-- :key="item.value"-->
|
v-model="lawsStandInfoSearch.lawsOriginalLink"
|
||||||
<!-- :value="item.value"-->
|
label="政策原文链接"
|
||||||
<!-- :label="item.label"-->
|
title="政策原文链接"
|
||||||
<!-- ></el-option>-->
|
/>
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="是否纳入认证清单" title="是否纳入认证清单" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.isRelateAccess">-->
|
|
||||||
<!-- <el-option value="1" label="是" key="1"></el-option>-->
|
|
||||||
<!-- <el-option value="2" label="否" key="2"></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="福田转发通知文号" title="福田转发通知文号" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsNotisyncNum" placeholder="请输入福田转发通知文号" clearable></el-input>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="标签" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.lawsLabel" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.lawsLabelOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<!--#region-->
|
|
||||||
<!--<el-row :gutter="24">-->
|
|
||||||
<!-- <el-col :span="24">-->
|
|
||||||
<!-- <el-form-item label="征集意见周期" title="征集意见周期" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-date-picker-->
|
|
||||||
<!-- v-model="commentCycleDate"-->
|
|
||||||
<!-- :picker-options="pickerOptions"-->
|
|
||||||
<!-- type="daterange"-->
|
|
||||||
<!-- range-separator="至"-->
|
|
||||||
<!-- start-placeholder="起始时间"-->
|
|
||||||
<!-- end-placeholder="结束时间"-->
|
|
||||||
<!-- value-format="yyyy-MM-dd"-->
|
|
||||||
<!-- align="right">-->
|
|
||||||
<!-- </el-date-picker>-->
|
|
||||||
<!-- </el-form-item>-->
|
|
||||||
<!-- </el-col>-->
|
|
||||||
<!--</el-row>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</div>
|
</div>
|
||||||
<ProcessTitle>
|
<ProcessTitle>
|
||||||
<template slot="title">实施日期</template>
|
<template slot="title">实施日期</template>
|
||||||
@@ -220,55 +153,33 @@
|
|||||||
<div class="prc-content-border">
|
<div class="prc-content-border">
|
||||||
<el-row :gutter="24">
|
<el-row :gutter="24">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<DatePickerGroupFormItem label="实施日期"
|
<DatePickerGroupFormItem
|
||||||
title="实施日期"
|
v-model="lawsStandInfoSearch.SSRQLAWS"
|
||||||
v-model="lawsStandInfoSearch.SSRQLAWS"
|
label="实施日期"
|
||||||
></DatePickerGroupFormItem>
|
title="实施日期"
|
||||||
<DatePickerFormItem label="新生产实施日期"
|
/>
|
||||||
title="新生产实施日期"
|
<DatePickerFormItem
|
||||||
v-model="lawsStandInfoSearch.ZCXSSRQLAWS">
|
v-model="lawsStandInfoSearch.ZCXSSRQLAWS"
|
||||||
</DatePickerFormItem>
|
label="新生产实施日期"
|
||||||
<DatePickerFormItem label="生效日期"
|
title="新生产实施日期"
|
||||||
title="生效日期"
|
/>
|
||||||
v-model="lawsStandInfoSearch.SXRQLAWS">
|
<DatePickerFormItem
|
||||||
</DatePickerFormItem>
|
v-model="lawsStandInfoSearch.SXRQLAWS"
|
||||||
|
label="生效日期"
|
||||||
<!--#region-->
|
title="生效日期"
|
||||||
<!--<el-form-item label="实施日期" class="add-form-item form-item-disabled">-->
|
/>
|
||||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.SSRQLAWS"-->
|
|
||||||
<!-- :editable="false"-->
|
|
||||||
<!-- placeholder="请选择实施日期"-->
|
|
||||||
<!-- value-format="yyyy-MM-dd"-->
|
|
||||||
<!-- clearable></el-datePicker>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="新车型实施日期" title="新车型实施日期" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.XCXSSRQLAWS"-->
|
|
||||||
<!-- :editable="false"-->
|
|
||||||
<!-- placeholder="请选择实施日期"-->
|
|
||||||
<!-- value-format="yyyy-MM-dd"-->
|
|
||||||
<!-- clearable></el-datePicker>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<DatePickerFormItem label="新认证实施日期"
|
<DatePickerFormItem
|
||||||
title="新认证实施日期"
|
v-model="lawsStandInfoSearch.XRZSSRQLAWS"
|
||||||
v-model="lawsStandInfoSearch.XRZSSRQLAWS"
|
label="新认证实施日期"
|
||||||
></DatePickerFormItem>
|
title="新认证实施日期"
|
||||||
<DatePickerFormItem label="在用车实施日期"
|
/>
|
||||||
title="在用车实施日期"
|
<DatePickerFormItem
|
||||||
v-model="lawsStandInfoSearch.XCXSSRQLAWS"
|
v-model="lawsStandInfoSearch.XCXSSRQLAWS"
|
||||||
></DatePickerFormItem>
|
label="在用车实施日期"
|
||||||
|
title="在用车实施日期"
|
||||||
<!--#region-->
|
/>
|
||||||
<!--<el-form-item label="在产车实施日期" title="在产车实施日期" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-datePicker v-model="lawsStandInfoSearch.ZCXSSRQLAWS"-->
|
|
||||||
<!-- :editable="false"-->
|
|
||||||
<!-- placeholder="请选择实施日期"-->
|
|
||||||
<!-- value-format="yyyy-MM-dd"-->
|
|
||||||
<!-- clearable></el-datePicker>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
@@ -278,120 +189,42 @@
|
|||||||
<div class="prc-content-border">
|
<div class="prc-content-border">
|
||||||
<el-row :gutter="24">
|
<el-row :gutter="24">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<SelectFormItem label="我司参与深度"
|
<SelectFormItem
|
||||||
title="我司参与深度"
|
v-model="lawsStandInfoSearch.CYSDLAWS"
|
||||||
v-model="lawsStandInfoSearch.CYSDLAWS"
|
label="我司参与深度"
|
||||||
:options="dict.CYSDLAWSOptions">
|
title="我司参与深度"
|
||||||
</SelectFormItem>
|
:options="dict.CYSDLAWSOptions"
|
||||||
<DepartmentFormItem label="投稿单位"
|
/>
|
||||||
title="投稿单位"
|
<DepartmentFormItem
|
||||||
v-model="lawsStandInfoSearch.TGDWLAWS"
|
v-model="lawsStandInfoSearch.TGDWLAWS"
|
||||||
:ids.sync="lawsStandInfoSearch.TGDWLAWSID">
|
label="投稿单位"
|
||||||
</DepartmentFormItem>
|
title="投稿单位"
|
||||||
<DepartmentFormItem label="责任部门"
|
:ids.sync="lawsStandInfoSearch.TGDWLAWSID"
|
||||||
title="责任部门"
|
/>
|
||||||
v-model="lawsStandInfoSearch.ZRBMLAWS"
|
<DepartmentFormItem
|
||||||
:ids.sync="lawsStandInfoSearch.ZRBMLAWSID">
|
v-model="lawsStandInfoSearch.ZRBMLAWS"
|
||||||
</DepartmentFormItem>
|
label="责任部门"
|
||||||
<!--#region-->
|
title="责任部门"
|
||||||
<!--<el-form-item label="发布机构" title="发布机构" class="add-form-item form-item-disabled">-->
|
:ids.sync="lawsStandInfoSearch.ZRBMLAWSID"
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.FBJGLAWS" placeholder="请输入发布机构" clearable></el-input>-->
|
/>
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="投稿人" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.TGRLAWS" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.TGRLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="能源类型" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.NYLXLAWS" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.NYLXLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="责任部门" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.ZRBMLAWS" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.ZRBMLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<personFormItem label="投稿人"
|
<personFormItem
|
||||||
title="投稿人"
|
v-model="lawsStandInfoSearch.TGRLAWS"
|
||||||
v-model="lawsStandInfoSearch.TGRLAWS">
|
label="投稿人"
|
||||||
</personFormItem>
|
title="投稿人"
|
||||||
<SelectMultipleFormItem label="适用认证"
|
/>
|
||||||
title="适用认证"
|
<SelectMultipleFormItem
|
||||||
v-model="lawsStandInfoSearch.SYRZLAWS"
|
v-model="lawsStandInfoSearch.SYRZLAWS"
|
||||||
:options="dict.syrzOptions">
|
label="适用认证"
|
||||||
</SelectMultipleFormItem>
|
title="适用认证"
|
||||||
<personFormItem label="责任工程师"
|
:options="dict.syrzOptions"
|
||||||
title="责任工程师"
|
/>
|
||||||
v-model="lawsStandInfoSearch.ZRGCSLAWS">
|
<personFormItem
|
||||||
</personFormItem>
|
v-model="lawsStandInfoSearch.ZRGCSLAWS"
|
||||||
<!--#region-->
|
label="责任工程师"
|
||||||
<!--<el-form-item label="我司参与深度" title="我司参与深度" class="add-form-item form-item-disabled">-->
|
title="责任工程师"
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.CYSDLAWS" filterable clearable>-->
|
/>
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.CYSDLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="投稿单位" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.TGDWLAWS" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.TGDWLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="适用认证" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.YYRZLAWS" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.YYRZLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--<el-form-item label="责任工程师" class="add-form-item form-item-disabled">-->
|
|
||||||
<!-- <el-select v-model="lawsStandInfoSearch.ZRGCSLAWS" filterable clearable>-->
|
|
||||||
<!-- <el-option-->
|
|
||||||
<!-- v-for="item in dict.ZRGCSLAWSOptions"-->
|
|
||||||
<!-- placeholder="请选择"-->
|
|
||||||
<!-- :key="item.value"-->
|
|
||||||
<!-- :value="item.value"-->
|
|
||||||
<!-- :label="item.label"-->
|
|
||||||
<!-- ></el-option>-->
|
|
||||||
<!-- </el-select>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
@@ -401,38 +234,33 @@
|
|||||||
<div class="prc-content-border">
|
<div class="prc-content-border">
|
||||||
<el-row :gutter="24">
|
<el-row :gutter="24">
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<InputForStandardsForLaws label="代替文件号"
|
<InputForStandardsForLaws
|
||||||
title="代替文件号"
|
v-model="lawsStandInfoSearch.DTWJHLAWS"
|
||||||
v-model="lawsStandInfoSearch.DTWJHLAWS"
|
label="代替文件号"
|
||||||
></InputForStandardsForLaws>
|
title="代替文件号"
|
||||||
<InputForStandardsForLaws label="引用标准&政策"
|
/>
|
||||||
title="引用标准&政策"
|
<InputForStandardsForLaws
|
||||||
v-model="lawsStandInfoSearch.YYBZZCLAWS"
|
v-model="lawsStandInfoSearch.YYBZZCLAWS"
|
||||||
></InputForStandardsForLaws>
|
label="引用标准&政策"
|
||||||
<InputFormItem label="参会记录"
|
title="引用标准&政策"
|
||||||
title="参会记录"
|
/>
|
||||||
v-model="lawsStandInfoSearch.CHJLLAWS">
|
<InputFormItem
|
||||||
</InputFormItem>
|
v-model="lawsStandInfoSearch.CHJLLAWS"
|
||||||
<!--#region-->
|
label="参会记录"
|
||||||
<!--<el-form-item label="代替文件号" title="代替文件号" class="add-form-item form-item-disabled">-->
|
title="参会记录"
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.DTWJHLAWS" placeholder="请输入代替文件号" clearable></el-input>-->
|
/>
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
<el-col :span="12">
|
<el-col :span="12">
|
||||||
<InputForStandardsForLaws label="被代替文件号"
|
<InputForStandardsForLaws
|
||||||
title="被代替文件号"
|
v-model="lawsStandInfoSearch.BDTWJHLAWS"
|
||||||
v-model="lawsStandInfoSearch.BDTWJHLAWS"
|
label="被代替文件号"
|
||||||
></InputForStandardsForLaws>
|
title="被代替文件号"
|
||||||
<InputFormItem label="相关流程"
|
/>
|
||||||
title="相关流程"
|
<InputFormItem
|
||||||
v-model="lawsStandInfoSearch.XGLC">
|
v-model="lawsStandInfoSearch.XGLC"
|
||||||
</InputFormItem>
|
label="相关流程"
|
||||||
<!--#region-->
|
title="相关流程"
|
||||||
<!--<el-form-item label="被代替文件号" title="被代替文件号" class="add-form-item form-item-disabled">-->
|
/>
|
||||||
<!-- <el-input v-model="lawsStandInfoSearch.BDTWJHLAWS" placeholder="请输入被代替文件号" clearable></el-input>-->
|
|
||||||
<!--</el-form-item>-->
|
|
||||||
<!--#endregion-->
|
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
</div>
|
</div>
|
||||||
@@ -440,15 +268,19 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="demo-drawer-footer">
|
<div class="demo-drawer-footer">
|
||||||
<el-button
|
<el-button
|
||||||
class="common-button-primary"
|
class="common-button-primary"
|
||||||
icon="el-icon-check"
|
icon="el-icon-check"
|
||||||
type="primary"
|
type="primary"
|
||||||
@click="getBussionStandTableBtn(lawsStandInfoSearch,'','sel')">搜索
|
@click="getBussionStandTableBtn(lawsStandInfoSearch,'','sel')"
|
||||||
|
>
|
||||||
|
搜索
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
class="common-button-default"
|
class="common-button-default"
|
||||||
icon="el-icon-close"
|
icon="el-icon-close"
|
||||||
@click="clearAllSearch('lawsStandInfoSearch')">取消
|
@click="clearAllSearch('lawsStandInfoSearch')"
|
||||||
|
>
|
||||||
|
取消
|
||||||
</el-button>
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
@@ -456,18 +288,18 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
import ProcessTitle from '@/pages/processCenter/pages/components/ProcessTitle'
|
import ProcessTitle from '@/pages/processCenter/pages/components/ProcessTitle'
|
||||||
import SelectFormItem from "@/components/hzwlComponents/SelectFormItem";
|
import SelectFormItem from '@/components/hzwlComponents/SelectFormItem';
|
||||||
import InputFormItem from "@/components/hzwlComponents/InputFormItem";
|
import InputFormItem from '@/components/hzwlComponents/InputFormItem';
|
||||||
import DatePickerFormItem from "@/components/hzwlComponents/DatePickerFormItem";
|
import DatePickerFormItem from '@/components/hzwlComponents/DatePickerFormItem';
|
||||||
import DataRangePickerFormItem from "@/components/hzwlComponents/DataRangePickerFormItem";
|
import DataRangePickerFormItem from '@/components/hzwlComponents/DataRangePickerFormItem';
|
||||||
import SelectMultipleFormItem from "@/components/hzwlComponents/SelectMultipleFormItem";
|
import SelectMultipleFormItem from '@/components/hzwlComponents/SelectMultipleFormItem';
|
||||||
import DatePickerGroupFormItem from "@/components/hzwlComponents/DatePickerGroupFormItem";
|
import DatePickerGroupFormItem from '@/components/hzwlComponents/DatePickerGroupFormItem';
|
||||||
import DepartmentFormItem from "@/components/hzwlComponents/DepartmentFormItem";
|
import DepartmentFormItem from '@/components/hzwlComponents/DepartmentFormItem';
|
||||||
import personFormItem from "@/components/hzwlComponents/personFormItem";
|
import personFormItem from '@/components/hzwlComponents/personFormItem';
|
||||||
import InputForStandardsForLaws from "@/components/hzwlComponents/InputForStandardsForLaws";
|
import InputForStandardsForLaws from '@/components/hzwlComponents/InputForStandardsForLaws';
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "advancedSearch",
|
name: 'AdvancedSearch',
|
||||||
components: {
|
components: {
|
||||||
ProcessTitle,
|
ProcessTitle,
|
||||||
SelectFormItem,
|
SelectFormItem,
|
||||||
@@ -480,6 +312,16 @@ export default {
|
|||||||
personFormItem,
|
personFormItem,
|
||||||
InputForStandardsForLaws
|
InputForStandardsForLaws
|
||||||
},
|
},
|
||||||
|
props: {
|
||||||
|
lawsStandInfoSearch: {
|
||||||
|
type: Object,
|
||||||
|
default: () => ({})
|
||||||
|
},
|
||||||
|
dict: {
|
||||||
|
type: Object,
|
||||||
|
default: () => ({})
|
||||||
|
},
|
||||||
|
},
|
||||||
data () {
|
data () {
|
||||||
return{
|
return{
|
||||||
isAdvancedSearch: false,
|
isAdvancedSearch: false,
|
||||||
@@ -495,16 +337,6 @@ export default {
|
|||||||
]
|
]
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
|
||||||
lawsStandInfoSearch: {
|
|
||||||
type: Object,
|
|
||||||
default: () => ({})
|
|
||||||
},
|
|
||||||
dict: {
|
|
||||||
type: Object,
|
|
||||||
default: () => ({})
|
|
||||||
},
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
open () {
|
open () {
|
||||||
this.isAdvancedSearch = true
|
this.isAdvancedSearch = true
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
<template>
|
<template>
|
||||||
<!-- 配置标准 -->
|
<!-- 配置标准 -->
|
||||||
<el-drawer
|
<el-drawer
|
||||||
title="配置政策"
|
title="配置政策"
|
||||||
:wrapperClosable="false"
|
:wrapperClosable="false"
|
||||||
:visible.sync="configStandFlag"
|
:visible.sync="configStandFlag"
|
||||||
size="1200px"
|
size="1200px"
|
||||||
@close="cancelConfigStand"
|
@close="cancelConfigStand"
|
||||||
>
|
>
|
||||||
<div class="demo-drawer-content">
|
<div class="demo-drawer-content">
|
||||||
<div class="search-area">
|
<div class="search-area">
|
||||||
@@ -16,8 +16,12 @@
|
|||||||
<!-- placeholder="根据标准名称查找" clearable/>-->
|
<!-- placeholder="根据标准名称查找" clearable/>-->
|
||||||
<!-- </el-formItem>-->
|
<!-- </el-formItem>-->
|
||||||
<el-formItem label="政策文号" prop="lawsNo" class="search-item">
|
<el-formItem label="政策文号" prop="lawsNo" class="search-item">
|
||||||
<el-input v-model="sarConfigStandSearch.lawsNo" @keyup.enter.native="searchConfiguraStand"
|
<el-input
|
||||||
placeholder="根据政策文号查找" clearable/>
|
v-model="sarConfigStandSearch.lawsNo"
|
||||||
|
placeholder="根据政策文号查找"
|
||||||
|
clearable
|
||||||
|
@keyup.enter.native="searchConfiguraStand"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<!-- <el-formItem label="企标类别" prop="standSort" class="search-item">-->
|
<!-- <el-formItem label="企标类别" prop="standSort" class="search-item">-->
|
||||||
<!-- <el-select v-model="sarConfigStandSearch.standSort" placeholder="根据企标类别查找"-->
|
<!-- <el-select v-model="sarConfigStandSearch.standSort" placeholder="根据企标类别查找"-->
|
||||||
@@ -27,24 +31,32 @@
|
|||||||
<!-- </el-select>-->
|
<!-- </el-select>-->
|
||||||
<!-- </el-formItem>-->
|
<!-- </el-formItem>-->
|
||||||
<el-formItem label="政策名称" prop="lawsName" class="search-item">
|
<el-formItem label="政策名称" prop="lawsName" class="search-item">
|
||||||
<el-input v-model="sarConfigStandSearch.lawsName" @keyup.enter.native="searchConfiguraStand" placeholder="根据政策名称查找" clearable :maxlength="100"/>
|
<el-input
|
||||||
|
v-model="sarConfigStandSearch.lawsName"
|
||||||
|
placeholder="根据政策名称查找"
|
||||||
|
clearable
|
||||||
|
:maxlength="100"
|
||||||
|
@keyup.enter.native="searchConfiguraStand"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-form-item class="search-item btn-box">
|
<el-form-item class="search-item btn-box">
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
class="common-button-primary"
|
class="common-button-primary"
|
||||||
size="small"
|
size="small"
|
||||||
:loading="searching"
|
:loading="searching"
|
||||||
@click="searchConfiguraStand">
|
@click="searchConfiguraStand"
|
||||||
|
>
|
||||||
查询
|
查询
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
<el-form-item class="search-item btn-box">
|
<el-form-item class="search-item btn-box">
|
||||||
<el-button
|
<el-button
|
||||||
class="common-button-default"
|
class="common-button-default"
|
||||||
size="small"
|
size="small"
|
||||||
@click="clearAllSearch(3)"
|
@click="clearAllSearch(3)"
|
||||||
>清空
|
>
|
||||||
|
清空
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@@ -52,95 +64,104 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="drawer-content">
|
<div class="drawer-content">
|
||||||
<el-table
|
<el-table
|
||||||
ref="selection"
|
ref="selection"
|
||||||
:data="configStandList"
|
:data="configStandList"
|
||||||
tooltip-effect="dark"
|
tooltip-effect="dark"
|
||||||
style="width: 100%; flex: auto;"
|
style="width: 100%; flex: auto;"
|
||||||
height="100%"
|
height="100%"
|
||||||
border
|
border
|
||||||
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
:header-cell-style="{background: '#f8f8f9', color: '#515a6e'}"
|
||||||
@sort-change="sortChangeConfig"
|
@sort-change="sortChangeConfig"
|
||||||
@selection-change="selectConfigStandChange">
|
@selection-change="selectConfigStandChange"
|
||||||
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
width="55"
|
width="55"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="index"
|
type="index"
|
||||||
width="55"
|
width="55"
|
||||||
label="序号"
|
label="序号"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="{scope, column, $index}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
{{ ($index + 1) + (configPage - 1) * configRows }}
|
{{ ($index + 1) + (configPage - 1) * configRows }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="lawsNo"
|
prop="lawsNo"
|
||||||
label="政策文号"
|
label="政策文号"
|
||||||
width="150"
|
width="150"
|
||||||
align="center"
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="lawsName"
|
||||||
|
label="政策名称"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="lawsEnName"
|
||||||
|
label="英文名称"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="issueTime"
|
||||||
|
label="发文日期"
|
||||||
|
width="120"
|
||||||
|
sortable
|
||||||
|
align="center"
|
||||||
>
|
>
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="lawsName"
|
|
||||||
label="政策名称"
|
|
||||||
align="center">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="lawsEnName"
|
|
||||||
label="英文名称"
|
|
||||||
align="center">
|
|
||||||
</el-table-column>
|
|
||||||
<el-table-column
|
|
||||||
prop="issueTime"
|
|
||||||
label="发文日期"
|
|
||||||
width="120"
|
|
||||||
sortable
|
|
||||||
align="center">
|
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{formatDate(scope.row.issueTime)}}</span>
|
<span>{{ formatDate(scope.row.issueTime) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="ssrqlaws"
|
prop="ssrqlaws"
|
||||||
label="实施日期"
|
label="实施日期"
|
||||||
width="120"
|
width="120"
|
||||||
sortable
|
sortable
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span>{{formatDate(scope.row.ssrqlaws)}}</span>
|
<span>{{ formatDate(scope.row.ssrqlaws) }}</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="政策状态"
|
||||||
width="100"
|
width="100"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
</el-table>
|
</el-table>
|
||||||
</div>
|
</div>
|
||||||
<pagination
|
<pagination
|
||||||
style="position: relative;"
|
style="position: relative;"
|
||||||
:page="configPage"
|
:auto-size="true"
|
||||||
:pageSize="configRows"
|
:page="configPage"
|
||||||
:total="configTotal"
|
:pageSize="configRows"
|
||||||
@pageChange="configuraPageChange"
|
:total="configTotal"
|
||||||
@pageSizeChange="configuraPageSizeChange"></pagination>
|
@pageChange="configuraPageChange"
|
||||||
|
@pageSizeChange="configuraPageSizeChange"
|
||||||
|
/>
|
||||||
<div class="divDel">
|
<div class="divDel">
|
||||||
<div class="divDel_title">已选政策</div>
|
<div class="divDel_title">已选政策</div>
|
||||||
<div class="divDel_box">
|
<div class="divDel_box">
|
||||||
<el-tag
|
<el-tag
|
||||||
v-for="tag in selectConfigStand"
|
v-for="tag in selectConfigStand"
|
||||||
:key="tag.id"
|
:key="tag.id"
|
||||||
size="mini"
|
size="mini"
|
||||||
closable
|
closable
|
||||||
@close="handleTagClose(tag)">
|
@close="handleTagClose(tag)"
|
||||||
<a v-if="tag.standStatusShow === '作废' "
|
>
|
||||||
class="table-jump" style="color: #F56C6C"
|
<a
|
||||||
@click="handlePreview(tag)">{{ tag.lawsName }}</a>
|
v-if="tag.standStatusShow === '作废' "
|
||||||
<a v-else @click="handlePreview(tag)" class="table-jump" style="color: #333333">{{ tag.lawsName }}</a>
|
class="table-jump"
|
||||||
|
style="color: #F56C6C"
|
||||||
|
@click="handlePreview(tag)"
|
||||||
|
>{{ tag.lawsName }}</a>
|
||||||
|
<a v-else class="table-jump" style="color: #333333" @click="handlePreview(tag)">{{ tag.lawsName }}</a>
|
||||||
</el-tag>
|
</el-tag>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
@@ -148,34 +169,55 @@
|
|||||||
</div>
|
</div>
|
||||||
<div class="demo-drawer-footer">
|
<div class="demo-drawer-footer">
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
type="primary"
|
||||||
round class="common-button-primary"
|
round
|
||||||
icon="el-icon-check"
|
class="common-button-primary"
|
||||||
@click="saveConfigStand"
|
icon="el-icon-check"
|
||||||
:loading="isSubmit"
|
:loading="isSubmit"
|
||||||
>提交</el-button>
|
@click="saveConfigStand"
|
||||||
<el-button class="common-button-default" style="padding: 7px 12px;" icon="el-icon-close" type="primary"
|
>
|
||||||
round @click="cancelConfigStand">取消</el-button>
|
提交
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
class="common-button-default"
|
||||||
|
style="padding: 7px 12px;"
|
||||||
|
icon="el-icon-close"
|
||||||
|
type="primary"
|
||||||
|
round
|
||||||
|
@click="cancelConfigStand"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-drawer>
|
</el-drawer>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "configStandDrawer",
|
name: 'ConfigStandDrawer',
|
||||||
|
props: {
|
||||||
|
selectSarMenu: {
|
||||||
|
type: Object,
|
||||||
|
required: true
|
||||||
|
},
|
||||||
|
getBussionStandTable: {
|
||||||
|
type: Function,
|
||||||
|
required: true
|
||||||
|
}
|
||||||
|
},
|
||||||
data () {
|
data () {
|
||||||
return {
|
return {
|
||||||
configStandFlag: false, // 控制配置标准表格是否显示
|
configStandFlag: false, // 控制配置标准表格是否显示
|
||||||
configPage: 1,
|
configPage: 1,
|
||||||
configTotal: 0,
|
configTotal: 0,
|
||||||
configRows: this.$store.getters.userInfo.configContent,
|
configRows: 20,
|
||||||
searching: false,
|
searching: false,
|
||||||
configStandList: [],
|
configStandList: [],
|
||||||
configLoading: false, // 配置表格加载中
|
configLoading: false, // 配置表格加载中
|
||||||
isSubmit: false,
|
isSubmit: false,
|
||||||
sarConfigStandSearch: {
|
sarConfigStandSearch: {
|
||||||
page: this.configPage,
|
page: this.configPage,
|
||||||
pageSize: this.$store.getters.userInfo.configContent,
|
pageSize: 20,
|
||||||
standType: 'INLAND',
|
standType: 'INLAND',
|
||||||
validFlag: '0',
|
validFlag: '0',
|
||||||
// menuId: '',
|
// menuId: '',
|
||||||
@@ -197,16 +239,6 @@ export default {
|
|||||||
selectConfigStand: []
|
selectConfigStand: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
props: {
|
|
||||||
selectSarMenu: {
|
|
||||||
type: Object,
|
|
||||||
required: true
|
|
||||||
},
|
|
||||||
getBussionStandTable: {
|
|
||||||
type: Function,
|
|
||||||
required: true
|
|
||||||
}
|
|
||||||
},
|
|
||||||
methods: {
|
methods: {
|
||||||
open () {
|
open () {
|
||||||
this.configStandFlag = true
|
this.configStandFlag = true
|
||||||
@@ -220,8 +252,8 @@ export default {
|
|||||||
this.selectConfiguraStand()
|
this.selectConfiguraStand()
|
||||||
},
|
},
|
||||||
clearAllSearch (flag) {
|
clearAllSearch (flag) {
|
||||||
this.sarConfigStandSearch.lawsNo=''
|
this.sarConfigStandSearch.lawsNo = ''
|
||||||
this.sarConfigStandSearch.lawsName=''
|
this.sarConfigStandSearch.lawsName = ''
|
||||||
this.configPage = 1
|
this.configPage = 1
|
||||||
this.sarConfigStandSearch.page = 1
|
this.sarConfigStandSearch.page = 1
|
||||||
this.selectConfiguraStand()
|
this.selectConfiguraStand()
|
||||||
@@ -229,8 +261,8 @@ export default {
|
|||||||
// 取消配置标准
|
// 取消配置标准
|
||||||
cancelConfigStand () {
|
cancelConfigStand () {
|
||||||
this.configStandFlag = false
|
this.configStandFlag = false
|
||||||
this.sarConfigStandSearch.lawsNo=''
|
this.sarConfigStandSearch.lawsNo = ''
|
||||||
this.sarConfigStandSearch.lawsName=''
|
this.sarConfigStandSearch.lawsName = ''
|
||||||
this.configPage = 1
|
this.configPage = 1
|
||||||
this.selectConfigStand = []
|
this.selectConfigStand = []
|
||||||
},
|
},
|
||||||
@@ -246,7 +278,7 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 配置标准-表格排序
|
// 配置标准-表格排序
|
||||||
sortChangeConfig(sortObj) {
|
sortChangeConfig (sortObj) {
|
||||||
if (sortObj.column.order !== 'normal') {
|
if (sortObj.column.order !== 'normal') {
|
||||||
switch (sortObj.prop) {
|
switch (sortObj.prop) {
|
||||||
case 'issueTime' :
|
case 'issueTime' :
|
||||||
@@ -298,7 +330,7 @@ export default {
|
|||||||
},
|
},
|
||||||
// 提交配置搜索项
|
// 提交配置搜索项
|
||||||
saveConfigStand () {
|
saveConfigStand () {
|
||||||
let search = {}
|
const search = {}
|
||||||
search.menuId = this.selectSarMenu.id
|
search.menuId = this.selectSarMenu.id
|
||||||
if (this.selectConfigStand.length === 0) {
|
if (this.selectConfigStand.length === 0) {
|
||||||
this.$message({
|
this.$message({
|
||||||
@@ -324,9 +356,9 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
formatDate (dateStr) {
|
formatDate (dateStr) {
|
||||||
if (dateStr && dateStr!== '') {
|
if (dateStr && dateStr !== '') {
|
||||||
let dateArr = dateStr.split(',')
|
const dateArr = dateStr.split(',')
|
||||||
return dateArr.map(date => date.slice(0,10)).join(',')
|
return dateArr.map(date => date.slice(0, 10)).join(',')
|
||||||
}
|
}
|
||||||
return dateStr
|
return dateStr
|
||||||
},
|
},
|
||||||
@@ -335,7 +367,7 @@ export default {
|
|||||||
this.$refs.selection.toggleRowSelection(tag, false)
|
this.$refs.selection.toggleRowSelection(tag, false)
|
||||||
},
|
},
|
||||||
handlePreview (tag) {
|
handlePreview (tag) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherLawsStandDetails',
|
name: 'OtherLawsStandDetails',
|
||||||
params: {
|
params: {
|
||||||
id: tag.id,
|
id: tag.id,
|
||||||
|
|||||||
File diff suppressed because it is too large
Load Diff
@@ -2,173 +2,178 @@
|
|||||||
<!--表格-->
|
<!--表格-->
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<el-table
|
<el-table
|
||||||
ref="selection"
|
ref="selection"
|
||||||
:data="standinfoList"
|
:data="standinfoList"
|
||||||
tooltip-effect="dark"
|
tooltip-effect="dark"
|
||||||
style="width:100%;"
|
style="width:100%;"
|
||||||
:height="tableHeight"
|
:height="tableHeight"
|
||||||
border
|
border
|
||||||
class="drag-table"
|
class="drag-table"
|
||||||
:row-class-name="dragRowClassName"
|
:row-class-name="dragRowClassName"
|
||||||
@sort-change="sortChange"
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
||||||
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px',
|
fontWeight: 'bold', height: '48px'}"
|
||||||
fontWeight: 'bold', height: '48px'}"
|
@sort-change="sortChange"
|
||||||
@selection-change="standSelectChange"
|
@selection-change="standSelectChange"
|
||||||
>
|
>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="selection"
|
type="selection"
|
||||||
min-width="5%"
|
min-width="5%"
|
||||||
align="center">
|
align="center"
|
||||||
</el-table-column>
|
/>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
type="index"
|
type="index"
|
||||||
width="55"
|
width="55"
|
||||||
label="序号"
|
label="序号"
|
||||||
align="center">
|
align="center"
|
||||||
|
>
|
||||||
<template slot-scope="{scope, column, $index}">
|
<template slot-scope="{scope, column, $index}">
|
||||||
{{ ($index + 1) + (lawsStandInfoSearch.page - 1) * lawsStandInfoSearch.pageSize }}
|
{{ ($index + 1) + (lawsStandInfoSearch.page - 1) * lawsStandInfoSearch.pageSize }}
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="lawsName"
|
prop="lawsName"
|
||||||
label="政策名称"
|
label="政策名称"
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||||
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
|
<a v-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||||
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsName }}</a>
|
<a v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'" style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsName }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="lawsNo"
|
prop="lawsNo"
|
||||||
label="政策文号"
|
label="政策文号"
|
||||||
sortable
|
sortable
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsNo }}</a>
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsNo }}</a>
|
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.lawsNo }}</a>
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.lawsNo }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="issueCompany"
|
prop="issueCompany"
|
||||||
label="发文单位"
|
label="发文单位"
|
||||||
sortable
|
sortable
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.issueCompany }}</a>
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.issueCompany }}</a>
|
||||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.issueCompany }}</a>
|
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.issueCompany }}</a>
|
||||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ scope.row.issueCompany }}</a>
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ scope.row.issueCompany }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="issueTime"
|
prop="issueTime"
|
||||||
label="发文日期"
|
label="发文日期"
|
||||||
sortable
|
sortable
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.issueTime) }}</a>
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.issueTime) }}</a>
|
||||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.issueTime) }}</a>
|
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.issueTime) }}</a>
|
||||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.issueTime) }}</a>
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.issueTime) }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="ssrqlaws"
|
prop="ssrqlaws"
|
||||||
label="实施日期"
|
label="实施日期"
|
||||||
sortable
|
sortable
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ formatDate(scope.row.ssrqlaws) }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
prop="lawsSycx"
|
prop="lawsSycx"
|
||||||
label="适用车型"
|
label="适用车型"
|
||||||
sortable
|
sortable
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" @click="handlePreview(scope.row)" class="table-jump">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
<a v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C" class="table-jump" @click="handlePreview(scope.row)">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||||
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" @click="handlePreview(scope.row)" class="table-jump">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
<a v-else-if="scope.row.standStatusShow === '参考' " style="color: #E6A23C" class="table-jump" @click="handlePreview(scope.row)">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||||
<a v-else style="color: #333333" @click="handlePreview(scope.row)" class="table-jump">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
<a v-else style="color: #333333" class="table-jump" @click="handlePreview(scope.row)">{{ convert(scope.row.lawsSycx, 'lawsSycxOptions') }}</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
show-overflow-tooltip
|
show-overflow-tooltip
|
||||||
sortable
|
sortable
|
||||||
prop="standStatusShow"
|
prop="standStatusShow"
|
||||||
label="文本状态"
|
label="政策状态"
|
||||||
min-width="110"
|
min-width="110"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
<span v-if="scope.row.standStatusShow === '作废'" style="color: #F56C6C">
|
||||||
{{scope.row.standStatusShow}}
|
{{ scope.row.standStatusShow }}
|
||||||
</span>
|
</span>
|
||||||
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
<span v-if="scope.row.standStatusShow === '参考'" style="color: #E6A23C">
|
||||||
{{scope.row.standStatusShow}}
|
{{ scope.row.standStatusShow }}
|
||||||
</span>
|
</span>
|
||||||
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
<span v-if="scope.row.standStatusShow !== '作废' && scope.row.standStatusShow !== '参考'">
|
||||||
{{scope.row.standStatusShow}}
|
{{ scope.row.standStatusShow }}
|
||||||
</span>
|
</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column
|
<el-table-column
|
||||||
v-if="isPermission('1a8b50a3541387dc2818fc361ea3ab31,dca69b895a88c2e3a3bf16d44e34fc04,b98579c3d0514ba75c4d1b21c9d5aa17,c158e787202d1e67f75d5a2f9da889df') > 0"
|
v-if="isPermission('1a8b50a3541387dc2818fc361ea3ab31,dca69b895a88c2e3a3bf16d44e34fc04,b98579c3d0514ba75c4d1b21c9d5aa17,c158e787202d1e67f75d5a2f9da889df') > 0"
|
||||||
prop="action"
|
prop="action"
|
||||||
label="操作"
|
label="操作"
|
||||||
align="center"
|
align="center"
|
||||||
min-width="120"
|
min-width="120"
|
||||||
>
|
>
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<a class="table-jump" v-btn-permission="'1a8b50a3541387dc2818fc361ea3ab31'" v-if="scope.row.collectBtn" style="color: #2d8cf0" @click="handleCommand([scope.row, '收藏'])">收藏</a>
|
<a
|
||||||
<a class="table-jump" v-btn-permission="'dca69b895a88c2e3a3bf16d44e34fc04'" v-else style="color: #2d8cf0" @click="handleCommand([scope.row, '取消收藏'])">取消收藏</a>
|
v-if="scope.row.collectBtn"
|
||||||
<a class="table-jump" v-btn-permission="'b98579c3d0514ba75c4d1b21c9d5aa17'" style="color: #2d8cf0;margin-left: 10px" @click="handleCommand([scope.row, '编辑'])">编辑</a>
|
v-btn-permission="'1a8b50a3541387dc2818fc361ea3ab31'"
|
||||||
<a class="table-jump" v-btn-permission="'c158e787202d1e67f75d5a2f9da889df'" style="color: #f56c6c;margin-left: 10px" @click="handleCommand([scope.row, '删除'])">删除</a>
|
class="table-jump"
|
||||||
|
style="color: #2d8cf0"
|
||||||
|
@click="handleCommand([scope.row, '收藏'])"
|
||||||
|
>收藏</a>
|
||||||
|
<a
|
||||||
|
v-else
|
||||||
|
v-btn-permission="'dca69b895a88c2e3a3bf16d44e34fc04'"
|
||||||
|
class="table-jump"
|
||||||
|
style="color: #2d8cf0"
|
||||||
|
@click="handleCommand([scope.row, '取消收藏'])"
|
||||||
|
>取消收藏</a>
|
||||||
|
<a v-btn-permission="'b98579c3d0514ba75c4d1b21c9d5aa17'" class="table-jump" style="color: #2d8cf0;margin-left: 10px" @click="handleCommand([scope.row, '编辑'])">编辑</a>
|
||||||
|
<a v-btn-permission="'c158e787202d1e67f75d5a2f9da889df'" class="table-jump" style="color: #f56c6c;margin-left: 10px" @click="handleCommand([scope.row, '删除'])">删除</a>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<pagination :page="lawsStandInfoSearch.page" :total="total"
|
<pagination
|
||||||
@pageChange="pageChange" @pageSizeChange="pageSizeChange"></pagination>
|
:page="lawsStandInfoSearch.page"
|
||||||
|
:total="total"
|
||||||
|
@pageChange="pageChange"
|
||||||
|
@pageSizeChange="pageSizeChange"
|
||||||
|
/>
|
||||||
<loading :loading="loading">数据获取中</loading>
|
<loading :loading="loading">数据获取中</loading>
|
||||||
<editDrawer
|
<editDrawer
|
||||||
ref="editDrawerRef"
|
ref="editDrawerRef"
|
||||||
:formFieldListData="formFieldListData"
|
:formFieldListData="formFieldListData"
|
||||||
:selectSarMenu="selectSarMenu"
|
:selectSarMenu="selectSarMenu"
|
||||||
:getBussionStandTable="getBussionStandTable">
|
:getBussionStandTable="getBussionStandTable"
|
||||||
</editDrawer>
|
/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import editDrawer from "./editDrawer";
|
import editDrawer from './editDrawer';
|
||||||
import store from "@/store";
|
import store from '@/store';
|
||||||
export default {
|
export default {
|
||||||
name: "mainTable",
|
name: 'MainTable',
|
||||||
data () {
|
|
||||||
return {
|
|
||||||
standinfoList: [],
|
|
||||||
tableHeight: null,
|
|
||||||
tableFlag: '',
|
|
||||||
total: 0,
|
|
||||||
loading: false,
|
|
||||||
selectedList: [],
|
|
||||||
formFieldListData: [],
|
|
||||||
dict: {}
|
|
||||||
}
|
|
||||||
},
|
|
||||||
components: {
|
components: {
|
||||||
editDrawer
|
editDrawer
|
||||||
},
|
},
|
||||||
@@ -184,19 +189,31 @@ export default {
|
|||||||
required: true
|
required: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
standinfoList: [],
|
||||||
|
tableHeight: null,
|
||||||
|
tableFlag: '',
|
||||||
|
total: 0,
|
||||||
|
loading: false,
|
||||||
|
selectedList: [],
|
||||||
|
formFieldListData: [],
|
||||||
|
dict: {}
|
||||||
|
}
|
||||||
|
},
|
||||||
watch: {
|
watch: {
|
||||||
selectedList: {
|
selectedList: {
|
||||||
handler: function(newValue, oldValue) {
|
handler: function (newValue, oldValue) {
|
||||||
this.$emit('selectedList', newValue)
|
this.$emit('selectedList', newValue)
|
||||||
},
|
},
|
||||||
deep: true
|
deep: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created () {
|
||||||
this.getBussionStandTable()
|
this.getBussionStandTable()
|
||||||
this.getDicTypeListCode()
|
this.getDicTypeListCode()
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted () {
|
||||||
// 加载动态表单数据
|
// 加载动态表单数据
|
||||||
this.getAddFormFieldList()
|
this.getAddFormFieldList()
|
||||||
this.tableHeight = $('.content').height() - 44 - 20
|
this.tableHeight = $('.content').height() - 44 - 20
|
||||||
@@ -204,7 +221,7 @@ export default {
|
|||||||
this.tableHeight = $('.content').height() - 44 - 20
|
this.tableHeight = $('.content').height() - 44 - 20
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
destroyed() {
|
destroyed () {
|
||||||
window.onresize = null
|
window.onresize = null
|
||||||
this.tableHeight = ''
|
this.tableHeight = ''
|
||||||
},
|
},
|
||||||
@@ -213,13 +230,13 @@ export default {
|
|||||||
this.$refs.editDrawerRef.addModal()
|
this.$refs.editDrawerRef.addModal()
|
||||||
},
|
},
|
||||||
// 分页查询企业标准---表格
|
// 分页查询企业标准---表格
|
||||||
getBussionStandTable (item, nodeId,type) {
|
getBussionStandTable (item, nodeId, type) {
|
||||||
if (item !== '' && item !== null && item !== undefined) {
|
if (item !== '' && item !== null && item !== undefined) {
|
||||||
item.pageSize = this.$store.getters.userInfo.configContent
|
item.pageSize = this.$store.getters.userInfo.configContent
|
||||||
}
|
}
|
||||||
this.lawsStandInfoSearch.pageSize = this.$store.getters.userInfo.configContent
|
this.lawsStandInfoSearch.pageSize = this.$store.getters.userInfo.configContent
|
||||||
const data = item || this.lawsStandInfoSearch
|
const data = item || this.lawsStandInfoSearch
|
||||||
const formData = {...data}
|
const formData = { ...data }
|
||||||
if (nodeId !== undefined) {
|
if (nodeId !== undefined) {
|
||||||
formData.menuId = nodeId
|
formData.menuId = nodeId
|
||||||
}
|
}
|
||||||
@@ -240,16 +257,16 @@ export default {
|
|||||||
formData.collectMenuId = undefined
|
formData.collectMenuId = undefined
|
||||||
}
|
}
|
||||||
formData.userId = this.$store.getters.userInfo.userId
|
formData.userId = this.$store.getters.userInfo.userId
|
||||||
if(type === 'sel'){
|
if(type === 'sel') {
|
||||||
const advanceSearchVOList = [];
|
const advanceSearchVOList = [];
|
||||||
if(this.formFieldListData !== undefined && this.formFieldListData !== null){
|
if(this.formFieldListData !== undefined && this.formFieldListData !== null) {
|
||||||
const formFieldList = this.formFieldListData
|
const formFieldList = this.formFieldListData
|
||||||
formFieldList.forEach((item) => {
|
formFieldList.forEach((item) => {
|
||||||
const value = this.lawsStandInfoSearch[item.attrField]
|
const value = this.lawsStandInfoSearch[item.attrField]
|
||||||
// 时间格式处理
|
// 时间格式处理
|
||||||
if (value !== undefined && value !== null && value !== '') {
|
if (value !== undefined && value !== null && value !== '') {
|
||||||
advanceSearchVOList.push({
|
advanceSearchVOList.push({
|
||||||
connect: advanceSearchVOList.length > 0 ? "and" : "",
|
connect: advanceSearchVOList.length > 0 ? 'and' : '',
|
||||||
field: item.attrField || '',
|
field: item.attrField || '',
|
||||||
type: 'like',
|
type: 'like',
|
||||||
value: value
|
value: value
|
||||||
@@ -258,7 +275,7 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
formData.advanceSearchVOStr = JSON.stringify(advanceSearchVOList);
|
formData.advanceSearchVOStr = JSON.stringify(advanceSearchVOList);
|
||||||
if(this.commentCycleDate && this.commentCycleDate.length === 2){
|
if(this.commentCycleDate && this.commentCycleDate.length === 2) {
|
||||||
formData.commentCycleStart = this.commentCycleDate[0]
|
formData.commentCycleStart = this.commentCycleDate[0]
|
||||||
formData.commentCycleEnd = this.commentCycleDate[1]
|
formData.commentCycleEnd = this.commentCycleDate[1]
|
||||||
}
|
}
|
||||||
@@ -301,7 +318,7 @@ export default {
|
|||||||
return 'drag-row' + ' ' + 'id=' + row.row.id
|
return 'drag-row' + ' ' + 'id=' + row.row.id
|
||||||
},
|
},
|
||||||
// 表格排序
|
// 表格排序
|
||||||
sortChange(sortObj) {
|
sortChange (sortObj) {
|
||||||
this.nowOrderBy = sortObj.column.property
|
this.nowOrderBy = sortObj.column.property
|
||||||
// this.nowOrder = sortObj.order
|
// this.nowOrder = sortObj.order
|
||||||
switch (sortObj.order) {
|
switch (sortObj.order) {
|
||||||
@@ -352,7 +369,7 @@ export default {
|
|||||||
// break
|
// break
|
||||||
// }
|
// }
|
||||||
// }
|
// }
|
||||||
//搜索后排序,应该以被搜索后的数据排序
|
// 搜索后排序,应该以被搜索后的数据排序
|
||||||
this.getBussionStandTable(this.lawsStandInfoSearch)
|
this.getBussionStandTable(this.lawsStandInfoSearch)
|
||||||
},
|
},
|
||||||
// 选择项勾选改变
|
// 选择项勾选改变
|
||||||
@@ -364,7 +381,7 @@ export default {
|
|||||||
},
|
},
|
||||||
// 点击查看
|
// 点击查看
|
||||||
handlePreview (item) {
|
handlePreview (item) {
|
||||||
let routeUrl = this.$router.resolve({
|
const routeUrl = this.$router.resolve({
|
||||||
name: 'OtherLawsStandDetails',
|
name: 'OtherLawsStandDetails',
|
||||||
params: {
|
params: {
|
||||||
id: item.id,
|
id: item.id,
|
||||||
@@ -375,13 +392,13 @@ export default {
|
|||||||
},
|
},
|
||||||
isPermission (value) {
|
isPermission (value) {
|
||||||
let hasCount = 0
|
let hasCount = 0
|
||||||
let set =new Set( value.split(","))
|
const set = new Set( value.split(','))
|
||||||
let menuList = store.getters.getMenuList
|
const menuList = store.getters.getMenuList
|
||||||
if (menuList === '') {
|
if (menuList === '') {
|
||||||
return hasCount
|
return hasCount
|
||||||
} else {
|
} else {
|
||||||
menuList.map((menu) => {
|
menuList.map((menu) => {
|
||||||
if ( set.has(menu.id)|| value === undefined || value === '') {
|
if ( set.has(menu.id) || value === undefined || value === '') {
|
||||||
hasCount++
|
hasCount++
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
@@ -398,20 +415,20 @@ export default {
|
|||||||
this.lawsStandInfoSearch.pageSize = pageSize
|
this.lawsStandInfoSearch.pageSize = pageSize
|
||||||
this.getBussionStandTable()
|
this.getBussionStandTable()
|
||||||
},
|
},
|
||||||
arr(data){
|
arr (data) {
|
||||||
if(data){
|
if(data) {
|
||||||
if(data.indexOf(",") !== -1){
|
if(data.indexOf(',') !== -1) {
|
||||||
let arr = data.split(",");
|
const arr = data.split(',');
|
||||||
let list = []
|
const list = []
|
||||||
arr.forEach(item =>{
|
arr.forEach(item => {
|
||||||
list.push(item.slice(0, 10));
|
list.push(item.slice(0, 10));
|
||||||
})
|
})
|
||||||
return list.join(",");
|
return list.join(',');
|
||||||
}else {
|
}else {
|
||||||
return data.slice(0, 10)
|
return data.slice(0, 10)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
return ""
|
return ''
|
||||||
},
|
},
|
||||||
// 更多
|
// 更多
|
||||||
handleCommand (command) {
|
handleCommand (command) {
|
||||||
@@ -480,7 +497,7 @@ export default {
|
|||||||
confirmButtonClass: 'common-button-primary',
|
confirmButtonClass: 'common-button-primary',
|
||||||
roundButton: true
|
roundButton: true
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', {ids: itemid}, {
|
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', { ids: itemid }, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.getBussionStandTable()
|
this.getBussionStandTable()
|
||||||
@@ -507,7 +524,7 @@ export default {
|
|||||||
confirmButtonClass: 'common-button-primary',
|
confirmButtonClass: 'common-button-primary',
|
||||||
roundButton: true
|
roundButton: true
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', {ids: this.selectedList.join(',')}, {
|
this.$http.post('lawss/sarLawsInfo/deleteSarLawsStandInfo', { ids: this.selectedList.join(',') }, {
|
||||||
_this: this
|
_this: this
|
||||||
}, res => {
|
}, res => {
|
||||||
this.getBussionStandTable()
|
this.getBussionStandTable()
|
||||||
@@ -520,7 +537,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
getAddFormFieldList (isEdit) {
|
getAddFormFieldList (isEdit) {
|
||||||
this.$http.get('lawss/sarStandAttrDetails/list', {}, {_this: this},
|
this.$http.get('lawss/sarStandAttrDetails/list', {}, { _this: this },
|
||||||
res => {
|
res => {
|
||||||
if (res.ok) {
|
if (res.ok) {
|
||||||
const { data = {} } = res
|
const { data = {} } = res
|
||||||
@@ -598,8 +615,9 @@ export default {
|
|||||||
}
|
}
|
||||||
}, e => {})
|
}, e => {})
|
||||||
},
|
},
|
||||||
convert(value, dict) {
|
convert (value, dict) {
|
||||||
if (this.dict[dict]) {
|
if (this.dict[dict]&& value) {
|
||||||
|
console.log(value);
|
||||||
return value.split(',').map(v => this.dict[dict].find(item => item.value === v)?.label || v).join(',')
|
return value.split(',').map(v => this.dict[dict].find(item => item.value === v)?.label || v).join(',')
|
||||||
// return this.dict[dict].find(item => item.value === value)?.label || value
|
// return this.dict[dict].find(item => item.value === value)?.label || value
|
||||||
} else {
|
} else {
|
||||||
@@ -607,9 +625,9 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
formatDate (dateStr) {
|
formatDate (dateStr) {
|
||||||
if (dateStr && dateStr!== '') {
|
if (dateStr && dateStr !== '') {
|
||||||
let dateArr = dateStr.split(',')
|
const dateArr = dateStr.split(',')
|
||||||
return dateArr.map(date => date.slice(0,10)).join(',')
|
return dateArr.map(date => date.slice(0, 10)).join(',')
|
||||||
}
|
}
|
||||||
return dateStr
|
return dateStr
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,7 +1,7 @@
|
|||||||
<template>
|
<template>
|
||||||
<table-tools-bar
|
<table-tools-bar
|
||||||
@search="getBussionStandTableBtn(lawsStandInfoSearch)"
|
@search="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||||
@reset="clearAllSearch('lawsStandInfoSearch')"
|
@reset="clearAllSearch('lawsStandInfoSearch')"
|
||||||
>
|
>
|
||||||
<div slot="left">
|
<div slot="left">
|
||||||
<div class="search-area">
|
<div class="search-area">
|
||||||
@@ -11,53 +11,87 @@
|
|||||||
<!-- <el-input v-model="lawsStandInfoSearch.lawsNumber" clearable placeholder="根据编号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>-->
|
<!-- <el-input v-model="lawsStandInfoSearch.lawsNumber" clearable placeholder="根据编号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>-->
|
||||||
<!--</el-formItem>-->
|
<!--</el-formItem>-->
|
||||||
<el-formItem label="政策名称" prop="numberName" class="search-item">
|
<el-formItem label="政策名称" prop="numberName" class="search-item">
|
||||||
<el-input v-model="lawsStandInfoSearch.lawsName" clearable placeholder="根据政策名称查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>
|
<el-input
|
||||||
|
v-model="lawsStandInfoSearch.lawsName"
|
||||||
|
clearable
|
||||||
|
placeholder="根据政策名称查找"
|
||||||
|
:maxlength="100"
|
||||||
|
@keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-formItem label="政策文号" prop="lawsNo" class="search-item">
|
<el-formItem label="政策文号" prop="lawsNo" class="search-item">
|
||||||
<el-input v-model="lawsStandInfoSearch.lawsNo" clearable placeholder="根据政策文号查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>
|
<el-input
|
||||||
|
v-model="lawsStandInfoSearch.lawsNo"
|
||||||
|
clearable
|
||||||
|
placeholder="根据政策文号查找"
|
||||||
|
:maxlength="100"
|
||||||
|
@keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-formItem label="发文单位" prop="issueCompany" class="search-item">
|
<el-formItem label="发文单位" prop="issueCompany" class="search-item">
|
||||||
<el-input v-model="lawsStandInfoSearch.issueCompany" clearable placeholder="根据发文单位查找" :maxlength="100" @keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"/>
|
<el-input
|
||||||
|
v-model="lawsStandInfoSearch.issueCompany"
|
||||||
|
clearable
|
||||||
|
placeholder="根据发文单位查找"
|
||||||
|
:maxlength="100"
|
||||||
|
@keyup.enter.native="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||||
|
/>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-formItem label="适用车型" prop="lawsSycx" class="search-item">
|
<el-formItem label="适用车型" prop="lawsSycx" class="search-item">
|
||||||
<el-select :value="lawsSycx" multiple filterable clearable collapse-tags @change="lawsSycxChange">
|
<el-select
|
||||||
|
:value="lawsSycx"
|
||||||
|
multiple
|
||||||
|
filterable
|
||||||
|
clearable
|
||||||
|
collapse-tags
|
||||||
|
@change="lawsSycxChange"
|
||||||
|
>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.lawsSycxOptions"
|
v-for="item in dict.lawsSycxOptions"
|
||||||
placeholder="请选择适用车型"
|
:key="item.value"
|
||||||
:key="item.value"
|
placeholder="请选择适用车型"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
></el-option>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-formItem label="文本状态" prop="lawsTextState" class="search-item">
|
<el-formItem label="政策状态" prop="lawsTextState" class="search-item">
|
||||||
<el-select v-model="lawsStandInfoSearch.lawsTextState" filterable clearable>
|
<el-select v-model="lawsStandInfoSearch.lawsTextState" filterable clearable>
|
||||||
<el-option
|
<el-option
|
||||||
v-for="item in dict.lawsTextStateOptions"
|
v-for="item in dict.lawsTextStateOptions"
|
||||||
placeholder="请选择文本状态"
|
:key="item.value"
|
||||||
:key="item.value"
|
placeholder="请选择政策状态"
|
||||||
:value="item.value"
|
:value="item.value"
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
></el-option>
|
/>
|
||||||
</el-select>
|
</el-select>
|
||||||
</el-formItem>
|
</el-formItem>
|
||||||
<el-form-item class="search-item btn-box">
|
<el-form-item class="search-item btn-box">
|
||||||
<el-button
|
<el-button
|
||||||
type="primary"
|
v-btn-permission="'776298201c756873ddc8000eb716e347'"
|
||||||
size="mini"
|
type="primary"
|
||||||
class="common-button-primary"
|
size="mini"
|
||||||
v-btn-permission="'776298201c756873ddc8000eb716e347'"
|
class="common-button-primary"
|
||||||
@click="getBussionStandTableBtn(lawsStandInfoSearch)">
|
@click="getBussionStandTableBtn(lawsStandInfoSearch)"
|
||||||
|
>
|
||||||
查询
|
查询
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
size="mini"
|
v-btn-permission="'f0e6ba2b9736b77f9a271addf692b9c0'"
|
||||||
class="common-button-default"
|
size="mini"
|
||||||
v-btn-permission="'f0e6ba2b9736b77f9a271addf692b9c0'"
|
class="common-button-default"
|
||||||
@click="clearAllSearch('lawsStandInfoSearch')">清空
|
@click="clearAllSearch('lawsStandInfoSearch')"
|
||||||
|
>
|
||||||
|
清空
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button size="mini" type="primary" class="common-button-primary"
|
<el-button
|
||||||
v-btn-permission="'2e08f0dcb187e214127f971419f91174'" @click="selectMoreBtn">高级检索
|
v-btn-permission="'2e08f0dcb187e214127f971419f91174'"
|
||||||
|
size="mini"
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
@click="selectMoreBtn"
|
||||||
|
>
|
||||||
|
高级检索
|
||||||
</el-button>
|
</el-button>
|
||||||
</el-form-item>
|
</el-form-item>
|
||||||
</el-form>
|
</el-form>
|
||||||
@@ -72,11 +106,7 @@
|
|||||||
|
|
||||||
<script>
|
<script>
|
||||||
export default {
|
export default {
|
||||||
name: "policySearch",
|
name: 'PolicySearch',
|
||||||
data() {
|
|
||||||
return {
|
|
||||||
}
|
|
||||||
},
|
|
||||||
props: {
|
props: {
|
||||||
lawsStandInfoSearch: {
|
lawsStandInfoSearch: {
|
||||||
type: Object,
|
type: Object,
|
||||||
@@ -87,12 +117,16 @@ export default {
|
|||||||
required: true
|
required: true
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
}
|
||||||
|
},
|
||||||
computed: {
|
computed: {
|
||||||
lawsSycx () {
|
lawsSycx () {
|
||||||
return this.lawsStandInfoSearch.lawsSycx ? this.lawsStandInfoSearch.lawsSycx.split(',') : []
|
return this.lawsStandInfoSearch.lawsSycx ? this.lawsStandInfoSearch.lawsSycx.split(',') : []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
methods:{
|
methods: {
|
||||||
// 搜索
|
// 搜索
|
||||||
getBussionStandTableBtn (item, advancedSearch, type) {
|
getBussionStandTableBtn (item, advancedSearch, type) {
|
||||||
this.$emit('getBussionStandTableBtn')
|
this.$emit('getBussionStandTableBtn')
|
||||||
|
|||||||
@@ -100,7 +100,11 @@ export default {
|
|||||||
configStandDrawer
|
configStandDrawer
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
const lawsStandInfoSearch = {}
|
const lawsStandInfoSearch = {
|
||||||
|
page:1,
|
||||||
|
lawsTextState:'',
|
||||||
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
|
}
|
||||||
return {
|
return {
|
||||||
lawsStandInfoSearch, // 分页查询过程中用到的对象
|
lawsStandInfoSearch, // 分页查询过程中用到的对象
|
||||||
dict: {},
|
dict: {},
|
||||||
@@ -126,7 +130,9 @@ export default {
|
|||||||
selectMoreBtn () {
|
selectMoreBtn () {
|
||||||
this.$set(this, 'lawsStandInfoSearch', {
|
this.$set(this, 'lawsStandInfoSearch', {
|
||||||
commentCycleStart: '',
|
commentCycleStart: '',
|
||||||
commentCycleEnd: ''
|
commentCycleEnd: '',
|
||||||
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
|
page:1
|
||||||
})
|
})
|
||||||
this.$refs.advancedSearchRef.open()
|
this.$refs.advancedSearchRef.open()
|
||||||
},
|
},
|
||||||
@@ -144,18 +150,22 @@ export default {
|
|||||||
treeClickGetBussionStandTable (menuId) {
|
treeClickGetBussionStandTable (menuId) {
|
||||||
this.$set(this.lawsStandInfoSearch, 'menuId', menuId)
|
this.$set(this.lawsStandInfoSearch, 'menuId', menuId)
|
||||||
this.$set(this.lawsStandInfoSearch, 'page', 1)
|
this.$set(this.lawsStandInfoSearch, 'page', 1)
|
||||||
|
this.$set(this.lawsStandInfoSearch, 'pageSize', this.$store.getters.userInfo.configContent)
|
||||||
|
|
||||||
this.$refs.mainTableRef.getBussionStandTable(this.lawsStandInfoSearch, menuId)
|
this.$refs.mainTableRef.getBussionStandTable(this.lawsStandInfoSearch, menuId)
|
||||||
},
|
},
|
||||||
|
|
||||||
// 普通搜索
|
// 普通搜索
|
||||||
getBussionStandTableBtn () {
|
getBussionStandTableBtn () {
|
||||||
this.$set(this.lawsStandInfoSearch, 'page', 1)
|
this.$set(this.lawsStandInfoSearch, 'page', 1)
|
||||||
|
this.$set(this.lawsStandInfoSearch, 'pageSize', this.$store.getters.userInfo.configContent)
|
||||||
this.$refs.mainTableRef.getBussionStandTable()
|
this.$refs.mainTableRef.getBussionStandTable()
|
||||||
},
|
},
|
||||||
|
|
||||||
// 高级搜索
|
// 高级搜索
|
||||||
advancedSearch () {
|
advancedSearch () {
|
||||||
this.$set(this.lawsStandInfoSearch, 'page', 1)
|
this.$set(this.lawsStandInfoSearch, 'page', 1)
|
||||||
|
this.$set(this.lawsStandInfoSearch, 'pageSize', this.$store.getters.userInfo.configContent)
|
||||||
this.lawsStandInfoSearch = { ...this.lawsStandInfoSearch }
|
this.lawsStandInfoSearch = { ...this.lawsStandInfoSearch }
|
||||||
this.$refs.mainTableRef.getBussionStandTable(this.lawsStandInfoSearch, '', 'sel')
|
this.$refs.mainTableRef.getBussionStandTable(this.lawsStandInfoSearch, '', 'sel')
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -1,68 +1,73 @@
|
|||||||
<template>
|
<template>
|
||||||
<div style="width: 100%" class="wrapper">
|
<div style="width: 100%" class="wrapper">
|
||||||
<el-input
|
<el-input
|
||||||
placeholder="输入树状图体系"
|
v-model="filterText"
|
||||||
v-model="filterText">
|
placeholder="输入树状图体系"
|
||||||
</el-input>
|
/>
|
||||||
<div class="tree">
|
<div class="tree">
|
||||||
<el-card style="height: 100%;padding-right: 120px;overflow-y:auto">
|
<el-card style="height: 100%;padding-right: 120px;overflow-y:auto">
|
||||||
<el-tree
|
<el-tree
|
||||||
ref="tree"
|
ref="tree"
|
||||||
node-key="id"
|
node-key="id"
|
||||||
class="tree-line"
|
class="tree-line"
|
||||||
icon-class="icon-tree"
|
icon-class="icon-tree"
|
||||||
:indent="0"
|
:indent="0"
|
||||||
:props="props"
|
:props="props"
|
||||||
:data="treeList"
|
:data="treeList"
|
||||||
:default-expanded-keys="['64df1d5522bb49c09af6']"
|
:default-expanded-keys="['64df1d5522bb49c09af6']"
|
||||||
highlight-current
|
highlight-current
|
||||||
@node-click="treeClick"
|
:filter-node-method="filterNode"
|
||||||
:filter-node-method="filterNode">
|
:expand-on-click-node="false"
|
||||||
<span class="custom-tree-node" slot-scope="{ node, data }" @mouseenter="mouseenter(data)" @mouseleave="mouseleave(data)">
|
@node-click="treeClick"
|
||||||
<span :class="data.children.length !== 0 ? 'is-show' : 'is-leaf-none'"></span>
|
>
|
||||||
<span style="font-size:12px"> {{ node.label }} </span>
|
<span slot-scope="{ node, data }" class="custom-tree-node" @mouseenter="mouseenter(data)" @mouseleave="mouseleave(data)">
|
||||||
<span>
|
<span :class="data.children.length !== 0 ? 'is-show' : 'is-leaf-none'" />
|
||||||
<el-button
|
<span style="font-size:12px"> {{ node.label }} </span>
|
||||||
type="text"
|
<span>
|
||||||
size="mini"
|
<el-button
|
||||||
v-show="data.show"
|
v-show="data.show"
|
||||||
v-btn-permission="'a3109949cc30dae1ef523c037b2651b8'"
|
v-btn-permission="'a3109949cc30dae1ef523c037b2651b8'"
|
||||||
@click="() => append(data)">
|
type="text"
|
||||||
新增
|
size="mini"
|
||||||
</el-button>
|
@click="() => append(data)"
|
||||||
<el-button
|
>
|
||||||
type="text"
|
新增
|
||||||
size="mini"
|
</el-button>
|
||||||
v-show="data.show"
|
<el-button
|
||||||
v-btn-permission="'61a33c05ed689934f7d4a0de4220c9ce'"
|
v-show="data.show"
|
||||||
@click="() => update(data)">
|
v-btn-permission="'61a33c05ed689934f7d4a0de4220c9ce'"
|
||||||
编辑
|
type="text"
|
||||||
</el-button>
|
size="mini"
|
||||||
<el-button
|
@click="() => update(data)"
|
||||||
type="text"
|
>
|
||||||
size="mini"
|
编辑
|
||||||
v-show="data.showDel"
|
</el-button>
|
||||||
v-btn-permission="'b123231eb8c42b2a61e3dc5f59654f79'"
|
<el-button
|
||||||
@click="() => remove(node, data)">
|
v-show="data.showDel"
|
||||||
删除
|
v-btn-permission="'b123231eb8c42b2a61e3dc5f59654f79'"
|
||||||
</el-button>
|
type="text"
|
||||||
</span>
|
size="mini"
|
||||||
|
@click="() => remove(node, data)"
|
||||||
|
>
|
||||||
|
删除
|
||||||
|
</el-button>
|
||||||
</span>
|
</span>
|
||||||
|
</span>
|
||||||
</el-tree>
|
</el-tree>
|
||||||
</el-card>
|
</el-card>
|
||||||
</div>
|
</div>
|
||||||
<addStructure ref="addStructureRef" @selectMenuList="selectMenuList"></addStructure>
|
<addStructure ref="addStructureRef" @selectMenuList="selectMenuList" />
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import addStructure from "./addStructure";
|
import addStructure from './addStructure';
|
||||||
export default {
|
export default {
|
||||||
name: "policyTree",
|
name: 'PolicyTree',
|
||||||
components: {
|
components: {
|
||||||
addStructure
|
addStructure
|
||||||
},
|
},
|
||||||
data(){
|
data () {
|
||||||
return {
|
return {
|
||||||
treeList: [],
|
treeList: [],
|
||||||
filterText: '', // 企业标准库过滤
|
filterText: '', // 企业标准库过滤
|
||||||
@@ -72,14 +77,14 @@ export default {
|
|||||||
},
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
|
||||||
this.selectMenuList()
|
|
||||||
},
|
|
||||||
watch: {
|
watch: {
|
||||||
filterText(val) {
|
filterText (val) {
|
||||||
this.$refs.tree.filter(val);
|
this.$refs.tree.filter(val);
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
created () {
|
||||||
|
this.selectMenuList()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
selectMenuList () {
|
selectMenuList () {
|
||||||
this.$http.get('sarResource/ts-resource/getListStand', {
|
this.$http.get('sarResource/ts-resource/getListStand', {
|
||||||
@@ -92,20 +97,20 @@ export default {
|
|||||||
})
|
})
|
||||||
this.$emit('treeClick', {})
|
this.$emit('treeClick', {})
|
||||||
},
|
},
|
||||||
filterNode(value, data) {
|
filterNode (value, data) {
|
||||||
if (!value) return true;
|
if (!value) return true;
|
||||||
return data.menuName.indexOf(value) !== -1;
|
return data.menuName.indexOf(value) !== -1;
|
||||||
},
|
},
|
||||||
treeClick (treeNode) {
|
treeClick (treeNode) {
|
||||||
this.$emit('treeClick', treeNode)
|
this.$emit('treeClick', treeNode)
|
||||||
},
|
},
|
||||||
append(data) {
|
append (data) {
|
||||||
this.$refs.addStructureRef.append(data)
|
this.$refs.addStructureRef.append(data)
|
||||||
},
|
},
|
||||||
update(data) {
|
update (data) {
|
||||||
this.$refs.addStructureRef.update(data)
|
this.$refs.addStructureRef.update(data)
|
||||||
},
|
},
|
||||||
remove(node, data) {
|
remove (node, data) {
|
||||||
this.$confirm('是否删除菜单?', '提示', {
|
this.$confirm('是否删除菜单?', '提示', {
|
||||||
confirmButtonText: '确定',
|
confirmButtonText: '确定',
|
||||||
confirmButtonClass: 'common-button-primary',
|
confirmButtonClass: 'common-button-primary',
|
||||||
@@ -113,14 +118,14 @@ export default {
|
|||||||
roundButton: true,
|
roundButton: true,
|
||||||
type: 'warning'
|
type: 'warning'
|
||||||
}).then(() => {
|
}).then(() => {
|
||||||
this.$http.put("sarResource/ts-resource/delResourceById", {
|
this.$http.put('sarResource/ts-resource/delResourceById', {
|
||||||
resourceId: data.id
|
resourceId: data.id
|
||||||
}, res => {
|
}, res => {
|
||||||
}, e => {
|
}, e => {
|
||||||
if(e.ok){
|
if(e.ok) {
|
||||||
this.$message({
|
this.$message({
|
||||||
type: 'success',
|
type: 'success',
|
||||||
message: "删除成功"
|
message: '删除成功'
|
||||||
})
|
})
|
||||||
this.selectMenuList()
|
this.selectMenuList()
|
||||||
}else {
|
}else {
|
||||||
@@ -138,13 +143,13 @@ export default {
|
|||||||
})
|
})
|
||||||
},
|
},
|
||||||
// 树节点鼠标移入移出
|
// 树节点鼠标移入移出
|
||||||
mouseenter(data){
|
mouseenter (data) {
|
||||||
this.$set(data, 'show', true)
|
this.$set(data, 'show', true)
|
||||||
if(data.parentId !== null && data.id !== 'zcwdsc'){
|
if(data.parentId !== null && data.id !== 'zcwdsc') {
|
||||||
this.$set(data, 'showDel', true)
|
this.$set(data, 'showDel', true)
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mouseleave(data){
|
mouseleave (data) {
|
||||||
this.$set(data, 'show', false)
|
this.$set(data, 'show', false)
|
||||||
this.$set(data, 'showDel', false)
|
this.$set(data, 'showDel', false)
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -48,6 +48,10 @@ export default {
|
|||||||
// this.getActiveName()
|
// this.getActiveName()
|
||||||
},
|
},
|
||||||
mounted () {
|
mounted () {
|
||||||
|
if (this.$route.query.keynoteActiveName) {
|
||||||
|
this.keynoteActiveName = this.$route.query.keynoteActiveName
|
||||||
|
this.$router.replace({ query: null })
|
||||||
|
}
|
||||||
var list = [];
|
var list = [];
|
||||||
const menuList = this.$store.getters.getMenuList;
|
const menuList = this.$store.getters.getMenuList;
|
||||||
let menuData = [];
|
let menuData = [];
|
||||||
|
|||||||
+1
-1
@@ -162,7 +162,7 @@ export default {
|
|||||||
},
|
},
|
||||||
filterNode(value, data) {
|
filterNode(value, data) {
|
||||||
if (!value) return true;
|
if (!value) return true;
|
||||||
return data.menuName.indexOf(value) !== -1;
|
return data.name.indexOf(value) !== -1;
|
||||||
},
|
},
|
||||||
treeClick (treeNode) {
|
treeClick (treeNode) {
|
||||||
this.$emit('treeClick', treeNode)
|
this.$emit('treeClick', treeNode)
|
||||||
|
|||||||
@@ -0,0 +1,189 @@
|
|||||||
|
<template>
|
||||||
|
<el-dialog
|
||||||
|
title="导入"
|
||||||
|
:visible.sync="visible"
|
||||||
|
width="500px"
|
||||||
|
class="dialog"
|
||||||
|
append-to-body
|
||||||
|
>
|
||||||
|
<el-form
|
||||||
|
ref="formRef"
|
||||||
|
class="form"
|
||||||
|
:model="form"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="120px"
|
||||||
|
label-position="left"
|
||||||
|
>
|
||||||
|
<el-form-item label="核查清单名称" prop="checkListName">
|
||||||
|
<el-input
|
||||||
|
v-model="form.checkListName"
|
||||||
|
placeholder="请输入核查清单名称"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="导入模板" prop="templateName">
|
||||||
|
<div
|
||||||
|
v-for="(id, index) in form.templateId.split(',')"
|
||||||
|
:key="id"
|
||||||
|
class="fileClass"
|
||||||
|
@click="onPreview(id)"
|
||||||
|
>
|
||||||
|
{{ form.templateName.split(',')[index] }}
|
||||||
|
</div>
|
||||||
|
<el-button size="small" type="primary" @click="addImportModal">上传</el-button>
|
||||||
|
<el-button size="small" type="primary" @click="downTemplate">空白模板下载</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
<div slot="footer">
|
||||||
|
<el-button size="small" type="primary" :loading="loading" @click="submit">确定</el-button>
|
||||||
|
<el-button size="small" type="primary" :loading="loading" @click="visible = false">关闭</el-button>
|
||||||
|
</div>
|
||||||
|
<Import
|
||||||
|
ref="importRef"
|
||||||
|
accept=".xls, .XLS, .xlsx, .XLSX"
|
||||||
|
:visible.sync="importModalShowFlag"
|
||||||
|
:action="url.uploadNew"
|
||||||
|
:limit="1"
|
||||||
|
:ids.sync="form.templateId"
|
||||||
|
:names.sync="form.templateName"
|
||||||
|
@onSuccess="onSuccess"
|
||||||
|
/>
|
||||||
|
<!-- 导入失败-->
|
||||||
|
<el-dialog
|
||||||
|
:visible.sync="importFailed.visible"
|
||||||
|
:close-on-click-modal="false"
|
||||||
|
width="400px"
|
||||||
|
append-to-body
|
||||||
|
>
|
||||||
|
<p slot="title" style="color:#f60">
|
||||||
|
<span>导入失败</span>
|
||||||
|
</p>
|
||||||
|
<div style="max-height: 300px;overflow: auto;padding: 10px 0;">
|
||||||
|
<p v-html="importFailed.importFailedText" />
|
||||||
|
</div>
|
||||||
|
<div slot="footer" class="demo-drawer-footer">
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
round
|
||||||
|
class="common-button-default"
|
||||||
|
icon="el-icon-check"
|
||||||
|
@click="importFailed.visible = false"
|
||||||
|
>
|
||||||
|
确认
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
|
</el-dialog>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import Import from '@/components/hzwlComponents/Import'
|
||||||
|
export default {
|
||||||
|
name: 'ImportModel',
|
||||||
|
components: {
|
||||||
|
Import
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
const form = {
|
||||||
|
checkListName: '',
|
||||||
|
templateId: '',
|
||||||
|
templateName: '',
|
||||||
|
}
|
||||||
|
const rules = {
|
||||||
|
checkListName: [
|
||||||
|
{ required: true, message: '核查清单名称不能为空', trigger: 'change' }
|
||||||
|
],
|
||||||
|
templateName: [
|
||||||
|
{ required: true, message: '导入模板不能为空', trigger: 'change' }
|
||||||
|
],
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
visible: false,
|
||||||
|
loading: false,
|
||||||
|
form,
|
||||||
|
rules,
|
||||||
|
url: {
|
||||||
|
uploadNew: 'api/att/attFile/uploadNew',
|
||||||
|
importExcelUrl: 'standardTrackingCheckList/importTrackingChecklist',
|
||||||
|
exportTemplateFile: 'api/standardTrackingCheckList/exportTemplateFile',
|
||||||
|
},
|
||||||
|
importModalShowFlag: false,
|
||||||
|
importFailed: {
|
||||||
|
visible: false,
|
||||||
|
importFailedText: '',
|
||||||
|
},
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
openModel () {
|
||||||
|
Object.keys(this.form).forEach(key => this.form[key] = '')
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.formRef.clearValidate()
|
||||||
|
this.$refs.importRef.initFileList()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.visible = true
|
||||||
|
},
|
||||||
|
submit () {
|
||||||
|
this.$refs.formRef.validate(valid => {
|
||||||
|
if (valid) {
|
||||||
|
const config = { _this: this, loading: 'loading' }
|
||||||
|
this.$http._post(this.url.importExcelUrl, this.form, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.$message.success('导入成功')
|
||||||
|
this.visible = false
|
||||||
|
this.$emit('ok')
|
||||||
|
} else {
|
||||||
|
this.importFailed.importFailedText = res.message
|
||||||
|
this.importFailed.visible = true
|
||||||
|
// this.$message.warning(res.message)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
addImportModal () {
|
||||||
|
this.importModalShowFlag = true
|
||||||
|
},
|
||||||
|
onPreview (id) {
|
||||||
|
this.$preview(id)
|
||||||
|
},
|
||||||
|
onSuccess () {
|
||||||
|
this.$refs.formRef.validateField('templateName')
|
||||||
|
},
|
||||||
|
downTemplate () {
|
||||||
|
window.open(`${this.url.exportTemplateFile}?fileName=标准跟踪清单导入模板`)
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.dialog {
|
||||||
|
/deep/ .el-dialog {
|
||||||
|
border-radius: 10px;
|
||||||
|
}
|
||||||
|
/deep/ .el-dialog__header {
|
||||||
|
border-bottom: 1px solid #E9E9E9;
|
||||||
|
}
|
||||||
|
/deep/ .el-form-item{
|
||||||
|
margin-bottom: 10px;
|
||||||
|
color: #666;
|
||||||
|
border-bottom: 1px dashed #E9E9E9;
|
||||||
|
.el-form-item__label {
|
||||||
|
line-height: 50px;
|
||||||
|
}
|
||||||
|
.el-form-item__content{
|
||||||
|
line-height: 50px;
|
||||||
|
}
|
||||||
|
.el-input__inner {
|
||||||
|
border: none !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.fileClass {
|
||||||
|
color: rgb(64, 158, 255);
|
||||||
|
cursor: pointer;
|
||||||
|
line-height: 30px;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,256 @@
|
|||||||
|
<template>
|
||||||
|
<div style="height: calc(100% - 155px)">
|
||||||
|
<loading :loading="loading">数据获取中...</loading>
|
||||||
|
<el-button
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
style="margin-bottom: 10px;"
|
||||||
|
:disabled="disabled"
|
||||||
|
@click="handleSearchStandard"
|
||||||
|
>
|
||||||
|
手动查找
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
type="danger"
|
||||||
|
size="mini"
|
||||||
|
style="margin-bottom: 10px;"
|
||||||
|
:disabled="disabled"
|
||||||
|
@click="handleDeleteStandard"
|
||||||
|
>
|
||||||
|
批量删除
|
||||||
|
</el-button>
|
||||||
|
<el-table
|
||||||
|
ref="selection"
|
||||||
|
class="table"
|
||||||
|
:data="value"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width:100%;height: calc(100% - 40px)"
|
||||||
|
height="string"
|
||||||
|
border
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
||||||
|
:cell-style="{padding: 0}"
|
||||||
|
@selection-change="selectionChange"
|
||||||
|
>
|
||||||
|
<el-table-column
|
||||||
|
type="selection"
|
||||||
|
width="55"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
type="index"
|
||||||
|
width="55"
|
||||||
|
label="序号"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="{scope, column, $index}">
|
||||||
|
{{ ($index + 1) }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
label="标准编号/政策文号"
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="lawCode"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
show-overflow-tooltip
|
||||||
|
prop="lawName"
|
||||||
|
label="标准名称/政策名称"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="productType"
|
||||||
|
align="center"
|
||||||
|
show-overflow-tooltip
|
||||||
|
label="产品类型"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row, column, $index}">
|
||||||
|
<span v-if="disabled">{{ trackingChecklistProductTypeMap[row.productType] || '-' }}</span>
|
||||||
|
<el-select
|
||||||
|
v-else
|
||||||
|
v-model="row.productType"
|
||||||
|
placeholder="请选择产品类型"
|
||||||
|
size="mini"
|
||||||
|
clearable
|
||||||
|
:disabled="disabled"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in dict.trackingChecklistProductType"
|
||||||
|
:key="item.value"
|
||||||
|
:value="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="implTime"
|
||||||
|
align="center"
|
||||||
|
show-overflow-tooltip
|
||||||
|
label="实施日期"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row, column, $index}">
|
||||||
|
<span v-if="disabled">{{ row.implTime || '-' }}</span>
|
||||||
|
<el-date-picker
|
||||||
|
v-else
|
||||||
|
v-model="row.implTime"
|
||||||
|
size="mini"
|
||||||
|
type="date"
|
||||||
|
value-format="yyyy-MM-dd"
|
||||||
|
placeholder="选择日期"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="implRequire"
|
||||||
|
align="center"
|
||||||
|
show-overflow-tooltip
|
||||||
|
label="实施要求"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row, column, $index}">
|
||||||
|
<span v-if="disabled">{{ trackingChecklistPutDemandMap[row.implRequire] || '-' }}</span>
|
||||||
|
<el-select
|
||||||
|
v-else
|
||||||
|
v-model="row.implRequire"
|
||||||
|
placeholder="请选择实施要求"
|
||||||
|
clearable
|
||||||
|
size="mini"
|
||||||
|
:disabled="disabled"
|
||||||
|
>
|
||||||
|
<el-option
|
||||||
|
v-for="item in dict.trackingChecklistPutDemand"
|
||||||
|
:key="item.value"
|
||||||
|
:value="item.value"
|
||||||
|
:label="item.label"
|
||||||
|
/>
|
||||||
|
</el-select>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
|
||||||
|
<StandardListDrawer ref="StandardListDrawerRef" @dragIn="dragIn" />
|
||||||
|
</div>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import StandardListDrawer from '@/components/hzwlComponents/StandardListDrawer'
|
||||||
|
export default {
|
||||||
|
name: 'Inventory',
|
||||||
|
components: {
|
||||||
|
StandardListDrawer
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
value: {
|
||||||
|
type: Array,
|
||||||
|
default: () => []
|
||||||
|
},
|
||||||
|
disabled: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
return {
|
||||||
|
selectedList: [],
|
||||||
|
dict: {},
|
||||||
|
loading: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
trackingChecklistProductTypeMap () {
|
||||||
|
return this.dict.trackingChecklistProductType
|
||||||
|
? this.dict.trackingChecklistProductType.reduce((obj, item) => {
|
||||||
|
obj[item.value] = item.label
|
||||||
|
return obj
|
||||||
|
}, {})
|
||||||
|
: []
|
||||||
|
},
|
||||||
|
trackingChecklistPutDemandMap () {
|
||||||
|
return this.dict.trackingChecklistPutDemand
|
||||||
|
? this.dict.trackingChecklistPutDemand.reduce((obj, item) => {
|
||||||
|
obj[item.value] = item.label
|
||||||
|
return obj
|
||||||
|
}, {})
|
||||||
|
: []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
created () {
|
||||||
|
this.getDicTypeListCode()
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
handleSearchStandard () {
|
||||||
|
this.$refs.StandardListDrawerRef.open()
|
||||||
|
},
|
||||||
|
selectionChange (selection) {
|
||||||
|
this.selectedList = selection
|
||||||
|
},
|
||||||
|
dragIn ({ list, type }) {
|
||||||
|
if (list.some(item => this.value.some(i => i.lawId === item.id))) {
|
||||||
|
this.$message.warning('请勿重复添加数据')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
const newList = list.map(item => {
|
||||||
|
let lawCode = ''
|
||||||
|
let lawName = ''
|
||||||
|
switch (type) {
|
||||||
|
case 'INLAND':
|
||||||
|
case 'FOREIGN':
|
||||||
|
case 'BUSINESS_STAND':
|
||||||
|
lawCode = item.standCode
|
||||||
|
lawName = item.standName
|
||||||
|
break
|
||||||
|
case 'FOREIGN_LAWS':
|
||||||
|
lawCode = item.lawsNo
|
||||||
|
lawName = item.lawsName
|
||||||
|
break
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
lawId: item.id,
|
||||||
|
dataSource: type,
|
||||||
|
lawCode,
|
||||||
|
lawName,
|
||||||
|
productType: '',
|
||||||
|
implTime: '',
|
||||||
|
implRequire: ''
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.$emit('input', [ ...this.value, ...newList ])
|
||||||
|
},
|
||||||
|
handleDeleteStandard () {
|
||||||
|
if (this.selectedList.length === 0) {
|
||||||
|
this.$message.warning('请选择要删除的数据')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
this.$confirm('确认删除这些数据?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning',
|
||||||
|
confirmButtonClass: 'common-button-primary',
|
||||||
|
roundButton: true
|
||||||
|
}).then(() => {
|
||||||
|
const list = this.value.filter(item => !this.selectedList.some(i => i.lawId === item.lawId))
|
||||||
|
this.$emit('input', list)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
getDicTypeListCode () {
|
||||||
|
this.loading = true
|
||||||
|
this.$http._getData('sys/dictype/getDicTypeListCode').then(res => {
|
||||||
|
this.dict = { ...res.data }
|
||||||
|
this.loading = false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.table{
|
||||||
|
/deep/ .el-select.el-select--mini{
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
/deep/ .el-date-editor.el-input, .el-date-editor.el-input__inner {
|
||||||
|
width: 100% !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,134 @@
|
|||||||
|
<template>
|
||||||
|
<el-timeline>
|
||||||
|
<el-form
|
||||||
|
ref="userForm"
|
||||||
|
:model="roleForm"
|
||||||
|
:rules="roleRules"
|
||||||
|
class="label-input-form"
|
||||||
|
>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.prcCreateUser"
|
||||||
|
prop="prcCreateUserName"
|
||||||
|
timestamp="发起流程"
|
||||||
|
title="起草"
|
||||||
|
placeholder="请选择起草人"
|
||||||
|
:name.sync="roleForm.prcCreateUserName"
|
||||||
|
disabled
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.shr1UserIds"
|
||||||
|
prop="shr1UserNames"
|
||||||
|
timestamp="审核"
|
||||||
|
title="审核"
|
||||||
|
placeholder="请选择审核人"
|
||||||
|
multiple
|
||||||
|
:name.sync="roleForm.shr1UserNames"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.sdr1UserIds"
|
||||||
|
prop="sdr1UserNames"
|
||||||
|
timestamp="审定"
|
||||||
|
title="审定"
|
||||||
|
placeholder="请选择审定人"
|
||||||
|
multiple
|
||||||
|
:name.sync="roleForm.sdr1UserNames"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.pzr1UserId"
|
||||||
|
prop="pzr1UserName"
|
||||||
|
timestamp="批准"
|
||||||
|
title="批准"
|
||||||
|
placeholder="请选择批准人"
|
||||||
|
:name.sync="roleForm.pzr1UserName"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.djrUserIds"
|
||||||
|
prop="djrUserNames"
|
||||||
|
timestamp="责任对接人分配任务"
|
||||||
|
title="责任对接人分配任务"
|
||||||
|
placeholder="责任对接人分配任务"
|
||||||
|
multiple
|
||||||
|
:name.sync="roleForm.djrUserNames"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.glyUserId"
|
||||||
|
prop="glyUserName"
|
||||||
|
timestamp="管理员"
|
||||||
|
title="管理员"
|
||||||
|
:name.sync="roleForm.glyUserName"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.shr2UserIds"
|
||||||
|
prop="shr2UserNames"
|
||||||
|
timestamp="审核"
|
||||||
|
title="审核"
|
||||||
|
placeholder="请选择审核人"
|
||||||
|
multiple
|
||||||
|
:name.sync="roleForm.shr2UserNames"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.sdr2UserIds"
|
||||||
|
prop="sdr2UserNames"
|
||||||
|
timestamp="审定"
|
||||||
|
title="审定"
|
||||||
|
placeholder="请选择审定人"
|
||||||
|
multiple
|
||||||
|
:name.sync="roleForm.sdr2UserNames"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.pzr2UserId"
|
||||||
|
prop="pzr2UserName"
|
||||||
|
timestamp="批准"
|
||||||
|
title="批准"
|
||||||
|
placeholder="请选择批准人"
|
||||||
|
:name.sync="roleForm.pzr2UserName"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<TimeLineFormItem
|
||||||
|
:id.sync="roleForm.csrUserIds"
|
||||||
|
prop="csrUserNames"
|
||||||
|
timestamp="抄送"
|
||||||
|
title="抄送"
|
||||||
|
placeholder="请选择抄送人"
|
||||||
|
:multiple="true"
|
||||||
|
:name.sync="roleForm.csrUserNames"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
</el-form>
|
||||||
|
</el-timeline>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import TimeLineFormItem from '@/components/hzwlComponents/TimeLineFormItem'
|
||||||
|
export default {
|
||||||
|
name: 'PersonInfo',
|
||||||
|
components: {
|
||||||
|
TimeLineFormItem
|
||||||
|
},
|
||||||
|
props: {
|
||||||
|
roleForm: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
roleRules: {
|
||||||
|
type: Object,
|
||||||
|
required: true,
|
||||||
|
},
|
||||||
|
disabled: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
|
||||||
|
</style>
|
||||||
@@ -0,0 +1,278 @@
|
|||||||
|
<template>
|
||||||
|
<el-drawer
|
||||||
|
:title="title"
|
||||||
|
:visible="showDrawer"
|
||||||
|
:wrapperClosable="false"
|
||||||
|
size="1000px"
|
||||||
|
@close="onClose"
|
||||||
|
>
|
||||||
|
<div class="drawer-content">
|
||||||
|
<el-form
|
||||||
|
v-if="reloadForm"
|
||||||
|
ref="form"
|
||||||
|
:model="form"
|
||||||
|
:rules="rules"
|
||||||
|
label-width="150px"
|
||||||
|
label-position="left"
|
||||||
|
style="height: 100%"
|
||||||
|
>
|
||||||
|
<InputFormItem
|
||||||
|
v-model="form.checkListName"
|
||||||
|
class="form-item-first"
|
||||||
|
prop="checkListName"
|
||||||
|
label="核查清单名称"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<UploadFormItem
|
||||||
|
v-if="reloadForm"
|
||||||
|
label="模板"
|
||||||
|
:ids.sync="form.checklistTemplate"
|
||||||
|
:names.sync="form.checklistTemplateName"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<el-tabs v-model="activeName">
|
||||||
|
<el-tab-pane label="核查清单" name="1" />
|
||||||
|
<el-tab-pane label="人员信息" name="2" />
|
||||||
|
</el-tabs>
|
||||||
|
<Inventory
|
||||||
|
v-show="activeName === '1'"
|
||||||
|
v-model="form.issueTrackList"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<PersonInfo
|
||||||
|
v-show="activeName === '2'"
|
||||||
|
ref="roleForm"
|
||||||
|
:roleForm="roleForm"
|
||||||
|
:roleRules="roleRules"
|
||||||
|
:disabled="disabled"
|
||||||
|
/>
|
||||||
|
<loading :loading="loading">数据获取中...</loading>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<div class="drawer-footer">
|
||||||
|
<el-button
|
||||||
|
icon="el-icon-check"
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
:loading="isSubmit"
|
||||||
|
:disabled="disabled"
|
||||||
|
@click="onSubmit"
|
||||||
|
>
|
||||||
|
提交
|
||||||
|
</el-button>
|
||||||
|
<el-button icon="el-icon-close" size="mini" :loading="isSubmit" @click="onClose">取消</el-button>
|
||||||
|
</div>
|
||||||
|
</el-drawer>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
import UploadFormItem from '@/components/hzwlComponents/UploadFormItem'
|
||||||
|
import InputFormItem from '@/components/hzwlComponents/InputFormItem'
|
||||||
|
import PersonInfo from './PersonInfo'
|
||||||
|
import Inventory from './Inventory'
|
||||||
|
export default {
|
||||||
|
name: 'AddModel',
|
||||||
|
components: {
|
||||||
|
UploadFormItem,
|
||||||
|
InputFormItem,
|
||||||
|
PersonInfo,
|
||||||
|
Inventory,
|
||||||
|
},
|
||||||
|
data () {
|
||||||
|
const form = {
|
||||||
|
checkListName: '',
|
||||||
|
checklistTemplate: '',
|
||||||
|
checklistTemplateName: '',
|
||||||
|
issueTrackList: [],
|
||||||
|
}
|
||||||
|
const roleForm = {
|
||||||
|
prcCreateUser: this.$store.getters.userInfo.account,
|
||||||
|
prcCreateUserName: this.$store.getters.userInfo.userName,
|
||||||
|
shr1UserIds: '',
|
||||||
|
shr1UserNames: '',
|
||||||
|
sdr1UserIds: '',
|
||||||
|
sdr1UserNames: '',
|
||||||
|
pzr1UserId: '',
|
||||||
|
pzr1UserName: '',
|
||||||
|
djrUserIds: '',
|
||||||
|
djrUserNames: '',
|
||||||
|
glyUserId: '',
|
||||||
|
glyUserName: '',
|
||||||
|
shr2UserIds: '',
|
||||||
|
shr2UserNames: '',
|
||||||
|
sdr2UserIds: '',
|
||||||
|
sdr2UserNames: '',
|
||||||
|
pzr2UserId: '',
|
||||||
|
pzr2UserName: '',
|
||||||
|
csrUserIds: '',
|
||||||
|
csrUserNames: '',
|
||||||
|
}
|
||||||
|
const rules = {
|
||||||
|
checkListName: [
|
||||||
|
{ required: true, message: '核查清单名称不能为空', trigger: 'change' }
|
||||||
|
],
|
||||||
|
}
|
||||||
|
const roleRules = {
|
||||||
|
shr1UserNames: [
|
||||||
|
{ required: true, message: '请选择审核人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
sdr1UserNames: [
|
||||||
|
{ required: true, message: '请选择审定人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
pzr1UserName: [
|
||||||
|
{ required: true, message: '请选择批准人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
djrUserNames: [
|
||||||
|
{ required: true, message: '请选择责任对接人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
glyUserName: [
|
||||||
|
{ required: true, message: '请选择管理员', trigger: 'change' },
|
||||||
|
],
|
||||||
|
shr2UserNames: [
|
||||||
|
{ required: true, message: '请选择审核人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
sdr2UserNames: [
|
||||||
|
{ required: true, message: '请选择审定人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
pzr2UserName: [
|
||||||
|
{ required: true, message: '请选择批准人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
csrUserNames: [
|
||||||
|
{ required: true, message: '请选择抄送人', trigger: 'change' },
|
||||||
|
],
|
||||||
|
}
|
||||||
|
return {
|
||||||
|
title: '新增',
|
||||||
|
showDrawer: false,
|
||||||
|
isSubmit: false,
|
||||||
|
form,
|
||||||
|
initForm: JSON.parse(JSON.stringify(form)),
|
||||||
|
roleForm,
|
||||||
|
initRoleForm: JSON.parse(JSON.stringify(roleForm)),
|
||||||
|
rules,
|
||||||
|
roleRules,
|
||||||
|
activeName: '1',
|
||||||
|
url: {
|
||||||
|
save: 'standardTrackingCheckList/save',
|
||||||
|
update: 'standardTrackingCheckList/update',
|
||||||
|
getById: 'standardTrackingCheckList/getById',
|
||||||
|
},
|
||||||
|
loading: false,
|
||||||
|
reloadForm: true,
|
||||||
|
disabled: false,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
onClose () {
|
||||||
|
this.showDrawer = false
|
||||||
|
},
|
||||||
|
add () {
|
||||||
|
this.title = '新增'
|
||||||
|
this.disabled = false
|
||||||
|
// this.form = JSON.parse(JSON.stringify(this.initForm))
|
||||||
|
Object.keys(this.initForm).forEach(key => this.form[key] = this.initForm[key])
|
||||||
|
this.roleForm = JSON.parse(JSON.stringify(this.initRoleForm))
|
||||||
|
this.reloadForm = false
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.reloadForm = true
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.$refs.form.clearValidate()
|
||||||
|
this.$refs['roleForm'].$refs['userForm'].clearValidate()
|
||||||
|
})
|
||||||
|
})
|
||||||
|
this.showDrawer = true
|
||||||
|
},
|
||||||
|
edit (id, type) {
|
||||||
|
if (type && type === 'detail') {
|
||||||
|
this.title = '详情'
|
||||||
|
this.disabled = true
|
||||||
|
} else {
|
||||||
|
this.title = '编辑'
|
||||||
|
this.disabled = false
|
||||||
|
}
|
||||||
|
this.showDrawer = true
|
||||||
|
const config = { _this: this, loading: 'loading' }
|
||||||
|
this.$http._getData(this.url.getById, { checklistId: id }, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.form = res.data
|
||||||
|
this.roleForm = res.data.roleForm
|
||||||
|
this.reloadForm = false
|
||||||
|
this.$nextTick(() => {
|
||||||
|
this.reloadForm = true
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
onSubmit () {
|
||||||
|
if (this.form.issueTrackList.length === 0) {
|
||||||
|
return this.$message.warning('请添加核查清单')
|
||||||
|
}
|
||||||
|
this.$refs.form.validate(valid => {
|
||||||
|
if (!valid)
|
||||||
|
return this.$message.warning('请完善基础信息');
|
||||||
|
this.$refs['roleForm'].$refs['userForm'].validate(valid => {
|
||||||
|
if (!valid)
|
||||||
|
return this.$message.warning('请完善人员信息');
|
||||||
|
|
||||||
|
const url = this.title === '新增' ? this.url.save : this.url.update
|
||||||
|
const method = this.title === '新增' ? '_postData' : '_putData'
|
||||||
|
const form = Object.assign(this.form, { roleForm: this.roleForm })
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'isSubmit',
|
||||||
|
}
|
||||||
|
this.$http[method](url, form, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.$message.success('操作成功')
|
||||||
|
this.$emit('ok')
|
||||||
|
this.showDrawer = false
|
||||||
|
} else {
|
||||||
|
this.$message.error(res.message)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped lang="less">
|
||||||
|
.drawer-content {
|
||||||
|
padding: 0 19px;
|
||||||
|
overflow-y: auto;
|
||||||
|
flex: auto;
|
||||||
|
/deep/ .el-form-item{
|
||||||
|
margin-bottom: 0;
|
||||||
|
color: #666;
|
||||||
|
.el-form-item__label {
|
||||||
|
line-height: 50px;
|
||||||
|
}
|
||||||
|
.el-form-item__content{
|
||||||
|
line-height: 50px;
|
||||||
|
}
|
||||||
|
.el-input.is-disabled .el-input__inner {
|
||||||
|
background-color: transparent;
|
||||||
|
border-color: #E4E7ED;
|
||||||
|
color: #666;
|
||||||
|
cursor: not-allowed;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.form-item-first {
|
||||||
|
/deep/ .el-input__inner{
|
||||||
|
padding-left: 0;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.drawer-footer {
|
||||||
|
width: 100%;
|
||||||
|
padding: 0 20px;
|
||||||
|
height: 70px;
|
||||||
|
line-height: 69px;
|
||||||
|
border-top: 1px solid #e8e8e8;
|
||||||
|
text-align: right;
|
||||||
|
background: #fff;
|
||||||
|
z-index: 999;
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@@ -1,27 +1,495 @@
|
|||||||
<template>
|
<template>
|
||||||
<div class="standardTrackingList">
|
<div class="root">
|
||||||
<listTracking></listTracking>
|
<div class="search-area">
|
||||||
|
<el-form :modal="searchForm" :inline="true" class="label-input-form">
|
||||||
|
<el-form-item label="核查清单名称" class="search-item">
|
||||||
|
<el-input
|
||||||
|
v-model="searchForm.checkListName"
|
||||||
|
placeholder="请输入"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="标准编号/政策文号" class="search-item">
|
||||||
|
<el-input
|
||||||
|
v-model="searchForm.lawCode"
|
||||||
|
placeholder="请输入"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item label="标准名称/政策名称" class="search-item">
|
||||||
|
<el-input
|
||||||
|
v-model="searchForm.lawName"
|
||||||
|
placeholder="请输入"
|
||||||
|
/>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'3686c281f765e4c0200471a98448c85c'"
|
||||||
|
type="primary"
|
||||||
|
class="common-button-primary"
|
||||||
|
size="small"
|
||||||
|
@click="onSearch"
|
||||||
|
>
|
||||||
|
查询
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
<el-form-item class="search-item btn-box">
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'ec9ca45c7aed52012e5be50233ab9201'"
|
||||||
|
class="common-button-default"
|
||||||
|
size="small"
|
||||||
|
@click="onClear"
|
||||||
|
>
|
||||||
|
清空
|
||||||
|
</el-button>
|
||||||
|
</el-form-item>
|
||||||
|
</el-form>
|
||||||
|
</div>
|
||||||
|
<div class="action-bar">
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'3bdd090479f35afce3d83fc1656fe288'"
|
||||||
|
type="primary"
|
||||||
|
size="mini"
|
||||||
|
@click="add"
|
||||||
|
>
|
||||||
|
<i class="el-icon-plus" />新增
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'bae1221a7247bb13b6e13d46272febbe'"
|
||||||
|
size="mini"
|
||||||
|
@click="edit"
|
||||||
|
>
|
||||||
|
编辑
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'7e573b9dce2ef670aa0ab9bc44c30f0d'"
|
||||||
|
size="mini"
|
||||||
|
@click="addImportModal"
|
||||||
|
>
|
||||||
|
导入
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'9795ee9432cba2fb1a3774512f0c9c55'"
|
||||||
|
size="mini"
|
||||||
|
@click="exportData"
|
||||||
|
>
|
||||||
|
导出
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'544653c56dc5d966d366766ea96dcf85'"
|
||||||
|
size="mini"
|
||||||
|
@click="onDelete"
|
||||||
|
>
|
||||||
|
批量删除
|
||||||
|
</el-button>
|
||||||
|
<el-button
|
||||||
|
v-btn-permission="'e3004dae97503611c75c3efc6e3b9ac7'"
|
||||||
|
size="mini"
|
||||||
|
@click="processDistribution"
|
||||||
|
>
|
||||||
|
流程下发
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
<div class="container">
|
||||||
|
<el-table
|
||||||
|
ref="selection"
|
||||||
|
:data="data"
|
||||||
|
tooltip-effect="dark"
|
||||||
|
style="width:100%;height: calc(100% - 57px)"
|
||||||
|
height="string"
|
||||||
|
border
|
||||||
|
class="drag-table"
|
||||||
|
:header-cell-style="{background: '#e8e8e8', color: '#333333', fontSize: '16px', fontWeight: 'bold', height: '48px', padding: 0}"
|
||||||
|
:cell-style="{padding: 0}"
|
||||||
|
@sort-change="sortChange"
|
||||||
|
@selection-change="selectionChange"
|
||||||
|
>
|
||||||
|
<el-table-column
|
||||||
|
type="selection"
|
||||||
|
width="55"
|
||||||
|
align="center"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
type="index"
|
||||||
|
width="55"
|
||||||
|
label="序号"
|
||||||
|
align="center"
|
||||||
|
>
|
||||||
|
<template slot-scope="{scope, column, $index}">
|
||||||
|
{{ ($index + 1) + (searchForm.page - 1) * searchForm.pageSize }}
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="checkListName"
|
||||||
|
label="核查清单名称"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row, column, $index}">
|
||||||
|
<a class="table-jump" style="color: #2d8cf0" @click="detail(row.id)">{{ row.checkListName }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="createUserId"
|
||||||
|
label="创建人"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row}">
|
||||||
|
{{ row.createUserName }}({{ row.createUserId }})
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="modifyTime"
|
||||||
|
label="更新时间"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="processIssuanceTime"
|
||||||
|
label="流程下发时间"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="processCompleteTime"
|
||||||
|
label="流程完成时间"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
/>
|
||||||
|
<el-table-column
|
||||||
|
prop="processNum"
|
||||||
|
label="流程编号"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row, column, $index}">
|
||||||
|
<a class="table-jump" style="color: #2d8cf0" @click="toProcessDetail(row.processNum)">{{ row.processNum }}</a>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column
|
||||||
|
prop="processStatus"
|
||||||
|
label="流程状态"
|
||||||
|
align="center"
|
||||||
|
sortable="custom"
|
||||||
|
>
|
||||||
|
<template slot-scope="{row, column, $index}">
|
||||||
|
<span v-if="row.processStatus === 0">未下发</span>
|
||||||
|
<span v-if="row.processStatus === 1">进行中</span>
|
||||||
|
<span v-if="row.processStatus === 2">已完成</span>
|
||||||
|
</template>
|
||||||
|
</el-table-column>
|
||||||
|
</el-table>
|
||||||
|
<pagination :page="searchForm.page" :total="searchForm.total" @pageChange="pageChange" @pageSizeChange="pageSizeChange" />
|
||||||
|
<loading :loading="loading">数据获取中...</loading>
|
||||||
|
</div>
|
||||||
|
<addModel ref="addModel" @ok="onClear" />
|
||||||
|
<!-- 导入 -->
|
||||||
|
<ImportZip :visible.sync="importModalShowFlag" :action="url.importExcelUrl" @onSuccess="getData" />
|
||||||
|
<ImportModel ref="ImportModelRef" @ok="onClear" />
|
||||||
|
<!-- 导出 -->
|
||||||
|
<ExportDialog ref="exportDialogRef" @exportName="handleExport" />
|
||||||
|
<el-dialog title="流程下发" :visible.sync="visible" width="600px" class="processDistributionForm">
|
||||||
|
<el-form
|
||||||
|
ref="processDistributionRef"
|
||||||
|
:model="processDistributionForm"
|
||||||
|
:rules="processDistributionRules"
|
||||||
|
label-width="200px"
|
||||||
|
label-position="left"
|
||||||
|
>
|
||||||
|
<DatePickerFormItem
|
||||||
|
v-model="processDistributionForm.processDeadline"
|
||||||
|
label="流程截止时间"
|
||||||
|
prop="processDeadline"
|
||||||
|
/>
|
||||||
|
<DatePickerFormItem
|
||||||
|
v-model="processDistributionForm.feedbackDeadline"
|
||||||
|
label="责任单位意见反馈截止时间"
|
||||||
|
prop="feedbackDeadline"
|
||||||
|
/>
|
||||||
|
</el-form>
|
||||||
|
<div slot="footer">
|
||||||
|
<el-button size="small" :loading="processDistributionLoading" @click="visible = false">取消</el-button>
|
||||||
|
<el-button size="small" type="primary" :loading="processDistributionLoading" @click="handleProcessDistribution">确定</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
<script>
|
<script>
|
||||||
import listTracking from "@/pages/regulatoryRepository/accessStandardsAndRegulations/page/listTracking";
|
import addModel from './addModel'
|
||||||
|
import ImportModel from './ImportModel'
|
||||||
|
import ImportZip from '@/components/hzwlComponents/importZip'
|
||||||
|
import ExportDialog from '@/components/hzwlComponents/exportDialog'
|
||||||
|
import DatePickerFormItem from '@/components/hzwlComponents/DatePickerFormItem'
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: 'StandardTrackingList',
|
name: 'StandardTrackingList',
|
||||||
components: {
|
components: {
|
||||||
listTracking
|
addModel,
|
||||||
|
ImportModel,
|
||||||
|
ImportZip,
|
||||||
|
ExportDialog,
|
||||||
|
DatePickerFormItem,
|
||||||
},
|
},
|
||||||
data() {
|
data () {
|
||||||
|
const searchForm = {
|
||||||
|
checkListName: '',
|
||||||
|
lawCode: '',
|
||||||
|
lawName: '',
|
||||||
|
page: 1,
|
||||||
|
pageSize: this.$store.getters.userInfo.configContent,
|
||||||
|
total: 0,
|
||||||
|
}
|
||||||
|
const processDistributionForm = {
|
||||||
|
trackingChecklistId: '',
|
||||||
|
processDeadline: '',
|
||||||
|
feedbackDeadline: '',
|
||||||
|
}
|
||||||
|
const processDistributionRules = {
|
||||||
|
processDeadline: [
|
||||||
|
{ required: true, message: '流程截止时间不能为空', trigger: 'change' }
|
||||||
|
],
|
||||||
|
feedbackDeadline: [
|
||||||
|
{ required: true, message: '责任单位意见反馈截止时间不能为空', trigger: 'change' }
|
||||||
|
],
|
||||||
|
}
|
||||||
return {
|
return {
|
||||||
|
searchForm,
|
||||||
|
initSearchForm: JSON.parse(JSON.stringify(searchForm)),
|
||||||
|
loading: false,
|
||||||
|
url: {
|
||||||
|
page: 'standardTrackingCheckList/page',
|
||||||
|
save: 'standardTrackingCheckList/save',
|
||||||
|
delete: 'standardTrackingCheckList/remove',
|
||||||
|
getById: 'standardTrackingCheckList/getById',
|
||||||
|
update: 'standardTrackingCheckList/update',
|
||||||
|
exportTemplateFile: 'api/standardTrackingCheckList/exportTemplateFile',
|
||||||
|
importExcelUrl: 'api/standardTrackingCheckList/importTrackingChecklist',
|
||||||
|
exportTrackingChecklist: 'api/standardTrackingCheckList/exportTrackingChecklist',
|
||||||
|
processDistribution: 'standardTrackingCheckList/processDistribution'
|
||||||
|
},
|
||||||
|
data: [],
|
||||||
|
selectedList: [],
|
||||||
|
// 导入
|
||||||
|
importModalShowFlag: false,
|
||||||
|
visible: false,
|
||||||
|
processDistributionForm,
|
||||||
|
processDistributionRules,
|
||||||
|
processDistributionLoading: false,
|
||||||
|
selectedListDel: []
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
created () {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getData () {
|
||||||
|
const config = {
|
||||||
|
_this: this,
|
||||||
|
loading: 'loading'
|
||||||
|
}
|
||||||
|
this.$http._getData(this.url.page, this.searchForm, config).then(res => {
|
||||||
|
if(res.ok) {
|
||||||
|
this.data = res.data.list
|
||||||
|
this.searchForm.total = res.data.count
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
pageChange (page) {
|
||||||
|
this.searchForm.page = page
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
pageSizeChange (pageSize) {
|
||||||
|
this.searchForm.pageSize = pageSize
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onSearch () {
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
onClear () {
|
||||||
|
this.searchForm = JSON.parse(JSON.stringify(this.initSearchForm))
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
selectionChange (data) {
|
||||||
|
this.selectedList = []
|
||||||
|
this.selectedListDel = []
|
||||||
|
for (let i = 0; i < data.length; i++) {
|
||||||
|
this.selectedList.push(data[i].id)
|
||||||
|
this.selectedListDel.push( { id: data[i].id, processStatus: data[i].processStatus } )
|
||||||
|
}
|
||||||
|
},
|
||||||
|
sortChange ({ column, prop, order }) {
|
||||||
|
this.searchForm.sortField = prop
|
||||||
|
this.searchForm.sortMode = 'asc'
|
||||||
|
if (order === 'descending') {
|
||||||
|
this.searchForm.sortMode = 'desc'
|
||||||
|
}
|
||||||
|
if (!order) {
|
||||||
|
this.searchForm.sortField = ''
|
||||||
|
this.searchForm.sortMode = ''
|
||||||
|
}
|
||||||
|
this.getData()
|
||||||
|
},
|
||||||
|
add () {
|
||||||
|
this.$refs.addModel.add()
|
||||||
|
},
|
||||||
|
edit () {
|
||||||
|
if(this.selectedList.length === 0) {
|
||||||
|
return this.$message.warning('请选择要编辑的数据')
|
||||||
|
}
|
||||||
|
if (this.selectedList.length > 1) {
|
||||||
|
return this.$message.warning('仅能选择一条数据进行编辑')
|
||||||
|
}
|
||||||
|
this.$refs.addModel.edit(this.selectedList[0])
|
||||||
|
},
|
||||||
|
detail (id) {
|
||||||
|
this.$refs.addModel.edit(id, 'detail')
|
||||||
|
},
|
||||||
|
downTemplate () {
|
||||||
|
window.open(`${this.url.exportTemplateFile}?fileName=标准跟踪清单导入模板`)
|
||||||
|
},
|
||||||
|
addImportModal () {
|
||||||
|
// this.importModalShowFlag = true
|
||||||
|
this.$refs.ImportModelRef.openModel()
|
||||||
|
},
|
||||||
|
// 导出
|
||||||
|
exportData () {
|
||||||
|
this.$refs.exportDialogRef.openModel()
|
||||||
|
},
|
||||||
|
handleExport (exportName) {
|
||||||
|
const params = {
|
||||||
|
...this.searchForm,
|
||||||
|
exportName: exportName,
|
||||||
|
exportIds: this.selectedList.join(',')
|
||||||
|
}
|
||||||
|
let query = '?'
|
||||||
|
for(const i in params) {
|
||||||
|
if (params[i] && params[i] !== '') {
|
||||||
|
query = query + i + '=' + params[i] + '&'
|
||||||
|
}
|
||||||
|
}
|
||||||
|
query = query.slice(0, -1)
|
||||||
|
window.open(this.url.exportTrackingChecklist + query)
|
||||||
|
this.$refs.exportDialogRef.cancel()
|
||||||
|
this.$message.success('导出信息成功')
|
||||||
|
},
|
||||||
|
onDelete () {
|
||||||
|
if (this.selectedList.length === 0) {
|
||||||
|
this.$message.warning('请选择要删除的数据')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
let ids = []
|
||||||
|
let underWayFlag = false
|
||||||
|
this.selectedListDel.forEach(item => {
|
||||||
|
if (item.processStatus === 1) {
|
||||||
|
underWayFlag = true
|
||||||
|
}
|
||||||
|
ids.push(item.id)
|
||||||
|
})
|
||||||
|
if (underWayFlag) {
|
||||||
|
this.$message.warning('进行中的数据不能删除,请重新选择')
|
||||||
|
return
|
||||||
|
}
|
||||||
|
ids = ids.join(',')
|
||||||
|
this.$confirm('确认删除这些数据?', '提示', {
|
||||||
|
confirmButtonText: '确定',
|
||||||
|
cancelButtonText: '取消',
|
||||||
|
type: 'warning',
|
||||||
|
confirmButtonClass: 'common-button-primary',
|
||||||
|
roundButton: true
|
||||||
|
}).then(() => {
|
||||||
|
this.$http._deleteData(this.url.delete, { ids }).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.$message.success('删除成功')
|
||||||
|
this.getData()
|
||||||
|
}else {
|
||||||
|
this.$message.warning(res.message)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
processDistribution () {
|
||||||
|
if (this.selectedList.length === 0) {
|
||||||
|
return this.$message.warning('请选择要下发的数据')
|
||||||
|
}
|
||||||
|
this.visible = true
|
||||||
|
Object.keys(this.processDistributionForm).forEach(key => {
|
||||||
|
this.processDistributionForm[key] = ''
|
||||||
|
})
|
||||||
|
this.$nextTick(() => {
|
||||||
|
// this.$refs.processDistributionRef.resetFields()
|
||||||
|
this.$refs.processDistributionRef.clearValidate()
|
||||||
|
})
|
||||||
|
},
|
||||||
|
handleProcessDistribution () {
|
||||||
|
this.$refs.processDistributionRef.validate(valid => {
|
||||||
|
if (valid) {
|
||||||
|
this.processDistributionForm.trackingChecklistId = this.selectedList.join(',')
|
||||||
|
const config = { _this: this, loading: 'processDistributionLoading' }
|
||||||
|
this.$http._post(this.url.processDistribution, this.processDistributionForm, config).then(res => {
|
||||||
|
if (res.ok) {
|
||||||
|
this.$message.success('操作成功')
|
||||||
|
this.visible = false
|
||||||
|
this.getData()
|
||||||
|
} else {
|
||||||
|
this.$message.warning(res.message)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
||||||
|
},
|
||||||
|
toProcessDetail (prcNum) {
|
||||||
|
const routeUrl = this.$router.resolve({
|
||||||
|
name: 'ProcessDetail',
|
||||||
|
query: { prcNum }
|
||||||
|
})
|
||||||
|
window.open(routeUrl.href, '_blank')
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
</script>
|
</script>
|
||||||
|
|
||||||
<style lang="less" scoped>
|
<style lang="less" scoped>
|
||||||
.standardTrackingList {
|
.root{
|
||||||
height: 100%;
|
width: 100%;
|
||||||
}
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
}
|
||||||
|
.search-area {
|
||||||
|
.search-item /deep/ .el-button--small {
|
||||||
|
padding: 8px 15px !important;
|
||||||
|
height: 30px !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.action-bar /deep/ .el-button{
|
||||||
|
height: 32px !important;
|
||||||
|
}
|
||||||
|
.container {
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.processDistributionForm {
|
||||||
|
/deep/ .el-form-item{
|
||||||
|
margin-bottom: 10px;
|
||||||
|
color: #666;
|
||||||
|
.el-form-item__label {
|
||||||
|
line-height: 50px;
|
||||||
|
}
|
||||||
|
.el-form-item__content{
|
||||||
|
line-height: 50px;
|
||||||
|
}
|
||||||
|
.el-input__inner{
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
.el-date-editor.el-input, .el-date-editor.el-input__inner {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
.el-input__inner{
|
||||||
|
color: #666 !important;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
.form-item-first {
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
</style>
|
</style>
|
||||||
|
|||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user