Compare commits
563 Commits
Author | SHA1 | Date |
---|---|---|
thesai | f14e377565 | |
thesai | b302bb360b | |
thesai | 1e2ed4d305 | |
thesai | 436a07bcf4 | |
thesai | 235f4dce5b | |
thesai | ac87b0dbe9 | |
thesai | 3536ff75ad | |
thesai | f57952b755 | |
thesai | 9c9e7c60e3 | |
thesai | 98abf0691a | |
thesai | 16e8dc191f | |
tiger_zhou | 4f151fae4a | |
tiger_zhou | e93171e958 | |
thesai | 4cd80bbec5 | |
thesai | 8125e32d7e | |
thesai | e23864fa72 | |
thesai | 212773e679 | |
thesai | 495681db5d | |
thesai | dbe197eba6 | |
thesai | cee9eda430 | |
thesai | 0d10203613 | |
thesai | 99a772a050 | |
thesai | ba1e057bce | |
thesai | 6187e6d667 | |
thesai | bef6dda6b2 | |
thesai | 5d15ba3240 | |
thesai | aae729b637 | |
thesai | 2416d21a4f | |
soul-walker | 346a265164 | |
soul-walker | 9921aea15a | |
soul-walker | 3e19150a48 | |
soul-walker | 202037ec55 | |
soul-walker | 5045f6152a | |
soul-walker | 2a47dc5979 | |
soul-walker | 6597194b9c | |
soul-walker | 319592dd19 | |
soul-walker | 585c32ac0d | |
soul-walker | 3301634aa0 | |
soul-walker | 32d9a9ab21 | |
soul-walker | a440b77c7f | |
soul-walker | 82e41df1c7 | |
soul-walker | 0b7ce9d746 | |
soul-walker | b10ea3b6ba | |
soul-walker | f2b38a9eb2 | |
tiger_zhou | bf87b46662 | |
tiger_zhou | 5f2c1133ca | |
tiger_zhou | 352c44a280 | |
tiger_zhou | d20fe5fd27 | |
tiger_zhou | c085f5f778 | |
tiger_zhou | 5579c4f461 | |
tiger_zhou | 2f9ace88bd | |
tiger_zhou | 287e004ee5 | |
tiger_zhou | 6843a987d5 | |
tiger_zhou | cc7218902e | |
tiger_zhou | 7404c0bfb8 | |
tiger_zhou | ae06533192 | |
tiger_zhou | c18a073dee | |
tiger_zhou | a5b71e159a | |
thesai | 727ddd48ac | |
tiger_zhou | f95ed6a898 | |
tiger_zhou | 985c1de837 | |
tiger_zhou | c0ed50ccdc | |
tiger_zhou | 164c26a01e | |
tiger_zhou | 13451cbec0 | |
tiger_zhou | 2a0e126a7c | |
tiger_zhou | 8b23269aba | |
thesai | 2492184d0e | |
tiger_zhou | 9cda9872cd | |
thesai | 200f7b5db7 | |
thesai | deb7fa11fc | |
thesai | cbb52ddbd7 | |
tiger_zhou | 7fb4199e1b | |
tiger_zhou | 08d7996f32 | |
thesai | 6fe2679fd8 | |
tiger_zhou | 9df4de84b6 | |
tiger_zhou | 823888ac35 | |
tiger_zhou | 1e927b29af | |
tiger_zhou | 97b6d27952 | |
thesai | 58bc68876a | |
tiger_zhou | 4a1316e1bd | |
tiger_zhou | 902a2e78b1 | |
tiger_zhou | 7b36192a9a | |
thesai | 761c7e02eb | |
tiger_zhou | 8446891ba5 | |
tiger_zhou | 7e227fb96b | |
tiger_zhou | 6c1bb1d77f | |
tiger_zhou | 636f049bfe | |
tiger_zhou | 6e19d7acb1 | |
tiger_zhou | e647d54762 | |
tiger_zhou | 161e8ec469 | |
tiger_zhou | eecef5ba96 | |
tiger_zhou | da470b1832 | |
tiger_zhou | 23d46aac0c | |
tiger_zhou | 37f6fd51eb | |
tiger_zhou | 9bf2fede2c | |
tiger_zhou | 025888cbd2 | |
tiger_zhou | 9139c93a75 | |
tiger_zhou | 8200bd7c76 | |
tiger_zhou | 2647a26869 | |
tiger_zhou | 68fdecdf31 | |
tiger_zhou | 2be04ceca1 | |
tiger_zhou | 1cf7397f55 | |
tiger_zhou | 25396dc11c | |
tiger_zhou | 49aff5b340 | |
tiger_zhou | cc58504b5b | |
tiger_zhou | cade3772cd | |
tiger_zhou | 6288c72829 | |
tiger_zhou | 1931e5f52f | |
tiger_zhou | 07e23db1db | |
tiger_zhou | 63c1c88312 | |
tiger_zhou | e515bcb56a | |
tiger_zhou | b24c3ddaa7 | |
tiger_zhou | 2ce51aaac9 | |
tiger_zhou | 740dcefb4c | |
tiger_zhou | d278c01d3b | |
thesai | 5d07d730eb | |
thesai | 76dea2b00b | |
thesai | 6996aae12f | |
tiger_zhou | 92bfa114be | |
tiger_zhou | 006367f3de | |
tiger_zhou | 7b4c5f0948 | |
tiger_zhou | bb0cf5a83f | |
tiger_zhou | 99a47d9d65 | |
joylink_zhangsai | 5cbcd67041 | |
weizhihong | 5372e55b44 | |
joylink_zhangsai | 2316deb8d3 | |
joylink_zhangsai | b0d30ed58c | |
joylink_zhangsai | b8768e6052 | |
joylink_zhangsai | d77e70c126 | |
joylink_zhangsai | 7f30126bd8 | |
weizhihong | 2b3b1134c5 | |
joylink_zhangsai | 5e5a17d79a | |
weizhihong | 659b537f75 | |
weizhihong | 441ec71627 | |
walker | 4739bb6a68 | |
walker | 44e9bd5ec2 | |
weizhihong | bdfa4d2992 | |
weizhihong | d39f9dbdbb | |
weizhihong | 700d95e4a7 | |
weizhihong | 28c74a75cd | |
weizhihong | a73c568b7f | |
joylink_zhangsai | e67b7b8ad1 | |
joylink_zhangsai | 300804dccc | |
joylink_zhangsai | 787ecb5642 | |
joylink_zhangsai | 29b94f0f1b | |
joylink_zhangsai | 3e8ed7095e | |
joylink_zhangsai | 6c6e254751 | |
joylink_zhangsai | 6b14090431 | |
joylink_zhangsai | 5eac7cc9be | |
joylink_zhangsai | 4becfd48cb | |
joylink_zhangsai | aec1a01f96 | |
joylink_zhangsai | 0faf852aa6 | |
tiger_zhou | 3d86ae0355 | |
joylink_zhangsai | 618c8dc33c | |
joylink_zhangsai | 57209785ad | |
joylink_zhangsai | 352ef75923 | |
joylink_zhangsai | 25c31fcefb | |
joylink_zhangsai | f1da71f236 | |
joylink_zhangsai | 885e98dccf | |
joylink_zhangsai | f98dee79a0 | |
joylink_zhangsai | f281499099 | |
tiger_zhou | bb26f1e944 | |
joylink_zhangsai | 48803daf24 | |
joylink_zhangsai | 3855c3ab64 | |
joylink_zhangsai | 3335dea0a6 | |
joylink_zhangsai | b4aa17e028 | |
joylink_zhangsai | 67175c5919 | |
joylink_zhangsai | 376590f5d1 | |
joylink_zhangsai | 361d446a19 | |
joylink_zhangsai | abbfabab40 | |
joylink_zhangsai | 9b5c54f749 | |
joylink_zhangsai | 9b4480f376 | |
joylink_zhangsai | 1be9cccc4a | |
joylink_zhangsai | cd92403096 | |
joylink_zhangsai | b01ac1dc0f | |
joylink_zhangsai | 2f2ec98029 | |
joylink_zhangsai | 18cfe99905 | |
joylink_zhangsai | e7c6d428ad | |
joylink_zhangsai | 9259fd123b | |
tiger_zhou | cf24e2e7f9 | |
tiger_zhou | 42d36d8812 | |
tiger_zhou | f6021e9a2d | |
joylink_zhangsai | e2cd83d298 | |
joylink_zhangsai | d7b42ef478 | |
joylink_zhangsai | 99ecac0318 | |
joylink_zhangsai | 8b85c0a63b | |
joylink_zhangsai | b4bb689dc5 | |
joylink_zhangsai | 813d13d768 | |
joylink_zhangsai | c686a8d23e | |
joylink_zhangsai | 3c6cb3a994 | |
weizhihong | 88d9ae234c | |
joylink_zhangsai | 9001cb5df9 | |
joylink_zhangsai | 6a9b4c43c9 | |
weizhihong | 4937d22a0d | |
weizhihong | bf7f8510be | |
weizhihong | 389f393a7d | |
weizhihong | 8764511650 | |
weizhihong | c84538bc4f | |
weizhihong | 8cb9d9bb84 | |
weizhihong | 4de0b5e0e8 | |
weizhihong | c13e5ab742 | |
tiger_zhou | ba5ec61c5e | |
tiger_zhou | c9c8c75be3 | |
joylink_zhangsai | b70d829c65 | |
joylink_zhangsai | b41ea03502 | |
tiger_zhou | a6f75d5cbf | |
joylink_zhangsai | 5cc2c02ccc | |
joylink_zhangsai | 7d678f3d61 | |
joylink_zhangsai | 74b9ab80da | |
weizhihong | f968066501 | |
weizhihong | f3ec423779 | |
weizhihong | 8f9316c3c9 | |
weizhihong | ec6e78dbcb | |
weizhihong | dad1bfc982 | |
weizhihong | c23d97ae86 | |
tiger_zhou | daee0d2c67 | |
tiger_zhou | a1be780b13 | |
tiger_zhou | 35b9f0cca2 | |
tiger_zhou | 966c70cd2f | |
tiger_zhou | 3189b6b51a | |
weizhihong | a1a9929f4d | |
weizhihong | 4e5e83202c | |
tiger_zhou | 38c30520f4 | |
weizhihong | 72024821b0 | |
tiger_zhou | 6cfa675ead | |
tiger_zhou | 25fbd9a715 | |
weizhihong | 0a8082ed97 | |
weizhihong | d9812813d7 | |
tiger_zhou | 33dbc54fd9 | |
weizhihong | 0be6e02563 | |
weizhihong | 488ec0a7a4 | |
weizhihong | cda1272d08 | |
tiger_zhou | 06d4e50192 | |
weizhihong | 07f8bcbd16 | |
weizhihong | b505dcdbfe | |
weizhihong | 2596ad3085 | |
tiger_zhou | 6b30e5c066 | |
tiger_zhou | ecdf3de890 | |
weizhihong | 68b4c0af01 | |
tiger_zhou | ee3f242162 | |
tiger_zhou | cf6e117549 | |
joylink_zhangsai | 63fbc5d0c6 | |
joylink_zhangsai | 8acadcd71f | |
joylink_zhangsai | 17d42a4d63 | |
tiger_zhou | 36a3609164 | |
tiger_zhou | 49f19cdc17 | |
tiger_zhou | ca43e7e0ee | |
joylink_zhangsai | 3aed493654 | |
joylink_zhangsai | ffe8927892 | |
weizhihong | 9eaf172a99 | |
joylink_zhangsai | 19f63f8f38 | |
tiger_zhou | 92adfad951 | |
joylink_zhangsai | 957dc9bd7f | |
joylink_zhangsai | 07b699cf7b | |
joylink_zhangsai | cced32fca8 | |
joylink_zhangsai | 6a7931da7c | |
joylink_zhangsai | 5ef51cbe56 | |
joylink_zhangsai | c6b74613dc | |
joylink_zhangsai | 4f4377f3b8 | |
joylink_zhangsai | 37e13abe47 | |
joylink_zhangsai | 8e4155d6d4 | |
joylink_zhangsai | 6e198efe85 | |
joylink_zhangsai | e7cab0591d | |
joylink_zhangsai | cc9e63842d | |
joylink_zhangsai | 00cd87f972 | |
weizhihong | 7df0a7e5f1 | |
weizhihong | 7c84157e67 | |
weizhihong | e016aab767 | |
weizhihong | a780b385bd | |
joylink_zhangsai | 8e63848520 | |
joylink_zhangsai | e66bb869f3 | |
joylink_zhangsai | 477bda4557 | |
weizhihong | d981f43c12 | |
weizhihong | bf93d15082 | |
weizhihong | 803d1a761f | |
tiger_zhou | b302f7d4d4 | |
tiger_zhou | 4fa0c0c2b7 | |
weizhihong | e9444302d9 | |
tiger_zhou | f260aab664 | |
tiger_zhou | a49e910976 | |
weizhihong | bc874187e6 | |
tiger_zhou | 12f7d33816 | |
weizhihong | 6331e723eb | |
joylink_zhangsai | 4f599acffe | |
joylink_zhangsai | f0243ba4e1 | |
tiger_zhou | 827a9b75ec | |
weizhihong | 74193e6db7 | |
tiger_zhou | 71addf2b60 | |
joylink_zhangsai | 21c9cd242f | |
tiger_zhou | 14fa1132fe | |
tiger_zhou | 7f0cb1e41b | |
tiger_zhou | 5c19222cf4 | |
weizhihong | 2bfdaeab63 | |
weizhihong | 145bc63540 | |
tiger_zhou | d048ae9c60 | |
tiger_zhou | 5e6dbb4f3c | |
joylink_zhangsai | 3f4cccbeed | |
tiger_zhou | b62453ecc8 | |
tiger_zhou | 5d289fbc97 | |
weizhihong | 9e08c224ac | |
weizhihong | 1c5a9e9315 | |
tiger_zhou | 0574328ff0 | |
tiger_zhou | 9e130d9f31 | |
tiger_zhou | 430fe344cf | |
weizhihong | c16b415c86 | |
weizhihong | efb68f9496 | |
tiger_zhou | 6c44d38ebd | |
weizhihong | ed357b2e4a | |
weizhihong | 6fa2adb7cd | |
weizhihong | 5073f9f788 | |
joylink_zhangsai | aace990217 | |
weizhihong | ecb29dbcc2 | |
joylink_zhangsai | dd1238d607 | |
joylink_zhangsai | b0c3dabc38 | |
tiger_zhou | f963c811f7 | |
tiger_zhou | fdb53063b7 | |
joylink_zhangsai | bf0bd580f7 | |
tiger_zhou | 4e6e1efda7 | |
tiger_zhou | 459c6856b2 | |
tiger_zhou | fdf503261e | |
joylink_zhangsai | 877372b2cd | |
joylink_zhangsai | 19acb558c2 | |
joylink_zhangsai | 65eef78e42 | |
tiger_zhou | 2e630d6916 | |
tiger_zhou | b85ac76d3d | |
tiger_zhou | cab64eea88 | |
tiger_zhou | 94e2ca2c7f | |
tiger_zhou | b2ff67fe7e | |
tiger_zhou | 9d329efa3e | |
tiger_zhou | e6b7e71d3d | |
tiger_zhou | 5f8511b200 | |
weizhihong | 57aa61b03c | |
tiger_zhou | c77ef0b669 | |
tiger_zhou | 28b421a073 | |
weizhihong | 346d3171f2 | |
weizhihong | 6a969fe843 | |
tiger_zhou | fba36af273 | |
joylink_zhangsai | 4a09b427e5 | |
weizhihong | 9b188dc9d9 | |
weizhihong | 440d2df836 | |
tiger_zhou | 8d4ac98eb9 | |
tiger_zhou | 806718bb7e | |
weizhihong | 132a8c4755 | |
weizhihong | 0b7ccabb16 | |
tiger_zhou | e516ad0be4 | |
tiger_zhou | eb16f39745 | |
weizhihong | 1d4918f52d | |
weizhihong | 2f8604c6bd | |
weizhihong | 4e7e3cb457 | |
tiger_zhou | edf707fbb2 | |
tiger_zhou | 8180d2136c | |
tiger_zhou | 8bd766a301 | |
weizhihong | 943c46bda7 | |
tiger_zhou | 6825eb02bd | |
tiger_zhou | c78ff9dda1 | |
weizhihong | 867b4be020 | |
weizhihong | 8a12446080 | |
weizhihong | 1844a69c69 | |
joylink_zhangsai | aa5cc0b333 | |
tiger_zhou | f51abb1865 | |
tiger_zhou | f3ff63431c | |
weizhihong | 07008b74b7 | |
tiger_zhou | 5128cd5ea6 | |
joylink_zhangsai | 77c985897a | |
joylink_zhangsai | 41739011ed | |
tiger_zhou | f248c336b4 | |
tiger_zhou | b97ef2c036 | |
weizhihong | f2244ea5fa | |
weizhihong | 6527d042ea | |
weizhihong | f3dd343a1c | |
tiger_zhou | 1bcf4a9e13 | |
tiger_zhou | cf6b6f5a9a | |
tiger_zhou | 91b61d697c | |
tiger_zhou | 932718ee0b | |
tiger_zhou | 50053c2b36 | |
weizhihong | 32ed729788 | |
tiger_zhou | 5a33c35c15 | |
tiger_zhou | af74502f37 | |
tiger_zhou | 7a20c4a659 | |
tiger_zhou | f4df139cbb | |
joylink_zhangsai | 0442a5723a | |
joylink_zhangsai | cfcd24e04f | |
weizhihong | f9b8d0f901 | |
tiger_zhou | c209942286 | |
weizhihong | e19e4480bd | |
tiger_zhou | 10aadf7e93 | |
tiger_zhou | b3b749ca80 | |
tiger_zhou | 5d57a1a57b | |
weizhihong | ab6dfab00b | |
weizhihong | 1808395ba2 | |
weizhihong | 5b4e99fd82 | |
joylink_zhangsai | ceada5f729 | |
joylink_zhangsai | 70d99faa59 | |
tiger_zhou | 80f42f30f8 | |
tiger_zhou | 7f003ec816 | |
tiger_zhou | 786a56b8d1 | |
tiger_zhou | 590bb3181f | |
weizhihong | 221200cfcd | |
tiger_zhou | f861256107 | |
tiger_zhou | 5fb422d3d0 | |
weizhihong | 3e3c977329 | |
weizhihong | d9fbac8dd8 | |
weizhihong | d2f271fa4e | |
weizhihong | a9559e2455 | |
weizhihong | a26d883e99 | |
weizhihong | e16437b347 | |
tiger_zhou | e83d5dfae6 | |
weizhihong | 77ee7005f1 | |
tiger_zhou | 90d6a1200a | |
tiger_zhou | d6ae7d4acf | |
weizhihong | 07aa27bd4e | |
weizhihong | 550b85b8ea | |
weizhihong | f8f7cc03df | |
weizhihong | 91ad315825 | |
tiger_zhou | 3829f12f08 | |
weizhihong | dc68b2daeb | |
tiger_zhou | d87fb8479a | |
tiger_zhou | 734b0bc6a9 | |
joylink_zhangsai | 56c5c6b3d3 | |
joylink_zhangsai | 6045cb3c2b | |
weizhihong | c499eb0ec3 | |
weizhihong | a0ff4e6962 | |
joylink_zhangsai | 720154f53a | |
joylink_zhangsai | d354ed9fd7 | |
weizhihong | 5359bf1c27 | |
joylink_zhangsai | 4a647ffb84 | |
tiger_zhou | 220d47b1a9 | |
weizhihong | 04ab5e0aef | |
tiger_zhou | a51a09c23b | |
weizhihong | c02fa14d31 | |
joylink_zhangsai | 57eaa241bb | |
weizhihong | 0dddb9b4e8 | |
tiger_zhou | 6ca90b9b0d | |
weizhihong | 1eb4e2c6cf | |
weizhihong | c88ae2b17b | |
weizhihong | d83de6f4bd | |
weizhihong | ad2900926e | |
weizhihong | 8fd00384d4 | |
joylink_zhangsai | 598e5e2491 | |
joylink_zhangsai | b90345620a | |
tiger_zhou | 377d3d989f | |
tiger_zhou | cfe6eb91e0 | |
tiger_zhou | 4cf212a5a6 | |
weizhihong | 661c682d85 | |
weizhihong | 0d1f5bf56b | |
tiger_zhou | 3580f135a0 | |
tiger_zhou | c3b161d9ed | |
tiger_zhou | 4ee7f99e64 | |
tiger_zhou | 40069c5354 | |
tiger_zhou | 972611128b | |
tiger_zhou | 16ff18e738 | |
weizhihong | 5a0e1051fb | |
weizhihong | 81cfda9d20 | |
weizhihong | 2de8ff955b | |
weizhihong | f33ac9c2c4 | |
tiger_zhou | 593504950d | |
tiger_zhou | bd2b96ed6d | |
weizhihong | 997a1eac71 | |
weizhihong | a66023a068 | |
weizhihong | 4d5b5ea6c1 | |
tiger_zhou | 503563ad05 | |
tiger_zhou | aea8007a60 | |
tiger_zhou | 91985fd241 | |
tiger_zhou | 851b259f81 | |
tiger_zhou | 1ef8a6e41e | |
weizhihong | ca6870ae17 | |
weizhihong | dc461b9fce | |
weizhihong | f38c3bd1ba | |
weizhihong | 83c5d6e644 | |
weizhihong | 4c0f6cae44 | |
tiger_zhou | 3fa0549d72 | |
tiger_zhou | 7382b9af0b | |
weizhihong | f750e8fd9d | |
tiger_zhou | cdd12fd1b8 | |
tiger_zhou | 7842e48bc8 | |
weizhihong | 2890997cdd | |
weizhihong | d967a3c80f | |
weizhihong | 621cd8befa | |
tiger_zhou | 53fd77af5c | |
weizhihong | f81c160b21 | |
weizhihong | cf592fe9ff | |
weizhihong | 5ba922c568 | |
tiger_zhou | c46b4fd97c | |
tiger_zhou | c7e13aebe9 | |
tiger_zhou | 14da291331 | |
weizhihong | 1748f7c42d | |
tiger_zhou | 0eda6a435a | |
weizhihong | d3bb96d95e | |
weizhihong | 35b1287875 | |
weizhihong | 26719b4685 | |
tiger_zhou | 600f4ebe04 | |
weizhihong | e31facba91 | |
tiger_zhou | abde6c0e17 | |
weizhihong | 264306b0dc | |
joylink_zhangsai | 6ac172edbd | |
tiger_zhou | 96444da8d8 | |
tiger_zhou | 723de7ce28 | |
weizhihong | 81f89a6aec | |
tiger_zhou | db606a2745 | |
tiger_zhou | e63cfbf5ad | |
weizhihong | 78e8f84382 | |
tiger_zhou | e25cfad883 | |
tiger_zhou | d141fd8e52 | |
weizhihong | 04d46be14c | |
tiger_zhou | f6dd8e7a42 | |
tiger_zhou | df93f3d0ce | |
tiger_zhou | 24da4a2e94 | |
tiger_zhou | d5a43c0af9 | |
tiger_zhou | a23bf72997 | |
tiger_zhou | 2445287f8c | |
joylink_zhangsai | 01f7105f02 | |
joylink_zhangsai | 8ad4877995 | |
joylink_zhangsai | 8f7bec9854 | |
joylink_zhangsai | a0c94047f6 | |
weizhihong | 246bfbe92c | |
joylink_zhangsai | 0a9d878583 | |
weizhihong | 273a33dea1 | |
joylink_zhangsai | 5a9b7ea436 | |
weizhihong | 60fca3df21 | |
tiger_zhou | 05a8045679 | |
joylink_zhangsai | a571e1b897 | |
joylink_zhangsai | c2f3ddc9a0 | |
joylink_zhangsai | d4fc3ebbe0 | |
joylink_zhangsai | 7c54f0976b | |
joylink_zhangsai | e72837d793 | |
joylink_zhangsai | b25bf1d0ee | |
joylink_zhangsai | 587a7bc7cf | |
joylink_zhangsai | f8c3c530ad | |
tiger_zhou | 2aea562afc | |
weizhihong | 643b63f287 | |
tiger_zhou | 152e144f96 | |
tiger_zhou | c6256b9d13 | |
weizhihong | 6bf292df47 | |
walker | c1a36a0503 | |
joylink_zhangsai | f03143740f | |
joylink_zhangsai | cbfe1fbf87 | |
weizhihong | 4e242417aa | |
joylink_zhangsai | c4ee87eccc | |
joylink_zhangsai | 2e27c0410f | |
weizhihong | 3b6f476732 | |
weizhihong | d215284d1e | |
joylink_zhangsai | 0e8b746f8a | |
weizhihong | 37418e84a1 | |
weizhihong | 5a27cc414e | |
joylink_zhangsai | 1692a20fbd | |
joylink_zhangsai | e7b817c2d4 | |
joylink_zhangsai | b36376863e | |
joylink_zhangsai | a5366241ef | |
weizhihong | 5d722f43d9 | |
weizhihong | 2719d30267 | |
weizhihong | b95df03c65 | |
weizhihong | b5c6f7a9a2 | |
joylink_zhangsai | cfd13f863b | |
tiger_zhou | 8728d9ffa0 | |
tiger_zhou | 94c07b26dc | |
tiger_zhou | 9b12e5adcb | |
joylink_zhangsai | 2a9d51d629 | |
thesai | daec9c8aaf | |
joylink_zhangsai | d703a3e128 | |
joylink_zhangsai | 9656fdb80e | |
joylink_zhangsai | 7fad4fd3ae | |
walker-sheng | 9426e4ddeb | |
walker-sheng | 4628dc3fcb |
|
@ -0,0 +1,32 @@
|
|||
name: 公网服务发布
|
||||
run-name: ${{ gitea.actor }} is testing out Gitea Actions
|
||||
on:
|
||||
schedule:
|
||||
- cron: '30 3 * * 1' # 每周一的凌晨3:30
|
||||
|
||||
jobs:
|
||||
Docker-Build-Push:
|
||||
runs-on: joylink-local233
|
||||
steps:
|
||||
- name: 发布到正式环境1
|
||||
uses: https://gitea.joylink.club/appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ secrets.PUB1_DOMAIN_SSH_HOST }}
|
||||
port: ${{ secrets.PUB1_DOMAIN_SSH_PORT }}
|
||||
username: ${{ secrets.PUB1_DOMAIN_SSH_USER }}
|
||||
password: ${{ secrets.PUB1_DOMAIN_SSH_PASSWORD }}
|
||||
script: |
|
||||
docker rm -f rt-sim-training-service || echo "rt-sim-training-service not exist"
|
||||
docker pull gitea.joylink.club/joylink/rt-sim-training-service:latest
|
||||
docker run --name rt-sim-training-service -it -u root --restart=always -d -e APP_ENV=prd -p 9000:9000 -p 19000:19000 -v /usr/local/joylink/logs/rtss:/usr/local/joylink/logs/rtss gitea.joylink.club/joylink/rt-sim-training-service:latest
|
||||
- name: 发布到正式环境2
|
||||
uses: https://gitea.joylink.club/appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ secrets.PUB2_DOMAIN_SSH_HOST }}
|
||||
port: ${{ secrets.PUB2_DOMAIN_SSH_PORT }}
|
||||
username: ${{ secrets.PUB2_DOMAIN_SSH_USER }}
|
||||
password: ${{ secrets.PUB2_DOMAIN_SSH_PASSWORD }}
|
||||
script: |
|
||||
docker rm -f rt-sim-training-service || echo "rt-sim-training-service not exist"
|
||||
docker pull gitea.joylink.club/joylink/rt-sim-training-service:latest
|
||||
docker run --name rt-sim-training-service -it -u root --restart=always -d -e APP_ENV=prd -p 9000:9000 -p 19000:19000 -v /usr/local/joylink/logs/rtss:/usr/local/joylink/logs/rtss gitea.joylink.club/joylink/rt-sim-training-service:latest
|
|
@ -0,0 +1,61 @@
|
|||
name: CI
|
||||
run-name: ${{ gitea.actor }} is testing out Gitea Actions
|
||||
on:
|
||||
push:
|
||||
branches:
|
||||
- local-test
|
||||
|
||||
jobs:
|
||||
Docker-Build:
|
||||
runs-on: joylink-local233
|
||||
steps:
|
||||
- name: 检出代码
|
||||
uses: https://gitea.joylink.club/actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: 设置java环境
|
||||
uses: https://gitea.joylink.club/actions/setup-java@v4
|
||||
with:
|
||||
java-version: '11'
|
||||
distribution: 'zulu'
|
||||
cache: 'maven'
|
||||
cache-dependency-path: './pom.xml'
|
||||
- name: 设置Maven环境
|
||||
uses: https://gitea.joylink.club/actions/local-setup-maven@v0.1.1
|
||||
with:
|
||||
maven-version: 3.8.8
|
||||
- name: 构建
|
||||
run: |
|
||||
mvn -Dmaven.test.skip=true clean package
|
||||
- name: 设置 Docker
|
||||
uses: https://gitea.joylink.club/actions/local-setup-docker-cli-action@v0.1.1
|
||||
- name: 设置 Docker Buildx
|
||||
uses: https://gitea.joylink.club/actions/local-setup-buildx-action@v0.1.3
|
||||
- name: docker登录gitea.joylink.club
|
||||
uses: https://gitea.joylink.club/docker/login-action@v3
|
||||
with:
|
||||
registry: gitea.joylink.club
|
||||
username: shengxuqiang
|
||||
password: ${{ secrets.SHENGXUQIANG_PASSWORD }}
|
||||
- name: Docker Build and push
|
||||
uses: https://gitea.joylink.club/docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
push: true
|
||||
tags: |
|
||||
gitea.joylink.club/joylink/rt-sim-training-service:local-test
|
||||
- name: 发布到本地测试环境
|
||||
uses: https://gitea.joylink.club/appleboy/ssh-action@v1.0.3
|
||||
with:
|
||||
host: ${{ secrets.LOCAL_233_SSH_HOST }}
|
||||
port: ${{ secrets.LOCAL_233_SSH_PORT }}
|
||||
username: ${{ secrets.LOCAL_233_SSH_USER }}
|
||||
password: ${{ secrets.LOCAL_233_SSH_PASSWORD }}
|
||||
script: |
|
||||
docker rm -f rt-sim-training-service || echo "rt-sim-training-service not exist"
|
||||
docker pull gitea.joylink.club/joylink/rt-sim-training-service:local-test
|
||||
docker run --name rt-sim-training-service --restart=always --network net --ip 192.168.53.3 -d -e APP_ENV=local-test -p 9000:9000 -p 19000:19000 -v /usr/local/joylink/logs/rtss:/usr/local/joylink/logs/rtss gitea.joylink.club/joylink/rt-sim-training-service:local-test
|
||||
# - name: 清理tag为none的镜像
|
||||
# run: |
|
||||
# docker rmi $(docker images --filter "dangling=true" -q --no-trunc) 2>/dev/null || echo "No dangling images to remove"
|
|
@ -0,0 +1,61 @@
|
|||
name: 版本发布docker构建并上传
|
||||
run-name: ${{ gitea.actor }} is testing out Gitea Actions
|
||||
on:
|
||||
release:
|
||||
types: [ published ]
|
||||
|
||||
jobs:
|
||||
Docker-Build-Push:
|
||||
runs-on: joylink-local233
|
||||
steps:
|
||||
- name: 检出代码
|
||||
uses: https://gitea.joylink.club/actions/checkout@v4
|
||||
with:
|
||||
submodules: recursive
|
||||
- name: 设置java环境
|
||||
uses: https://gitea.joylink.club/actions/setup-java@v4
|
||||
with:
|
||||
java-version: '11'
|
||||
distribution: 'zulu'
|
||||
cache: 'maven'
|
||||
cache-dependency-path: './pom.xml'
|
||||
- name: 设置Maven环境
|
||||
uses: https://gitea.joylink.club/actions/local-setup-maven@v0.1.1
|
||||
with:
|
||||
maven-version: 3.8.8
|
||||
- name: 构建
|
||||
run: |
|
||||
mvn -Dmaven.test.skip=true clean package
|
||||
- name: 设置 Docker
|
||||
uses: https://gitea.joylink.club/actions/local-setup-docker-cli-action@v0.1.1
|
||||
- name: 设置 Docker Buildx
|
||||
uses: https://gitea.joylink.club/actions/local-setup-buildx-action@v0.1.3
|
||||
- name: docker登录gitea.joylink.club
|
||||
uses: https://gitea.joylink.club/docker/login-action@v3
|
||||
with:
|
||||
registry: gitea.joylink.club
|
||||
username: shengxuqiang
|
||||
password: ${{ secrets.SHENGXUQIANG_PASSWORD }}
|
||||
- name: Docker Build and push
|
||||
uses: https://gitea.joylink.club/docker/build-push-action@v5
|
||||
with:
|
||||
context: .
|
||||
file: ./Dockerfile
|
||||
push: true
|
||||
tags: |
|
||||
gitea.joylink.club/joylink/rt-sim-training-service:${{ github.event.release.tag_name }}
|
||||
gitea.joylink.club/joylink/rt-sim-training-service:latest
|
||||
# - name: 清理tag为none的镜像
|
||||
# run: |
|
||||
# docker rmi $(docker images --filter "dangling=true" -q --no-trunc) 2>/dev/null || echo "No dangling images to remove"
|
||||
# - name: 发布到本地测试环境
|
||||
# uses: https://gitea.joylink.club/appleboy/ssh-action@v1.0.3
|
||||
# with:
|
||||
# host: ${{ secrets.LOCAL_233_SSH_HOST }}
|
||||
# port: ${{ secrets.LOCAL_233_SSH_PORT }}
|
||||
# username: ${{ secrets.LOCAL_233_SSH_USER }}
|
||||
# password: ${{ secrets.LOCAL_233_SSH_PASSWORD }}
|
||||
# script: |
|
||||
# docker rm -f rt-sim-training-service || echo "rt-sim-training-service not exist"
|
||||
# docker pull gitea.joylink.club/joylink/rt-sim-training-service:latest
|
||||
# docker run --name rt-sim-training-service --restart=always --network net --ip 192.168.53.3 -d -e APP_ENV=prd -p 9000:9000 -p 19000:19000 -v /usr/local/joylink/logs/rtss:/usr/local/joylink/logs/rtss gitea.joylink.club/joylink/rt-sim-training-service:latest
|
|
@ -0,0 +1,3 @@
|
|||
[submodule "rt-sim-training-message"]
|
||||
path = rt-sim-training-message
|
||||
url = http://120.46.212.6:3000/joylink/rt-sim-training-message.git
|
|
@ -0,0 +1,11 @@
|
|||
FROM azul/zulu-openjdk-alpine:11
|
||||
|
||||
ADD target/rtss-0.0.1-SNAPSHOT.jar rtss-service.jar
|
||||
|
||||
ENV APP_ENV=prd
|
||||
EXPOSE 9000 19000/tcp
|
||||
|
||||
ENV TZ=Asia/Shanghai
|
||||
RUN ln -snf /usr/share/zoneinfo/$TZ /etc/localtime && echo $TZ > /etc/timezone
|
||||
|
||||
CMD java -jar -Dfile.encoding=UTF-8 -Dspring.profiles.active=$APP_ENV /rtss-service.jar
|
|
@ -0,0 +1,7 @@
|
|||
# CI、CD说明
|
||||
- 分支主要为develop,local-test,master
|
||||
- 本地233服务器部署方式为push到local-test分支即可触发
|
||||
- 公网服务器发布方式:
|
||||
1. push到master(虽然可以用别的分支,但不建议)
|
||||
2. 在版本发布处发布新版本,触发构建docker镜像
|
||||
3. 待docker镜像构建完成后,点击Actions中CD_pub_deploy.yaml,进入第一个任务,点击重新运行所有任务,进行服务发布
|
364
pom.xml
364
pom.xml
|
@ -1,106 +1,106 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project xmlns="http://maven.apache.org/POM/4.0.0" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>2.3.5.RELEASE</version>
|
||||
<relativePath/> <!-- lookup parent from repository -->
|
||||
</parent>
|
||||
<groupId>club.joylink</groupId>
|
||||
<artifactId>rtss</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<name>rtss</name>
|
||||
<description> Rail transit simulation system</description>
|
||||
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 https://maven.apache.org/xsd/maven-4.0.0.xsd">
|
||||
<modelVersion>4.0.0</modelVersion>
|
||||
<parent>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-parent</artifactId>
|
||||
<version>2.3.5.RELEASE</version>
|
||||
<relativePath/> <!-- lookup parent from repository -->
|
||||
</parent>
|
||||
<groupId>club.joylink</groupId>
|
||||
<artifactId>rtss</artifactId>
|
||||
<version>0.0.1-SNAPSHOT</version>
|
||||
<name>rtss</name>
|
||||
<description>Rail transit simulation system</description>
|
||||
|
||||
<properties>
|
||||
<java.version>11</java.version>
|
||||
<pagehelper.version>4.1.1</pagehelper.version>
|
||||
</properties>
|
||||
<properties>
|
||||
<java.version>11</java.version>
|
||||
<pagehelper.version>4.1.1</pagehelper.version>
|
||||
</properties>
|
||||
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-mail</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-validation</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-websocket</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mybatis.spring.boot</groupId>
|
||||
<artifactId>mybatis-spring-boot-starter</artifactId>
|
||||
<version>2.1.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.pagehelper</groupId>
|
||||
<artifactId>pagehelper-spring-boot-starter</artifactId>
|
||||
<version>1.3.0</version>
|
||||
</dependency>
|
||||
<dependencies>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-mail</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-web</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-validation</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-websocket</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.mybatis.spring.boot</groupId>
|
||||
<artifactId>mybatis-spring-boot-starter</artifactId>
|
||||
<version>2.1.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.pagehelper</groupId>
|
||||
<artifactId>pagehelper-spring-boot-starter</artifactId>
|
||||
<version>1.3.0</version>
|
||||
</dependency>
|
||||
|
||||
<!-- javax.validation -->
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
</dependency>
|
||||
<!-- javax.validation -->
|
||||
<dependency>
|
||||
<groupId>javax.validation</groupId>
|
||||
<artifactId>validation-api</artifactId>
|
||||
</dependency>
|
||||
|
||||
<!--spring切面aop依赖 -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-aop</artifactId>
|
||||
</dependency>
|
||||
<!--spring切面aop依赖 -->
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-aop</artifactId>
|
||||
</dependency>
|
||||
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-all</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.digitalpetri.modbus</groupId>
|
||||
<artifactId>modbus-codec</artifactId>
|
||||
<version>1.1.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>io.netty</groupId>
|
||||
<artifactId>netty-all</artifactId>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.digitalpetri.modbus</groupId>
|
||||
<artifactId>modbus-codec</artifactId>
|
||||
<version>1.1.1</version>
|
||||
</dependency>
|
||||
|
||||
<!-- 硬件检测依赖 -->
|
||||
<dependency>
|
||||
<groupId>com.github.oshi</groupId>
|
||||
<artifactId>oshi-core-java11</artifactId>
|
||||
<version>5.7.5</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.junit.vintage</groupId>
|
||||
<artifactId>junit-vintage-engine</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.wechatpay-apiv3</groupId>
|
||||
<artifactId>wechatpay-apache-httpclient</artifactId>
|
||||
<version>0.2.1</version>
|
||||
</dependency>
|
||||
<!-- 硬件检测依赖 -->
|
||||
<dependency>
|
||||
<groupId>com.github.oshi</groupId>
|
||||
<artifactId>oshi-core-java11</artifactId>
|
||||
<version>5.7.5</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>mysql</groupId>
|
||||
<artifactId>mysql-connector-java</artifactId>
|
||||
<scope>runtime</scope>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.projectlombok</groupId>
|
||||
<artifactId>lombok</artifactId>
|
||||
<optional>true</optional>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-starter-test</artifactId>
|
||||
<scope>test</scope>
|
||||
<exclusions>
|
||||
<exclusion>
|
||||
<groupId>org.junit.vintage</groupId>
|
||||
<artifactId>junit-vintage-engine</artifactId>
|
||||
</exclusion>
|
||||
</exclusions>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.github.wechatpay-apiv3</groupId>
|
||||
<artifactId>wechatpay-apache-httpclient</artifactId>
|
||||
<version>0.2.1</version>
|
||||
</dependency>
|
||||
|
||||
<!-- <dependency>-->
|
||||
<!-- <groupId>com.huawei.sis</groupId>-->
|
||||
|
@ -130,65 +130,123 @@
|
|||
<groupId>org.springframework.retry</groupId>
|
||||
<artifactId>spring-retry</artifactId>
|
||||
</dependency>-->
|
||||
<dependency>
|
||||
<groupId>joda-time</groupId>
|
||||
<artifactId>joda-time</artifactId>
|
||||
<version>2.10.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.belerweb</groupId>
|
||||
<artifactId>pinyin4j</artifactId>
|
||||
<version>2.5.0</version>
|
||||
</dependency>
|
||||
<!-- iscs -->
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
<version>3.19.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>joda-time</groupId>
|
||||
<artifactId>joda-time</artifactId>
|
||||
<version>2.10.3</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.belerweb</groupId>
|
||||
<artifactId>pinyin4j</artifactId>
|
||||
<version>2.5.0</version>
|
||||
</dependency>
|
||||
<!-- iscs -->
|
||||
<dependency>
|
||||
<groupId>com.google.protobuf</groupId>
|
||||
<artifactId>protobuf-java</artifactId>
|
||||
<version>3.23.1</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>com.hubspot.jackson</groupId>
|
||||
<artifactId>jackson-datatype-protobuf</artifactId>
|
||||
<version>0.9.12</version>
|
||||
</dependency>
|
||||
<!-- <dependency>
|
||||
<groupId>com.chenlb.mmseg4j</groupId>
|
||||
<artifactId>mmseg4j-core</artifactId>
|
||||
<version>1.10.0</version>
|
||||
</dependency>-->
|
||||
<!-- <dependency>
|
||||
<groupId>org.ansj</groupId>
|
||||
<artifactId>ansj_seg</artifactId>
|
||||
<version>5.1.6</version>
|
||||
</dependency>
|
||||
<dependency>
|
||||
<groupId>org.reflections</groupId>
|
||||
<artifactId>reflections</artifactId>
|
||||
<version>0.9.11</version>
|
||||
</dependency>-->
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-lang3</artifactId>
|
||||
<version>3.12.0</version>
|
||||
</dependency>
|
||||
<!-- <dependency>
|
||||
<groupId>info.debatty</groupId>
|
||||
<artifactId>java-string-similarity</artifactId>
|
||||
<version>2.0.0</version>
|
||||
</dependency>-->
|
||||
|
||||
<dependency>
|
||||
<groupId>org.apache.commons</groupId>
|
||||
<artifactId>commons-text</artifactId>
|
||||
<version>1.10.0</version>
|
||||
</dependency>
|
||||
|
||||
</dependencies>
|
||||
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<includeSystemScope>true</includeSystemScope>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>com.github.shalousun</groupId>
|
||||
<artifactId>smart-doc-maven-plugin</artifactId>
|
||||
<version>2.1.9</version>
|
||||
<configuration>
|
||||
<!--指定生成文档的使用的配置文件,配置文件放在自己的项目中-->
|
||||
<configFile>./src/main/resources/smart-doc.json</configFile>
|
||||
<!--smart-doc实现自动分析依赖树加载第三方依赖的源码,如果一些框架依赖库加载不到导致报错,这时请使用excludes排除掉-->
|
||||
<!-- <excludes>-->
|
||||
<!-- <!–格式为:groupId:artifactId;参考如下–>-->
|
||||
<!-- <exclude>com.alibaba:fastjson</exclude>-->
|
||||
<!-- </excludes>-->
|
||||
<!-- <!–自1.0.8版本开始,插件提供includes支持,配置了includes后插件会按照用户配置加载而不是自动加载,因此使用时需要注意–>-->
|
||||
<!-- <!–smart-doc能自动分析依赖树加载所有依赖源码,原则上会影响文档构建效率,因此你可以使用includes来让插件加载你配置的组件–>-->
|
||||
<!-- <includes>-->
|
||||
<!-- <!–格式为:groupId:artifactId;参考如下–>-->
|
||||
<!-- <include>com.alibaba:fastjson</include>-->
|
||||
<!-- </includes>-->
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<!--如果不需要在执行编译时启动smart-doc,则将phase注释掉-->
|
||||
<!-- <phase>compile</phase>-->
|
||||
<goals>
|
||||
<!--smart-doc提供了html、openapi、markdown等goal,可按需配置-->
|
||||
<goal>html</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<build>
|
||||
<plugins>
|
||||
<plugin>
|
||||
<groupId>org.springframework.boot</groupId>
|
||||
<artifactId>spring-boot-maven-plugin</artifactId>
|
||||
<configuration>
|
||||
<includeSystemScope>true</includeSystemScope>
|
||||
</configuration>
|
||||
</plugin>
|
||||
|
||||
<plugin>
|
||||
<groupId>com.github.shalousun</groupId>
|
||||
<artifactId>smart-doc-maven-plugin</artifactId>
|
||||
<version>2.1.9</version>
|
||||
<configuration>
|
||||
<!--指定生成文档的使用的配置文件,配置文件放在自己的项目中-->
|
||||
<configFile>./src/main/resources/smart-doc.json</configFile>
|
||||
<!--smart-doc实现自动分析依赖树加载第三方依赖的源码,如果一些框架依赖库加载不到导致报错,这时请使用excludes排除掉-->
|
||||
<!-- <excludes>-->
|
||||
<!-- <!–格式为:groupId:artifactId;参考如下–>-->
|
||||
<!-- <exclude>com.alibaba:fastjson</exclude>-->
|
||||
<!-- </excludes>-->
|
||||
<!-- <!–自1.0.8版本开始,插件提供includes支持,配置了includes后插件会按照用户配置加载而不是自动加载,因此使用时需要注意–>-->
|
||||
<!-- <!–smart-doc能自动分析依赖树加载所有依赖源码,原则上会影响文档构建效率,因此你可以使用includes来让插件加载你配置的组件–>-->
|
||||
<!-- <includes>-->
|
||||
<!-- <!–格式为:groupId:artifactId;参考如下–>-->
|
||||
<!-- <include>com.alibaba:fastjson</include>-->
|
||||
<!-- </includes>-->
|
||||
</configuration>
|
||||
<executions>
|
||||
<execution>
|
||||
<!--如果不需要在执行编译时启动smart-doc,则将phase注释掉-->
|
||||
<!-- <phase>compile</phase>-->
|
||||
<goals>
|
||||
<!--smart-doc提供了html、openapi、markdown等goal,可按需配置-->
|
||||
<goal>html</goal>
|
||||
</goals>
|
||||
</execution>
|
||||
</executions>
|
||||
</plugin>
|
||||
</plugins>
|
||||
</build>
|
||||
<repositories>
|
||||
<repository>
|
||||
<id>aliyun-central</id>
|
||||
<url>https://maven.aliyun.com/repository/central</url>
|
||||
</repository>
|
||||
<repository>
|
||||
<id>aliyun-snapshots</id>
|
||||
<url>https://maven.aliyun.com/repository/snapshots</url>
|
||||
<releases>
|
||||
<enabled>false</enabled>
|
||||
</releases>
|
||||
<snapshots>
|
||||
<enabled>true</enabled>
|
||||
</snapshots>
|
||||
</repository>
|
||||
</repositories>
|
||||
<pluginRepositories>
|
||||
<pluginRepository>
|
||||
<id>aliyun-central</id>
|
||||
<url>https://maven.aliyun.com/repository/central</url>
|
||||
</pluginRepository>
|
||||
</pluginRepositories>
|
||||
</project>
|
||||
|
|
|
@ -0,0 +1 @@
|
|||
Subproject commit 5dd7fdb3d568c829356fa59b746b559d17da49b8
|
|
@ -1,51 +0,0 @@
|
|||
-- auto-generated definition
|
||||
create table audio_resources
|
||||
(
|
||||
id bigint auto_increment,
|
||||
name varchar(128) null comment '名称',
|
||||
`desc` varchar(256) null comment '描述',
|
||||
url varchar(256) not null comment '资源地址',
|
||||
create_time datetime not null comment '创建时间',
|
||||
update_time datetime null comment '更新时间',
|
||||
constraint audio_resources_id_uindex
|
||||
unique (id)
|
||||
)
|
||||
comment '音频资源';
|
||||
|
||||
alter table audio_resources
|
||||
add primary key (id);
|
||||
|
||||
-- auto-generated definition
|
||||
create table iscs_device
|
||||
(
|
||||
id bigint auto_increment,
|
||||
map_id bigint not null comment '地图id',
|
||||
code varchar(64) not null comment '编号',
|
||||
`system` varchar(32) null comment '所属系统',
|
||||
station varchar(32) null comment '所属车站',
|
||||
position varchar(32) null comment '具体位置',
|
||||
type varchar(32) not null comment '设备类型',
|
||||
constraint iscs_device_id_uindex
|
||||
unique (id)
|
||||
)
|
||||
comment 'ISCS设备';
|
||||
|
||||
alter table iscs_device
|
||||
add primary key (id);
|
||||
|
||||
-- auto-generated definition
|
||||
create table iscs_system_resources
|
||||
(
|
||||
id bigint auto_increment,
|
||||
map_id bigint not null comment '地图id',
|
||||
`system` varchar(32) not null comment '系统',
|
||||
type varchar(32) null comment '类型',
|
||||
resource_ids varchar(1024) null comment '资源id集合',
|
||||
constraint iscs_system_resources_id_uindex
|
||||
unique (id)
|
||||
)
|
||||
comment 'ISCS系统资源';
|
||||
|
||||
alter table iscs_system_resources
|
||||
add primary key (id);
|
||||
|
|
@ -1,12 +0,0 @@
|
|||
-- 20220523
|
||||
alter table `draft_map_station_direction_label`
|
||||
ADD COLUMN `run_model` varchar(255) NULL comment '所属模式(自动闭塞A、半自动闭塞S)' AFTER `signal_code`,
|
||||
ADD COLUMN `run_status` varchar(255) NULL comment '默认的接发状态,R接、D发、NO空' AFTER `run_model`,
|
||||
ADD COLUMN `relative_code` varchar(255) NULL comment '相对方向编码' AFTER `run_status`;
|
||||
|
||||
|
||||
-- 20220526
|
||||
alter table `draft_map_station_direction_label`
|
||||
drop COLUMN `relative_code`,
|
||||
ADD COLUMN `relative_station_code` varchar(255) NULL comment '相对的车站编码' AFTER `run_status`,
|
||||
ADD COLUMN `relative_label_enum` varchar(255) NULL comment '相对的方向口' AFTER `relative_station_code`;
|
|
@ -1 +0,0 @@
|
|||
alter table `draft_map_station_direction_label` ADD COLUMN `name` varchar(225) NULL comment '运行方向名称' AFTER `id`;
|
|
@ -1,2 +0,0 @@
|
|||
ALTER TABLE `sys_account`
|
||||
ADD COLUMN `source` varchar(32) NULL COMMENT '账号来源' AFTER `roles`;
|
|
@ -1,25 +0,0 @@
|
|||
-- 课程表添加字段
|
||||
ALTER TABLE `ls_lesson`
|
||||
ADD COLUMN `org_id` bigint(20) NULL COMMENT '创建者创建这条数据时所属组织' AFTER `update_time`;
|
||||
|
||||
-- 数据处理SQL
|
||||
UPDATE ls_lesson lesson,
|
||||
org_user ou
|
||||
SET lesson.org_id = ou.org_id
|
||||
WHERE
|
||||
lesson.creator_id = ou.user_id
|
||||
AND ou.role = 'Admin'
|
||||
AND lesson.sysFault = 0;
|
||||
|
||||
-- 考试表添加字段
|
||||
ALTER TABLE `exam_definition`
|
||||
ADD COLUMN `org_id` bigint NULL COMMENT '创建者创建这条数据时所属的组织' AFTER `passing_point`;
|
||||
|
||||
-- 数据处理SQL
|
||||
UPDATE exam_definition exam,
|
||||
org_user ou
|
||||
SET exam.org_id = ou.org_id
|
||||
WHERE
|
||||
exam.creator_id = ou.user_id
|
||||
AND ou.role = 'Admin'
|
||||
AND exam.system = 0;
|
|
@ -1,3 +0,0 @@
|
|||
-- 出入口方向添加方向属性,需要重新编辑地图中出入口方向的属性
|
||||
ALTER TABLE `draft_map_station_direction_label`
|
||||
ADD COLUMN `io_direction` varchar(20) NULL COMMENT '出入口方向';
|
|
@ -1,48 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : walker
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 30/08/2022 16:02:15
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for draft_training2
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `draft_training2`;
|
||||
CREATE TABLE `draft_training2` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训名称',
|
||||
`map_id` bigint NULL DEFAULT NULL COMMENT '实训地图id',
|
||||
`description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '描述',
|
||||
`type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训类型(单操 single;场景scene)',
|
||||
`label_json` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标签,用于检索',
|
||||
`map_location_json` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '地图定位json',
|
||||
`bg_scene_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '初始背景',
|
||||
`final_scenes_json` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '实训编制完保存为最终场景json数据',
|
||||
`run_plan_id` bigint NULL DEFAULT NULL COMMENT '运行图id',
|
||||
`opera_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '操作列表json(List<Operation2VO>)',
|
||||
`step_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '步骤列表json(List<Step2VO>的json)',
|
||||
`scoring_rule_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '打分规则列表json(List<ScoringRuleVO>的json)',
|
||||
`member_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '仿真内所有成员',
|
||||
`player_id_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '参演的仿真成员id列表Json',
|
||||
`failure_condition_json` varchar(555) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训失败判定条件',
|
||||
`creator_id` bigint NULL DEFAULT NULL,
|
||||
`create_time` datetime NULL DEFAULT NULL,
|
||||
`update_time` datetime NULL DEFAULT NULL,
|
||||
PRIMARY KEY (`id`) USING BTREE,
|
||||
INDEX `map_id_index`(`map_id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 36 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,48 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : walker
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 30/08/2022 16:02:51
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for published_training2
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `published_training2`;
|
||||
CREATE TABLE `published_training2` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '已发布实训的id',
|
||||
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训名称',
|
||||
`map_id` bigint NULL DEFAULT NULL COMMENT '实训地图id',
|
||||
`description` varchar(500) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训描述',
|
||||
`type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训类型(单操 single;场景scene)',
|
||||
`label_json` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '标签,用于检索',
|
||||
`map_location_json` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '地图定位json',
|
||||
`bg_scene_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '初始背景',
|
||||
`run_plan_id` bigint NULL DEFAULT NULL COMMENT '运行图id',
|
||||
`opera_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '操作列表json(List<Operation2VO>)',
|
||||
`step_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '步骤列表json(List<Step2VO>的json)',
|
||||
`scoring_rule_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '打分规则列表json(List<ScoringRuleVO>的json)',
|
||||
`member_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '仿真内所有成员',
|
||||
`player_id_json` longtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '参演的仿真成员id列表Json',
|
||||
`failure_condition_json` varchar(555) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训失败判定条件',
|
||||
`creator_id` bigint NULL DEFAULT NULL COMMENT '创建者',
|
||||
`create_time` datetime NULL DEFAULT NULL,
|
||||
`update_time` datetime NULL DEFAULT NULL,
|
||||
`state` int NULL DEFAULT NULL COMMENT '已发布实训的状态(0-默认未知,1-上架,2-下架)',
|
||||
`final_scenes_json` mediumtext CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL COMMENT '实训编制后的最终场景json数据',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 24 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,2 +0,0 @@
|
|||
-- 武汉8号线添加第三方账号
|
||||
INSERT INTO `joylink`.`sys_account` ( `account`, `parent_account`, `type`, `org_id`, `name`, `nickname`, `avatar_path`, `password`, `mobile`, `nationcode`, `email`, `wx_id`, `wx_union_id`, `wm_open_id`, `status`, `roles`, `source`, `create_time`, `update_user_id`, `update_time`) VALUES ('yjddzh_train_place', NULL, '2', NULL, NULL, '武汉8号线_train_place', NULL, 'train_place', 'train_place', NULL, 'yjddzh@tests.com', NULL, NULL, NULL, '1', '01', NULL, '2022-09-14 10:00:14', NULL, NULL);
|
|
@ -1,36 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : room
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 15/09/2022 14:08:08
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for trace_training2
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `trace_training2`;
|
||||
CREATE TABLE `trace_training2` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '实训草稿-已发布追踪表记录id',
|
||||
`draft_id` bigint NULL DEFAULT NULL COMMENT 'draft_training2主键',
|
||||
`draft_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '实训草稿名称',
|
||||
`draft_map_id` bigint NULL DEFAULT NULL COMMENT '实训草稿地图id',
|
||||
`pub_id` bigint NULL DEFAULT NULL COMMENT 'published_training2主键',
|
||||
`pub_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '已发布实训名称',
|
||||
`trace_creator_id` bigint NULL DEFAULT NULL COMMENT '追踪轨迹生成者即发布操作者',
|
||||
`trace_time` datetime NULL DEFAULT NULL COMMENT '追踪轨迹生成时间',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,33 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : room
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 19/09/2022 14:54:30
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for draft_map_dis_station
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `draft_map_dis_station`;
|
||||
CREATE TABLE `draft_map_dis_station` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '调度台逻辑数据记录id',
|
||||
`map_id` bigint NULL DEFAULT NULL COMMENT '所属地图id',
|
||||
`code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '调度台编码',
|
||||
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '调度台名称',
|
||||
`station_list` varchar(600) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '调度台下辖车站的code列表,array json',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,194 +0,0 @@
|
|||
如果没有执行过,直接运行[20220923-wei-project.sql]
|
||||
create TABLE `project` (
|
||||
`id` int NOT NULL AUTO_INCREMENT comment '数据库唯一ID',
|
||||
`mark_key` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL comment '项目标识key,前端使用',
|
||||
`code` varchar(50) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL comment '项目编码,后端使用',
|
||||
`name` varchar(255) DEFAULT NULL comment '项目名称',
|
||||
`name_en` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL comment '项目英文名称',
|
||||
`simple_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL comment '项目简称',
|
||||
`create_time` datetime DEFAULT NULL comment '创建时间',
|
||||
`update_time` datetime DEFAULT NULL comment '修改时间',
|
||||
`status` int NOT NULL comment '项目标识状态',
|
||||
`view_setting` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci comment '前端界面设置',
|
||||
`view_show` int NOT NULL DEFAULT '1' comment '是否供前端选择',
|
||||
`server_setting` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci comment '后端服务设置',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `mark_key` (`mark_key`) USING BTREE,
|
||||
KEY `code` (`code`),
|
||||
KEY `view_show` (`view_show`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'login', 'DEFAULT','城市轨道交通实训平台',' Urban Rail Transit Practical Training Platform'
|
||||
,'','{"login":{"loginInfo":{"title":"城市轨道交通实训平台","titleEn":" Urban Rail Transit Practical Training Platform","loginPath":"/login","loginParam":"DEFAULT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login"},"design":{"loginInfo":{"title":"城市轨道交通设计平台","titleEn":" Urban Rail Transit Design Platform","loginPath":"/design/login","loginParam":"DEFAULT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login"}}','{"defaultProject":1,"loginCreateSimulation":0}', 0
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'xty', 'XTY','西安铁路职业技术学院城市轨道交通实训平台',''
|
||||
,'西铁院','{"login":{"loginInfo":{"title":"西安铁路职业技术学院城市轨道交通实训平台","loginPath":"/login?project=xty","loginParam":"XTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"013"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=xty"},"design":{"loginInfo":{"title":"西安铁路职业技术学院城市轨道交通设计平台","loginPath":"/design/login?project=xty","loginParam":"XTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"013"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=xty"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'gzb', 'GZB','贵州装备制造职业学院城市轨道交通实训平台',''
|
||||
,'贵州装备','{"login":{"loginInfo":{"title":"贵州装备制造职业学院城市轨道交通实训平台","loginPath":"/login?project=gzb","loginParam":"GZB","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"014"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=gzb"},"design":{"loginInfo":{"title":"贵州装备制造职业学院城市轨道交通设计平台","loginPath":"/design/login?project=gzb","titleDistance":"-150px","loginParam":"GZB","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"014"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=gzb"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'xadt', 'XADT','城市轨道交通实训平台',''
|
||||
,'西安地铁','{"login":{"loginInfo":{"title":"城市轨道交通实训平台","logoWidth":"60px","loginTitle":"运营一中心","homeTitle":"运营一中心","browserTitle":"西安地铁运营一中心城市轨道交通实训平台","loginPath":"/login?project=xadt","loginParam":"XADT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"012"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=xadt"},"design":{"loginInfo":{"title":"城市轨道交通设计平台","logoWidth":"60px","loginTitle":"运营一中心","homeTitle":"运营一中心","browserTitle":"西安地铁运营一中心城市轨道交通设计平台","loginPath":"/design/login?project=xadt","loginParam":"XADT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"012"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=xadt"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'heb', 'HEB','城市轨道交通综合行车模拟仿真系统V1.0',''
|
||||
,'哈尔滨','{"login":{"loginInfo":{"title":"城市轨道交通综合行车模拟仿真系统V1.0","loginTitle":"城市轨道交通综合行车模拟仿真系统V1.0","logoWidth":"140px","loginPath":"/login?project=heb","titleDistance":"150px","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HEB","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"019"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":1,"noSimulationQrCode":1,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=heb"},"design":{"loginInfo":{"title":"城市轨道交通设计平台V1.0","loginTitle":"城市轨道交通设计平台V1.0","logoWidth":"140px","titleDistance":"150px","loginPath":"/design/login?project=heb","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HEB","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"019"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":1,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=heb"}}','{"defaultProject":1,"loginCreateSimulation":0,"controlDevice":1}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'nty', 'NTY','城轨高级信号系统(云平台通用版)',''
|
||||
,'南铁院(通用版)','{"login":{"loginInfo":{"title":"城轨高级信号系统(云平台通用版)","loginPath":"/login?project=nty","loginParam":"NTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=nty"},"design":{"loginInfo":{"title":"城轨高级信号设计系统(云平台通用版)","loginPath":"/design/login?project=nty","loginParam":"NTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=nty"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'ntyc', 'NTYC','城轨高级信号系统(云平台专用版)',''
|
||||
,'南铁院(专用版)','{"login":{"loginInfo":{"title":"城轨高级信号系统(云平台专用版)","loginPath":"/login?project=ntyc","loginParam":"NTYC","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=ntyc"},"design":{"loginInfo":{"title":"城轨高级信号设计系统(云平台专用版)","loginPath":"/design/login?project=ntyc","loginParam":"NTYC","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=ntyc"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'ntyl', 'NTYL','城轨高级信号系统(本地专用版)',''
|
||||
,'南铁院(本地版)','{"login":{"loginInfo":{"title":"城轨高级信号系统(本地专用版)","loginPath":"/login?project=ntyl","loginParam":"NTYL","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=ntyl"},"design":{"loginInfo":{"title":"城轨高级信号设计系统(本地专用版)","loginPath":"/design/login?project=ntyl","loginParam":"NTYL","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=ntyl"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'sdy', 'SDY','江苏电子信息职业学院城市轨道交通实训平台',''
|
||||
,'苏电院','{"login":{"loginInfo":{"title":"江苏电子信息职业学院城市轨道交通实训平台","loginPath":"/login?project=sdy","loginParam":"SDY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"021"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=sdy"},"design":{"loginInfo":{"title":"江苏电子信息职业学院城市轨道交通设计平台","loginPath":"/design/login?project=sdy","loginParam":"SDY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"021"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=sdy"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'bjd', 'BJD','城市轨道交通列车运行智慧辅助系统',''
|
||||
,'北交大','{"login":{"loginInfo":{"title":"城市轨道交通列车运行智慧辅助系统","loginPath":"/login?project=bjd","logoWidth":"400px","bottomIcon":"@/assets/icon/favicon_bjd.png","bottomColumn":"","loginTitle":"空串","linkIcon":"@/assets/icon/link_bjd.png","loginParam":"BJD","navigationLogoWidth":"160px","navigationMarginLeft":"175px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":1,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=bjd"},"design":{"loginInfo":{"title":"城市轨道交通列车运行智慧辅助系统","loginPath":"/design/login?project=bjd","logoWidth":"400px","bottomIcon":"@/assets/icon/favicon_bjd.png","bottomColumn":"","linkIcon":"","loginParam":"BJD","navigationLogoWidth":"160px","navigationMarginLeft":"175px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=bjd"}}','{"defaultProject":1,"loginCreateSimulation":1, "createSimulationPermission":1}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'cgy', 'CGY','成都工业职业技术学院线网车站运营虚拟仿真实训中心',''
|
||||
,'成都工业','{"login":{"loginInfo":{"title":"成都工业职业技术学院线网车站运营虚拟仿真实训中心","loginPath":"/login?project=cgy","loginParam":"CGY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":1,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"loginInfo":{"title":"成都工业职业技术学院轨道交通虚拟仿真设计平台","loginPath":"/design/login?project=cgy","loginParam":"CGY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":1,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0,"freeSource":1}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'wjls', 'WJLS','微机联锁仿真系统',''
|
||||
,'微机联锁','{"login":{"loginInfo":{"title":"微机联锁仿真系统","loginPath":"/login?project=wjls","loginParam":"WJLS","loginTitle":"空串","navigationLogoWidth":"40px","navigationMarginLeft":"60px","logoWidth":"0","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":1,"createLocalSimulation":1,"defaultMemberId":"2"}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'drts', 'DRTS','全国行车调度员大赛训练系统',''
|
||||
,'调度大赛','{"login":{"loginInfo":{"title":"全国行车调度员大赛训练系统","loginPath":"/login?project=drts","loginParam":"DRTS","loginTitle":"空串","navigationLogoWidth":"40px","navigationMarginLeft":"60px","logoWidth":"0","systemType":"020"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"loginInfo":{"title":"行车调度员设计平台国赛备战版","loginPath":"/design/login?project=drts","loginParam":"DRTS","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"020"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":1,"mapNeedCharge":1}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'zzwwtest', 'ZZWWTEST','共赢列车仿真驾驶系统',''
|
||||
,'郑州共赢考试','{"login":{"loginInfo":{"title":"共赢列车仿真驾驶系统","loginPath":"/login?project=zzwwtest","loginParam":"ZZWWTEST","loginTitle":"空串","logoWidth":"140px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'richor', 'RICHOR','中航锐创城市轨道交通实训平台',''
|
||||
,'中航锐创','{"login":{"loginInfo":{"title":"中航锐创城市轨道交通实训平台","loginPath":"/login?project=richor","loginParam":"RICHOR","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"022"},"thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1},"design":{"thirdLogin":1,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'zzww', 'ZZWW','共赢列车仿真驾驶系统',''
|
||||
,'郑州共赢','{"login":{"loginInfo":{"title":"共赢列车仿真驾驶系统","loginPath":"/login?project=zzww","loginParam":"ZZWW","loginTitle":"空串","logoWidth":"140px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0,"freeSource":1,"defaultLoadTrain":1}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'richorlesson3d', 'RICHOR','中航锐创城市轨道交通实训平台',''
|
||||
,'中航锐创(三维课程)','{"login":{"loginInfo":{"title":"中航锐创城市轨道交通实训平台","loginPath":"/login?project=richorlesson3d","loginParam":"RICHOR","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"022"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'nologo', 'NOLOGO','城市轨道交通实训平台',''
|
||||
,'无logo','{"login":{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=nologo","loginParam":"NOLOGO","bottomColumn":"","navigationLogoWidth":"10px","navigationMarginLeft":"10px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=nologo"},"design":{"loginInfo":{"title":"城市轨道交通设计平台","loginPath":"/design/login?project=nologo","loginParam":"NOLOGO","bottomColumn":"","navigationLogoWidth":"10px","navigationMarginLeft":"10px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=nologo"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'richorjoint', 'RICHOR_JOINT','中航锐创城市轨道交通实训平台',''
|
||||
,'中航锐创(实训室)','{"login":{"loginInfo":{"title":"中航锐创城市轨道交通实训平台","loginPath":"/login?project=richorjoint","loginParam":"RICHOR_JOINT","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"023"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"cctvUrl":"http://192.168.1.254","otherPlatformUrl":"/design/login?project=richorjoint"},"design":{"loginInfo":{"title":"中航锐创城市轨道交通设计平台","loginPath":"/design/login?project=richorjoint","loginParam":"RICHOR_JOINT","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"023"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=richorjoint"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'srsandbox', 'SR_SANDBOX','上饶科技中等专业学校城市轨道交通实训平台',''
|
||||
,'上饶沙盘','{"login":{"loginInfo":{"title":"上饶科技中等专业学校城市轨道交通实训平台","loginPath":"/login?project=srsandbox","loginParam":"SR_SANDBOX","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"024"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=srsandbox"},"design":{"loginInfo":{"title":"上饶科技中等专业学校城市轨道交通设计平台","loginPath":"/design/login?project=srsandbox","loginParam":"SR_SANDBOX","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"024"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=srsandbox"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'jxgm', 'JXGM','江西工业贸易职业技术学院城市轨道交通实训平台',''
|
||||
,'江西工贸','{"login":{"loginInfo":{"title":"江西工业贸易职业技术学院城市轨道交通实训平台","loginPath":"/login?project=jxgm","loginParam":"JXGM","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"024"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=jxgm"},"design":{"loginInfo":{"title":"江西工业贸易职业技术学院城市轨道交通设计平台","loginPath":"/design/login?project=jxgm","loginParam":"JXGM","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"025"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=jxgm"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'richorygy', 'RICHOR_YGY','扬州工业职业技术学院城市轨道交通实训平台',''
|
||||
,'扬州工业','{"login":{"loginInfo":{"title":"扬州工业职业技术学院城市轨道交通实训平台","loginPath":"/login?project=richorygy","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_YGY","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1},"design":{"loginInfo":{"title":"扬州工业职业技术学院城市轨道交通设计平台","loginPath":"/design/login?project=richorygy","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_YGY","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'say', 'SAY','江苏安全技术职业学院城市轨道交通实训平台',''
|
||||
,'苏安院','{"login":{"loginInfo":{"title":"江苏安全技术职业学院城市轨道交通实训平台","loginPath":"/login?project=say","loginParam":"SAY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"026"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=say"},"design":{"loginInfo":{"title":"江苏安全技术职业学院城市轨道交通设计平台","loginPath":"/design/login?project=say","loginParam":"SAY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"026"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=say"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'unittecsty', 'UNITTEC_STY','轨道交通实训平台',''
|
||||
,'众合-陕铁院','{"login":{"loginInfo":{"title":"轨道交通实训平台","loginPath":"/login?project=unittecsty","loginParam":"UNITTEC_STY","titleDistance":"-150px","titleIcon":"@/assets/icon/link_unittec.png","linkIcon":"@/assets/icon/link_unittec.png","titleImgWidth":"250px","navigationLogoWidth":"60px","navigationMarginLeft":"80px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=unittecsty"},"design":{"loginInfo":{"title":"轨道交通设计平台","loginPath":"/design/login?project=unittecsty","loginParam":"UNITTEC_STY","titleDistance":"-150px","titleIcon":"@/assets/icon/link_unittec.png","linkIcon":"@/assets/icon/link_unittec.png","titleImgWidth":"250px","navigationLogoWidth":"60px","navigationMarginLeft":"80px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=unittecsty"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'richorhhcj', 'RICHOR_HHCJ','红河财经学校城市轨道交通实训平台',''
|
||||
,'红河财经','{"login":{"loginInfo":{"title":"红河财经学校城市轨道交通实训平台","loginPath":"/login?project=richorhhcj","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_HHCJ","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"027"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1,"cctvUrl":"http://192.168.0.254","otherPlatformUrl":"/design/login?project=richorhhcj"},"design":{"loginInfo":{"title":"红河财经学校城市轨道交通设计平台","loginPath":"/design/login?project=richorhhcj","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_HHCJ","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"027"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1,"otherPlatformUrl":"/login?project=richorhhcj"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'richorcxjs', 'RICHOR_CXJS','长兴技师学院城市轨道交通实训平台',''
|
||||
,'长兴技校','{"login":{"loginInfo":{"title":"长兴技师学院城市轨道交通实训平台","loginPath":"/login?project=richorcxjs","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_CXJS","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"027"},"thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1},"design":{"loginInfo":{"title":"长兴技师学院城市轨道交通设计平台","loginPath":"/design/login?project=richorcxjs","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_CXJS","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'yjddzh', 'YJDDZH','应急调度指挥系统',''
|
||||
,'武汉8号线','{"login":{"loginInfo":{"title":"应急调度指挥系统","loginPath":"/login?project=yjddzh","loginParam":"YJDDZH","loginTitle":"空串","navigationLogoWidth":"40px","navigationMarginLeft":"60px","logoWidth":"0","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0},"design":{"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'teaching', 'TEACHING','教学通用实训平台',''
|
||||
,'教学通用','{"login":{"loginInfo":{"title":"教学通用实训平台","loginPath":"/login?project=teaching","loginParam":"TEACHING","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"028"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=teaching"},"design":{"loginInfo":{"title":"教学通用设计平台","loginPath":"/design/login?project=teaching","loginParam":"TEACHING","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"028"},"thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=teaching"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
||||
insert into project(`mark_key`,`code`,`name`,`name_en`,`simple_name`,`view_setting`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
(
|
||||
'hydrailway', 'HYD_RAILWAY','大铁交通综合行车模拟仿真系统V1.0',''
|
||||
,'哈盈达大铁','{"login":{"loginInfo":{"title":"大铁交通综合行车模拟仿真系统V1.0","loginTitle":"空串","logoWidth":"140px","loginPath":"/login?project=hydrailway","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HYD_RAILWAY","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=hydrailway"},"design":{"loginInfo":{"title":"大铁交通设计平台V1.0","loginTitle":"空串","logoWidth":"140px","loginPath":"/login?project=hydrailway","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HYD_RAILWAY","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=hydrailway"}}','{"defaultProject":1,"loginCreateSimulation":0}',1
|
||||
,NOW(),NOW(),1
|
||||
);
|
|
@ -1,15 +0,0 @@
|
|||
-- 新题库
|
||||
DROP TABLE IF EXISTS `rts_paper_question`;
|
||||
CREATE TABLE `rts_paper_question` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'id',
|
||||
`type` varchar(10) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '类型 选择题=select,判断题=judge,多选题=multi',
|
||||
`question` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '问题内容',
|
||||
`create_user_id` bigint DEFAULT NULL COMMENT '创建者id',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`org_id` bigint DEFAULT NULL COMMENT '公司组织id',
|
||||
`tags` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '标签',
|
||||
`question_option` varchar(612) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci COMMENT '问题选项',
|
||||
`question_answer` varchar(255) DEFAULT NULL COMMENT '答案,号隔开',
|
||||
`is_del` int DEFAULT '0' COMMENT '是否删除0=否,1=是',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=8 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
|
@ -1,154 +0,0 @@
|
|||
drop table IF EXISTS `project`;
|
||||
create TABLE `project` (
|
||||
`id` int NOT NULL AUTO_INCREMENT comment '数据库唯一ID',
|
||||
`code` varchar(50) CHARACTER SET utf8mb4 NOT NULL comment '项目编码',
|
||||
`name` varchar(255) DEFAULT NULL comment '项目名称',
|
||||
`name_en` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL comment '项目英文名称',
|
||||
`simple_name` varchar(255) CHARACTER SET utf8mb4 DEFAULT NULL comment '项目简称',
|
||||
`create_time` datetime DEFAULT NULL comment '创建时间',
|
||||
`update_time` datetime DEFAULT NULL comment '修改时间',
|
||||
`status` int NOT NULL comment '项目标识状态',
|
||||
`view_show` int NOT NULL DEFAULT '1' comment '是否供前端选择',
|
||||
`server_setting` text CHARACTER SET utf8mb4 comment '后端服务设置',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `code` (`code`),
|
||||
KEY `view_show` (`view_show`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
drop table IF EXISTS `project_view`;
|
||||
create TABLE `project_view` (
|
||||
`id` int NOT NULL AUTO_INCREMENT comment '主键',
|
||||
`view_setting` text comment '前端界面设置',
|
||||
`mark_key` varchar(255) CHARACTER SET utf8mb4 NOT NULL comment '前端标识key',
|
||||
`project` varchar(255) CHARACTER SET utf8mb4 NOT NULL comment '对应项目',
|
||||
`create_time` datetime DEFAULT NULL comment '创建时间',
|
||||
`update_time` datetime DEFAULT NULL comment '修改时间',
|
||||
`status` int DEFAULT '1' comment '状态',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `mark_key` (`mark_key`,`status`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=0 DEFAULT CHARSET=utf8mb4;
|
||||
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('DEFAULT','城市轨道交通实训平台',' Urban Rail Transit Practical Training Platform','','{"defaultProject":1,"loginCreateSimulation":0}',0,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('XTY','西安铁路职业技术学院城市轨道交通实训平台','','西铁院','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('GZB','贵州装备制造职业学院城市轨道交通实训平台','','贵州装备','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('XADT','城市轨道交通实训平台','','西安地铁','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('HEB','城市轨道交通综合行车模拟仿真系统V1.0','','哈尔滨','{"defaultProject":0,"loginCreateSimulation":0,"controlDevice":1}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('NTY','城轨高级信号系统(云平台通用版)','','南铁院(通用版)','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('NTYC','城轨高级信号系统(云平台专用版)','','南铁院(专用版)','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('NTYL','城轨高级信号系统(本地专用版)','','南铁院(本地版)','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('SDY','江苏电子信息职业学院城市轨道交通实训平台','','苏电院','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('BJD','城市轨道交通列车运行智慧辅助系统','','北交大','{"defaultProject":0,"loginCreateSimulation":1, "createSimulationPermission":1}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('CGY','成都工业职业技术学院线网车站运营虚拟仿真实训中心','','成都工业','{"defaultProject":0,"loginCreateSimulation":0,"freeSource":1}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('WJLS','微机联锁仿真系统','','微机联锁','{"defaultProject":0,"loginCreateSimulation":1,"createLocalSimulation":1,"defaultMemberId":"2"}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('DRTS','全国行车调度员大赛训练系统','','调度大赛','{"defaultProject":0,"loginCreateSimulation":1,"mapNeedCharge":1}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('ZZWWTEST','共赢列车仿真驾驶系统','','郑州共赢考试','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('RICHOR','中航锐创城市轨道交通实训平台','','中航锐创','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('ZZWW','共赢列车仿真驾驶系统','','郑州共赢','{"defaultProject":0,"loginCreateSimulation":0,"freeSource":1,"defaultLoadTrain":1}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('NOLOGO','城市轨道交通实训平台','','无logo','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('RICHOR_JOINT','中航锐创城市轨道交通实训平台','','中航锐创(实训室)','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('SR_SANDBOX','上饶科技中等专业学校城市轨道交通实训平台','','上饶沙盘','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('JXGM','江西工业贸易职业技术学院城市轨道交通实训平台','','江西工贸','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('RICHOR_YGY','扬州工业职业技术学院城市轨道交通实训平台','','扬州工业','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('SAY','江苏安全技术职业学院城市轨道交通实训平台','','苏安院','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('UNITTEC_STY','轨道交通实训平台','','众合-陕铁院','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('RICHOR_HHCJ','红河财经学校城市轨道交通实训平台','','红河财经','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('RICHOR_CXJS','长兴技师学院城市轨道交通实训平台','','长兴技校','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('YJDDZH','应急调度指挥系统','','武汉8号线','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('TEACHING','教学通用实训平台','','教学通用','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
insert into project(`code`,`name`,`name_en`,`simple_name`,`server_setting`,`view_show` ,`create_time`,`update_time`,`status`) VALUES
|
||||
('HYD_RAILWAY','大铁交通综合行车模拟仿真系统V1.0','','哈盈达大铁','{"defaultProject":0,"loginCreateSimulation":0}',1,NOW(),NOW(),1);
|
||||
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('xty','XTY','{"loginInfo":{"title":"西安铁路职业技术学院城市轨道交通实训平台","loginPath":"/login?project=xty","loginParam":"XTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"013"},"projectIcon":"@/assets/icon/favicon_xty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=xty"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('zzww','ZZWW','{"loginInfo":{"title":"共赢列车仿真驾驶系统","loginPath":"/login?project=zzww","loginParam":"ZZWW","loginTitle":"空串","logoWidth":"140px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_zzww.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('xzexam','SAY','{"loginInfo":{"title":"城市轨道交通标准化培训软件","loginPath":"/login?project=xzexam","loginParam":"SAY","loginTitle":"空串","logoWidth":"140px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/transparent.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('zzwwtest','ZZWWTEST','{"loginInfo":{"title":"共赢列车仿真驾驶系统","loginPath":"/login?project=zzwwtest","loginParam":"ZZWWTEST","loginTitle":"空串","logoWidth":"140px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_zzww.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('bjd','BJD','{"loginInfo":{"title":"城市轨道交通列车运行智慧辅助系统","loginPath":"/login?project=bjd","logoWidth":"400px","bottomIcon":"@/assets/icon/favicon_bjd.png","bottomColumn":"","loginTitle":"空串","linkIcon":"@/assets/icon/link_bjd.png","loginParam":"BJD","navigationLogoWidth":"160px","navigationMarginLeft":"175px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_bjd.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":1,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=bjd"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('sdy','SDY','{"loginInfo":{"title":"江苏电子信息职业学院城市轨道交通实训平台","loginPath":"/login?project=sdy","loginParam":"SDY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"021"},"projectIcon":"@/assets/icon/favicon_jdy.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=sdy"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('ntyc','NTYC','{"loginInfo":{"title":"城轨高级信号系统(云平台专用版)","loginPath":"/login?project=ntyc","loginParam":"NTYC","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_nty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=ntyc"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('ntyl','NTYL','{"loginInfo":{"title":"城轨高级信号系统(本地专用版)","loginPath":"/login?project=ntyl","loginParam":"NTYL","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_nty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=ntyl"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('nty','NTY','{"loginInfo":{"title":"城轨高级信号系统(云平台通用版)","loginPath":"/login?project=nty","loginParam":"NTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_nty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=nty"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('login','DEFAULT','{"loginInfo":{"title":"城市轨道交通实训平台","titleEn":" Urban Rail Transit Practical Training Platform","loginPath":"/login","loginParam":"DEFAULT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('design','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台","titleEn":" Urban Rail Transit Design Platform","loginPath":"/design/login","loginParam":"DEFAULT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('wjls','WJLS','{"loginInfo":{"title":"微机联锁仿真系统","loginPath":"/login?project=wjls","loginParam":"WJLS","loginTitle":"空串","navigationLogoWidth":"40px","navigationMarginLeft":"60px","logoWidth":"0","systemType":"011"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('drts','DRTS','{"loginInfo":{"title":"全国行车调度员大赛训练系统","loginPath":"/login?project=drts","loginParam":"DRTS","loginTitle":"空串","navigationLogoWidth":"40px","navigationMarginLeft":"60px","logoWidth":"0","systemType":"020"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designdrts','DRTS','{"loginInfo":{"title":"行车调度员设计平台国赛备战版","loginPath":"/design/login?project=drts","loginParam":"DRTS","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"020"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('yjddzh','YJDDZH','{"loginInfo":{"title":"应急调度指挥系统","loginPath":"/login?project=yjddzh","loginParam":"YJDDZH","loginTitle":"空串","navigationLogoWidth":"40px","navigationMarginLeft":"60px","logoWidth":"0","systemType":"011"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('hlsdrts','DRTS','{"loginInfo":{"title":"城轨国赛竞赛系统","loginPath":"/login?project=hlsdrts","loginParam":"DRTS","logoWidth":"300px","linkIcon":"@/assets/icon/link_hls.png","loginTitle":"空串","navigationLogoWidth":"180px","navigationMarginLeft":"195px","systemType":"020"},"projectIcon":"@/assets/icon/favicon_hls.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designbjd','BJD','{"loginInfo":{"title":"城市轨道交通列车运行智慧辅助系统","loginPath":"/design/login?project=bjd","logoWidth":"400px","bottomIcon":"@/assets/icon/favicon_bjd.png","bottomColumn":"","linkIcon":"","loginParam":"BJD","navigationLogoWidth":"160px","navigationMarginLeft":"175px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_bjd.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=bjd"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designhlsdrts','DRTS','{"loginInfo":{"title":"城轨国赛竞赛系统","loginPath":"/design/login?project=hlsdrts","loginParam":"DRTS","logoWidth":"300px","linkIcon":"@/assets/icon/link_hls.png","loginTitle":"空串","navigationLogoWidth":"180px","navigationMarginLeft":"195px","systemType":"020"},"projectIcon":"@/assets/icon/favicon_hls.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designxty','XTY','{"loginInfo":{"title":"西安铁路职业技术学院城市轨道交通设计平台","loginPath":"/design/login?project=xty","loginParam":"XTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"013"},"projectIcon":"@/assets/icon/favicon_xty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=xty"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designntyl','NTYL','{"loginInfo":{"title":"城轨高级信号设计系统(本地专用版)","loginPath":"/design/login?project=ntyl","loginParam":"NTYL","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_nty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=ntyl"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designntyc','NTYC','{"loginInfo":{"title":"城轨高级信号设计系统(云平台专用版)","loginPath":"/design/login?project=ntyc","loginParam":"NTYC","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_nty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=ntyc"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designsdy','SDY','{"loginInfo":{"title":"江苏电子信息职业学院城市轨道交通设计平台","loginPath":"/design/login?project=sdy","loginParam":"SDY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"021"},"projectIcon":"@/assets/icon/favicon_jdy.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=sdy"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designnty','NTY','{"loginInfo":{"title":"城轨高级信号设计系统(云平台通用版)","loginPath":"/design/login?project=nty","loginParam":"NTY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_nty.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=nty"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('gzb','GZB','{"loginInfo":{"title":"贵州装备制造职业学院城市轨道交通实训平台","loginPath":"/login?project=gzb","loginParam":"GZB","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"014"},"projectIcon":"@/assets/icon/favicon_gzb.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=gzb"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designgzb','GZB','{"loginInfo":{"title":"贵州装备制造职业学院城市轨道交通设计平台","loginPath":"/design/login?project=gzb","titleDistance":"-150px","loginParam":"GZB","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"014"},"projectIcon":"@/assets/icon/favicon_gzb.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=gzb"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designcgy','CGY','{"loginInfo":{"title":"成都工业职业技术学院轨道交通虚拟仿真设计平台","loginPath":"/design/login?project=cgy","loginParam":"CGY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_cgy.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":1,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('heb','HEB','{"loginInfo":{"title":"城市轨道交通综合行车模拟仿真系统V1.0","loginTitle":"城市轨道交通综合行车模拟仿真系统V1.0","logoWidth":"140px","loginPath":"/login?project=heb","titleDistance":"150px","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HEB","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"019"},"projectIcon":"@/assets/icon/favicon_hyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":1,"noSimulationQrCode":1,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=heb"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('hyd','DEFAULT','{"loginInfo":{"title":"城市轨道交通综合行车模拟仿真系统V1.0","loginTitle":"空串","logoWidth":"140px","loginPath":"/login?project=hyd","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"DEFAULT","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_hyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=hyd"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designheb','HEB','{"loginInfo":{"title":"城市轨道交通设计平台V1.0","loginTitle":"城市轨道交通设计平台V1.0","logoWidth":"140px","titleDistance":"150px","loginPath":"/design/login?project=heb","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HEB","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"019"},"projectIcon":"@/assets/icon/favicon_hyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":1,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=heb"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designhyd','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台V1.0","loginTitle":"空串","logoWidth":"140px","loginPath":"/design/login?project=hyd","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"DEFAULT","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_hyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=hyd"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('cgy','CGY','{"loginInfo":{"title":"成都工业职业技术学院线网车站运营虚拟仿真实训中心","loginPath":"/login?project=cgy","loginParam":"CGY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_cgy.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":1,"noSimulationQrCode":0,"registerCode":1,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('hydrailway','HYD_RAILWAY','{"loginInfo":{"title":"大铁交通综合行车模拟仿真系统V1.0","loginTitle":"空串","logoWidth":"140px","loginPath":"/login?project=hydrailway","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HYD_RAILWAY","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_hyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=hydrailway"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designhydrailway','HYD_RAILWAY','{"loginInfo":{"title":"大铁交通设计平台V1.0","loginTitle":"空串","logoWidth":"140px","loginPath":"/login?project=hydrailway","bottomColumn":"哈尔滨盈达科技有限公司 联系电话:0451-87001273","loginParam":"HYD_RAILWAY","navigationLogoWidth":"120px","navigationMarginLeft":"140px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_hyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=hydrailway"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('xadt','XADT','{"loginInfo":{"title":"城市轨道交通实训平台","logoWidth":"60px","loginTitle":"运营一中心","homeTitle":"运营一中心","browserTitle":"西安地铁运营一中心城市轨道交通实训平台","loginPath":"/login?project=xadt","loginParam":"XADT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"012"},"projectIcon":"@/assets/icon/favicon_xas.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=xadt"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designxadt','XADT','{"loginInfo":{"title":"城市轨道交通设计平台","logoWidth":"60px","loginTitle":"运营一中心","homeTitle":"运营一中心","browserTitle":"西安地铁运营一中心城市轨道交通设计平台","loginPath":"/design/login?project=xadt","loginParam":"XADT","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"012"},"projectIcon":"@/assets/icon/favicon_xas.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=xadt"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('jyd','DEFAULT','{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=jyd","logoWidth":"300px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","loginTitle":"空串","bottomColumn":"","bottomIcon":"@/assets/icon/bottom_jyd.png","linkIcon":"@/assets/icon/link_jyd.png","loginParam":"DEFAULT","systemType":"011"},"projectIcon":"@/assets/icon/favicon_jyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=jyd"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designjyd','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台","loginTitle":"空串","logoWidth":"300px","navigationLogoWidth":"120px","navigationMarginLeft":"140px","loginPath":"/design/login?project=jyd","bottomColumn":"","bottomIcon":"@/assets/icon/bottom_jyd.png","linkIcon":"@/assets/icon/link_jyd.png","loginParam":"DEFAULT","systemType":"011"},"projectIcon":"@/assets/icon/favicon_jyd.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=jyd"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('tky','DEFAULT','{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=tky","loginTitle":"空串","bottomColumn":"","bottomIcon":"@/assets/icon/favicon_tky.png","loginParam":"DEFAULT","navigationLogoWidth":"75px","navigationMarginLeft":"90px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_tky.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=tky"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designtky','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台","loginPath":"/design/login?project=tky","loginTitle":"空串","bottomIcon":"@/assets/icon/favicon_tky.png","bottomColumn":"","loginParam":"DEFAULT","navigationLogoWidth":"75px","navigationMarginLeft":"90px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_tky.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=tky"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('bxkc','DEFAULT','{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=bxkc","loginTitle":"空串","logoWidth":"400px","bottomIcon":"@/assets/icon/favicon_bxkc.png","bottomColumn":"","linkIcon":"@/assets/icon/link_bxkc.png","loginParam":"DEFAULT","navigationLogoWidth":"160px","navigationMarginLeft":"175px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_bxkc.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=bxkc"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designbxkc','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台","loginPath":"/design/login?project=bxkc","loginTitle":"空串","logoWidth":"400px","bottomIcon":"@/assets/icon/favicon_bxkc.png","bottomColumn":"","linkIcon":"@/assets/icon/link_bxkc.png","loginParam":"DEFAULT","navigationLogoWidth":"160px","navigationMarginLeft":"175px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_bxkc.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=bxkc"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('crsc','DEFAULT','{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=crsc","loginTitle":"空串","logoWidth":"600px","bottomIcon":"@/assets/icon/favicon_crsc.png","bottomColumn":"","linkIcon":"@/assets/icon/link_crsc.png","titleIcon":"@/assets/icon/link_crsc.png","loginParam":"DEFAULT","navigationLogoWidth":"100px","navigationMarginLeft":"125px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_crsc.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=crsc"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designcrsc','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台","loginPath":"/design/login?project=crsc","loginTitle":"空串","logoWidth":"600px","bottomIcon":"@/assets/icon/favicon_crsc.png","bottomColumn":"","linkIcon":"@/assets/icon/link_crsc.png","titleIcon":"@/assets/icon/link_crsc.png","loginParam":"DEFAULT","navigationLogoWidth":"100px","navigationMarginLeft":"125px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_crsc.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=crsc"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('richor','RICHOR','{"loginInfo":{"title":"中航锐创城市轨道交通实训平台","loginPath":"/login?project=richor","loginParam":"RICHOR","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"022"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('richorlesson3d','RICHOR','{"loginInfo":{"title":"中航锐创城市轨道交通实训平台","loginPath":"/login?project=richorlesson3d","loginParam":"RICHOR","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"022"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('hls','DEFAULT','{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=hls","loginTitle":"空串","logoWidth":"300px","linkIcon":"@/assets/icon/link_hls.png","bottomColumn":"北京和利时系统工程有限公司","loginParam":"DEFAULT","navigationLogoWidth":"180px","navigationMarginLeft":"195px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_hls.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=hls"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designrichorjoint','RICHOR_JOINT','{"loginInfo":{"title":"中航锐创城市轨道交通设计平台","loginPath":"/design/login?project=richorjoint","loginParam":"RICHOR_JOINT","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"023"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=richorjoint"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('richorjoint','RICHOR_JOINT','{"loginInfo":{"title":"中航锐创城市轨道交通实训平台","loginPath":"/login?project=richorjoint","loginParam":"RICHOR_JOINT","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","navigationLogoWidth":"40px","navigationMarginLeft":"50px","systemType":"023"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"cctvUrl":"http://192.168.1.254","otherPlatformUrl":"/design/login?project=richorjoint"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designhls','DEFAULT','{"loginInfo":{"title":"城市轨道交通设计平台","loginPath":"/design/login?project=hls","loginTitle":"空串","logoWidth":"300px","linkIcon":"@/assets/icon/link_hls.png","bottomColumn":"北京和利时系统工程有限公司","loginParam":"DEFAULT","navigationLogoWidth":"180px","navigationMarginLeft":"195px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_hls.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":0,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=hls"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designsrsandbox','SR_SANDBOX','{"loginInfo":{"title":"上饶科技中等专业学校城市轨道交通设计平台","loginPath":"/design/login?project=srsandbox","loginParam":"SR_SANDBOX","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"024"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=srsandbox"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designrichorygy','RICHOR_YGY','{"loginInfo":{"title":"扬州工业职业技术学院城市轨道交通设计平台","loginPath":"/design/login?project=richorygy","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_YGY","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('srsandbox','SR_SANDBOX','{"loginInfo":{"title":"上饶科技中等专业学校城市轨道交通实训平台","loginPath":"/login?project=srsandbox","loginParam":"SR_SANDBOX","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"024"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=srsandbox"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('richorygy','RICHOR_YGY','{"loginInfo":{"title":"扬州工业职业技术学院城市轨道交通实训平台","loginPath":"/login?project=richorygy","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_YGY","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('richorhhcj','RICHOR_HHCJ','{"loginInfo":{"title":"红河财经学校城市轨道交通实训平台","loginPath":"/login?project=richorhhcj","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_HHCJ","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"027"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1,"cctvUrl":"http://192.168.0.254","otherPlatformUrl":"/design/login?project=richorhhcj"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designrichorhhcj','RICHOR_HHCJ','{"loginInfo":{"title":"红河财经学校城市轨道交通设计平台","loginPath":"/design/login?project=richorhhcj","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_HHCJ","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"027"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":1,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1,"otherPlatformUrl":"/login?project=richorhhcj"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designrichorcxjs','RICHOR_CXJS','{"loginInfo":{"title":"长兴技师学院城市轨道交通设计平台","loginPath":"/design/login?project=richorcxjs","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_CXJS","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designjxgm','JXGM','{"loginInfo":{"title":"江西工业贸易职业技术学院城市轨道交通设计平台","loginPath":"/design/login?project=jxgm","loginParam":"JXGM","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"025"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=jxgm"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('richorcxjs','RICHOR_CXJS','{"loginInfo":{"title":"长兴技师学院城市轨道交通实训平台","loginPath":"/login?project=richorcxjs","bottomColumn":"中航锐创(北京)科技发展有限公司 联系电话:4000500081","loginParam":"RICHOR_CXJS","linkIcon":"@/assets/icon/favicon_richor.png","titleIcon":"@/assets/icon/favicon_richor.png","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"027"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":1,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":1,"contectInfo":{},"noCopyRight":1}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designnologo','NOLOGO','{"loginInfo":{"title":"城市轨道交通设计平台","loginPath":"/design/login?project=nologo","loginParam":"NOLOGO","bottomColumn":"","navigationLogoWidth":"10px","navigationMarginLeft":"10px","systemType":"011"},"projectIcon":"@/assets/icon/transparent.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=nologo"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('jxgm','JXGM','{"loginInfo":{"title":"江西工业贸易职业技术学院城市轨道交通实训平台","loginPath":"/login?project=jxgm","loginParam":"JXGM","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"024"},"projectIcon":"@/assets/icon/favicon_richor.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=jxgm"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('nologo','NOLOGO','{"loginInfo":{"title":"城市轨道交通实训平台","loginPath":"/login?project=nologo","loginParam":"NOLOGO","bottomColumn":"","navigationLogoWidth":"10px","navigationMarginLeft":"10px","systemType":"011"},"projectIcon":"@/assets/icon/transparent.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":1,"mainBodyNoShow":1,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=nologo"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('say','SAY','{"loginInfo":{"title":"江苏安全技术职业学院城市轨道交通实训平台","loginPath":"/login?project=say","loginParam":"SAY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"026"},"projectIcon":"@/assets/icon/favicon_say.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=say"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designsay','SAY','{"loginInfo":{"title":"江苏安全技术职业学院城市轨道交通设计平台","loginPath":"/design/login?project=say","loginParam":"SAY","titleDistance":"-150px","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"026"},"projectIcon":"@/assets/icon/favicon_say.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=say"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('unittecsty','UNITTEC_STY','{"loginInfo":{"title":"轨道交通实训平台","loginPath":"/login?project=unittecsty","loginParam":"UNITTEC_STY","titleDistance":"-150px","titleIcon":"@/assets/icon/link_unittec.png","linkIcon":"@/assets/icon/link_unittec.png","titleImgWidth":"250px","navigationLogoWidth":"60px","navigationMarginLeft":"80px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_unittec.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=unittecsty"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designunittecsty','UNITTEC_STY','{"loginInfo":{"title":"轨道交通设计平台","loginPath":"/design/login?project=unittecsty","loginParam":"UNITTEC_STY","titleDistance":"-150px","titleIcon":"@/assets/icon/link_unittec.png","linkIcon":"@/assets/icon/link_unittec.png","titleImgWidth":"250px","navigationLogoWidth":"60px","navigationMarginLeft":"80px","systemType":"011"},"projectIcon":"@/assets/icon/favicon_unittec.png","thirdLogin":0,"bottomColumnOnlyCon":1,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":1,"projectLoginStyle":1,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=unittecsty"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('teaching','TEACHING','{"loginInfo":{"title":"教学通用实训平台","loginPath":"/login?project=teaching","loginParam":"TEACHING","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"028"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/design/login?project=teaching"}',NOW(),NOW(),1);
|
||||
insert into project_view(`mark_key`,`project`,`view_setting`,`create_time`,`update_time`,`status`) VALUES ('designteaching','TEACHING','{"loginInfo":{"title":"教学通用设计平台","loginPath":"/design/login?project=teaching","loginParam":"TEACHING","navigationLogoWidth":"40px","navigationMarginLeft":"60px","systemType":"028"},"projectIcon":"@/assets/icon/favicon.png","thirdLogin":0,"bottomColumnOnlyCon":0,"mapList":1,"caseHide":0,"versionBaseNoShow":0,"mainBodyNoShow":0,"projectLoginStyle":0,"noQrcode":0,"noSimulationQrCode":0,"registerCode":0,"contectUs":0,"contectInfo":{},"noCopyRight":0,"otherPlatformUrl":"/login?project=teaching"}',NOW(),NOW(),1);
|
|
@ -1,4 +0,0 @@
|
|||
alter table `joylink`.`project`
|
||||
drop COLUMN `name_en`,
|
||||
CHANGE COLUMN `simple_name` `name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL comment '项目简称' AFTER `code`,
|
||||
CHANGE COLUMN `name` `description` text CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL comment '项目描述' AFTER `name`;
|
|
@ -1,11 +0,0 @@
|
|||
create TABLE `org_project` (
|
||||
`id` int NOT NULL AUTO_INCREMENT comment '主键',
|
||||
`org_id` int NOT NULL comment '组织ID',
|
||||
`project_code` varchar(255) NOT NULL comment '项目编码',
|
||||
`creator_id` int DEFAULT NULL comment '创建者',
|
||||
`create_time` datetime DEFAULT NULL comment '创建时间',
|
||||
PRIMARY KEY (`id`),
|
||||
UNIQUE KEY `org_id_2` (`org_id`,`project_code`),
|
||||
KEY `org_id` (`org_id`),
|
||||
KEY `project_code` (`project_code`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=9 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
|
@ -1,12 +0,0 @@
|
|||
create TABLE `minio_file_info` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT comment '主键',
|
||||
`title` varchar(255) DEFAULT NULL comment '文件展示名称',
|
||||
`directory` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL comment '文件夹',
|
||||
`file_name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL comment '存放文件名',
|
||||
`create_time` datetime DEFAULT NULL comment '创建时间',
|
||||
`creator` bigint DEFAULT NULL comment '创建者',
|
||||
`status` int DEFAULT NULL comment '状态',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `type` (`directory`),
|
||||
KEY `status` (`status`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=2 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
|
@ -1,3 +0,0 @@
|
|||
-- 新实训标添加组织id
|
||||
alter table rts_published_training2 add column org_id bigint;
|
||||
|
|
@ -1,89 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : room
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 12/10/2022 17:49:36
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_paper_composition
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_paper_composition`;
|
||||
CREATE TABLE `rts_paper_composition` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '试卷蓝图id',
|
||||
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '试卷蓝图名称',
|
||||
`profile` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci DEFAULT NULL COMMENT '试卷蓝图简介',
|
||||
`map_id` bigint NOT NULL COMMENT '对应的mapId',
|
||||
`org_id` bigint DEFAULT NULL COMMENT '组织id',
|
||||
`start_time` datetime DEFAULT NULL COMMENT '启用起始时间',
|
||||
`end_time` datetime DEFAULT NULL COMMENT '启用截止时间',
|
||||
`valid_duration` int DEFAULT NULL COMMENT '完成考试有效最长时长,单位min',
|
||||
`pass_score` int DEFAULT NULL COMMENT '及格分',
|
||||
`full_score` int DEFAULT NULL COMMENT '满分',
|
||||
`update_id` bigint DEFAULT NULL COMMENT '最后更新用户id',
|
||||
`creator_id` bigint DEFAULT NULL COMMENT '创建者id',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`update_time` datetime DEFAULT NULL COMMENT '更新时间',
|
||||
`state` int DEFAULT NULL COMMENT '试卷蓝图状态:1-正在编辑,2-封存(不能修改),3-已经被使用(不能修改删除);定于见PaperCompositionState',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_paper_rule
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_paper_rule`;
|
||||
CREATE TABLE `rts_paper_rule` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '试卷规则定义id',
|
||||
`pc_id` bigint NULL DEFAULT NULL COMMENT 'paper_compostion的id',
|
||||
`type` int NULL DEFAULT NULL COMMENT '试题类型:1-理论题,2-实训题',
|
||||
`subType` int NULL DEFAULT NULL COMMENT '规则类型:理论题(1-单选题,2-多选题,3-判断题);实训题(4-单操实训,5-场景实训)',
|
||||
`tags` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '筛选题目的标签,即根据标签来筛选题目;List<String>的json',
|
||||
`amount` int NULL DEFAULT NULL COMMENT '该类型题目数量',
|
||||
`score` int NULL DEFAULT NULL COMMENT '每题分值',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 12 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_paper_user
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_paper_user`;
|
||||
CREATE TABLE `rts_paper_user` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户试卷id',
|
||||
`user_id` bigint NOT NULL COMMENT '用户id',
|
||||
`pc_id` bigint NOT NULL COMMENT '生成用户试卷的paper_compostion的id',
|
||||
`score` int NULL DEFAULT NULL COMMENT '用户最终得分',
|
||||
`start_time` datetime NULL DEFAULT NULL COMMENT '用户开始做题时间',
|
||||
`end_time` datetime NULL DEFAULT NULL COMMENT '用户结束做题时间',
|
||||
`cause` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '原因',
|
||||
`create_time` datetime NULL DEFAULT NULL COMMENT '用户试卷生成时间',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 10 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_paper_user_question
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_paper_user_question`;
|
||||
CREATE TABLE `rts_paper_user_question` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '用户试卷试题结果id',
|
||||
`pu_id` bigint NOT NULL COMMENT '用户试卷paper_user的id',
|
||||
`org_id` bigint DEFAULT NULL COMMENT '组织id',
|
||||
`type` int DEFAULT NULL COMMENT '试题类型:1-理论题,2-实训题',
|
||||
`question_id` bigint NOT NULL COMMENT '试题id',
|
||||
`state` int DEFAULT NULL COMMENT '试题状态:1-未做(初始),2-答对,3-答错,4-时间到结束',
|
||||
`tmp_answer` varchar(255) DEFAULT NULL COMMENT '临时答案内容',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=373 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,2 +0,0 @@
|
|||
alter table `joylink`.`project`
|
||||
ADD COLUMN `default_org` bigint NULL comment '默认组织ID' AFTER `server_setting`;
|
|
@ -1,2 +0,0 @@
|
|||
alter table `joylink`.`project_view`
|
||||
drop index `mark_key`;
|
|
@ -1,10 +0,0 @@
|
|||
-- 实训草稿
|
||||
rename TABLE draft_training2 to rts_draft_training2;
|
||||
rename TABLE published_training2 to rts_published_training2;
|
||||
-- 机构与项目关系
|
||||
rename TABLE org_project to rts_org_project;
|
||||
-- 项目
|
||||
rename TABLE project to rts_project;
|
||||
rename TABLE project_view to rts_project_view;
|
||||
-- MINIO
|
||||
rename TABLE minio_file_info to rts_minio_file_info;
|
|
@ -1,8 +0,0 @@
|
|||
alter table `joylink`.`rts_draft_training2`
|
||||
ADD COLUMN `map_system` varchar(255) NULL comment '子系统' AFTER `map_id`,
|
||||
ADD COLUMN `terminal` varchar(255) NULL comment '客户端标识' AFTER `map_system`;
|
||||
|
||||
|
||||
alter table `joylink`.`rts_published_training2`
|
||||
ADD COLUMN `map_system` varchar(255) NULL comment '子系统' AFTER `map_id`,
|
||||
ADD COLUMN `terminal` varchar(255) NULL comment '客户端标识' AFTER `map_system`;
|
|
@ -1 +0,0 @@
|
|||
rename TABLE trace_training2 to rts_trace_training2;
|
|
@ -1,92 +0,0 @@
|
|||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_permission
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_permission`;
|
||||
CREATE TABLE `rts_permission` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '权限id,对功能(system_ability)的管理',
|
||||
`project_code` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '对应的projectCode',
|
||||
`map_id` bigint NULL DEFAULT NULL COMMENT '对应线路的mapId',
|
||||
`permission_type` int NULL DEFAULT NULL COMMENT '权限类型 0=项目,1=线路,2=线路功能',
|
||||
`name` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '权限名称',
|
||||
`des` varchar(512) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '权限描述',
|
||||
`creator_id` bigint NULL DEFAULT NULL COMMENT '创建者id',
|
||||
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
|
||||
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
|
||||
`is_sync` tinyint(1) NULL DEFAULT NULL COMMENT '是否同步的数据',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 2159 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_permission_distribute
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_permission_distribute`;
|
||||
CREATE TABLE `rts_permission_distribute` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`map_id` bigint NULL DEFAULT NULL COMMENT '地图id',
|
||||
`source_subject_id` bigint NULL DEFAULT NULL COMMENT '来源主体id',
|
||||
`forever` tinyint(1) NULL DEFAULT NULL COMMENT '是否永久:true/false',
|
||||
`status` int NULL DEFAULT NULL COMMENT '权限分发状态,1-有效,2-无效',
|
||||
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
|
||||
`update_time` datetime NULL DEFAULT NULL COMMENT '修改时间',
|
||||
`start_time` datetime NULL DEFAULT NULL COMMENT '开始时间',
|
||||
`end_time` datetime NULL DEFAULT NULL COMMENT '结束时间',
|
||||
`creator_id` bigint NULL DEFAULT NULL COMMENT '创建者id',
|
||||
`dsc` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '备注描述',
|
||||
`is_sync` tinyint(1) NULL DEFAULT NULL COMMENT '是否同步的数据',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 4 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_permission_distribute_ref
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_permission_distribute_ref`;
|
||||
CREATE TABLE `rts_permission_distribute_ref` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`distribute_id` bigint NULL DEFAULT NULL COMMENT '分发id',
|
||||
`permission_id` bigint NULL DEFAULT NULL COMMENT '权限id',
|
||||
`amount` int NULL DEFAULT NULL COMMENT '总数量',
|
||||
`remains` int NULL DEFAULT NULL COMMENT '剩余数量',
|
||||
`is_sync` tinyint(1) NULL DEFAULT NULL COMMENT '是否同步数据',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 8615 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_permission_subject
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_permission_subject`;
|
||||
CREATE TABLE `rts_permission_subject` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '权限主体id',
|
||||
`permission_id` bigint NULL DEFAULT NULL COMMENT '访问权限id',
|
||||
`subject_type` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '主体类型(user,org)',
|
||||
`subject_id` bigint NULL DEFAULT NULL COMMENT '主体id',
|
||||
`amount` int NULL DEFAULT NULL COMMENT '主体对该权限的总数量',
|
||||
`remains` int NULL DEFAULT NULL COMMENT '主体对该权限的剩余数量',
|
||||
`status` int NULL DEFAULT NULL COMMENT '权限主体状态,1(Valid)-有效,2(InValid)-无效',
|
||||
`forever` tinyint(1) NULL DEFAULT NULL COMMENT '是否永久:1-true/0-false',
|
||||
`start_time` datetime NULL DEFAULT NULL COMMENT '开始时间',
|
||||
`end_time` datetime NULL DEFAULT NULL COMMENT '结束时间',
|
||||
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
|
||||
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
|
||||
`distribute_id` bigint NOT NULL COMMENT '来自对应的分发id(rts_permission_distribute)',
|
||||
`parent_id` bigint NULL DEFAULT NULL COMMENT '父级id 数据来源rts_permission_distribute表source_subject_id字段',
|
||||
`is_sync` tinyint(1) NULL DEFAULT NULL COMMENT '是否同步的数据',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 60903 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_permission_system_ability
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_permission_system_ability`;
|
||||
CREATE TABLE `rts_permission_system_ability` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '权限功能关联记录id',
|
||||
`permission_id` bigint NULL DEFAULT NULL COMMENT '权限id',
|
||||
`system_ability_id` bigint NULL DEFAULT NULL COMMENT '功能(system_ability)的id',
|
||||
`is_sync` tinyint(1) NULL DEFAULT NULL COMMENT '是否同步的数据',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 58719 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,38 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : test-local
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 31/10/2022 13:14:51
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_map_function
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_map_function`;
|
||||
CREATE TABLE `rts_map_function` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`map_id` bigint NOT NULL COMMENT '地图id',
|
||||
`name` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '名称',
|
||||
`desc` varchar(256) CHARACTER SET utf8 COLLATE utf8_general_ci NULL DEFAULT NULL COMMENT '描述',
|
||||
`type` varchar(32) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '仿真类型',
|
||||
`param` text CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL COMMENT '仿真创建参数',
|
||||
`creator_id` bigint NOT NULL COMMENT '创建人id',
|
||||
`create_time` datetime NOT NULL COMMENT '创建时间',
|
||||
`updater_id` bigint NULL DEFAULT NULL COMMENT '更新人id',
|
||||
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 159 CHARACTER SET = utf8 COLLATE = utf8_general_ci COMMENT = '地图功能' ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,12 +0,0 @@
|
|||
CREATE TABLE `rts_draft_training2_progress` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT '主键',
|
||||
`training_id` bigint DEFAULT NULL COMMENT '实训ID',
|
||||
`description` text COMMENT '描述',
|
||||
`create_time` datetime DEFAULT NULL,
|
||||
`map_location_json` text COMMENT '地图定位',
|
||||
`bg_scene_json` text COMMENT '背景JSON',
|
||||
`step_json` text COMMENT '步骤列表json',
|
||||
`scoring_rule_json` text COMMENT '打分规则列表json',
|
||||
`creator_id` bigint DEFAULT NULL COMMENT '创建人',
|
||||
PRIMARY KEY (`id`)
|
||||
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='实训草稿存档表';
|
|
@ -1,6 +0,0 @@
|
|||
ALTER TABLE `joylink`.`rts_draft_training2`
|
||||
ADD COLUMN `client` varchar(255) NULL COMMENT '客户端' AFTER `update_time`;
|
||||
|
||||
ALTER TABLE `joylink`.`rts_published_training2`
|
||||
ADD COLUMN `client` varchar(255) NULL COMMENT '客户端' AFTER `org_id`;
|
||||
|
|
@ -1,3 +0,0 @@
|
|||
ALTER TABLE `joylink`.`rts_project`
|
||||
ADD COLUMN `map_id` int NULL COMMENT '地图ID' AFTER `default_org`,
|
||||
ADD COLUMN `function_id` int NULL COMMENT '功能ID' AFTER `map_id`;
|
|
@ -1,35 +0,0 @@
|
|||
/*
|
||||
Navicat Premium Data Transfer
|
||||
|
||||
Source Server : room
|
||||
Source Server Type : MySQL
|
||||
Source Server Version : 80029
|
||||
Source Host : 192.168.3.233:3306
|
||||
Source Schema : joylink
|
||||
|
||||
Target Server Type : MySQL
|
||||
Target Server Version : 80029
|
||||
File Encoding : 65001
|
||||
|
||||
Date: 06/12/2022 09:53:18
|
||||
*/
|
||||
|
||||
SET NAMES utf8mb4;
|
||||
SET FOREIGN_KEY_CHECKS = 0;
|
||||
|
||||
-- ----------------------------
|
||||
-- Table structure for rts_iscs_model_data
|
||||
-- ----------------------------
|
||||
DROP TABLE IF EXISTS `rts_iscs_model_data`;
|
||||
CREATE TABLE `rts_iscs_model_data` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT COMMENT 'iscs数据模型id',
|
||||
`system` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'iscs一级系统(如FAS、PIS、AFC等)',
|
||||
`view` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT 'iscs二级视图',
|
||||
`place` varchar(255) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NULL DEFAULT NULL COMMENT '场所(车站、变电所、停车场等)',
|
||||
`data` blob NULL COMMENT '场所整个所有的模型的数据',
|
||||
`create_time` datetime NULL DEFAULT NULL COMMENT '创建时间',
|
||||
`update_time` datetime NULL DEFAULT NULL COMMENT '更新时间',
|
||||
PRIMARY KEY (`id`) USING BTREE
|
||||
) ENGINE = InnoDB AUTO_INCREMENT = 1 CHARACTER SET = utf8mb4 COLLATE = utf8mb4_0900_ai_ci ROW_FORMAT = Dynamic;
|
||||
|
||||
SET FOREIGN_KEY_CHECKS = 1;
|
|
@ -1,19 +0,0 @@
|
|||
CREATE TABLE `rts_training2_rule` (
|
||||
`id` bigint NOT NULL AUTO_INCREMENT,
|
||||
`sim_type` varchar(255) DEFAULT NULL COMMENT '仿真类型',
|
||||
`line_code` varchar(255) DEFAULT NULL COMMENT '线路编码',
|
||||
`device_rule` varchar(255) DEFAULT NULL COMMENT '设备列表规则',
|
||||
`client` varchar(255) DEFAULT NULL COMMENT '客户端',
|
||||
`name` varchar(255) DEFAULT NULL COMMENT '实训名称格式',
|
||||
`description` varchar(255) DEFAULT NULL COMMENT '实训描述',
|
||||
`type` varchar(255) DEFAULT NULL COMMENT '实训类型',
|
||||
`labels` varchar(255) DEFAULT NULL COMMENT '实训标签',
|
||||
`scene_rule` varchar(255) DEFAULT NULL COMMENT '背景生成规则',
|
||||
`steps` text COMMENT '步骤列表',
|
||||
`failure_rule` text COMMENT '失败规则',
|
||||
`creator_id` bigint DEFAULT NULL COMMENT '创建者ID',
|
||||
`create_time` datetime DEFAULT NULL COMMENT '创建时间',
|
||||
`location_rule` varchar(255) DEFAULT NULL COMMENT '地图定位规则',
|
||||
PRIMARY KEY (`id`),
|
||||
KEY `sim_type` (`sim_type`)
|
||||
) ENGINE=InnoDB AUTO_INCREMENT=72 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci;
|
|
@ -1,16 +0,0 @@
|
|||
-- 用户答题生成对应的规则id
|
||||
ALTER TABLE `rts_paper_user_question`
|
||||
ADD COLUMN `rule_id` bigint not NULL COMMENT '试卷规则rts_paper_rule的id' AFTER `pu_id`;
|
||||
|
||||
|
||||
ALTER TABLE `rts_paper_user_question`
|
||||
ADD COLUMN `sub_type` int not NULL COMMENT '规则类型:理论题(1-单选题,2-多选题,3-判断题);实训题(4-单操实训,5-场景实训)' AFTER `type`;
|
||||
|
||||
|
||||
ALTER TABLE `rts_paper_user_question` MODIFY COLUMN tmp_answer longtext;
|
||||
|
||||
ALTER TABLE `rts_paper_rule` ADD COLUMN scene_detail VARCHAR(1000) COMMENT '场景实训考试的规则';
|
||||
|
||||
|
||||
ALTER TABLE `rts_paper_user_question`
|
||||
ADD COLUMN `scene_cosplay_id` varchar(10) COMMENT '场景实训考试扮演的角色';
|
|
@ -1,2 +0,0 @@
|
|||
ALTER TABLE `joylink`.`rts_map_function`
|
||||
ADD COLUMN `bg_url` varchar(255) NULL COMMENT '背景图片的url' AFTER `desc`;
|
|
@ -0,0 +1,41 @@
|
|||
package club.joylink.rtss.aop;
|
||||
|
||||
import club.joylink.rtss.services.cgy.CgyStatsService;
|
||||
import club.joylink.rtss.simulation.cbtc.SimulationService;
|
||||
import club.joylink.rtss.vo.client.cgy.CgyThirdPartyLoginInfoVO;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.aspectj.lang.JoinPoint;
|
||||
import org.aspectj.lang.annotation.AfterReturning;
|
||||
import org.aspectj.lang.annotation.Aspect;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.stereotype.Component;
|
||||
import org.springframework.web.client.RestTemplate;
|
||||
|
||||
@Aspect
|
||||
@Slf4j
|
||||
@Component
|
||||
public class CgyViewAspect {
|
||||
|
||||
private CgyStatsService cgyStatsService;
|
||||
private RestTemplate restTemplate;
|
||||
private SimulationService simulationService;
|
||||
|
||||
|
||||
@Autowired
|
||||
public CgyViewAspect(CgyStatsService cgyStatsService, RestTemplate restTemplate,
|
||||
SimulationService simulationService) {
|
||||
this.cgyStatsService = cgyStatsService;
|
||||
this.restTemplate = restTemplate;
|
||||
this.simulationService = simulationService;
|
||||
}
|
||||
|
||||
/**
|
||||
* 成工院第三方登录接口被调用后,加一个浏览量,并同步给虚仿平台
|
||||
*/
|
||||
@AfterReturning(value = "execution(public * club.joylink.rtss.controller.LoginController.cgyThirdPartyLogin(..))")
|
||||
public void addViewCount(JoinPoint joinPoint) {
|
||||
Object arg = joinPoint.getArgs()[0];
|
||||
CgyThirdPartyLoginInfoVO loginInfoVO = (CgyThirdPartyLoginInfoVO) arg;
|
||||
cgyStatsService.updateView(loginInfoVO.getAppId());
|
||||
}
|
||||
}
|
|
@ -0,0 +1,32 @@
|
|||
package club.joylink.rtss.bo.cgy;
|
||||
|
||||
import java.util.HashSet;
|
||||
import java.util.Set;
|
||||
import java.util.concurrent.atomic.AtomicBoolean;
|
||||
import java.util.concurrent.atomic.AtomicLong;
|
||||
import lombok.Getter;
|
||||
import lombok.RequiredArgsConstructor;
|
||||
import lombok.Setter;
|
||||
|
||||
/**
|
||||
* 成工院虚仿平台对接统计数据
|
||||
*/
|
||||
@Getter
|
||||
@Setter
|
||||
@RequiredArgsConstructor
|
||||
public class CgyStatsBO {
|
||||
|
||||
private final String appId;
|
||||
private final String appSecret;
|
||||
private final Long FunctionId;
|
||||
//统计数据是否发生变化
|
||||
private AtomicBoolean change;
|
||||
//浏览量
|
||||
private AtomicLong view;
|
||||
//实训人次
|
||||
private AtomicLong visitor;
|
||||
//实训人数
|
||||
private final Set<Long> userSet = new HashSet<>();
|
||||
//实训时长/s
|
||||
private AtomicLong duration;
|
||||
}
|
|
@ -0,0 +1,101 @@
|
|||
package club.joylink.rtss.bo.race;
|
||||
|
||||
import club.joylink.rtss.exception.BusinessExceptionAssertEnum;
|
||||
import club.joylink.rtss.vo.race.RaceApplication;
|
||||
import club.joylink.rtss.vo.race.RaceApplication.ResultNode;
|
||||
import club.joylink.rtss.vo.race.RaceApplication.ResultNode.Builder;
|
||||
import club.joylink.rtss.vo.race.RaceTask;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RacePaperSingleModuleGroupTask;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RaceTaskChildVO;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RaceTaskChildVO.ChildNodeType;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import lombok.Data;
|
||||
|
||||
@Data
|
||||
public class RaceContent {
|
||||
|
||||
private long userId;
|
||||
private long paperId;
|
||||
private int moduleId;
|
||||
|
||||
/**
|
||||
* 训练使用到的任务树
|
||||
*/
|
||||
private RaceTask.RacePaperSingleModuleGroupTask taskTree;
|
||||
|
||||
/**
|
||||
* 训练结果
|
||||
*/
|
||||
private RaceApplication.RacePracticeResult.Builder result;
|
||||
|
||||
/**
|
||||
* 结果节点映射。仅为了通过ID找节点
|
||||
*/
|
||||
private Map<Long, Builder> resultNodeMap = new HashMap<>();
|
||||
|
||||
public RaceContent(long userId, long paperId, int moduleId,
|
||||
RacePaperSingleModuleGroupTask taskTree) {
|
||||
this.userId = userId;
|
||||
this.paperId = paperId;
|
||||
this.moduleId = moduleId;
|
||||
this.taskTree = taskTree;
|
||||
this.result = RaceApplication.RacePracticeResult.newBuilder();
|
||||
result.setCustomModuleId(taskTree.getCustomModuleId());
|
||||
Builder rootNode = ResultNode.newBuilder();
|
||||
buildResultNodeTree(taskTree.getChildList(), rootNode);
|
||||
result.addAllNode(rootNode.getChildList());
|
||||
// for (RaceTaskChildVO childVO : taskTree.getChildList()) {
|
||||
// Builder nodeBuilder = result.addNodeBuilder();
|
||||
// nodeBuilder.setName(childVO.getName());
|
||||
// nodeBuilder.setType(childVO.getNodeType());
|
||||
// nodeBuilder.setSceneId(childVO.getSceneId());
|
||||
// //构建任务映射
|
||||
// if (ChildNodeType.TASK == childVO.getNodeType()) {
|
||||
// resultNodeMap.put(childVO.getId(), nodeBuilder);
|
||||
// }
|
||||
// //递归
|
||||
// buildResultNodeTree(childVO, nodeBuilder);
|
||||
// }
|
||||
}
|
||||
|
||||
public Builder getResultNode(long taskId) {
|
||||
Builder builder = resultNodeMap.get(taskId);
|
||||
BusinessExceptionAssertEnum.DATA_NOT_EXIST.assertNotNull(builder,
|
||||
String.format("任务[%d]不存在", taskId));
|
||||
return builder;
|
||||
}
|
||||
|
||||
private void buildResultNodeTree(List<RaceTaskChildVO> children, Builder parentNode) {
|
||||
for (RaceTaskChildVO childVO : children) {
|
||||
//构建对应的结果Node
|
||||
Builder nodeBuilder = parentNode.addChildBuilder();
|
||||
nodeBuilder.setName(childVO.getName());
|
||||
nodeBuilder.setType(childVO.getNodeType());
|
||||
nodeBuilder.setSceneId(childVO.getSceneId());
|
||||
//构建任务映射
|
||||
if (ChildNodeType.TASK == childVO.getNodeType()) {
|
||||
resultNodeMap.put(childVO.getId(), nodeBuilder);
|
||||
}
|
||||
//递归
|
||||
buildResultNodeTree(childVO.getChildrenList(), nodeBuilder);
|
||||
}
|
||||
}
|
||||
|
||||
// private void buildResultNodeTree(RaceTaskChildVO children, Builder parentNode) {
|
||||
// for (RaceTaskChildVO childVO : children.getChildrenList()) {
|
||||
// //构建对应的结果Node
|
||||
// Builder nodeBuilder = parentNode.addChildBuilder();
|
||||
// nodeBuilder.setName(childVO.getName());
|
||||
// nodeBuilder.setType(childVO.getNodeType());
|
||||
// nodeBuilder.setSceneId(childVO.getSceneId());
|
||||
// //构建任务映射
|
||||
// if (ChildNodeType.TASK == childVO.getNodeType()) {
|
||||
// resultNodeMap.put(childVO.getId(), nodeBuilder);
|
||||
// }
|
||||
// //递归
|
||||
// buildResultNodeTree(childVO, nodeBuilder);
|
||||
// }
|
||||
// }
|
||||
}
|
|
@ -6,6 +6,7 @@ import com.fasterxml.jackson.datatype.jsr310.deser.LocalTimeDeserializer;
|
|||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateSerializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalDateTimeSerializer;
|
||||
import com.fasterxml.jackson.datatype.jsr310.ser.LocalTimeSerializer;
|
||||
import com.hubspot.jackson.datatype.protobuf.ProtobufModule;
|
||||
import org.springframework.boot.autoconfigure.jackson.Jackson2ObjectMapperBuilderCustomizer;
|
||||
import org.springframework.context.annotation.Bean;
|
||||
import org.springframework.context.annotation.Configuration;
|
||||
|
@ -17,36 +18,40 @@ import java.time.format.DateTimeFormatter;
|
|||
|
||||
@Configuration
|
||||
public class LocalDateTimeSerializerConfig {
|
||||
/**
|
||||
* Date格式化字符串
|
||||
*/
|
||||
private static final String DATE_FORMAT = "yyyy-MM-dd";
|
||||
/**
|
||||
* DateTime格式化字符串
|
||||
*/
|
||||
private static final String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
|
||||
/**
|
||||
* Time格式化字符串
|
||||
*/
|
||||
private static final String TIME_FORMAT = "HH:mm:ss";
|
||||
|
||||
@Bean
|
||||
public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
|
||||
return builder -> {
|
||||
builder.serializerByType(LocalDateTime.class,
|
||||
new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DATETIME_FORMAT)));
|
||||
builder.deserializerByType(LocalDateTime.class,
|
||||
new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DATETIME_FORMAT)));
|
||||
/**
|
||||
* Date格式化字符串
|
||||
*/
|
||||
private static final String DATE_FORMAT = "yyyy-MM-dd";
|
||||
/**
|
||||
* DateTime格式化字符串
|
||||
*/
|
||||
private static final String DATETIME_FORMAT = "yyyy-MM-dd HH:mm:ss";
|
||||
/**
|
||||
* Time格式化字符串
|
||||
*/
|
||||
private static final String TIME_FORMAT = "HH:mm:ss";
|
||||
|
||||
builder.serializerByType(LocalDate.class,
|
||||
new LocalDateSerializer(DateTimeFormatter.ofPattern(DATE_FORMAT)));
|
||||
builder.deserializerByType(LocalDate.class,
|
||||
new LocalDateDeserializer(DateTimeFormatter.ofPattern(DATE_FORMAT)));
|
||||
@Bean
|
||||
public Jackson2ObjectMapperBuilderCustomizer jackson2ObjectMapperBuilderCustomizer() {
|
||||
return builder -> {
|
||||
builder.modulesToInstall(ProtobufModule.class);
|
||||
builder.failOnUnknownProperties(false);
|
||||
builder.serializerByType(LocalDateTime.class,
|
||||
new LocalDateTimeSerializer(DateTimeFormatter.ofPattern(DATETIME_FORMAT)));
|
||||
builder.deserializerByType(LocalDateTime.class,
|
||||
new LocalDateTimeDeserializer(DateTimeFormatter.ofPattern(DATETIME_FORMAT)));
|
||||
|
||||
builder.serializerByType(LocalTime.class,
|
||||
new LocalTimeSerializer(DateTimeFormatter.ofPattern(TIME_FORMAT)));
|
||||
builder.deserializerByType(LocalTime.class,
|
||||
new LocalTimeDeserializer(DateTimeFormatter.ofPattern(TIME_FORMAT)));
|
||||
};
|
||||
}
|
||||
builder.serializerByType(LocalDate.class,
|
||||
new LocalDateSerializer(DateTimeFormatter.ofPattern(DATE_FORMAT)));
|
||||
builder.deserializerByType(LocalDate.class,
|
||||
new LocalDateDeserializer(DateTimeFormatter.ofPattern(DATE_FORMAT)));
|
||||
|
||||
builder.serializerByType(LocalTime.class,
|
||||
new LocalTimeSerializer(DateTimeFormatter.ofPattern(TIME_FORMAT)));
|
||||
builder.deserializerByType(LocalTime.class,
|
||||
new LocalTimeDeserializer(DateTimeFormatter.ofPattern(TIME_FORMAT)));
|
||||
};
|
||||
|
||||
}
|
||||
}
|
||||
|
|
|
@ -75,4 +75,19 @@ public class TaskExecutorConfiguration {
|
|||
taskExecutor.initialize();
|
||||
return taskExecutor;
|
||||
}
|
||||
|
||||
/**
|
||||
* 语音识别业务处理线程
|
||||
*/
|
||||
@Bean("voiceDiscriminateExecutor")
|
||||
public TaskExecutor voiceDiscriminateExecutor(Environment env) {
|
||||
ThreadPoolTaskExecutor taskExecutor = new ThreadPoolTaskExecutor();
|
||||
taskExecutor.setThreadNamePrefix("ns-voice-discriminate-executor-");
|
||||
taskExecutor.setCorePoolSize(2);
|
||||
taskExecutor.setMaxPoolSize(2);
|
||||
taskExecutor.setQueueCapacity(100);
|
||||
taskExecutor.setRejectedExecutionHandler(new ThreadPoolExecutor.CallerRunsPolicy());
|
||||
taskExecutor.initialize();
|
||||
return taskExecutor;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -14,68 +14,72 @@ import java.util.List;
|
|||
@Configuration
|
||||
public class WebConfig implements WebMvcConfigurer {
|
||||
|
||||
@Autowired
|
||||
private AuthenticateInterceptor authenticateInterceptor;
|
||||
@Autowired
|
||||
private AuthenticateInterceptor authenticateInterceptor;
|
||||
|
||||
@Autowired
|
||||
private LicenseInterceptor licenseInterceptor;
|
||||
@Autowired
|
||||
private LicenseInterceptor licenseInterceptor;
|
||||
|
||||
@Override
|
||||
public void addInterceptors(InterceptorRegistry registry) {
|
||||
List<String> licenseWhiteList = new ArrayList<>();
|
||||
licenseWhiteList.add("/api/license/validate");
|
||||
licenseWhiteList.add("/api/license/local");
|
||||
licenseWhiteList.add("/api/licensing/**");
|
||||
registry.addInterceptor(licenseInterceptor).excludePathPatterns(licenseWhiteList);
|
||||
List<String> whiteList = new ArrayList<>();
|
||||
whiteList.add("/doc/**");
|
||||
whiteList.add("/api/login/**");
|
||||
whiteList.add("/api/wxpat/**");
|
||||
whiteList.add("/api/sms/**");
|
||||
whiteList.add("/api/register/**");
|
||||
whiteList.add("/api/userinfo/**");
|
||||
whiteList.add("/api/wechatpay/receive");
|
||||
whiteList.add("/api/alipay/receive");
|
||||
whiteList.add("/api/applet/**");
|
||||
whiteList.add("/api/wxauth/**");
|
||||
whiteList.add("/api/distribute/permission");
|
||||
whiteList.add("/api/v1/jointTraining/permission");
|
||||
whiteList.add("/api/jointTraining/permission");
|
||||
whiteList.add("/api/user/bind/wm");
|
||||
// 运行图工具
|
||||
whiteList.add("/api/rpTools/**");
|
||||
whiteList.add("/api/license/validate");
|
||||
whiteList.add("/api/license/local");
|
||||
// 微信回调接口
|
||||
whiteList.add("/api/wechatPay/receive");
|
||||
// 成都工业留言板
|
||||
whiteList.add("/api/learn/cgy/message/create");
|
||||
whiteList.add("/api/learn/cgy/{messageId}/comment");
|
||||
whiteList.add("/api/learn/{postId}/message/pagedQuery/postId");
|
||||
whiteList.add("GET /api/learn/{messageId}/comment");
|
||||
whiteList.add("/api/learn/cgy/updateMessageTime");
|
||||
// 成都工业使用记录
|
||||
whiteList.add("/api/cgy/**");
|
||||
//项目域名查询
|
||||
whiteList.add("/api/projectServer/project/{project}");
|
||||
whiteList.add("/test/simulation/**");
|
||||
whiteList.add("/api/test/**");
|
||||
whiteList.add("/api/project/viewSetting/simple/all");
|
||||
whiteList.add("/api/project/viewSetting/project/{project}");
|
||||
//旧数据处理
|
||||
whiteList.add("/api/org/oldData/handle");
|
||||
whiteList.add("/api/mapFunction/oldDataHandle");
|
||||
whiteList.add("/api/v2/paper/composition/oldData/handle");
|
||||
whiteList.add("/api/user/sync");
|
||||
whiteList.add("/dataHandle");
|
||||
@Override
|
||||
public void addInterceptors(InterceptorRegistry registry) {
|
||||
List<String> licenseWhiteList = new ArrayList<>();
|
||||
licenseWhiteList.add("/api/license/validate");
|
||||
licenseWhiteList.add("/api/license/local");
|
||||
licenseWhiteList.add("/api/licensing/**");
|
||||
licenseWhiteList.add("/api/project/viewSetting/simple/all");
|
||||
licenseWhiteList.add("/api/project/viewSetting/project/{project}");
|
||||
registry.addInterceptor(licenseInterceptor).excludePathPatterns(licenseWhiteList);
|
||||
List<String> whiteList = new ArrayList<>();
|
||||
whiteList.add("/doc/**");
|
||||
whiteList.add("/api/login/**");
|
||||
whiteList.add("/api/wxpat/**");
|
||||
whiteList.add("/api/sms/**");
|
||||
whiteList.add("/api/register/**");
|
||||
whiteList.add("/api/userinfo/**");
|
||||
whiteList.add("/api/wechatpay/receive");
|
||||
whiteList.add("/api/alipay/receive");
|
||||
whiteList.add("/api/applet/**");
|
||||
whiteList.add("/api/wxauth/**");
|
||||
whiteList.add("/api/distribute/permission");
|
||||
whiteList.add("/api/v1/jointTraining/permission");
|
||||
whiteList.add("/api/jointTraining/permission");
|
||||
whiteList.add("/api/user/bind/wm");
|
||||
// 运行图工具
|
||||
whiteList.add("/api/rpTools/**");
|
||||
whiteList.add("/api/license/validate");
|
||||
whiteList.add("/api/license/local");
|
||||
// 微信回调接口
|
||||
whiteList.add("/api/wechatPay/receive");
|
||||
// 成都工业留言板
|
||||
whiteList.add("/api/learn/cgy/message/create");
|
||||
whiteList.add("/api/learn/cgy/{messageId}/comment");
|
||||
whiteList.add("/api/learn/{postId}/message/pagedQuery/postId");
|
||||
whiteList.add("GET /api/learn/{messageId}/comment");
|
||||
whiteList.add("/api/learn/cgy/updateMessageTime");
|
||||
// 成都工业使用记录
|
||||
whiteList.add("/api/cgy/**");
|
||||
//项目域名查询
|
||||
whiteList.add("/api/projectServer/project/{project}");
|
||||
whiteList.add("/test/simulation/**");
|
||||
whiteList.add("/api/test/**");
|
||||
whiteList.add("/api/project/viewSetting/simple/all");
|
||||
whiteList.add("/api/project/viewSetting/project/{project}");
|
||||
//旧数据处理
|
||||
whiteList.add("/api/org/oldData/handle");
|
||||
whiteList.add("/api/mapFunction/oldDataHandle");
|
||||
whiteList.add("/api/v2/paper/composition/oldData/handle");
|
||||
whiteList.add("/api/user/sync");
|
||||
whiteList.add("/dataHandle");
|
||||
//modbus测试
|
||||
whiteList.add("/api/test/modbus/writeCoil");
|
||||
|
||||
registry.addInterceptor(authenticateInterceptor).excludePathPatterns(whiteList);
|
||||
}
|
||||
registry.addInterceptor(authenticateInterceptor).excludePathPatterns(whiteList);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void addFormatters(FormatterRegistry registry) {
|
||||
registry.addConverter(new LocalDateConverter());
|
||||
WebMvcConfigurer.super.addFormatters(registry);
|
||||
}
|
||||
@Override
|
||||
public void addFormatters(FormatterRegistry registry) {
|
||||
registry.addConverter(new LocalDateConverter());
|
||||
WebMvcConfigurer.super.addFormatters(registry);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -11,4 +11,5 @@ import org.springframework.stereotype.Component;
|
|||
@Setter
|
||||
public class ModbusTcpConfig {
|
||||
private int port;
|
||||
private int afcTransferPort;
|
||||
}
|
||||
|
|
|
@ -8,11 +8,13 @@ public interface BusinessConsts {
|
|||
* 状态 1-启用/有效
|
||||
*/
|
||||
String STATUS_USE = "1";
|
||||
int STATUS_USE_INT = 1;
|
||||
|
||||
/**
|
||||
* 状态 0-禁用/无效
|
||||
*/
|
||||
String STATUS_NOT_USE = "0";
|
||||
int STATUS_NOT_USE_INT = 0;
|
||||
|
||||
/**
|
||||
* 验证码有效期: 单位 分钟
|
||||
|
|
|
@ -0,0 +1,11 @@
|
|||
package club.joylink.rtss.constants;
|
||||
|
||||
public interface ProjectCode {
|
||||
|
||||
String THAILAND_SANDBOX = "THAILAND_SANDBOX";
|
||||
String SR_SANDBOX = "SR_SANDBOX";
|
||||
String NGY_SAND_TABLE = "NGY_SAND_TABLE";
|
||||
String CDGXY = "CDGXY";
|
||||
String CGY = "CGY";
|
||||
|
||||
}
|
|
@ -1,9 +1,8 @@
|
|||
package club.joylink.rtss.constants;
|
||||
|
||||
import lombok.Getter;
|
||||
|
||||
import java.util.Arrays;
|
||||
import java.util.List;
|
||||
import lombok.Getter;
|
||||
|
||||
/**
|
||||
* 项目设备类型
|
||||
|
@ -11,80 +10,139 @@ import java.util.List;
|
|||
@Getter
|
||||
public enum ProjectDeviceType {
|
||||
|
||||
/* -----------plc device start---------- */
|
||||
/** 区段 */
|
||||
SECTION,
|
||||
/** 道岔 */
|
||||
SWITCH,
|
||||
/** 信号机 */
|
||||
SIGNAL,
|
||||
/** 屏蔽门控制柜 */
|
||||
PSC,
|
||||
/** 屏蔽门 */
|
||||
PSD,
|
||||
/** 端头控制盒(屏蔽门控制盒) */
|
||||
PSL,
|
||||
/** IBP盘 */
|
||||
IBP,
|
||||
/** PLC网关 */
|
||||
PLC_GATEWAY,
|
||||
/** 单元控制器 */
|
||||
DCU,
|
||||
/** UDP下位机 */
|
||||
UDP_LOW,
|
||||
/** UDP客户端 */
|
||||
UDP_CLIENT,
|
||||
/** 列车 */
|
||||
TRAIN,
|
||||
/* -----------plc device end---------- */
|
||||
/* -----------plc device start---------- */
|
||||
/**
|
||||
* 区段
|
||||
*/
|
||||
SECTION,
|
||||
/**
|
||||
* 道岔
|
||||
*/
|
||||
SWITCH,
|
||||
/**
|
||||
* 信号机
|
||||
*/
|
||||
SIGNAL,
|
||||
/**
|
||||
* 屏蔽门控制柜
|
||||
*/
|
||||
PSC,
|
||||
/**
|
||||
* 屏蔽门
|
||||
*/
|
||||
PSD,
|
||||
/**
|
||||
* 端头控制盒(屏蔽门控制盒)
|
||||
*/
|
||||
PSL,
|
||||
/**
|
||||
* IBP盘
|
||||
*/
|
||||
IBP,
|
||||
/**
|
||||
* PLC网关
|
||||
*/
|
||||
PLC_GATEWAY,
|
||||
/**
|
||||
* 单元控制器
|
||||
*/
|
||||
DCU,
|
||||
/**
|
||||
* UDP下位机
|
||||
*/
|
||||
UDP_LOW,
|
||||
/**
|
||||
* UDP客户端
|
||||
*/
|
||||
UDP_CLIENT,
|
||||
/**
|
||||
* 列车
|
||||
*/
|
||||
TRAIN,
|
||||
/* -----------plc device end---------- */
|
||||
|
||||
/* -----------client device start---------- */
|
||||
/** 教员机(instructor machine) */
|
||||
IM,
|
||||
/** 调度工作站(control workstation) */
|
||||
CW,
|
||||
/** 现地工作站(local workstation) */
|
||||
LW,
|
||||
/** 联锁工作站(interlock workstation) */
|
||||
ILW,
|
||||
/** 虚拟综合后备盘(Integrated Back-Up Panel) */
|
||||
VR_IBP,
|
||||
/** 大屏工作站(large screen workstation) */
|
||||
LSW,
|
||||
/** 列车驾驶终端 */
|
||||
DRIVE,
|
||||
/** 虚拟站台屏蔽门终端 */
|
||||
VR_PSD,
|
||||
/** 现地综合监控 */
|
||||
ISCS_LW,
|
||||
/** 中心综合监控 */
|
||||
ISCS_CW,
|
||||
/** 车辆段终端 */
|
||||
DEPOT,
|
||||
/** 虚拟CCTV */
|
||||
CCTV,
|
||||
/** 虚拟电子沙盘 */
|
||||
SANDBOX,
|
||||
/** 派班工作站 */
|
||||
SCHEDULING,
|
||||
/* -----------client device start---------- */
|
||||
/**
|
||||
* 教员机(instructor machine)
|
||||
*/
|
||||
IM,
|
||||
/**
|
||||
* 调度工作站(control workstation)
|
||||
*/
|
||||
CW,
|
||||
/**
|
||||
* 现地工作站(local workstation)
|
||||
*/
|
||||
LW,
|
||||
/**
|
||||
* 联锁工作站(interlock workstation)
|
||||
*/
|
||||
ILW,
|
||||
/**
|
||||
* 虚拟综合后备盘(Integrated Back-Up Panel)
|
||||
*/
|
||||
VR_IBP,
|
||||
/**
|
||||
* 大屏工作站(large screen workstation)
|
||||
*/
|
||||
LSW,
|
||||
/**
|
||||
* 列车驾驶终端
|
||||
*/
|
||||
DRIVE,
|
||||
/**
|
||||
* 虚拟站台屏蔽门终端
|
||||
*/
|
||||
VR_PSD,
|
||||
/**
|
||||
* 现地综合监控
|
||||
*/
|
||||
ISCS_LW,
|
||||
/**
|
||||
* 中心综合监控
|
||||
*/
|
||||
ISCS_CW,
|
||||
/**
|
||||
* 车辆段终端
|
||||
*/
|
||||
DEPOT,
|
||||
/**
|
||||
* 虚拟CCTV
|
||||
*/
|
||||
CCTV,
|
||||
/**
|
||||
* 虚拟电子沙盘
|
||||
*/
|
||||
SANDBOX,
|
||||
/**
|
||||
* 派班工作站
|
||||
*/
|
||||
SCHEDULING,
|
||||
|
||||
PIS_STAND,
|
||||
PIS_TRAIN,
|
||||
/* -----------client device end---------- */
|
||||
;
|
||||
PIS_STAND,
|
||||
PIS_TRAIN,
|
||||
PIS,
|
||||
TMS,
|
||||
/* -----------client device end---------- */
|
||||
/* -----------Other start---------- */
|
||||
/**
|
||||
* 沙盘运行计划
|
||||
*/
|
||||
SAND_TABLE_RUN_PLAN;
|
||||
|
||||
public static List<ProjectDeviceType> PlcDeviceList() {
|
||||
return Arrays.asList(PLC_GATEWAY,
|
||||
PSC,
|
||||
PSD,
|
||||
PSL,
|
||||
IBP,
|
||||
SECTION,
|
||||
SWITCH,
|
||||
SIGNAL,
|
||||
DCU,
|
||||
UDP_LOW,
|
||||
UDP_CLIENT,
|
||||
TRAIN);
|
||||
}
|
||||
public static List<ProjectDeviceType> PlcDeviceList() {
|
||||
return Arrays.asList(PLC_GATEWAY,
|
||||
PSC,
|
||||
PSD,
|
||||
PSL,
|
||||
IBP,
|
||||
SECTION,
|
||||
SWITCH,
|
||||
SIGNAL,
|
||||
DCU,
|
||||
UDP_LOW,
|
||||
UDP_CLIENT,
|
||||
TRAIN,
|
||||
SAND_TABLE_RUN_PLAN);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -281,14 +281,14 @@ public class CompanyController {
|
|||
return iOrgScoringRuleService.getOrgScoringRuleDetails(ruleId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取评价规则的评分结果
|
||||
*/
|
||||
@GetMapping("/orgScoringRule/score/{orgId}/{schoolYear}/{term}")
|
||||
public List<OrgScoringResultVO> score(@PathVariable Long orgId, @PathVariable String schoolYear,
|
||||
@PathVariable Integer term, @RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
return iOrgScoringRuleService.score(orgId, schoolYear, term, loginInfo);
|
||||
}
|
||||
// /**
|
||||
// * 获取评价规则的评分结果
|
||||
// */
|
||||
// @GetMapping("/orgScoringRule/score/{orgId}/{schoolYear}/{term}")
|
||||
// public List<OrgScoringResultVO> score(@PathVariable Long orgId, @PathVariable String schoolYear,
|
||||
// @PathVariable Integer term, @RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
// return iOrgScoringRuleService.score(orgId, schoolYear, term, loginInfo);
|
||||
// }
|
||||
|
||||
/**
|
||||
* 删除评分规则
|
||||
|
|
|
@ -1,105 +0,0 @@
|
|||
package club.joylink.rtss.controller;
|
||||
|
||||
import club.joylink.rtss.constants.Project;
|
||||
import club.joylink.rtss.controller.org.OrgProjectController;
|
||||
import club.joylink.rtss.controller.paper.PaperCompositionController;
|
||||
import club.joylink.rtss.controller.publish.MapFunctionController;
|
||||
import club.joylink.rtss.controller.user.UserController;
|
||||
import club.joylink.rtss.dao.MapDataDAO;
|
||||
import club.joylink.rtss.dao.MapInfoDAO;
|
||||
import club.joylink.rtss.dao.OrgDAO;
|
||||
import club.joylink.rtss.entity.*;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import java.time.LocalDateTime;
|
||||
import java.util.ArrayList;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
|
||||
/**
|
||||
* 2023.01.10版本处理接口数据
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/dataHandle")
|
||||
public class DataHandleController {
|
||||
@Autowired
|
||||
private MapInfoDAO mapInfoDAO;
|
||||
@Autowired
|
||||
private MapDataDAO mapDataDAO;
|
||||
@Autowired
|
||||
private OrgProjectController orgProjectController;
|
||||
@Autowired
|
||||
private MapFunctionController mapFunctionController;
|
||||
@Autowired
|
||||
private PaperCompositionController paperCompositionController;
|
||||
@Autowired
|
||||
private UserController userController;
|
||||
@Autowired
|
||||
private OrgDAO orgDAO;
|
||||
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@PostMapping
|
||||
public List<String> handle(HttpServletResponse response) {
|
||||
correctMapVersion();
|
||||
|
||||
confirmDefaultOrgExist();
|
||||
|
||||
orgProjectController.oldDataHandle();
|
||||
|
||||
List<String> msgList = new ArrayList<>(mapFunctionController.oldDataHandle());
|
||||
|
||||
msgList.addAll(paperCompositionController.oldDataHandle());
|
||||
|
||||
msgList.addAll(userController.sync());
|
||||
return msgList;
|
||||
}
|
||||
|
||||
/**
|
||||
* 纠正地图信息表的版本字段,使用地图数据的最后一个版本
|
||||
*/
|
||||
private void correctMapVersion() {
|
||||
MapInfoExample mapInfoExample = new MapInfoExample();
|
||||
mapInfoExample.createCriteria().andStatusEqualTo("1");
|
||||
List<MapInfo> onlineMaps = mapInfoDAO.selectByExample(mapInfoExample);
|
||||
Map<Long, MapInfo> onlineMapMap = onlineMaps.stream().collect(Collectors.toMap(MapInfo::getId, Function.identity()));
|
||||
MapDataExample mapDataExample = new MapDataExample();
|
||||
mapDataExample.createCriteria().andMapIdIn(new ArrayList<>(onlineMapMap.keySet()));
|
||||
|
||||
List<MapData> onlineMapDataList = mapDataDAO.selectByExample(mapDataExample);
|
||||
onlineMapDataList.stream()
|
||||
.collect(Collectors.toMap(MapData::getMapId, MapData::getVersion, (d1, d2) -> {
|
||||
float v1 = Float.parseFloat(d1);
|
||||
float v2 = Float.parseFloat(d2);
|
||||
return v1 > v2 ? d1 : d2;
|
||||
})).forEach((mapId, version) -> {
|
||||
MapInfo mapInfo = onlineMapMap.get(mapId);
|
||||
mapInfo.setVersion(version);
|
||||
mapInfoDAO.updateByPrimaryKey(mapInfo);
|
||||
});
|
||||
}
|
||||
|
||||
private void confirmDefaultOrgExist() {
|
||||
OrgExample orgExample = new OrgExample();
|
||||
orgExample.createCriteria().andNameEqualTo("默认组织");
|
||||
if (orgDAO.countByExample(orgExample) != 0) {
|
||||
return;
|
||||
}
|
||||
|
||||
Org org = new Org();
|
||||
org.setName("默认组织");
|
||||
org.setProjectCode(Project.DEFAULT.name());
|
||||
org.setStatus("1");
|
||||
org.setCreateTime(LocalDateTime.now());
|
||||
org.setCreatorId(1L);
|
||||
orgDAO.insert(org);
|
||||
org.setRootId(org.getId());
|
||||
orgDAO.updateByPrimaryKey(org);
|
||||
}
|
||||
}
|
|
@ -7,137 +7,148 @@ import club.joylink.rtss.vo.AccountVO;
|
|||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.client.LoginStatusVO;
|
||||
import club.joylink.rtss.vo.client.LoginUserVO;
|
||||
import club.joylink.rtss.vo.client.cgy.CgyThirdPartyLoginInfoVO;
|
||||
import club.joylink.rtss.vo.client.validGroup.LoginInfoCheck;
|
||||
import club.joylink.rtss.vo.client.validGroup.ThirdLoginInfoCheck;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/login")
|
||||
public class LoginController {
|
||||
|
||||
@Autowired
|
||||
private IAuthenticateService iAuthenticateService;
|
||||
@Autowired
|
||||
private IAuthenticateService iAuthenticateService;
|
||||
|
||||
@PostMapping(path = "/third")
|
||||
public String thirdPartyLogin(@RequestBody @Validated(ThirdLoginInfoCheck.class) LoginUserVO loginInfo) {
|
||||
return this.iAuthenticateService.thirdPartyLogin(loginInfo);
|
||||
}
|
||||
@PostMapping("/cgy/third")
|
||||
public String cgyThirdPartyLogin(@RequestBody @Validated CgyThirdPartyLoginInfoVO loginInfo) {
|
||||
return this.iAuthenticateService.cgyThirdPartyLogin(loginInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取微信小程序登陆二维码
|
||||
*/
|
||||
@GetMapping(path = "/wmurl")
|
||||
public LoginStatusVO getWmLoginUrl(@NotBlank String clientId, @NotBlank String secret,
|
||||
String project, @RequestParam(required = false) String deviceCode) {
|
||||
try {
|
||||
return this.iAuthenticateService.getWmLoginUrl(clientId, secret, project, deviceCode);
|
||||
} catch (BaseException e) {
|
||||
throw e;
|
||||
} catch (Exception e) {
|
||||
throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("获取登录二维码失败");
|
||||
}
|
||||
}
|
||||
@PostMapping(path = "/third")
|
||||
public String thirdPartyLogin(
|
||||
@RequestBody @Validated(ThirdLoginInfoCheck.class) LoginUserVO loginInfo) {
|
||||
return this.iAuthenticateService.thirdPartyLogin(loginInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户微信小程序扫登陆二维码
|
||||
*/
|
||||
@GetMapping(path = "/scan/wmLoginUrl")
|
||||
public AccountVO scanWmLoginQrCode(String code, String state) {
|
||||
return this.iAuthenticateService.scanWmLoginQrCode(code, state);
|
||||
/**
|
||||
* 获取微信小程序登陆二维码
|
||||
*/
|
||||
@GetMapping(path = "/wmurl")
|
||||
public LoginStatusVO getWmLoginUrl(@NotBlank String clientId, @NotBlank String secret,
|
||||
String project, @RequestParam(required = false) String deviceCode) {
|
||||
try {
|
||||
return this.iAuthenticateService.getWmLoginUrl(clientId, secret, project, deviceCode);
|
||||
} catch (BaseException e) {
|
||||
throw e;
|
||||
} catch (Exception e) {
|
||||
throw BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.exception("获取登录二维码失败");
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* 微信小程序确认登陆接口
|
||||
*/
|
||||
@PostMapping(path = "/wm")
|
||||
public void wmConfirmLogin(String code, String state) {
|
||||
this.iAuthenticateService.wmConfirmClientLogin(code, state);
|
||||
}
|
||||
/**
|
||||
* 用户微信小程序扫登陆二维码
|
||||
*/
|
||||
@GetMapping(path = "/scan/wmLoginUrl")
|
||||
public AccountVO scanWmLoginQrCode(String code, String state) {
|
||||
return this.iAuthenticateService.scanWmLoginQrCode(code, state);
|
||||
}
|
||||
|
||||
@PostMapping()
|
||||
public String loginWithPwd(@RequestBody @Validated(LoginInfoCheck.class) LoginUserVO loginUser) {
|
||||
return iAuthenticateService.loginWithPwd(loginUser);
|
||||
}
|
||||
/**
|
||||
* 微信小程序确认登陆接口
|
||||
*/
|
||||
@PostMapping(path = "/wm")
|
||||
public void wmConfirmLogin(String code, String state) {
|
||||
this.iAuthenticateService.wmConfirmClientLogin(code, state);
|
||||
}
|
||||
|
||||
@GetMapping("/preLogout")
|
||||
public void preLogout(String token) {
|
||||
this.iAuthenticateService.preLogout(token);
|
||||
}
|
||||
@PostMapping()
|
||||
public String loginWithPwd(@RequestBody @Validated(LoginInfoCheck.class) LoginUserVO loginUser) {
|
||||
return iAuthenticateService.loginWithPwd(loginUser);
|
||||
}
|
||||
|
||||
@GetMapping(path = "/logout")
|
||||
public void logout(String token) {
|
||||
this.iAuthenticateService.logout(token);
|
||||
}
|
||||
@GetMapping("/preLogout")
|
||||
public void preLogout(String token) {
|
||||
this.iAuthenticateService.preLogout(token);
|
||||
}
|
||||
|
||||
@GetMapping(path = "/checkStatus")
|
||||
public LoginStatusVO checkStatus(@NotBlank String sessionId) {
|
||||
return iAuthenticateService.checkStatus(sessionId);
|
||||
}
|
||||
@GetMapping(path = "/logout")
|
||||
public void logout(String token) {
|
||||
this.iAuthenticateService.logout(token);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户信息 - 通过token
|
||||
*
|
||||
* @param token
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(path = "/getUserInfo")
|
||||
public AccountVO getUserInfo(String token) {
|
||||
LoginUserInfoVO loginUserInfoVO = this.iAuthenticateService.getLoginUserInfoByToken(token);
|
||||
System.out.println(String.format("%s ====%s =========== from getUserInfo",loginUserInfoVO,loginUserInfoVO.getAccountVO().getCompanyId()));
|
||||
return loginUserInfoVO.getAccountVO();
|
||||
}
|
||||
@GetMapping(path = "/checkStatus")
|
||||
public LoginStatusVO checkStatus(@NotBlank String sessionId) {
|
||||
return iAuthenticateService.checkStatus(sessionId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户登录信息(包含登录的项目/客户端等)
|
||||
*
|
||||
* @param token
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/loginUserInfo")
|
||||
public LoginUserInfoVO getLoginUserInfo(String token) {
|
||||
return this.iAuthenticateService.getLoginUserInfoByToken(token);
|
||||
}
|
||||
/**
|
||||
* 获取用户信息 - 通过token
|
||||
*
|
||||
* @param token
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(path = "/getUserInfo")
|
||||
public AccountVO getUserInfo(String token) {
|
||||
LoginUserInfoVO loginUserInfoVO = this.iAuthenticateService.getLoginUserInfoByToken(token);
|
||||
return loginUserInfoVO.getAccountVO();
|
||||
}
|
||||
|
||||
/**
|
||||
* <玖琏科技>微信小程序code换取token
|
||||
*/
|
||||
@GetMapping(path = "/wm/token")
|
||||
public String getTokenByWmCode(String code) {
|
||||
return this.iAuthenticateService.getTokenByWmCode(code);
|
||||
}
|
||||
/**
|
||||
* 获取用户登录信息(包含登录的项目/客户端等)
|
||||
*
|
||||
* @param token
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/loginUserInfo")
|
||||
public LoginUserInfoVO getLoginUserInfo(String token) {
|
||||
return this.iAuthenticateService.getLoginUserInfoByToken(token);
|
||||
}
|
||||
|
||||
/**
|
||||
* 到那儿了小程序code换token
|
||||
*
|
||||
* @param code
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(path = "/wm2/token")
|
||||
public String getTokenByWmCode2(String code) {
|
||||
return this.iAuthenticateService.getTokenByWmCode2(code);
|
||||
}
|
||||
/**
|
||||
* <玖琏科技>微信小程序code换取token
|
||||
*/
|
||||
@GetMapping(path = "/wm/token")
|
||||
public String getTokenByWmCode(String code) {
|
||||
return this.iAuthenticateService.getTokenByWmCode(code);
|
||||
}
|
||||
|
||||
/**
|
||||
* 郑州共赢小程序code换token
|
||||
*
|
||||
* @param code
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(path = "/wm/zzww/token")
|
||||
public String getTokenByWmCode3(String code) {
|
||||
return this.iAuthenticateService.getTokenByWmCode3(code);
|
||||
}
|
||||
/**
|
||||
* 到那儿了小程序code换token
|
||||
*
|
||||
* @param code
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(path = "/wm2/token")
|
||||
public String getTokenByWmCode2(String code) {
|
||||
return this.iAuthenticateService.getTokenByWmCode2(code);
|
||||
}
|
||||
|
||||
/**
|
||||
* token是否过期
|
||||
*/
|
||||
@GetMapping(path = "/{token}/isExpired")
|
||||
public boolean isTokenExpired(@PathVariable String token) {
|
||||
return this.iAuthenticateService.isTokenExpired(token);
|
||||
}
|
||||
/**
|
||||
* 郑州共赢小程序code换token
|
||||
*
|
||||
* @param code
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(path = "/wm/zzww/token")
|
||||
public String getTokenByWmCode3(String code) {
|
||||
return this.iAuthenticateService.getTokenByWmCode3(code);
|
||||
}
|
||||
|
||||
/**
|
||||
* token是否过期
|
||||
*/
|
||||
@GetMapping(path = "/{token}/isExpired")
|
||||
public boolean isTokenExpired(@PathVariable String token) {
|
||||
return this.iAuthenticateService.isTokenExpired(token);
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -2,11 +2,14 @@ package club.joylink.rtss.controller;
|
|||
|
||||
import club.joylink.rtss.services.draftData.DraftMapDataHandleService;
|
||||
import club.joylink.rtss.services.publishData.PublishMapDataHandler;
|
||||
import java.util.LinkedHashMap;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.LinkedHashMap;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 地图数据处理
|
||||
|
@ -16,31 +19,40 @@ import java.util.LinkedHashMap;
|
|||
@RequestMapping("/api/mapData/handle")
|
||||
public class MapDataHandleController {
|
||||
|
||||
@Autowired
|
||||
private DraftMapDataHandleService draftMapDataHandleService;
|
||||
@Autowired
|
||||
private PublishMapDataHandler publishMapDataHandler;
|
||||
@Autowired
|
||||
private DraftMapDataHandleService draftMapDataHandleService;
|
||||
@Autowired
|
||||
private PublishMapDataHandler publishMapDataHandler;
|
||||
|
||||
@PutMapping("")
|
||||
public void dataHandle() {
|
||||
this.publishMapDataHandler.dataHandle();
|
||||
}
|
||||
@PutMapping("")
|
||||
public void dataHandle() {
|
||||
this.publishMapDataHandler.dataHandle();
|
||||
}
|
||||
|
||||
@PutMapping("/xian3")
|
||||
public void overlapSetHandle() {
|
||||
this.publishMapDataHandler.xian3Handle();
|
||||
}
|
||||
@PutMapping("/xian3")
|
||||
public void overlapSetHandle() {
|
||||
this.publishMapDataHandler.xian3Handle();
|
||||
}
|
||||
|
||||
@PutMapping("/signalSd")
|
||||
public void signalShowDirection() {
|
||||
this.publishMapDataHandler.signalShowDirection();
|
||||
}
|
||||
@PutMapping("/signalSd")
|
||||
public void signalShowDirection() {
|
||||
this.publishMapDataHandler.signalShowDirection();
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量修改线路数据和ISCS的车站名
|
||||
*/
|
||||
@PutMapping("/{mapId}/stationName/mapAndIscs")
|
||||
public void changeStationName(@PathVariable long mapId, @RequestBody LinkedHashMap<String, String> nameMap) {
|
||||
this.publishMapDataHandler.changeStationName(mapId, nameMap);
|
||||
}
|
||||
/**
|
||||
* 批量修改线路数据和ISCS的车站名
|
||||
*/
|
||||
@PutMapping("/{mapId}/stationName/mapAndIscs")
|
||||
public void changeStationName(@PathVariable long mapId,
|
||||
@RequestBody LinkedHashMap<String, String> nameMap) {
|
||||
this.publishMapDataHandler.changeStationName(mapId, nameMap);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量修改线路区段长度
|
||||
*/
|
||||
@PutMapping("/{mapId}/{multiple}/sectionLen")
|
||||
public void updateSectionLen(@PathVariable long mapId, @PathVariable int multiple) {
|
||||
publishMapDataHandler.updateSectionLen(mapId, multiple);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -1,39 +0,0 @@
|
|||
package club.joylink.rtss.controller;
|
||||
|
||||
import club.joylink.rtss.services.IVoiceCommandService;
|
||||
import club.joylink.rtss.simulation.cbtc.command.VoiceCommandBO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 语音指令接口
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/voiceCommand")
|
||||
public class VoiceCommandController {
|
||||
@Autowired
|
||||
private IVoiceCommandService iVoiceCommandService;
|
||||
|
||||
/**
|
||||
* 添加语音指令
|
||||
* @param command
|
||||
*/
|
||||
@PostMapping("")
|
||||
public void create(VoiceCommandBO command) {
|
||||
iVoiceCommandService.create(command);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有语音指令
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("")
|
||||
public List<VoiceCommandBO> getAll() {
|
||||
return iVoiceCommandService.getAll();
|
||||
}
|
||||
}
|
|
@ -26,78 +26,79 @@ import java.util.List;
|
|||
@Slf4j
|
||||
public class CommonResponseBody implements ResponseBodyAdvice {
|
||||
|
||||
@Override
|
||||
public boolean supports(MethodParameter returnType, Class converterType) {
|
||||
return returnType.getMethod() != null && !returnType.getMethod().getReturnType().getSimpleName().equals("CommonJsonResponse");
|
||||
}
|
||||
@Override
|
||||
public boolean supports(MethodParameter returnType, Class converterType) {
|
||||
return returnType.getMethod() != null && !returnType.getMethod().getReturnType().getSimpleName().equals("CommonJsonResponse");
|
||||
}
|
||||
|
||||
@Override
|
||||
public Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType,
|
||||
Class selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) {
|
||||
//byte[]
|
||||
if(body instanceof byte[]){
|
||||
response.getHeaders().setContentType(MediaType.APPLICATION_OCTET_STREAM);
|
||||
return body;
|
||||
}
|
||||
//byte[]
|
||||
if(body instanceof AbstractMessageLite){
|
||||
@Override
|
||||
public Object beforeBodyWrite(Object body, MethodParameter returnType, MediaType selectedContentType,
|
||||
Class selectedConverterType, ServerHttpRequest request, ServerHttpResponse response) {
|
||||
//byte[]
|
||||
if (body instanceof byte[]) {
|
||||
response.getHeaders().setContentType(MediaType.APPLICATION_OCTET_STREAM);
|
||||
return body;
|
||||
}
|
||||
//byte[]
|
||||
/*if(body instanceof AbstractMessageLite){
|
||||
response.getHeaders().setContentType(MediaType.APPLICATION_OCTET_STREAM);
|
||||
final AbstractMessageLite proto = (AbstractMessageLite) body;
|
||||
return proto.toByteArray();
|
||||
}
|
||||
if(body instanceof CommonJsonResponse) {
|
||||
return body;
|
||||
}
|
||||
if(request.getURI().getPath().startsWith("/swagger")) {
|
||||
return body;
|
||||
}
|
||||
if (request.getURI().getPath().equals("/api/userinfo/ifRegisted")) {
|
||||
return body;
|
||||
}
|
||||
if (request.getURI().getPath().equals("/api/userinfo/identity")) {
|
||||
return body;
|
||||
}
|
||||
CommonJsonResponse commonJsonResponse = CommonJsonResponse.newSuccessResponse(body);
|
||||
if(returnType.getMethod().getReturnType().equals(String.class) || body instanceof String) {
|
||||
return commonJsonResponse.toJSONString();
|
||||
}
|
||||
return commonJsonResponse;
|
||||
}*/
|
||||
if (body instanceof CommonJsonResponse) {
|
||||
return body;
|
||||
}
|
||||
if (request.getURI().getPath().startsWith("/swagger")) {
|
||||
return body;
|
||||
}
|
||||
if (request.getURI().getPath().equals("/api/userinfo/ifRegisted")) {
|
||||
return body;
|
||||
}
|
||||
if (request.getURI().getPath().equals("/api/userinfo/identity")) {
|
||||
return body;
|
||||
}
|
||||
CommonJsonResponse commonJsonResponse = CommonJsonResponse.newSuccessResponse(body);
|
||||
if (returnType.getMethod().getReturnType().equals(String.class) || body instanceof String) {
|
||||
return commonJsonResponse.toJSONString();
|
||||
}
|
||||
return commonJsonResponse;
|
||||
}
|
||||
|
||||
@ExceptionHandler({PayException.class})
|
||||
@ResponseStatus
|
||||
public CommonJsonResponse handleException(PayException e) {
|
||||
log.error("【支付异常】", e);
|
||||
return CommonJsonResponse.newErrorResponse();
|
||||
}
|
||||
|
||||
@ExceptionHandler({Exception.class})
|
||||
@ResponseBody
|
||||
public CommonJsonResponse handleException(Exception e) {
|
||||
if (e instanceof MethodArgumentNotValidException) {
|
||||
// 参数验证异常处理
|
||||
MethodArgumentNotValidException validException = (MethodArgumentNotValidException) e;
|
||||
List<ObjectError> errorList = validException.getBindingResult().getAllErrors();
|
||||
StringBuffer sb = new StringBuffer();
|
||||
errorList.forEach(error ->
|
||||
sb.append(error.getDefaultMessage()).append(";"));
|
||||
log.error("【参数校验异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse(ResponseConsts.VALIDATE_ERROR.getCode(), sb.toString());
|
||||
}
|
||||
if (e instanceof BusinessException) {
|
||||
club.joylink.rtss.exception.BusinessException be = (club.joylink.rtss.exception.BusinessException) e;
|
||||
log.error("【业务异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse(be.getCode(), be.getVoMessage());
|
||||
} else if (e instanceof MissingServletRequestParameterException) {
|
||||
log.error("【接口参数异常】", e);
|
||||
return CommonJsonResponse.newErrorResponse(ResponseConsts.VALIDATE_ERROR.getCode(), "接口参数异常");
|
||||
} else if (e instanceof SimulationException) {
|
||||
club.joylink.rtss.simulation.cbtc.exception.SimulationException simulationException = (club.joylink.rtss.simulation.cbtc.exception.SimulationException) e;
|
||||
log.error("【仿真系统异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse(simulationException.getCode(), simulationException.getMessage());
|
||||
}
|
||||
|
||||
@ExceptionHandler({PayException.class})
|
||||
@ResponseStatus
|
||||
public CommonJsonResponse handleException(PayException e) {
|
||||
log.error("【支付异常】", e);
|
||||
return CommonJsonResponse.newErrorResponse();
|
||||
}
|
||||
|
||||
@ExceptionHandler({Exception.class})
|
||||
@ResponseBody
|
||||
public CommonJsonResponse handleException(Exception e) {
|
||||
if(e instanceof MethodArgumentNotValidException) {
|
||||
// 参数验证异常处理
|
||||
MethodArgumentNotValidException validException = (MethodArgumentNotValidException) e;
|
||||
List<ObjectError> errorList = validException.getBindingResult().getAllErrors();
|
||||
StringBuffer sb = new StringBuffer();
|
||||
errorList.forEach(error ->
|
||||
sb.append(error.getDefaultMessage()).append(";"));
|
||||
log.error("【参数校验异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse(ResponseConsts.VALIDATE_ERROR.getCode(), sb.toString());
|
||||
} if(e instanceof BusinessException) {
|
||||
club.joylink.rtss.exception.BusinessException be = (club.joylink.rtss.exception.BusinessException) e;
|
||||
log.error("【业务异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse(be.getCode(), be.getVoMessage());
|
||||
} else if(e instanceof MissingServletRequestParameterException) {
|
||||
log.error("【接口参数异常】", e);
|
||||
return CommonJsonResponse.newErrorResponse(ResponseConsts.VALIDATE_ERROR.getCode(), "接口参数异常");
|
||||
} else if (e instanceof SimulationException) {
|
||||
club.joylink.rtss.simulation.cbtc.exception.SimulationException simulationException = (club.joylink.rtss.simulation.cbtc.exception.SimulationException) e;
|
||||
log.error("【仿真系统异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse(simulationException.getCode(), simulationException.getMessage());
|
||||
}
|
||||
|
||||
log.error("【系统异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse();
|
||||
}
|
||||
log.error("【系统异常】{}", e);
|
||||
return CommonJsonResponse.newErrorResponse();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -25,12 +25,12 @@ public class LicenseInterceptor implements HandlerInterceptor {
|
|||
|
||||
@Override
|
||||
public boolean preHandle(HttpServletRequest request, HttpServletResponse response, Object handler) throws Exception {
|
||||
// if (SystemEnv.isLocalEnv(otherConfig.getEnv())) {
|
||||
if (SystemEnv.isLocalEnv(otherConfig.getEnv())) {
|
||||
// log.debug(String.format("本地部署许可证验证"));
|
||||
// LicenseVO license = this.licenseService.getLicense();
|
||||
// BusinessExceptionAssertEnum.LICENSE_EXPIRED.assertNotTrue(license.isExpire(), "本地license已过期");
|
||||
LicenseVO license = this.licenseService.getLicense();
|
||||
BusinessExceptionAssertEnum.LICENSE_EXPIRED.assertNotTrue(license.isExpire(), "本地license已过期");
|
||||
// log.debug("本地许可证有效");
|
||||
// }
|
||||
}
|
||||
return true;
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,71 @@
|
|||
package club.joylink.rtss.controller.alarm;
|
||||
|
||||
import club.joylink.rtss.entity.AlarmTips;
|
||||
import club.joylink.rtss.services.alarm.AlarmTipsService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.alarm.AlarmQueryVO;
|
||||
import club.joylink.rtss.vo.alarm.AlarmTipsCreateVO;
|
||||
import club.joylink.rtss.vo.client.PageQueryVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 报警提示信息配置管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/alarm")
|
||||
public class AlarmTipsController {
|
||||
@Autowired
|
||||
private AlarmTipsService alarmTipsService;
|
||||
|
||||
/**
|
||||
* 创建提示信息
|
||||
*/
|
||||
@PostMapping("")
|
||||
public void create(@RequestBody AlarmTipsCreateVO alarmTipsCreateVO, @RequestAttribute AccountVO user) {
|
||||
alarmTipsService.create(alarmTipsCreateVO, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 单条查询
|
||||
*/
|
||||
@GetMapping("")
|
||||
public AlarmTips get(AlarmQueryVO queryVO) {
|
||||
return alarmTipsService.get(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 列表查询
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public List<AlarmTips> list() {
|
||||
return alarmTipsService.list();
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*/
|
||||
@GetMapping("/page")
|
||||
public PageVO<AlarmTips> page(PageQueryVO queryVO) {
|
||||
return alarmTipsService.page(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新
|
||||
*/
|
||||
@PutMapping("/{id}")
|
||||
public void update(@PathVariable Long id, @RequestBody AlarmTipsCreateVO createVO, @RequestAttribute AccountVO user) {
|
||||
alarmTipsService.update(id, createVO, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*/
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable Long id) {
|
||||
alarmTipsService.delete(id);
|
||||
}
|
||||
}
|
|
@ -2,253 +2,160 @@ package club.joylink.rtss.controller.paper;
|
|||
|
||||
import club.joylink.rtss.constants.RoleEnum;
|
||||
import club.joylink.rtss.controller.advice.Role;
|
||||
import club.joylink.rtss.dao.*;
|
||||
import club.joylink.rtss.dao.paper.PaperCompositionDAO;
|
||||
import club.joylink.rtss.dao.paper.PaperUserDAO;
|
||||
import club.joylink.rtss.entity.*;
|
||||
import club.joylink.rtss.entity.paper.PaperComposition;
|
||||
import club.joylink.rtss.entity.paper.PaperCompositionExample;
|
||||
import club.joylink.rtss.entity.paper.PaperUser;
|
||||
import club.joylink.rtss.exception.BusinessExceptionAssertEnum;
|
||||
import club.joylink.rtss.services.IMapService;
|
||||
import club.joylink.rtss.services.paper.PaperCompositionService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.map.MapVO;
|
||||
import club.joylink.rtss.vo.paper.*;
|
||||
import club.joylink.rtss.vo.paper.CreatePaperCompositionRspVo;
|
||||
import club.joylink.rtss.vo.paper.FindPaperCompositionByAccountReqVo;
|
||||
import club.joylink.rtss.vo.paper.FindPaperCompositionPageReqVo;
|
||||
import club.joylink.rtss.vo.paper.PaperCompositionWithRuleVo;
|
||||
import club.joylink.rtss.vo.paper.PaperCompositionWithRuleVo.CreatorBasic;
|
||||
import java.util.List;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.time.LocalDateTime;
|
||||
import java.time.ZoneId;
|
||||
import java.util.ArrayList;
|
||||
import java.util.HashMap;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import java.util.function.Function;
|
||||
import java.util.stream.Collectors;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 试卷蓝图业务接口
|
||||
* <p>
|
||||
* 试卷蓝图状态解释:<br>
|
||||
* 编辑中-可以修改、删除;封存-不可以修改删除,可以用来生成试卷,可以状态迁移编辑中和已使用;已使用-已经被用来生成过试卷,不可以修改删除,状态也不能改变。
|
||||
* 试卷蓝图状态解释:<br> 编辑中-可以修改、删除;封存-不可以修改删除,可以用来生成试卷,可以状态迁移编辑中和已使用;已使用-已经被用来生成过试卷,不可以修改删除,状态也不能改变。
|
||||
*/
|
||||
@Slf4j
|
||||
@RestController
|
||||
@RequestMapping("/api/v2/paper/composition")
|
||||
public class PaperCompositionController {
|
||||
@Autowired
|
||||
private PaperCompositionService compositionService;
|
||||
|
||||
/**
|
||||
* 数据管理查询
|
||||
*
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@Role(value = RoleEnum.SuperAdmin)
|
||||
@PostMapping(path = "/manage/paging")
|
||||
public PageVO<PaperCompositionWithRuleVo> findPaperCompositionForPage(@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return this.compositionService.findPaperCompositionByPage(req);
|
||||
}
|
||||
@Autowired
|
||||
private PaperCompositionService compositionService;
|
||||
|
||||
/**
|
||||
* 创建试卷蓝图包括规则定义
|
||||
* 参数 tags 只支持单个
|
||||
*
|
||||
* @param orgId 组织id
|
||||
*/
|
||||
@PostMapping("/{orgId}")
|
||||
public CreatePaperCompositionRspVo createPaperCompositionWithRuleForOrg(@PathVariable("orgId") Long orgId, @RequestBody PaperCompositionWithRuleVo req, @RequestAttribute AccountVO user) {
|
||||
req.setOrgId(orgId);
|
||||
return this.compositionService.createPaperCompositionWithRule(req, user);
|
||||
}
|
||||
/**
|
||||
* 数据管理查询
|
||||
*
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@Role(value = RoleEnum.SuperAdmin)
|
||||
@PostMapping(path = "/manage/paging")
|
||||
public PageVO<PaperCompositionWithRuleVo> findPaperCompositionForPage(
|
||||
@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return this.compositionService.findPaperCompositionByPage(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新试卷蓝图包括规则定义
|
||||
* 参数 tags 只支持单个
|
||||
*/
|
||||
@PutMapping
|
||||
public void updatePaperCompositionWithRule(@RequestBody PaperCompositionWithRuleVo req, @RequestAttribute AccountVO user) {
|
||||
this.compositionService.updatePaperCompositionWithRule(req, user);
|
||||
}
|
||||
/**
|
||||
* 创建试卷蓝图包括规则定义 参数 tags 只支持单个
|
||||
*
|
||||
* @param orgId 组织id
|
||||
*/
|
||||
@PostMapping("/{orgId}")
|
||||
public CreatePaperCompositionRspVo createPaperCompositionWithRuleForOrg(
|
||||
@PathVariable("orgId") Long orgId, @RequestBody PaperCompositionWithRuleVo req,
|
||||
@RequestAttribute AccountVO user) {
|
||||
req.setOrgId(orgId);
|
||||
return this.compositionService.createPaperCompositionWithRule(req, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新试卷蓝图包括规则定义 参数 tags 只支持单个
|
||||
*/
|
||||
@PutMapping
|
||||
public void updatePaperCompositionWithRule(@RequestBody PaperCompositionWithRuleVo req,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.compositionService.updatePaperCompositionWithRule(req, user);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 将编辑好的试卷蓝图封存
|
||||
*/
|
||||
@PutMapping("/{pcId}/lock")
|
||||
public void lockPaperComposition(@PathVariable("pcId") Long pcId, @RequestAttribute AccountVO user) {
|
||||
compositionService.lockPaperComposition(pcId, user);
|
||||
}
|
||||
/**
|
||||
* 将编辑好的试卷蓝图封存
|
||||
*/
|
||||
@PutMapping("/{pcId}/lock")
|
||||
public void lockPaperComposition(@PathVariable("pcId") Long pcId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
compositionService.lockPaperComposition(pcId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 将封存的试卷蓝图设置失效
|
||||
*/
|
||||
@PutMapping("/{pcId}/invalid")
|
||||
public void invalidPaperComposition(@PathVariable("pcId") Long pcId, @RequestAttribute AccountVO user) {
|
||||
compositionService.unlockPaperComposition(pcId, user);
|
||||
}
|
||||
/**
|
||||
* 将封存的试卷蓝图设置失效
|
||||
*/
|
||||
@PutMapping("/{pcId}/invalid")
|
||||
public void invalidPaperComposition(@PathVariable("pcId") Long pcId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
compositionService.unlockPaperComposition(pcId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除试卷蓝图(只能删除处于编辑状态的)
|
||||
*
|
||||
* @param pcId 试卷蓝图id
|
||||
*/
|
||||
@DeleteMapping("/{pcId}")
|
||||
public void deletePaperComposition(@PathVariable("pcId") Long pcId, @RequestAttribute AccountVO user) {
|
||||
compositionService.deletePaperComposition(pcId, user);
|
||||
}
|
||||
/**
|
||||
* 删除试卷蓝图(只能删除处于编辑状态的)
|
||||
*
|
||||
* @param pcId 试卷蓝图id
|
||||
*/
|
||||
@DeleteMapping("/{pcId}")
|
||||
public void deletePaperComposition(@PathVariable("pcId") Long pcId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
compositionService.deletePaperComposition(pcId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据(组织id、线路id、试卷蓝图名称简介)分页查找试卷蓝图
|
||||
*/
|
||||
@PostMapping("/find/page")
|
||||
public PageVO<PaperCompositionWithRuleVo> findPaperCompositionByPage(@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return this.compositionService.findPaperCompositionByPage(req);
|
||||
}
|
||||
/**
|
||||
* 根据(组织id、线路id、试卷蓝图名称简介)分页查找试卷蓝图
|
||||
*/
|
||||
@PostMapping("/find/page")
|
||||
public PageVO<PaperCompositionWithRuleVo> findPaperCompositionByPage(
|
||||
@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return this.compositionService.findPaperCompositionByPage(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据mapId查询蓝图的基本信息
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/find/list")
|
||||
public List<PaperCompositionWithRuleVo> findPaperCompositionByList(@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return this.compositionService.findPaperCompositionList(req);
|
||||
}
|
||||
/**
|
||||
* 查询试卷的创建者的信息
|
||||
*/
|
||||
@PostMapping("/list/creatorInfo")
|
||||
public List<CreatorBasic> queryCreatorList(@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return compositionService.queryCreatorList(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据试卷蓝图名称简介分页查找某个组织的试卷蓝图
|
||||
*/
|
||||
@PostMapping("/find/page/for/{orgId}")
|
||||
public PageVO<PaperCompositionWithRuleVo> findPaperCompositionForOrgByPage(@PathVariable("orgId") Long orgId, @RequestBody FindPaperCompositionPageReqVo req) {
|
||||
req.setOrgId(orgId);
|
||||
return this.compositionService.findPaperCompositionByPage(req);
|
||||
}
|
||||
/**
|
||||
* 根据mapId查询蓝图的基本信息
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/find/list")
|
||||
public List<PaperCompositionWithRuleVo> findPaperCompositionByList(
|
||||
@RequestBody FindPaperCompositionPageReqVo req) {
|
||||
return this.compositionService.findPaperCompositionList(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据账户分页查找试卷蓝图
|
||||
*/
|
||||
@PostMapping("/find/page/by/account")
|
||||
public PageVO<PaperCompositionWithRuleVo> findAccountPaperCompositionByPage(@RequestBody FindPaperCompositionByAccountReqVo req) {
|
||||
return this.compositionService.findPaperCompositionByPageForAccount(req);
|
||||
}
|
||||
/**
|
||||
* 根据试卷蓝图名称简介分页查找某个组织的试卷蓝图
|
||||
*/
|
||||
@PostMapping("/find/page/for/{orgId}")
|
||||
public PageVO<PaperCompositionWithRuleVo> findPaperCompositionForOrgByPage(
|
||||
@PathVariable("orgId") Long orgId, @RequestBody FindPaperCompositionPageReqVo req) {
|
||||
req.setOrgId(orgId);
|
||||
return this.compositionService.findPaperCompositionByPage(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取试卷完整的蓝图,包括规则
|
||||
*
|
||||
* @param pcId 试卷蓝图id
|
||||
*/
|
||||
@GetMapping("/{pcId}")
|
||||
public PaperCompositionWithRuleVo findPaperComposition(@PathVariable("pcId") Long pcId, @RequestAttribute AccountVO user) {
|
||||
return this.compositionService.findPaperComposition(pcId, user);
|
||||
}
|
||||
/**
|
||||
* 根据账户分页查找试卷蓝图
|
||||
*/
|
||||
@PostMapping("/find/page/by/account")
|
||||
public PageVO<PaperCompositionWithRuleVo> findAccountPaperCompositionByPage(
|
||||
@RequestBody FindPaperCompositionByAccountReqVo req) {
|
||||
return this.compositionService.findPaperCompositionByPageForAccount(req);
|
||||
}
|
||||
|
||||
@Autowired
|
||||
ExamDefinitionDAO examDefinitionDAO;
|
||||
@Autowired
|
||||
IMapService iMapService;
|
||||
@Autowired
|
||||
OrgDAO orgDAO;
|
||||
@Autowired
|
||||
OrgProjectDAO orgProjectDAO;
|
||||
@Autowired
|
||||
UserExamMapper userExamMapper;
|
||||
@Autowired
|
||||
private PaperUserDAO paperUserDAO;
|
||||
@Autowired
|
||||
PaperCompositionDAO paperCompositionDAO;
|
||||
@Autowired
|
||||
LsLessonDAO lsLessonDAO;
|
||||
|
||||
/**
|
||||
* 旧数据处理接口(用完删除)
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@PostMapping("/oldData/handle")
|
||||
public List<String> oldDataHandle() {
|
||||
paperCompositionDAO.deleteByExample(null);
|
||||
paperUserDAO.deleteByExample(null);
|
||||
|
||||
List<String> msg = new ArrayList<>();
|
||||
//所有在线地图
|
||||
Map<Long, MapVO> onlineMaps = iMapService.listOnline().stream().collect(Collectors.toMap(MapVO::getId, Function.identity()));
|
||||
//在线地图的有效试卷
|
||||
LsLessonExample lsLessonExample = new LsLessonExample();
|
||||
lsLessonExample.createCriteria().andMapIdIn(new ArrayList<>(onlineMaps.keySet())).andStatusEqualTo("1");
|
||||
List<Long> validLessonIds = lsLessonDAO.selectByExample(lsLessonExample)
|
||||
.stream().map(LsLesson::getId).collect(Collectors.toList());
|
||||
//所有项目-组织对应关系(目前仅教学通用项目
|
||||
Map<String, Long> projectCode_orgId_map = orgProjectDAO.selectByExample(null).stream()
|
||||
.collect(Collectors.toMap(OrgProject::getProjectCode, OrgProject::getOrgId, (oId1, oId2) -> oId1));
|
||||
//转化试卷并记录试卷id变化
|
||||
ExamDefinitionExample examDefinitionExample = new ExamDefinitionExample();
|
||||
examDefinitionExample.createCriteria().andStatusEqualTo("1").andLessonIdIn(validLessonIds);
|
||||
Map<Long, Long> old_newExamIdMap = new HashMap<>();
|
||||
examDefinitionDAO.selectByExample(examDefinitionExample).stream()
|
||||
.peek(exam -> {
|
||||
if (exam.getOrgId() != null) {
|
||||
return;
|
||||
}
|
||||
MapVO map = onlineMaps.get(exam.getMapId());
|
||||
String projectCode = map.getProjectCode();
|
||||
if (StringUtils.hasText(projectCode)) {
|
||||
exam.setOrgId(projectCode_orgId_map.get(projectCode));
|
||||
}
|
||||
})
|
||||
.filter(exam -> exam.getOrgId() != null)
|
||||
.forEach(exam -> {
|
||||
PaperCompositionWithRuleVo paperCompositionWithRuleVo = new PaperCompositionWithRuleVo();
|
||||
paperCompositionWithRuleVo.setMapId(exam.getMapId());
|
||||
paperCompositionWithRuleVo.setName(exam.getName());
|
||||
paperCompositionWithRuleVo.setProfile(exam.getRemarks());
|
||||
// paperCompositionWithRuleVo.setOrgId(exam.getOrgId());
|
||||
paperCompositionWithRuleVo.setStartTime(exam.getStartTime());
|
||||
paperCompositionWithRuleVo.setEndTime(exam.getEndTime());
|
||||
paperCompositionWithRuleVo.setValidDuration(exam.getDuration() / 60);
|
||||
paperCompositionWithRuleVo.setPassScore(exam.getPassingPoint());
|
||||
paperCompositionWithRuleVo.setFullScore(exam.getFullPoint());
|
||||
// paperCompositionWithRuleVo.setCreatorId(exam.getCreatorId());
|
||||
paperCompositionWithRuleVo.setCreateTime(exam.getCreateTime());
|
||||
paperCompositionWithRuleVo.setUpdateTime(null);
|
||||
paperCompositionWithRuleVo.setState(PaperCompositionState.Invalid);
|
||||
AccountVO creator = new AccountVO();
|
||||
creator.setId(exam.getCreatorId());
|
||||
CreatePaperCompositionRspVo paperComposition = createPaperCompositionWithRuleForOrg(exam.getOrgId(), paperCompositionWithRuleVo, creator);
|
||||
old_newExamIdMap.put(exam.getId(), paperComposition.getId());
|
||||
});
|
||||
//将所有试卷状态改为失效
|
||||
PaperCompositionExample paperCompositionExample = new PaperCompositionExample();
|
||||
paperCompositionExample.createCriteria().andIdIn(new ArrayList<>(old_newExamIdMap.values()));
|
||||
PaperComposition paperComposition = new PaperComposition();
|
||||
paperComposition.setState(PaperCompositionState.Invalid.getValue());
|
||||
paperCompositionDAO.updateByExampleSelective(paperComposition, paperCompositionExample);
|
||||
//查询试卷记录
|
||||
ArrayList<Long> oldExamIds = new ArrayList<>(old_newExamIdMap.keySet());
|
||||
UserExamExample userExamExample = new UserExamExample();
|
||||
userExamExample.createCriteria().andExamIdIn(oldExamIds);
|
||||
List<UserExam> userExams = userExamMapper.selectByExample(userExamExample);
|
||||
//转化试卷记录
|
||||
LocalDateTime now = LocalDateTime.now();
|
||||
for (UserExam userExam : userExams) {
|
||||
PaperUser paperUser = new PaperUser();
|
||||
paperUser.setUserId(userExam.getUserId());
|
||||
Long newExamId = old_newExamIdMap.get(userExam.getExamId());
|
||||
BusinessExceptionAssertEnum.SYSTEM_EXCEPTION.assertNotNull(newExamId);
|
||||
paperUser.setPcId(newExamId);
|
||||
paperUser.setScore(userExam.getScore().intValue());
|
||||
paperUser.setStartTime(userExam.getStartTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
||||
if (userExam.getEndTime() != null) {
|
||||
paperUser.setEndTime(userExam.getEndTime().toInstant().atZone(ZoneId.systemDefault()).toLocalDateTime());
|
||||
}
|
||||
paperUser.setCreateTime(now);
|
||||
paperUserDAO.insert(paperUser);
|
||||
}
|
||||
return msg;
|
||||
}
|
||||
/**
|
||||
* 获取试卷完整的蓝图,包括规则
|
||||
*
|
||||
* @param pcId 试卷蓝图id
|
||||
*/
|
||||
@GetMapping("/{pcId}")
|
||||
public PaperCompositionWithRuleVo findPaperComposition(@PathVariable("pcId") Long pcId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return this.compositionService.findPaperComposition(pcId, user);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -18,149 +18,119 @@ import java.util.List;
|
|||
@RestController
|
||||
@RequestMapping("/api/v2/paper")
|
||||
public class PaperUserController {
|
||||
@Autowired
|
||||
private PaperUserService paperUserService;
|
||||
@Autowired
|
||||
private PaperUserCreateService paperUserCreateService;
|
||||
@Autowired
|
||||
private PaperUserLoadQuestionService paperUserLoadQuestionService;
|
||||
@Autowired
|
||||
private PaperUserSubmitAnswerService paperUserSubmitAnswerService;
|
||||
@Autowired
|
||||
private PaperUserFindPageService paperUserFindPageService;
|
||||
|
||||
/**
|
||||
* 根据试卷蓝图生成用户的试卷
|
||||
*
|
||||
* @param pcId 试卷蓝图id
|
||||
*/
|
||||
@PostMapping("/{pcId}")
|
||||
public CreatePaperRspVo createPaper(@PathVariable("pcId") Long pcId, @RequestAttribute AccountVO user) {
|
||||
return this.paperUserCreateService.createPaper(pcId, user);
|
||||
}
|
||||
@Autowired
|
||||
private PaperUserService paperUserService;
|
||||
@Autowired
|
||||
private PaperUserCreateService paperUserCreateService;
|
||||
@Autowired
|
||||
private PaperUserLoadQuestionService paperUserLoadQuestionService;
|
||||
@Autowired
|
||||
private PaperUserSubmitAnswerService paperUserSubmitAnswerService;
|
||||
@Autowired
|
||||
private PaperUserFindPageService paperUserFindPageService;
|
||||
|
||||
/**
|
||||
* 获取用户试卷完整信息
|
||||
*
|
||||
* @param puId 用户试卷id
|
||||
*/
|
||||
@GetMapping("/user/{puId}")
|
||||
public PaperUserWholeVo findPaperUser(@PathVariable("puId") Long puId, @RequestAttribute AccountVO user) {
|
||||
return this.paperUserService.findPaperUser(puId);
|
||||
}
|
||||
/**
|
||||
* 根据试卷蓝图生成用户的试卷
|
||||
*
|
||||
* @param pcId 试卷蓝图id
|
||||
*/
|
||||
@PostMapping("/{pcId}")
|
||||
public CreatePaperRspVo createPaper(@PathVariable("pcId") Long pcId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return this.paperUserCreateService.createPaper(pcId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除用户试卷
|
||||
*
|
||||
* @param puId 用户试卷id
|
||||
*/
|
||||
@DeleteMapping("/user/{puId}")
|
||||
public void deletePaperUser(@PathVariable("puId") Long puId, @RequestAttribute AccountVO user) {
|
||||
this.paperUserService.deletePaperUser(puId);
|
||||
}
|
||||
/**
|
||||
* 获取用户试卷完整信息
|
||||
*
|
||||
* @param puId 用户试卷id
|
||||
*/
|
||||
@GetMapping("/user/{puId}")
|
||||
public PaperUserWholeVo findPaperUser(@PathVariable("puId") Long puId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return this.paperUserService.findPaperUser(puId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 开始答题
|
||||
*
|
||||
* @param puId 用户试卷id
|
||||
*/
|
||||
@PostMapping("/user/{puId}/start")
|
||||
public void paperStart(@PathVariable("puId") Long puId, @RequestAttribute AccountVO user) {
|
||||
this.paperUserService.paperStart(puId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户交卷
|
||||
*
|
||||
* @param puId 用户试卷id
|
||||
*/
|
||||
@PostMapping("/user/{puId}/submit")
|
||||
public PaperSubmitRspVo paperSubmit(@PathVariable("puId") Long puId, @RequestAttribute AccountVO user) {
|
||||
return this.paperUserService.paperSubmit(puId);
|
||||
}
|
||||
/**
|
||||
* 用户交卷
|
||||
*
|
||||
* @param puId 用户试卷id
|
||||
*/
|
||||
@PostMapping("/user/{puId}/submit")
|
||||
public PaperSubmitRspVo paperSubmit(@PathVariable("puId") Long puId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return this.paperUserService.paperSubmit(puId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 加载用户试卷试题
|
||||
* @param groupType 试卷试题大类型:1-理论题,2-实训题
|
||||
* @param qId 试题id
|
||||
* @param puId 试卷id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/user/question/{groupType}/{qId}/{puId}")
|
||||
public PaperQuestionLoadRspVo loadQuestion(@PathVariable("groupType") Integer groupType, @PathVariable("qId") Long qId,@PathVariable("puId") Long puId, @RequestAttribute AccountVO user) {
|
||||
PaperQType.GroupType pgType = PaperQType.GroupType.getItem(groupType);
|
||||
return this.paperUserLoadQuestionService.loadQuestion(pgType, qId,puId, user);
|
||||
}
|
||||
/**
|
||||
* 加载用户试卷试题
|
||||
*
|
||||
* @param groupType 试卷试题大类型:1-理论题,2-实训题
|
||||
* @param qId 试题id
|
||||
* @param puId 试卷id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/user/question/{groupType}/{qId}/{puId}")
|
||||
public PaperQuestionLoadRspVo loadQuestion(@PathVariable("groupType") Integer groupType,
|
||||
@PathVariable("qId") Long qId, @PathVariable("puId") Long puId,
|
||||
@RequestAttribute AccountVO user) {
|
||||
PaperQType.GroupType pgType = PaperQType.GroupType.getItem(groupType);
|
||||
return this.paperUserLoadQuestionService.loadQuestion(pgType, qId, puId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户提交答案
|
||||
* <p>
|
||||
* 对于理论题:用户完成一道题提交一道题的答案;<br>
|
||||
* 对于实训题:用户完成实训操作后,由实训系统自己评判实训是否成功完成,前端提交实训是否成功完成的结果即可。
|
||||
*/
|
||||
@PostMapping("/user/question/answer")
|
||||
public PaperSubmitAnswerRspVo submitAnswer(@RequestBody PaperSubmitAnswerReqVo req, @RequestAttribute AccountVO user) {
|
||||
return this.paperUserSubmitAnswerService.submitAnswer(req, user);
|
||||
}
|
||||
/**
|
||||
* 用户提交答案
|
||||
* <p>
|
||||
* 对于理论题:用户完成一道题提交一道题的答案;<br> 对于实训题:用户完成实训操作后,由实训系统自己评判实训是否成功完成,前端提交实训是否成功完成的结果即可。
|
||||
*/
|
||||
@PostMapping("/user/question/answer")
|
||||
public PaperSubmitAnswerRspVo submitAnswer(@RequestBody PaperSubmitAnswerReqVo req,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return this.paperUserSubmitAnswerService.submitAnswer(req, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询某个试卷蓝图的所有用户试卷基本信息
|
||||
*/
|
||||
/**
|
||||
* 分页查询某个试卷蓝图的所有用户试卷基本信息
|
||||
*/
|
||||
/* @PostMapping("/user/page/composition")
|
||||
public PageVO<PaperUserInfoVo> findPaperUserByPage(@RequestBody FindPaperUserForCompositionReqVo req, @RequestAttribute AccountVO user) {
|
||||
return this.paperUserFindPageService.findPaperUserByPage(req);
|
||||
}*/
|
||||
|
||||
/**
|
||||
* 查看某个班级的某个试卷蓝图的所有学生试卷
|
||||
*/
|
||||
@GetMapping("/user/page")
|
||||
public PageVO<PageUserDetailVO> findPaperUserByPageForClass(@ModelAttribute PageUserDetailQuery req) {
|
||||
return this.paperUserFindPageService.findPaperUserByPageForClass(req);
|
||||
}
|
||||
/**
|
||||
* 查看某个班级的某个试卷蓝图的所有学生试卷
|
||||
*/
|
||||
@GetMapping("/user/page")
|
||||
public PageVO<PageUserDetailVO> findPaperUserByPageForClass(
|
||||
@ModelAttribute PageUserDetailQuery req) {
|
||||
return this.paperUserFindPageService.findPaperUserByPageForClass(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看某个班级的某个试卷蓝图的所有学生试卷 (柱状图)
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/user/curve")
|
||||
public CurveForClassVO curveForClass(@ModelAttribute PageUserDetailQuery req) {
|
||||
return this.paperUserFindPageService.curveForClass(req);
|
||||
}
|
||||
/**
|
||||
* 查看某个班级的某个试卷蓝图的所有学生试卷 (柱状图)
|
||||
*
|
||||
* @param req
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/user/curve")
|
||||
public CurveForClassVO curveForClass(@ModelAttribute PageUserDetailQuery req) {
|
||||
return this.paperUserFindPageService.curveForClass(req);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 查看某个账户的某个试卷蓝图的用户试卷
|
||||
*/
|
||||
/* @PostMapping("/user/list/account")
|
||||
public List<PaperUserInfoVo> findPaperUserForAccount(@RequestBody FindPaperUserForAccountReqVo req, @RequestAttribute AccountVO user) {
|
||||
return this.paperUserFindPageService.findPaperUserForAccount(req);
|
||||
}*/
|
||||
@PostMapping("/question/label")
|
||||
public Collection<String> paperAllLabel(@RequestBody FindCountForQuestionReqVo req) {
|
||||
return this.paperUserService.findAllLabel(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看组织的某个账户的某个试卷蓝图的用户试卷
|
||||
*/
|
||||
/* @PostMapping("/{orgId}/user/list/account")
|
||||
public List<PaperUserInfoVo> findOrgPaperUserForAccount(@PathVariable("orgId") Long orgId, @RequestBody FindPaperUserForAccountReqVo req, @RequestAttribute AccountVO user) {
|
||||
req.setOrgId(orgId);
|
||||
return this.paperUserFindPageService.findPaperUserForAccount(req);
|
||||
}*/
|
||||
|
||||
|
||||
@PostMapping("/question/label")
|
||||
public Collection<String> paperAllLabel(@RequestBody FindCountForQuestionReqVo req){
|
||||
return this.paperUserService.findAllLabel(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查看组织下某个类型题的数量
|
||||
* 参数 tags 目前只支持单个
|
||||
*/
|
||||
// @PostMapping("/{orgId}/question/count")
|
||||
@PostMapping("/question/count")
|
||||
public Long findCountForQuestion(/*@PathVariable("orgId") Long orgId,*/ @RequestBody FindCountForQuestionReqVo req) {
|
||||
/**
|
||||
* 查看组织下某个类型题的数量 参数 tags 目前只支持单个
|
||||
*/
|
||||
@PostMapping("/question/count")
|
||||
public Long findCountForQuestion(@RequestBody FindCountForQuestionReqVo req) {
|
||||
// req.setOrgId(orgId);
|
||||
return this.paperUserService.findCountForQuestion(req);
|
||||
}
|
||||
return this.paperUserService.findCountForQuestion(req);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -7,12 +7,32 @@ import club.joylink.rtss.services.project.DeviceService;
|
|||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.client.project.*;
|
||||
import club.joylink.rtss.vo.client.project.IbpConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.LswConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.LwConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.PlcGatewayConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.ProjectDevicePageQueryVO;
|
||||
import club.joylink.rtss.vo.client.project.ProjectDeviceVO;
|
||||
import club.joylink.rtss.vo.client.project.PscConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.PsdConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.PslConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.RelationLoginConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.SignalConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.SwitchConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.VrIbpConfigVO;
|
||||
import club.joylink.rtss.vo.client.project.VrpsdConfigVO;
|
||||
import java.util.List;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 项目设备管理接口(新)
|
||||
|
@ -21,241 +41,278 @@ import java.util.List;
|
|||
@RequestMapping(path = "/api/device")
|
||||
public class DeviceController {
|
||||
|
||||
@Autowired
|
||||
private DeviceService deviceService;
|
||||
@Autowired
|
||||
private DeviceService deviceService;
|
||||
|
||||
/**
|
||||
* 分页查询项目设备
|
||||
*/
|
||||
@GetMapping("/paging")
|
||||
public PageVO<ProjectDeviceVO> pagingQuery(ProjectDevicePageQueryVO queryVO) {
|
||||
return this.deviceService.pagingQuery(queryVO);
|
||||
}
|
||||
/**
|
||||
* 分页查询项目设备
|
||||
*/
|
||||
@GetMapping("/paging")
|
||||
public PageVO<ProjectDeviceVO> pagingQuery(ProjectDevicePageQueryVO queryVO) {
|
||||
return this.deviceService.pagingQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 项目设备编号是否已经存在
|
||||
*/
|
||||
@GetMapping("/exist/{code}")
|
||||
public boolean isDeviceCodeExist(@PathVariable String code, String projectCode) {
|
||||
String project = Project.isDefault(projectCode) ? Project.DEFAULT_PROJECT_CODE : projectCode;
|
||||
return this.deviceService.isDeviceCodeExist(project, code);
|
||||
}
|
||||
/**
|
||||
* 项目设备编号是否已经存在
|
||||
*/
|
||||
@GetMapping("/exist/{code}")
|
||||
public boolean isDeviceCodeExist(@PathVariable String code, String projectCode) {
|
||||
String project = Project.isDefault(projectCode) ? Project.DEFAULT_PROJECT_CODE : projectCode;
|
||||
return this.deviceService.isDeviceCodeExist(project, code);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新建项目设备
|
||||
*/
|
||||
@PostMapping("")
|
||||
public String create(@RequestBody @Validated ProjectDeviceVO deviceVO,
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_INFO_KEY)
|
||||
LoginUserInfoVO userLoginInfo) {
|
||||
return this.deviceService.create(deviceVO, userLoginInfo);
|
||||
}
|
||||
/**
|
||||
* 新建项目设备
|
||||
*/
|
||||
@PostMapping("")
|
||||
public String create(@RequestBody @Validated ProjectDeviceVO deviceVO,
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_INFO_KEY)
|
||||
LoginUserInfoVO userLoginInfo) {
|
||||
return this.deviceService.create(deviceVO, userLoginInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取设备详情(包含配置信息)
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public ProjectDeviceVO getDeviceDetailInfoById(@PathVariable Long id) {
|
||||
return this.deviceService.getDeviceDetailInfoById(id);
|
||||
}
|
||||
/**
|
||||
* 获取设备详情(包含配置信息)
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public ProjectDeviceVO getDeviceDetailInfoById(@PathVariable Long id) {
|
||||
return this.deviceService.getDeviceDetailInfoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改道岔设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/plcgateway")
|
||||
public void updatePlcGatewayConfig(@PathVariable Long id, @RequestBody @Validated PlcGatewayConfigVO configVO) {
|
||||
this.deviceService.updatePlcGatewayConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改道岔设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/plcgateway")
|
||||
public void updatePlcGatewayConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated PlcGatewayConfigVO configVO) {
|
||||
this.deviceService.updatePlcGatewayConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改道岔设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/switch")
|
||||
public void updateSwitchConfig(@PathVariable Long id, @RequestBody @Validated SwitchConfigVO configVO) {
|
||||
this.deviceService.updateSwitchConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改道岔设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/switch")
|
||||
public void updateSwitchConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated SwitchConfigVO configVO) {
|
||||
this.deviceService.updateSwitchConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改信号机设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/signal")
|
||||
public void updateSignalConfig(@PathVariable Long id, @RequestBody @Validated SignalConfigVO configVO) {
|
||||
this.deviceService.updateSignalConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改信号机设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/signal")
|
||||
public void updateSignalConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated SignalConfigVO configVO) {
|
||||
this.deviceService.updateSignalConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/psc")
|
||||
public void updatePscConfig(@PathVariable Long id, @RequestBody @Validated PscConfigVO configVO) {
|
||||
this.deviceService.updatePscConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/psc")
|
||||
public void updatePscConfig(@PathVariable Long id, @RequestBody @Validated PscConfigVO configVO) {
|
||||
this.deviceService.updatePscConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/psd")
|
||||
public void updatePsdConfig(@PathVariable Long id, @RequestBody @Validated PsdConfigVO configVO) {
|
||||
this.deviceService.updatePsdConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/psd")
|
||||
public void updatePsdConfig(@PathVariable Long id, @RequestBody @Validated PsdConfigVO configVO) {
|
||||
this.deviceService.updatePsdConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/psl")
|
||||
public void updatePslConfig(@PathVariable Long id, @RequestBody @Validated PslConfigVO configVO) {
|
||||
this.deviceService.updatePslConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/psl")
|
||||
public void updatePslConfig(@PathVariable Long id, @RequestBody @Validated PslConfigVO configVO) {
|
||||
this.deviceService.updatePslConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/ibp")
|
||||
public void updateIbpConfig(@PathVariable Long id, @RequestBody @Validated IbpConfigVO configVO) {
|
||||
this.deviceService.updateIbpConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改屏蔽门设备网关映射配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/ibp")
|
||||
public void updateIbpConfig(@PathVariable Long id, @RequestBody @Validated IbpConfigVO configVO) {
|
||||
this.deviceService.updateIbpConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改虚拟IBP盘配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/vribp")
|
||||
public void updateVrIbpConfig(@PathVariable Long id, @RequestBody @Validated VrIbpConfigVO configVO) {
|
||||
this.deviceService.updateVrIbpConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改虚拟IBP盘配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/vribp")
|
||||
public void updateVrIbpConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated VrIbpConfigVO configVO) {
|
||||
this.deviceService.updateVrIbpConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改现地工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/lw")
|
||||
public void updateLwConfig(@PathVariable Long id, @RequestBody @Validated LwConfigVO configVO) {
|
||||
this.deviceService.updateLwConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改现地工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/lw")
|
||||
public void updateLwConfig(@PathVariable Long id, @RequestBody @Validated LwConfigVO configVO) {
|
||||
this.deviceService.updateLwConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改大屏工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/lsw")
|
||||
public void updateLswConfig(@PathVariable Long id, @RequestBody @Validated LswConfigVO configVO) {
|
||||
this.deviceService.updateLswConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改大屏工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/lsw")
|
||||
public void updateLswConfig(@PathVariable Long id, @RequestBody @Validated LswConfigVO configVO) {
|
||||
this.deviceService.updateLswConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改CCTV工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/cctv")
|
||||
public void updateCctvConfig(@PathVariable Long id, @RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateCctvConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改CCTV工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/cctv")
|
||||
public void updateCctvConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateCctvConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改电子沙盘工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/sandbox")
|
||||
public void updateSandboxConfig(@PathVariable Long id, @RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateSandboxConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改电子沙盘工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/sandbox")
|
||||
public void updateSandboxConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateSandboxConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改虚拟屏蔽门工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/vrpsd")
|
||||
public void updateVrpsdConfig(@PathVariable Long id, @RequestBody @Validated VrpsdConfigVO configVO) {
|
||||
this.deviceService.updateVrpsdConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改虚拟屏蔽门工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/vrpsd")
|
||||
public void updateVrpsdConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated VrpsdConfigVO configVO) {
|
||||
this.deviceService.updateVrpsdConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改现地综合监控工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/iscslw")
|
||||
public void updateIscsLwConfig(@PathVariable Long id, @RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateIscsLwConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改现地综合监控工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/iscslw")
|
||||
public void updateIscsLwConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateIscsLwConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改中心综合监控工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/iscscw")
|
||||
public void updateIscsCwConfig(@PathVariable Long id, @RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateIscsCwConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改中心综合监控工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/iscscw")
|
||||
public void updateIscsCwConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateIscsCwConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加/修改联锁工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/ilw")
|
||||
public void updateIlwConfig(@PathVariable Long id, @RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateIlwConfig(id, configVO);
|
||||
}
|
||||
/**
|
||||
* 添加/修改联锁工作站配置
|
||||
*/
|
||||
@PutMapping("/{id}/config/ilw")
|
||||
public void updateIlwConfig(@PathVariable Long id,
|
||||
@RequestBody @Validated RelationLoginConfigVO configVO) {
|
||||
this.deviceService.updateIlwConfig(id, configVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改配置,以json的形式
|
||||
*/
|
||||
@PutMapping("/config/updateConfig")
|
||||
public void updateConfig(@RequestBody ProjectDeviceVO projectDeviceVO) {
|
||||
this.deviceService.updateConfig(projectDeviceVO);
|
||||
}
|
||||
/**
|
||||
* 修改配置,以json的形式
|
||||
*/
|
||||
@PutMapping("/config/updateConfig")
|
||||
public void updateConfig(@RequestBody ProjectDeviceVO projectDeviceVO) {
|
||||
this.deviceService.updateConfig(projectDeviceVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除设备
|
||||
*/
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable Long id) {
|
||||
this.deviceService.delete(id);
|
||||
}
|
||||
/**
|
||||
* 删除设备
|
||||
*/
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable Long id) {
|
||||
this.deviceService.delete(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询某个类型的所有设备
|
||||
*/
|
||||
@GetMapping("/{project}/{type}/all")
|
||||
public List<ProjectDeviceVO> queryByType(@PathVariable String project, @PathVariable ProjectDeviceType type) {
|
||||
return this.deviceService.queryByType(type, project);
|
||||
}
|
||||
/**
|
||||
* 查询某个类型的所有设备
|
||||
*/
|
||||
@GetMapping("/{project}/{type}/all")
|
||||
public List<ProjectDeviceVO> queryByType(@PathVariable String project,
|
||||
@PathVariable ProjectDeviceType type) {
|
||||
return this.deviceService.queryByType(type, project);
|
||||
}
|
||||
|
||||
//
|
||||
//
|
||||
// @ApiOperation(value = "查询项目下的所有设备")
|
||||
// @GetMapping("/project")
|
||||
// public List<ProjectDeviceVO> queryByProjectCode(String projectCode, String group) {
|
||||
// return this.iProjectDeviceService.queryByProjectCode(projectCode, group);
|
||||
// }
|
||||
@PostMapping("/xty/addOrUpdate")
|
||||
public void addOrUpdateXtyDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateXtyDeviceConfig(accountVO);
|
||||
}
|
||||
@PostMapping("/xty/addOrUpdate")
|
||||
public void addOrUpdateXtyDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateXtyDeviceConfig(accountVO);
|
||||
}
|
||||
|
||||
@PostMapping("/gzb/addOrUpdate")
|
||||
public void addOrUpdateGzbDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateGzbDeviceConfig(accountVO);
|
||||
}
|
||||
@PostMapping("/gzb/addOrUpdate")
|
||||
public void addOrUpdateGzbDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateGzbDeviceConfig(accountVO);
|
||||
}
|
||||
|
||||
@PostMapping("/sdy/addOrUpdate")
|
||||
public void addOrUpdateSdyDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateSdyDeviceConfig(accountVO);
|
||||
}
|
||||
@PostMapping("/sdy/addOrUpdate")
|
||||
public void addOrUpdateSdyDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateSdyDeviceConfig(accountVO);
|
||||
}
|
||||
|
||||
@PostMapping("/zjd/addOrUpdate")
|
||||
public void addOrUpdateZjdDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateRichorDeviceConfig(accountVO);
|
||||
}
|
||||
@PostMapping("/zjd/addOrUpdate")
|
||||
public void addOrUpdateZjdDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateRichorDeviceConfig(accountVO);
|
||||
}
|
||||
|
||||
@PostMapping("/sr/addOrUpdate/{mapId}")
|
||||
public void addOrUpdateSrDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO, @PathVariable Long mapId) {
|
||||
this.deviceService.addOrUpdateSrDeviceConfig(accountVO, mapId);
|
||||
}
|
||||
@PostMapping("/sr/addOrUpdate/{mapId}")
|
||||
public void addOrUpdateSrDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO, @PathVariable Long mapId) {
|
||||
this.deviceService.addOrUpdateSrDeviceConfig(accountVO, mapId);
|
||||
}
|
||||
|
||||
@PostMapping("/hhcj/addOrUpdate")
|
||||
public void addOrUpdateHhcjDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateHhcjDeviceConfig(accountVO);
|
||||
}
|
||||
@PostMapping("/hhcj/addOrUpdate")
|
||||
public void addOrUpdateHhcjDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateHhcjDeviceConfig(accountVO);
|
||||
}
|
||||
|
||||
@PostMapping("/say/addOrUpdate")
|
||||
public void addOrUpdateSayDeviceConfig(@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateSayDeviceConfig(accountVO);
|
||||
}
|
||||
@PostMapping("/say/addOrUpdate")
|
||||
public void addOrUpdateSayDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO) {
|
||||
this.deviceService.addOrUpdateSayDeviceConfig(accountVO);
|
||||
}
|
||||
|
||||
@PostMapping("/thailand/addOrUpdate/{mapId}")
|
||||
public void addOrUpdateThailandDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO, @PathVariable Long mapId) {
|
||||
this.deviceService.addOrUpdateThailandDeviceConfig(accountVO, mapId);
|
||||
}
|
||||
|
||||
@PostMapping("/ngy/addOrUpdate/{mapId}")
|
||||
public void addOrUpdateNgyDeviceConfig(
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_USER_KEY)
|
||||
AccountVO accountVO, @PathVariable Long mapId) {
|
||||
this.deviceService.addOrUpdateNgyDeviceConfig(accountVO, mapId);
|
||||
}
|
||||
|
||||
@PostMapping("/cdgxy/addOrUpdate")
|
||||
public void addOrUpdateCdgxyDeviceConfig(@RequestAttribute AccountVO user) {
|
||||
this.deviceService.addOrUpdateCdgxyDeviceConfig(user);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -111,8 +111,8 @@ public class ProjectInfoController {
|
|||
}
|
||||
|
||||
@GetMapping("/check/markKey")
|
||||
public boolean checkProjectViewMarkKey(String markKey) {
|
||||
return projectService.checkProjectViewMarkKey(markKey);
|
||||
public boolean checkProjectViewMarkKey(String markKey, Long id) {
|
||||
return projectService.checkProjectViewMarkKey(markKey, id);
|
||||
}
|
||||
|
||||
@GetMapping("/simple")
|
||||
|
|
|
@ -429,4 +429,13 @@ public class MapController {
|
|||
public List<MapVO> listMapsOfUser(@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
return iMapService.listMapsOfUser(loginInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取地图配置的客户端信息
|
||||
* @return 客户端信息
|
||||
*/
|
||||
@GetMapping("/{id}/mapClientMap")
|
||||
public Map<Simulation.Type, List<MapClientVO>> queryMapClientMap(@PathVariable long id) {
|
||||
return iMapService.queryMapClientMap(id);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -2,160 +2,204 @@ package club.joylink.rtss.controller.publish;
|
|||
|
||||
import club.joylink.rtss.constants.RoleEnum;
|
||||
import club.joylink.rtss.controller.advice.Role;
|
||||
import club.joylink.rtss.dao.RtsMapFunctionDAO;
|
||||
import club.joylink.rtss.services.IMapService;
|
||||
import club.joylink.rtss.services.mapFunction.RtsMapFunctionService;
|
||||
import club.joylink.rtss.simulation.cbtc.Simulation;
|
||||
import club.joylink.rtss.services.mapFunctionTemplate.MapFunctionTemplateService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.*;
|
||||
import club.joylink.rtss.vo.map.MapVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.transaction.annotation.Transactional;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.ArrayList;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionBatchModifyVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionCreateVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionGenerateParamVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionGenerateVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionQueryVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionUpdateVO;
|
||||
import club.joylink.rtss.vo.client.mapFunction.MapFunctionVO;
|
||||
import club.joylink.rtss.vo.client.mapFunctionTemplate.MapFunctionTemplateCreateVO;
|
||||
import club.joylink.rtss.vo.client.mapFunctionTemplate.MapFunctionTemplateQueryVO;
|
||||
import club.joylink.rtss.vo.client.mapFunctionTemplate.MapFunctionTemplateVO;
|
||||
import java.util.List;
|
||||
import java.util.Map;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 地图功能管理接口
|
||||
* 地图功能及模板管理接口
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/mapFunction")
|
||||
public class MapFunctionController {
|
||||
@Autowired
|
||||
private RtsMapFunctionService rtsMapFunctionService;
|
||||
|
||||
/**
|
||||
* 创建地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@PostMapping("")
|
||||
public void create(@RequestBody RtsMapFunctionCreateVO createVO, @RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
rtsMapFunctionService.create(createVO, loginInfo.getAccountVO().getId());
|
||||
}
|
||||
@Autowired
|
||||
private RtsMapFunctionService rtsMapFunctionService;
|
||||
|
||||
/**
|
||||
* 生成地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@PostMapping("/{mapId}/generate")
|
||||
public List<String> generate(@PathVariable long mapId, @RequestBody @Validated RtsMapFunctionGenerateParamVO paramVO,
|
||||
@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
return rtsMapFunctionService.generate(mapId, paramVO, loginInfo.getAccountVO().getId());
|
||||
}
|
||||
@Autowired
|
||||
private MapFunctionTemplateService mapFunctionTemplateService;
|
||||
|
||||
/**
|
||||
* 列表查询地图功能(新)
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public List<RtsMapFunctionVO> listQuery(RtsMapFunctionQueryVO queryVO) {
|
||||
return rtsMapFunctionService.listQuery(queryVO);
|
||||
}
|
||||
/**
|
||||
* 创建地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@PostMapping("")
|
||||
public void create(@RequestBody MapFunctionCreateVO createVO,
|
||||
@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
rtsMapFunctionService.create(createVO, loginInfo.getAccountVO().getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询地图功能
|
||||
*/
|
||||
@GetMapping("/paged")
|
||||
public PageVO<RtsMapFunctionVO> pagedQuery(RtsMapFunctionQueryVO queryVO) {
|
||||
return rtsMapFunctionService.pagedQuery(queryVO);
|
||||
}
|
||||
/**
|
||||
* 生成地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@PostMapping("/{mapId}/generate")
|
||||
public List<String> generate(@PathVariable long mapId,
|
||||
@RequestBody @Validated MapFunctionGenerateParamVO paramVO,
|
||||
@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
return rtsMapFunctionService.generate(mapId, paramVO, loginInfo.getAccountVO().getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable long id) {
|
||||
rtsMapFunctionService.delete(id);
|
||||
}
|
||||
/**
|
||||
* 列表查询地图功能(新)
|
||||
*/
|
||||
@GetMapping("/list")
|
||||
public List<MapFunctionVO> listQuery(MapFunctionQueryVO queryVO) {
|
||||
return rtsMapFunctionService.listQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量删除地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@DeleteMapping("/batch/{mapId}")
|
||||
public void batchDelete(@PathVariable long mapId) {
|
||||
rtsMapFunctionService.batchDelete(mapId);
|
||||
}
|
||||
/**
|
||||
* 分页查询地图功能
|
||||
*/
|
||||
@GetMapping("/paged")
|
||||
public PageVO<MapFunctionVO> pagedQuery(MapFunctionQueryVO queryVO) {
|
||||
return rtsMapFunctionService.pagedQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@PutMapping("/{id}")
|
||||
public void update(@PathVariable long id, @RequestBody RtsMapFunctionUpdateVO updateVO, @RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
rtsMapFunctionService.update(id, updateVO, loginInfo.getAccountVO().getId());
|
||||
}
|
||||
/**
|
||||
* 删除地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable long id) {
|
||||
rtsMapFunctionService.delete(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据ID获取地图功能信息
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public RtsMapFunctionVO queryOne(@PathVariable Long id) {
|
||||
return rtsMapFunctionService.get(id);
|
||||
}
|
||||
/**
|
||||
* 批量删除地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@DeleteMapping("/batch/{mapId}")
|
||||
public void batchDelete(@PathVariable long mapId) {
|
||||
rtsMapFunctionService.batchDelete(mapId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新分组
|
||||
* @param groupMap k- group v-mapFunctionIds
|
||||
*/
|
||||
@PutMapping("/group")
|
||||
public void updateGroup(@RequestBody Map<String, List<Long>> groupMap,
|
||||
@RequestAttribute AccountVO user) {
|
||||
rtsMapFunctionService.updateGroup(groupMap, user.getId());
|
||||
}
|
||||
/**
|
||||
* 更新地图功能
|
||||
*/
|
||||
@Role(RoleEnum.Admin)
|
||||
@PutMapping("/{id}")
|
||||
public void update(@PathVariable long id, @RequestBody MapFunctionUpdateVO updateVO,
|
||||
@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
rtsMapFunctionService.update(id, updateVO, loginInfo.getAccountVO().getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 批量修改描述
|
||||
*/
|
||||
@PutMapping("/desc/batch")
|
||||
public void batchModifyDesc(@RequestBody RtsMapFunctionDescModifyVO vo) {
|
||||
rtsMapFunctionService.batchModifyDesc(vo);
|
||||
}
|
||||
/**
|
||||
* 根据ID获取地图功能信息
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public MapFunctionVO queryOne(@PathVariable Long id) {
|
||||
return rtsMapFunctionService.get(id);
|
||||
}
|
||||
|
||||
@Autowired
|
||||
private IMapService iMapService;
|
||||
@Autowired
|
||||
private RtsMapFunctionDAO rtsMapFunctionDAO;
|
||||
/**
|
||||
* 更新分组
|
||||
*
|
||||
* @param groupMap k- group v-mapFunctionIds
|
||||
*/
|
||||
@PutMapping("/group")
|
||||
public void updateGroup(@RequestBody Map<String, List<Long>> groupMap,
|
||||
@RequestAttribute AccountVO user) {
|
||||
rtsMapFunctionService.updateGroup(groupMap, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 旧数据处理(用完删除)
|
||||
*/
|
||||
@Transactional(rollbackFor = Exception.class)
|
||||
@PostMapping("/oldDataHandle")
|
||||
public List<String> oldDataHandle() {
|
||||
rtsMapFunctionDAO.deleteByExample(null);
|
||||
/**
|
||||
* 跨线路批量修改线路功能
|
||||
*/
|
||||
@PutMapping("/crossMap/batch")
|
||||
public void batchModifyDesc(@RequestBody MapFunctionBatchModifyVO vo) {
|
||||
rtsMapFunctionService.batchModify(vo);
|
||||
}
|
||||
|
||||
List<MapVO> onlineMaps = iMapService.listOnline();
|
||||
List<String> msgList = new ArrayList<>();
|
||||
for (MapVO onlineMap : onlineMaps) {
|
||||
List<String> list = rtsMapFunctionService.transferOldData(onlineMap.getId());
|
||||
msgList.addAll(list);
|
||||
}
|
||||
return msgList;
|
||||
}
|
||||
/**
|
||||
* 创建线路功能模板
|
||||
*/
|
||||
@PostMapping("/template")
|
||||
public void create(@RequestBody MapFunctionTemplateCreateVO createVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
mapFunctionTemplateService.create(createVO, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 为所有在线地图生成功能(用完删除)
|
||||
*/
|
||||
@Transactional
|
||||
@PostMapping("/generate/all")
|
||||
public void generateAll(@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
for (MapVO mapVO : iMapService.listOnline()) {
|
||||
MapVO mapDetail = iMapService.getMapDetail(mapVO.getId());
|
||||
RtsMapFunctionGenerateParamVO paramVO = new RtsMapFunctionGenerateParamVO();
|
||||
List<Simulation.Type> types = new ArrayList<>();
|
||||
if (mapDetail.getConfigVO().isRailway()) {
|
||||
types.add(Simulation.Type.RAILWAY);
|
||||
} else {
|
||||
types.add(Simulation.Type.METRO);
|
||||
}
|
||||
paramVO.setSimTypes(types);
|
||||
generate(mapDetail.getId(), paramVO, loginInfo);
|
||||
}
|
||||
}
|
||||
/**
|
||||
* 列表查询线路功能模板
|
||||
*/
|
||||
@GetMapping("/template/list")
|
||||
public List<MapFunctionTemplateVO> listQuery(MapFunctionTemplateQueryVO queryVO) {
|
||||
return mapFunctionTemplateService.listQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询线路功能模板
|
||||
*/
|
||||
@GetMapping("/template/paged")
|
||||
public PageVO<MapFunctionTemplateVO> pagedQuery(MapFunctionTemplateQueryVO queryVO) {
|
||||
return mapFunctionTemplateService.pagedQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新线路功能模板
|
||||
*/
|
||||
@PutMapping("/template/{id}")
|
||||
public MapFunctionTemplateVO update(@PathVariable long id,
|
||||
@RequestBody MapFunctionTemplateCreateVO createVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return mapFunctionTemplateService.update(id, createVO, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除线路功能模板
|
||||
*/
|
||||
@DeleteMapping("/template/{id}")
|
||||
public void deleteTemplate(@PathVariable long id) {
|
||||
mapFunctionTemplateService.delete(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据模板生成地图功能
|
||||
*
|
||||
* @return 生成过程中的特殊情况日志
|
||||
*/
|
||||
@PostMapping("/generate/from/template")
|
||||
public List<String> generateFromTemplate(@RequestBody MapFunctionGenerateVO vo,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return rtsMapFunctionService.generateFromTemplate(vo, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据地图原有的线路功能信息生成新的线路功能信息(模板与当前数据名称匹配)
|
||||
*
|
||||
* @param mapIds 地图ID列表
|
||||
* @param user 登录用户信息
|
||||
* @return 没有生成信息记录,方便用户自定义操作
|
||||
*/
|
||||
@PostMapping("/generate/mapIds")
|
||||
public List<String> generateFunByOldData(@RequestBody List<Long> mapIds,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return rtsMapFunctionService.generateFunByOldData(mapIds, user);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,91 @@
|
|||
package club.joylink.rtss.controller.racetr;
|
||||
|
||||
import club.joylink.rtss.services.race.RaceApplicationService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.paper.PaperTrainAnswerDetail;
|
||||
import club.joylink.rtss.vo.race.RaceApplication;
|
||||
import club.joylink.rtss.vo.race.RaceTask;
|
||||
import club.joylink.rtss.vo.race.RaceTaskFinishParamDTO;
|
||||
import java.util.List;
|
||||
import lombok.AllArgsConstructor;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 赛题训练接口
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/race")
|
||||
@AllArgsConstructor
|
||||
public class RaceApplicationController {
|
||||
|
||||
private RaceApplicationService raceApplicationService;
|
||||
|
||||
/**
|
||||
* 开始训练
|
||||
* <p>
|
||||
* 目前用用户id作为训练上下文的ID,即用户同时进行一个训练
|
||||
*
|
||||
* @param paperId 赛题ID
|
||||
* @return 训练的信息
|
||||
*/
|
||||
@PostMapping("/{paperId}/{moduleId}")
|
||||
public RaceTask.RacePaperSingleModuleGroupTask start(@PathVariable long paperId,
|
||||
@PathVariable int moduleId, @RequestAttribute AccountVO user) {
|
||||
return raceApplicationService.start(paperId, moduleId, user.getId());
|
||||
}
|
||||
|
||||
/**
|
||||
* 加载场景
|
||||
*
|
||||
* @param simulationId 场景依托的仿真
|
||||
* @param sceneId 场景的ID
|
||||
*/
|
||||
@PutMapping("/{simulationId}/load/{sceneId}")
|
||||
public void loadScene(@PathVariable String simulationId, @PathVariable long sceneId,
|
||||
@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
raceApplicationService.loadScene(simulationId, sceneId, loginInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 完成任务
|
||||
*
|
||||
* @param taskId 任务ID
|
||||
* @param paramDTO 完成任务所需的参数。主要就是需要前端做判定的操作/步骤
|
||||
* @return
|
||||
*/
|
||||
@PutMapping("/{taskId}/finish")
|
||||
public List<PaperTrainAnswerDetail> finishTask(@PathVariable long taskId,
|
||||
@RequestBody RaceTaskFinishParamDTO paramDTO, @RequestAttribute AccountVO user) {
|
||||
return raceApplicationService.finishTask(taskId, paramDTO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 完成训练
|
||||
*
|
||||
* @return 评分结果
|
||||
*/
|
||||
@PutMapping("/finish")
|
||||
public RaceApplication.RacePracticeResult finish(@RequestAttribute AccountVO user) {
|
||||
return raceApplicationService.finish(user.getId());
|
||||
}
|
||||
|
||||
// /**
|
||||
// * 获取用户正在进行的竞赛信息
|
||||
// * <p>
|
||||
// * 目前想到的使用场景就是页面刷新后
|
||||
// *
|
||||
// * @return 竞赛信息
|
||||
// */
|
||||
// @GetMapping("")
|
||||
// public Object getRaceInfo() {
|
||||
// return null;
|
||||
// }
|
||||
|
||||
}
|
|
@ -0,0 +1,145 @@
|
|||
package club.joylink.rtss.controller.racetr;
|
||||
|
||||
|
||||
import club.joylink.rtss.exception.BusinessExceptionAssertEnum;
|
||||
import club.joylink.rtss.services.paper.PagerQuestionService;
|
||||
import club.joylink.rtss.services.race.RacePaperService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.race.RacePaper.RacePaperCreateVO;
|
||||
import club.joylink.rtss.vo.race.RacePaper.RacePaperDetailVO;
|
||||
import club.joylink.rtss.vo.race.RacePaper.RacePaperMenuVO;
|
||||
import club.joylink.rtss.vo.race.RacePaper.RacePaperModuleVO;
|
||||
import club.joylink.rtss.vo.race.RacePaper.RacePaperVO;
|
||||
import club.joylink.rtss.vo.race.RacePaperQueryVO;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RacePaperSingleModuleGroupTask;
|
||||
import java.util.List;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 竞赛-试题管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/exercise/race/paper")
|
||||
public class RacePaperController {
|
||||
|
||||
@Autowired
|
||||
private RacePaperService racePaperService;
|
||||
|
||||
@Autowired
|
||||
private PagerQuestionService questionService;
|
||||
|
||||
@GetMapping("/questions")
|
||||
public List<Long> queryQuestionFromPBank() {
|
||||
return this.questionService.queryAllDefaultOrgPaperIds();
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 创建试卷
|
||||
*/
|
||||
@PostMapping()
|
||||
public void save(@RequestBody RacePaperCreateVO createVO, @RequestAttribute AccountVO user) {
|
||||
racePaperService.create(createVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新试卷内容
|
||||
*
|
||||
* @param id
|
||||
* @param updateVO
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping("/{id}")
|
||||
public void update(@PathVariable("id") Long id, @RequestBody RacePaperCreateVO updateVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.racePaperService.update(id, updateVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询
|
||||
*/
|
||||
@GetMapping("/page")
|
||||
public PageVO<RacePaperVO> pageQuery(RacePaperQueryVO queryVO) {
|
||||
return racePaperService.pageQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取赛季试卷菜单
|
||||
*
|
||||
* @param queryVO
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/menu")
|
||||
public RacePaperMenuVO pageMenu(RacePaperQueryVO queryVO) {
|
||||
return this.racePaperService.pageMenuQuery(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 试卷配置
|
||||
*
|
||||
* @param id
|
||||
* @param moduleVO
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping("/{id}/config")
|
||||
public void configSeting(@PathVariable("id") Long id, @RequestBody RacePaperModuleVO moduleVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.racePaperService.configSeting(id, moduleVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取明细
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public RacePaperDetailVO detail(@PathVariable("id") Long id) {
|
||||
return this.racePaperService.detail(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 拷贝功能
|
||||
*
|
||||
* @param id
|
||||
* @param user
|
||||
*/
|
||||
@PutMapping("/{id}/copy")
|
||||
public void copy(@PathVariable("id") Long id, @RequestAttribute AccountVO user) {
|
||||
this.racePaperService.copy(id, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*/
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable("id") Long id) {
|
||||
BusinessExceptionAssertEnum.ARGUMENT_ILLEGAL.assertNotNull(id);
|
||||
racePaperService.delete(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取试卷对应模块的模块任务树
|
||||
*
|
||||
* @param id
|
||||
* @param moduleId
|
||||
* @return
|
||||
*/
|
||||
|
||||
@GetMapping("/{paperId}/module/{moduleId}/task")
|
||||
public RacePaperSingleModuleGroupTask paperModuleTask(@PathVariable("paperId") Long id,
|
||||
@PathVariable("moduleId") Integer moduleId) {
|
||||
return this.racePaperService.singlePaperModuleTask(id, moduleId);
|
||||
|
||||
}
|
||||
}
|
|
@ -0,0 +1,85 @@
|
|||
package club.joylink.rtss.controller.racetr;
|
||||
|
||||
import club.joylink.rtss.services.race.RaceSceneService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.race.RaceSceneOuterClass.RaceSceneListVO;
|
||||
import club.joylink.rtss.vo.race.RaceSceneOuterClass.RaceScenePublishVO;
|
||||
import club.joylink.rtss.vo.race.RaceSceneOuterClass.RaceSceneVO;
|
||||
import club.joylink.rtss.vo.race.RaceSceneOuterClass.SceneCustomCreateVO;
|
||||
import club.joylink.rtss.vo.race.RaceSceneQueryVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 竞赛-场景管理-发布的管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/exercise/race/scene")
|
||||
public class RaceSceneController {
|
||||
|
||||
@Autowired
|
||||
private RaceSceneService sceneService;
|
||||
|
||||
@PostMapping("/custom/edit")
|
||||
public void customSave(@RequestBody SceneCustomCreateVO vo, @RequestAttribute AccountVO user) {
|
||||
this.sceneService.customSave(vo, user);
|
||||
}
|
||||
|
||||
@PostMapping("/custom/{id}/edit")
|
||||
public void customUpdate(@PathVariable("id") Long id, @RequestBody SceneCustomCreateVO vo, @RequestAttribute AccountVO user) {
|
||||
this.sceneService.customUpdate(id, vo, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 草稿实训发布到场景
|
||||
*
|
||||
* @param vo
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping("/publish/training")
|
||||
public void publishHere(@RequestBody RaceScenePublishVO vo, @RequestAttribute AccountVO user) {
|
||||
this.sceneService.publishHere(vo, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取明细
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public RaceSceneVO detail(@PathVariable("id") Long id) {
|
||||
return this.sceneService.detail(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
|
||||
@GetMapping("/page")
|
||||
public PageVO<RaceSceneListVO> page(RaceSceneQueryVO query) {
|
||||
return this.sceneService.page(query);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*
|
||||
* @param id
|
||||
*/
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable("id") Long id) {
|
||||
this.sceneService.delete(id);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,88 @@
|
|||
package club.joylink.rtss.controller.racetr;
|
||||
|
||||
import club.joylink.rtss.services.race.RaceScoreRuleService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.race.RaceScoringRule.RaceScoringRuleListVO;
|
||||
import club.joylink.rtss.vo.race.RaceScoringRule.RaceScoringRuleVO;
|
||||
import club.joylink.rtss.vo.race.RaceScoringRule.Rule;
|
||||
import club.joylink.rtss.vo.race.TaskRuleQueryVO;
|
||||
import java.util.Map;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 竞赛-评分
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/exercise/race/score")
|
||||
public class RaceScoreRuleController {
|
||||
|
||||
@Autowired
|
||||
private RaceScoreRuleService scoreRuleService;
|
||||
|
||||
/**
|
||||
* 1.创建基础信息
|
||||
*
|
||||
* @param nameMap
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping
|
||||
public void saveBasic(@RequestBody Map<String, String> nameMap, @RequestAttribute AccountVO user) {
|
||||
this.scoreRuleService.saveBasic(nameMap.get("name"), user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 评分配置
|
||||
*
|
||||
* @param ruleId
|
||||
* @param rule
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping("/edit/rule/{ruleId}")
|
||||
public void editRule(@PathVariable("ruleId") Long ruleId, @RequestBody Rule rule, @RequestAttribute AccountVO user) {
|
||||
this.scoreRuleService.editRule(ruleId, rule, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 明细
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/{id}")
|
||||
public RaceScoringRuleVO detail(@PathVariable("id") Long id) {
|
||||
return this.scoreRuleService.detail(id);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 分页
|
||||
*
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/page")
|
||||
public PageVO<RaceScoringRuleListVO> page(TaskRuleQueryVO query) {
|
||||
return this.scoreRuleService.page(query);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*
|
||||
* @param id
|
||||
*/
|
||||
|
||||
@DeleteMapping("{id}")
|
||||
public void delete(@PathVariable("id") Long id) {
|
||||
this.scoreRuleService.delete(id);
|
||||
}
|
||||
|
||||
}
|
|
@ -0,0 +1,102 @@
|
|||
package club.joylink.rtss.controller.racetr;
|
||||
|
||||
|
||||
import club.joylink.rtss.services.race.RaceSeasonService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.race.RaceSeasonOuterClass.RaceSeasonCreateVO;
|
||||
import club.joylink.rtss.vo.race.RaceSeasonOuterClass.RaceSeasonVO;
|
||||
import club.joylink.rtss.vo.race.RaceSeasonQueryVO;
|
||||
import java.util.HashMap;
|
||||
import java.util.Map;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.util.StringUtils;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 竞赛-赛季管理
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/exercise/race/season")
|
||||
public class RaceSeasonController {
|
||||
|
||||
@Autowired
|
||||
private RaceSeasonService raceSeasonService;
|
||||
|
||||
/**
|
||||
* 添加
|
||||
*
|
||||
* @param dto
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping
|
||||
public void save(@RequestBody RaceSeasonCreateVO dto, @RequestAttribute AccountVO user) {
|
||||
this.raceSeasonService.save(dto, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改
|
||||
*
|
||||
* @param id
|
||||
* @param dto
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping("/{id}")
|
||||
public void update(@PathVariable("id") Long id, @RequestBody RaceSeasonCreateVO dto, @RequestAttribute AccountVO user) {
|
||||
this.raceSeasonService.update(id, dto, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 编辑html内容
|
||||
*
|
||||
* @param id
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping("/{id}/html")
|
||||
public void updateHtmlContent(@PathVariable("id") Long id, @RequestBody Map<String, String> contentMap, @RequestAttribute AccountVO user) {
|
||||
String content = contentMap.get("htmlContent");
|
||||
this.raceSeasonService.updateHtmlContent(id, content, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查找对应的html content
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/{id}/html")
|
||||
public Map<String, String> queryHtmlContent(@PathVariable("id") Long id) {
|
||||
String html = this.raceSeasonService.queryHtmlContent(id);
|
||||
return Map.of("html", StringUtils.hasText(html) ? html : "");
|
||||
|
||||
}
|
||||
|
||||
/**
|
||||
* 查找
|
||||
*
|
||||
* @param query
|
||||
* @return
|
||||
*/
|
||||
@GetMapping(value = "/page")
|
||||
public PageVO<RaceSeasonVO> page(RaceSeasonQueryVO query) {
|
||||
return raceSeasonService.page(query);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*
|
||||
* @param id
|
||||
*/
|
||||
//绑定过的数据不能删除,没有绑定的可以删除(物理删除)
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable("id") Long id) {
|
||||
this.raceSeasonService.delete(id);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,94 @@
|
|||
package club.joylink.rtss.controller.racetr;
|
||||
|
||||
import club.joylink.rtss.services.race.RaceTaskService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RaceTaskBind;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RaceTaskCreateVO;
|
||||
import club.joylink.rtss.vo.race.RaceTask.RaceTaskDetailVO;
|
||||
import club.joylink.rtss.vo.race.RaceTaskTreeVO;
|
||||
import java.util.List;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
@RestController
|
||||
@RequestMapping("/api/exercise/race/task")
|
||||
public class RaceTaskController {
|
||||
|
||||
@Autowired
|
||||
private RaceTaskService taskService;
|
||||
|
||||
/**
|
||||
* 创建任务并绑定对应的发布场景
|
||||
*
|
||||
* @param vo
|
||||
* @param user
|
||||
*/
|
||||
@PostMapping
|
||||
public void save(@RequestBody RaceTaskCreateVO vo, @RequestAttribute AccountVO user) {
|
||||
this.taskService.save(vo, user);
|
||||
}
|
||||
|
||||
@PostMapping("/{id}")
|
||||
public void update(@PathVariable("id") Long id, @RequestBody RaceTaskCreateVO vo,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.taskService.update(id, vo, user);
|
||||
}
|
||||
|
||||
@PostMapping("/{taskId}/bind")
|
||||
public void bind(@PathVariable("taskId") Long taskId, @RequestBody List<RaceTaskBind> bind,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.taskService.bind(taskId, bind, user);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 返回任务数据以"树"的结构
|
||||
*
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/tree")
|
||||
public List<RaceTaskTreeVO> tree() {
|
||||
return this.taskService.tree();
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除
|
||||
*
|
||||
* @param id
|
||||
*/
|
||||
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable("id") Long id) {
|
||||
this.taskService.delete(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取一个节点下的所有数据
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/{id}/children")
|
||||
public List<RaceTaskTreeVO> childList(@PathVariable("id") Long id) {
|
||||
return this.taskService.findChildren(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取一个节点的明细
|
||||
*
|
||||
* @param id
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/{id}")
|
||||
public RaceTaskDetailVO detail(@PathVariable("id") Long id) {
|
||||
return this.taskService.detail(id);
|
||||
}
|
||||
|
||||
}
|
|
@ -2,8 +2,10 @@ package club.joylink.rtss.controller.simulation;
|
|||
|
||||
import club.joylink.rtss.controller.advice.AuthenticateInterceptor;
|
||||
import club.joylink.rtss.simulation.cbtc.conversation.CommunicationObject;
|
||||
import club.joylink.rtss.simulation.cbtc.conversation.ConversationGroupHandlerService;
|
||||
import club.joylink.rtss.simulation.cbtc.conversation.ConversationManagerService;
|
||||
import club.joylink.rtss.simulation.cbtc.conversation.ConversationText;
|
||||
import club.joylink.rtss.simulation.cbtc.data.vo.ConversationGroupVO;
|
||||
import club.joylink.rtss.simulation.cbtc.data.vo.ConversationVO;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
|
@ -22,6 +24,9 @@ public class SimulationConversationController {
|
|||
@Autowired
|
||||
private ConversationManagerService conversationManagerService;
|
||||
|
||||
@Autowired
|
||||
private ConversationGroupHandlerService conversationGroupHandlerService;
|
||||
|
||||
/**
|
||||
*根据会话id获取仿真会话
|
||||
*/
|
||||
|
@ -100,4 +105,14 @@ public class SimulationConversationController {
|
|||
this.conversationManagerService.textChat(group, id, text, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取本仿真的用户群组信息
|
||||
*
|
||||
* @param group 仿真ID
|
||||
* @return 用户群组
|
||||
*/
|
||||
@GetMapping("/group/list")
|
||||
public List<ConversationGroupVO> groupList(@PathVariable String group, @RequestAttribute AccountVO user) {
|
||||
return conversationGroupHandlerService.getAllConversationsGroup(group, user);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -70,7 +70,8 @@ public class SimulationTrainingV2Controller {
|
|||
* 结束实训
|
||||
*/
|
||||
@PutMapping("/{group}/finish")
|
||||
public Double finishTraining2(@PathVariable String group, @RequestAttribute AccountVO user, @RequestBody List<PaperTrainAnswerDetail> scoreList) {
|
||||
public List<PaperTrainAnswerDetail> finishTraining2(@PathVariable String group, @RequestAttribute AccountVO user
|
||||
, @RequestBody List<PaperTrainAnswerDetail> scoreList) {
|
||||
return training2Service.finishTraining2(group, user, scoreList);
|
||||
}
|
||||
|
||||
|
@ -86,8 +87,8 @@ public class SimulationTrainingV2Controller {
|
|||
* 客户端步骤完成后操作回调
|
||||
*/
|
||||
@PutMapping("/{group}/completion/step/{stepId}/operation/{id}")
|
||||
public Integer completionClientStepOperation(@PathVariable String group, @PathVariable Integer stepId
|
||||
, @PathVariable Integer id, @RequestAttribute AccountVO user) {
|
||||
public Integer completionClientStepOperation(@PathVariable String group, @PathVariable Long stepId
|
||||
, @PathVariable Long id, @RequestAttribute AccountVO user) {
|
||||
return training2Service.completionClientStepOperation(group, stepId, id, user);
|
||||
}
|
||||
|
||||
|
@ -98,4 +99,24 @@ public class SimulationTrainingV2Controller {
|
|||
public void drawTraining(@PathVariable String group, @PathVariable Long trainingId) {
|
||||
training2Service.drawTraining(group, trainingId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 加载实训到第{stepId}步
|
||||
* @param group 仿真ID
|
||||
* @param stepId 步数ID
|
||||
*/
|
||||
@PutMapping("/{group}/jumpTo/{stepId}")
|
||||
public void jumpToStep(@PathVariable String group, @PathVariable Long stepId){
|
||||
training2Service.jumpToStep(group, stepId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 实训开始准备,给实训参与人员发送准备开始执行
|
||||
* @param group 仿真ID
|
||||
* @param user 操作人
|
||||
*/
|
||||
@PostMapping("/{group}/prepare/start")
|
||||
public void prepareStart(@PathVariable String group, @RequestAttribute AccountVO user, ScriptBO.Mode mode) {
|
||||
training2Service.prepareStart(group, user, mode);
|
||||
}
|
||||
}
|
||||
|
|
File diff suppressed because it is too large
Load Diff
|
@ -8,13 +8,12 @@ import club.joylink.rtss.services.training.ITrainingV1Service;
|
|||
import club.joylink.rtss.services.training.data.GenerateConfig;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingNewVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingQueryVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingStepVO;
|
||||
import club.joylink.rtss.vo.client.trainingUsage.UserTrainingListVO;
|
||||
import club.joylink.rtss.vo.client.trainingUsage.UserTrainingQueryVO;
|
||||
import club.joylink.rtss.vo.client.trainingUsage.UserTrainingVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingNewVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingQueryVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingResultVO;
|
||||
import club.joylink.rtss.vo.client.training.TrainingStepVO;
|
||||
import club.joylink.rtss.vo.client.validGroup.DraftTrainingCreateCheck;
|
||||
import club.joylink.rtss.vo.client.validGroup.DraftTrainingStepCheck;
|
||||
import club.joylink.rtss.vo.client.validGroup.GenerateConfigDeleteCheck;
|
||||
|
@ -22,7 +21,6 @@ import org.springframework.beans.factory.annotation.Autowired;
|
|||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.util.Map;
|
||||
import java.util.Set;
|
||||
|
||||
|
@ -113,28 +111,6 @@ public class TrainingV1Controller {
|
|||
this.iTrainingService.nextStep(id, group, step);
|
||||
}
|
||||
|
||||
/**
|
||||
*实训结束
|
||||
*/
|
||||
@GetMapping(path="/{lessonId}/{id}/end")
|
||||
public TrainingResultVO trainingEnd(@PathVariable Long lessonId, @PathVariable Long id, String group,
|
||||
@NotBlank String mode, @NotBlank String usedTime,
|
||||
@RequestAttribute AccountVO user) {
|
||||
return this.iTrainingService.trainingEnd(lessonId, id, group, mode, usedTime, user);
|
||||
}
|
||||
|
||||
// @ApiOperation(value = "清除实训数据")
|
||||
// @DeleteMapping(path = "/{id}")
|
||||
// public void clear(@PathVariable Long id) {
|
||||
// this.iTrainingService.clear(id);
|
||||
// }
|
||||
|
||||
// @ApiOperation(value = "删除实训")
|
||||
// @DeleteMapping(path = "/{trainingId}")
|
||||
// public void delTraining(@PathVariable String trainingId, @RequestAttribute UserVO user) {
|
||||
// iTrainingService.delTraining(trainingId, user);
|
||||
// }
|
||||
|
||||
/**
|
||||
*分页查询实训
|
||||
*/
|
||||
|
@ -143,12 +119,6 @@ public class TrainingV1Controller {
|
|||
return this.iTrainingService.pagedQueryTrainings(queryVO);
|
||||
}
|
||||
|
||||
// @ApiOperation(value = "自动生成实训")
|
||||
// @PostMapping(path = "/generate")
|
||||
// public void generateTrainingTask(@RequestBody @Validated(GenerateConfigCheck.class) GenerateConfig config) {
|
||||
// this.generateTask.execute(config);
|
||||
// }
|
||||
|
||||
/**
|
||||
*一键生成地图实训,生成中返回true
|
||||
*/
|
||||
|
|
|
@ -82,4 +82,12 @@ public class TrainingRuleController {
|
|||
return training2RuleService.generateTrainingByMapIdAndRuleId(mapRuleIdMap, loginUserInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 填充默认打分规则
|
||||
*/
|
||||
@PostMapping("fill/scoreRule")
|
||||
public void fillDefaultScoreRule() {
|
||||
training2RuleService.updateScoreRule();
|
||||
}
|
||||
|
||||
}
|
||||
|
|
|
@ -1,18 +1,38 @@
|
|||
package club.joylink.rtss.controller.training2;
|
||||
|
||||
import club.joylink.rtss.constants.BusinessConsts;
|
||||
import club.joylink.rtss.constants.RoleEnum;
|
||||
import club.joylink.rtss.controller.advice.AuthenticateInterceptor;
|
||||
import club.joylink.rtss.controller.advice.Role;
|
||||
import club.joylink.rtss.entity.training2.ExportTraining2;
|
||||
import club.joylink.rtss.entity.training2.PublishedTraining2;
|
||||
import club.joylink.rtss.services.training2.Training2DraftPublishService;
|
||||
import club.joylink.rtss.services.training2.Training2PublishService;
|
||||
import club.joylink.rtss.services.training2.Training2TypeEnum;
|
||||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.training2.publish.*;
|
||||
import club.joylink.rtss.vo.training2.publish.DeletePublishedTraining2ReqVo;
|
||||
import club.joylink.rtss.vo.training2.publish.DeletePublishedTraining2RspVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PublishedTraining2DetailRspVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PublishedTraining2InfoPageReqVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PublishedTraining2InfoRspVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PublishedTrainingListRspVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PullOffPublishedTraining2ReqVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PullOffPublishedTraining2RspVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PutOnPublishedTraining2ReqVo;
|
||||
import club.joylink.rtss.vo.training2.publish.PutOnPublishedTraining2RspVo;
|
||||
import java.util.List;
|
||||
import lombok.extern.slf4j.Slf4j;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 已发布实训管理接口
|
||||
|
@ -21,76 +41,171 @@ import java.util.List;
|
|||
@RestController
|
||||
@RequestMapping("/api/v2/training/published")
|
||||
public class TrainingV2PublishController {
|
||||
@Autowired
|
||||
private Training2PublishService publishService;
|
||||
|
||||
/**
|
||||
* 已发布实训分页列表
|
||||
*/
|
||||
@PostMapping("/page")
|
||||
public PageVO<PublishedTraining2InfoRspVo> publishedTrainingsPage(@RequestBody PublishedTraining2InfoPageReqVo req){
|
||||
return this.publishService.publishedTrainingsPage(req);
|
||||
}
|
||||
/**
|
||||
* 已发布实训上架
|
||||
*/
|
||||
@PostMapping("/put/on")
|
||||
public PutOnPublishedTraining2RspVo putOnPublishedTrainings(@RequestBody PutOnPublishedTraining2ReqVo req){
|
||||
return this.publishService.putOnPublishedTrainings(req);
|
||||
}
|
||||
/**
|
||||
* 已发布实训下架
|
||||
*/
|
||||
@PostMapping("/pull/off")
|
||||
public PullOffPublishedTraining2RspVo pullOffPublishedTrainings(@RequestBody PullOffPublishedTraining2ReqVo req){
|
||||
return this.publishService.pullOffPublishedTrainings(req);
|
||||
}
|
||||
/**
|
||||
* 删除已发布实训
|
||||
*/
|
||||
@DeleteMapping
|
||||
public DeletePublishedTraining2RspVo deletePublishedTrainings(@RequestBody DeletePublishedTraining2ReqVo req){
|
||||
return this.publishService.deletePublishedTrainings(req);
|
||||
}
|
||||
@Autowired
|
||||
private Training2PublishService publishService;
|
||||
|
||||
@Autowired
|
||||
private Training2DraftPublishService training2DraftPublishService;
|
||||
|
||||
/**
|
||||
* 已发布实训分页列表
|
||||
*/
|
||||
@PostMapping("/page")
|
||||
public PageVO<PublishedTraining2InfoRspVo> publishedTrainingsPage(
|
||||
@RequestBody PublishedTraining2InfoPageReqVo req) {
|
||||
return this.publishService.publishedTrainingsPage(req);
|
||||
}
|
||||
|
||||
/**
|
||||
* 已发布实训上架
|
||||
*/
|
||||
@PostMapping("/put/on")
|
||||
public PutOnPublishedTraining2RspVo putOnPublishedTrainings(
|
||||
@RequestBody PutOnPublishedTraining2ReqVo req,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
return this.publishService.putOnPublishedTrainings(req, userInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 已发布实训下架
|
||||
*/
|
||||
@PostMapping("/pull/off")
|
||||
public PullOffPublishedTraining2RspVo pullOffPublishedTrainings(
|
||||
@RequestBody PullOffPublishedTraining2ReqVo req,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
return this.publishService.pullOffPublishedTrainings(req, userInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 变更共享状态
|
||||
*
|
||||
* @param id
|
||||
* @param shared
|
||||
* @param userInfoVO
|
||||
*/
|
||||
@GetMapping("/{id}/{shared}")
|
||||
public void changeSharedStatus(@PathVariable(name = "id") Long id,
|
||||
@PathVariable(name = "shared") Integer shared,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
this.publishService.changeSharedStatus(id, shared, userInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除已发布实训
|
||||
*/
|
||||
@DeleteMapping
|
||||
public DeletePublishedTraining2RspVo deletePublishedTrainings(
|
||||
@RequestBody DeletePublishedTraining2ReqVo req,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
return this.publishService.deletePublishedTrainings(req, userInfoVO);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 实训查询(用户)管理
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/manage/infos")
|
||||
public PageVO<PublishedTraining2InfoRspVo> findTrainingListManageInfosForPage(@RequestBody PublishedTrainingListRspVo vo){
|
||||
return this.publishService.findTrainingInfoForPage(vo);
|
||||
}
|
||||
/**
|
||||
* 实训查询(用户)管理
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/manage/infos")
|
||||
public PageVO<PublishedTraining2InfoRspVo> findTrainingListManageInfosForPage(
|
||||
@RequestBody PublishedTrainingListRspVo vo,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
vo.setOrgId(userInfoVO.getTopOrgId());
|
||||
return this.publishService.findTrainingInfoForPage(vo, userInfoVO, true);
|
||||
}
|
||||
|
||||
/**
|
||||
* 实训查询
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/infos")
|
||||
public List<PublishedTraining2InfoRspVo> findTrainingListInfos(@RequestBody PublishedTrainingListRspVo vo
|
||||
,@RequestAttribute(name = AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO loginUserInfoVO){
|
||||
//只查询以上架
|
||||
vo.setState(1);
|
||||
vo.setOrgId(loginUserInfoVO.getTopOrgId());
|
||||
return this.publishService.findTrainingInfo(vo);
|
||||
}
|
||||
/**
|
||||
* 查所有的已发布场景实训的基础信息
|
||||
*/
|
||||
@Role(value = RoleEnum.SuperAdmin)
|
||||
@GetMapping("/list")
|
||||
public PageVO<PublishedTraining2InfoRspVo> findTrainingList(@ModelAttribute PublishedTrainingListRspVo vo){
|
||||
return this.publishService.findTrainingInfoForPage(vo);
|
||||
}
|
||||
/**
|
||||
* 实训查询
|
||||
*
|
||||
* @param vo
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("/infos")
|
||||
public List<PublishedTraining2InfoRspVo> findTrainingListInfos(
|
||||
@RequestBody PublishedTrainingListRspVo vo,
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO loginUserInfoVO) {
|
||||
//只查询以上架
|
||||
vo.setState(BusinessConsts.STATUS_USE_INT);
|
||||
vo.setOrgId(loginUserInfoVO.getTopOrgId());
|
||||
return this.publishService.findTrainingInfo(vo, loginUserInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据实训id查该已发布实训的所有信息
|
||||
*/
|
||||
@GetMapping("/{trainingId}")
|
||||
public PublishedTraining2DetailRspVo findTrainingAllInfo(@PathVariable("trainingId") Long trainingId){
|
||||
return this.publishService.findTrainingAllInfoById(trainingId);
|
||||
}
|
||||
/**
|
||||
* 查所有的已发布场景实训的基础信息
|
||||
*/
|
||||
@Role(value = RoleEnum.SuperAdmin)
|
||||
@GetMapping("/list")
|
||||
public PageVO<PublishedTraining2InfoRspVo> findTrainingList(
|
||||
@ModelAttribute PublishedTrainingListRspVo vo,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
return this.publishService.findTrainingInfoForPage(vo, userInfoVO, false);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据实训id查该已发布实训的所有信息
|
||||
*/
|
||||
@GetMapping("/{trainingId}")
|
||||
public PublishedTraining2DetailRspVo findTrainingAllInfo(
|
||||
@PathVariable("trainingId") Long trainingId) {
|
||||
return this.publishService.findTrainingAllInfoById(trainingId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新实训label
|
||||
*/
|
||||
@PutMapping("/update/label")
|
||||
public void updateTrainingLabel(@RequestBody PublishedTraining2 training2) {
|
||||
publishService.updateTrainingLabel(training2);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新发布实训信息
|
||||
*/
|
||||
@PutMapping("/update")
|
||||
public void updateTraining(@RequestBody PublishedTraining2 training2) {
|
||||
publishService.updateTrainingBaseInfo(training2);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* 批量更新实训label
|
||||
*/
|
||||
@PutMapping("/update/batch/label")
|
||||
public void updateTrainingLabelList(
|
||||
@RequestBody List<PublishedTraining2> publishedTraining2List) {
|
||||
publishService.updateTrainingLabelList(publishedTraining2List);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出所选实训
|
||||
*
|
||||
* @param tidList 实训ID列表
|
||||
* @return 实训详情信息
|
||||
*/
|
||||
@PostMapping("/export")
|
||||
public List<ExportTraining2> exportTraining(@RequestBody List<Long> tidList) {
|
||||
return publishService.exportTraining(tidList);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导入实训信息
|
||||
*
|
||||
* @return 导入结果
|
||||
*/
|
||||
@PostMapping("/import")
|
||||
public List<String> importTraining(@RequestBody List<ExportTraining2> trainingList,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
return publishService.importTraining(trainingList, userInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 保存为草稿
|
||||
*/
|
||||
@PostMapping("/{trainingId}/saveAsDraft")
|
||||
public void saveAsDraft(@PathVariable("trainingId") Long trainingId,
|
||||
@RequestAttribute(AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
training2DraftPublishService.saveAsDraft(trainingId, userInfoVO);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -4,15 +4,25 @@ import club.joylink.rtss.services.ISysUserService;
|
|||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.UserQueryVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.client.user.*;
|
||||
import club.joylink.rtss.vo.client.user.MobileInfoVO;
|
||||
import club.joylink.rtss.vo.client.user.RetrievePwdVO;
|
||||
import club.joylink.rtss.vo.client.user.UpdateEmailVO;
|
||||
import club.joylink.rtss.vo.client.user.UpdateMobileVO;
|
||||
import club.joylink.rtss.vo.client.user.UpdatePasswordVO;
|
||||
import club.joylink.rtss.vo.user.AccountCreateVO;
|
||||
import club.joylink.rtss.vo.user.AccountRegisterVO;
|
||||
import club.joylink.rtss.vo.user.UserRegisterCheck;
|
||||
import java.util.List;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RequestParam;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 系统账户接口
|
||||
|
@ -21,165 +31,186 @@ import java.util.List;
|
|||
@RequestMapping("/api/userinfo")
|
||||
public class SysAccountController {
|
||||
|
||||
@Autowired
|
||||
private ISysUserService iSysUserService;
|
||||
@Autowired
|
||||
private ISysUserService iSysUserService;
|
||||
|
||||
@PostMapping("/register")
|
||||
public void register(@RequestBody @Validated(value = UserRegisterCheck.class) AccountCreateVO accountCreateVO) {
|
||||
this.iSysUserService.register(accountCreateVO);
|
||||
}
|
||||
@PostMapping("/register")
|
||||
public void register(
|
||||
@RequestBody @Validated(value = UserRegisterCheck.class) AccountCreateVO accountCreateVO) {
|
||||
this.iSysUserService.register(accountCreateVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 新注册接口
|
||||
*/
|
||||
@PostMapping("/register2")
|
||||
public void register2(@RequestBody @Validated AccountRegisterVO registerVO) {
|
||||
this.iSysUserService.register2(registerVO);
|
||||
}
|
||||
/**
|
||||
* 新注册接口
|
||||
*/
|
||||
@PostMapping("/register2")
|
||||
public void register2(@RequestBody @Validated AccountRegisterVO registerVO) {
|
||||
this.iSysUserService.register2(registerVO);
|
||||
}
|
||||
|
||||
/**
|
||||
*根据姓名或电话号查询用户
|
||||
*/
|
||||
@GetMapping(path="/nameOrMobile")
|
||||
public List<AccountVO> queryUserByNameOrMobile(String query) {
|
||||
List<AccountVO> list = this.iSysUserService.queryUserByNameOrMobile(query);
|
||||
return list;
|
||||
}
|
||||
/**
|
||||
* 根据姓名或电话号查询用户
|
||||
*/
|
||||
@GetMapping(path = "/nameOrMobile")
|
||||
public List<AccountVO> queryUserByNameOrMobile(String query) {
|
||||
List<AccountVO> list = this.iSysUserService.queryUserByNameOrMobile(query);
|
||||
return list;
|
||||
}
|
||||
|
||||
/**
|
||||
* 手机号是否已经注册
|
||||
*/
|
||||
@GetMapping("/isExist/mobile")
|
||||
public boolean isMobileExist(String mobile) {
|
||||
return iSysUserService.isSameMobileExist(mobile);
|
||||
}
|
||||
/**
|
||||
* 手机号是否已经注册
|
||||
*/
|
||||
@GetMapping("/isExist/mobile")
|
||||
public boolean isMobileExist(String mobile) {
|
||||
return iSysUserService.isSameMobileExist(mobile);
|
||||
}
|
||||
|
||||
/**
|
||||
* 邮箱是否已经注册
|
||||
*/
|
||||
@GetMapping("/isExist/email")
|
||||
public boolean isEmailExist(String email) {
|
||||
return iSysUserService.isSameEmailExist(email);
|
||||
}
|
||||
/**
|
||||
* 邮箱是否已经注册
|
||||
*/
|
||||
@GetMapping("/isExist/email")
|
||||
public boolean isEmailExist(String email) {
|
||||
return iSysUserService.isSameEmailExist(email);
|
||||
}
|
||||
|
||||
/**
|
||||
*根据用户id获取用户信息
|
||||
*/
|
||||
@GetMapping(path = "/{id}")
|
||||
public AccountVO getUserBaseInfoById(@PathVariable Long id) {
|
||||
return this.iSysUserService.getUserBaseInfoById(id);
|
||||
}
|
||||
/**
|
||||
* 根据用户id获取用户信息
|
||||
*/
|
||||
@GetMapping(path = "/{id}")
|
||||
public AccountVO getUserBaseInfoById(@PathVariable Long id) {
|
||||
return this.iSysUserService.getUserBaseInfoById(id);
|
||||
}
|
||||
|
||||
/**
|
||||
*修改用户信息
|
||||
*/
|
||||
@PutMapping(path = "/{id}")
|
||||
public void modify(@PathVariable Long id, @RequestBody AccountVO userInfo, String vdcode) {
|
||||
this.iSysUserService.modify(id, userInfo, vdcode);
|
||||
}
|
||||
/**
|
||||
* 修改用户信息
|
||||
*/
|
||||
@PutMapping(path = "/{id}")
|
||||
public void modify(@PathVariable Long id, @RequestBody AccountVO userInfo, String vdcode) {
|
||||
this.iSysUserService.modify(id, userInfo, vdcode);
|
||||
}
|
||||
|
||||
/**
|
||||
*微信关注事件
|
||||
*/
|
||||
@GetMapping(path = "/wxsubscribe")
|
||||
public void wxSubscribe(@RequestParam String wxId) {
|
||||
iSysUserService.wxSubscribeEventHandle(wxId);
|
||||
}
|
||||
/**
|
||||
* 微信关注事件
|
||||
*/
|
||||
@GetMapping(path = "/wxsubscribe")
|
||||
public void wxSubscribe(@RequestParam String wxId) {
|
||||
iSysUserService.wxSubscribeEventHandle(wxId);
|
||||
}
|
||||
|
||||
/**
|
||||
*批量修改用户的openId为unionId
|
||||
*/
|
||||
@PutMapping(path = "/batchchange/unionid")
|
||||
public void batchChangeOpenId2UnionId() {
|
||||
this.iSysUserService.batchChangeOpenId2UnionId();
|
||||
}
|
||||
/**
|
||||
* 批量修改用户的openId为unionId
|
||||
*/
|
||||
@PutMapping(path = "/batchchange/unionid")
|
||||
public void batchChangeOpenId2UnionId() {
|
||||
this.iSysUserService.batchChangeOpenId2UnionId();
|
||||
}
|
||||
|
||||
/**
|
||||
*更新用户真实姓名
|
||||
*/
|
||||
@PutMapping(path = "/{id}/name")
|
||||
public void updateName(@PathVariable Long id, String name) {
|
||||
this.iSysUserService.updateUserName(id, name);
|
||||
}
|
||||
/**
|
||||
* 更新用户真实姓名
|
||||
*/
|
||||
@PutMapping(path = "/{id}/name")
|
||||
public void updateName(@PathVariable Long id, String name) {
|
||||
this.iSysUserService.updateUserName(id, name);
|
||||
}
|
||||
|
||||
/**
|
||||
*更新用户昵称
|
||||
*/
|
||||
@PutMapping(path = "/{id}/nickname")
|
||||
public void updateNickname(@PathVariable Long id, String nickname) {
|
||||
this.iSysUserService.updateNickname(id, nickname);
|
||||
}
|
||||
/**
|
||||
* 更新用户昵称
|
||||
*/
|
||||
@PutMapping(path = "/{id}/nickname")
|
||||
public void updateNickname(@PathVariable Long id, String nickname) {
|
||||
this.iSysUserService.updateNickname(id, nickname);
|
||||
}
|
||||
|
||||
/**
|
||||
*用户上传头像
|
||||
*/
|
||||
@PostMapping(path = "/{id}/avatar")
|
||||
public void uploadAvatar(@PathVariable Long id, @RequestBody AccountVO accountVO) {
|
||||
this.iSysUserService.updateAvatar(id, accountVO.getAvatarPath());
|
||||
}
|
||||
/**
|
||||
* 用户上传头像
|
||||
*/
|
||||
@PostMapping(path = "/{id}/avatar")
|
||||
public void uploadAvatar(@PathVariable Long id, @RequestBody AccountVO accountVO) {
|
||||
this.iSysUserService.updateAvatar(id, accountVO.getAvatarPath());
|
||||
}
|
||||
|
||||
/**
|
||||
*发送手机验证码
|
||||
*/
|
||||
@PostMapping(path = "/mobile/code")
|
||||
public String sendMobileValidCode(@RequestBody MobileInfoVO mobileInfoVO) {
|
||||
return this.iSysUserService.sendMobileValidCode(mobileInfoVO);
|
||||
}
|
||||
/**
|
||||
* 发送手机验证码
|
||||
*/
|
||||
@PostMapping(path = "/mobile/code")
|
||||
public String sendMobileValidCode(@RequestBody MobileInfoVO mobileInfoVO) {
|
||||
return this.iSysUserService.sendMobileValidCode(mobileInfoVO);
|
||||
}
|
||||
|
||||
/**
|
||||
*发送邮箱验证码
|
||||
*/
|
||||
@PostMapping(path = "/email/code")
|
||||
public String sendEmailValidCode(String email) {
|
||||
return this.iSysUserService.sendEmailValidCode(email);
|
||||
}
|
||||
/**
|
||||
* 发送邮箱验证码
|
||||
*/
|
||||
@PostMapping(path = "/email/code")
|
||||
public String sendEmailValidCode(String email) {
|
||||
return this.iSysUserService.sendEmailValidCode(email);
|
||||
}
|
||||
|
||||
/**
|
||||
*更新用户手机号
|
||||
*/
|
||||
@PutMapping(path = "/{id}/mobile")
|
||||
public void updateMobile(@PathVariable Long id, @RequestBody @Validated UpdateMobileVO updateMobileVO) {
|
||||
this.iSysUserService.updateMobile(id, updateMobileVO);
|
||||
}
|
||||
/**
|
||||
* 更新用户手机号
|
||||
*/
|
||||
@PutMapping(path = "/{id}/mobile")
|
||||
public void updateMobile(@PathVariable Long id,
|
||||
@RequestBody @Validated UpdateMobileVO updateMobileVO) {
|
||||
this.iSysUserService.updateMobile(id, updateMobileVO);
|
||||
}
|
||||
|
||||
/**
|
||||
*更新用户邮箱
|
||||
*/
|
||||
@PutMapping(path = "/{id}/email")
|
||||
public void updateEmail(@PathVariable Long id, @RequestBody @Validated UpdateEmailVO updateEmailVO) {
|
||||
this.iSysUserService.updateEmail(id, updateEmailVO);
|
||||
}
|
||||
/**
|
||||
* 更新用户邮箱
|
||||
*/
|
||||
@PutMapping(path = "/{id}/email")
|
||||
public void updateEmail(@PathVariable Long id,
|
||||
@RequestBody @Validated UpdateEmailVO updateEmailVO) {
|
||||
this.iSysUserService.updateEmail(id, updateEmailVO);
|
||||
}
|
||||
|
||||
/**
|
||||
*更新用户登陆密码
|
||||
*/
|
||||
@PutMapping(path = "/{id}/password")
|
||||
public void updatePassword(@PathVariable Long id, @RequestBody @Validated UpdatePasswordVO updatePasswordVO) {
|
||||
this.iSysUserService.updatePassword(id, updatePasswordVO);
|
||||
}
|
||||
/**
|
||||
* 更新用户登陆密码
|
||||
*/
|
||||
@PutMapping(path = "/{id}/password")
|
||||
public void updatePassword(@PathVariable Long id,
|
||||
@RequestBody @Validated UpdatePasswordVO updatePasswordVO) {
|
||||
this.iSysUserService.updatePassword(id, updatePasswordVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 按条件分页查询指定来源的账号
|
||||
*/
|
||||
@GetMapping("/page/criteria/{source}")
|
||||
public PageVO<AccountVO> queryPagedAccountOfTheSource(UserQueryVO queryVO, @PathVariable String source) {
|
||||
queryVO.setSource(source);
|
||||
return this.iSysUserService.queryPagedUser(queryVO);
|
||||
}
|
||||
/**
|
||||
* 按条件分页查询指定来源的账号
|
||||
*/
|
||||
@GetMapping("/page/criteria/{source}")
|
||||
public PageVO<AccountVO> queryPagedAccountOfTheSource(UserQueryVO queryVO,
|
||||
@PathVariable String source) {
|
||||
queryVO.setSource(source);
|
||||
return this.iSysUserService.queryPagedUser(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 超管重置用户密码
|
||||
*/
|
||||
@PutMapping("/{id}/reset/pwd")
|
||||
public void resetPwd(@PathVariable long id) {
|
||||
iSysUserService.resetPwd(id);
|
||||
}
|
||||
/**
|
||||
* 超管重置用户密码
|
||||
*/
|
||||
@PutMapping("/{id}/reset/pwd")
|
||||
public void resetPwd(@PathVariable long id) {
|
||||
iSysUserService.resetPwd(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 找回密码
|
||||
*/
|
||||
@PutMapping("/retrieve/pwd")
|
||||
public void retrievePwd(@RequestBody @Validated RetrievePwdVO vo) {
|
||||
iSysUserService.retrievePwd(vo);
|
||||
}
|
||||
/**
|
||||
* 找回密码
|
||||
*/
|
||||
@PutMapping("/retrieve/pwd")
|
||||
public void retrievePwd(@RequestBody @Validated RetrievePwdVO vo) {
|
||||
iSysUserService.retrievePwd(vo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 根据用户id列表获取用户信息
|
||||
*/
|
||||
@PostMapping("/list/ids")
|
||||
public List<AccountVO> listByIds(@RequestBody List<Long> ids) {
|
||||
return iSysUserService.listByIds(ids);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询所有用户
|
||||
*/
|
||||
@GetMapping("/list/all")
|
||||
public List<AccountVO> listAll() {
|
||||
return iSysUserService.listAll();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -6,7 +6,6 @@ import club.joylink.rtss.services.ISysUserService;
|
|||
import club.joylink.rtss.services.local.UserGenerateService;
|
||||
import club.joylink.rtss.services.permission.OldPermissionDataSyncService;
|
||||
import club.joylink.rtss.services.student.IDepartUserStatisticService;
|
||||
import club.joylink.rtss.util.VoiceFileUtils;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.UserQueryVO;
|
||||
|
@ -17,18 +16,19 @@ import club.joylink.rtss.vo.client.user.WeChatBindStatusVO;
|
|||
import club.joylink.rtss.vo.user.AccountCreateVO;
|
||||
import club.joylink.rtss.vo.user.CreateAccountCheck;
|
||||
import club.joylink.rtss.vo.user.UserGenerateConfigVO;
|
||||
import com.google.common.collect.Lists;
|
||||
import org.apache.tomcat.util.http.fileupload.FileUtils;
|
||||
import java.util.List;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import javax.servlet.http.HttpServletResponse;
|
||||
import javax.validation.constraints.NotBlank;
|
||||
import java.io.*;
|
||||
import java.util.List;
|
||||
import java.util.Objects;
|
||||
import org.springframework.web.bind.annotation.DeleteMapping;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.PutMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 用户配置接口
|
||||
|
@ -37,136 +37,135 @@ import java.util.Objects;
|
|||
@RequestMapping("/api/user")
|
||||
public class UserController {
|
||||
|
||||
@Autowired
|
||||
private ISysUserService iSysUserService;
|
||||
@Autowired
|
||||
private ISysUserService iSysUserService;
|
||||
|
||||
@Autowired
|
||||
private UserGenerateService userGenerateService;
|
||||
@Autowired
|
||||
private UserGenerateService userGenerateService;
|
||||
|
||||
@Autowired
|
||||
private IDepartUserStatisticService iDepartUserStatisticService;
|
||||
@Autowired
|
||||
private IDepartUserStatisticService iDepartUserStatisticService;
|
||||
|
||||
@Autowired
|
||||
private OldPermissionDataSyncService syncService;
|
||||
/**
|
||||
*生成线下环境用户
|
||||
*/
|
||||
@Role({RoleEnum.SuperAdmin})
|
||||
@PostMapping(path = "/generate/offline")
|
||||
public void generateOfflineUsers(@RequestBody @Validated UserGenerateConfigVO generateConfigVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.userGenerateService.generateOfflineUser(generateConfigVO, user);
|
||||
}
|
||||
@Autowired
|
||||
private OldPermissionDataSyncService syncService;
|
||||
|
||||
@Role({RoleEnum.SuperAdmin, RoleEnum.Admin})
|
||||
@PostMapping(path = "")
|
||||
public void createAccount(@RequestBody @Validated(CreateAccountCheck.class) AccountCreateVO accountCreateVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.iSysUserService.createAccount(accountCreateVO, user);
|
||||
}
|
||||
@Role({RoleEnum.SuperAdmin, RoleEnum.Admin})
|
||||
@GetMapping(path = "sync")
|
||||
public List<String> sync(){
|
||||
if(!this.syncService.initData()){
|
||||
throw new RuntimeException("正在同步。。。");
|
||||
}
|
||||
return this.syncService.sync();
|
||||
}
|
||||
/**
|
||||
*分页获取用户数据
|
||||
*/
|
||||
@Role({RoleEnum.Admin, RoleEnum.SuperAdmin})
|
||||
@GetMapping(path = "")
|
||||
public PageVO<AccountVO> queryPagedUser(UserQueryVO queryVO) {
|
||||
return this.iSysUserService.queryPagedUser(queryVO);
|
||||
}
|
||||
/**
|
||||
* 生成线下环境用户
|
||||
*/
|
||||
@Role({RoleEnum.SuperAdmin})
|
||||
@PostMapping(path = "/generate/offline")
|
||||
public void generateOfflineUsers(@RequestBody @Validated UserGenerateConfigVO generateConfigVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.userGenerateService.generateOfflineUser(generateConfigVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
*修改用户角色
|
||||
*/
|
||||
@Role(RoleEnum.SuperAdmin)
|
||||
@PutMapping(path = "/{id}/role")
|
||||
public void updateUserRole(@PathVariable Long id, @RequestBody AccountVO accountVO, @RequestAttribute AccountVO user) {
|
||||
this.iSysUserService.updateUserRole(id, user.getId(), accountVO);
|
||||
}
|
||||
@Role({RoleEnum.SuperAdmin, RoleEnum.Admin})
|
||||
@PostMapping(path = "")
|
||||
public void createAccount(
|
||||
@RequestBody @Validated(CreateAccountCheck.class) AccountCreateVO accountCreateVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.iSysUserService.createAccount(accountCreateVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
*超管修改用户信息
|
||||
*/
|
||||
@Role(RoleEnum.SuperAdmin)
|
||||
@PutMapping("/superAdmin/update/userInfo")
|
||||
public void superAdminUpdateUserInfo(@RequestBody AccountVO updateUser, @RequestAttribute AccountVO user) {
|
||||
iSysUserService.superAdminUpdateUserInfo(updateUser, user);
|
||||
}
|
||||
/**
|
||||
* 分页获取用户数据
|
||||
*/
|
||||
@Role({RoleEnum.Admin, RoleEnum.SuperAdmin})
|
||||
@GetMapping(path = "")
|
||||
public PageVO<AccountVO> queryPagedUser(UserQueryVO queryVO) {
|
||||
return this.iSysUserService.queryPagedUser(queryVO);
|
||||
}
|
||||
|
||||
@Role(RoleEnum.SuperAdmin)
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable Long id) {
|
||||
this.iSysUserService.logicDelete(id);
|
||||
}
|
||||
/**
|
||||
* 修改用户角色
|
||||
*/
|
||||
@Role(RoleEnum.SuperAdmin)
|
||||
@PutMapping(path = "/{id}/role")
|
||||
public void updateUserRole(@PathVariable Long id, @RequestBody AccountVO accountVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.iSysUserService.updateUserRole(id, user.getId(), accountVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 修改用户密码
|
||||
*/
|
||||
@PutMapping(path = "/{id}/password")
|
||||
public void updateUserPassword(@PathVariable Long id, @RequestBody AccountVO accountVO, @RequestAttribute AccountVO user) {
|
||||
this.iSysUserService.updateUserPassword(id, accountVO.getPassword());
|
||||
}
|
||||
/**
|
||||
* 超管修改用户信息
|
||||
*/
|
||||
@Role(RoleEnum.SuperAdmin)
|
||||
@PutMapping("/superAdmin/update/userInfo")
|
||||
public void superAdminUpdateUserInfo(@RequestBody AccountVO updateUser,
|
||||
@RequestAttribute AccountVO user) {
|
||||
iSysUserService.superAdminUpdateUserInfo(updateUser, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取微信小程序绑定二维码
|
||||
*/
|
||||
@GetMapping(path = "/bind/wm/url")
|
||||
public WeChatBindStatusVO getWeChatBindUrl(@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
return this.iSysUserService.getWeChatBindUrl(loginInfo);
|
||||
}
|
||||
@Role(RoleEnum.SuperAdmin)
|
||||
@DeleteMapping("/{id}")
|
||||
public void delete(@PathVariable Long id) {
|
||||
this.iSysUserService.logicDelete(id);
|
||||
}
|
||||
|
||||
/**
|
||||
* 用户绑定微信小程序
|
||||
*/
|
||||
@PutMapping(path = "/bind/wm")
|
||||
public void userBindWm(String code, Long userId) {
|
||||
this.iSysUserService.userBindWm(code, userId);
|
||||
}
|
||||
/**
|
||||
* 修改用户密码
|
||||
*/
|
||||
@PutMapping(path = "/{id}/password")
|
||||
public void updateUserPassword(@PathVariable Long id, @RequestBody AccountVO accountVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
this.iSysUserService.updateUserPassword(id, accountVO.getPassword());
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取用户总数量
|
||||
*/
|
||||
@GetMapping(path = "/amount")
|
||||
public int getUserAmount() {
|
||||
return iSysUserService.getUserAmount();
|
||||
}
|
||||
/**
|
||||
* 获取微信小程序绑定二维码
|
||||
*/
|
||||
@GetMapping(path = "/bind/wm/url")
|
||||
public WeChatBindStatusVO getWeChatBindUrl(@RequestAttribute LoginUserInfoVO loginInfo) {
|
||||
return this.iSysUserService.getWeChatBindUrl(loginInfo);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页获取用户数据(模糊查询)
|
||||
*/
|
||||
@GetMapping(path = "/fuzzy")
|
||||
public List<AccountVO> fuzzyQueryPagedUser(@NotBlank(message = "参数不能为空") String fuzzyParam) {
|
||||
return this.iSysUserService.fuzzyQueryPagedUser(fuzzyParam);
|
||||
}
|
||||
/**
|
||||
* 用户绑定微信小程序
|
||||
*/
|
||||
@PutMapping(path = "/bind/wm")
|
||||
public void userBindWm(String code, Long userId) {
|
||||
this.iSysUserService.userBindWm(code, userId);
|
||||
}
|
||||
|
||||
/**
|
||||
* 导出部门学生信息及成绩接口
|
||||
*/
|
||||
@PutMapping(path = "/scores")
|
||||
public List<ExportStudentInfo> getStudentSores(@Validated @RequestBody StudentInfoExportParam infoExportParam) {
|
||||
return this.iDepartUserStatisticService.studentInfoStatistics(infoExportParam);
|
||||
}
|
||||
/**
|
||||
* 获取用户总数量
|
||||
*/
|
||||
@GetMapping(path = "/amount")
|
||||
public int getUserAmount() {
|
||||
return iSysUserService.getUserAmount();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询销售人员
|
||||
*/
|
||||
@GetMapping("/seller")
|
||||
public List<AccountVO> querySellers() {
|
||||
return iSysUserService.querySellers();
|
||||
}
|
||||
/**
|
||||
* 分页获取用户数据(模糊查询)
|
||||
*/
|
||||
@GetMapping(path = "/fuzzy")
|
||||
public List<AccountVO> fuzzyQueryPagedUser(@NotBlank(message = "参数不能为空") String fuzzyParam) {
|
||||
return this.iSysUserService.fuzzyQueryPagedUser(fuzzyParam);
|
||||
}
|
||||
|
||||
/**
|
||||
*查询管理和超管
|
||||
*/
|
||||
@Role({RoleEnum.Admin, RoleEnum.SuperAdmin})
|
||||
@GetMapping("/adminAndSuperAdmin")
|
||||
public List<AccountVO> queryAdminsAndSuperAdmins() {
|
||||
return iSysUserService.queryAdminsAndSuperAdmins();
|
||||
}
|
||||
/**
|
||||
* 导出部门学生信息及成绩接口
|
||||
*/
|
||||
@PutMapping(path = "/scores")
|
||||
public List<ExportStudentInfo> getStudentSores(
|
||||
@Validated @RequestBody StudentInfoExportParam infoExportParam) {
|
||||
return this.iDepartUserStatisticService.studentInfoStatistics(infoExportParam);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询销售人员
|
||||
*/
|
||||
@GetMapping("/seller")
|
||||
public List<AccountVO> querySellers() {
|
||||
return iSysUserService.querySellers();
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询管理和超管
|
||||
*/
|
||||
@Role({RoleEnum.Admin, RoleEnum.SuperAdmin})
|
||||
@GetMapping("/adminAndSuperAdmin")
|
||||
public List<AccountVO> queryAdminsAndSuperAdmins() {
|
||||
return iSysUserService.queryAdminsAndSuperAdmins();
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,49 @@
|
|||
package club.joylink.rtss.controller.user;
|
||||
|
||||
import club.joylink.rtss.services.user.UserSimulationRecordService;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.client.simulationUsage.UserSimulationQueryVO;
|
||||
import club.joylink.rtss.vo.client.simulationUsage.UserSimulationRecordVO;
|
||||
import club.joylink.rtss.vo.client.simulationUsage.UserSimulationStatsVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* 用户使用记录管理接口
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping(path = "/api/record")
|
||||
public class UserUsageRecordController {
|
||||
@Autowired
|
||||
private UserSimulationRecordService userSimulationRecordService;
|
||||
|
||||
/**
|
||||
* 列表查询用户使用记录统计
|
||||
*/
|
||||
@GetMapping("/stats/list/criteria/{userId}")
|
||||
public List<UserSimulationStatsVO> listSimulationUsageStats(@PathVariable long userId, UserSimulationQueryVO queryVO) {
|
||||
return userSimulationRecordService.listSimulationUsageStats(userId, queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询项目下所有地图的仿真使用统计
|
||||
*/
|
||||
@GetMapping("/stats/list/criteria/project/{projectCode}")
|
||||
public List<UserSimulationStatsVO> listSimulationUsageStats(@PathVariable String projectCode, UserSimulationQueryVO queryVO) {
|
||||
return userSimulationRecordService.listSimulationUsageStats(projectCode, queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询仿真使用记录
|
||||
*/
|
||||
@GetMapping("/page/criteria/{accountSource}")
|
||||
public PageVO<UserSimulationRecordVO> pagedQuerySimulationRecord(@PathVariable String accountSource, UserSimulationQueryVO queryVO) {
|
||||
return userSimulationRecordService.pagedQueryUserSimulationRecord(accountSource, queryVO);
|
||||
}
|
||||
}
|
||||
|
|
@ -1,180 +0,0 @@
|
|||
package club.joylink.rtss.controller.user;
|
||||
|
||||
import club.joylink.rtss.constants.RoleEnum;
|
||||
import club.joylink.rtss.controller.advice.Role;
|
||||
import club.joylink.rtss.services.IUserUsageStatsService;
|
||||
import club.joylink.rtss.services.user.IUserSimulationStatService;
|
||||
import club.joylink.rtss.vo.AccountVO;
|
||||
import club.joylink.rtss.vo.client.*;
|
||||
import club.joylink.rtss.vo.client.simulationUsage.*;
|
||||
import club.joylink.rtss.vo.client.trainingUsage.UserTrainingRecordVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.validation.annotation.Validated;
|
||||
import org.springframework.web.bind.annotation.*;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
*用户使用数据统计接口
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping(path = "/api/stats")
|
||||
public class UserUsageStatsController {
|
||||
|
||||
@Autowired
|
||||
private IUserUsageStatsService iUserUsageStatsService;
|
||||
|
||||
@Autowired
|
||||
private IUserSimulationStatService iUserSimulationStatService;
|
||||
|
||||
/**
|
||||
* 课程列表
|
||||
*/
|
||||
@GetMapping(path = "/lesson/list")
|
||||
public List<UserRankStatsVO> queryLessonList(@RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.queryLessonList(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 课程统计排名
|
||||
*/
|
||||
@GetMapping(path = "/lesson/{lessonId}/rank")
|
||||
public List<UserRankStatsVO> lessonRank(@PathVariable Long lessonId, @RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.lessonRank(lessonId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 个人课程实训数据统计
|
||||
*/
|
||||
@GetMapping(path = "/lesson/{lessonId}/stats")
|
||||
public List<UserRankStatsVO> lessonPersonalStats(@PathVariable Long lessonId, @RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.personalLessonStats(lessonId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询参与考试的课程列表
|
||||
*/
|
||||
@GetMapping(path = "/exam/lessonList")
|
||||
public List<UserRankStatsVO> queryExamLessonList(@RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.queryExamLessonList(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询参与考试的试题列表
|
||||
*/
|
||||
@GetMapping(path = "/exam/{lessonId}/list")
|
||||
public List<UserRankStatsVO> queryExamList(@PathVariable Long lessonId, @RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.queryExamList(lessonId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 考试排名
|
||||
*/
|
||||
@GetMapping(path = "/exam/{examId}/rank")
|
||||
public List<UserRankStatsVO> examRank(@PathVariable long examId, @RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.examRank(examId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 个人考试数据统计
|
||||
*/
|
||||
@GetMapping(path = "/exam/{examId}/stats")
|
||||
public List<UserRankStatsVO> examPersonalStats(@PathVariable long examId, @RequestAttribute AccountVO user) {
|
||||
return this.iUserUsageStatsService.examPersonalStats(examId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询参与仿真的地图列表
|
||||
*/
|
||||
@GetMapping(path = "/simulation/mapList")
|
||||
public List<UserRankStatsVO> querySimulationMapList(@RequestAttribute AccountVO user) {
|
||||
return iUserSimulationStatService.querySimulationMapList(user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询参与仿真的产品列表
|
||||
*/
|
||||
@GetMapping(path = "/simulation/{mapId}/prdList")
|
||||
public List<UserRankStatsVO> querySimulationPrdList(@PathVariable Long mapId, @RequestAttribute AccountVO user) {
|
||||
return iUserSimulationStatService.querySimulationPrdList(mapId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 仿真时长排名
|
||||
*/
|
||||
@GetMapping(path = "/simulation/{mapId}/{prdType}/rank")
|
||||
public List<UserRankStatsVO> simulationRank(@PathVariable Long mapId, @PathVariable String prdType, @RequestAttribute AccountVO user) {
|
||||
return iUserSimulationStatService.simulationRank(mapId, prdType, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 个人仿真数据统计
|
||||
*/
|
||||
@GetMapping(path = "/simulation/{mapId}/stats")
|
||||
public List<UserRankStatsVO> simulationPersonalStats(@PathVariable Long mapId, @RequestAttribute AccountVO user) {
|
||||
return iUserSimulationStatService.simulationPersonalStats(mapId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 统计各系统总时长
|
||||
*/
|
||||
@GetMapping(path = "/total")
|
||||
public List<UsageTotalStatsVO> totalSimulationDuration(boolean filter) {
|
||||
return iUserUsageStatsService.totalDuration(filter);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询用户仿真数据
|
||||
*/
|
||||
@GetMapping("/simulation")
|
||||
public PageVO<UserSimulationStatsListVO> queryPagedStats(UserSimulationStatsQueryVO queryVO) {
|
||||
return iUserSimulationStatService.queryPagedStats(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 添加用户仿真数据
|
||||
*/
|
||||
@Role(value = {RoleEnum.SuperAdmin, RoleEnum.Admin})
|
||||
@PostMapping(path = "/simulation")
|
||||
public void addUserSimulationStats(@RequestBody @Validated UserSimulationStatsVO statsVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
iUserSimulationStatService.addUserSimulationStats(statsVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 更新用户仿真数据
|
||||
*/
|
||||
@Role(value = {RoleEnum.SuperAdmin, RoleEnum.Admin})
|
||||
@PutMapping(path = "/{statsId}")
|
||||
public void updateUserSimulationStats(@PathVariable Long statsId,
|
||||
@RequestBody UserSimulationStatsVO statsVO,
|
||||
@RequestAttribute AccountVO user) {
|
||||
iUserSimulationStatService.updateUserSimulationStats(statsId, statsVO, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 删除用户仿真数据
|
||||
*/
|
||||
@Role(value = {RoleEnum.SuperAdmin, RoleEnum.Admin})
|
||||
@DeleteMapping(path = "/{statsId}")
|
||||
public void deleteUserSimulationStats(@PathVariable Long statsId, @RequestAttribute AccountVO user) {
|
||||
iUserSimulationStatService.deleteUserSimulationStats(statsId, user);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询仿真使用记录
|
||||
*/
|
||||
@GetMapping("/simulation/page/criteria/{accountSource}")
|
||||
public PageVO<UserSimulationRecordVO> pagedQuerySimulationRecord(@PathVariable String accountSource, UserSimulationQueryVO queryVO) {
|
||||
return iUserSimulationStatService.pagedQuerySimulationRecord(accountSource, queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 分页查询实训使用记录
|
||||
*/
|
||||
@GetMapping("/training/page/criteria/{accountSource}")
|
||||
public PageVO<UserTrainingRecordVO> pagedQueryTrainingRecord(@PathVariable String accountSource, UserSimulationQueryVO queryVO) {
|
||||
return iUserUsageStatsService.pagedQueryTrainingRecord(accountSource, queryVO);
|
||||
}
|
||||
}
|
||||
|
|
@ -4,11 +4,14 @@ import club.joylink.rtss.services.voice.IVoiceTrainingService;
|
|||
import club.joylink.rtss.services.voice.baidu.TokenHolder;
|
||||
import club.joylink.rtss.vo.client.PageQueryVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.client.voice.VoiceRecognitionResult;
|
||||
import club.joylink.rtss.vo.client.competition.VoiceErrorVO;
|
||||
import club.joylink.rtss.vo.client.voice.VoiceRecognitionResult;
|
||||
import club.joylink.rtss.vo.voice.VoiceVerifyResultVO;
|
||||
import javax.servlet.http.HttpServletRequest;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
import org.springframework.web.multipart.MultipartFile;
|
||||
|
@ -20,34 +23,46 @@ import org.springframework.web.multipart.MultipartFile;
|
|||
@RequestMapping("/api/voice")
|
||||
public class VoiceController {
|
||||
|
||||
@Autowired
|
||||
private IVoiceTrainingService iVoiceTrainingService;
|
||||
@Autowired
|
||||
private IVoiceTrainingService iVoiceTrainingService;
|
||||
|
||||
/**
|
||||
* 语音识别
|
||||
* @param file
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("recognition")
|
||||
public VoiceRecognitionResult voiceRecognition(MultipartFile file) {
|
||||
return iVoiceTrainingService.voiceRecognition(file);
|
||||
}
|
||||
/**
|
||||
* 语音识别
|
||||
*
|
||||
* @param file
|
||||
* @return
|
||||
*/
|
||||
@PostMapping("recognition")
|
||||
public VoiceRecognitionResult voiceRecognition(MultipartFile file) {
|
||||
return iVoiceTrainingService.voiceRecognition(file);
|
||||
}
|
||||
|
||||
/**
|
||||
* 查询语音识别错误集
|
||||
* @param queryVO
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/errorSet/paged")
|
||||
public PageVO<VoiceErrorVO> pagedQueryErrorSet(PageQueryVO queryVO) {
|
||||
return iVoiceTrainingService.pagedQueryErrorSet(queryVO);
|
||||
}
|
||||
/**
|
||||
* 查询语音识别错误集
|
||||
*
|
||||
* @param queryVO
|
||||
* @return
|
||||
*/
|
||||
@GetMapping("/errorSet/paged")
|
||||
public PageVO<VoiceErrorVO> pagedQueryErrorSet(PageQueryVO queryVO) {
|
||||
return iVoiceTrainingService.pagedQueryErrorSet(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取百度语音识别token
|
||||
*/
|
||||
@GetMapping("/token/baidu")
|
||||
public String getBaiduToken() {
|
||||
return TokenHolder.getInstance().getToken();
|
||||
}
|
||||
/**
|
||||
* 获取百度语音识别token
|
||||
*/
|
||||
@GetMapping("/token/baidu")
|
||||
public String getBaiduToken() {
|
||||
return TokenHolder.getInstance().getToken();
|
||||
}
|
||||
|
||||
/**
|
||||
* 校验语音识别结果
|
||||
*/
|
||||
@PostMapping("/verify")
|
||||
public VoiceVerifyResultVO verifyVoice(HttpServletRequest request, @RequestBody byte[] fileData,
|
||||
String text) {
|
||||
String contentType = request.getHeader("Content-Type");
|
||||
return iVoiceTrainingService.verifyVoice(contentType, fileData, text);
|
||||
}
|
||||
}
|
||||
|
|
|
@ -0,0 +1,56 @@
|
|||
package club.joylink.rtss.controller.voice;
|
||||
|
||||
import club.joylink.rtss.controller.advice.AuthenticateInterceptor;
|
||||
import club.joylink.rtss.services.voice.IVoiceDataConfigService;
|
||||
import club.joylink.rtss.vo.LoginUserInfoVO;
|
||||
import club.joylink.rtss.vo.client.PageVO;
|
||||
import club.joylink.rtss.vo.voice.VoiceDiscriminateConfigVO;
|
||||
import club.joylink.rtss.vo.voice.VoiceQueryVO;
|
||||
import org.springframework.beans.factory.annotation.Autowired;
|
||||
import org.springframework.web.bind.annotation.GetMapping;
|
||||
import org.springframework.web.bind.annotation.ModelAttribute;
|
||||
import org.springframework.web.bind.annotation.PathVariable;
|
||||
import org.springframework.web.bind.annotation.PostMapping;
|
||||
import org.springframework.web.bind.annotation.RequestAttribute;
|
||||
import org.springframework.web.bind.annotation.RequestBody;
|
||||
import org.springframework.web.bind.annotation.RequestMapping;
|
||||
import org.springframework.web.bind.annotation.RestController;
|
||||
|
||||
/**
|
||||
* 语音管理接口
|
||||
*/
|
||||
@RestController
|
||||
@RequestMapping("/api/voice/manage")
|
||||
public class VoiceManageController {
|
||||
|
||||
@Autowired
|
||||
private IVoiceDataConfigService configService;
|
||||
|
||||
|
||||
@PostMapping("saveOrUpdate")
|
||||
public void saveOrUpdate(@RequestBody VoiceDiscriminateConfigVO configVO,
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
this.configService.saveOrUpdate(configVO, userInfoVO);
|
||||
}
|
||||
|
||||
|
||||
@GetMapping("find/{id}")
|
||||
public VoiceDiscriminateConfigVO find(@PathVariable(value = "id") Long id) {
|
||||
return this.configService.byId(id);
|
||||
}
|
||||
|
||||
@GetMapping("query")
|
||||
public PageVO<VoiceDiscriminateConfigVO> query(@ModelAttribute VoiceQueryVO queryVO) {
|
||||
return this.configService.query(queryVO);
|
||||
}
|
||||
|
||||
/**
|
||||
* 获取百度语音识别token
|
||||
*/
|
||||
@GetMapping("{id}/{status}")
|
||||
public void changeStatus(@PathVariable(value = "id") Long id,
|
||||
@PathVariable(value = "status") Integer status,
|
||||
@RequestAttribute(name = AuthenticateInterceptor.LOGIN_INFO_KEY) LoginUserInfoVO userInfoVO) {
|
||||
this.configService.changeStatus(id, status, userInfoVO);
|
||||
}
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package club.joylink.rtss.dao;
|
||||
|
||||
import club.joylink.rtss.entity.AlarmTips;
|
||||
import club.joylink.rtss.entity.AlarmTipsExample;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* AlarmTipsDAO继承基类
|
||||
*/
|
||||
@Repository
|
||||
public interface AlarmTipsDAO extends MyBatisBaseDao<AlarmTips, Long, AlarmTipsExample> {
|
||||
}
|
|
@ -0,0 +1,12 @@
|
|||
package club.joylink.rtss.dao;
|
||||
|
||||
import club.joylink.rtss.entity.CgyView;
|
||||
import club.joylink.rtss.entity.CgyViewExample;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* CgyViewDAO继承基类
|
||||
*/
|
||||
@Repository
|
||||
public interface CgyViewDAO extends MyBatisBaseDao<CgyView, String, CgyViewExample> {
|
||||
}
|
|
@ -1,12 +0,0 @@
|
|||
//package club.joylink.rtss.dao;
|
||||
//
|
||||
//import club.joylink.rtss.entity.Company;
|
||||
//import club.joylink.rtss.entity.CompanyExample;
|
||||
//import org.springframework.stereotype.Repository;
|
||||
//
|
||||
///**
|
||||
// * CompanyDAO继承基类
|
||||
// */
|
||||
////@Repository
|
||||
////public interface CompanyDAO extends MyBatisBaseDao<Company, Integer, CompanyExample> {
|
||||
////}
|
|
@ -0,0 +1,39 @@
|
|||
package club.joylink.rtss.dao;
|
||||
|
||||
import club.joylink.rtss.entity.MapFunctionTemplate;
|
||||
import club.joylink.rtss.entity.MapFunctionTemplateExample;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
|
||||
@Repository
|
||||
public interface MapFunctionTemplateDAO {
|
||||
long countByExample(MapFunctionTemplateExample example);
|
||||
|
||||
int deleteByExample(MapFunctionTemplateExample example);
|
||||
|
||||
int deleteByPrimaryKey(Long id);
|
||||
|
||||
int insert(MapFunctionTemplate record);
|
||||
|
||||
int insertSelective(MapFunctionTemplate record);
|
||||
|
||||
List<MapFunctionTemplate> selectByExampleWithBLOBs(MapFunctionTemplateExample example);
|
||||
|
||||
List<MapFunctionTemplate> selectByExample(MapFunctionTemplateExample example);
|
||||
|
||||
MapFunctionTemplate selectByPrimaryKey(Long id);
|
||||
|
||||
int updateByExampleSelective(@Param("record") MapFunctionTemplate record, @Param("example") MapFunctionTemplateExample example);
|
||||
|
||||
int updateByExampleWithBLOBs(@Param("record") MapFunctionTemplate record, @Param("example") MapFunctionTemplateExample example);
|
||||
|
||||
int updateByExample(@Param("record") MapFunctionTemplate record, @Param("example") MapFunctionTemplateExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(MapFunctionTemplate record);
|
||||
|
||||
int updateByPrimaryKeyWithBLOBs(MapFunctionTemplate record);
|
||||
|
||||
int updateByPrimaryKey(MapFunctionTemplate record);
|
||||
}
|
|
@ -52,7 +52,7 @@ public interface PublishedTraining2DAO {
|
|||
@Insert(value = "<script>" +
|
||||
"insert into published_training2 (name, map_id, description, type, label_json, map_location_json, bg_scene_json," +
|
||||
" run_plan_id, opera_json, step_json, scoring_rule_json, member_json, player_id_json, failure_condition_json," +
|
||||
" creator_id, create_time, update_time, state, final_scenes_json, org_id, client)" +
|
||||
" creator_id, create_time, update_time, state, final_scenes_json, org_id, client, shared)" +
|
||||
"values " +
|
||||
" <foreach collection=\"list\" item=\"entity\" separator=\",\"> " +
|
||||
" (#{entity.name,jdbcType=VARCHAR}, #{entity.mapId,jdbcType=BIGINT}, #{entity.description,jdbcType=VARCHAR}, " +
|
||||
|
@ -61,7 +61,7 @@ public interface PublishedTraining2DAO {
|
|||
" #{entity.stepJson,jdbcType=LONGVARCHAR}, #{entity.scoringRuleJson,jdbcType=LONGVARCHAR}, #{entity.memberJson,jdbcType=LONGVARCHAR}," +
|
||||
" #{entity.playerIdJson,jdbcType=LONGVARCHAR}, #{entity.failureConditionJson,jdbcType=VARCHAR}, #{entity.creatorId,jdbcType=BIGINT}," +
|
||||
" #{entity.createTime,jdbcType=DATETIME}, #{entity.updateTime,jdbcType=DATETIME}, #{entity.state,jdbcType=INT}," +
|
||||
" #{entity.finalScenesJson,jdbcType=LONGVARCHAR}, #{entity.orgId,jdbcType=BIGINT}, #{entity.client,jdbcType=VARCHAR})" +
|
||||
" #{entity.finalScenesJson,jdbcType=LONGVARCHAR}, #{entity.orgId,jdbcType=BIGINT}, #{entity.client,jdbcType=VARCHAR}, #{entity.shared, jdbcType=INT})" +
|
||||
" </foreach>" +
|
||||
"</script>")
|
||||
void batchInsert(@Param("list") PublishedTraining2 list);
|
||||
|
@ -72,4 +72,8 @@ public interface PublishedTraining2DAO {
|
|||
List<Map<String, Long>> selectTrainingByRuleId(@Param("ruleIdList") List<Long> ruleIdList, @Param("mapIdList") List<Long> mapIdList);
|
||||
|
||||
List<Long> selectTrainingIdByRuleNameAndMapId(@Param("ruleNameList") List<Map<String,String>> ruleNameMapList, @Param("mapId") Long mapId);
|
||||
|
||||
int updateTrainingOrgByMapIdList(@Param("orgId") Long orgId, @Param("mapIdList") List<Long> mapIdList);
|
||||
|
||||
void updateTrainingLabelList(@Param("list") List<PublishedTraining2> training2List);
|
||||
}
|
||||
|
|
|
@ -65,6 +65,7 @@ public interface TrainingDAO extends MyBatisBaseDao<Training, Long, TrainingExam
|
|||
"<when test=\"null != trainingName and '' != trainingName \"> and training.name like CONCAT('%',#{trainingName},'%') </when>" +
|
||||
"<when test=\"null != userName and '' != userName \"> and user.name like CONCAT('%',#{userName},'%') </when>" +
|
||||
"<when test=\"null != userMobile and '' != userMobile \"> and user.mobile like CONCAT('%',#{userMobile},'%') </when>" +
|
||||
"<when test=\"null != userId and '' != userId \"> and user.id = #{userId} </when>" +
|
||||
" order by id DESC " +
|
||||
"</script>")
|
||||
Page<UserTrainingListVO> queryPagedUserTraining(UserTrainingQueryVO queryVO);
|
||||
|
|
|
@ -54,6 +54,7 @@ public interface UserExamMapper {
|
|||
"<when test=\"null != examName and '' != examName \"> and ue.exam_name like CONCAT('%',#{examName},'%') </when>" +
|
||||
"<when test=\"null != userName and '' != userName \"> and user.name like CONCAT('%',#{userName},'%') </when>" +
|
||||
"<when test=\"null != userMobile and '' != userMobile \"> and user.mobile like CONCAT('%',#{userMobile},'%') </when>" +
|
||||
"<when test=\"null != userId and '' != userId \"> and user.id = #{userId} </when>" +
|
||||
"<when test=\"null != result and '' != result \"> and ue.result = #{result} </when>" +
|
||||
" order by end_time DESC " +
|
||||
"</script>")
|
||||
|
|
|
@ -0,0 +1,12 @@
|
|||
package club.joylink.rtss.dao;
|
||||
|
||||
import club.joylink.rtss.entity.UserSimulationRecord;
|
||||
import club.joylink.rtss.entity.UserSimulationRecordExample;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* UserSimulationRecordDAO继承基类
|
||||
*/
|
||||
@Repository
|
||||
public interface UserSimulationRecordDAO extends MyBatisBaseDao<UserSimulationRecord, Long, UserSimulationRecordExample> {
|
||||
}
|
|
@ -14,8 +14,9 @@ import java.util.List;
|
|||
@Mapper
|
||||
@Repository
|
||||
public interface PaperQuestionDAO {
|
||||
@Select("<script>" +
|
||||
"select * from rts_paper_question where 1 = 1 " +
|
||||
|
||||
@Select("<script>" +
|
||||
"select * from rts_paper_question where 1 = 1 " +
|
||||
// "<choose>" +
|
||||
// "<when test=\"projectCode == '"+ Project.DEFAULT_PROJECT_CODE +"'\">"+
|
||||
// " and project_code is null" +
|
||||
|
@ -24,48 +25,54 @@ public interface PaperQuestionDAO {
|
|||
// " and project_code = #{projectCode} "+
|
||||
// " </otherwise>" +
|
||||
// "</choose>" +
|
||||
" and org_id = #{companyId,jdbcType=BIGINT} " +
|
||||
" and org_id = #{companyId,jdbcType=BIGINT} " +
|
||||
// "<if test=\"companyIdList != null and companyIdList.size > 0\">"+
|
||||
// "<foreach collection=\"companyIdList\" open=\" and company_id in (\" close=\")\" item=\"d\" separator=\",\">"+
|
||||
// " #{d} "+
|
||||
// "</foreach></if>"+
|
||||
" and is_del= #{isDelete,jdbcType=INTEGER} " +
|
||||
"<if test=\"types != null and types.size > 0\">"+
|
||||
"<foreach collection=\"types\" open=\" and type in (\" close=\")\" item=\"d\" separator=\",\">"+
|
||||
" #{d} "+
|
||||
"</foreach></if>"+
|
||||
"<if test=\"lable != null and lable.size > 0\"> " +
|
||||
" <foreach collection=\"lable\" open=\" and (\" close=\")\" item=\"d\" separator=\" or \"> "+
|
||||
" find_in_set(#{d},race_lable) > 0 "+
|
||||
" </foreach>" +
|
||||
"</if>" +
|
||||
"</script>")
|
||||
List<PaperQuestionWithBLOBs> findFromAndRaceLable(Long companyId,int isDelete, List<String> lable, List<String> types);
|
||||
long countByExample(PaperQuestionExample example);
|
||||
" and is_del= #{isDelete,jdbcType=INTEGER} " +
|
||||
"<if test=\"types != null and types.size > 0\">" +
|
||||
"<foreach collection=\"types\" open=\" and type in (\" close=\")\" item=\"d\" separator=\",\">" +
|
||||
" #{d} " +
|
||||
"</foreach></if>" +
|
||||
"<if test=\"lable != null and lable.size > 0\"> " +
|
||||
" <foreach collection=\"lable\" open=\" and (\" close=\")\" item=\"d\" separator=\" or \"> " +
|
||||
" find_in_set(#{d},race_lable) > 0 " +
|
||||
" </foreach>" +
|
||||
"</if>" +
|
||||
"</script>")
|
||||
List<PaperQuestionWithBLOBs> findFromAndRaceLable(Long companyId, int isDelete, List<String> lable, List<String> types);
|
||||
|
||||
int deleteByExample(PaperQuestionExample example);
|
||||
@Select("<script>" +
|
||||
"select id from rts_paper_question where org_id = #{orgId} "
|
||||
+ "</script>")
|
||||
List<Long> findAllId(@Param("orgId") Long id);
|
||||
|
||||
int deleteByPrimaryKey(Long id);
|
||||
long countByExample(PaperQuestionExample example);
|
||||
|
||||
int insert(PaperQuestionWithBLOBs record);
|
||||
int deleteByExample(PaperQuestionExample example);
|
||||
|
||||
int insertSelective(PaperQuestionWithBLOBs record);
|
||||
int deleteByPrimaryKey(Long id);
|
||||
|
||||
List<PaperQuestionWithBLOBs> selectByExampleWithBLOBs(PaperQuestionExample example);
|
||||
int insert(PaperQuestionWithBLOBs record);
|
||||
|
||||
List<PaperQuestion> selectByExample(PaperQuestionExample example);
|
||||
int insertSelective(PaperQuestionWithBLOBs record);
|
||||
|
||||
PaperQuestionWithBLOBs selectByPrimaryKey(Long id);
|
||||
List<PaperQuestionWithBLOBs> selectByExampleWithBLOBs(PaperQuestionExample example);
|
||||
|
||||
int updateByExampleSelective(@Param("record") PaperQuestionWithBLOBs record, @Param("example") PaperQuestionExample example);
|
||||
List<PaperQuestion> selectByExample(PaperQuestionExample example);
|
||||
|
||||
int updateByExampleWithBLOBs(@Param("record") PaperQuestionWithBLOBs record, @Param("example") PaperQuestionExample example);
|
||||
PaperQuestionWithBLOBs selectByPrimaryKey(Long id);
|
||||
|
||||
int updateByExample(@Param("record") PaperQuestion record, @Param("example") PaperQuestionExample example);
|
||||
int updateByExampleSelective(@Param("record") PaperQuestionWithBLOBs record, @Param("example") PaperQuestionExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(PaperQuestionWithBLOBs record);
|
||||
int updateByExampleWithBLOBs(@Param("record") PaperQuestionWithBLOBs record, @Param("example") PaperQuestionExample example);
|
||||
|
||||
int updateByPrimaryKeyWithBLOBs(PaperQuestionWithBLOBs record);
|
||||
int updateByExample(@Param("record") PaperQuestion record, @Param("example") PaperQuestionExample example);
|
||||
|
||||
int updateByPrimaryKey(PaperQuestion record);
|
||||
int updateByPrimaryKeySelective(PaperQuestionWithBLOBs record);
|
||||
|
||||
int updateByPrimaryKeyWithBLOBs(PaperQuestionWithBLOBs record);
|
||||
|
||||
int updateByPrimaryKey(PaperQuestion record);
|
||||
}
|
||||
|
|
|
@ -2,121 +2,125 @@ package club.joylink.rtss.dao.permission;
|
|||
|
||||
import club.joylink.rtss.entity.permission.PermissionSubject;
|
||||
import club.joylink.rtss.entity.permission.PermissionSubjectExample;
|
||||
import club.joylink.rtss.vo.permission.PermissionDistributeStatusEnum;
|
||||
import club.joylink.rtss.vo.permission.PermissionSubjectStatusEnum;
|
||||
import club.joylink.rtss.vo.permission.subject.PermissionSubjectQueryVO;
|
||||
import club.joylink.rtss.vo.permission.subject.PermissionSubjectVO;
|
||||
import org.apache.ibatis.annotations.*;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.apache.ibatis.annotations.Update;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Mapper
|
||||
@Repository
|
||||
public interface PermissionSubjectDAO {
|
||||
|
||||
@Select("<script>" +
|
||||
"select A.id,A.subject_type,A.subject_id," +
|
||||
"(case when A.subject_type = 'user' then B.name when A.subject_type = 'org' then C.name when A.subject_type = 'project' then E.name end) as named," +
|
||||
"(case when A.subject_type = 'user' then B.nickname else '' end) as nick_name," +
|
||||
"(case when A.subject_type = 'project' then E.code else '' end ) as project_code,"+
|
||||
" A.amount,A.remains,A.status,A.forever,A.start_time,A.end_time,A.create_time," +
|
||||
" D.name as permission_name,A.permission_id,A.distribute_id,D.map_id,D.project_code as permission_project_code,D.permission_type " +
|
||||
" from rts_permission_subject A left join sys_account B on A.subject_type = 'user' and A.subject_id = B.id " +
|
||||
" left join org C on A.subject_type = 'org' and A.subject_id = C.id " +
|
||||
" left join rts_project E on A.subject_type = 'project' and A.subject_id = E.id " +
|
||||
" left join rts_permission D on A.permission_id = D.id " +
|
||||
//" left join rts_distribute E on A.distribute_id = E.id " +
|
||||
" where 1 = 1 " +
|
||||
@Select("<script>" +
|
||||
"select A.id,A.subject_type,A.subject_id," +
|
||||
"(case when A.subject_type = 'user' then B.name when A.subject_type = 'org' then C.name when A.subject_type = 'project' then E.name end) as named,"
|
||||
+
|
||||
"(case when A.subject_type = 'user' then B.nickname else '' end) as nick_name," +
|
||||
"(case when A.subject_type = 'project' then E.code else '' end ) as project_code," +
|
||||
" A.amount,A.remains,A.status,A.forever,A.start_time,A.end_time,A.create_time," +
|
||||
" D.name as permission_name,A.permission_id,A.distribute_id,D.map_id,D.project_code as permission_project_code,D.permission_type "
|
||||
+
|
||||
" from rts_permission_subject A left join sys_account B on A.subject_type = 'user' and A.subject_id = B.id "
|
||||
+
|
||||
" left join org C on A.subject_type = 'org' and A.subject_id = C.id " +
|
||||
" left join rts_project E on A.subject_type = 'project' and A.subject_id = E.id " +
|
||||
" left join rts_permission D on A.permission_id = D.id " +
|
||||
//" left join rts_distribute E on A.distribute_id = E.id " +
|
||||
" where 1 = 1 " +
|
||||
/*"<if test=\"mapId != null and mapId != 0\"> " +
|
||||
" and E.map_id = #{mapId} " +
|
||||
"</if> " +*/
|
||||
" and (C.id = #{orgId} or B.id = #{userId} or E.code = #{projectCode}) " +
|
||||
" and A.status = #{status}" +
|
||||
"</script>")
|
||||
List<PermissionSubjectVO> findPermissionWithMapIdAndUserInfo(/*@Param("mapId") Long mapId,*/@Param("orgId") Long orgId,@Param("userId") Long userId,@Param("status") Integer status,@Param("projectCode") String projectCode);
|
||||
@Select("<script>" +
|
||||
"select A.id,A.subject_type,A.subject_id, " +
|
||||
"(case when A.subject_type = 'user' then B.name when A.subject_type = 'org' then C.name when A.subject_type = 'project' then E.name end) as named," +
|
||||
"(case when A.subject_type = 'user' then B.nickname else '' end) as nick_name," +
|
||||
"(case when A.subject_type = 'project' then E.code else '' end ) as project_code,"+
|
||||
"B.name as permission_name,A.permission_id " +
|
||||
" from rts_permission_subject A left join rts_permission B on A.permission_id = B.id" +
|
||||
" left join sys_account C on A.subject_type = 'user' and A.subject_id = C.id " +
|
||||
" left join org D on A.subject_type = 'org' and A.subject_id = C.id " +
|
||||
" left join rts_project E on A.subject_type = 'project' and A.subject_id = E.id " +
|
||||
" where 1 = 1 and A.parent_id in " +
|
||||
"<if test=\"idList != null and idList.size > 0\"> " +
|
||||
" <foreach collection=\"idList\" open=\"(\" close=\")\" item=\"d\" separator=\" , \"> "+
|
||||
" #{d}"+
|
||||
" </foreach>" +
|
||||
"</if> " +
|
||||
"order by id asc" +
|
||||
"</script>")
|
||||
List<PermissionSubjectVO> findDistributePermission(List<Long> idList);
|
||||
" and (C.id = #{orgId} or B.id = #{userId} or E.code = #{projectCode}) " +
|
||||
" and A.status = #{status}" +
|
||||
"</script>")
|
||||
List<PermissionSubjectVO> findPermissionWithMapIdAndUserInfo(/*@Param("mapId") Long mapId,*/
|
||||
@Param("orgId") Long orgId, @Param("userId") Long userId, @Param("status") Integer status,
|
||||
@Param("projectCode") String projectCode);
|
||||
|
||||
@Select("<script>" +
|
||||
"select A.id,A.subject_type,A.subject_id," +
|
||||
"(case when A.subject_type = 'user' then B.name when A.subject_type = 'org' then C.name when A.subject_type = 'project' then E.name end) as named," +
|
||||
"(case when A.subject_type = 'user' then B.nickname else '' end) as nick_name," +
|
||||
"(case when A.subject_type = 'project' then E.code else '' end ) as project_code,"+
|
||||
"A.amount,A.remains,A.status,A.forever,A.start_time,A.end_time,A.create_time,D.name as permission_name,A.permission_id " +
|
||||
" from rts_permission_subject A left join sys_account B on A.subject_type = 'user' and A.subject_id = B.id " +
|
||||
" left join org C on A.subject_type = 'org' and A.subject_id = C.id " +
|
||||
" left join rts_project E on A.subject_type = 'project' and A.subject_id = E.id " +
|
||||
" left join rts_permission D on A.permission_id = D.id " +
|
||||
" where 1 = 1 " +
|
||||
"<if test=\"vo.subType!=null and vo.subType!=''\">" +
|
||||
" AND A.subject_type = #{vo.subType} " +
|
||||
"</if>"+
|
||||
"<if test=\"vo.named!=null and vo.named!=''\">" +
|
||||
" AND (B.name = #{vo.named} or B.nickname = #{vo.named} or C.name = #{vo.named} or E.name = #{vo.named}) " +
|
||||
"</if>"+
|
||||
"<if test=\"vo.status!=null\">" +
|
||||
" AND A.status = #{vo.status} " +
|
||||
"</if>"+
|
||||
" order by id desc " +
|
||||
"</script>")
|
||||
List<PermissionSubjectVO> customerQuery(@Param("vo") PermissionSubjectQueryVO queryVO);
|
||||
@Select("<script>" +
|
||||
"select A.id,A.subject_type,A.subject_id, " +
|
||||
"(case when A.subject_type = 'user' then B.name when A.subject_type = 'org' then C.name when A.subject_type = 'project' then E.name end) as named,"
|
||||
+
|
||||
"(case when A.subject_type = 'user' then B.nickname else '' end) as nick_name," +
|
||||
"(case when A.subject_type = 'project' then E.code else '' end ) as project_code," +
|
||||
"B.name as permission_name,A.permission_id " +
|
||||
" from rts_permission_subject A left join rts_permission B on A.permission_id = B.id" +
|
||||
" left join sys_account C on A.subject_type = 'user' and A.subject_id = C.id " +
|
||||
" left join org D on A.subject_type = 'org' and A.subject_id = C.id " +
|
||||
" left join rts_project E on A.subject_type = 'project' and A.subject_id = E.id " +
|
||||
" where 1 = 1 and A.parent_id in " +
|
||||
"<if test=\"idList != null and idList.size > 0\"> " +
|
||||
" <foreach collection=\"idList\" open=\"(\" close=\")\" item=\"d\" separator=\" , \"> " +
|
||||
" #{d}" +
|
||||
" </foreach>" +
|
||||
"</if> " +
|
||||
"order by id asc" +
|
||||
"</script>")
|
||||
List<PermissionSubjectVO> findDistributePermission(List<Long> idList);
|
||||
|
||||
/**
|
||||
* 状态参考 {@link PermissionSubjectStatusEnum}
|
||||
*/
|
||||
@Update("<script> update rts_permission_subject set status = 2,update_time = now() where forever = 0 and (`status` is null or `status` = 1) " +
|
||||
" <![CDATA[ and end_time < now() ]]> </script>")
|
||||
void updateStatusByTimeOver();
|
||||
long countByExample(PermissionSubjectExample example);
|
||||
@Select("<script>" +
|
||||
"select A.id,A.subject_type,A.subject_id," +
|
||||
"(case when A.subject_type = 'user' then B.name when A.subject_type = 'org' then C.name when A.subject_type = 'project' then E.name end) as named,"
|
||||
+
|
||||
"(case when A.subject_type = 'user' then B.nickname else '' end) as nick_name," +
|
||||
"(case when A.subject_type = 'project' then E.code else '' end ) as project_code," +
|
||||
"A.amount,A.remains,A.status,A.forever,A.start_time,A.end_time,A.create_time,D.name as permission_name,A.permission_id "
|
||||
+
|
||||
" from rts_permission_subject A left join sys_account B on A.subject_type = 'user' and A.subject_id = B.id "
|
||||
+
|
||||
" left join org C on A.subject_type = 'org' and A.subject_id = C.id " +
|
||||
" left join rts_project E on A.subject_type = 'project' and A.subject_id = E.id " +
|
||||
" left join rts_permission D on A.permission_id = D.id " +
|
||||
" where 1 = 1 " +
|
||||
"<if test=\"vo.subType!=null and vo.subType!=''\">" +
|
||||
" AND A.subject_type = #{vo.subType} " +
|
||||
"</if>" +
|
||||
"<if test=\"vo.named!=null and vo.named!=''\">" +
|
||||
" AND (B.name = #{vo.named} or B.nickname = #{vo.named} or C.name = #{vo.named} or E.name = #{vo.named}) "
|
||||
+
|
||||
"</if>" +
|
||||
"<if test=\"vo.status!=null\">" +
|
||||
" AND A.status = #{vo.status} " +
|
||||
"</if>" +
|
||||
" order by id desc " +
|
||||
"</script>")
|
||||
List<PermissionSubjectVO> customerQuery(@Param("vo") PermissionSubjectQueryVO queryVO);
|
||||
|
||||
int deleteByExample(PermissionSubjectExample example);
|
||||
/**
|
||||
* 状态参考 {@link PermissionSubjectStatusEnum}
|
||||
*/
|
||||
@Update(
|
||||
"<script> update rts_permission_subject set status = 2,update_time = now() where forever = 0 and (`status` is null or `status` = 1) "
|
||||
+
|
||||
" <![CDATA[ and end_time < now() ]]> </script>")
|
||||
void updateStatusByTimeOver();
|
||||
|
||||
int deleteByPrimaryKey(Long id);
|
||||
long countByExample(PermissionSubjectExample example);
|
||||
|
||||
int insert(PermissionSubject record);
|
||||
int deleteByExample(PermissionSubjectExample example);
|
||||
|
||||
@Insert("<script>" +
|
||||
"insert into rts_permission_subject (permission_id, subject_type, subject_id, amount, remains, `status`,forever, start_time, end_time,create_time, distribute_id, parent_id,is_sync)" +
|
||||
" values " +
|
||||
"<foreach collection=\"list\" item=\"item\" index=\"index\" separator=\",\"> " +
|
||||
"(#{item.permissionId,jdbcType=BIGINT}, #{item.subjectType,jdbcType=VARCHAR}, #{item.subjectId,jdbcType=BIGINT}," +
|
||||
" #{item.amount,jdbcType=INTEGER}, #{item.remains,jdbcType=INTEGER}, #{item.status,jdbcType=INTEGER}, " +
|
||||
" #{item.forever,jdbcType=BIT}, #{item.startTime,jdbcType=TIMESTAMP}, #{item.endTime,jdbcType=TIMESTAMP}," +
|
||||
" #{item.createTime,jdbcType=TIMESTAMP}, #{item.distributeId,jdbcType=BIGINT}, #{item.parentId,jdbcType=BIGINT}," +
|
||||
" #{item.isSync,jdbcType=BIT})" +
|
||||
"</foreach>" +
|
||||
int deleteByPrimaryKey(Long id);
|
||||
|
||||
"</script>")
|
||||
void batchInsert(@Param("list") List<PermissionSubject> list);
|
||||
int insertSelective(PermissionSubject record);
|
||||
int insert(PermissionSubject record);
|
||||
|
||||
List<PermissionSubject> selectByExample(PermissionSubjectExample example);
|
||||
int insertSelective(PermissionSubject record);
|
||||
|
||||
PermissionSubject selectByPrimaryKey(Long id);
|
||||
List<PermissionSubject> selectByExample(PermissionSubjectExample example);
|
||||
|
||||
int updateByExampleSelective(@Param("record") PermissionSubject record, @Param("example") PermissionSubjectExample example);
|
||||
PermissionSubject selectByPrimaryKey(Long id);
|
||||
|
||||
int updateByExample(@Param("record") PermissionSubject record, @Param("example") PermissionSubjectExample example);
|
||||
int updateByExampleSelective(@Param("record") PermissionSubject record,
|
||||
@Param("example") PermissionSubjectExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(PermissionSubject record);
|
||||
int updateByExample(@Param("record") PermissionSubject record,
|
||||
@Param("example") PermissionSubjectExample example);
|
||||
|
||||
int updateByPrimaryKey(PermissionSubject record);
|
||||
int updateByPrimaryKeySelective(PermissionSubject record);
|
||||
|
||||
int updateByPrimaryKey(PermissionSubject record);
|
||||
}
|
||||
|
|
|
@ -0,0 +1,55 @@
|
|||
package club.joylink.rtss.dao.racetr;
|
||||
|
||||
import club.joylink.rtss.dao.MyBatisBaseDao;
|
||||
import club.joylink.rtss.entity.racetr.RacetrPaper;
|
||||
import club.joylink.rtss.entity.racetr.RacetrPaperExample;
|
||||
import club.joylink.rtss.vo.race.RacePaperPageVO;
|
||||
import club.joylink.rtss.vo.race.RacePaperQueryVO;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* RacetrPaperDAO继承基类
|
||||
*/
|
||||
|
||||
@Repository
|
||||
public interface RacetrPaperDAO extends MyBatisBaseDao<RacetrPaper, Long, RacetrPaperExample> {
|
||||
|
||||
@Select("<script>"
|
||||
+ " select A.id,A.name,A.`desc`,A.season_id as seasonId ,B.code as seasonName,B.group,B.term as seasonTerm"
|
||||
+ " ,A.creator_id,A.create_time,A.updater_id,A.update_time,C.nickname as creatorName,D.nickname as updaterName "
|
||||
+ " from racetr_paper A left join racetr_season B on A.season_id = B.id "
|
||||
+ " left join sys_account C on A.creator_id = C.id "
|
||||
+ " left JOIN sys_account D on A.updater_id = D.id "
|
||||
+ " where 1 = 1 "
|
||||
+ "<if test='vo.name!= null and vo.name!= \"\"'> "
|
||||
+ " and A.name like CONCAT('%',#{vo.name},'%') "
|
||||
+ "</if> "
|
||||
|
||||
+ "<if test='vo.group!= null and vo.group != \"\"'> "
|
||||
+ " and B.group = #{vo.group} "
|
||||
+ "</if> "
|
||||
+ "<if test='vo.seasonId!= null and vo.seasonId!= \"\"'> "
|
||||
+ " and A.season_id = #{vo.seasonId} "
|
||||
+ "</if> "
|
||||
+ "<if test='vo.seasonName!= null and vo.seasonName!= \"\"'> "
|
||||
+ " and B.code like CONCAT('%',#{vo.seasonName},'%') "
|
||||
+ "</if> "
|
||||
+ "</script>")
|
||||
List<RacePaperPageVO> pages(@Param("vo") RacePaperQueryVO vo);
|
||||
|
||||
@Select("<script>"
|
||||
+ " select A.id,A.name,A.`desc`,A.season_id as seasonId ,B.code as seasonName "
|
||||
+ " ,A.configs,A.creator_id,A.create_time,A.updater_id,A.update_time,C.nickname as creatorName,D.nickname as updaterName "
|
||||
+ " from racetr_paper A left join racetr_season B on A.season_id = B.id "
|
||||
+ " left join sys_account C on A.creator_id = C.id "
|
||||
+ " left JOIN sys_account D on A.updater_id = D.id "
|
||||
+ " where 1 = 1 "
|
||||
+ " and A.id = #{id}"
|
||||
+ "</script>")
|
||||
RacePaperPageVO detail(@Param("id") Long id);
|
||||
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
package club.joylink.rtss.dao.racetr;
|
||||
|
||||
import club.joylink.rtss.dao.MyBatisBaseDao;
|
||||
import club.joylink.rtss.entity.racetr.RacetrScene;
|
||||
import club.joylink.rtss.entity.racetr.RacetrSceneExample;
|
||||
import club.joylink.rtss.vo.race.RaceScenePageVO;
|
||||
import club.joylink.rtss.vo.race.RaceSceneQueryVO;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* RacetrSceneDAO继承基类
|
||||
*/
|
||||
|
||||
@Repository
|
||||
public interface RacetrSceneDAO extends MyBatisBaseDao<RacetrScene, Long, RacetrSceneExample> {
|
||||
|
||||
@Select("<script>"
|
||||
+ "select A.id,A.name,A.type,A.map_id as mapId, B.name as mapName, "
|
||||
+ "A.creator_id,A.create_time,A.updater_id,A.update_time,C.nickname as creatorName,D.nickname as updaterName "
|
||||
+ "from racetr_scene A left join map_info B on A.map_id = B.id "
|
||||
+ "left join sys_account C on A.creator_id = C.id "
|
||||
+ "left JOIN sys_account D on A.updater_id = D.id "
|
||||
+ " where 1 = 1 "
|
||||
+ "<if test='vo.name!= null and vo.name!= \"\"'> "
|
||||
+ " and A.name like CONCAT('%',#{vo.name},'%') "
|
||||
+ "</if> "
|
||||
+ "<if test='vo.type!= null and vo.type!= \"\"'> "
|
||||
+ " and A.type = #{vo.type}"
|
||||
+ "</if> "
|
||||
+ "</script>")
|
||||
List<RaceScenePageVO> pages(@Param("vo") RaceSceneQueryVO vo);
|
||||
|
||||
@Select("<script>"
|
||||
+ "select A.id,A.name,A.type,A.map_id as mapId, B.name as mapName, A.proto"
|
||||
+ ",A.creator_id,A.create_time,A.updater_id,A.update_time,C.nickname as creatorName,D.nickname as updaterName "
|
||||
+ "from racetr_scene A left join map_info B on A.map_id = B.id "
|
||||
+ "left join sys_account C on A.creator_id = C.id "
|
||||
+ "left JOIN sys_account D on A.updater_id = D.id "
|
||||
+ " where 1 = 1 "
|
||||
+ " and A.id = #{id} "
|
||||
+ "</script>")
|
||||
RaceScenePageVO detail(@Param("id") Long id);
|
||||
}
|
|
@ -0,0 +1,47 @@
|
|||
package club.joylink.rtss.dao.racetr;
|
||||
|
||||
import club.joylink.rtss.dao.MyBatisBaseDao;
|
||||
import club.joylink.rtss.entity.racetr.RacetrScoringRule;
|
||||
import club.joylink.rtss.entity.racetr.RacetrScoringRuleExample;
|
||||
import club.joylink.rtss.vo.race.RaceRuleListVO;
|
||||
import club.joylink.rtss.vo.race.TaskRuleQueryVO;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* RacetrScoringRuleDAO继承基类
|
||||
*/
|
||||
|
||||
@Repository
|
||||
public interface RacetrScoringRuleDAO extends MyBatisBaseDao<RacetrScoringRule, Long, RacetrScoringRuleExample> {
|
||||
|
||||
@Select("<script>"
|
||||
+ " select A.id,A.name"
|
||||
+ " ,A.creator_id,A.create_time,A.updater_id,A.update_time,C.nickname as creatorName,D.nickname as updaterName "
|
||||
+ " from racetr_scoring_rule A "
|
||||
+ " left join sys_account C on A.creator_id = C.id "
|
||||
+ " left JOIN sys_account D on A.updater_id = D.id "
|
||||
+ " where 1 = 1 "
|
||||
+ "<if test='vo.name!= null and vo.name!= \"\"'> "
|
||||
+ " and A.name like CONCAT('%',#{vo.name},'%') "
|
||||
+ "</if> "
|
||||
+ "<if test='vo.id!= null and vo.id >=0'> "
|
||||
+ " and A.id = #{vo.id}"
|
||||
+ "</if> "
|
||||
+ "</script>")
|
||||
List<RaceRuleListVO> pages(@Param("vo") TaskRuleQueryVO vo);
|
||||
|
||||
@Select("<script>"
|
||||
+ " select A.id,A.name,A.rule"
|
||||
+ " ,A.creator_id,A.create_time,A.updater_id,A.update_time,C.nickname as creatorName,D.nickname as updaterName "
|
||||
+ " from racetr_scoring_rule A "
|
||||
+ " left join sys_account C on A.creator_id = C.id "
|
||||
+ " left JOIN sys_account D on A.updater_id = D.id "
|
||||
+ " where 1 = 1 "
|
||||
+ " and A.id = #{id}"
|
||||
+ "</script>")
|
||||
RaceRuleListVO detail(@Param("id") Long id);
|
||||
}
|
|
@ -0,0 +1,18 @@
|
|||
package club.joylink.rtss.dao.racetr;
|
||||
|
||||
import club.joylink.rtss.dao.MyBatisBaseDao;
|
||||
import club.joylink.rtss.entity.racetr.RacetrSeason;
|
||||
import club.joylink.rtss.entity.racetr.RacetrSeasonExample;
|
||||
|
||||
import java.util.List;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* RacetrSeasonDAO继承基类
|
||||
*/
|
||||
|
||||
@Repository
|
||||
public interface RacetrSeasonDAO extends MyBatisBaseDao<RacetrSeason, Long, RacetrSeasonExample> {
|
||||
|
||||
List<RacetrSeason> selectByExampleWithBLOBs(RacetrSeasonExample example);
|
||||
}
|
|
@ -0,0 +1,33 @@
|
|||
package club.joylink.rtss.dao.racetr;
|
||||
|
||||
import club.joylink.rtss.dao.MyBatisBaseDao;
|
||||
import club.joylink.rtss.entity.racetr.RacetrTask;
|
||||
import club.joylink.rtss.entity.racetr.RacetrTaskExample;
|
||||
import club.joylink.rtss.vo.race.RaceTaskDetailDTO;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.apache.ibatis.annotations.Select;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
/**
|
||||
* RacetrTaskDAO继承基类
|
||||
*/
|
||||
|
||||
@Repository
|
||||
public interface RacetrTaskDAO extends MyBatisBaseDao<RacetrTask, Long, RacetrTaskExample> {
|
||||
|
||||
@Select("<script>"
|
||||
+ "select A.id,A.name,A.desc,A.content,A.standards,B.id as scene_id,B.name as sceneName, "
|
||||
+ "A.score_rule_id as rule_id,C.name as ruleName,A.parent_id,"
|
||||
+ "A.creator_id,A.create_time,A.updater_id,A.update_time,D.nickname as creatorName,E.nickname as updaterName "
|
||||
+ " from racetr_task A left join racetr_scene B on A.scene_id = B.id "
|
||||
+ " left join racetr_scoring_rule C on A.score_rule_id = C.id "
|
||||
+ " left join sys_account D on A.creator_id = D.id "
|
||||
+ " left JOIN sys_account E on A.updater_id = E.id "
|
||||
+ " where 1 = 1 "
|
||||
+ " and A.id = #{id}"
|
||||
+ "</script>")
|
||||
RaceTaskDetailDTO details(@Param("id") Long id);
|
||||
|
||||
List<RaceTaskDetailDTO> recursiveFindTask(@Param("taskIds") List<Long> taskIds);
|
||||
}
|
|
@ -32,4 +32,6 @@ public interface RtsTraining2RuleMapper {
|
|||
int updateByPrimaryKeyWithBLOBs(RtsTraining2RuleWithBLOBs record);
|
||||
|
||||
int updateByPrimaryKey(RtsTraining2Rule record);
|
||||
|
||||
void updateScoreRule(@Param("list") List<RtsTraining2RuleWithBLOBs> list);
|
||||
}
|
|
@ -0,0 +1,40 @@
|
|||
package club.joylink.rtss.dao.voice;
|
||||
|
||||
import club.joylink.rtss.entity.voice.VoiceDiscriminateConfig;
|
||||
import club.joylink.rtss.entity.voice.VoiceDiscriminateConfigExample;
|
||||
import java.util.List;
|
||||
import org.apache.ibatis.annotations.Mapper;
|
||||
import org.apache.ibatis.annotations.Param;
|
||||
import org.springframework.stereotype.Repository;
|
||||
|
||||
@Mapper
|
||||
@Repository
|
||||
public interface VoiceDiscriminateConfigDAO {
|
||||
long countByExample(VoiceDiscriminateConfigExample example);
|
||||
|
||||
int deleteByExample(VoiceDiscriminateConfigExample example);
|
||||
|
||||
int deleteByPrimaryKey(Long id);
|
||||
|
||||
int insert(VoiceDiscriminateConfig record);
|
||||
|
||||
int insertSelective(VoiceDiscriminateConfig record);
|
||||
|
||||
List<VoiceDiscriminateConfig> selectByExampleWithBLOBs(VoiceDiscriminateConfigExample example);
|
||||
|
||||
List<VoiceDiscriminateConfig> selectByExample(VoiceDiscriminateConfigExample example);
|
||||
|
||||
VoiceDiscriminateConfig selectByPrimaryKey(Long id);
|
||||
|
||||
int updateByExampleSelective(@Param("record") VoiceDiscriminateConfig record, @Param("example") VoiceDiscriminateConfigExample example);
|
||||
|
||||
int updateByExampleWithBLOBs(@Param("record") VoiceDiscriminateConfig record, @Param("example") VoiceDiscriminateConfigExample example);
|
||||
|
||||
int updateByExample(@Param("record") VoiceDiscriminateConfig record, @Param("example") VoiceDiscriminateConfigExample example);
|
||||
|
||||
int updateByPrimaryKeySelective(VoiceDiscriminateConfig record);
|
||||
|
||||
int updateByPrimaryKeyWithBLOBs(VoiceDiscriminateConfig record);
|
||||
|
||||
int updateByPrimaryKey(VoiceDiscriminateConfig record);
|
||||
}
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in New Issue