Compare commits
107 Commits
feature/FM
...
YB_APP
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
e08827d0d4 | ||
|
|
f09109b7e7 | ||
|
|
bede56b2db | ||
|
|
fb67a6dd65 | ||
|
|
1833ae101f | ||
|
|
c06d71ff98 | ||
|
|
c37e57732e | ||
|
|
b7d2ee6c91 | ||
|
|
e3478f36d2 | ||
|
|
8124e39463 | ||
|
|
8e3294aaeb | ||
|
|
c56bed2f70 | ||
|
|
34bfdbc90d | ||
|
|
36ff9221de | ||
|
|
e0c83f4cd3 | ||
|
|
19e8ec9c02 | ||
|
|
af3eb249d6 | ||
|
|
3fdac4407e | ||
|
|
ecda414691 | ||
|
|
2fc051ebfd | ||
|
|
6e7186af68 | ||
|
|
8ba5ae7554 | ||
|
|
6217d70249 | ||
|
|
93ee833aaa | ||
|
|
636a3fa817 | ||
|
|
8a4f147b48 | ||
|
|
66bb755f31 | ||
|
|
7ad79c4945 | ||
|
|
6ba3ee1e7a | ||
|
|
8ae86106fd | ||
|
|
ae7ed170d5 | ||
|
|
e009d586c2 | ||
|
|
c9e3b0e527 | ||
|
|
3375f9231c | ||
|
|
3f5e4b6627 | ||
|
|
4c49c89116 | ||
|
|
f62b54609d | ||
|
|
0f8b41bcca | ||
|
|
851f70b689 | ||
|
|
53d8d671cd | ||
|
|
e45473f4e2 | ||
|
|
20b972408f | ||
|
|
9859143c7b | ||
|
|
8a5e9ec6c1 | ||
|
|
0360a04223 | ||
|
|
531d6e623d | ||
|
|
8865cc20d2 | ||
|
|
e0867ecbba | ||
|
|
0120633965 | ||
|
|
b0d02792f1 | ||
|
|
732a2527a9 | ||
|
|
aaeb635841 | ||
|
|
a727170502 | ||
|
|
1ed18a7d61 | ||
|
|
7e60b74567 | ||
|
|
afbc92cb49 | ||
|
|
0f91b917d2 | ||
|
|
acb395388b | ||
|
|
81a20210f6 | ||
|
|
2f8e154687 | ||
|
|
54cefafa08 | ||
|
|
d2b8772d0a | ||
|
|
722ffec7e0 | ||
|
|
a43e98b935 | ||
|
|
26dc6bc94c | ||
|
|
b9741ee121 | ||
|
|
a091a3bb59 | ||
|
|
2d4f089cc2 | ||
|
|
ec156335c4 | ||
|
|
369fad1da4 | ||
|
|
4cf33658b1 | ||
|
|
b2291a8a8d | ||
|
|
6ccf05fffe | ||
|
|
969ba8b7fa | ||
|
|
0b16de9042 | ||
|
|
c6a52a0978 | ||
|
|
0333c0c699 | ||
|
|
6e07415a6a | ||
|
|
d38e117a66 | ||
|
|
46690155de | ||
|
|
0b91c9af46 | ||
|
|
2ca59a0bd3 | ||
|
|
e28441cf19 | ||
|
|
36f0037310 | ||
|
|
20a49b6ce1 | ||
|
|
b193fdf590 | ||
|
|
7b7c785e26 | ||
|
|
6cfc533f0d | ||
|
|
50f24bbb42 | ||
|
|
9088078142 | ||
|
|
f582879766 | ||
|
|
7f26aada01 | ||
|
|
26dd9396c0 | ||
|
|
d100ea3e8c | ||
|
|
5bf87f73fa | ||
|
|
95be2cdc92 | ||
|
|
12ff9f0393 | ||
|
|
036715a0a9 | ||
|
|
387ad36a2a | ||
|
|
669d4be5f5 | ||
|
|
17be558cd9 | ||
|
|
7c7a16c457 | ||
|
|
c1dcbabe11 | ||
|
|
99f4cf7331 | ||
|
|
bfee576b60 | ||
|
|
ec595b854f | ||
|
|
7d0325e013 |
230
package-lock.json
generated
@@ -1874,8 +1874,8 @@
|
||||
},
|
||||
"amdefine": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/amdefine/-/amdefine-1.0.1.tgz",
|
||||
"integrity": "sha1-SlKCrBZHKek2Gbz9OtFR+BfOkfU=",
|
||||
"resolved": "https://registry.npmmirror.com/amdefine/-/amdefine-1.0.1.tgz",
|
||||
"integrity": "sha512-S2Hw0TtNkMJhIabBwIojKL9YHO5T0n5eNqWJ7Lrlel/zDbftQpxpapi8tZs3X1HWa+u+QeydGmzzNU0m09+Rcg==",
|
||||
"dev": true
|
||||
},
|
||||
"animate.css": {
|
||||
@@ -1966,7 +1966,7 @@
|
||||
},
|
||||
"are-we-there-yet": {
|
||||
"version": "1.1.7",
|
||||
"resolved": "https://registry.npmjs.org/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/are-we-there-yet/-/are-we-there-yet-1.1.7.tgz",
|
||||
"integrity": "sha512-nxwy40TuMiUGqMyRHgCSWZ9FM4VAoRP4xUYSTv5ImRog+h9yISPbVH7H8fASCIzYn9wlEv4zvFL7uKDMCFQm3g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -2009,8 +2009,8 @@
|
||||
},
|
||||
"array-find-index": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/array-find-index/-/array-find-index-1.0.2.tgz",
|
||||
"integrity": "sha1-3wEKoSh+Fku9pvlyOwqWoexBh6E=",
|
||||
"resolved": "https://registry.npmmirror.com/array-find-index/-/array-find-index-1.0.2.tgz",
|
||||
"integrity": "sha512-M1HQyIXcBGtVywBt8WVdim+lrNaK7VHp99Qt5pSNziXznKHViIBbXWtfRTpEFpF/c4FdfxNAsCCwPp5phBYJtw==",
|
||||
"dev": true
|
||||
},
|
||||
"array-flatten": {
|
||||
@@ -2128,8 +2128,8 @@
|
||||
},
|
||||
"async-foreach": {
|
||||
"version": "0.1.3",
|
||||
"resolved": "https://registry.npmjs.org/async-foreach/-/async-foreach-0.1.3.tgz",
|
||||
"integrity": "sha1-NhIfhFwFeBct5Bmpfb6x0W7DRUI=",
|
||||
"resolved": "https://registry.npmmirror.com/async-foreach/-/async-foreach-0.1.3.tgz",
|
||||
"integrity": "sha512-VUeSMD8nEGBWaZK4lizI1sf3yEC7pnAQ/mrI7pC2fBz2s/tq5jWWEngTwaf0Gruu/OoXRGLGg1XFqpYBiGTYJA==",
|
||||
"dev": true
|
||||
},
|
||||
"async-limiter": {
|
||||
@@ -2715,8 +2715,8 @@
|
||||
},
|
||||
"block-stream": {
|
||||
"version": "0.0.9",
|
||||
"resolved": "https://registry.npmjs.org/block-stream/-/block-stream-0.0.9.tgz",
|
||||
"integrity": "sha1-E+v+d4oDIFz+A3UUgeu0szAMEmo=",
|
||||
"resolved": "https://registry.npmmirror.com/block-stream/-/block-stream-0.0.9.tgz",
|
||||
"integrity": "sha512-OorbnJVPII4DuUKbjARAe8u8EfqOmkEEaSFIyoQ7OjTHn6kafxWl0wLgoZ2rXaYd7MyLcDaU4TmhfxtwgcccMQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"inherits": "~2.0.0"
|
||||
@@ -3121,8 +3121,8 @@
|
||||
},
|
||||
"camelcase-keys": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
|
||||
"integrity": "sha1-MIvur/3ygRkFHvodkyITyRuPkuc=",
|
||||
"resolved": "https://registry.npmmirror.com/camelcase-keys/-/camelcase-keys-2.1.0.tgz",
|
||||
"integrity": "sha512-bA/Z/DERHKqoEOrp+qeGKw1QlvEQkGZSc0XaY6VnTxZr+Kv1G5zFwttpjv8qxZ/sBPT4nthwZaAcsAZTJlSKXQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"camelcase": "^2.0.0",
|
||||
@@ -3131,8 +3131,8 @@
|
||||
"dependencies": {
|
||||
"camelcase": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/camelcase/-/camelcase-2.1.1.tgz",
|
||||
"integrity": "sha1-fB0W1nmhu+WcoCys7PsBHiAfWh8=",
|
||||
"resolved": "https://registry.npmmirror.com/camelcase/-/camelcase-2.1.1.tgz",
|
||||
"integrity": "sha512-DLIsRzJVBQu72meAKPkWQOLcujdXT32hwdfnkI1frSiSRMK1MofjKHf+MEx0SB6fjEFXL8fBDv1dKymBlOp4Qw==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
@@ -3723,8 +3723,8 @@
|
||||
},
|
||||
"console-control-strings": {
|
||||
"version": "1.1.0",
|
||||
"resolved": "https://registry.npmjs.org/console-control-strings/-/console-control-strings-1.1.0.tgz",
|
||||
"integrity": "sha1-PXz0Rk22RG6mRL9LOVB/mFEAjo4=",
|
||||
"resolved": "https://registry.npmmirror.com/console-control-strings/-/console-control-strings-1.1.0.tgz",
|
||||
"integrity": "sha512-ty/fTekppD2fIwRvnZAVdeOiGd1c7YXEixbgJTNzqcxJWKQnjJ/V1bNEEE6hygpM3WjwHFUVK6HTjWSzV4a8sQ==",
|
||||
"dev": true
|
||||
},
|
||||
"consolidate": {
|
||||
@@ -4353,8 +4353,8 @@
|
||||
},
|
||||
"currently-unhandled": {
|
||||
"version": "0.4.1",
|
||||
"resolved": "https://registry.npmjs.org/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
|
||||
"integrity": "sha1-mI3zP+qxke95mmE2nddsF635V+o=",
|
||||
"resolved": "https://registry.npmmirror.com/currently-unhandled/-/currently-unhandled-0.4.1.tgz",
|
||||
"integrity": "sha512-/fITjgjGU50vjQ4FH6eUoYu+iUoUKIXws2hL15JJpIR+BbTxaXQsMuuyjtNh2WqsSBS5nsaZHFsFecyw5CCAng==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"array-find-index": "^1.0.1"
|
||||
@@ -4648,8 +4648,8 @@
|
||||
},
|
||||
"delegates": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/delegates/-/delegates-1.0.0.tgz",
|
||||
"integrity": "sha1-hMbhWbgZBP3KWaDvRM2HDTElD5o=",
|
||||
"resolved": "https://registry.npmmirror.com/delegates/-/delegates-1.0.0.tgz",
|
||||
"integrity": "sha512-bd2L678uiWATM6m5Z1VzNCErI3jiGzt6HGY8OVICs40JQq/HALfbyNJmp0UDakEY4pMMaN0Ly5om/B1VI/+xfQ==",
|
||||
"dev": true
|
||||
},
|
||||
"depd": {
|
||||
@@ -6397,7 +6397,8 @@
|
||||
"ansi-regex": {
|
||||
"version": "2.1.1",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"aproba": {
|
||||
"version": "1.2.0",
|
||||
@@ -6812,7 +6813,8 @@
|
||||
"safe-buffer": {
|
||||
"version": "5.1.2",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"safer-buffer": {
|
||||
"version": "2.1.2",
|
||||
@@ -6868,6 +6870,7 @@
|
||||
"version": "3.0.1",
|
||||
"bundled": true,
|
||||
"dev": true,
|
||||
"optional": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^2.0.0"
|
||||
}
|
||||
@@ -6911,18 +6914,20 @@
|
||||
"wrappy": {
|
||||
"version": "1.0.2",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"yallist": {
|
||||
"version": "3.0.3",
|
||||
"bundled": true,
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"fstream": {
|
||||
"version": "1.0.12",
|
||||
"resolved": "https://registry.npmjs.org/fstream/-/fstream-1.0.12.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/fstream/-/fstream-1.0.12.tgz",
|
||||
"integrity": "sha512-WvJ193OHa0GHPEL+AycEJgxvBEwyfRkN1vhjca23OaPVMCaLCXTd5qAu82AjTcgP1UJmytkOKb63Ypde7raDIg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -6946,8 +6951,8 @@
|
||||
},
|
||||
"gauge": {
|
||||
"version": "2.7.4",
|
||||
"resolved": "https://registry.npmjs.org/gauge/-/gauge-2.7.4.tgz",
|
||||
"integrity": "sha1-LANAXHU4w51+s3sxcCLjJfsBi/c=",
|
||||
"resolved": "https://registry.npmmirror.com/gauge/-/gauge-2.7.4.tgz",
|
||||
"integrity": "sha512-14x4kjc6lkD3ltw589k0NrPD6cCNTD6CWoVUNpB85+DrtONoZn+Rug6xZU5RvSC4+TZPxA5AnBibQYAvZn41Hg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"aproba": "^1.0.3",
|
||||
@@ -6962,14 +6967,14 @@
|
||||
"dependencies": {
|
||||
"ansi-regex": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
|
||||
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
|
||||
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz",
|
||||
"integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
|
||||
"dev": true
|
||||
},
|
||||
"is-fullwidth-code-point": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
|
||||
"integrity": "sha1-754xOG8DGn8NZDr4L95QxFfvAMs=",
|
||||
"resolved": "https://registry.npmmirror.com/is-fullwidth-code-point/-/is-fullwidth-code-point-1.0.0.tgz",
|
||||
"integrity": "sha512-1pqUqRjkhPJ9miNq9SwMfdvi6lBJcd6eFxvfaivQhaH3SgisfiuudvFntdKOmxuee/77l+FPjKrQjWvmPjWrRw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"number-is-nan": "^1.0.0"
|
||||
@@ -6977,8 +6982,8 @@
|
||||
},
|
||||
"string-width": {
|
||||
"version": "1.0.2",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-1.0.2.tgz",
|
||||
"integrity": "sha1-EYvfW4zcUaKn5w0hHgfisLmxB9M=",
|
||||
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-1.0.2.tgz",
|
||||
"integrity": "sha512-0XsVpQLnVCXHJfyEs8tC0zpTVIr5PKKsQtkT29IwupnPTjtPmQ3xT/4yCREF9hYkV/3M3kzcUTSAZT6a6h81tw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"code-point-at": "^1.0.0",
|
||||
@@ -6988,8 +6993,8 @@
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
|
||||
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^2.0.0"
|
||||
@@ -6999,7 +7004,7 @@
|
||||
},
|
||||
"gaze": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/gaze/-/gaze-1.1.3.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/gaze/-/gaze-1.1.3.tgz",
|
||||
"integrity": "sha512-BRdNm8hbWzFzWHERTrejLqwHDfS4GibPoq5wjTPIoJHoBtKGPg3xAFfxmM+9ztbXelxcf2hwQcaz1PtmFeue8g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -7150,14 +7155,22 @@
|
||||
}
|
||||
},
|
||||
"globule": {
|
||||
"version": "1.3.3",
|
||||
"resolved": "https://registry.npmjs.org/globule/-/globule-1.3.3.tgz",
|
||||
"integrity": "sha512-mb1aYtDbIjTu4ShMB85m3UzjX9BVKe9WCzsnfMSZk+K5GpIbBOexgg4PPCt5eHDEG5/ZQAUX2Kct02zfiPLsKg==",
|
||||
"version": "1.3.4",
|
||||
"resolved": "https://registry.npmmirror.com/globule/-/globule-1.3.4.tgz",
|
||||
"integrity": "sha512-OPTIfhMBh7JbBYDpa5b+Q5ptmMWKwcNcFSR/0c6t8V4f3ZAVBEsKNY37QdVqmLRYSMhOUGYrY0QhSoEpzGr/Eg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"glob": "~7.1.1",
|
||||
"lodash": "~4.17.10",
|
||||
"lodash": "^4.17.21",
|
||||
"minimatch": "~3.0.2"
|
||||
},
|
||||
"dependencies": {
|
||||
"lodash": {
|
||||
"version": "4.17.21",
|
||||
"resolved": "https://registry.npmmirror.com/lodash/-/lodash-4.17.21.tgz",
|
||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
},
|
||||
"graceful-fs": {
|
||||
@@ -7264,8 +7277,8 @@
|
||||
},
|
||||
"has-unicode": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/has-unicode/-/has-unicode-2.0.1.tgz",
|
||||
"integrity": "sha1-4Ob+aijPUROIVeCG0Wkedx3iqLk=",
|
||||
"resolved": "https://registry.npmmirror.com/has-unicode/-/has-unicode-2.0.1.tgz",
|
||||
"integrity": "sha512-8Rf9Y83NBReMnx0gFzA8JImQACstCYWUplepDa9xprwwtmgEZUF0h/i5xSA625zB/I37EtrswSST6OXxwaaIJQ==",
|
||||
"dev": true
|
||||
},
|
||||
"has-value": {
|
||||
@@ -7771,14 +7784,14 @@
|
||||
},
|
||||
"in-publish": {
|
||||
"version": "2.0.1",
|
||||
"resolved": "https://registry.npmjs.org/in-publish/-/in-publish-2.0.1.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/in-publish/-/in-publish-2.0.1.tgz",
|
||||
"integrity": "sha512-oDM0kUSNFC31ShNxHKUyfZKy8ZeXZBWMjMdZHKLOk13uvT27VTL/QzRGfRUcevJhpkZAvlhPYuXkF7eNWrtyxQ==",
|
||||
"dev": true
|
||||
},
|
||||
"indent-string": {
|
||||
"version": "2.1.0",
|
||||
"resolved": "https://registry.npmjs.org/indent-string/-/indent-string-2.1.0.tgz",
|
||||
"integrity": "sha1-ji1INIdCEhtKghi3oTfppSBJ3IA=",
|
||||
"resolved": "https://registry.npmmirror.com/indent-string/-/indent-string-2.1.0.tgz",
|
||||
"integrity": "sha512-aqwDFWSgSgfRaEwao5lg5KEcVd/2a+D1rvoG7NdilmYz0NwRk6StWpWdz/Hpk34MKPpx7s8XxUqimfcQK6gGlg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"repeating": "^2.0.0"
|
||||
@@ -9519,7 +9532,7 @@
|
||||
},
|
||||
"js-sha256": {
|
||||
"version": "0.9.0",
|
||||
"resolved": "https://registry.npmjs.org/js-sha256/-/js-sha256-0.9.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/js-sha256/-/js-sha256-0.9.0.tgz",
|
||||
"integrity": "sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA=="
|
||||
},
|
||||
"js-tokens": {
|
||||
@@ -9910,8 +9923,8 @@
|
||||
},
|
||||
"loud-rejection": {
|
||||
"version": "1.6.0",
|
||||
"resolved": "https://registry.npmjs.org/loud-rejection/-/loud-rejection-1.6.0.tgz",
|
||||
"integrity": "sha1-W0b4AUft7leIcPCG0Eghz5mOVR8=",
|
||||
"resolved": "https://registry.npmmirror.com/loud-rejection/-/loud-rejection-1.6.0.tgz",
|
||||
"integrity": "sha512-RPNliZOFkqFumDhvYqOaNY4Uz9oJM2K9tC6JWsJJsNdhuONW4LQHRBpb0qf4pJApVffI5N39SwzWZJuEhfd7eQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"currently-unhandled": "^0.4.1",
|
||||
@@ -9969,8 +9982,8 @@
|
||||
},
|
||||
"map-obj": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/map-obj/-/map-obj-1.0.1.tgz",
|
||||
"integrity": "sha1-2TPOuSBdgr3PSIb2dCvcK03qFG0=",
|
||||
"resolved": "https://registry.npmmirror.com/map-obj/-/map-obj-1.0.1.tgz",
|
||||
"integrity": "sha512-7N/q3lyZ+LVCp7PzuxrJr4KMbBE2hW7BT7YNia330OFxIf4d3r5zVpicP2650l7CPN6RM9zOJRl3NGpqSiw3Eg==",
|
||||
"dev": true
|
||||
},
|
||||
"map-visit": {
|
||||
@@ -10032,8 +10045,8 @@
|
||||
},
|
||||
"meow": {
|
||||
"version": "3.7.0",
|
||||
"resolved": "https://registry.npmjs.org/meow/-/meow-3.7.0.tgz",
|
||||
"integrity": "sha1-cstmi0JSKCkKu/qFaJJYcwioAfs=",
|
||||
"resolved": "https://registry.npmmirror.com/meow/-/meow-3.7.0.tgz",
|
||||
"integrity": "sha512-TNdwZs0skRlpPpCUK25StC4VH+tP5GgeY1HQOOGP+lQ2xtdkN2VtT/5tiX9k3IWpkBPV9b3LsAWXn4GGi/PrSA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"camelcase-keys": "^2.0.0",
|
||||
@@ -10416,7 +10429,7 @@
|
||||
},
|
||||
"node-gyp": {
|
||||
"version": "3.8.0",
|
||||
"resolved": "https://registry.npmjs.org/node-gyp/-/node-gyp-3.8.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/node-gyp/-/node-gyp-3.8.0.tgz",
|
||||
"integrity": "sha512-3g8lYefrRRzvGeSowdJKAKyks8oUpLEd/DyPV4eMhVlhJ0aNaZqIrNUIPuEWWTAoPqyFkfGrM67MC69baqn6vA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -10436,8 +10449,8 @@
|
||||
"dependencies": {
|
||||
"nopt": {
|
||||
"version": "3.0.6",
|
||||
"resolved": "https://registry.npmjs.org/nopt/-/nopt-3.0.6.tgz",
|
||||
"integrity": "sha1-xkZdvwirzU2zWTF/eaxopkayj/k=",
|
||||
"resolved": "https://registry.npmmirror.com/nopt/-/nopt-3.0.6.tgz",
|
||||
"integrity": "sha512-4GUt3kSEYmk4ITxzB/b9vaIDfUVWN/Ml1Fwl11IlnIG2iaJ9O6WXZ9SrYM9NLI8OCBieN2Y8SWC2oJV0RQ7qYg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"abbrev": "1"
|
||||
@@ -10445,8 +10458,8 @@
|
||||
},
|
||||
"semver": {
|
||||
"version": "5.3.0",
|
||||
"resolved": "https://registry.npmjs.org/semver/-/semver-5.3.0.tgz",
|
||||
"integrity": "sha1-myzl094C0XxgEq0yaqa00M9U+U8=",
|
||||
"resolved": "https://registry.npmmirror.com/semver/-/semver-5.3.0.tgz",
|
||||
"integrity": "sha512-mfmm3/H9+67MCVix1h+IXTpDwL6710LyHuk7+cWC9T1mE0qz4iHhh6r4hU2wrIT9iTsAAC2XQRvfblL028cpLw==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
@@ -10531,7 +10544,7 @@
|
||||
},
|
||||
"node-sass": {
|
||||
"version": "4.14.1",
|
||||
"resolved": "https://registry.npmjs.org/node-sass/-/node-sass-4.14.1.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/node-sass/-/node-sass-4.14.1.tgz",
|
||||
"integrity": "sha512-sjCuOlvGyCJS40R8BscF5vhVlQjNN069NtQ1gSxyK1u9iqvn6tf7O1R4GNowVZfiZUCRt5MmMs1xd+4V/7Yr0g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -10556,20 +10569,20 @@
|
||||
"dependencies": {
|
||||
"ansi-regex": {
|
||||
"version": "2.1.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-2.1.1.tgz",
|
||||
"integrity": "sha1-w7M6te42DYbg5ijwRorn7yfWVN8=",
|
||||
"resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz",
|
||||
"integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==",
|
||||
"dev": true
|
||||
},
|
||||
"ansi-styles": {
|
||||
"version": "2.2.1",
|
||||
"resolved": "https://registry.npmjs.org/ansi-styles/-/ansi-styles-2.2.1.tgz",
|
||||
"integrity": "sha1-tDLdM1i2NM914eRmQ2gkBTPB3b4=",
|
||||
"resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz",
|
||||
"integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==",
|
||||
"dev": true
|
||||
},
|
||||
"chalk": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha1-qBFcVeSnAv5NFQq9OHKCKn4J/Jg=",
|
||||
"resolved": "https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz",
|
||||
"integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-styles": "^2.2.1",
|
||||
@@ -10581,8 +10594,8 @@
|
||||
},
|
||||
"cross-spawn": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-3.0.1.tgz",
|
||||
"integrity": "sha1-ElYDfsufDF9549bvE14wdwGEuYI=",
|
||||
"resolved": "https://registry.npmmirror.com/cross-spawn/-/cross-spawn-3.0.1.tgz",
|
||||
"integrity": "sha512-eZ+m1WNhSZutOa/uRblAc9Ut5MQfukFrFMtPSm3bZCA888NmMd5AWXWdgRZ80zd+pTk1P2JrGjg9pUPTvl2PWQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"lru-cache": "^4.0.1",
|
||||
@@ -10591,13 +10604,13 @@
|
||||
},
|
||||
"get-stdin": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
|
||||
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
|
||||
"resolved": "https://registry.npmmirror.com/get-stdin/-/get-stdin-4.0.1.tgz",
|
||||
"integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==",
|
||||
"dev": true
|
||||
},
|
||||
"lru-cache": {
|
||||
"version": "4.1.5",
|
||||
"resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-4.1.5.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/lru-cache/-/lru-cache-4.1.5.tgz",
|
||||
"integrity": "sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -10607,8 +10620,8 @@
|
||||
},
|
||||
"strip-ansi": {
|
||||
"version": "3.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"integrity": "sha1-ajhfuIU9lS1f8F0Oiq+UJ43GPc8=",
|
||||
"resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz",
|
||||
"integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"ansi-regex": "^2.0.0"
|
||||
@@ -10616,14 +10629,14 @@
|
||||
},
|
||||
"supports-color": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/supports-color/-/supports-color-2.0.0.tgz",
|
||||
"integrity": "sha1-U10EXOa2Nj+kARcIRimZXp3zJMc=",
|
||||
"resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz",
|
||||
"integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==",
|
||||
"dev": true
|
||||
},
|
||||
"yallist": {
|
||||
"version": "2.1.2",
|
||||
"resolved": "https://registry.npmjs.org/yallist/-/yallist-2.1.2.tgz",
|
||||
"integrity": "sha1-HBH5IY8HYImkfdUS+TxmmaaoHVI=",
|
||||
"resolved": "https://registry.npmmirror.com/yallist/-/yallist-2.1.2.tgz",
|
||||
"integrity": "sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==",
|
||||
"dev": true
|
||||
}
|
||||
}
|
||||
@@ -10679,7 +10692,7 @@
|
||||
},
|
||||
"npmlog": {
|
||||
"version": "4.1.2",
|
||||
"resolved": "https://registry.npmjs.org/npmlog/-/npmlog-4.1.2.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/npmlog/-/npmlog-4.1.2.tgz",
|
||||
"integrity": "sha512-2uUqazuKlTaSI/dC8AzicUck7+IrEaOnN/e0jd3Xtt1KcGpwx30v50mL7oPyr/h9bL3E4aZccVwpwP+5W9Vjkg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12398,8 +12411,8 @@
|
||||
},
|
||||
"redent": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/redent/-/redent-1.0.0.tgz",
|
||||
"integrity": "sha1-z5Fqsf1fHxbfsggi3W7H9zDCr94=",
|
||||
"resolved": "https://registry.npmmirror.com/redent/-/redent-1.0.0.tgz",
|
||||
"integrity": "sha512-qtW5hKzGQZqKoh6JNSD+4lfitfPKGz42e6QwiRmPM5mmKtR0N41AbJRYu0xJi7nhOJ4WDgRkKvAk6tw4WIwR4g==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"indent-string": "^2.1.0",
|
||||
@@ -12408,14 +12421,14 @@
|
||||
"dependencies": {
|
||||
"get-stdin": {
|
||||
"version": "4.0.1",
|
||||
"resolved": "https://registry.npmjs.org/get-stdin/-/get-stdin-4.0.1.tgz",
|
||||
"integrity": "sha1-uWjGsKBDhDJJAui/Gl3zJXmkUP4=",
|
||||
"resolved": "https://registry.npmmirror.com/get-stdin/-/get-stdin-4.0.1.tgz",
|
||||
"integrity": "sha512-F5aQMywwJ2n85s4hJPTT9RPxGmubonuB10MNYo17/xph174n2MIR33HRguhzVag10O/npM7SPk73LMZNP+FaWw==",
|
||||
"dev": true
|
||||
},
|
||||
"strip-indent": {
|
||||
"version": "1.0.1",
|
||||
"resolved": "https://registry.npmjs.org/strip-indent/-/strip-indent-1.0.1.tgz",
|
||||
"integrity": "sha1-DHlipq3vp7vUrDZkYKY4VSrhoKI=",
|
||||
"resolved": "https://registry.npmmirror.com/strip-indent/-/strip-indent-1.0.1.tgz",
|
||||
"integrity": "sha512-I5iQq6aFMM62fBEAIB/hXzwJD6EEZ0xEGCX2t7oXqaKPIRgt4WruAQ285BISgdkP+HLGWyeGmNJcpIwFeRYRUA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"get-stdin": "^4.0.1"
|
||||
@@ -12809,7 +12822,8 @@
|
||||
"version": "4.0.8",
|
||||
"resolved": "https://registry.npmjs.org/rx-lite/-/rx-lite-4.0.8.tgz",
|
||||
"integrity": "sha1-Cx4Rr4vESDbwSmQH6S2kJGe3lEQ=",
|
||||
"dev": true
|
||||
"dev": true,
|
||||
"optional": true
|
||||
},
|
||||
"rx-lite-aggregates": {
|
||||
"version": "4.0.8",
|
||||
@@ -12870,7 +12884,7 @@
|
||||
},
|
||||
"sass-graph": {
|
||||
"version": "2.2.5",
|
||||
"resolved": "https://registry.npmjs.org/sass-graph/-/sass-graph-2.2.5.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/sass-graph/-/sass-graph-2.2.5.tgz",
|
||||
"integrity": "sha512-VFWDAHOe6mRuT4mZRd4eKE+d8Uedrk6Xnh7Sh9b4NGufQLQjOrvf/MQoOdx+0s92L89FeyUUNfU597j/3uNpag==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12882,7 +12896,7 @@
|
||||
"dependencies": {
|
||||
"cliui": {
|
||||
"version": "5.0.0",
|
||||
"resolved": "https://registry.npmjs.org/cliui/-/cliui-5.0.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/cliui/-/cliui-5.0.0.tgz",
|
||||
"integrity": "sha512-PYeGSEmmHM6zvoef2w8TPzlrnNpXIjTipYK780YswmIP9vjxmd6Y2a3CB2Ks6/AU8NHjZugXvo8w3oWM2qnwXA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12893,7 +12907,7 @@
|
||||
},
|
||||
"find-up": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/find-up/-/find-up-3.0.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/find-up/-/find-up-3.0.0.tgz",
|
||||
"integrity": "sha512-1yD6RmLI1XBfxugvORwlck6f75tYL+iR0jqwsOrOxMZyGYqUuDhJ0l4AXdO1iX/FTs9cBAMEk1gWSEx1kSbylg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12902,13 +12916,13 @@
|
||||
},
|
||||
"get-caller-file": {
|
||||
"version": "2.0.5",
|
||||
"resolved": "https://registry.npmjs.org/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/get-caller-file/-/get-caller-file-2.0.5.tgz",
|
||||
"integrity": "sha512-DyFP3BM/3YHTQOCUL/w0OZHR0lpKeGrxotcHWcqNEdnltqFwXVfhEBQ94eIo34AfQpo0rGki4cyIiftY06h2Fg==",
|
||||
"dev": true
|
||||
},
|
||||
"locate-path": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/locate-path/-/locate-path-3.0.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/locate-path/-/locate-path-3.0.0.tgz",
|
||||
"integrity": "sha512-7AO748wWnIhNqAuaty2ZWHkQHRSNfPVIsPIfwEOWO22AmaoVrWavlOcMR5nzTLNYvp36X220/maaRsrec1G65A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12918,7 +12932,7 @@
|
||||
},
|
||||
"p-limit": {
|
||||
"version": "2.3.0",
|
||||
"resolved": "https://registry.npmjs.org/p-limit/-/p-limit-2.3.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/p-limit/-/p-limit-2.3.0.tgz",
|
||||
"integrity": "sha512-//88mFWSJx8lxCzwdAABTJL2MyWB12+eIY7MDL2SqLmAkeKU9qxRvWuSyTjm3FUmpBEMuFfckAIqEaVGUDxb6w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12927,7 +12941,7 @@
|
||||
},
|
||||
"p-locate": {
|
||||
"version": "3.0.0",
|
||||
"resolved": "https://registry.npmjs.org/p-locate/-/p-locate-3.0.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/p-locate/-/p-locate-3.0.0.tgz",
|
||||
"integrity": "sha512-x+12w/To+4GFfgJhBEpiDcLozRJGegY+Ei7/z0tSLkMmxGZNybVMSfWj9aJn8Z5Fc7dBUNJOOVgPv2H7IwulSQ==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12936,19 +12950,19 @@
|
||||
},
|
||||
"p-try": {
|
||||
"version": "2.2.0",
|
||||
"resolved": "https://registry.npmjs.org/p-try/-/p-try-2.2.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/p-try/-/p-try-2.2.0.tgz",
|
||||
"integrity": "sha512-R4nPAVTAU0B9D35/Gk3uJf/7XYbQcyohSKdvAxIRSNghFl4e71hVoGnBNQz9cWaXxO2I10KTC+3jMdvvoKw6dQ==",
|
||||
"dev": true
|
||||
},
|
||||
"require-main-filename": {
|
||||
"version": "2.0.0",
|
||||
"resolved": "https://registry.npmjs.org/require-main-filename/-/require-main-filename-2.0.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/require-main-filename/-/require-main-filename-2.0.0.tgz",
|
||||
"integrity": "sha512-NKN5kMDylKuldxYLSUfrbo5Tuzh4hd+2E8NPPX02mZtn1VuREQToYe/ZdlJy+J3uCpfaiGF05e7B8W0iXbQHmg==",
|
||||
"dev": true
|
||||
},
|
||||
"string-width": {
|
||||
"version": "3.1.0",
|
||||
"resolved": "https://registry.npmjs.org/string-width/-/string-width-3.1.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/string-width/-/string-width-3.1.0.tgz",
|
||||
"integrity": "sha512-vafcv6KjVZKSgz06oM/H6GDBrAtz8vdhQakGjFIvNrHA6y3HCF1CInLy+QLq8dTJPQ1b+KDUqDFctkdRW44e1w==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12959,7 +12973,7 @@
|
||||
},
|
||||
"wrap-ansi": {
|
||||
"version": "5.1.0",
|
||||
"resolved": "https://registry.npmjs.org/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/wrap-ansi/-/wrap-ansi-5.1.0.tgz",
|
||||
"integrity": "sha512-QC1/iN/2/RPVJ5jYK8BGttj5z83LmSKmvbvrXPNCLZSEb32KKVDJDl/MOt2N01qU2H/FkzEa9PKto1BqDjtd7Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12970,7 +12984,7 @@
|
||||
},
|
||||
"yargs": {
|
||||
"version": "13.3.2",
|
||||
"resolved": "https://registry.npmjs.org/yargs/-/yargs-13.3.2.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/yargs/-/yargs-13.3.2.tgz",
|
||||
"integrity": "sha512-AX3Zw5iPruN5ie6xGRIDgqkT+ZhnRlZMLMHAs8tg7nRruy2Nb+i5o9bwghAogtM08q1dpr2LVoS8KSTMYpWXUw==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -12988,7 +13002,7 @@
|
||||
},
|
||||
"yargs-parser": {
|
||||
"version": "13.1.2",
|
||||
"resolved": "https://registry.npmjs.org/yargs-parser/-/yargs-parser-13.1.2.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/yargs-parser/-/yargs-parser-13.1.2.tgz",
|
||||
"integrity": "sha512-3lbsNRf/j+A4QuSZfDRA7HRSfWrzO0YjqTJd5kjAq37Zep1CEgaYmrH9Q3GwPiB9cHyd1Y1UwggGhJGoxipbzg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -13036,8 +13050,8 @@
|
||||
},
|
||||
"scss-tokenizer": {
|
||||
"version": "0.2.3",
|
||||
"resolved": "https://registry.npmjs.org/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
|
||||
"integrity": "sha1-jrBtualyMzOCTT9VMGQRSYR85dE=",
|
||||
"resolved": "https://registry.npmmirror.com/scss-tokenizer/-/scss-tokenizer-0.2.3.tgz",
|
||||
"integrity": "sha512-dYE8LhncfBUar6POCxMTm0Ln+erjeczqEvCJib5/7XNkdw1FkUGgwMPY360FY0FgPWQxHWCx29Jl3oejyGLM9Q==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"js-base64": "^2.1.8",
|
||||
@@ -13046,8 +13060,8 @@
|
||||
"dependencies": {
|
||||
"source-map": {
|
||||
"version": "0.4.4",
|
||||
"resolved": "https://registry.npmjs.org/source-map/-/source-map-0.4.4.tgz",
|
||||
"integrity": "sha1-66T12pwNyZneaAMti092FzZSA2s=",
|
||||
"resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.4.4.tgz",
|
||||
"integrity": "sha512-Y8nIfcb1s/7DcobUz1yOO1GSp7gyL+D9zLHDehT7iRESqGSxjJ448Sg7rvfgsRJCnKLdSl11uGf0s9X80cH0/A==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"amdefine": ">=0.0.4"
|
||||
@@ -13756,7 +13770,7 @@
|
||||
},
|
||||
"stdout-stream": {
|
||||
"version": "1.4.1",
|
||||
"resolved": "https://registry.npmjs.org/stdout-stream/-/stdout-stream-1.4.1.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/stdout-stream/-/stdout-stream-1.4.1.tgz",
|
||||
"integrity": "sha512-j4emi03KXqJWcIeF8eIXkjMFN1Cmb8gUlDYGeBALLPo5qdyTfA9bOtl8m33lRoC+vFMkP3gl0WsDr6+gzxbbTA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -14066,7 +14080,7 @@
|
||||
},
|
||||
"tar": {
|
||||
"version": "2.2.2",
|
||||
"resolved": "https://registry.npmjs.org/tar/-/tar-2.2.2.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/tar/-/tar-2.2.2.tgz",
|
||||
"integrity": "sha512-FCEhQ/4rE1zYv9rYXJw/msRqsnmlje5jHP6huWeBZ704jUTy02c5AZyWujpMR1ax6mVw9NyJMfuK2CMDWVIfgA==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -14443,8 +14457,8 @@
|
||||
},
|
||||
"trim-newlines": {
|
||||
"version": "1.0.0",
|
||||
"resolved": "https://registry.npmjs.org/trim-newlines/-/trim-newlines-1.0.0.tgz",
|
||||
"integrity": "sha1-WIeWa7WCpFA6QetST301ARgVphM=",
|
||||
"resolved": "https://registry.npmmirror.com/trim-newlines/-/trim-newlines-1.0.0.tgz",
|
||||
"integrity": "sha512-Nm4cF79FhSTzrLKGDMi3I4utBtFv8qKy4sq1enftf2gMdpqI8oVQTAfySkTz5r49giVzDj88SVZXP4CeYQwjaw==",
|
||||
"dev": true
|
||||
},
|
||||
"trim-right": {
|
||||
@@ -14455,7 +14469,7 @@
|
||||
},
|
||||
"true-case-path": {
|
||||
"version": "1.0.3",
|
||||
"resolved": "https://registry.npmjs.org/true-case-path/-/true-case-path-1.0.3.tgz",
|
||||
"resolved": "https://registry.npmmirror.com/true-case-path/-/true-case-path-1.0.3.tgz",
|
||||
"integrity": "sha512-m6s2OdQe5wgpFMC+pAJ+q9djG82O2jcHPOI6RNg1yy9rCYR+WD6Nbpl32fDpfC56nirdRy+opFa/Vk7HYhqaew==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
@@ -15557,12 +15571,12 @@
|
||||
"dev": true
|
||||
},
|
||||
"wide-align": {
|
||||
"version": "1.1.3",
|
||||
"resolved": "https://registry.npmjs.org/wide-align/-/wide-align-1.1.3.tgz",
|
||||
"integrity": "sha512-QGkOQc8XL6Bt5PwnsExKBPuMKBxnGxWWW3fU55Xt4feHozMUhdUMaBCk290qpm/wG5u/RSKzwdAC4i51YigihA==",
|
||||
"version": "1.1.5",
|
||||
"resolved": "https://registry.npmmirror.com/wide-align/-/wide-align-1.1.5.tgz",
|
||||
"integrity": "sha512-eDMORYaPNZ4sQIuuYPDHdQvf4gyCF9rEEV/yPxGfwPkRodwEgiMUUXTx/dex+Me0wxx53S+NgUHaP7y3MGlDmg==",
|
||||
"dev": true,
|
||||
"requires": {
|
||||
"string-width": "^1.0.2 || 2"
|
||||
"string-width": "^1.0.2 || 2 || 3 || 4"
|
||||
}
|
||||
},
|
||||
"wordwrap": {
|
||||
|
||||
@@ -26,6 +26,8 @@ export default {
|
||||
reload: this.reload
|
||||
}
|
||||
},
|
||||
mounted(){
|
||||
},
|
||||
methods: {
|
||||
reload() {
|
||||
this.isRouterAlive = false
|
||||
|
||||
166
src/api/YB_APP/index.js
Normal file
@@ -0,0 +1,166 @@
|
||||
import request from '@/assets/js/utils/request'
|
||||
import getUrl from '@/assets/js/utils/get-url'
|
||||
|
||||
export function homeConfigYB(data) {
|
||||
return request({
|
||||
url: getUrl('/customer/agent/homeConfigYB', 1,3),
|
||||
method: 'get',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function mineConfigYB(data) {
|
||||
return request({
|
||||
url: getUrl('/app/mineConfigYB', 1,3),
|
||||
method: 'get',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getPremRankList(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/premRank/getPremRankList ', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function timelyContYB(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/timelyCont/timelyContYB ', 1,3),
|
||||
method: 'get',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getPersonPremYB(data) {
|
||||
return request({
|
||||
url: getUrl('/data/congratulationTopYB/getPersonPremYB', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getDeptPremYB(data) {
|
||||
return request({
|
||||
url: getUrl('/data/congratulationTopYB/getDeptPremYB', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 保单查询接口
|
||||
export function YBpolicyListAgent(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/policy/YBpolicyListAgent', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
// 保单详情接口
|
||||
export function YBpolicyDetail(data) {
|
||||
return request({
|
||||
url: getUrl('/sale/policy/YBpolicyDetail', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getPremByAgentCode(data) {
|
||||
return request({
|
||||
url: getUrl('/data/performanceYB/getPremByAgentCode', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getIndexByAgentCode(data) {
|
||||
return request({
|
||||
url: getUrl('/data/performanceYB/getIndexByAgentCode', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getBankNetDataYB(data) {
|
||||
return request({
|
||||
url: getUrl('/data/performanceYB/getBankNetDataYB', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getChannelPerformanceYB(data) {
|
||||
return request({
|
||||
url: getUrl('/data/performanceYB/getChannelPerformanceYB', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
export function getBankNetPerformanceYB(data) {
|
||||
return request({
|
||||
url: getUrl('/data/performanceYB/getBankNetPerformanceYB', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 暂时数据接口
|
||||
export function getAgentInfoByAgentCode(data) {
|
||||
return request({
|
||||
url: getUrl('/agent/agent/getAgentInfoByAgentCode', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 查询续期列表
|
||||
export function getYBRenewalsList(data) {
|
||||
return request({
|
||||
url: getUrl('/renewal/renewal/getYBRenewalsList', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
// 查询续期详情
|
||||
export function getYBRenewalInfo(data) {
|
||||
return request({
|
||||
url: getUrl('/renewal/renewal/getYBRenewalInfo', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
|
||||
// 保全申请进度列表
|
||||
export function getSaveAllList(data) {
|
||||
return request({
|
||||
url: getUrl('/renewal/preservation/getSaveAllList', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
// 保全申请进度详情
|
||||
export function ybSaveAllDetail(data) {
|
||||
return request({
|
||||
url: getUrl('/renewal/preservation/ybSaveAllDetail', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
// 保全现金价值列表
|
||||
export function ybSaveManyList(data) {
|
||||
return request({
|
||||
url: getUrl('/renewal/preservation/ybSaveManyList', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
// 保全现金价值详情
|
||||
export function ybSaveManyDetail(data) {
|
||||
return request({
|
||||
url: getUrl('/renewal/preservation/ybSaveManyDetail', 1,3),
|
||||
method: 'post',
|
||||
data
|
||||
})
|
||||
}
|
||||
BIN
src/assets/YB_APP/images/1.png
Normal file
|
After Width: | Height: | Size: 680 B |
BIN
src/assets/YB_APP/images/10.png
Normal file
|
After Width: | Height: | Size: 60 KiB |
BIN
src/assets/YB_APP/images/11.png
Normal file
|
After Width: | Height: | Size: 65 KiB |
BIN
src/assets/YB_APP/images/15.png
Normal file
|
After Width: | Height: | Size: 968 B |
BIN
src/assets/YB_APP/images/16.png
Normal file
|
After Width: | Height: | Size: 1.8 KiB |
BIN
src/assets/YB_APP/images/17.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
src/assets/YB_APP/images/18.png
Normal file
|
After Width: | Height: | Size: 18 KiB |
BIN
src/assets/YB_APP/images/19.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
src/assets/YB_APP/images/2-1.png
Normal file
|
After Width: | Height: | Size: 50 KiB |
BIN
src/assets/YB_APP/images/2.png
Normal file
|
After Width: | Height: | Size: 469 KiB |
BIN
src/assets/YB_APP/images/21.png
Normal file
|
After Width: | Height: | Size: 2.2 KiB |
BIN
src/assets/YB_APP/images/22.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
src/assets/YB_APP/images/23.png
Normal file
|
After Width: | Height: | Size: 10 KiB |
BIN
src/assets/YB_APP/images/24.png
Normal file
|
After Width: | Height: | Size: 2.5 KiB |
BIN
src/assets/YB_APP/images/25.png
Normal file
|
After Width: | Height: | Size: 83 KiB |
BIN
src/assets/YB_APP/images/26.png
Normal file
|
After Width: | Height: | Size: 172 KiB |
BIN
src/assets/YB_APP/images/3.png
Normal file
|
After Width: | Height: | Size: 855 B |
BIN
src/assets/YB_APP/images/31.png
Normal file
|
After Width: | Height: | Size: 23 KiB |
BIN
src/assets/YB_APP/images/32.png
Normal file
|
After Width: | Height: | Size: 299 KiB |
BIN
src/assets/YB_APP/images/33.png
Normal file
|
After Width: | Height: | Size: 3.7 KiB |
BIN
src/assets/YB_APP/images/34.png
Normal file
|
After Width: | Height: | Size: 4.0 KiB |
BIN
src/assets/YB_APP/images/35.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
src/assets/YB_APP/images/36.png
Normal file
|
After Width: | Height: | Size: 8.4 KiB |
BIN
src/assets/YB_APP/images/37.png
Normal file
|
After Width: | Height: | Size: 12 KiB |
BIN
src/assets/YB_APP/images/38.png
Normal file
|
After Width: | Height: | Size: 2.1 KiB |
BIN
src/assets/YB_APP/images/39.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
src/assets/YB_APP/images/4.png
Normal file
|
After Width: | Height: | Size: 3.1 KiB |
BIN
src/assets/YB_APP/images/40.png
Normal file
|
After Width: | Height: | Size: 4.1 KiB |
BIN
src/assets/YB_APP/images/41.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
src/assets/YB_APP/images/42.png
Normal file
|
After Width: | Height: | Size: 85 KiB |
BIN
src/assets/YB_APP/images/43-1.png
Normal file
|
After Width: | Height: | Size: 22 KiB |
BIN
src/assets/YB_APP/images/43.png
Normal file
|
After Width: | Height: | Size: 59 KiB |
BIN
src/assets/YB_APP/images/44.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
src/assets/YB_APP/images/45.png
Normal file
|
After Width: | Height: | Size: 1.1 KiB |
BIN
src/assets/YB_APP/images/46.png
Normal file
|
After Width: | Height: | Size: 7.4 KiB |
BIN
src/assets/YB_APP/images/47.png
Normal file
|
After Width: | Height: | Size: 4.8 KiB |
BIN
src/assets/YB_APP/images/48.png
Normal file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
src/assets/YB_APP/images/49.png
Normal file
|
After Width: | Height: | Size: 9.4 KiB |
BIN
src/assets/YB_APP/images/5.png
Normal file
|
After Width: | Height: | Size: 6.6 KiB |
BIN
src/assets/YB_APP/images/6.png
Normal file
|
After Width: | Height: | Size: 827 B |
BIN
src/assets/YB_APP/images/7-1.png
Normal file
|
After Width: | Height: | Size: 36 KiB |
BIN
src/assets/YB_APP/images/7.png
Normal file
|
After Width: | Height: | Size: 248 KiB |
BIN
src/assets/YB_APP/images/8.png
Normal file
|
After Width: | Height: | Size: 3.5 KiB |
BIN
src/assets/YB_APP/images/9.png
Normal file
|
After Width: | Height: | Size: 439 KiB |
BIN
src/assets/YB_APP/images/bigglass.png
Normal file
|
After Width: | Height: | Size: 770 B |
BIN
src/assets/YB_APP/images/changestate.png
Normal file
|
After Width: | Height: | Size: 2.3 KiB |
BIN
src/assets/YB_APP/images/date.png
Normal file
|
After Width: | Height: | Size: 688 B |
BIN
src/assets/YB_APP/images/logo.png
Normal file
|
After Width: | Height: | Size: 6.3 KiB |
BIN
src/assets/YB_APP/images/noguarantee.png
Normal file
|
After Width: | Height: | Size: 35 KiB |
BIN
src/assets/YB_APP/images/plaint.png
Normal file
|
After Width: | Height: | Size: 560 B |
BIN
src/assets/YB_APP/images/sign1.png
Normal file
|
After Width: | Height: | Size: 754 B |
BIN
src/assets/YB_APP/images/sign2.png
Normal file
|
After Width: | Height: | Size: 1.0 KiB |
BIN
src/assets/YB_APP/images/stamp1.png
Normal file
|
After Width: | Height: | Size: 15 KiB |
BIN
src/assets/YB_APP/images/stamp2.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/YB_APP/images/stamp3.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/YB_APP/images/stamp4.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/YB_APP/images/stamp5.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/YB_APP/images/stamp6.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/YB_APP/images/stamp7.png
Normal file
|
After Width: | Height: | Size: 14 KiB |
BIN
src/assets/YB_APP/images/stamp8.png
Normal file
|
After Width: | Height: | Size: 16 KiB |
@@ -9,6 +9,8 @@ export default function getUrl(url, api = 1, domainType = 1) {
|
||||
domain = config.apiDomain
|
||||
} else if (domainType == 2) {
|
||||
domain = config.imgDomain
|
||||
} else if (domainType == 3) {
|
||||
domain = config.YB_APP
|
||||
}
|
||||
|
||||
return api === 0 ? urlMap[url] : domain + url
|
||||
|
||||
@@ -2,7 +2,12 @@
|
||||
export default function jump(options) {
|
||||
// eslint-disable
|
||||
if (window.WebViewJavascriptBridge && options.flag) {
|
||||
if (options.flag == 'h5' || options.flag == 'service' || options.flag == 'home' || options.flag == 'mine') {
|
||||
if (options.flag == 'h5' ||
|
||||
options.flag == 'service' ||
|
||||
options.flag == 'home' ||
|
||||
options.flag == 'mine' ||
|
||||
options.flag == 'message' ||
|
||||
options.flag == 'setting' ) {
|
||||
EWebBridge.webCallAppInJs('bridge', {
|
||||
flag: options.flag,
|
||||
extra: options.extra
|
||||
|
||||
55
src/assets/js/utils/warterMark.js
Normal file
@@ -0,0 +1,55 @@
|
||||
// warterMark.js
|
||||
'use strict'
|
||||
|
||||
let watermark = {}
|
||||
|
||||
let setWatermark = (str, str1) => {
|
||||
let id = '1.23452384164.123412415'
|
||||
|
||||
if (document.getElementById(id) !== null) {
|
||||
document.body.removeChild(document.getElementById(id))
|
||||
}
|
||||
|
||||
let can = document.createElement('canvas')// 创建一个画布
|
||||
can.width = 180 // 设置宽度
|
||||
can.height = 150 // 高度
|
||||
|
||||
let cans = can.getContext('2d')
|
||||
cans.rotate(-25 * Math.PI / 180) // 水印旋转角度 0 水平
|
||||
cans.font = '14px Vedana' // 字体大小
|
||||
cans.fillStyle = '#000' // 水印的颜色
|
||||
cans.textAlign = 'left' // 设置文本内容的当前对齐方式
|
||||
cans.textBaseline = 'Middle' // 设置在绘制文本时使用的当前文本基线
|
||||
cans.globalAlpha = 0.1 // 透明度
|
||||
// 在画布上绘制填色的文本(输出的文本,开始绘制文本的X坐标位置,开始绘制文本的Y坐标位置)
|
||||
cans.fillText(str, can.width / 100, can.height / 1)
|
||||
cans.fillText(str1, can.width / 3, can.height / 2.5) // 根据需求可添加多行水印,在方法中添加str1
|
||||
|
||||
let div = document.createElement('div')
|
||||
div.id = id
|
||||
div.style.pointerEvents = 'none'
|
||||
div.style.top = '100px'
|
||||
div.style.left = '-20px'
|
||||
div.style.position = 'fixed'
|
||||
div.style.zIndex = '100000'
|
||||
div.style.width = document.documentElement.clientWidth + 'px'
|
||||
div.style.height = document.documentElement.clientHeight + 'px'
|
||||
div.style.background = 'url(' + can.toDataURL('image/png') + ') left top repeat'
|
||||
document.body.appendChild(div)
|
||||
return id
|
||||
}
|
||||
|
||||
// 该方法只允许调用一次
|
||||
watermark.set = (str,str1) => {
|
||||
let id = setWatermark(str,str1)
|
||||
setInterval(() => {
|
||||
if (document.getElementById(id) === null) {
|
||||
id = setWatermark(str,str1)
|
||||
}
|
||||
}, 500)
|
||||
window.onresize = () => {
|
||||
setWatermark(str,str1)
|
||||
}
|
||||
}
|
||||
|
||||
export default watermark
|
||||
@@ -13,7 +13,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
let apiDomain, imgDomain, assetsUrl, mainUrl, payUrl, zssqUrl, REQ_PWD, CACHE_ENCRYP, API_VERSION, assetsUpUrl // 保融支付的收银台服务地址
|
||||
let apiDomain, imgDomain, assetsUrl, mainUrl, payUrl, zssqUrl, REQ_PWD, CACHE_ENCRYP, API_VERSION, assetsUpUrl, YB_APP // 保融支付的收银台服务地址
|
||||
function getSearchString(key) {
|
||||
var str = window.location.href.split('?')[1]
|
||||
str = str.substring(1, str.length) // 获取URL中?之后的字符(去掉第一位的问号)
|
||||
@@ -64,6 +64,9 @@ switch (process.env.VUE_APP_FLAG) {
|
||||
zssqUrl = 'https://iagentsales-test2.e-guofu.com:5100/html/test/index.html#/'
|
||||
REQ_PWD = '41424344454631323334353637383930'
|
||||
CACHE_ENCRYP = '41424344454631323334353637383930'
|
||||
// YB_APP = 'http://10.10.100.98:7001'
|
||||
// YB_APP = 'https://iagentsales-test2.e-guofu.com:5200/api/v1'
|
||||
YB_APP = 'https://iagentsales-test2.e-guofu.com:5200/api/'+apiVersion
|
||||
API_VERSION = apiVersion
|
||||
break
|
||||
case 'uat':
|
||||
@@ -91,6 +94,7 @@ switch (process.env.VUE_APP_FLAG) {
|
||||
zssqUrl = ''
|
||||
REQ_PWD = '41424344454631323334353637383930'
|
||||
CACHE_ENCRYP = '41424344454631323334353637383930'
|
||||
YB_APP = 'https://iagentsales.e-guofu.com/api/'+apiVersion
|
||||
API_VERSION = apiVersion
|
||||
break
|
||||
case 'dat':
|
||||
@@ -128,5 +132,6 @@ export default {
|
||||
zssqUrl, //知识社区地址
|
||||
REQ_PWD, //报文加密密码
|
||||
CACHE_ENCRYP, //缓存加密密码
|
||||
API_VERSION //渠道版本
|
||||
API_VERSION,//渠道版本
|
||||
YB_APP
|
||||
}
|
||||
|
||||
124
src/router/YB_APP/index.js
Normal file
@@ -0,0 +1,124 @@
|
||||
//数据报表 定义相关组件
|
||||
const YB_APP_home = () => import('@/views/YB_APP/home')
|
||||
const YB_APP_service = () => import('@/views/YB_APP/service')
|
||||
const YB_APP_mine = () => import('@/views/YB_APP/mine')
|
||||
const YB_APP_performanceQuery = () => import('@/views/YB_APP/performanceQuery')
|
||||
const YB_APP_policyList = () => import('@/views/YB_APP/policyList')
|
||||
const YB_APP_policyDetail = () => import('@/views/YB_APP/policyDetail')
|
||||
const YB_APP_hitTheHeadlines = () => import('@/views/YB_APP/hitTheHeadlines')
|
||||
const YB_APP_renewalList = () => import('@/views/YB_APP/renewalList')
|
||||
const YB_APP_renewalDetail = () => import('@/views/YB_APP/renewalDetail')
|
||||
const YB_APP_saveallList = () => import('@/views/YB_APP/saveallList')
|
||||
const YB_APP_saveallDetail = () => import('@/views/YB_APP/saveallDetail')
|
||||
const YB_APP_saveallDetailTwo = () => import('@/views/YB_APP/saveallDetailTwo')
|
||||
|
||||
export default [
|
||||
{
|
||||
path: '/YB_APP/home',
|
||||
name: 'YB_APP_home',
|
||||
component: YB_APP_home,
|
||||
meta: {
|
||||
title: '首页',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/service',
|
||||
name: 'YB_APP_service',
|
||||
component: YB_APP_service,
|
||||
meta: {
|
||||
title: '服务',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/mine',
|
||||
name: 'YB_APP_mine',
|
||||
component: YB_APP_mine,
|
||||
meta: {
|
||||
title: '我的',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/performanceQuery',
|
||||
name: 'YB_APP_performanceQuery',
|
||||
component: YB_APP_performanceQuery,
|
||||
meta: {
|
||||
title: '业绩查询',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/policyList',
|
||||
name: 'YB_APP_policyList',
|
||||
component: YB_APP_policyList,
|
||||
meta: {
|
||||
title: '保单列表',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/policyDetail',
|
||||
name: 'YB_APP_policyDetail',
|
||||
component: YB_APP_policyDetail,
|
||||
meta: {
|
||||
title: '保单详情',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/hitTheHeadlines',
|
||||
name: 'YB_APP_hitTheHeadlines',
|
||||
component: YB_APP_hitTheHeadlines,
|
||||
meta: {
|
||||
title: '上头条',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/renewalList',
|
||||
name: 'YB_APP_renewalList',
|
||||
component: YB_APP_renewalList,
|
||||
meta: {
|
||||
title: '续期管理列表',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/renewalDetail',
|
||||
name: 'YB_APP_renewalDetail',
|
||||
component: YB_APP_renewalDetail,
|
||||
meta: {
|
||||
title: '续期详情 ',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/saveallList',
|
||||
name: 'YB_APP_saveallList',
|
||||
component: YB_APP_saveallList,
|
||||
meta: {
|
||||
title: '保全中心列表',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/saveallDetail',
|
||||
name: 'YB_APP_saveallDetail',
|
||||
component: YB_APP_saveallDetail,
|
||||
meta: {
|
||||
title: '保全详情 ',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
{
|
||||
path: '/YB_APP/saveallDetailTwo',
|
||||
name: 'YB_APP_saveallDetailTwo',
|
||||
component: YB_APP_saveallDetailTwo,
|
||||
meta: {
|
||||
title: '保单现金价值详情 ',
|
||||
index: 1
|
||||
}
|
||||
},
|
||||
]
|
||||
@@ -46,6 +46,8 @@ import laurelClub from './laurelClub'
|
||||
import allowance from './allowance'
|
||||
//协同单位投保
|
||||
import cooperativeUnit from './cooperativeUnit'
|
||||
// YB_APP
|
||||
import YB_APP from '../YB_APP/index'
|
||||
export default [
|
||||
...proposal,
|
||||
...sale,
|
||||
@@ -81,5 +83,6 @@ export default [
|
||||
...customerService,
|
||||
...laurelClub,
|
||||
...allowance,
|
||||
...cooperativeUnit
|
||||
...cooperativeUnit,
|
||||
...YB_APP
|
||||
] //根据需要进行删减
|
||||
|
||||
@@ -73,7 +73,7 @@ export default new Vuex.Store({
|
||||
//更新 保全-续期账户变更保单信息
|
||||
updatePcPolicyInfo(state, val) {
|
||||
state.pcList = val
|
||||
}
|
||||
},
|
||||
},
|
||||
getters: {
|
||||
getPageFlag(state) {
|
||||
@@ -96,6 +96,7 @@ export default new Vuex.Store({
|
||||
},
|
||||
getPcPolicyInfo(state) {
|
||||
return state.pcList
|
||||
}
|
||||
},
|
||||
}
|
||||
})
|
||||
|
||||
|
||||
631
src/views/YB_APP/hitTheHeadlines.vue
Normal file
@@ -0,0 +1,631 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<div class="myhead">
|
||||
<div>
|
||||
<span class="QJactive" v-if="premType == 'QJ'" @click="changePremType('QJ')">期交保费</span>
|
||||
<span class="GMunActice" v-if="premType == 'GM'" @click="changePremType('QJ')">期交保费</span>
|
||||
<span class="QJunActice" v-if="premType == 'QJ'" @click="changePremType('GM')">总规模保费</span>
|
||||
<span class="GMactive" v-if="premType == 'GM'" @click="changePremType('GM')">总规模保费</span>
|
||||
</div>
|
||||
<div>
|
||||
<span @click="clickCalendar" class="headDate">{{ calendarValue }} ▼</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="mainContainer">
|
||||
<div class="mainContainer_content">
|
||||
<span class="dataType1Active" v-if="dataType == 1" @click="changeDataType('1')">个人</span>
|
||||
<span class="dataType1UnActive" v-if="dataType == 2" @click="changeDataType('1')">个人</span>
|
||||
<span class="dataType2Active" v-if="dataType == 1" @click="changeDataType('2')">营业部</span>
|
||||
<span class="dataType2UnActive" v-if="dataType == 2" @click="changeDataType('2')">营业部</span>
|
||||
</div>
|
||||
|
||||
<div v-if="dataType == 1 && top3Data.length != 0" class="imgContainer1">
|
||||
<div class="imgContainer1_main">
|
||||
<div class="imgContainer1_main_second">
|
||||
<div class="imgContainer1_main_part_top">
|
||||
<img src="@/assets/YB_APP/images/17.png" style="width: 40%" />
|
||||
<div class="imgContainer1_main_second_top_div">
|
||||
<!-- <img src="@/assets/YB_APP/images/logo.png" style="width:75%;"> -->
|
||||
<img :src="this.top3Data[1].agentHeadImgUrl == null ? url1 : this.top3Data[1].agentHeadImgUrl" style="width: 85%; border-radius: 50%" />
|
||||
</div>
|
||||
<div class="personal_second">
|
||||
<p class="personal_second_p">{{ top3Data[1].agentName }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer1_main_second_bottom">
|
||||
<p class="imgContainer1_main_part_bottom_p">{{ top3Data[1].managecom2 }}{{ top3Data[1].managecom3 }}</p>
|
||||
<p class="imgContainer1_main_part_bottom_p">{{ top3Data[1].prem }}万元</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer1_main_first">
|
||||
<div class="imgContainer1_main_part_top">
|
||||
<img src="@/assets/YB_APP/images/18.png" style="width: 65%" />
|
||||
<div class="imgContainer1_main_first_top_div">
|
||||
<!-- <img src="https://iagentsales-test2.e-guofu.com:443/opt/ebiz/static/images/2022/12/26/7c5fe5b7e14e4682a802516210f4aa83.jpeg" style="width: 85%;border-radius: 50%" /> -->
|
||||
<img :src="this.top3Data[0].agentHeadImgUrl == null ? url1 : this.top3Data[0].agentHeadImgUrl" style="width: 85%; border-radius: 50%" />
|
||||
</div>
|
||||
<div class="personal_first">
|
||||
<p class="personal_first_p">{{ top3Data[0].agentName }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer1_main_first_bottom">
|
||||
<p class="imgContainer1_main_part_bottom_p">{{ top3Data[0].managecom2 }}{{ top3Data[0].managecom3 }}</p>
|
||||
<p class="imgContainer1_main_part_bottom_p">{{ top3Data[0].prem }}万元</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer1_main_third">
|
||||
<div class="imgContainer1_main_part_top">
|
||||
<img src="@/assets/YB_APP/images/19.png" style="width: 40%" />
|
||||
<div class="imgContainer1_main_third_top_div">
|
||||
<!-- <img src="@/assets/YB_APP/images/logo.png" style="width: 75%" /> -->
|
||||
<img :src="this.top3Data[2].agentHeadImgUrl == null ? url1 : this.top3Data[2].agentHeadImgUrl" style="width: 85%; border-radius: 50%" />
|
||||
</div>
|
||||
<div class="personal_third">
|
||||
<p class="personal_third_p">{{ top3Data[2].agentName }}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer1_main_third_bottom">
|
||||
<p class="imgContainer1_main_part_bottom_p">{{ top3Data[2].managecom2 }}{{ top3Data[2].managecom3 }}</p>
|
||||
<p class="imgContainer1_main_part_bottom_p">{{ top3Data[2].prem }}万元</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 48vw" v-if="dataType == 1 && top3Data.length == 0"></div>
|
||||
<div v-if="dataType == 2 && top3Data.length != 0" class="imgContainer2">
|
||||
<div class="imgContainer2_main">
|
||||
<div class="imgContainer2_main_second">
|
||||
<div class="imgContainer2_main_second_content">
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[1].managecom2 }}{{ top3Data[1].managecom3 }}</p>
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[1].managecom4 }}</p>
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[1].prem }}万元</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer2_main_first">
|
||||
<div class="imgContainer2_main_first_content">
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[0].managecom2 }}{{ top3Data[0].managecom3 }}</p>
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[0].managecom4 }}</p>
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[0].prem }}万元</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="imgContainer2_main_third">
|
||||
<div class="imgContainer2_main_third_content">
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[2].managecom2 }}{{ top3Data[2].managecom3 }}</p>
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[2].managecom4 }}</p>
|
||||
<p class="imgContainer2_main_part_bottom_p">{{ top3Data[2].prem }}万元</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div style="height: 48vw" v-if="dataType == 2 && top3Data.length == 0"></div>
|
||||
<div v-if="dataType == 1" class="tableContent">
|
||||
<div class="tableContent_main">
|
||||
<table class="issueTable">
|
||||
<tr class="issueTable_tr">
|
||||
<th style="width: 16%">排名</th>
|
||||
<th style="width: 16%">分公司</th>
|
||||
<th style="width: 16%">机构</th>
|
||||
<th style="width: 20%">营业部</th>
|
||||
<th style="width: 16%">姓名</th>
|
||||
<th style="width: 16%">保费</th>
|
||||
</tr>
|
||||
<tbody>
|
||||
<tr v-for="item in tableData">
|
||||
<td>TOP{{ item.bfpm }}</td>
|
||||
<td>{{ item.managecom2 }}</td>
|
||||
<td>{{ item.managecom3 }}</td>
|
||||
<td>{{ item.managecom4 }}</td>
|
||||
<td>{{ item.agentName }}</td>
|
||||
<td>{{ item.prem }}万</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div v-if="tableData.length == 0" class="noneDataDiv">
|
||||
<img style="width: 60%" src="@/assets/YB_APP/images/43.png" />
|
||||
<span class="noneDataDiv_span">暂无业绩</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="dataType == 2" class="tableContent">
|
||||
<div class="tableContent_main">
|
||||
<table class="issueTable">
|
||||
<tr class="issueTable_tr">
|
||||
<th style="width: 19%">排名</th>
|
||||
<th style="width: 19%">分公司</th>
|
||||
<th style="width: 19%">机构</th>
|
||||
<th style="width: 24%">营业部</th>
|
||||
<th style="width: 19%">保费</th>
|
||||
</tr>
|
||||
<tbody>
|
||||
<tr v-if="tableData.length != 0" v-for="item in tableData">
|
||||
<td>TOP{{ item.bfpm }}</td>
|
||||
<td>{{ item.managecom2 }}</td>
|
||||
<td>{{ item.managecom3 }}</td>
|
||||
<td>{{ item.managecom4 }}</td>
|
||||
<td>{{ item.prem }}万</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div v-if="tableData.length == 0" class="noneDataDiv">
|
||||
<img style="width: 60%" src="@/assets/YB_APP/images/43.png" />
|
||||
<span class="noneDataDiv_span">暂无业绩</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<van-popup v-model="calendarShow" position="bottom">
|
||||
<van-datetime-picker
|
||||
v-model="currentDate"
|
||||
type="year-month"
|
||||
title="选择日期"
|
||||
:min-date="minDate"
|
||||
:max-date="maxDate"
|
||||
@cancel="handleCurrentDateCancel"
|
||||
@confirm="handleCurrentDateConfirm"
|
||||
/>
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Button } from 'vant'
|
||||
import { getPersonPremYB, getDeptPremYB } from '@/api/YB_APP/index'
|
||||
import utils from '@/assets/js/utils/date-utils'
|
||||
export default {
|
||||
name: 'hitTheHeadlines',
|
||||
components: {
|
||||
[Button.name]: Button
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
premType: 'QJ',
|
||||
dataType: 1,
|
||||
calendarValue: '',
|
||||
calendarShow: false,
|
||||
currentDate: new Date(),
|
||||
minDate: new Date(2019, 1, 1),
|
||||
maxDate: new Date(2030, 12, 31),
|
||||
top3Data: [],
|
||||
tableData: [],
|
||||
url1: require('@/assets/YB_APP/images/logo.png')
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
let yearNum = new Date().getFullYear()
|
||||
let monthNum = new Date().getMonth() + 1
|
||||
if (monthNum < 10) {
|
||||
monthNum = '0' + monthNum
|
||||
}
|
||||
this.calendarValue = yearNum + '-' + monthNum
|
||||
|
||||
if (this.dataType == 1) {
|
||||
this.getPersonPremYB()
|
||||
} else {
|
||||
this.getDeptPremYB()
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
clickCalendar() {
|
||||
this.calendarShow = true
|
||||
},
|
||||
handleCurrentDateCancel() {
|
||||
this.calendarShow = false
|
||||
},
|
||||
handleCurrentDateConfirm(e) {
|
||||
this.calendarShow = false
|
||||
// let titleTime = utils.formatDate(e, 'yyyy-MM')
|
||||
// this.calendarValue = utils.formatDate(e, 'MM-dd')
|
||||
let yearNum = utils.formatDate(e, 'yyyy')
|
||||
let monthNum = utils.formatDate(e, 'MM')
|
||||
this.calendarValue = yearNum + '-' + monthNum
|
||||
if (this.dataType == 1) {
|
||||
this.getPersonPremYB()
|
||||
} else {
|
||||
this.getDeptPremYB()
|
||||
}
|
||||
},
|
||||
getPersonPremYB() {
|
||||
let params = {
|
||||
currentMonth: this.calendarValue,
|
||||
premType: this.premType
|
||||
}
|
||||
getPersonPremYB(params).then((res) => {
|
||||
if (res.result == 0) {
|
||||
if (res.content && res.content.length != 0) {
|
||||
this.top3Data = []
|
||||
this.tableData = []
|
||||
res.content.forEach((item, index) => {
|
||||
if (index < 3) {
|
||||
this.top3Data.push(item)
|
||||
} else {
|
||||
this.tableData.push(item)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getDeptPremYB() {
|
||||
let params = {
|
||||
currentMonth: this.calendarValue,
|
||||
premType: this.premType
|
||||
}
|
||||
getDeptPremYB(params).then((res) => {
|
||||
if (res.result == 0) {
|
||||
if (res.content && res.content.length != 0) {
|
||||
this.top3Data = []
|
||||
this.tableData = []
|
||||
res.content.forEach((item, index) => {
|
||||
if (index < 3) {
|
||||
this.top3Data.push(item)
|
||||
} else {
|
||||
this.tableData.push(item)
|
||||
}
|
||||
})
|
||||
}
|
||||
} else {
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
changePremType(type) {
|
||||
console.log(this.top3Data, 'this.tableData')
|
||||
if (this.premType != type) {
|
||||
this.premType = type
|
||||
if (this.dataType == 1) {
|
||||
this.getPersonPremYB()
|
||||
} else {
|
||||
this.getDeptPremYB()
|
||||
}
|
||||
}
|
||||
},
|
||||
changeDataType(type) {
|
||||
if (this.dataType != type) {
|
||||
this.dataType = type
|
||||
if (this.dataType == 1) {
|
||||
this.getPersonPremYB()
|
||||
} else {
|
||||
this.getDeptPremYB()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.mainContainer {
|
||||
background-image: url('../../assets/YB_APP/images/9.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
margin: 10px;
|
||||
width: calc(100% - 20px);
|
||||
background-color: #fff;
|
||||
}
|
||||
.imgContainer1 {
|
||||
background-image: url('../../assets/YB_APP/images/11.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
height: 48vw;
|
||||
width: 100%;
|
||||
margin-top: 10.7vw;
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
}
|
||||
.imgContainer2 {
|
||||
background-image: url('../../assets/YB_APP/images/32.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
height: 48vw;
|
||||
width: 100%;
|
||||
margin-top: 10.7vw;
|
||||
display: flex;
|
||||
align-items: flex-end;
|
||||
}
|
||||
.personal_second {
|
||||
background-image: url('../../assets/YB_APP/images/22.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
position: absolute;
|
||||
bottom: -5px;
|
||||
height: 19px;
|
||||
width: 60%;
|
||||
left: 20%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.personal_first {
|
||||
background-image: url('../../assets/YB_APP/images/23.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
position: absolute;
|
||||
bottom: -5px;
|
||||
height: 19px;
|
||||
width: 70%;
|
||||
left: 15%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
.personal_third {
|
||||
background-image: url('../../assets/YB_APP/images/24.png');
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
position: absolute;
|
||||
bottom: -5px;
|
||||
height: 19px;
|
||||
width: 60%;
|
||||
left: 20%;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
}
|
||||
th {
|
||||
height: 45px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
table tbody tr:nth-child(odd) {
|
||||
background: #fff;
|
||||
}
|
||||
table tbody tr:nth-child(even) {
|
||||
background: #f9faff;
|
||||
border-top: 1px solid #eee;
|
||||
border-bottom: 1px solid #eee;
|
||||
}
|
||||
.issueTable {
|
||||
border: 1px solid #ebedff;
|
||||
border-collapse: collapse;
|
||||
width: 100%;
|
||||
}
|
||||
td {
|
||||
text-align: center;
|
||||
padding: 5px 0px;
|
||||
line-height: 25px;
|
||||
color: #7183b3;
|
||||
border-collapse: collapse;
|
||||
}
|
||||
.myhead {
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
padding: 25px 15px;
|
||||
background: #fff;
|
||||
}
|
||||
.QJactive {
|
||||
background: #3949ac;
|
||||
color: #fff;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-left-radius: 5px;
|
||||
border-bottom-left-radius: 5px;
|
||||
border: 1px solid #3949ac;
|
||||
border-right: none;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
.GMunActice {
|
||||
background: #fff;
|
||||
color: #c1bfce;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-left-radius: 5px;
|
||||
border-bottom-left-radius: 5px;
|
||||
border: 1px solid #3949ac;
|
||||
border-right: none;
|
||||
letter-spacing: 1px;
|
||||
border-left: 1px solid #3949ac;
|
||||
}
|
||||
.QJunActice {
|
||||
background: #fff;
|
||||
color: #c1bfce;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-right-radius: 5px;
|
||||
border-bottom-right-radius: 5px;
|
||||
border: 1px solid #3949ac;
|
||||
border-left: none;
|
||||
letter-spacing: 1px;
|
||||
border-right: 1px solid #3949ac;
|
||||
}
|
||||
.GMactive {
|
||||
background: #3949ac;
|
||||
color: #fff;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-right-radius: 5px;
|
||||
border-bottom-right-radius: 5px;
|
||||
border: 1px solid #3949ac;
|
||||
border-left: none;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
.headDate {
|
||||
background: #f2f2f2;
|
||||
font-weight: bold;
|
||||
padding: 8px 15px;
|
||||
border-radius: 15px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.mainContainer_content {
|
||||
padding-top: 100px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.dataType1Active {
|
||||
background: #fff;
|
||||
color: #3949ac;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-left-radius: 5px;
|
||||
border-bottom-left-radius: 5px;
|
||||
border-right: none;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
.dataType1UnActive {
|
||||
background: #6990d0;
|
||||
color: #fff;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-left-radius: 5px;
|
||||
border-bottom-left-radius: 5px;
|
||||
border-right: none;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
.dataType2Active {
|
||||
background: #6990d0;
|
||||
color: #fff;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-right-radius: 5px;
|
||||
border-bottom-right-radius: 5px;
|
||||
border-left: none;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
.dataType2UnActive {
|
||||
background: #fff;
|
||||
color: #3949ac;
|
||||
font-weight: bold;
|
||||
font-size: 12px;
|
||||
padding: 10px 15px;
|
||||
border-top-right-radius: 5px;
|
||||
border-bottom-right-radius: 5px;
|
||||
border-left: none;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
.imgContainer1_main,
|
||||
.imgContainer2_main {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: flex-end;
|
||||
height: 100%;
|
||||
padding-bottom: 20px;
|
||||
width: 100%;
|
||||
}
|
||||
.imgContainer1_main_second,
|
||||
.imgContainer2_main_second {
|
||||
width: 35%;
|
||||
text-align: center;
|
||||
}
|
||||
.imgContainer1_main_first,
|
||||
.imgContainer2_main_first {
|
||||
width: 30%;
|
||||
text-align: center;
|
||||
}
|
||||
.imgContainer1_main_third,
|
||||
.imgContainer2_main_third {
|
||||
width: 35%;
|
||||
text-align: center;
|
||||
}
|
||||
.imgContainer1_main_part_top {
|
||||
width: 100%;
|
||||
position: relative;
|
||||
}
|
||||
.imgContainer1_main_second_bottom {
|
||||
margin: 10px;
|
||||
font-size: 12px;
|
||||
margin-bottom: 5px;
|
||||
color: #777ca4;
|
||||
}
|
||||
.imgContainer1_main_first_bottom {
|
||||
margin: 10px;
|
||||
font-size: 14px;
|
||||
margin-bottom: 5px;
|
||||
color: #9a4904;
|
||||
}
|
||||
.imgContainer1_main_third_bottom {
|
||||
margin: 10px;
|
||||
font-size: 12px;
|
||||
margin-bottom: 5px;
|
||||
color: #aa7853;
|
||||
}
|
||||
.imgContainer1_main_part_bottom_p {
|
||||
line-height: 18px;
|
||||
}
|
||||
.imgContainer2_main_second_content {
|
||||
margin: 10px 0px 0px;
|
||||
font-size: 12px;
|
||||
color: #777ca4;
|
||||
}
|
||||
.imgContainer2_main_first_content {
|
||||
margin: 10px 0px 0px;
|
||||
font-size: 14px;
|
||||
color: #9a4904;
|
||||
}
|
||||
.imgContainer2_main_third_content {
|
||||
margin: 10px 0px 0px;
|
||||
font-size: 12px;
|
||||
color: #aa7853;
|
||||
}
|
||||
.imgContainer2_main_part_bottom_p {
|
||||
line-height: 16px;
|
||||
}
|
||||
.imgContainer1_main_second_top_div {
|
||||
width: 40%;
|
||||
position: absolute;
|
||||
top: calc(50% - 15px);
|
||||
left: calc(50% - 24px);
|
||||
}
|
||||
.personal_second_p {
|
||||
font-size: 12px;
|
||||
color: #4a5688;
|
||||
font-weight: bold;
|
||||
}
|
||||
.personal_first_p {
|
||||
font-size: 14px;
|
||||
color: #8e5528;
|
||||
font-weight: bold;
|
||||
}
|
||||
.personal_third_p {
|
||||
font-size: 12px;
|
||||
color: #58320b;
|
||||
font-weight: bold;
|
||||
}
|
||||
.imgContainer1_main_first_top_div {
|
||||
width: 65%;
|
||||
position: absolute;
|
||||
top: calc(50% - 23px);
|
||||
left: calc(50% - 35px);
|
||||
}
|
||||
.imgContainer1_main_third_top_div {
|
||||
width: 40%;
|
||||
position: absolute;
|
||||
top: calc(50% - 15px);
|
||||
left: calc(50% - 24px);
|
||||
}
|
||||
.tableContent {
|
||||
border-radius: 5px;
|
||||
font-size: 14px;
|
||||
padding-bottom: 20px;
|
||||
}
|
||||
.tableContent_main {
|
||||
margin-top: 15px;
|
||||
border-radius: 10px;
|
||||
overflow: hidden;
|
||||
width: 100%;
|
||||
}
|
||||
.issueTable_tr {
|
||||
background: #4d6cc4;
|
||||
width: 100%;
|
||||
}
|
||||
.noneDataDiv {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
height: 300px;
|
||||
position: relative;
|
||||
width: 100%;
|
||||
}
|
||||
.noneDataDiv_span {
|
||||
position: absolute;
|
||||
bottom: 80px;
|
||||
left: calc(50% - 33px);
|
||||
}
|
||||
</style>
|
||||
697
src/views/YB_APP/home.vue
Normal file
@@ -0,0 +1,697 @@
|
||||
<template>
|
||||
<div class="public_container" :style="{paddingTop:marginTop+'px'}">
|
||||
<van-pull-refresh v-model="isLoading" @refresh="onRefresh">
|
||||
|
||||
<div class="head">
|
||||
<van-swipe :autoplay="3000" style="width: 100%;">
|
||||
<van-swipe-item v-for="(item, index) in activity" :key="index" @touchstart="touchstart" @touchmove="touchmove" @touchend="touchend(item)">
|
||||
<!-- <img :src="config.assetsUrl + item.img + '?v=' + thisGetTime" /> -->
|
||||
<img :src="item.img">
|
||||
</van-swipe-item>
|
||||
</van-swipe>
|
||||
</div>
|
||||
|
||||
<div class="iconPart1">
|
||||
<van-notice-bar
|
||||
:left-icon="png8"
|
||||
:text='getCodeValue'
|
||||
/>
|
||||
</div>
|
||||
|
||||
<div class="top">
|
||||
<div class="menu" v-for="(item, ind) in homePageIcon" :key="ind" @click="goDetail(item)">
|
||||
<div class="menuImg">
|
||||
<img :src="item.img">
|
||||
</div>
|
||||
<span class="menuName">{{ item.title }}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con">
|
||||
<div class="echarts_con_head">
|
||||
<span class="echarts_con_head_tit">
|
||||
<img src="@/assets/YB_APP/images/1.png">
|
||||
<span class="echarts_con_head_tit_span">个人保费排行榜</span>
|
||||
</span>
|
||||
<span class="echarts_con_head_date">
|
||||
{{calendarValue}}
|
||||
</span>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_buttonPart">
|
||||
<span @click="changePersonalType('1')" v-if="activePersonalType == '1'" class="echarts_con_buttonPart_one">期交保费</span>
|
||||
<span @click="changePersonalType('1')" v-if="activePersonalType == '2'" class="echarts_con_buttonPart_two">期交保费</span>
|
||||
<span @click="changePersonalType('2')" v-if="activePersonalType == '2'" class="echarts_con_buttonPart_three">总保费</span>
|
||||
<span @click="changePersonalType('2')" v-if="activePersonalType == '1'" class="echarts_con_buttonPart_four">总保费</span>
|
||||
</div>
|
||||
|
||||
<div v-if="activePersonalType == '1' && ebizPremRankGMList.length != 0">
|
||||
<div class="echarts_con_main" v-if="ebizPremRankGMList.length >= 1">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #ffc71f;color: #fff;">{{ebizPremRankGMList[0].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankGMList[0].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankGMList0" ref="ebizPremRankGMList0"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankGMList[0].prem <= 5, 'colorTwo': ebizPremRankGMList[0].prem > 5, 'colorOne': ebizPremRankGMList[0].prem >= 20 }" class="echarts_prem">{{ebizPremRankGMList[0].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankGMList.length >= 2">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #c0d4f4;color: #fff;">{{ebizPremRankGMList[1].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankGMList[1].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankGMList1" ref="ebizPremRankGMList1"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankGMList[1].prem <= 5, 'colorTwo': ebizPremRankGMList[1].prem > 5, 'colorOne': ebizPremRankGMList[1].prem >= 20 }" class="echarts_prem">{{ebizPremRankGMList[1].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankGMList.length >= 3">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #c9b394;color: #fff;">{{ebizPremRankGMList[2].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankGMList[2].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankGMList2" ref="ebizPremRankGMList2"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankGMList[2].prem <= 5, 'colorTwo': ebizPremRankGMList[2].prem > 5, 'colorOne': ebizPremRankGMList[2].prem >= 20 }" class="echarts_prem">{{ebizPremRankGMList[2].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankGMList.length >= 4">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #f6f6f6;color: #959595;">{{ebizPremRankGMList[3].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankGMList[3].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankGMList3" ref="ebizPremRankGMList3"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankGMList[3].prem <= 5, 'colorTwo': ebizPremRankGMList[3].prem > 5, 'colorOne': ebizPremRankGMList[3].prem >= 20 }" class="echarts_prem">{{ebizPremRankGMList[3].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankGMList.length >= 5">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #f6f6f6;color: #959595;">{{ebizPremRankGMList[4].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankGMList[4].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankGMList4" ref="ebizPremRankGMList4"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankGMList[4].prem <= 5, 'colorTwo': ebizPremRankGMList[4].prem > 5, 'colorOne': ebizPremRankGMList[4].prem >= 20 }" class="echarts_prem">{{ebizPremRankGMList[4].prem}}万</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="activePersonalType == '1' && ebizPremRankGMList.length == 0">
|
||||
<img style="width:100%;" src="@/assets/YB_APP/images/7-1.png">
|
||||
</div>
|
||||
|
||||
<div v-if="activePersonalType == '2' && ebizPremRankQJList.length != 0">
|
||||
<div class="echarts_con_main" v-if="ebizPremRankQJList.length >= 1">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #ffc71f;color: #fff;">{{ebizPremRankQJList[0].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankQJList[0].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankQJList0" ref="ebizPremRankQJList0"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankQJList[0].prem <= 5, 'colorTwo': ebizPremRankQJList[0].prem > 5, 'colorOne': ebizPremRankQJList[0].prem >= 20 }" class="echarts_prem">{{ebizPremRankQJList[0].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankQJList.length >= 2">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #c0d4f4;color: #fff;">{{ebizPremRankQJList[1].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankQJList[1].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankQJList1" ref="ebizPremRankQJList1"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankQJList[1].prem <= 5, 'colorTwo': ebizPremRankQJList[1].prem > 5, 'colorOne': ebizPremRankQJList[1].prem >= 20 }" class="echarts_prem">{{ebizPremRankQJList[1].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankQJList.length >= 3">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #c9b394;color: #fff;">{{ebizPremRankQJList[2].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankQJList[2].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankQJList2" ref="ebizPremRankQJList2"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankQJList[2].prem <= 5, 'colorTwo': ebizPremRankQJList[2].prem > 5, 'colorOne': ebizPremRankQJList[2].prem >= 20 }" class="echarts_prem">{{ebizPremRankQJList[2].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankQJList.length >= 4">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #f6f6f6;color: #959595;">{{ebizPremRankQJList[3].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankQJList[3].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankQJList3" ref="ebizPremRankQJList3"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankQJList[3].prem <= 5, 'colorTwo': ebizPremRankQJList[3].prem > 5, 'colorOne': ebizPremRankQJList[3].prem >= 20 }" class="echarts_prem">{{ebizPremRankQJList[3].prem}}万</div>
|
||||
</div>
|
||||
|
||||
<div class="echarts_con_main" v-if="ebizPremRankQJList.length >= 5">
|
||||
<div class="echarts_con_main_part1">
|
||||
<span class="echarts_con_main_part1_span1" style="background: #f6f6f6;color: #959595;">{{ebizPremRankQJList[4].manageCom3.substring(0,2)}}</span>
|
||||
<span class="echarts_con_main_part1_span2">{{ebizPremRankQJList[4].agentName}}</span>
|
||||
</div>
|
||||
<div class="mySelfEcharts_con">
|
||||
<div class="ebizPremRankQJList4" ref="ebizPremRankQJList4"></div>
|
||||
</div>
|
||||
<div v-bind:class="{ 'colorThree': ebizPremRankQJList[4].prem <= 5, 'colorTwo': ebizPremRankQJList[4].prem > 5, 'colorOne': ebizPremRankQJList[4].prem >= 20 }" class="echarts_prem">{{ebizPremRankQJList[4].prem}}万</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-if="activePersonalType == '2' && ebizPremRankQJList.length == 0">
|
||||
<img style="width:100%;" src="@/assets/YB_APP/images/7.png">
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="table_con">
|
||||
<div class="table_con_main">
|
||||
<span class="table_con_main_span">
|
||||
<img src="@/assets/YB_APP/images/6.png">
|
||||
<span class="table_con_main_span_name">实时出单榜</span>
|
||||
</span>
|
||||
<span style="color: #959595;">
|
||||
数据截止时间 {{currentTime}}
|
||||
</span>
|
||||
</div>
|
||||
<div class="tableDiv">
|
||||
<table border="1" class="issueTable" style="width:100%;">
|
||||
<tr style="background:#4d6cc4;width: 100%;">
|
||||
<th style="width: 13%;">时间</th>
|
||||
<th style="width: 13%;">分公司</th>
|
||||
<th style="width: 13%;">机构</th>
|
||||
<th style="width: 18%;">营业部</th>
|
||||
<th style="width: 13%;">姓名</th>
|
||||
<th style="width: 17%;">产品名称</th>
|
||||
<th style="width: 13%;">保费</th>
|
||||
</tr>
|
||||
<tbody>
|
||||
<tr v-if="tableData.length!=0" v-for="item in tableData">
|
||||
<td>{{item.acceptTime}}</td>
|
||||
<td>{{item.companyName}}</td>
|
||||
<td>{{item.orgName}}</td>
|
||||
<td>{{item.deptName}}</td>
|
||||
<td>{{item.agentName}}</td>
|
||||
<td>{{item.productName}}</td>
|
||||
<td v-bind:class="{ 'colorThree': item.prem <= 5, 'colorTwo': item.prem > 5, 'colorOne': item.prem >= 20 }" style="white-space: nowrap;overflow: hidden;text-overflow: ellipsis;">{{item.prem}}万</td>
|
||||
</tr>
|
||||
</tbody>
|
||||
</table>
|
||||
<div v-if="tableData.length == 0" class="noneDataDiv">
|
||||
<img style="width:60%" src="@/assets/YB_APP/images/43-1.png">
|
||||
<span class="noneDataDiv_span">暂无数据</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</van-pull-refresh>
|
||||
<van-popup v-model="calendarShow" position="bottom">
|
||||
<van-datetime-picker
|
||||
v-model="currentDate"
|
||||
type="date"
|
||||
title="选择日期"
|
||||
:min-date="minDate"
|
||||
:max-date="maxDate"
|
||||
@cancel="handleCurrentDateCancel"
|
||||
@confirm="handleCurrentDateConfirm"
|
||||
/>
|
||||
</van-popup>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { homeConfigYB, getPremRankList, timelyContYB } from '@/api/YB_APP/index'
|
||||
import { Swipe, SwipeItem, NoticeBar, Icon, Popup, DatetimePicker, PullRefresh ,Toast } from 'vant'
|
||||
import config from '@/config'
|
||||
import png8 from '@/assets/YB_APP/images/8.png';
|
||||
import utils from '@/assets/js/utils/date-utils'
|
||||
export default {
|
||||
name: 'Home',
|
||||
components: {
|
||||
[Swipe.name]: Swipe,
|
||||
[SwipeItem.name]: SwipeItem,
|
||||
[NoticeBar.name]: NoticeBar,
|
||||
[Icon.name]: Icon,
|
||||
[Popup.name]: Popup,
|
||||
[PullRefresh.name]:PullRefresh,
|
||||
[Toast.name]:Toast ,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
config,
|
||||
currentDate:new Date(),
|
||||
currentTime:'',
|
||||
marginTop:'80',
|
||||
getCodeValue:'',
|
||||
png8,
|
||||
activity: [],
|
||||
homePageIcon:[],
|
||||
ebizPremRankGMList:[],
|
||||
ebizPremRankQJList:[],
|
||||
tableData:[],
|
||||
activePersonalType:'1',
|
||||
calendarShow:false,
|
||||
minDate: new Date(2019, 1, 1),
|
||||
maxDate: new Date(2030, 12, 31),
|
||||
calendarValue:'',
|
||||
colorOne:false,
|
||||
colorTwo:false,
|
||||
colorThree:false,
|
||||
thisValue:'12.9',
|
||||
clickFlag:false,
|
||||
count: 0,
|
||||
isLoading: false,
|
||||
}
|
||||
},
|
||||
mounted(){
|
||||
this.currentTime = this.getNowDate()
|
||||
let monthNum = new Date().getMonth()+1
|
||||
let daysNum = new Date().getDate()
|
||||
// if(monthNum < 10){
|
||||
// monthNum = '0' + monthNum
|
||||
// }
|
||||
// if(daysNum < 10){
|
||||
// daysNum = '0' + daysNum
|
||||
// }
|
||||
this.calendarValue = monthNum +'月'+daysNum+'日'
|
||||
this.getHomeConfigYB()
|
||||
this.getPremRankList()
|
||||
this.getTimelyContYB()
|
||||
console.log(monthNum,'我是monthNum');
|
||||
console.log(daysNum,'daysNum');
|
||||
|
||||
this.setMarginTop()
|
||||
if(this.thisValue >= 10){
|
||||
this.colorOne = true
|
||||
}
|
||||
else if(this.thisValue >= 5 && this.thisValue < 10){
|
||||
this.colorTwo = true
|
||||
}
|
||||
else if(this.thisValue < 5){
|
||||
this.colorThree = true
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
handleCurrentDateCancel() {
|
||||
this.calendarShow = false
|
||||
},
|
||||
handleCurrentDateConfirm(e) {
|
||||
this.calendarShow = false
|
||||
// let titleTime = utils.formatDate(e, 'yyyy-MM')
|
||||
// this.calendarValue = utils.formatDate(e, 'MM-dd')
|
||||
let monthNum = utils.formatDate(e, 'MM')
|
||||
let daysNum = utils.formatDate(e, 'dd')
|
||||
this.calendarValue = monthNum+'月'+daysNum+'日'
|
||||
this.getPremRankList()
|
||||
},
|
||||
getNowDate(){
|
||||
let date = new Date();
|
||||
let sign2 = ":";
|
||||
let year = date.getFullYear() // 年
|
||||
let month = date.getMonth() + 1; // 月
|
||||
let day = date.getDate(); // 日
|
||||
let hour = date.getHours(); // 时
|
||||
let minutes = date.getMinutes(); // 分
|
||||
let seconds = date.getSeconds() //秒
|
||||
let weekArr = ['星期一', '星期二', '星期三', '星期四', '星期五', '星期六', '星期天'];
|
||||
let week = weekArr[date.getDay()];
|
||||
// 给一位数的数据前面加 “0”
|
||||
if (month >= 1 && month <= 9) {
|
||||
month = "0" + month;
|
||||
}
|
||||
if (day >= 0 && day <= 9) {
|
||||
day = "0" + day;
|
||||
}
|
||||
if (hour >= 0 && hour <= 9) {
|
||||
hour = "0" + hour;
|
||||
}
|
||||
if (minutes >= 0 && minutes <= 9) {
|
||||
minutes = "0" + minutes;
|
||||
}
|
||||
if (seconds >= 0 && seconds <= 9) {
|
||||
seconds = "0" + seconds;
|
||||
}
|
||||
return year + "-" + month + "-" + day + " " + hour + sign2 + minutes;
|
||||
},
|
||||
setMarginTop(){
|
||||
EWebBridge.webCallAppInJs("top_bar_height").then(data => {
|
||||
console.log(data,'top_bar_height')
|
||||
if(data){
|
||||
// 获取高度成功
|
||||
let height = data.height
|
||||
// 设置高度
|
||||
this.marginTop = height + 10
|
||||
}
|
||||
})
|
||||
},
|
||||
getHomeConfigYB(){
|
||||
let params = {
|
||||
|
||||
}
|
||||
homeConfigYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.activity = res.content.activity
|
||||
if(res.content.getCodeValue.length!=0){
|
||||
res.content.getCodeValue.forEach(item=>{
|
||||
this.getCodeValue += item + ' '
|
||||
})
|
||||
}
|
||||
this.homePageIcon = res.content.icon.homePageIcon
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getPremRankList(){
|
||||
let params = {}
|
||||
getPremRankList(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
if(res.content.ebizPremRankGMList){
|
||||
this.ebizPremRankGMList = res.content.ebizPremRankGMList
|
||||
}
|
||||
if(res.content.ebizPremRankQJList){
|
||||
this.ebizPremRankQJList = res.content.ebizPremRankQJList
|
||||
}
|
||||
|
||||
this.$nextTick(() => {
|
||||
this.setAnimation()
|
||||
})
|
||||
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getTimelyContYB(){
|
||||
let params = {}
|
||||
timelyContYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.tableData = res.content
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
changePersonalType(type){
|
||||
this.activePersonalType = type
|
||||
this.$nextTick(() => {
|
||||
this.setAnimation()
|
||||
})
|
||||
},
|
||||
calendarOnConfirm(value){
|
||||
this.calendarShow = false
|
||||
this.calendarValue = `${value.getMonth() + 1}月${value.getDate()}日`
|
||||
},
|
||||
clickCalendar(){
|
||||
this.calendarShow = true
|
||||
},
|
||||
setAnimation(){
|
||||
if(this.activePersonalType == 1 && this.ebizPremRankGMList.length != 0){
|
||||
this.ebizPremRankGMList.forEach((item,index)=>{
|
||||
let ruleTrue1 = ` @keyframes changeWidth`+[index]+` { 0% {width: 0%;} 100% {width: `+item.prem/this.ebizPremRankGMList[0].prem*100+`%;} }`
|
||||
let sheet1 = document.styleSheets[0]
|
||||
sheet1.insertRule(ruleTrue1, 0)
|
||||
this.$refs['ebizPremRankGMList'+index].style.width = parseInt(item.prem/this.ebizPremRankGMList[0].prem*100)+'%'
|
||||
this.$refs['ebizPremRankGMList'+index].style.animation = "changeWidth"+index+" 2s forwards"
|
||||
})
|
||||
}
|
||||
|
||||
if(this.activePersonalType == 2 && this.ebizPremRankQJList.length != 0){
|
||||
this.ebizPremRankQJList.forEach((item,index)=>{
|
||||
let ruleTrue2 = ` @keyframes changeTotalWidth`+[index]+` { 0% {width: 0%;} 100% {width: `+item.prem/this.ebizPremRankQJList[0].prem*100+`%;} }`
|
||||
let sheet2 = document.styleSheets[0]
|
||||
sheet2.insertRule(ruleTrue2, 0)
|
||||
this.$refs['ebizPremRankQJList'+index].style.width = parseInt(item.prem/this.ebizPremRankQJList[0].prem*100)+'%'
|
||||
this.$refs['ebizPremRankQJList'+index].style.animation = "changeTotalWidth"+index+" 2s forwards"
|
||||
})
|
||||
}
|
||||
},
|
||||
goDetail(data){
|
||||
console.log(data)
|
||||
// if(data.route != null){
|
||||
// window.location.href = 'http://www.baidu.com'
|
||||
// }else{
|
||||
// this.$toast('暂未开放')
|
||||
// }
|
||||
if(data.title == '业绩查询'){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/performanceQuery',
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/performanceQuery',
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
if(data.title == '上头条'){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/hitTheHeadlines',
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/hitTheHeadlines',
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
if(data.title == '续期管理'){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/renewalList',
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/renewalList',
|
||||
},
|
||||
})
|
||||
}
|
||||
if(data.title == '保全中心'){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/saveallList',
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/saveallList',
|
||||
},
|
||||
})
|
||||
}
|
||||
|
||||
},
|
||||
touchstart(){
|
||||
this.clickFlag = true
|
||||
},
|
||||
touchmove(){
|
||||
this.clickFlag = false
|
||||
},
|
||||
touchend(data){
|
||||
if(this.clickFlag){
|
||||
let dataURL = JSON.parse(data.route).extra.url
|
||||
if(dataURL){
|
||||
let thisRoute = dataURL.substring(dataURL.lastIndexOf("/#")+2)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#' + thisRoute,
|
||||
},
|
||||
routerInfo: {
|
||||
path: thisRoute,
|
||||
},
|
||||
})
|
||||
}
|
||||
}
|
||||
},
|
||||
// 下拉刷新
|
||||
onRefresh() {
|
||||
setTimeout(() => {
|
||||
Toast('刷新成功');
|
||||
this.isLoading = false;
|
||||
location. reload()
|
||||
}, 1000);
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container{
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
background-image: url("../../assets/YB_APP/images/2-1.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
.head {
|
||||
position: relative;
|
||||
margin: 10px;border-radius: 5px;
|
||||
/*box-shadow: 0px 5px 8px 0px #7a6fc1;*/
|
||||
img {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
border-radius: 5px;
|
||||
}
|
||||
/deep/ .van-swipe-item{
|
||||
height: auto;
|
||||
}
|
||||
}
|
||||
/deep/ .van-notice-bar{
|
||||
border-radius: 5px;
|
||||
}
|
||||
.menuImg{
|
||||
width:100%;display: flex;justify-content: center;margin-bottom: 5px;
|
||||
/deep/ img{
|
||||
width: 30px;
|
||||
height: 30px;
|
||||
}
|
||||
}
|
||||
.ebizPremRankGMList0,.ebizPremRankGMList1,.ebizPremRankGMList2,.ebizPremRankGMList3,.ebizPremRankGMList4,.ebizPremRankQJList0,.ebizPremRankQJList1,.ebizPremRankQJList2,.ebizPremRankQJList3,.ebizPremRankQJList4{
|
||||
border-top-left-radius: 2px;
|
||||
border-bottom-left-radius: 2px;
|
||||
border-top-right-radius: 8px;
|
||||
border-bottom-right-radius: 8px;
|
||||
height: 14px;
|
||||
background-image: linear-gradient(-90deg, #abbcff, #768bfe);
|
||||
transition-timing-function: ease-out;
|
||||
}
|
||||
|
||||
th{
|
||||
height: 45px;
|
||||
color: #fff;
|
||||
}
|
||||
|
||||
table tbody tr:nth-child(odd){
|
||||
background: #fff;
|
||||
}
|
||||
table tbody tr:nth-child(even){
|
||||
background: #f9faff;
|
||||
}
|
||||
.issueTable{
|
||||
border: 1px solid #ebedff;
|
||||
border-collapse:collapse;
|
||||
}
|
||||
td{
|
||||
text-align: center;
|
||||
padding: 5px 0px;
|
||||
line-height: 25px;
|
||||
color: #7183b3;
|
||||
border: 1px solid #ebedff;
|
||||
border-collapse:collapse;
|
||||
}
|
||||
.colorThree{
|
||||
color: #333;
|
||||
}
|
||||
.colorTwo{
|
||||
color: #e1801d;
|
||||
}
|
||||
.colorOne{
|
||||
color: #e51f14;
|
||||
}
|
||||
/deep/ .van-notice-bar{
|
||||
background: linear-gradient(#f4f6ff,#fff);
|
||||
color: #333;
|
||||
letter-spacing: 1px;
|
||||
}
|
||||
/deep/ .van-icon__image{
|
||||
width: 100%;
|
||||
}
|
||||
/deep/ .van-notice-bar__left-icon{
|
||||
width: 50px;
|
||||
}
|
||||
/deep/ .van-notice-bar__wrap{
|
||||
margin-left: 10px;
|
||||
}
|
||||
.noneDataDiv{
|
||||
display:flex;justify-content:center;align-items:center;height:300px;position:relative;width:100%;
|
||||
}
|
||||
.noneDataDiv_span{
|
||||
position:absolute;bottom:80px;left:calc(50% - 33px);
|
||||
}
|
||||
/deep/ .van-swipe-item{
|
||||
img{
|
||||
height:145px;
|
||||
}
|
||||
}
|
||||
.iconPart1{
|
||||
margin: 10px;border-radius: 5px;
|
||||
}
|
||||
.top{
|
||||
display:flex;justify-content: space-between;margin: 10px;background: #fff;border-radius: 5px;align-items: center;padding: 15px;
|
||||
}
|
||||
.echarts_con{
|
||||
margin: 10px;background: #fff;border-radius: 5px;padding: 15px;
|
||||
}
|
||||
.echarts_con_head{
|
||||
display:flex;justify-content: space-between;align-items: center;
|
||||
}
|
||||
.echarts_con_head_tit{
|
||||
display:flex;align-items: center;
|
||||
}
|
||||
.echarts_con_head_tit_span{
|
||||
margin-left: 10px;font-size: 16px;font-weight: bold;
|
||||
}
|
||||
.echarts_con_head_date{
|
||||
color: #2a409d;border:lpx solid #eee;padding: 6px 12px;border-radius: 15px;background: #f4f6ff;cursor: pointer;font-weight: bold;
|
||||
}
|
||||
.echarts_con_buttonPart{
|
||||
margin:15px 0px;
|
||||
}
|
||||
.echarts_con_buttonPart_one{
|
||||
padding: 8px;border-radius: 5px;background: #f6f6f6;font-weight: bold;cursor: pointer;
|
||||
}
|
||||
.echarts_con_buttonPart_two{
|
||||
padding: 8px;border-radius: 5px;color: #8e8e8e;cursor: pointer;
|
||||
}
|
||||
.echarts_con_buttonPart_three{
|
||||
padding: 8px;border-radius: 5px;background: #f6f6f6;margin-left: 10px;font-weight: bold;cursor: pointer;
|
||||
}
|
||||
.echarts_con_buttonPart_four{
|
||||
padding: 8px;border-radius: 5px;color: #8e8e8e;margin-left: 10px;cursor: pointer;
|
||||
}
|
||||
.echarts_con_main{
|
||||
display: flex;align-items: center;font-size:12px;
|
||||
}
|
||||
.echarts_con_main_part1{
|
||||
width:100px;
|
||||
}
|
||||
.echarts_con_main_part1_span1{
|
||||
padding: 3px 8px;border-radius: 10px;
|
||||
}
|
||||
.mySelfEcharts_con{
|
||||
width:calc(100% - 150px);
|
||||
margin: 10px 0px;
|
||||
display: flex;
|
||||
background:#f4f6ff;
|
||||
border-top-left-radius: 2px;
|
||||
border-bottom-left-radius: 2px;
|
||||
border-top-right-radius: 8px;
|
||||
border-bottom-right-radius: 8px;
|
||||
}
|
||||
.echarts_prem{
|
||||
width: 60px;text-align: right;font-weight: bold;
|
||||
}
|
||||
.echarts_con_main_part1_span2{
|
||||
margin-left:8px;font-weight: bold;color: #333;
|
||||
}
|
||||
.table_con{
|
||||
margin: 10px;background: #fff;border-radius: 5px;padding: 15px;margin-bottom: 20px;
|
||||
}
|
||||
.table_con_main{
|
||||
display:flex;justify-content: space-between;align-items: center;
|
||||
}
|
||||
.table_con_main_span{
|
||||
display:flex;align-items: center;
|
||||
}
|
||||
.table_con_main_span_name{
|
||||
margin-left: 10px;font-size: 16px;font-weight: bold;
|
||||
}
|
||||
.tableDiv{
|
||||
margin-top: 15px;border-radius: 10px;overflow: hidden;width: 100%;
|
||||
}
|
||||
</style>
|
||||
208
src/views/YB_APP/mine.vue
Normal file
@@ -0,0 +1,208 @@
|
||||
<template>
|
||||
<div class="public_container" style="position: relative;">
|
||||
<p style="position: absolute;top: 50px;right: 15px;" @click="messageJump">
|
||||
<img v-if="!messages" style="width:20px;" src="@/assets/YB_APP/images/3.png">
|
||||
<img v-if="messages" style="width:20px;" src="@/assets/YB_APP/images/4.png">
|
||||
</p>
|
||||
|
||||
<div style="display:flex;justify-content: flex-start;padding: 65px 15px 15px 20px;align-items: center;">
|
||||
<div style="width:60px;">
|
||||
<img v-if="!userInfo.agentHeadImgUrl" style="width:100%;border-radius: 30px;" src="@/assets/YB_APP/images/5.png" @click="uploadHeadImage()">
|
||||
<img v-if="userInfo.agentHeadImgUrl" style="width:100%;border-radius: 30px;" :src="userInfo.agentHeadImgUrl" @click="uploadHeadImage()">
|
||||
</div>
|
||||
<div style="margin-left:15px;">
|
||||
<p style="color:#fff;padding: 3px;display: flex;align-items: center;justify-content: flex-start;">
|
||||
<span style="font-size:20px;margin-right: 15px;font-weight: bold;">{{ userInfo.agentName | encryCheckModelName }}</span>
|
||||
<span style="display:flex;background: linear-gradient(90deg, #fae6b3, #f8c87a);justify-content: center;align-items: center;color: #795828;font-size: 12px;line-height: 20px;font-weight: bold;padding: 0px 10px;border-top-left-radius: 10px;border-bottom-right-radius: 10px;">{{userInfo.agentGrade}}</span>
|
||||
</p>
|
||||
<p style="color:#e9e9e9;padding: 3px;">
|
||||
<span>工号</span>
|
||||
<span style="margin:0px 5px;">|</span>
|
||||
<span>{{userInfo.agentCode}}</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="menu1" style="margin: 15px;background: linear-gradient(#dce2fb 10%, #fff 70%);border-radius: 5px;padding: 10px;margin-top: 5px;">
|
||||
<div style="display: flex;justify-content: space-around;align-items: center;height: 100%;">
|
||||
<div style="text-align:center;position: relative;width: 33.3%;">
|
||||
<p style="line-height: 40px;font-size: 18px;font-weight: bold;">{{userInfo.companyName}}</p>
|
||||
<p style="line-height:30px;">分公司</p>
|
||||
<div style="position:absolute;right: 0px;width: 1px;background: #eee;top: calc(50% - 10px);height: 20px;"></div>
|
||||
</div>
|
||||
<div style="text-align:center;position: relative;width: 33.3%;">
|
||||
<p style="line-height: 40px;font-size: 18px;font-weight: bold;">{{userInfo.manageComName}}</p>
|
||||
<p style="line-height:30px;">机构</p>
|
||||
<div style="position:absolute;right: 0px;width: 1px;background: #eee;top: calc(50% - 10px);height: 20px;"></div>
|
||||
</div>
|
||||
<div style="text-align:center;position: relative;width: 33.3%;">
|
||||
<p style="line-height: 40px;font-size: 18px;font-weight: bold;">{{userInfo.unitName}}</p>
|
||||
<p style="line-height:30px;">营业部</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="menu1" style="margin: 15px;background: #fff;border-radius: 5px;padding: 8px;margin-top: 5px;">
|
||||
<van-cell v-for="(item,index) in menu1" is-link @click="pageJump(item)">
|
||||
<template #title>
|
||||
<div style="display:flex;align-items: center;">
|
||||
<img style="width:20px;" :src="item.img">
|
||||
<span class="custom-title" style="margin-left:10px;">{{item.name}}</span>
|
||||
</div>
|
||||
</template>
|
||||
</van-cell>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Icon, Cell } from 'vant'
|
||||
import { homeConfigYB, mineConfigYB, getAgentInfoByAgentCode } from '@/api/YB_APP/index'
|
||||
import imagePath from '@/assets/YB_APP/images/25.png'
|
||||
export default {
|
||||
name: 'mine',
|
||||
components: {
|
||||
[Icon.name]: Icon,
|
||||
[Cell.name]: Cell,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
messages:false,
|
||||
userInfo:{},
|
||||
menu1:[],
|
||||
imagePath: imagePath //新头像URL
|
||||
}
|
||||
},
|
||||
mounted(){
|
||||
this.getHomeConfigYB()
|
||||
this.getMineConfigYB()
|
||||
window['getMessage'] = (data) => {
|
||||
this.getMessage(data)
|
||||
}
|
||||
},
|
||||
methods:{
|
||||
getMessage(data){
|
||||
if(data){
|
||||
console.log('111')
|
||||
this.messages = true
|
||||
}else{
|
||||
this.messages = false
|
||||
}
|
||||
},
|
||||
getMineConfigYB(){
|
||||
let params = {
|
||||
|
||||
}
|
||||
mineConfigYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log(res)
|
||||
this.userInfo = res.content
|
||||
}else if(res.result == 1){
|
||||
console.log('aaaaa');
|
||||
this.getAgentInfoByAgentCode()
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getAgentInfoByAgentCode(){
|
||||
let params = {
|
||||
|
||||
}
|
||||
getAgentInfoByAgentCode(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.userInfo = res.content
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getHomeConfigYB(){
|
||||
let params = {
|
||||
|
||||
}
|
||||
|
||||
homeConfigYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log(res)
|
||||
if(res.content.icon){
|
||||
res.content.icon.myPageIcon.forEach(item=>{
|
||||
this.menu1.push({
|
||||
name:item.title,
|
||||
img:item.img,
|
||||
route:item.route
|
||||
})
|
||||
})
|
||||
}
|
||||
}
|
||||
else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
uploadHeadImage(){
|
||||
EWebBridge.webCallAppInJs("head_image").then(data => {
|
||||
console.log(data,'head_image')
|
||||
let uploadResult = JSON.parse(data)
|
||||
if(uploadResult.code==0){
|
||||
// 头像上传成功
|
||||
let uploadData = uploadResult.content
|
||||
// 新头像URL
|
||||
this.userInfo.agentHeadImgUrl = uploadData.imageUrl
|
||||
} else if(uploadResult.code==1) {
|
||||
//头像选择或上传失败 错误信息
|
||||
let errorMessage = uploadResult.message
|
||||
this.$toast(errorMessage)
|
||||
// 提示异常信息
|
||||
// 用户选择了头像预览
|
||||
}
|
||||
})
|
||||
},
|
||||
messageJump(){
|
||||
this.$jump({
|
||||
flag: 'message'
|
||||
})
|
||||
},
|
||||
pageJump(data){
|
||||
if(data.name != '设置'){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + data.route,
|
||||
},
|
||||
routerInfo: {
|
||||
path: data.route,
|
||||
},
|
||||
})
|
||||
}else{
|
||||
this.$jump({
|
||||
flag: 'setting'
|
||||
})
|
||||
}
|
||||
},
|
||||
},
|
||||
filters: {
|
||||
encryCheckModelName(code) {
|
||||
// if(code.length > 2){
|
||||
// return code.replace(/(?<=[\u4e00-\u9fa5]).*(?=[\u4e00-\u9fa5])/, "*")
|
||||
// }else{
|
||||
if(code){
|
||||
return code.replace(/.*(?=[\u4e00-\u9fa5])/, "*")
|
||||
}
|
||||
|
||||
// }
|
||||
}
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container{
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
background-image: url("../../assets/YB_APP/images/26.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
</style>
|
||||
819
src/views/YB_APP/performanceQuery.vue
Normal file
@@ -0,0 +1,819 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<div class="myhead">
|
||||
<div>
|
||||
<span class="QJactive" v-if="premType == 'QJ'" @click="changePremType('QJ')">首期业务</span>
|
||||
<span class="GMunActice" v-if="premType == 'GM'" @click="changePremType('QJ')">首期业务</span>
|
||||
<span class="QJunActice" v-if="premType == 'QJ'" @click="changePremType('GM')">渠道网点数据</span>
|
||||
<span class="GMactive" v-if="premType == 'GM'" @click="changePremType('GM')">渠道网点数据</span>
|
||||
</div>
|
||||
<div>
|
||||
<span @click="clickCalendar" class="headDate">{{calendarValue}} ▼</span>
|
||||
</div>
|
||||
</div>
|
||||
<div v-show="premType == 'QJ'" class="mainContainerQJ">
|
||||
<p class="mainContainer_title">
|
||||
<img class="mainContainer_title_img" src="@/assets/YB_APP/images/33.png">
|
||||
<span class="mainContainer_title_span">首期规模保费</span>
|
||||
</p>
|
||||
<div v-show="echartsData.length != 0" class="echartsContent">
|
||||
<div class="incomeChart" ref="incomeChart" id="incomeChartId" @click="parentsEvent"></div>
|
||||
</div>
|
||||
|
||||
<div v-if="echartsData.length == 0">
|
||||
<img class="mainContainer_title_noData_img" src="@/assets/YB_APP/images/39.png">
|
||||
<p class="mainContainer_title_noData_p">暂无保费,继续努力吧~</p>
|
||||
</div>
|
||||
|
||||
<div v-if="echartsData.length != 0" class="echartsIconContent">
|
||||
<div class="echartsIconContent_main">
|
||||
<div v-for="(item,index) in echartsData" class="echartsDatalist">
|
||||
<div v-if="activeProductIndex == item.thisId" style="background:#fff;">
|
||||
<div class="activeProductContent">
|
||||
<p class="echartsDatalist_p" style="color:#000;font-weight:bold;">{{item.value}}万元</p>
|
||||
<p class="echartsDatalist_p"><span class="productName_p" :style='{background:item.color}'></span>{{item.name}}</p>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="activeProductIndex != item.thisId" style="background:#fafafc;">
|
||||
<div class="unActiveProductContent">
|
||||
<p class="echartsDatalist_p" style="color:#000;font-weight:bold;">{{item.value}}万元</p>
|
||||
<p class="echartsDatalist_p"><span class="productName_p" :style="{background:item.color}"></span>{{item.name}}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div></div>
|
||||
|
||||
<div class="otherContent">
|
||||
<div class="otherContent_con">
|
||||
<p class="otherContent_con_title">
|
||||
<img class="otherContent_con_title_img" src="@/assets/YB_APP/images/34.png">
|
||||
<span class="otherContent_con_title_span">人力指标</span>
|
||||
</p>
|
||||
<div style="display:flex;">
|
||||
<div class="otherContent_con_one">
|
||||
<div>
|
||||
<p v-if="qjrlFlag == 1" class="otherContent_con_top_p">
|
||||
<span style="color:green;">达标</span>
|
||||
<img class="otherContent_con_one_img" src="@/assets/YB_APP/images/40.png">
|
||||
</p>
|
||||
<p v-if="qjrlFlag == 0" class="otherContent_con_top_p">
|
||||
<span style="color:#cf3d52;">未达标</span>
|
||||
<img class="otherContent_con_one_img" src="@/assets/YB_APP/images/38.png">
|
||||
</p>
|
||||
<p class="otherContent_con_bottom_p">
|
||||
<span>期交活动人力</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="otherContent_con_two" style="margin-left:2%;">
|
||||
<div>
|
||||
<p v-if="ggrlFlag == 1" class="otherContent_con_top_p">
|
||||
<span style="color:green;">达标</span>
|
||||
<img class="otherContent_con_one_img" src="@/assets/YB_APP/images/40.png">
|
||||
</p>
|
||||
<p v-if="ggrlFlag == 0" class="otherContent_con_top_p">
|
||||
<span style="color:#cf3d52;">未达标</span>
|
||||
<img class="otherContent_con_one_img" src="@/assets/YB_APP/images/38.png">
|
||||
</p>
|
||||
<p class="otherContent_con_bottom_p">
|
||||
<span>桂冠人力</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="otherContent_con_three" style="margin-left:2%;">
|
||||
<div>
|
||||
<p class="otherContent_con_top_p">
|
||||
<span style="color:#e8bfa4;">连续{{gghymonth}}月</span>
|
||||
</p>
|
||||
<p class="otherContent_con_bottom_p">
|
||||
<span>桂冠会员</span>
|
||||
</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div v-show="premType == 'QJ'" class="myFooter">
|
||||
<button class="myFooter_button" @click="goPolicyDetail">查询客户保单</button>
|
||||
</div>
|
||||
|
||||
<div v-show="premType == 'GM'" class="mainContainerGM">
|
||||
<p class="mainContainer_title">
|
||||
<img class="mainContainer_title_img" src="@/assets/YB_APP/images/33.png">
|
||||
<span class="mainContainer_title_span">网点数据</span>
|
||||
</p>
|
||||
|
||||
<div class="channel_head">
|
||||
<div class="channel_head_con_one">
|
||||
<div>
|
||||
<p class="channel_head_con_num">
|
||||
<span class="channel_head_con_num_span">
|
||||
{{bankNetCount}}<span class="channel_head_con_num_span channel_head_con_num_span_unit">个</span>
|
||||
</span>
|
||||
<!-- <span class="channel_head_con_num_span channel_head_con_num_span_unit">个</span> -->
|
||||
</p>
|
||||
<p class="channel_head_con_mark">网点数量</p>
|
||||
</div>
|
||||
</div>
|
||||
<div class="channel_head_con_two">
|
||||
<div>
|
||||
<p class="channel_head_con_num">
|
||||
<span class="channel_head_con_num_span">{{qjhdl}}%</span>
|
||||
</p>
|
||||
<p class="channel_head_con_mark">网点期交活动率</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="channelORnetween_list_head">
|
||||
<div class="channelORnetween_list_head_con">
|
||||
<div class="channelORnetween_list_head_button_con">
|
||||
<div :class="channelORnetworkType == 'channel'?'activeChannel':'unActiveChannel'" @click="changeChannelORnetworkType('channel')" >渠道业绩</div>
|
||||
<div :class="channelORnetworkType == 'network'?'activeChannel':'unActiveChannel'" @click="changeChannelORnetworkType('network')">网点业绩</div>
|
||||
</div>
|
||||
<div @click="changeSortType" class="channelORnetween_list_head_button_right" style="display:flex;align-items:center;">
|
||||
<span style="margin-right:5px;">保费排序</span>
|
||||
<img v-if="sortType == '1'" style="width:7px;height:14px;" src="@/assets/YB_APP/images/44.png">
|
||||
<img v-if="sortType == '2'" style="width:7px;height:14px;" src="@/assets/YB_APP/images/45.png">
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="channelORnetween_list" >
|
||||
<div v-if="channelORnetworkData.length != 0" v-for="(item,index) in channelORnetworkData" >
|
||||
<div class="channelORnetween_list_con">
|
||||
<div class="channelORnetween_list_maincon">
|
||||
<div class="channelORnetween_list_maincon_title">
|
||||
<img class="channelORnetween_list_maincon_title_img" :src="item.bankRoute">
|
||||
<span class="channelORnetween_list_maincon_title_span">{{item.bankName}}</span>
|
||||
</div>
|
||||
<div class="channelORnetween_list_maincon_title_mark">
|
||||
<span class="channelORnetween_list_maincon_title_mark_span">总保费</span>
|
||||
<span class="channelORnetween_list_maincon_title_mark_money">
|
||||
<span>¥{{item.sumprem}}</span>
|
||||
<span class="markMoneyUnit">万元</span>
|
||||
</span>
|
||||
</div>
|
||||
</div>
|
||||
<div class="listInfoCon">
|
||||
<div class="listInfoParts">
|
||||
<p class="listInfoP">
|
||||
<span class="listInfoP_spanOne">{{item.djprem}}</span>
|
||||
<span class="listInfoP_spanTwo">万元</span>
|
||||
</p>
|
||||
<p class="listInfoMark">趸交保费</p>
|
||||
<div class="listInfoLine"></div>
|
||||
</div>
|
||||
<div class="listInfoParts">
|
||||
<p class="listInfoP">
|
||||
<span class="listInfoP_spanOne">{{item.ybqjprem}}</span>
|
||||
<span class="listInfoP_spanTwo">万元</span>
|
||||
</p>
|
||||
<p class="listInfoMark">银保期交保费</p>
|
||||
<div class="listInfoLine"></div>
|
||||
</div>
|
||||
<div class="listInfoParts">
|
||||
<p class="listInfoP">
|
||||
<span class="listInfoP_spanOne">{{item.ctqjprem}}</span>
|
||||
<span class="listInfoP_spanTwo">万元</span>
|
||||
</p>
|
||||
<p class="listInfoMark">传统期交保费</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div v-if="channelORnetworkData.length == 0" style="display:flex;justify-content:center;align-items:center;height:400px;position:relative;">
|
||||
|
||||
<img style="width:60%" src="@/assets/YB_APP/images/43.png">
|
||||
<span style="position:absolute;bottom:138px;left:calc(50% - 33px);">暂无业绩</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<van-popup v-model="calendarShow" position="bottom">
|
||||
<van-datetime-picker
|
||||
v-model="currentDate"
|
||||
type="year-month"
|
||||
title="选择日期"
|
||||
:min-date="minDate"
|
||||
:max-date="maxDate"
|
||||
@cancel="handleCurrentDateCancel"
|
||||
@confirm="handleCurrentDateConfirm"
|
||||
/>
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Button } from 'vant'
|
||||
import utils from '@/assets/js/utils/date-utils'
|
||||
import echarts from 'echarts'
|
||||
import { getPremByAgentCode, getIndexByAgentCode, getBankNetDataYB, getChannelPerformanceYB, getBankNetPerformanceYB } from '@/api/YB_APP/index'
|
||||
|
||||
export default {
|
||||
name: 'policyDetail',
|
||||
components: {
|
||||
[Button.name]: Button,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
premType:'QJ',
|
||||
qjrlFlag:'',
|
||||
ggrlFlag:'',
|
||||
gghymonth:'0',
|
||||
bankNetCount:'0',
|
||||
qjhdl:'0',
|
||||
sortType:'1',
|
||||
channelORnetworkType:'channel',
|
||||
activeProductIndex:'',
|
||||
calendarValue:'',
|
||||
calendarShow:false,
|
||||
currentDate:new Date(),
|
||||
minDate: new Date(2019, 1, 1),
|
||||
maxDate: new Date(2030, 12, 31),
|
||||
echartsData:[],
|
||||
channelORnetworkData:[],
|
||||
incomeOption :{
|
||||
color: ["#768dfe", "#7784a2", "#38cbcb", "#a5e1fc", "#e8bfa4",'#fcd439','#fc7d82'],
|
||||
title: {
|
||||
text: '',
|
||||
subtext:'总保费',
|
||||
x: "center",
|
||||
y: "center",
|
||||
textStyle: {
|
||||
fontWeight: "normal",
|
||||
color: "#000",
|
||||
fontSize: 24,
|
||||
lineHeight: 18,
|
||||
},
|
||||
subtextStyle: {
|
||||
fontSize: 14,
|
||||
color: "#666",
|
||||
lineHeight: 10,
|
||||
},
|
||||
},
|
||||
// tooltip: {
|
||||
// show: true,
|
||||
// },
|
||||
tooltip: {
|
||||
trigger: 'item',
|
||||
backgroundColor: 'rgba(255,255,255,0.1)',
|
||||
// backgroundColor:'#fff',
|
||||
borderColor:'#eee',
|
||||
color: '#fff',
|
||||
formatter: function (params) {
|
||||
// console.log(params,111)
|
||||
return (
|
||||
'<span style="color:#333;">险种 </span>'+'<span style="color:#858bd6;margin-left:20px;">'+params.data.name +
|
||||
'</span>'+'<br/>' +
|
||||
'<span style="color:#333;">占比 </span>'+'<span style="color:#858bd6;margin-left:20px;">'+params.data.scale +
|
||||
'</span>'+'<br/>' +
|
||||
'<span style="color:#333;">金额 </span>'+'<span style="color:#858bd6;margin-left:20px;">'+params.data.value +'万元'+
|
||||
'</span>'
|
||||
|
||||
);
|
||||
}
|
||||
},
|
||||
legend: {
|
||||
show:false
|
||||
},
|
||||
series: [
|
||||
{
|
||||
name: '',
|
||||
type: 'pie',
|
||||
radius: ['46%', '61%'],
|
||||
avoidLabelOverlap: true,
|
||||
label: {
|
||||
show: true,
|
||||
position: 'center',
|
||||
color:'#000',
|
||||
fontSize:'20',
|
||||
formatter: function (data) {
|
||||
return ''
|
||||
},
|
||||
},
|
||||
emphasis: {
|
||||
label: {
|
||||
show: true,
|
||||
fontSize: '20',
|
||||
fontWeight: 'bold'
|
||||
}
|
||||
},
|
||||
labelLine: {
|
||||
show: true
|
||||
},
|
||||
data: []
|
||||
}
|
||||
]
|
||||
},
|
||||
}
|
||||
},
|
||||
mounted(){
|
||||
|
||||
let yearNum = new Date().getFullYear()
|
||||
let monthNum = new Date().getMonth()+1
|
||||
if(monthNum < 10){
|
||||
monthNum = '0' + monthNum
|
||||
}
|
||||
this.calendarValue = yearNum+'-'+monthNum
|
||||
|
||||
this.getPremByAgentCode()
|
||||
this.getIndexByAgentCode()
|
||||
},
|
||||
methods:{
|
||||
getPremByAgentCode(){
|
||||
let params = {
|
||||
currentMonth: this.calendarValue
|
||||
}
|
||||
getPremByAgentCode(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.echartsData = []
|
||||
this.incomeOption.series[0].data = []
|
||||
this.incomeOption.title.text = res.content.decimalAll + '万元'
|
||||
if(res.content.premDTOList && res.content.premDTOList.length!=0){
|
||||
this.echartsData = []
|
||||
this.incomeOption.series[0].data = []
|
||||
res.content.premDTOList.forEach(item=>{
|
||||
this.echartsData.push({
|
||||
value: item.allprem,
|
||||
scale:item.percentage,
|
||||
name: item.riskname,
|
||||
thisId:item.riskcode
|
||||
})
|
||||
this.incomeOption.series[0].data.push({
|
||||
value: item.allprem,
|
||||
scale:item.percentage,
|
||||
name: item.riskname,
|
||||
thisId:item.riskcode
|
||||
})
|
||||
})
|
||||
this.echartsData.forEach((item,index)=>{
|
||||
item.color = this.incomeOption.color[index]
|
||||
})
|
||||
}
|
||||
this.$nextTick(()=>{
|
||||
this.incomeChart = echarts.init(this.$refs.incomeChart)
|
||||
this.incomeChart.on('click',this.echartsClick)
|
||||
this.incomeChart.setOption(this.incomeOption)
|
||||
})
|
||||
|
||||
}else{
|
||||
this.echartsData = []
|
||||
this.incomeOption.series[0].data = []
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getIndexByAgentCode(){
|
||||
let params = {
|
||||
currentMonth: this.calendarValue
|
||||
}
|
||||
getIndexByAgentCode(params).then(res=>{
|
||||
this.qjrlFlag = ''
|
||||
this.ggrlFlag = ''
|
||||
this.gghymonth = 0
|
||||
if(res.result == 0){
|
||||
this.qjrlFlag = res.content.qjrlFlag
|
||||
this.ggrlFlag = res.content.ggrlFlag
|
||||
this.gghymonth = res.content.gghymonth
|
||||
if(!this.gghymonth){
|
||||
this.gghymonth = 0
|
||||
}
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getBankNetDataYB(){
|
||||
let params = {
|
||||
currentMonth:this.calendarValue
|
||||
}
|
||||
getBankNetDataYB(params).then(res=>{
|
||||
this.bankNetCount = '0'
|
||||
this.qjhdl = '0'
|
||||
if(res.result == 0){
|
||||
if(res.content.bankNetCount){this.bankNetCount = res.content.bankNetCount}
|
||||
if(res.content.qjhdl){this.qjhdl = res.content.qjhdl}
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getChannelPerformanceYB(){
|
||||
let params = {
|
||||
currentMonth:this.calendarValue,
|
||||
}
|
||||
if(this.sortType == 2){
|
||||
params.isDesc = true
|
||||
}else{
|
||||
params.isAsc = true
|
||||
}
|
||||
getChannelPerformanceYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.channelORnetworkData = []
|
||||
if(res.content && res.content.length != 0){
|
||||
this.channelORnetworkData = res.content
|
||||
}
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
getBankNetPerformanceYB(){
|
||||
let params = {
|
||||
currentMonth:this.calendarValue
|
||||
}
|
||||
if(this.sortType == 2){
|
||||
params.isDesc = true
|
||||
}else{
|
||||
params.isAsc = true
|
||||
}
|
||||
getBankNetPerformanceYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
this.channelORnetworkData = []
|
||||
if(res.content && res.content.length != 0){
|
||||
this.channelORnetworkData = res.content
|
||||
}
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
changeSortType(){
|
||||
if(this.sortType == 1){
|
||||
this.sortType = 2
|
||||
}else{
|
||||
this.sortType = 1
|
||||
}
|
||||
if(this.channelORnetworkType == 'channel'){
|
||||
this.getChannelPerformanceYB()
|
||||
}else{
|
||||
this.getBankNetPerformanceYB()
|
||||
}
|
||||
},
|
||||
changeChannelORnetworkType(type){
|
||||
if(this.channelORnetworkType != type){
|
||||
this.channelORnetworkType = type
|
||||
if(this.channelORnetworkType == 'channel'){
|
||||
this.getChannelPerformanceYB()
|
||||
}else{
|
||||
this.getBankNetPerformanceYB()
|
||||
}
|
||||
}
|
||||
},
|
||||
parentsEvent(){
|
||||
this.activeProductIndex = ''
|
||||
},
|
||||
echartsClick(params){
|
||||
params.event.stop()
|
||||
this.activeProductIndex = params.data.thisId
|
||||
},
|
||||
clickCalendar(){
|
||||
this.calendarShow = true
|
||||
},
|
||||
handleCurrentDateCancel() {
|
||||
this.calendarShow = false
|
||||
},
|
||||
handleCurrentDateConfirm(e) {
|
||||
this.calendarShow = false
|
||||
// let titleTime = utils.formatDate(e, 'yyyy-MM')
|
||||
// this.calendarValue = utils.formatDate(e, 'MM-dd')
|
||||
let yearNum = utils.formatDate(e, 'yyyy')
|
||||
let monthNum = utils.formatDate(e, 'MM')
|
||||
this.calendarValue = yearNum+'-'+monthNum
|
||||
if(this.premType == 'QJ'){
|
||||
this.getPremByAgentCode()
|
||||
this.getIndexByAgentCode()
|
||||
}else{
|
||||
this.getBankNetDataYB()
|
||||
if(this.channelORnetworkType == 'channel'){
|
||||
this.getChannelPerformanceYB()
|
||||
}else{
|
||||
this.getBankNetPerformanceYB()
|
||||
}
|
||||
}
|
||||
},
|
||||
changePremType(type){
|
||||
if(this.premType != type){
|
||||
this.premType = type
|
||||
if(this.premType == 'QJ'){
|
||||
this.getPremByAgentCode()
|
||||
this.getIndexByAgentCode()
|
||||
}else{
|
||||
this.getBankNetDataYB()
|
||||
if(this.channelORnetworkType == 'channel'){
|
||||
this.getChannelPerformanceYB()
|
||||
}else{
|
||||
this.getBankNetPerformanceYB()
|
||||
}
|
||||
}
|
||||
}
|
||||
},
|
||||
goPolicyDetail(){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/policyList?date=' + this.calendarValue,
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/policyList?date=' + this.calendarValue,
|
||||
},
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.myhead{
|
||||
display:flex;justify-content: space-between;padding: 25px 15px;background: #fff;
|
||||
}
|
||||
.QJactive{
|
||||
background:#3949ac;color: #fff;font-weight: bold;font-size: 12px;padding: 10px 15px;border-top-left-radius: 5px;border-bottom-left-radius: 5px;border: 1px solid #3949ac;border-right: none;letter-spacing: 1px;
|
||||
}
|
||||
.GMunActice{
|
||||
background:#fff;color: #9698c6;font-size: 12px;padding: 10px 15px;border-top-left-radius: 5px;border-bottom-left-radius: 5px;border: 1px solid #3949ac;border-right: none;letter-spacing: 1px;border-left: 1px solid #3949ac;
|
||||
}
|
||||
.QJunActice{
|
||||
background:#fff;color: #9698c6;font-size: 12px;padding: 10px 15px;border-top-right-radius: 5px;border-bottom-right-radius: 5px;border: 1px solid #3949ac;border-left: none;letter-spacing: 1px;border-right: 1px solid #3949ac;
|
||||
}
|
||||
.GMactive{
|
||||
background:#3949ac;color: #fff;font-weight: bold;font-size: 12px;padding: 10px 15px;border-top-right-radius: 5px;border-bottom-right-radius: 5px;border: 1px solid #3949ac;border-left: none;letter-spacing: 1px;
|
||||
}
|
||||
.headDate{
|
||||
background:#f2f2f2;font-weight: bold;padding: 8px 15px;border-radius: 15px;font-size: 12px;
|
||||
}
|
||||
.mainContainerQJ{
|
||||
margin:15px 10px 10px;
|
||||
border-radius:5px;
|
||||
background:#fff;
|
||||
width:calc(100vw - 20px);
|
||||
text-align:center;
|
||||
}
|
||||
.mainContainerGM{
|
||||
margin:15px 10px 10px;
|
||||
border-radius:5px;
|
||||
background:#fff;
|
||||
width:calc(100vw - 20px);
|
||||
text-align:center;
|
||||
}
|
||||
.echartsContent{
|
||||
display:flex;
|
||||
justify-content:center;
|
||||
align-items:center;
|
||||
width:100%;
|
||||
height:350px;
|
||||
}
|
||||
.incomeChart{
|
||||
width:calc(100% - 20px);
|
||||
height:calc(100% - 20px);
|
||||
/*border:1px solid #eee;*/
|
||||
}
|
||||
.echartsIconContent{
|
||||
width:100%;
|
||||
height:200px;
|
||||
display:flex;
|
||||
justify-content:center;
|
||||
align-items:center;
|
||||
}
|
||||
.echartsIconContent_main{
|
||||
width:calc(100% - 20px);
|
||||
height:calc(100% - 20px);
|
||||
/*border:1px solid #eee;*/
|
||||
background:#fafafc;
|
||||
border-radius:5px;
|
||||
text-align:left;
|
||||
}
|
||||
.otherContent{
|
||||
width:100%;
|
||||
height:150px;
|
||||
display:flex;
|
||||
justify-content:center;
|
||||
align-items:center;
|
||||
}
|
||||
.otherContent_con{
|
||||
width:calc(100% - 20px);
|
||||
height:calc(100% - 20px);
|
||||
/*border:1px solid #eee;*/
|
||||
}
|
||||
.myFooter{
|
||||
width:100%;
|
||||
display:flex;
|
||||
justify-content:center;
|
||||
margin-top:15px;
|
||||
padding-bottom:15px;
|
||||
}
|
||||
.myFooter_button{
|
||||
background:#fe3b44;
|
||||
border-radius:25px;
|
||||
padding:10px 30px;
|
||||
color:#ffff;
|
||||
border:none;
|
||||
font-size:14px;
|
||||
letter-spacing:1px;
|
||||
}
|
||||
.productName_p{
|
||||
width:8px;height:8px;border-radius:2px;background:red;display:inline-block;margin-right:5px
|
||||
}
|
||||
.activeProductContent{
|
||||
padding:10px;text-align:center;border-radius:5px;box-shadow:0px 1px 2px 0px #333;
|
||||
}
|
||||
.echartsDatalist{
|
||||
display:inline-block;width:31%;margin:5px 1%;
|
||||
}
|
||||
.echartsDatalist_p{
|
||||
line-height:20px;
|
||||
font-size:14px;
|
||||
}
|
||||
.unActiveProductContent{
|
||||
padding:3px;text-align:center;
|
||||
}
|
||||
.otherContent_con_one{
|
||||
border-radius:5px;
|
||||
padding:10px 15px;
|
||||
width:32%;
|
||||
height:55px;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
background-image: url("../../assets/YB_APP/images/35.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
.otherContent_con_two{
|
||||
border-radius:5px;
|
||||
padding:10px 15px;
|
||||
width:32%;
|
||||
height:55px;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
background-image: url("../../assets/YB_APP/images/37.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
.otherContent_con_three{
|
||||
border-radius:5px;
|
||||
padding:10px 15px;
|
||||
width:32%;
|
||||
height:55px;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
background-image: url("../../assets/YB_APP/images/36.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
.mainContainer_title{
|
||||
display:flex;align-items: center;padding: 15px 0px 0px 20px;
|
||||
}
|
||||
.mainContainer_title_img{
|
||||
width:20px;
|
||||
height:20px;
|
||||
}
|
||||
.mainContainer_title_span{
|
||||
font-size: 16px;font-weight: bold;margin-left: 12px;
|
||||
}
|
||||
.otherContent_con_title{
|
||||
display:flex;align-items: center;padding: 5px 0px 10px 10px;
|
||||
}
|
||||
.otherContent_con_title_img{
|
||||
width:20px;
|
||||
height:20px;
|
||||
}
|
||||
.otherContent_con_title_span{
|
||||
font-size: 16px;font-weight: bold;margin-left: 12px;
|
||||
}
|
||||
.otherContent_con_top_p{
|
||||
font-size:14px;display:flex;justify-content:flex-start;align-items:center;font-weight:bold;
|
||||
}
|
||||
.otherContent_con_one_img{
|
||||
width:16px;height:16px;margin-left:10px;
|
||||
}
|
||||
.otherContent_con_bottom_p{
|
||||
font-size:12px;font-weight:bold;display:flex;justify-content:flex-start;
|
||||
}
|
||||
.mainContainer_title_noData_img{
|
||||
width:80%;
|
||||
height:250px;
|
||||
}
|
||||
.mainContainer_title_noData_p{
|
||||
width:100%;
|
||||
text-align:center;
|
||||
color:#999;
|
||||
font-size:16px;
|
||||
font-weight:bold;
|
||||
margin-bottom:20px;
|
||||
}
|
||||
.channel_head{
|
||||
width:100%;
|
||||
display:flex;
|
||||
justify-content:center;
|
||||
}
|
||||
.channel_head_con_one{
|
||||
border-radius:5px;
|
||||
width:48%;
|
||||
margin:15px 1%;
|
||||
height:75px;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
background-image: url("../../assets/YB_APP/images/41.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
}
|
||||
.channel_head_con_two{
|
||||
border-radius:5px;
|
||||
width:48%;
|
||||
margin:15px 1%;
|
||||
height:75px;
|
||||
display:flex;
|
||||
align-items:center;
|
||||
background-image: url("../../assets/YB_APP/images/42.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: cover;
|
||||
}
|
||||
.activeChannel{
|
||||
color:#3749A9;background:#F4F6FF;padding:6px;border-radius:3px;font-weight:bold;font-size:14px;border:none;
|
||||
margin:5px;
|
||||
}
|
||||
.unActiveChannel{
|
||||
color:#333333;font-size:14px;margin:5px;border:none;background:#fff;padding:6px;
|
||||
}
|
||||
.channel_head_con_num{
|
||||
display:flex;justify-content:flex-start;margin-left:15px;
|
||||
}
|
||||
.channel_head_con_num_span{
|
||||
color:#3749A9;font-size:16px;font-weight:bold;line-height:30px;
|
||||
}
|
||||
.channel_head_con_mark{
|
||||
color:#3646AF;font-size:14px;margin-left:15px;
|
||||
}
|
||||
.channel_head_con_num_span_unit{
|
||||
color:#3646AF;font-size:14px;
|
||||
}
|
||||
.channelORnetween_list_head{
|
||||
width:calc(100% - 20px);height:40px;margin:10px;
|
||||
}
|
||||
.channelORnetween_list_head_con{
|
||||
display:flex;justify-content:space-between;
|
||||
}
|
||||
.channelORnetween_list_head_button_con{
|
||||
display:flex;justify-content:space-between;align-items:center;
|
||||
}
|
||||
.channelORnetween_list_head_button_right{
|
||||
color:#3749A9;background:#F7F7F7;padding:6px 10px;border-radius:20px;font-size:12px;font-weight:bold;display:flex;justify-content:center;align-items:center;height:20px;
|
||||
}
|
||||
.channelORnetween_list{
|
||||
width:calc(100% - 20px);margin:10px;
|
||||
padding-bottom:10px;
|
||||
}
|
||||
.channelORnetween_list_con{
|
||||
margin-bottom:15px;border:1px solid #eee;border-radius:8px;overflow:hidden;
|
||||
}
|
||||
.channelORnetween_list_maincon{
|
||||
display:flex;justify-content:space-between;align-items:center;height:50px;background:#EEEEEE;
|
||||
}
|
||||
.channelORnetween_list_maincon_title{
|
||||
display:flex;align-items:center;width:200px;
|
||||
}
|
||||
.channelORnetween_list_maincon_title_img{
|
||||
width:20px;height:20px;margin-left:10px;
|
||||
}
|
||||
.channelORnetween_list_maincon_title_span{
|
||||
font-size:14px;color:#333;margin-left:10px;font-weight:bold;text-align:left;
|
||||
}
|
||||
.channelORnetween_list_maincon_title_mark{
|
||||
margin-right:10px;width:130px;
|
||||
}
|
||||
.channelORnetween_list_maincon_title_mark_span{
|
||||
color:#999;font-size:12px;margin-right:5px;
|
||||
}
|
||||
.channelORnetween_list_maincon_title_mark_money{
|
||||
color:#D6313F;font-size:16px;font-weight:bold;
|
||||
}
|
||||
.markMoneyUnit{
|
||||
font-size:12px;
|
||||
}
|
||||
.listInfoCon{
|
||||
display:flex;align-items:center;height:100px;
|
||||
}
|
||||
.listInfoParts{
|
||||
width:33.3%;position:relative;
|
||||
}
|
||||
.listInfoP{
|
||||
line-height:30px;
|
||||
}
|
||||
.listInfoP_spanOne{
|
||||
font-size:16px;font-weight:bold;color:#333;
|
||||
}
|
||||
.listInfoP_spanTwo{
|
||||
color:#333;font-size:12px;font-weight:bold;
|
||||
}
|
||||
.listInfoMark{
|
||||
font-size:12px;color:#999;line-height:30px;
|
||||
}
|
||||
.listInfoLine{
|
||||
position:absolute;right: 0px;width: 1px;background: #eee;top: calc(50% - 10px);height: 20px;
|
||||
}
|
||||
</style>
|
||||
88
src/views/YB_APP/policyDetail.vue
Normal file
@@ -0,0 +1,88 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<div class="listContent">
|
||||
<van-cell-group inset>
|
||||
<van-cell title="产品名称" :value="ybOrderDTOList.riskName" />
|
||||
<van-cell title="保单号" :value="ybOrderDTOList.riskCode" />
|
||||
<van-cell title="投保人" :value="ybOrderDTOList.appentName" />
|
||||
<van-cell title="被保险人" :value="ybOrderDTOList.insureName" />
|
||||
<van-cell title="交费金额/元" :value="ybOrderDTOList.prem" />
|
||||
<van-cell title="保险金额/元" :value="ybOrderDTOList.amt" />
|
||||
<van-cell title="销售渠道" :value="ybOrderDTOList.bankChannel" />
|
||||
<van-cell title="销售网点" :value="ybOrderDTOList.saleNet" />
|
||||
<van-cell title="承保日期" :value="ybOrderDTOList.signDate" />
|
||||
<van-cell title="保单状态" :value="ybOrderDTOList.state" />
|
||||
<van-cell title="回访成功" :value="ybOrderDTOList.reSuccessDate" />
|
||||
<van-cell title="回访完成" :value="ybOrderDTOList.reCallDate" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { YBpolicyDetail } from '@/api/YB_APP/index'
|
||||
import warterMark from "@/assets/js/utils/warterMark.js"
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
name: 'policyDetail',
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
ybOrderDTOList: '',
|
||||
policyNo: ''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.getAgentInfo()
|
||||
this.policyNo = this.$route.query.policyNo
|
||||
console.log(this.policyNo, 'avc')
|
||||
this.YBpolicyDetail()
|
||||
},
|
||||
methods: {
|
||||
getAgentInfo(){
|
||||
getAgentInfo({}).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log('123')
|
||||
warterMark.set(res.name+res.jobNo,"")
|
||||
}
|
||||
})
|
||||
},
|
||||
YBpolicyDetail() {
|
||||
let params = {
|
||||
policyNo: this.policyNo
|
||||
}
|
||||
console.log('我是log')
|
||||
YBpolicyDetail(params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
this.ybOrderDTOList = res.content.ybOrderDTO
|
||||
console.log(this.ybOrderDTOList, '请求成功的res')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
/deep/ .van-cell__title {
|
||||
color: #0a0808;
|
||||
max-width: 30%;
|
||||
}
|
||||
/deep/ .van-cell__value {
|
||||
color: #777676;
|
||||
// text-align: left;
|
||||
}
|
||||
// /deep/ .van-cell-group >
|
||||
.listContent {
|
||||
width: 96%;
|
||||
background-color: white;
|
||||
margin: 12px auto;
|
||||
overflow: hidden;
|
||||
border-radius: 12px;
|
||||
}
|
||||
</style>
|
||||
684
src/views/YB_APP/policyList.vue
Normal file
@@ -0,0 +1,684 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<!-- 最上方的搜索框 -->
|
||||
<!-- <div style="position: relative">
|
||||
<van-search shape="round" v-model="findValue" placeholder="请输入保单号/客户身份证号/客户姓名" />
|
||||
<button class="searchButton" @click="keywordSearch(findValue)">搜索</button>
|
||||
</div> -->
|
||||
<!-- <button @click="showSideBar = !showSideBar">点击按钮</button> -->
|
||||
<!-- <div style="width:100%;height:1000px;background:rgba(0, 0, 0, 0.2);"></div> -->
|
||||
|
||||
<!-- 右侧搜索按钮 -->
|
||||
|
||||
<!-- <div style="height:40px;background-color:aqua"> -->
|
||||
<!-- <label>
|
||||
<input type="text" value="请输入保单号" style="background-color: aliceblue;height: 30px;width: 70%;border-radius: 50px;border:0"><img src="" alt=""></input>
|
||||
<img src="../../assets/YB_APP/images/bigglass.png" alt="">
|
||||
<button style="border:0;padding:17px 20px;background-color:blue;">搜索</button>
|
||||
</label> -->
|
||||
<!-- </div> -->
|
||||
<!-- 无内容显示的背景 -->
|
||||
<div v-if="filpolicyListDTOList == ''" style="position: relative">
|
||||
<img class="noContentImg" src="../../assets/YB_APP/images/noguarantee.png" />
|
||||
<p class="noContentText">暂无保单</p>
|
||||
</div>
|
||||
<!-- 卡片列表 -->
|
||||
<div v-if="filpolicyListDTOList != ''" style="overflow: hidden">
|
||||
<van-list v-model="loading" :finished="finished" finished-text="没有更多了" @load="listLoad">
|
||||
<div class="cardList" v-for="(item, index) in filpolicyListDTOList" :key="index">
|
||||
<div :class="[item.orderStatus == 1 ? 'topbackground1' : 'topbackground2']">
|
||||
<!-- 字左边小对号图片 -->
|
||||
<img class="cardListImg" v-if="item.orderStatus == 1" src="../../assets/YB_APP/images/sign1.png" />
|
||||
<img class="cardListImg" v-if="item.orderStatus != 1" src="../../assets/YB_APP/images/sign2.png" />
|
||||
<span class="cardListText">{{ item.riskName }}</span>
|
||||
</div>
|
||||
<!-- 卡片内容 -->
|
||||
<div class="cardConetent">
|
||||
<div class="textList">
|
||||
<p class="policyNo">
|
||||
<span>保单号</span><span>{{ item.policyNo }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>被保人</span><span>{{ item.insuredName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>承保日期</span><span>{{ item.signDate }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>销售渠道</span><span>{{ item.bankChannel }}</span>
|
||||
</p>
|
||||
<!-- 根据0,1状态判断显示是否和文字颜色 -->
|
||||
<p v-if="item.visitSuccess == 0"><span>回访成功</span><span class="visitNo">否</span></p>
|
||||
<p v-if="item.visitSuccess == 1"><span>回访成功</span><span>是</span></p>
|
||||
<p v-if="item.visitFinish == 0"><span>回访完成</span><span class="visitNo">否</span></p>
|
||||
<p v-if="item.visitFinish == 1"><span>回访完成</span><span>是</span></p>
|
||||
</div>
|
||||
<!-- 右边状态图片 -->
|
||||
<div class="rightState">
|
||||
<img class="rightStateImg" :src="item.stateRoute" />
|
||||
<button class="rightStateButton" @click="goPolicyDetail(item.policyNo)">查看详情</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</van-list>
|
||||
</div>
|
||||
<van-popup v-model="showSideBar" position="right" style="width: 80%; height: 100%" :overlay-style="{ opacity: 0.7 }">
|
||||
<div class="state-content">
|
||||
<div>
|
||||
<p>条件查询</p>
|
||||
<van-search v-model="conditionInquire" shape="round" placeholder="保单号/客户身份证号/客户姓名" left-icon=" " />
|
||||
</div>
|
||||
<div>
|
||||
<p>承保日期</p>
|
||||
<van-search show-action v-model="underwriteDate" shape="round" placeholder="右侧选择日期" left-icon=" ">
|
||||
<template #action>
|
||||
<img class="underwriteDateImg" @click="clickTime" src="../../assets/YB_APP/images/date.png" />
|
||||
</template>
|
||||
</van-search>
|
||||
</div>
|
||||
<div>
|
||||
<p>保单状态</p>
|
||||
<div class="chooseMessage">
|
||||
<div v-for="(item, index) in list1" :key="index">
|
||||
<button @click="warrantyState(index)" class="buttonChangebe" :class="{ buttonChangeaf: clickChangewarranty == index }">{{ item.name }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<p>渠道名称</p>
|
||||
<div class="chooseMessage">
|
||||
<div v-for="(item, index) in list2" :key="index">
|
||||
<button @click="channelName(index)" class="buttonChangebe" :class="{ buttonChangeaf: clickChangechannel == index }">{{ item.name }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<p>回访成功</p>
|
||||
<div class="chooseMessage">
|
||||
<div v-for="(item, index) in list3" :key="index">
|
||||
<button @click="visitSucceed(index)" class="buttonChangebe" :class="{ buttonChangeaf: clickChangevisitSucceed == index }">{{ item.name }}</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div>
|
||||
<p>回访完成</p>
|
||||
<div class="chooseMessage">
|
||||
<div v-for="(item, index) in list3" :key="index">
|
||||
<button @click="visitAccomplish(index)" class="buttonChangebe" :class="{ buttonChangeaf: clickChangevisitAccomplish == index }">
|
||||
{{ item.name }}
|
||||
</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<div class="bottom-area">
|
||||
<van-button class="m-btn-left" @click="reset">重置</van-button>
|
||||
<van-button class="m-btn-right" @click="submit">确定</van-button>
|
||||
</div>
|
||||
<van-popup v-model="showPicker" position="bottom">
|
||||
<van-datetime-picker
|
||||
v-model="currentDate"
|
||||
type="year-month"
|
||||
title="选择年月"
|
||||
:min-date="minDate"
|
||||
:max-date="maxDate"
|
||||
@confirm="timeSubmit"
|
||||
@cancel="timeCancel"
|
||||
/>
|
||||
</van-popup>
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Button, Search, DatetimePicker } from 'vant'
|
||||
import { ref } from 'vue'
|
||||
import utils from '@/assets/js/utils/date-utils'
|
||||
import { YBpolicyListAgent } from '@/api/YB_APP/index'
|
||||
import warterMark from '@/assets/js/utils/warterMark.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
|
||||
export default {
|
||||
name: 'policyList',
|
||||
components: {
|
||||
[Button.name]: Button,
|
||||
[Search.name]: Search,
|
||||
[DatetimePicker.name]: DatetimePicker
|
||||
},
|
||||
setup() {
|
||||
const value = ref('')
|
||||
return { value }
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
showPicker: false,
|
||||
findValue: '', // 上面搜索框的value
|
||||
policyListDTOList: [],
|
||||
filpolicyListDTOList: [], // 结合watch过滤后的卡片数据
|
||||
showSideBar: false, // 侧边栏展开否
|
||||
list1: [
|
||||
{ id: 0, name: '全部' },
|
||||
{ id: 1, name: '有效' },
|
||||
{ id: 2, name: '退保终止' },
|
||||
{ id: 3, name: '理赔终止' },
|
||||
{ id: 4, name: '协退终止' },
|
||||
{ id: 5, name: '犹退终止' },
|
||||
{ id: 6, name: '当日撤单' }
|
||||
],
|
||||
list2: [
|
||||
{ id: 0, name: '全部' },
|
||||
{ id: 1, name: '邮政储蓄银行' },
|
||||
{ id: 2, name: '农业银行' },
|
||||
{ id: 3, name: '工商银行' },
|
||||
{ id: 4, name: '北部湾银行' }
|
||||
],
|
||||
list3: [
|
||||
{ id: 0, name: '全部' },
|
||||
{ id: 1, name: '是' },
|
||||
{ id: 2, name: '否' }
|
||||
],
|
||||
clickChangewarranty: 0,
|
||||
clickChangechannel: 0,
|
||||
clickChangevisitSucceed: 0,
|
||||
clickChangevisitAccomplish: 0,
|
||||
calendarShow: false,
|
||||
// currentDate: new Date(),
|
||||
underwriteDate: '', // 承保日期的时间
|
||||
conditionInquire: '', // 条件查询
|
||||
params: {
|
||||
signDate: '', // 日期
|
||||
otherNo: '', // 保单号
|
||||
state: '', // 保单状态
|
||||
bankChannel: '', // 渠道名称
|
||||
visitSuccess: '', // 回访成功
|
||||
visitFinish: '', // 回访完成
|
||||
pageSize: 10,
|
||||
pageNo: 0
|
||||
},
|
||||
|
||||
minDate: new Date(2020, 0, 1),
|
||||
maxDate: new Date(2030, 11, 31),
|
||||
currentDate: new Date(),
|
||||
loading: false,
|
||||
finished: false
|
||||
}
|
||||
},
|
||||
created() {
|
||||
// 初始化显示按钮
|
||||
setTimeout(() => {
|
||||
this.filterBtn()
|
||||
}, 500)
|
||||
},
|
||||
mounted() {
|
||||
this.$toast.loading({
|
||||
duration: 10000, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
this.getAgentInfo()
|
||||
this.YBpolicyListAgent()
|
||||
// 筛选按钮的点击事件
|
||||
window.appCallBack = this.appCallBack
|
||||
// this.underwriteDate = this.$route.query.date
|
||||
// this.params.signDate = this.$route.query.date
|
||||
},
|
||||
|
||||
methods: {
|
||||
getAgentInfo() {
|
||||
getAgentInfo({}).then((res) => {
|
||||
if (res.result == 0) {
|
||||
console.log('123')
|
||||
warterMark.set(res.name + res.jobNo, '')
|
||||
}
|
||||
})
|
||||
},
|
||||
appCallBack(data, flag) {
|
||||
// 筛选按钮的点击事件
|
||||
this.showSideBar = true
|
||||
},
|
||||
filterBtn() {
|
||||
// 筛选按钮的显示
|
||||
// eslint-disable-next-line no-undef
|
||||
setTimeout(() => {
|
||||
EWebBridge.webCallAppInJs('webview_right_button', {
|
||||
btns: [
|
||||
{
|
||||
img: this.$assetsUrl + 'images/filter_btn.png',
|
||||
route: { flag: '', extra: {} }
|
||||
}
|
||||
]
|
||||
})
|
||||
}, 500)
|
||||
},
|
||||
// 四个选择的状态
|
||||
warrantyState(val) {
|
||||
this.clickChangewarranty = val
|
||||
console.log(this.clickChangewarranty, '保单的data')
|
||||
console.log(val, '保单的val')
|
||||
},
|
||||
channelName(val) {
|
||||
this.clickChangechannel = val
|
||||
console.log(this.clickChangechannel, '渠道的data')
|
||||
console.log(val, '渠道的val')
|
||||
},
|
||||
visitSucceed(val) {
|
||||
this.clickChangevisitSucceed = val
|
||||
console.log(this.clickChangevisitSucceed, '回访完成的data')
|
||||
console.log(val, '回访成功的val')
|
||||
},
|
||||
visitAccomplish(val) {
|
||||
this.clickChangevisitAccomplish = val
|
||||
console.log(this.clickChangevisitSucceed, '回访完成的data')
|
||||
console.log(val, '回访完成的val')
|
||||
},
|
||||
listLoad() {
|
||||
this.params.pageNo++
|
||||
this.finished = false
|
||||
this.loading = true
|
||||
this.YBpolicyListAgent()
|
||||
},
|
||||
// 请求卡片数据
|
||||
YBpolicyListAgent() {
|
||||
let that = this
|
||||
// console.log('我是log')
|
||||
// if(!that.finished){
|
||||
// that.params.pageNo++
|
||||
// }
|
||||
YBpolicyListAgent(that.params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
// that.policyListDTOList = res.policyListDTOList
|
||||
// that.filpolicyListDTOList = res.policyListDTOList
|
||||
// console.log(this.policyListDTOList, 'data里的policyListDTOList')
|
||||
// this.YBpolicyListAgent()
|
||||
if (res.policyListDTOList.length == 0) {
|
||||
this.finished = true
|
||||
this.loading = false
|
||||
// that.filpolicyListDTOList = []
|
||||
// console.log('111111111111111111111')
|
||||
// that.filpolicyListDTOList = res.policyListDTOList.policyListDTOList
|
||||
} else {
|
||||
that.filpolicyListDTOList = that.filpolicyListDTOList.concat(res.policyListDTOList)
|
||||
that.finished = false
|
||||
this.loading = false
|
||||
console.log('22222222222222222222222222222')
|
||||
if (res.policyListDTOList.length == 1 && this.params.otherNo != '') {
|
||||
// that.filpolicyListDTOList = []
|
||||
that.filpolicyListDTOList = res.policyListDTOList
|
||||
}
|
||||
}
|
||||
} else {
|
||||
that.$toast(res.resultMessage)
|
||||
this.finished = true
|
||||
this.loading = false
|
||||
// if (that.params.pageNo == 1) {
|
||||
// that.filpolicyListDTOList = []
|
||||
// console.log('33333333333333333333333333')
|
||||
// } else {
|
||||
// that.$toast(res.resultMessage)
|
||||
// this.finished = true
|
||||
// this.loading = false
|
||||
// // that.filpolicyListDTOList = []
|
||||
// console.log('44444444444444444444444444444')
|
||||
// }
|
||||
}
|
||||
})
|
||||
},
|
||||
// (查看详情)按钮跳转
|
||||
goPolicyDetail(data) {
|
||||
console.log(data)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/policyDetail?policyNo=' + data
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/policyDetail?policyNo=' + data
|
||||
}
|
||||
})
|
||||
},
|
||||
// 上方关键词搜索按钮
|
||||
// keywordSearch(value) {
|
||||
// console.log(value, '点击搜索了')
|
||||
// // this.filpolicyListDTOList = this.policyListDTOList.filter((p) => {
|
||||
// // return p.policyNo.indexOf(value) !== -1
|
||||
// // })
|
||||
// // this.params.pageNo = 0
|
||||
// this.clickChangewarranty = 0
|
||||
// this.clickChangechannel = 0
|
||||
// this.clickChangevisitSucceed = 0
|
||||
// this.clickChangevisitAccomplish = 0
|
||||
// this.underwriteDate = ''
|
||||
// this.params.pageNo = 0
|
||||
// this.params.otherNo = value
|
||||
// this.filpolicyListDTOList = []
|
||||
// this.YBpolicyListAgent()
|
||||
// // console.log(value,'我是value');
|
||||
// // console.log(this.riskCode,'我是this.riskCode');
|
||||
// },
|
||||
reset() {
|
||||
// 筛选的重置操作
|
||||
// 全部按钮选中; list全部匹配(点击全部的时候可以通过匹配规则匹配到所有的产品)
|
||||
// this.isActive = [true, false, false, false, false]
|
||||
// this.list = this.proList
|
||||
// this.showSideBar = false
|
||||
this.currentDate = new Date()
|
||||
this.clickChangewarranty = 0
|
||||
this.clickChangechannel = 0
|
||||
this.clickChangevisitSucceed = 0
|
||||
this.clickChangevisitAccomplish = 0
|
||||
this.underwriteDate = ''
|
||||
this.conditionInquire = ''
|
||||
this.params.pageNo = 0
|
||||
},
|
||||
submit() {
|
||||
// 筛选的确定操作
|
||||
// this.isActive.some((item, index) => {
|
||||
// if (item) {
|
||||
// 获取选中的险种
|
||||
// this.risk = this.risks[0].content[index].code
|
||||
// }
|
||||
// })
|
||||
this.filpolicyListDTOList = []
|
||||
this.showSideBar = false
|
||||
this.params.pageNo = 0
|
||||
this.params.signDate = this.underwriteDate
|
||||
this.params.otherNo = this.conditionInquire
|
||||
// this.params.signDate = '2022-09'
|
||||
this.params.state = this.list1[this.clickChangewarranty].id
|
||||
this.params.bankChannel = this.list1[this.clickChangechannel].id
|
||||
this.params.visitSuccess = this.list1[this.clickChangevisitSucceed].id
|
||||
this.params.visitFinish = this.list1[this.clickChangevisitAccomplish].id
|
||||
this.YBpolicyListAgent()
|
||||
this.$toast.loading({
|
||||
duration: 15000, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
// this.filpolicyListDTOList = ''
|
||||
// 根据选中险别对产品列表进行筛选
|
||||
// this.list = this.proList.filter((item) => {
|
||||
// if (this.risk == '') {
|
||||
// return item
|
||||
// } else {
|
||||
// return item.categoryCode.indexOf(this.risk) != -1
|
||||
// }
|
||||
// })
|
||||
},
|
||||
// 查询里的图片出来时间
|
||||
clickTime() {
|
||||
this.showPicker = true
|
||||
},
|
||||
// 时间里的确认按钮
|
||||
timeSubmit() {
|
||||
// this.params.renewalDate = this.currentDate
|
||||
let yearNum = this.currentDate.getFullYear()
|
||||
let monthNum = this.currentDate.getMonth() + 1
|
||||
if (monthNum < 10) {
|
||||
monthNum = '0' + monthNum
|
||||
}
|
||||
this.underwriteDate = yearNum + '-' + monthNum
|
||||
this.showPicker = false
|
||||
},
|
||||
// 时间里的取消按钮
|
||||
timeCancel() {
|
||||
this.showPicker = false
|
||||
}
|
||||
}
|
||||
|
||||
// 关键词搜索过滤
|
||||
// watch: {
|
||||
// findValue: {
|
||||
// handler(value) {
|
||||
// this.filpolicyListDTOList = this.policyListDTOList.filter((p) => {
|
||||
// // return p.policyNo.indexOf(value) !== -1 || p.insuredName.indexOf(value) !== -1
|
||||
// return p.policyNo.indexOf(value) !== -1
|
||||
// })
|
||||
// if (value == '') {
|
||||
// this.filpolicyListDTOList = this.policyListDTOList
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
// }
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
/deep/ .van-search {
|
||||
// background-color: rgb(0, 255, 255);
|
||||
border-bottom-left-radius: 12px;
|
||||
border-bottom-right-radius: 12px;
|
||||
/*height: 6vh;*/
|
||||
}
|
||||
// /deep/ .van-cell--borderless {
|
||||
// height: 32px;
|
||||
// background-color: #f7f7f7;
|
||||
// font-size: 12px;
|
||||
// line-height: 30px;
|
||||
// }
|
||||
.searchButton {
|
||||
position: absolute;
|
||||
top: 2.67vw;
|
||||
right: 3.2vw;
|
||||
background-color: #2154cc;
|
||||
color: #ffffff;
|
||||
border-radius: 18px;
|
||||
// padding: 8px 15px;
|
||||
font-size: 12px;
|
||||
border: 0px;
|
||||
height: 34px;
|
||||
width: 56px;
|
||||
}
|
||||
.noContentImg {
|
||||
height: 216px;
|
||||
// width: 285px;
|
||||
position: absolute;
|
||||
top: 60px;
|
||||
left: calc(50% - 142px);
|
||||
}
|
||||
.noContentText {
|
||||
font-size: 12px;
|
||||
position: absolute;
|
||||
top: 219px;
|
||||
left: calc(50% - 24px);
|
||||
color: #b3b5ca;
|
||||
}
|
||||
.cardList {
|
||||
// height: 225px;
|
||||
width: 96%;
|
||||
border-radius: 12px;
|
||||
background-color: white;
|
||||
margin: 15px auto;
|
||||
overflow: hidden;
|
||||
}
|
||||
.cardListImg {
|
||||
height: 16px;
|
||||
// width: 14px;
|
||||
// margin: 12px 7px;
|
||||
margin: 0 7px;
|
||||
/*position: absolute;*/
|
||||
}
|
||||
.visitNo {
|
||||
color: #f22220;
|
||||
font-weight: 600;
|
||||
}
|
||||
.rightState {
|
||||
height: 100%;
|
||||
// width: 32%;
|
||||
background-color: white;
|
||||
overflow: hidden;
|
||||
// position:relative;
|
||||
}
|
||||
.rightStateImg {
|
||||
height: 100px;
|
||||
width: 100px;
|
||||
margin-bottom: 58px;
|
||||
}
|
||||
.rightStateButton {
|
||||
height: 30px;
|
||||
width: 78px;
|
||||
color: #d7523b;
|
||||
border: #d7523b 1px solid;
|
||||
border-radius: 30px;
|
||||
background-color: white;
|
||||
// margin-top: 58px;
|
||||
margin-left: 10px;
|
||||
font-size: 12px;
|
||||
bottom: 10px;
|
||||
// position: absolute;
|
||||
}
|
||||
.cardListText {
|
||||
line-height: 34px;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.cardConetent {
|
||||
// height: 22.5vh;
|
||||
width: 100%;
|
||||
// padding: 0px 20px;
|
||||
display: flex;
|
||||
}
|
||||
.textList {
|
||||
// height: 90%;
|
||||
// width: 68%;
|
||||
color: #9d9d9d;
|
||||
padding-top: 14px;
|
||||
font-size: 12px;
|
||||
padding-left: 20px;
|
||||
}
|
||||
.textList > p {
|
||||
display: flex;
|
||||
margin-bottom: 11px;
|
||||
line-height: 20px;
|
||||
}
|
||||
.textList > p > span:nth-of-type(1) {
|
||||
display: block;
|
||||
// float:left;
|
||||
width: 50px;
|
||||
white-space: nowrap;
|
||||
// background-color: blueviolet;
|
||||
}
|
||||
.textList > p > span:nth-of-type(2) {
|
||||
// width: 5vh;
|
||||
// background-color: rgb(65, 214, 77);
|
||||
margin-left: 28px;
|
||||
width: 164px;
|
||||
// background-color: chartreuse;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
// .active {
|
||||
// color: #f22220;
|
||||
// }
|
||||
.topbackground1 {
|
||||
background: linear-gradient(to right, #435898, #6581c6);
|
||||
height: 34px;
|
||||
width: 100%;
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.topbackground2 {
|
||||
background: linear-gradient(to right, #fcfcfc, #e8e5e6);
|
||||
height: 34px;
|
||||
width: 100%;
|
||||
color: #323232;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
.state-content {
|
||||
padding: 14px;
|
||||
}
|
||||
.state-content p {
|
||||
margin-top: 8px;
|
||||
margin-bottom: 6px;
|
||||
font-weight: 700;
|
||||
font-size: 14px;
|
||||
}
|
||||
.bottom-area {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
margin-top: 20px;
|
||||
margin-bottom: 20px;
|
||||
/deep/.m-btn-left {
|
||||
width: 40%;
|
||||
border-color: transparent;
|
||||
border-top-left-radius: 30px;
|
||||
border-bottom-left-radius: 30px;
|
||||
border: 1px solid #bd5653;
|
||||
border-right: 0;
|
||||
color: #f1372d;
|
||||
}
|
||||
/deep/.m-btn-right {
|
||||
width: 40%;
|
||||
border-color: transparent;
|
||||
border-top-right-radius: 30px;
|
||||
border-bottom-right-radius: 30px;
|
||||
background-color: #ff3a3f;
|
||||
border: 1px solid #bd5653;
|
||||
border-left: 0;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
.buttonChangebe {
|
||||
border: 0;
|
||||
height: 38px;
|
||||
width: 78px;
|
||||
border-radius: 20px;
|
||||
margin: 5px;
|
||||
background-color: #f8f8fa;
|
||||
color: #757477;
|
||||
}
|
||||
.buttonChangeaf {
|
||||
border: 1px solid #d28b86;
|
||||
height: 38px;
|
||||
width: 78px;
|
||||
border-radius: 20px;
|
||||
margin: 5px;
|
||||
background-color: #fbe7e4;
|
||||
color: #be5759;
|
||||
}
|
||||
.policyNo {
|
||||
line-height: 14px;
|
||||
font-size: 14px;
|
||||
font-weight: 600;
|
||||
// margin-bottom: 16px;
|
||||
margin-top: 6px;
|
||||
color: #535353;
|
||||
}
|
||||
.underwriteDateClass {
|
||||
width: 96%;
|
||||
height: 30px;
|
||||
background-color: #f8f8fa;
|
||||
border-radius: 30px;
|
||||
position: relative;
|
||||
}
|
||||
.underwriteDateSpan {
|
||||
line-height: 30px;
|
||||
margin-left: 10px;
|
||||
}
|
||||
.underwriteDateImg {
|
||||
height: 20px;
|
||||
// align-items: center;
|
||||
// right: 10px;
|
||||
margin-top: 10px;
|
||||
// top: 7px;
|
||||
}
|
||||
.chooseMessage {
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
}
|
||||
// /deep/ .van-icon-clear {
|
||||
// margin-right: 46px;
|
||||
// // background-color:blue ;
|
||||
// }
|
||||
</style>
|
||||
174
src/views/YB_APP/renewalDetail.vue
Normal file
@@ -0,0 +1,174 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<!-- 上方小图标 -->
|
||||
<div class="topTitle">
|
||||
<div v-if="changestate == 0">
|
||||
<van-icon name="underway-o" color="#EA070A" size="30" />
|
||||
<p class="topTitleText">续期待扣款</p>
|
||||
</div>
|
||||
<div v-if="changestate == 1">
|
||||
<van-icon name="passed" color="#2451C1" size="30" />
|
||||
<p class="topTitleText">续期扣款成功</p>
|
||||
</div>
|
||||
<div v-if="changestate == 3">
|
||||
<van-icon name="underway-o" color="#EA070A" size="30" />
|
||||
<p class="topTitleText">续期扣款中</p>
|
||||
</div>
|
||||
<div v-if="changestate == 2">
|
||||
<van-icon name="close" color="#EA070A" size="30" />
|
||||
<p class="topTitleText">续期扣款失败</p>
|
||||
</div>
|
||||
<div v-if="changestate == 4">
|
||||
<p><img src="../../assets/YB_APP/images/changestate.png" height="36px" /></p>
|
||||
<!-- <van-icon name="stop-circle-o" size="30"/> -->
|
||||
<p class="topTitleText">已终止</p>
|
||||
</div>
|
||||
</div>
|
||||
<!-- 中间内容 -->
|
||||
<div class="listContent">
|
||||
<van-cell-group inset>
|
||||
<van-cell title="保单号" :value="ybOrderDTOList.contNo" />
|
||||
<van-cell title="险种名称" :value="ybOrderDTOList.riskName" />
|
||||
<van-cell title="首期保费/元" :value="ybOrderDTOList.money" />
|
||||
<van-cell title="保额/元" :value="ybOrderDTOList.amnt" />
|
||||
<van-cell title="投保人" :value="ybOrderDTOList.appntName" />
|
||||
<van-cell title="被保险人" :value="ybOrderDTOList.insuredName" />
|
||||
<van-cell title="转账银行" :value="ybOrderDTOList.bankCode" />
|
||||
<van-cell title="转账帐号" :value="ybOrderDTOList.bankAccNo" />
|
||||
<van-cell title="交费次数" :value="ybOrderDTOList.payTimes" />
|
||||
<van-cell title="扣款失败原因" :value="ybOrderDTOList.defaultReson" v-if="changestate == 2" />
|
||||
<van-cell title="应交日" :value="ybOrderDTOList.payToDate" />
|
||||
<van-cell title="归属网点" :value="ybOrderDTOList.netWorkName" />
|
||||
<van-cell title="归属地市" :value="ybOrderDTOList.city" />
|
||||
<van-cell title="保单生效日" :value="ybOrderDTOList.cvalidate" />
|
||||
<van-cell title="归属指标" :value="ybOrderDTOList.rnewIndex" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
<!-- 下方拨打电话 -->
|
||||
<div class="bottomPhone">
|
||||
<button class="bottomPhoneBut" @click="showDialog(ybOrderDTOList.appntPhone)">拨打电话</button>
|
||||
</div>
|
||||
|
||||
<van-dialog
|
||||
v-model="show"
|
||||
title="确认拨打电话"
|
||||
:message="`(${ybOrderDTOList.appntPhone})`"
|
||||
show-cancel-button
|
||||
@cancel="cancel"
|
||||
@confirm="contact(ybOrderDTOList.appntPhone)"
|
||||
>
|
||||
</van-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { getYBRenewalInfo } from '@/api/YB_APP/index'
|
||||
import warterMark from '@/assets/js/utils/warterMark.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
name: 'policyDetail',
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
ybOrderDTOList: {},
|
||||
policyNo: {},
|
||||
changestate: '',
|
||||
show: false
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.policyNo.contNo = this.$route.query.contNo
|
||||
this.policyNo.payFlag = this.$route.query.payFlag
|
||||
this.policyNo.payToDate = this.$route.query.payToDate
|
||||
// console.log(this.policyNo, 'avc')
|
||||
console.log(this.$route.query, '我是router里参数')
|
||||
console.log(this.policyNo, 'avc111111111111')
|
||||
this.getYBRenewalInfo()
|
||||
this.changestate = this.policyNo.payFlag
|
||||
this.getAgentInfo()
|
||||
},
|
||||
methods: {
|
||||
// 水印
|
||||
getAgentInfo() {
|
||||
getAgentInfo({}).then((res) => {
|
||||
if (res.result == 0) {
|
||||
console.log('123')
|
||||
warterMark.set(res.name + res.jobNo, '')
|
||||
}
|
||||
})
|
||||
},
|
||||
cancel() {
|
||||
this.show = false
|
||||
},
|
||||
showDialog() {
|
||||
this.show = true // 显示确认对话框
|
||||
},
|
||||
contact() {
|
||||
const a = document.createElement('a')
|
||||
a.href = `tel:'${this.ybOrderDTOList.appntPhone}'`
|
||||
a.click()
|
||||
this.show = false
|
||||
},
|
||||
callPhone(phoneNumber) {
|
||||
window.location.href = 'tel://' + phoneNumber
|
||||
},
|
||||
getYBRenewalInfo() {
|
||||
// let params = {
|
||||
// policyNo
|
||||
// }
|
||||
console.log(this.policyNo, '我是this.policyNo')
|
||||
getYBRenewalInfo(this.policyNo).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
this.ybOrderDTOList = res.content
|
||||
console.log(this.ybOrderDTOList, '请求成功的res')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
/deep/ .van-cell__title {
|
||||
color: #0a0808;
|
||||
max-width: 30%;
|
||||
}
|
||||
/deep/ .van-cell__value {
|
||||
color: #777676;
|
||||
// text-align: left;
|
||||
}
|
||||
// /deep/ .van-cell-group >
|
||||
.topTitle {
|
||||
text-align: center;
|
||||
margin: 22px;
|
||||
}
|
||||
.topTitleText {
|
||||
font-weight: 700;
|
||||
margin-top: 4px;
|
||||
font-size: 14px;
|
||||
}
|
||||
.listContent {
|
||||
width: 96%;
|
||||
background-color: white;
|
||||
margin: 12px auto;
|
||||
overflow: hidden;
|
||||
border-radius: 12px;
|
||||
}
|
||||
.bottomPhone {
|
||||
text-align: center;
|
||||
margin-top: 30px;
|
||||
}
|
||||
.bottomPhoneBut {
|
||||
padding: 8px 40px;
|
||||
background-color: #fd3841;
|
||||
color: #ffffff;
|
||||
border: 0;
|
||||
border-radius: 24px;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
||||
449
src/views/YB_APP/renewalList.vue
Normal file
@@ -0,0 +1,449 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<!-- 最上方的搜索框 -->
|
||||
<div style="position: relative">
|
||||
<van-search shape="round" v-model="findValue" placeholder="请输入保单号/客户身份证号/客户姓名" />
|
||||
<button class="searchButton" @click="keywordSearch(findValue)">搜索</button>
|
||||
</div>
|
||||
<!-- 标签选择 -->
|
||||
<div>
|
||||
<van-tabs
|
||||
v-model="active"
|
||||
sticky
|
||||
color="#2551CA"
|
||||
line-width="20px"
|
||||
line-height="5px"
|
||||
title-active-color="#000000"
|
||||
title-inactive-color="#6A6A6A"
|
||||
title-active-font-width="14px"
|
||||
>
|
||||
<van-tab title="应收未收"></van-tab>
|
||||
<van-tab title="已交费"></van-tab>
|
||||
<van-tab title="扣费失败"></van-tab>
|
||||
<van-tab title="终止"></van-tab>
|
||||
</van-tabs>
|
||||
</div>
|
||||
<!-- 内容 -->
|
||||
<div>
|
||||
<!-- 应交月选择 -->
|
||||
<div class="beMonth">
|
||||
<p class="beMonthLeft">应交月 <span class="beMonthLeftSpan">(查询范围: 当前月份前期前溯3月~后推1月)</span></p>
|
||||
<p class="beMonthRight" @click="clickCalendar">
|
||||
<span class="beMonthRightSpan">{{ calendarValue }}</span
|
||||
>▼
|
||||
</p>
|
||||
</div>
|
||||
<!-- 无内容显示的背景 -->
|
||||
<div v-if="policyListDTOList == ''" style="position: relative">
|
||||
<img class="noContentImg" src="../../assets/YB_APP/images/noguarantee.png" />
|
||||
<p class="noContentText">暂无保单</p>
|
||||
</div>
|
||||
<!-- 卡片列表 -->
|
||||
<div v-if="policyListDTOList != ''">
|
||||
<!-- <van-list v-model="loading" :finished="finished" :finished-text="noContentTip" @load="onLoad"> -->
|
||||
<div :class="[active == 3 ? 'cardList2' : 'cardList']" v-for="(item, index) in policyListDTOList" :key="index">
|
||||
<div class="topbackground1">
|
||||
<img class="cardListImg" src="../../assets/YB_APP/images/sign1.png" />
|
||||
<span class="cardListText">{{ item.riskName }}</span>
|
||||
</div>
|
||||
<div class="cardConetent">
|
||||
<div class="textList">
|
||||
<p>
|
||||
<span>保单号</span><span>{{ item.contNo }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>被保人</span><span>{{ item.insuredName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>被保险人</span><span>{{ item.appntName }}</span>
|
||||
</p>
|
||||
<p v-if="active == 3">
|
||||
<span>转账银行</span><span>{{ item.bankName }}</span>
|
||||
</p>
|
||||
<p v-if="active == 3">
|
||||
<span>转账帐号</span><span>{{ item.accNo }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>应交日</span><span>{{ item.payToDate }}</span>
|
||||
</p>
|
||||
<p v-if="active != 3">
|
||||
<span>归属指标</span><span>{{ item.rnewIndex }}</span>
|
||||
</p>
|
||||
<p v-if="active == 3">
|
||||
<span>所属渠道</span><span>{{ item.policySource }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span v-if="active == 3">终止原因</span><span>{{ item.terminateReason }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>金额/元</span><span class="redword">{{ item.money }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>保单状态</span><span>{{ item.state }}</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="rightState">
|
||||
<button :class="[active == 3 ? 'rightStateButton2' : 'rightStateButton']" @click="goPolicyDetail(item)">查看详情</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- </van-list> -->
|
||||
</div>
|
||||
</div>
|
||||
<van-popup v-model="calendarShow" position="bottom">
|
||||
<van-datetime-picker
|
||||
v-model="currentDate"
|
||||
type="year-month"
|
||||
title="选择日期"
|
||||
:min-date="minDate"
|
||||
:max-date="maxDate"
|
||||
@cancel="handleCurrentDateCancel"
|
||||
@confirm="handleCurrentDateConfirm"
|
||||
/>
|
||||
</van-popup>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Button, Search } from 'vant'
|
||||
import { ref } from 'vue'
|
||||
import { getYBRenewalsList } from '@/api/YB_APP/index'
|
||||
import utils from '@/assets/js/utils/date-utils'
|
||||
import warterMark from '@/assets/js/utils/warterMark.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
name: 'renewalList',
|
||||
components: {
|
||||
[Button.name]: Button,
|
||||
[Search.name]: Search
|
||||
},
|
||||
setup() {
|
||||
const value = ref('')
|
||||
return { value }
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
findValue: '', // 上面搜索框的value
|
||||
active: '', // 四个选项卡的v-model
|
||||
policyListDTOList: [], // 卡片列表内容
|
||||
calendarValue: '',
|
||||
calendarShow: false,
|
||||
currentDate: new Date(),
|
||||
minDate: '',
|
||||
maxDate: '',
|
||||
params: {
|
||||
payDate: '', // 必传扣款日
|
||||
// contNo: '', // 保单号
|
||||
// idNo: '', // 身份证号
|
||||
// payToDate: '', // 时间
|
||||
state: '', // 状态
|
||||
otherNo: '' // 搜索条件
|
||||
// userModel: {
|
||||
// id: 'Y0000001'
|
||||
// }
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {},
|
||||
mounted() {
|
||||
this.$toast.loading({
|
||||
duration: 0, // 持续展示 toast
|
||||
forbidClick: true, // 禁用背景点击
|
||||
loadingType: 'spinner',
|
||||
message: '加载中……'
|
||||
})
|
||||
let aaa = new Date().getMonth() + 1
|
||||
let bbb = aaa - 3
|
||||
let ccc = aaa + 1
|
||||
this.minDate = new Date(2023, bbb, 0)
|
||||
this.maxDate = new Date(2023, ccc, 0)
|
||||
console.log(this.minDate, 1111)
|
||||
let yearNum = new Date().getFullYear()
|
||||
let monthNum = new Date().getMonth() + 1
|
||||
if (monthNum < 10) {
|
||||
monthNum = '0' + monthNum
|
||||
}
|
||||
this.calendarValue = yearNum + '-' + monthNum
|
||||
this.getYBRenewalsList()
|
||||
this.getAgentInfo()
|
||||
},
|
||||
methods: {
|
||||
// 水印
|
||||
getAgentInfo() {
|
||||
getAgentInfo({}).then((res) => {
|
||||
if (res.result == 0) {
|
||||
console.log('123')
|
||||
warterMark.set(res.name + res.jobNo, '')
|
||||
}
|
||||
})
|
||||
},
|
||||
// 上方关键词搜索按钮
|
||||
keywordSearch(value) {
|
||||
console.log('点击搜索了')
|
||||
this.params.otherNo = value
|
||||
this.getYBRenewalsList()
|
||||
},
|
||||
getYBRenewalsList() {
|
||||
let that = this
|
||||
getYBRenewalsList(that.params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
that.policyListDTOList = res.content.list
|
||||
console.log(res.content.list, 'data里的policyListDTOList')
|
||||
} else {
|
||||
that.policyListDTOList = ''
|
||||
}
|
||||
})
|
||||
},
|
||||
// (查看详情)按钮跳转
|
||||
goPolicyDetail(data) {
|
||||
console.log(data, '我是date')
|
||||
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/renewalDetail?contNo=' + data.contNo + '&payFlag=' + data.payFlag + '&payToDate=' + data.payToDate
|
||||
},
|
||||
routerInfo: {
|
||||
path: `/YB_APP/renewalDetail?contNo=${data.contNo}&payFlag=${data.payFlag}+&payToDate=${data.payToDate}`
|
||||
}
|
||||
})
|
||||
},
|
||||
clickCalendar() {
|
||||
this.calendarShow = true
|
||||
},
|
||||
handleCurrentDateCancel() {
|
||||
this.calendarShow = false
|
||||
},
|
||||
handleCurrentDateConfirm(e) {
|
||||
this.calendarShow = false
|
||||
// let titleTime = utils.formatDate(e, 'yyyy-MM')
|
||||
// this.calendarValue = utils.formatDate(e, 'MM-dd')
|
||||
let yearNum = utils.formatDate(e, 'yyyy')
|
||||
let monthNum = utils.formatDate(e, 'MM')
|
||||
this.calendarValue = yearNum + '-' + monthNum
|
||||
// this.getYBRenewalsList()
|
||||
}
|
||||
},
|
||||
watch: {
|
||||
active: {
|
||||
deep: true,
|
||||
handler(newvalue) {
|
||||
this.params.state = newvalue
|
||||
this.getYBRenewalsList()
|
||||
}
|
||||
},
|
||||
calendarValue: {
|
||||
deep: true,
|
||||
handler(newvalue) {
|
||||
this.params.payDate = newvalue
|
||||
this.getYBRenewalsList()
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
/deep/ .van-hairline--top-bottom::after {
|
||||
border: 0px;
|
||||
}
|
||||
/deep/ .van-tab--active {
|
||||
font-weight: 800;
|
||||
font-size: 15px;
|
||||
}
|
||||
.searchButton {
|
||||
position: absolute;
|
||||
top: 2.67vw;
|
||||
right: 3.2vw;
|
||||
background-color: #2154cc;
|
||||
color: #ffffff;
|
||||
border-radius: 18px;
|
||||
// padding: 8px 15px;
|
||||
font-size: 12px;
|
||||
border: 0px;
|
||||
height: 34px;
|
||||
width: 56px;
|
||||
}
|
||||
.beMonth {
|
||||
width: 94%;
|
||||
margin: 0 auto;
|
||||
display: flex;
|
||||
justify-content: space-between;
|
||||
height: 50px;
|
||||
line-height: 50px;
|
||||
}
|
||||
/deep/ .van-icon-clear {
|
||||
margin-right: 46px;
|
||||
// background-color:blue ;
|
||||
}
|
||||
.beMonthLeft {
|
||||
font-size: 14px;
|
||||
color: #323232;
|
||||
font-weight: 600;
|
||||
}
|
||||
.beMonthLeftSpan {
|
||||
font-weight: 500;
|
||||
font-size: 12px;
|
||||
color: #929292;
|
||||
}
|
||||
.beMonthRight {
|
||||
background-color: #ffffff;
|
||||
height: 24px;
|
||||
padding: 2px 5px;
|
||||
margin-top: 12px;
|
||||
line-height: 24px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
.beMonthRightSpan {
|
||||
margin-right: 5px;
|
||||
}
|
||||
.noContentImg {
|
||||
height: 216px;
|
||||
// width: 285px;
|
||||
position: absolute;
|
||||
top: 66px;
|
||||
left: calc(50% - 142px);
|
||||
}
|
||||
.noContentText {
|
||||
font-size: 12px;
|
||||
position: absolute;
|
||||
top: 225px;
|
||||
left: calc(50% - 24px);
|
||||
color: #b3b5ca;
|
||||
}
|
||||
.cardList {
|
||||
// height: 244px;
|
||||
// height: 300px;
|
||||
width: 96%;
|
||||
border-radius: 12px;
|
||||
background-color: white;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
.cardList2 {
|
||||
// height: 244px;
|
||||
// height: 300px;
|
||||
width: 96%;
|
||||
border-radius: 12px;
|
||||
background-color: white;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
.cardListImg {
|
||||
height: 16px;
|
||||
// width: 14px;
|
||||
margin: 0 7px;
|
||||
/*position: absolute;*/
|
||||
}
|
||||
.rightState {
|
||||
// height: 100%;
|
||||
// width: 32%;
|
||||
// background-color: white;
|
||||
display: flex;
|
||||
}
|
||||
.rightStateImg {
|
||||
height: 100px;
|
||||
width: 100px;
|
||||
}
|
||||
.rightStateButton {
|
||||
height: 30px;
|
||||
width: 78px;
|
||||
color: #d7523b;
|
||||
border: #d7523b 1px solid;
|
||||
border-radius: 30px;
|
||||
background-color: white;
|
||||
margin-bottom: 14px;
|
||||
// margin-top: 113px;
|
||||
margin-left: 4px;
|
||||
font-size: 12px;
|
||||
align-self: flex-end;
|
||||
}
|
||||
.rightStateButton2 {
|
||||
height: 30px;
|
||||
width: 78px;
|
||||
color: #d7523b;
|
||||
border: #d7523b 1px solid;
|
||||
border-radius: 30px;
|
||||
background-color: white;
|
||||
// margin-top: 57px;
|
||||
margin-bottom: 14px;
|
||||
margin-left: 4px;
|
||||
font-size: 12px;
|
||||
align-self: flex-end;
|
||||
}
|
||||
.cardListText {
|
||||
line-height: 34px;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.cardConetent {
|
||||
// height: 22.5vh;
|
||||
width: 100%;
|
||||
padding: 0px 20px;
|
||||
display: flex;
|
||||
}
|
||||
.textList {
|
||||
height: 90%;
|
||||
width: 68%;
|
||||
color: #9d9d9d;
|
||||
padding-top: 16px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.textList > p {
|
||||
display: flex;
|
||||
margin-bottom: 11px;
|
||||
}
|
||||
.textList > p > span:nth-of-type(1) {
|
||||
display: block;
|
||||
// float:left;
|
||||
width: 50px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
// background-color: blueviolet;
|
||||
color: #373737;
|
||||
}
|
||||
.textList > p > span:nth-of-type(2) {
|
||||
// width: 5vh;
|
||||
// background-color: rgb(65, 214, 77);
|
||||
margin-left: 28px;
|
||||
width: 164px;
|
||||
// background-color: chartreuse;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
text-overflow: ellipsis;
|
||||
}
|
||||
// .active {
|
||||
// color: #f22220;
|
||||
// }
|
||||
.topbackground1 {
|
||||
background: linear-gradient(to right, #435898, #6581c6);
|
||||
height: 34px;
|
||||
width: 100%;
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
// .topbackground2 {
|
||||
// background: linear-gradient(to right, #fcfcfc, #e8e5e6);
|
||||
// height: 34px;
|
||||
// width: 100%;
|
||||
// color: #323232;
|
||||
// display: flex;
|
||||
// align-items: center;
|
||||
// }
|
||||
.redword {
|
||||
color: #e72611;
|
||||
font-weight: 700;
|
||||
font-size: 14px;
|
||||
}
|
||||
</style>
|
||||
98
src/views/YB_APP/saveallDetail.vue
Normal file
@@ -0,0 +1,98 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<!-- 中间内容 -->
|
||||
<div class="listContent">
|
||||
<van-cell-group inset>
|
||||
<van-cell title="保单号" :value="ybOrderDTOList.contNo" />
|
||||
<van-cell title="保全项目" :value="ybOrderDTOList.edorName" />
|
||||
<van-cell title="投保人" :value="ybOrderDTOList.appntName" />
|
||||
<van-cell title="网点名称" :value="ybOrderDTOList.networdName" />
|
||||
<van-cell title="险种名称" :value="ybOrderDTOList.riskName" />
|
||||
<van-cell title="首期规模保费/元" :value="ybOrderDTOList.prem" />
|
||||
<van-cell title="保单累计已交保费/元" :value="ybOrderDTOList.sumPrem" />
|
||||
<van-cell title="承保日期" :value="ybOrderDTOList.signDate" />
|
||||
<van-cell title="保全申请日期" :value="ybOrderDTOList.edorAppDate" />
|
||||
<van-cell title="保全生效日期" :value="ybOrderDTOList.edorValiDate" />
|
||||
<van-cell title="保单状态" :value="ybOrderDTOList.contState" />
|
||||
<van-cell title="申请渠道" :value="ybOrderDTOList.appChannel" />
|
||||
<van-cell title="办理类型" :value="ybOrderDTOList.appType" />
|
||||
<van-cell title="代办顾问姓名" :value="ybOrderDTOList.agencyName" />
|
||||
<van-cell title="代办顾问工号" :value="ybOrderDTOList.agencyCode" />
|
||||
<van-cell title="保全进度" :value="ybOrderDTOList.edorState" />
|
||||
<van-cell title="交易状态" :value="ybOrderDTOList.transState" />
|
||||
<van-cell title="交易账户银行" :value="ybOrderDTOList.transBank" />
|
||||
<van-cell title="交易账户" :value="ybOrderDTOList.transCardNo" />
|
||||
<van-cell title="交易金额/元" :value="ybOrderDTOList.transMoney" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { ybSaveAllDetail } from '@/api/YB_APP/index'
|
||||
import warterMark from "@/assets/js/utils/warterMark.js"
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
name: 'policyDetail',
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
ybOrderDTOList: '',
|
||||
policyNo: ''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.policyNo = this.$route.query.policyNo
|
||||
console.log(this.policyNo, 'avc')
|
||||
this.ybSaveAllDetail()
|
||||
this.getAgentInfo()
|
||||
},
|
||||
methods: {
|
||||
// 水印
|
||||
getAgentInfo(){
|
||||
getAgentInfo({}).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log('123')
|
||||
warterMark.set(res.name+res.jobNo,"")
|
||||
}
|
||||
})
|
||||
},
|
||||
ybSaveAllDetail() {
|
||||
let params = {
|
||||
edorAcceptNo: this.policyNo
|
||||
}
|
||||
console.log('我是log')
|
||||
ybSaveAllDetail(params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
this.ybOrderDTOList = res.content
|
||||
console.log(this.ybOrderDTOList, '请求成功的res')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
/deep/ .van-cell__title {
|
||||
color: #0a0808;
|
||||
max-width: 40%;
|
||||
}
|
||||
/deep/ .van-cell__value {
|
||||
color: #777676;
|
||||
// text-align: left;
|
||||
}
|
||||
// /deep/ .van-cell-group >
|
||||
.listContent {
|
||||
width: 96%;
|
||||
background-color: white;
|
||||
margin: 12px auto;
|
||||
overflow: hidden;
|
||||
border-radius: 12px;
|
||||
}
|
||||
</style>
|
||||
93
src/views/YB_APP/saveallDetailTwo.vue
Normal file
@@ -0,0 +1,93 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<!-- 中间内容 -->
|
||||
<div class="listContent">
|
||||
<van-cell-group inset>
|
||||
<van-cell title="保单号" :value="ybOrderDTOList.contNo" />
|
||||
<van-cell title="投保人" :value="ybOrderDTOList.appntName" />
|
||||
<van-cell title="投保人身份证号" :value="ybOrderDTOList.appntIdNo" />
|
||||
<van-cell title="投保人年龄/周岁" :value="ybOrderDTOList.appntAge" />
|
||||
<van-cell title="网点名称" :value="ybOrderDTOList.networkName" />
|
||||
<van-cell title="险种名称" :value="ybOrderDTOList.riskName" />
|
||||
<van-cell title="首期规模保费/元" :value="ybOrderDTOList.prem" />
|
||||
<van-cell title="交费期间" :value="ybOrderDTOList.payEndYear" />
|
||||
<van-cell title="保险期间" :value="ybOrderDTOList.insuYear" />
|
||||
<van-cell title="保全状态" :value="ybOrderDTOList.contState" />
|
||||
<van-cell title="承保日期" :value="ybOrderDTOList.signDate" />
|
||||
<van-cell title="保单现金价值/元" :value="ybOrderDTOList.cashValue" />
|
||||
<van-cell title="累计账户红利余额/元 (含本期)" :value="ybOrderDTOList.bonusMoney" />
|
||||
<van-cell title="累计账户生存金余额/元 (含本期)" :value="ybOrderDTOList.survivalMoney" />
|
||||
<van-cell title="满期生存金/元" :value="ybOrderDTOList.getMoney" />
|
||||
</van-cell-group>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { ybSaveManyDetail } from '@/api/YB_APP/index'
|
||||
import warterMark from "@/assets/js/utils/warterMark.js"
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
name: 'policyDetail',
|
||||
components: {},
|
||||
data() {
|
||||
return {
|
||||
ybOrderDTOList: '',
|
||||
policyNo: ''
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.policyNo = this.$route.query.policyNo
|
||||
console.log(this.policyNo, 'avc')
|
||||
this.ybSaveManyDetail()
|
||||
this.getAgentInfo()
|
||||
},
|
||||
methods: {
|
||||
// 水印
|
||||
getAgentInfo(){
|
||||
getAgentInfo({}).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log('123')
|
||||
warterMark.set(res.name+res.jobNo,"")
|
||||
}
|
||||
})
|
||||
},
|
||||
ybSaveManyDetail() {
|
||||
let params = {
|
||||
contNo: this.policyNo
|
||||
}
|
||||
console.log('我是log')
|
||||
ybSaveManyDetail(params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
this.ybOrderDTOList = res.content
|
||||
console.log(this.ybOrderDTOList, '请求成功的res')
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
/deep/ .van-cell__title {
|
||||
color: #0a0808;
|
||||
max-width: 50%;
|
||||
}
|
||||
/deep/ .van-cell__value {
|
||||
color: #777676;
|
||||
// text-align: left;
|
||||
}
|
||||
// /deep/ .van-cell-group >
|
||||
.listContent {
|
||||
width: 96%;
|
||||
background-color: white;
|
||||
margin: 12px auto;
|
||||
overflow: hidden;
|
||||
border-radius: 12px;
|
||||
}
|
||||
</style>
|
||||
403
src/views/YB_APP/saveallList.vue
Normal file
@@ -0,0 +1,403 @@
|
||||
<template>
|
||||
<div class="public_container">
|
||||
<!-- 最上方的搜索框 -->
|
||||
<div style="position: relative">
|
||||
<van-search shape="round" v-model="findValue" placeholder="请输入保单号/客户身份证号" />
|
||||
<button class="searchButton" @click="keywordSearch(findValue)">搜索</button>
|
||||
</div>
|
||||
<!-- 标签选择 -->
|
||||
<div>
|
||||
<van-tabs
|
||||
v-model="active"
|
||||
color="#2551CA"
|
||||
line-width="20px"
|
||||
line-height="5px"
|
||||
title-active-color="#000000"
|
||||
title-inactive-color="#6A6A6A"
|
||||
title-active-font-width="14px"
|
||||
>
|
||||
<!-- 保全申请进度第一个标签内容 -->
|
||||
<van-tab title="保全申请进度">
|
||||
<!-- 温馨提示 -->
|
||||
<div>
|
||||
<p class="warmTip">
|
||||
<img class="warmImg" src="../../assets/YB_APP/images/plaint.png" /><span>温馨提示: 支持保单号或投保人身份证号查询保全申请进度。</span>
|
||||
</p>
|
||||
</div>
|
||||
<!-- 无内容显示的背景 -->
|
||||
<div v-if="policyListDTOList == ''" style="position: relative">
|
||||
<img class="noContentImg" src="../../assets/YB_APP/images/noguarantee.png" />
|
||||
<p class="noContentText">暂无保单</p>
|
||||
</div>
|
||||
<!-- 卡片列表 -->
|
||||
<div v-if="policyListDTOList != ''">
|
||||
<!-- <van-list v-model="loading" :finished="finished" :finished-text="noContentTip" @load="onLoad"> -->
|
||||
<div class="cardList" v-for="(item, index) in policyListDTOList" :key="index">
|
||||
<div class="topbackground1">
|
||||
<img class="cardListImg" src="../../assets/YB_APP/images/sign1.png" />
|
||||
<span class="cardListText">{{ item.riskName }}</span>
|
||||
</div>
|
||||
<div class="cardConetent">
|
||||
<div class="textList">
|
||||
<p>
|
||||
<span>保单号</span><span>{{ item.contNo }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>保全项目</span><span>{{ item.edorName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>投保人</span><span>{{ item.appntName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>网点名称</span><span>{{ item.networkName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>申请日期</span><span>{{ item.edorAppDate }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>保全状态</span><span>{{ item.edorState }}</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="rightState">
|
||||
<button class="rightStateButton" @click="goPolicyDetail(item.edorAcceptNo)">查看详情</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- </van-list> -->
|
||||
</div>
|
||||
</van-tab>
|
||||
<!-- 现金价值第二个标签内容 -->
|
||||
<van-tab title="现金价值"
|
||||
><div>
|
||||
<p class="warmTip">
|
||||
<img class="warmImg" src="../../assets/YB_APP/images/plaint.png" /><span>温馨提示: 支持保单号或投保人身份证号查询保全申请进度。</span>
|
||||
</p>
|
||||
</div>
|
||||
<!-- 无内容显示的背景 -->
|
||||
<div v-if="policyListDTOListTwo == ''" style="position: relative">
|
||||
<img class="noContentImg" src="../../assets/YB_APP/images/noguarantee.png" />
|
||||
<p class="noContentText">暂无保单</p>
|
||||
</div>
|
||||
<!-- 卡片列表 -->
|
||||
<div v-if="policyListDTOListTwo != ''">
|
||||
<!-- <van-list v-model="loading" :finished="finished" :finished-text="noContentTip2" @load="onLoad"> -->
|
||||
<div class="cardList" v-for="(item, index) in policyListDTOListTwo" :key="index">
|
||||
<div class="topbackground1">
|
||||
<img class="cardListImg" src="../../assets/YB_APP/images/sign1.png" />
|
||||
<span class="cardListText">{{ item.riskName }}</span>
|
||||
</div>
|
||||
<div class="cardConetent">
|
||||
<div class="textList">
|
||||
<p>
|
||||
<span>保单号</span><span>{{ item.contNo }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>投保人</span><span>{{ item.appntName }}</span>
|
||||
</p>
|
||||
<p>
|
||||
<span>承保日期</span><span>{{ item.signDate }}</span>
|
||||
</p>
|
||||
</div>
|
||||
<div class="rightState">
|
||||
<button class="rightStateButton2" @click="goPolicyDetail2(item.contNo)">查看详情</button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
<!-- </van-list> -->
|
||||
</div></van-tab
|
||||
>
|
||||
</van-tabs>
|
||||
</div>
|
||||
<!-- 内容 -->
|
||||
<div></div>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Button, Search } from 'vant'
|
||||
import { ref } from 'vue'
|
||||
import { getSaveAllList, ybSaveManyList } from '@/api/YB_APP/index'
|
||||
import warterMark from '@/assets/js/utils/warterMark.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
name: 'renewalList',
|
||||
components: {
|
||||
[Button.name]: Button,
|
||||
[Search.name]: Search
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
findValue: '', // 上面搜索框的value
|
||||
active: '', // 两个选项卡的v-model
|
||||
policyListDTOList: [], // 保全申请进度卡片列表内容
|
||||
policyListDTOListTwo: [], // 现金价值卡片列表内容
|
||||
params: {
|
||||
otherNo: '' // 搜索按钮入参
|
||||
}
|
||||
}
|
||||
},
|
||||
created() {},
|
||||
mounted() {
|
||||
// this.getSaveAllList()
|
||||
// this.ybSaveManyList()
|
||||
console.log(this.active, '我是active')
|
||||
this.getAgentInfo()
|
||||
},
|
||||
methods: {
|
||||
// 水印
|
||||
getAgentInfo() {
|
||||
getAgentInfo({}).then((res) => {
|
||||
if (res.result == 0) {
|
||||
console.log('123')
|
||||
warterMark.set(res.name + res.jobNo, '')
|
||||
}
|
||||
})
|
||||
},
|
||||
getSaveAllList() {
|
||||
let that = this
|
||||
console.log('我是log123第一个接口的')
|
||||
// 保全申请列表
|
||||
getSaveAllList(that.params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
that.policyListDTOList = res.content
|
||||
that.policyListDTOListTwo = ''
|
||||
console.log(this.policyListDTOList, 'data里的policyListDTOList')
|
||||
} else {
|
||||
that.policyListDTOList = ''
|
||||
that.policyListDTOListTwo = ''
|
||||
}
|
||||
})
|
||||
},
|
||||
ybSaveManyList() {
|
||||
let that = this
|
||||
console.log('我是log123第二个接口的')
|
||||
// 现金价值
|
||||
ybSaveManyList(that.params).then((res) => {
|
||||
console.log(res, '我是res')
|
||||
if (res.result == 0) {
|
||||
that.policyListDTOListTwo = res.content
|
||||
that.policyListDTOList = ''
|
||||
console.log(this.policyListDTOListTwo, 'data里的policyListDTOListTwo')
|
||||
} else {
|
||||
that.policyListDTOListTwo = ''
|
||||
that.policyListDTOList = ''
|
||||
}
|
||||
})
|
||||
},
|
||||
// 上方关键词搜索按钮
|
||||
keywordSearch(value) {
|
||||
console.log('点击搜索了')
|
||||
// this.params.idNo = value
|
||||
this.params.otherNo = value
|
||||
if (this.active == 0) {
|
||||
this.getSaveAllList()
|
||||
} else if (this.active == 1) {
|
||||
this.ybSaveManyList()
|
||||
}
|
||||
},
|
||||
// (查看详情)按钮跳转
|
||||
goPolicyDetail(data) {
|
||||
console.log(data)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/saveallDetail?policyNo=' + data
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/saveallDetail?policyNo=' + data
|
||||
}
|
||||
})
|
||||
},
|
||||
goPolicyDetail2(data) {
|
||||
console.log(data)
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + '/#/YB_APP/saveallDetailTwo?policyNo=' + data
|
||||
},
|
||||
routerInfo: {
|
||||
path: '/YB_APP/saveallDetailTwo?policyNo=' + data
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container {
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
}
|
||||
|
||||
/deep/ .van-hairline--top-bottom::after {
|
||||
border: 0px;
|
||||
}
|
||||
/deep/ .van-tab--active {
|
||||
font-weight: 800;
|
||||
font-size: 15px;
|
||||
}
|
||||
/deep/ .van-icon-clear {
|
||||
margin-right: 46px;
|
||||
// background-color:blue ;
|
||||
}
|
||||
.searchButton {
|
||||
position: absolute;
|
||||
top: 2.67vw;
|
||||
right: 3.2vw;
|
||||
background-color: #2154cc;
|
||||
color: #ffffff;
|
||||
border-radius: 18px;
|
||||
// padding: 8px 15px;
|
||||
font-size: 12px;
|
||||
border: 0px;
|
||||
height: 34px;
|
||||
width: 56px;
|
||||
}
|
||||
.noContentImg {
|
||||
height: 216px;
|
||||
// width: 285px;
|
||||
position: absolute;
|
||||
top: 44px;
|
||||
left: calc(50% - 142px);
|
||||
}
|
||||
.noContentText {
|
||||
font-size: 12px;
|
||||
position: absolute;
|
||||
top: 203px;
|
||||
left: calc(50% - 24px);
|
||||
color: #b3b5ca;
|
||||
}
|
||||
.cardList {
|
||||
// height: 244px;
|
||||
// height: 226px;
|
||||
width: 96%;
|
||||
border-radius: 12px;
|
||||
background-color: white;
|
||||
margin: 0 auto;
|
||||
overflow: hidden;
|
||||
margin-bottom: 12px;
|
||||
}
|
||||
// .cardList2 {
|
||||
// height: 136px;
|
||||
// width: 96%;
|
||||
// border-radius: 12px;
|
||||
// background-color: white;
|
||||
// margin: 0 auto;
|
||||
// overflow: hidden;
|
||||
// margin-bottom: 12px;
|
||||
// }
|
||||
.cardListImg {
|
||||
height: 16px;
|
||||
// width: 14px;
|
||||
margin: 0 7px;
|
||||
/*position: absolute;*/
|
||||
}
|
||||
.rightState {
|
||||
display: flex;
|
||||
// height: 100%;
|
||||
// width: 32%;
|
||||
// background-color: rgb(236, 9, 9);
|
||||
}
|
||||
.rightStateImg {
|
||||
height: 100px;
|
||||
width: 100px;
|
||||
}
|
||||
.rightStateButton {
|
||||
height: 30px;
|
||||
width: 78px;
|
||||
color: #d7523b;
|
||||
border: #d7523b 1px solid;
|
||||
border-radius: 30px;
|
||||
background-color: white;
|
||||
margin-bottom: 14px;
|
||||
margin-left: 4px;
|
||||
font-size: 12px;
|
||||
align-self: flex-end;
|
||||
}
|
||||
.rightStateButton2 {
|
||||
height: 30px;
|
||||
width: 78px;
|
||||
color: #d7523b;
|
||||
border: #d7523b 1px solid;
|
||||
border-radius: 30px;
|
||||
background-color: white;
|
||||
margin-bottom: 14px;
|
||||
margin-left: 4px;
|
||||
font-size: 12px;
|
||||
align-self: flex-end;
|
||||
}
|
||||
.cardListText {
|
||||
line-height: 34px;
|
||||
font-weight: 600;
|
||||
font-size: 14px;
|
||||
height: 100%;
|
||||
width: 100%;
|
||||
}
|
||||
.cardConetent {
|
||||
// height: 22.5vh;
|
||||
width: 100%;
|
||||
// padding: 0px 20px;
|
||||
display: flex;
|
||||
}
|
||||
.textList {
|
||||
// height: 90%;
|
||||
// width: 68%;
|
||||
padding-left: 20px;
|
||||
color: #9d9d9d;
|
||||
padding-top: 16px;
|
||||
font-size: 12px;
|
||||
}
|
||||
.textList > p {
|
||||
display: flex;
|
||||
margin-bottom: 11px;
|
||||
line-height: 20px;
|
||||
}
|
||||
.textList > p > span:nth-of-type(1) {
|
||||
display: block;
|
||||
// float:left;
|
||||
width: 50px;
|
||||
overflow: hidden;
|
||||
white-space: nowrap;
|
||||
// background-color: blueviolet;
|
||||
color: #3e3c3d;
|
||||
}
|
||||
.textList > p > span:nth-of-type(2) {
|
||||
// width: 5vh;
|
||||
// background-color: rgb(65, 214, 77);
|
||||
margin-left: 28px;
|
||||
width: 164px;
|
||||
// background-color: chartreuse;
|
||||
// overflow: hidden;
|
||||
// white-space: nowrap;
|
||||
// text-overflow: ellipsis;
|
||||
}
|
||||
.topbackground1 {
|
||||
background: linear-gradient(to right, #435898, #6581c6);
|
||||
height: 34px;
|
||||
width: 100%;
|
||||
color: white;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
}
|
||||
|
||||
.warmTip {
|
||||
white-space: nowrap;
|
||||
padding: 5px 0;
|
||||
height: 28px;
|
||||
background-color: #fff8ed;
|
||||
color: #c88b40;
|
||||
border: 1px solid #f8e7d7;
|
||||
margin: 10px;
|
||||
border-radius: 8px;
|
||||
text-align: center;
|
||||
line-height: 28px;
|
||||
}
|
||||
.warmImg {
|
||||
height: 14px;
|
||||
vertical-align: middle;
|
||||
margin-right: 6px;
|
||||
margin-bottom: 2px;
|
||||
}
|
||||
</style>
|
||||
208
src/views/YB_APP/service.vue
Normal file
@@ -0,0 +1,208 @@
|
||||
<template>
|
||||
<div class="public_container" style="position: relative;">
|
||||
<p class="messageIcon_con" @click="messageJump">
|
||||
<img class="messageIcon_con_img" v-if="!messages" src="@/assets/YB_APP/images/3.png">
|
||||
<img class="messageIcon_con_img" v-if="messages" src="@/assets/YB_APP/images/4.png">
|
||||
</p>
|
||||
|
||||
<div class="head">
|
||||
<span>服务</span>
|
||||
</div>
|
||||
|
||||
<div class="menu1">
|
||||
<p class="menu1_p">
|
||||
<img class="menu1_p_img" src="@/assets/YB_APP/images/15.png">
|
||||
<span class="menu1_p_span">投保相关</span>
|
||||
</p>
|
||||
<div class="menu1_div">
|
||||
<div v-for="(item, ind) in menu1" :key="ind" @click="pageJump(item)" class="menu1_div_div">
|
||||
<div>
|
||||
<img class="menu1_div_div_img" :src="item.img">
|
||||
</div>
|
||||
<p class="menu1_div_p">{{ item.title }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="menu2">
|
||||
<p class="menu2_p">
|
||||
<img class="menu2_p_img" src="@/assets/YB_APP/images/16.png">
|
||||
<span class="menu2_p_span">活动管理</span>
|
||||
</p>
|
||||
<div class="menu2_div">
|
||||
<div v-for="(item, ind) in menu2" :key="ind" @click="pageJump(item)" class="menu2_div_div">
|
||||
<div>
|
||||
<img class="menu2_div_div_img" :src="item.img">
|
||||
</div>
|
||||
<p class="menu2_div_p">{{ item.title }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="menu3">
|
||||
<p class="menu3_p">
|
||||
<img class="menu3_p_img" src="@/assets/YB_APP/images/21.png">
|
||||
<span class="menu3_p_span">扩展服务</span>
|
||||
</p>
|
||||
<div class="menu3_div">
|
||||
<div v-for="(item, ind) in menu3" :key="ind" @click="pageJump(item)" class="menu3_div_div">
|
||||
<div>
|
||||
<img class="menu3_div_div_img" :src="item.img">
|
||||
</div>
|
||||
<p class="menu3_div_p">{{ item.title }}</p>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { Icon } from 'vant'
|
||||
import { homeConfigYB } from '@/api/YB_APP/index'
|
||||
export default {
|
||||
name: 'service',
|
||||
components: {
|
||||
[Icon.name]: Icon,
|
||||
},
|
||||
data() {
|
||||
return {
|
||||
messages:false,
|
||||
menu1:[],
|
||||
menu2:[],
|
||||
menu3:[],
|
||||
}
|
||||
},
|
||||
mounted(){
|
||||
this.getHomeConfigYB()
|
||||
window['getMessage'] = (data) => {
|
||||
this.getMessage(data)
|
||||
}
|
||||
|
||||
},
|
||||
methods:{
|
||||
getMessage(data){
|
||||
if(data){
|
||||
console.log('111')
|
||||
this.messages = true
|
||||
}else{
|
||||
this.messages = false
|
||||
}
|
||||
},
|
||||
getHomeConfigYB(){
|
||||
let params = {
|
||||
|
||||
}
|
||||
homeConfigYB(params).then(res=>{
|
||||
if(res.result == 0){
|
||||
if(res.content.icon){
|
||||
res.content.icon.servicePageIcon.forEach(item=>{
|
||||
if(item.type == 'insure'){
|
||||
this.menu1.push({
|
||||
title:item.title,
|
||||
img:item.img,
|
||||
route:item.route
|
||||
})
|
||||
}
|
||||
if(item.type == 'activity'){
|
||||
this.menu2.push({
|
||||
title:item.title,
|
||||
img:item.img,
|
||||
route:item.route
|
||||
})
|
||||
}
|
||||
if(item.type == 'extend'){
|
||||
this.menu3.push({
|
||||
title:item.title,
|
||||
img:item.img,
|
||||
route:item.route
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
}else{
|
||||
this.$toast(res.resultMessage)
|
||||
}
|
||||
})
|
||||
},
|
||||
messageJump(){
|
||||
this.$jump({
|
||||
flag: 'message'
|
||||
})
|
||||
},
|
||||
pageJump(data){
|
||||
this.$jump({
|
||||
flag: 'h5',
|
||||
extra: {
|
||||
url: location.origin + data.route,
|
||||
},
|
||||
routerInfo: {
|
||||
path: data.route,
|
||||
},
|
||||
})
|
||||
},
|
||||
},
|
||||
}
|
||||
</script>
|
||||
<style lang="scss" scoped>
|
||||
.public_container{
|
||||
font-size: 12px;
|
||||
height: 100vh;
|
||||
width: 100vw;
|
||||
background-image: url("../../assets/YB_APP/images/10.png");
|
||||
background-repeat: no-repeat;
|
||||
background-size: contain;
|
||||
}
|
||||
.messageIcon_con{
|
||||
position: absolute;top: 50px;right: 15px;
|
||||
}
|
||||
.messageIcon_con_img{
|
||||
width:20px;
|
||||
}
|
||||
.head{
|
||||
color: #fff;font-size: 20px;padding-top: 50px;text-align: center;
|
||||
}
|
||||
.menu1,.menu2,.menu3{
|
||||
margin: 15px;background: #fff;border-radius: 5px;padding: 15px;margin-top: 25px;
|
||||
}
|
||||
.menu1_p{
|
||||
display:flex;align-items: center;margin-bottom: 15px;
|
||||
}
|
||||
.menu1_p_img{
|
||||
width:14px;
|
||||
}
|
||||
.menu1_p_span{
|
||||
font-size: 16px;font-weight: bold;margin-left: 15px;
|
||||
}
|
||||
.menu1_div,.menu2_div,.menu3_div{
|
||||
display:flex;justify-content: flex-sart;align-items: center;
|
||||
}
|
||||
.menu1_div_div{
|
||||
text-align: center;width: 25%;
|
||||
}
|
||||
.menu1_div_div_img{
|
||||
width: 34px;
|
||||
}
|
||||
.menu1_div_p,.menu2_div_p,.menu3_div_p{
|
||||
margin-top:5px;
|
||||
}
|
||||
.menu,.menu3{
|
||||
margin: 15px;background: #fff;border-radius: 5px;padding: 15px;margin-top: 25px;
|
||||
}
|
||||
.menu2_p,.menu3_p{
|
||||
display:flex;align-items: center;margin-bottom: 15px;
|
||||
}
|
||||
.menu2_p_img,.menu3_p_img{
|
||||
width:14px;
|
||||
}
|
||||
.menu2_p_span,.menu3_p_span{
|
||||
font-size: 16px;font-weight: bold;margin-left: 15px;
|
||||
}
|
||||
.menu2_div_div,.menu3_div_div{
|
||||
text-align: center;width: 25%;
|
||||
}
|
||||
.menu2_div_div_img,.menu3_div_div_img{
|
||||
width: 34px;
|
||||
}
|
||||
</style>
|
||||
@@ -21,7 +21,7 @@
|
||||
/>
|
||||
</van-list>
|
||||
<!-- 底部按钮 -->
|
||||
<div class="bottom-area bottom-btn">
|
||||
<div class="bottom-area bottom-btn" v-if="branchType != 3">
|
||||
<van-button class="m-btn fl green" color="#FEEFD8" @click="goProposal">制作建议书</van-button>
|
||||
<van-button class="m-btn fr" type="danger" @click="goInsure">立即投保</van-button>
|
||||
</div>
|
||||
@@ -33,6 +33,7 @@ import { Tab, Tabs, List, Row, Col, Icon, Cell, Sticky } from 'vant'
|
||||
import { getProductInfo } from '@/api/ebiz/product/product.js'
|
||||
import { funcPermCheck } from '@/api/ebiz/common/common'
|
||||
import riskRules from '../common/risk-rules.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
@@ -52,6 +53,7 @@ export default {
|
||||
docuList: [], // 产品资料文件
|
||||
introductImages: [], // 产品特色图片
|
||||
itemProductDTOS: [], // 产品信息
|
||||
branchType:'3',
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -64,7 +66,18 @@ export default {
|
||||
this.isCheck = res.result
|
||||
})
|
||||
},
|
||||
mounted(){
|
||||
this.getAgentInfo()
|
||||
},
|
||||
methods: {
|
||||
getAgentInfo(){
|
||||
getAgentInfo({}).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log('getAgentInfo',res)
|
||||
this.branchType = res.branchType
|
||||
}
|
||||
})
|
||||
},
|
||||
goDocu(url, type, name) {
|
||||
let pdfUrl = encodeURIComponent(url)
|
||||
this.$jump({
|
||||
|
||||
@@ -24,18 +24,32 @@
|
||||
</div>
|
||||
<!-- 侧边栏险种选择 -->
|
||||
<van-popup v-model="showSideBar" position="right" :style="{ width: '70%', height: '100%' }" :overlay-style="{ opacity: 0.3 }">
|
||||
<div class="product-list-risk-type pt10 pr20 pb10 pl20 fs14 " v-for="(item, index) in risks" :key="index">
|
||||
<div class="product-list-risk-type pt10 pr20 pb10 pl20 fs14 " v-for="(item, index) in searchList" :key="index" v-if="item.label != '渠道'">
|
||||
<p class="title fs16 c-gray-dark mt10 mb10">{{ item.label }}</p>
|
||||
<div class="product-list-risk-container mt10 flex justify-content-s">
|
||||
<van-tag
|
||||
:active="isActive[idx]"
|
||||
class="ml2 mr2 mb10 pt6 pb6 pl10 pr10 fs13"
|
||||
size="large"
|
||||
:color="isActive[idx] ? '#E9332E' : '#eaeaea'"
|
||||
:text-color="isActive[idx] ? '#fff' : '#333'"
|
||||
:color="ele.isActive? '#E9332E' : '#eaeaea'"
|
||||
:text-color="ele.isActive ? '#fff' : '#333'"
|
||||
v-for="(ele, idx) in item.content"
|
||||
:key="idx"
|
||||
@click="toggleActive(ele, idx)"
|
||||
@click="toggleActive(item,ele)"
|
||||
>{{ ele.name }}</van-tag
|
||||
>
|
||||
</div>
|
||||
</div>
|
||||
<div class="product-list-risk-type pt10 pr20 pb10 pl20 fs14 " v-for="(item, index) in searchList" :key="index" v-if="branchType == 3 && item.label == '渠道'">
|
||||
<p class="title fs16 c-gray-dark mt10 mb10">{{ item.label }}</p>
|
||||
<div class="product-list-risk-container mt10 flex justify-content-s">
|
||||
<van-tag
|
||||
class="ml2 mr2 mb10 pt6 pb6 pl10 pr10 fs13"
|
||||
size="large"
|
||||
:color="ele.isActive? '#E9332E' : '#eaeaea'"
|
||||
:text-color="ele.isActive ? '#fff' : '#333'"
|
||||
v-for="(ele, idx) in item.content"
|
||||
:key="idx"
|
||||
@click="toggleActive(item,ele)"
|
||||
>{{ ele.name }}</van-tag
|
||||
>
|
||||
</div>
|
||||
@@ -51,18 +65,20 @@
|
||||
<script>
|
||||
import { Popup, Tag } from 'vant'
|
||||
import { getCategory, getList } from '@/api/ebiz/product/product.js'
|
||||
import { getAgentInfo } from '@/api/ebiz/my/my.js'
|
||||
export default {
|
||||
data() {
|
||||
return {
|
||||
list: [], // 列表项(展示列表)
|
||||
proList: [], //所有的产品
|
||||
risks: ['全部', '健康险', '人寿险', '意外险', '年金险'], // 险别
|
||||
risks: [], // 险别
|
||||
label: '', // 筛选字段
|
||||
finished: true, // 是否已加载完成
|
||||
showSideBar: false, // 侧边弹框的显示与隐藏
|
||||
isActive: [true, false, false, false, false], // tag标签的选中高亮
|
||||
risk: '', // 选中的险种
|
||||
isSuccess: false
|
||||
branchType:'',
|
||||
isSuccess: false,
|
||||
searchList:[],
|
||||
}
|
||||
},
|
||||
created() {
|
||||
@@ -74,6 +90,7 @@ export default {
|
||||
}, 500)
|
||||
},
|
||||
mounted() {
|
||||
this.getAgentInfo()
|
||||
// 筛选按钮的点击事件
|
||||
window.appCallBack = this.appCallBack
|
||||
},
|
||||
@@ -82,6 +99,14 @@ export default {
|
||||
[Tag.name]: Tag
|
||||
},
|
||||
methods: {
|
||||
getAgentInfo(){
|
||||
getAgentInfo({}).then(res=>{
|
||||
if(res.result == 0){
|
||||
console.log('getAgentInfo',res)
|
||||
this.branchType = res.branchType
|
||||
}
|
||||
})
|
||||
},
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
appCallBack(data, flag) {
|
||||
// 筛选按钮的点击事件
|
||||
@@ -117,51 +142,87 @@ export default {
|
||||
const res = await getCategory({
|
||||
type: 'app'
|
||||
})
|
||||
console.log(res)
|
||||
if (res.result == 0) {
|
||||
this.risks = res.categorys
|
||||
// 写死添加全部
|
||||
// this.risks[0].content.push({
|
||||
// name:"全部",
|
||||
// code:''
|
||||
// })
|
||||
// this.label = res.categorys[0].label
|
||||
this.searchList = res.categorys
|
||||
this.searchList.forEach(item=>{
|
||||
item.content.forEach((items,index)=>{
|
||||
if(index == 0){
|
||||
items.isActive = true
|
||||
}else{
|
||||
items.isActive = false
|
||||
}
|
||||
|
||||
})
|
||||
})
|
||||
}
|
||||
},
|
||||
reset() {
|
||||
// 筛选的重置操作
|
||||
// 全部按钮选中; list全部匹配(点击全部的时候可以通过匹配规则匹配到所有的产品)
|
||||
this.isActive = [true, false, false, false, false]
|
||||
this.searchList.forEach(item=>{
|
||||
item.content.forEach((items,index)=>{
|
||||
if(index == 0){
|
||||
items.isActive = true
|
||||
}else{
|
||||
items.isActive = false
|
||||
}
|
||||
|
||||
})
|
||||
})
|
||||
this.list = this.proList
|
||||
this.showSideBar = false
|
||||
},
|
||||
submit() {
|
||||
// 筛选的确定操作
|
||||
this.isActive.some((item, index) => {
|
||||
if (item) {
|
||||
// 获取选中的险种
|
||||
this.risk = this.risks[0].content[index].code
|
||||
let params = {}
|
||||
this.searchList.forEach(item=>{
|
||||
item.content.forEach(item1=>{
|
||||
if(item1.isActive){
|
||||
params[item.codeType] = item1.code
|
||||
}
|
||||
})
|
||||
})
|
||||
let thisList = this.proList
|
||||
|
||||
thisList.forEach(item=>{
|
||||
item.select = true
|
||||
})
|
||||
for(let key in params){
|
||||
if(params[key]){
|
||||
thisList.forEach(item=>{
|
||||
if(item[key] != params[key]){
|
||||
item.select = false
|
||||
}
|
||||
})
|
||||
}
|
||||
}
|
||||
this.list = []
|
||||
thisList.forEach(item=>{
|
||||
if(item.select){
|
||||
this.list.push(item)
|
||||
}
|
||||
})
|
||||
this.showSideBar = false
|
||||
|
||||
// 根据选中险别对产品列表进行筛选
|
||||
this.list = this.proList.filter(item => {
|
||||
if (this.risk == '') {
|
||||
return item
|
||||
} else {
|
||||
return item.categoryCode.indexOf(this.risk) != -1
|
||||
},
|
||||
toggleActive(data1, data2) {
|
||||
// 筛选的点击事件
|
||||
this.searchList.forEach((item,index)=>{
|
||||
if(item.codeType == data1.codeType){
|
||||
item.content.forEach(item1=>{
|
||||
if(item1.code == data2.code){
|
||||
this.$nextTick(()=>{
|
||||
item1.isActive = true
|
||||
})
|
||||
}else{
|
||||
this.$nextTick(()=>{
|
||||
item1.isActive = false
|
||||
})
|
||||
}
|
||||
})
|
||||
}
|
||||
})
|
||||
},
|
||||
toggleActive(item, idx) {
|
||||
// 筛选的点击事件
|
||||
this.risk = item
|
||||
// eslint-disable-next-line no-unused-vars
|
||||
this.isActive = this.isActive.map(ele => {
|
||||
ele = false
|
||||
this.$nextTick(()=>{
|
||||
this.searchList = JSON.parse(JSON.stringify(this.searchList))
|
||||
})
|
||||
this.isActive[idx] = true
|
||||
},
|
||||
goDetail(productCode) {
|
||||
// 跳转到产品详情
|
||||
|
||||
@@ -33,7 +33,8 @@ module.exports = {
|
||||
// return options
|
||||
// })
|
||||
},
|
||||
devServer:{
|
||||
port:8082,
|
||||
devServer: {
|
||||
// host:'localhost',
|
||||
port: 8082
|
||||
}
|
||||
}
|
||||
|
||||
22
yarn.lock
@@ -788,7 +788,7 @@
|
||||
|
||||
"@vant/icons@1.1.13":
|
||||
version "1.1.13"
|
||||
resolved "https://registry.yarnpkg.com/@vant/icons/-/icons-1.1.13.tgz#ea77298f4f2b19ccc761005068a2c7436098e4d4"
|
||||
resolved "https://registry.npmmirror.com/@vant/icons/-/icons-1.1.13.tgz#ea77298f4f2b19ccc761005068a2c7436098e4d4"
|
||||
integrity sha512-r2EoKDQ4Xh82fo5jVY/m/+LZFfRhHp+ViagySExzlJ7t6JFtmK1OqB6HdFkXXbfEzB/48BvGoPVifFoYzke6KQ==
|
||||
|
||||
"@vue/babel-helper-vue-jsx-merge-props@^1.0.0":
|
||||
@@ -2804,10 +2804,10 @@ crypto-browserify@^3.11.0:
|
||||
randombytes "^2.0.0"
|
||||
randomfill "^1.0.3"
|
||||
|
||||
crypto-js@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.npm.taobao.org/crypto-js/download/crypto-js-4.0.0.tgz#2904ab2677a9d042856a2ea2ef80de92e4a36dcc"
|
||||
integrity sha1-KQSrJnep0EKFai6i74DekuSjbcw=
|
||||
crypto-js@^4.1.1:
|
||||
version "4.1.1"
|
||||
resolved "https://registry.npmmirror.com/crypto-js/-/crypto-js-4.1.1.tgz#9e485bcf03521041bd85844786b83fb7619736cf"
|
||||
integrity sha512-o2JlM7ydqd3Qk9CA0L4NL6mTzU2sdx96a+oOfPu8Mkl/PK51vSyoi8/rQ8NknZtk44vq15lmhAj9CIAGwgeWKw==
|
||||
|
||||
css-color-names@0.0.4, css-color-names@^0.0.4:
|
||||
version "0.0.4"
|
||||
@@ -5922,6 +5922,11 @@ js-queue@2.0.0:
|
||||
dependencies:
|
||||
easy-stack "^1.0.0"
|
||||
|
||||
js-sha256@^0.9.0:
|
||||
version "0.9.0"
|
||||
resolved "https://registry.npmmirror.com/js-sha256/-/js-sha256-0.9.0.tgz#0b89ac166583e91ef9123644bd3c5334ce9d0966"
|
||||
integrity sha512-sga3MHh9sgQN2+pJ9VYZ+1LPwXOxuBJBA5nrR5/ofPfuiJBE2hnjsaN8se8JznOmGLN2p49Pe5U/ttafcs/apA==
|
||||
|
||||
"js-tokens@^3.0.0 || ^4.0.0", js-tokens@^4.0.0:
|
||||
version "4.0.0"
|
||||
resolved "https://registry.yarnpkg.com/js-tokens/-/js-tokens-4.0.0.tgz#19203fb59991df98e3a287050d4647cdeaf32499"
|
||||
@@ -5977,6 +5982,11 @@ jsdom@^11.5.1:
|
||||
ws "^5.2.0"
|
||||
xml-name-validator "^3.0.0"
|
||||
|
||||
jsencrypt@^3.2.1:
|
||||
version "3.3.1"
|
||||
resolved "https://registry.npmmirror.com/jsencrypt/-/jsencrypt-3.3.1.tgz#5d47e6c1079bb50e714a36d009ba09ea81fbfa18"
|
||||
integrity sha512-dVvV54GdFuJgmEKn+oBiaifDMen4p6o6j/lJh0OVMcouME8sST0bJ7bldIgKBQk4za0zyGn0/pm4vOznR25mLw==
|
||||
|
||||
jsesc@^1.3.0:
|
||||
version "1.3.0"
|
||||
resolved "https://registry.yarnpkg.com/jsesc/-/jsesc-1.3.0.tgz#46c3fec8c1892b12b0833db9bc7622176dbab34b"
|
||||
@@ -9845,7 +9855,7 @@ validate-npm-package-license@^3.0.1:
|
||||
|
||||
vant@2.2.0:
|
||||
version "2.2.0"
|
||||
resolved "https://registry.yarnpkg.com/vant/-/vant-2.2.0.tgz#d0203f76435da034ff1e9036373971554e61edbc"
|
||||
resolved "https://registry.npmmirror.com/vant/-/vant-2.2.0.tgz#d0203f76435da034ff1e9036373971554e61edbc"
|
||||
integrity sha512-MHn7Jr83s5mDCdsM5rE/jgTuOrw0cCf/4q21x/QC7+kCLErFKlnwY8VkaBKlBvxd0HrjsNcmpeWR//K56bHW8w==
|
||||
dependencies:
|
||||
"@babel/runtime" "7.x"
|
||||
|
||||