zhanghua
2024-12-22 9d059f329e8d9fd629bdbf209e66ae7220155320
订单打印
15个文件已修改
4个文件已添加
1160 ■■■■ 已修改文件
package.json 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/App.vue 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/api/order.js 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/layout/components/Navbar.vue 12 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/router/index.js 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/graphql.js 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/print.js 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/utils/ruoyi.js 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/class/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/comment/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/development/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/integral/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/order/index.vue 207 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/order/print.html 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/rollCall/index.vue 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/scheduleCourses/index.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/student/index.vue 527 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/work/index.vue 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
vue.config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
package.json
@@ -20,7 +20,7 @@
    "apollo-link": "^1.2.14",
    "apollo-link-context": "^1.0.20",
    "apollo-link-http": "^1.5.17",
    "axios": "0.18.1",
    "axios": "^1.7.9",
    "core-js": "3.6.5",
    "cors": "^2.8.5",
    "cos-js-sdk-v5": "^1.8.3",
src/App.vue
@@ -18,10 +18,10 @@
        }
    },
    created() {
        // localStorage.setItem("user", '{"id":25,"name":"微信用户","mobile":"18080857109","gender":"FEMALE","jwtToken":"eyJhbGciOiJIUzI1NiJ9.eyJleHBUaW1lIjoiMjAyNC8xMS8xOCAyMDo0MSIsInVzZXJJZCI6NDYsImp0aSI6ImM2MzE2NDJmLTQ1YzUtNDdhOC04MmRhLWQyMGMwNjg5NDRmOSIsImlhdCI6MTczMTkyNjQ3Miwic3ViIjoieWNsIiwiZXhwIjoxNzMxOTMzNjcyfQ.14nH_pdr4Nfd6Xq0StQ3sMHQz6cqLMEXEHhrSw5iHM4","avatars":[],"staffs":[{"id":1659,"createTime":"2023/11/16 09:58","createById":1,"modifyTime":"2023/11/16 09:58","modifyById":46,"name":"张华","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":25,"createTime":"2023/06/06 19:47","createById":0,"modifyTime":"2024/05/22 00:02","modifyById":1,"name":"叮当云服务","description":"","address":"成都市","addressDetail":"123","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"PLATFORM","companyName":"88","region":[],"logos":[{"url1":"dream/1/setting/20240320/2a7d900fc72878a774d3cd6aea2195e0.jpg","url2":"dream/1/setting/20240320/9ccea81dbfdcb8e4d0c86b978aca0e42.jpg","url3":"dream/1/setting/20240320/a78b9307b000b3ec4d6ecc9d276494ee.jpg","origin":"dream/1/setting/20240320/71fad2f4bcae8fc644dca5d95b98c08c.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20240403/f87b937eedaf8842c59bbdcecf60d94e.jpg","url2":"dream/1/setting/20240403/172dc3868484f8b88ad26e54bb51d737.jpg","url3":"dream/1/setting/20240403/b1ddd7a6a8433e6ebace1d5360e426a1.jpg","origin":"dream/1/setting/20240403/15ba95a920efb1353226863f2ba26b53.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13981970816","tel2":"","openTime":"10:00:00","closeTime":"20:00:00","mch":{"id":1,"name":"优创力直营店"}},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":427,"createTime":"2023/10/04 13:18","createById":22,"modifyTime":"2023/10/04 13:18","modifyById":22,"name":"管理员","description":"校长,管理员,助理","orgId":1,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1616,"createTime":"2023/11/04 11:23","createById":0,"modifyTime":"2023/12/08 14:10","modifyById":35,"name":"叮当上课-技术","description":"","mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":186,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2024/09/11 15:16","modifyById":35,"name":"拓世体育","description":"","address":"四川省成都市锦江区琉三路999号","addressDetail":"成都市锦江区水井坊锦江体育公园","lng":104.11273956298828,"lat":30.597631454467773,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"拓世体育","region":[],"logos":[{"url1":"dream/1/setting/20240911/35c21c25bdabe256e6d80a04443130bd.jpg","url2":"dream/1/setting/20240911/d147a21d1a515b8f1130f48131fb0fd0.jpg","url3":"dream/1/setting/20240911/4b377e21b8a24c326537b7033b3c5368.jpg","origin":"dream/1/setting/20240911/0fa9c2150e361d00a4c605477f355b72.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20231228//1fd0a04396e38f97154518976d2b9fcf.jpg","url2":"dream/1/setting/20231228//a8820bfd6b5b68430930308b138d07b8.jpg","url3":"dream/1/setting/20231228//4362c82baef5dd9114cc612275c5ef8b.jpg","origin":"dream/1/setting/20231228//19a648306dd555f044ae1321519d9765.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13880121131","tel2":"","openTime":"07:00:00","closeTime":"22:00:00","mch":{"id":81,"name":"拓世体育"}},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":886,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2023/11/04 11:22","modifyById":0,"name":"课程顾问","description":"销售顾问","orgId":186,"sys":1,"roleGroup":"org","roleName":"salesman","state":"USED"},"state":"USED"},{"id":1621,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":187,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"惠海琴行","description":null,"address":"龙泉驿区","addressDetail":"成都市龙泉驿区怡和新城F4区双龙路388号24栋附106、107号","lng":104.262856,"lat":30.572496,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"KS","region":[],"logos":[],"galleries":[],"tel1":"18884828287","tel2":"","openTime":"09:00:00","closeTime":"21:30:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":890,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":187,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1647,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":190,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"莱斯普乐艺术","description":null,"address":"锦江区锦丽路187号1楼","addressDetail":"","lng":104.09539,"lat":30.615751,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"莱斯普乐艺术培训学校","region":[],"logos":[],"galleries":[],"tel1":"15196265492","tel2":"","openTime":"09:00:00","closeTime":"21:00:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":905,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":190,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":2150,"createTime":"2024/09/13 19:15","createById":35,"modifyTime":"2024/10/15 09:15","modifyById":35,"name":"华老师","description":"","mobile":"","gender":"MALE","birthday":"2004/09/13","avatars":[],"org":{"id":192,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/10/25 09:32","modifyById":35,"name":"格斗馆","description":"","address":"四川省成都市锦江区中纱帽街8号","addressDetail":"商鼎国际2-1","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"巨石","region":[],"logos":[{"url1":"dream/1/setting/20240320/0e6dbe1029f347fd89eb5c99f287eaee.png","url2":"dream/1/setting/20240320/d1fca9110425cc02150b7c3f54298fbd.png","url3":"dream/1/setting/20240320/cdfd92ee8fd3da597be2144cd82f8788.png","origin":"dream/1/setting/20240320/86c0f4f1dfde36b0a9ea2b545ebc79c7.png","def":null,"ext":"png","duration":null}],"galleries":[{"url1":"dream/1/setting/20240809/d2b570eb5fc51f9e0a07106b96a0552c.jpg","url2":"dream/1/setting/20240809/4cfd9736bf2bc207cc50735f183fe6d7.jpg","url3":"dream/1/setting/20240809/8545384e4c2b8ccd0cba03833156884d.jpg","origin":"dream/1/setting/20240809/735f4daf8efc136ff4ab83d80dc9a79c.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"15002830891","tel2":null,"openTime":"08:00:00","closeTime":"21:00:00","mch":null},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":912,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/03/31 19:35","modifyById":1,"name":"教师","description":"教师","orgId":192,"sys":1,"roleGroup":"org","roleName":"staff","state":"USED"},"state":"USED"},{"id":1658,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:59","modifyById":46,"name":"张老师","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":193,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:57","modifyById":1,"name":"测试机构1","description":null,"address":null,"addressDetail":null,"lng":null,"lat":null,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"测试机构1","region":[],"logos":[],"galleries":[],"tel1":null,"tel2":null,"openTime":"10:00:00","closeTime":"21:00:00","mch":null},"title":"管理员","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":920,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:57","modifyById":1,"name":"管理员","description":"校长,管理员,助理","orgId":193,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"}],"sessionKey":null,"players":[{"id":3366,"name":"牛小二","orgId":193,"orgName":"测试机构1","mobile":"136780078","mgr":true,"state":"USED"},{"id":3372,"name":"张华","orgId":192,"orgName":"格斗馆","mobile":"","mgr":true,"state":"USED"}],"wxOpenid":"o4UBK6jiXYDPyeL3k54VI_3aNxN0","wxUnionid":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenid":"oApStw7I11L8uo1HoTWK4MUTBzkY"}');
        // localStorage.setItem("staffs", '[{"id":2569,"createTime":"2023/11/16 09:58","createById":1,"modifyTime":"2023/11/16 09:58","modifyById":46,"name":"张华","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":306,"createTime":"2023/06/06 19:47","createById":0,"modifyTime":"2024/05/22 00:02","modifyById":1,"name":"叮当云服务","description":"","address":"成都市","addressDetail":"123","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"PLATFORM","companyName":"88","region":[],"logos":[{"url1":"dream/1/setting/20240320/2a7d900fc72878a774d3cd6aea2195e0.jpg","url2":"dream/1/setting/20240320/9ccea81dbfdcb8e4d0c86b978aca0e42.jpg","url3":"dream/1/setting/20240320/a78b9307b000b3ec4d6ecc9d276494ee.jpg","origin":"dream/1/setting/20240320/71fad2f4bcae8fc644dca5d95b98c08c.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20240403/f87b937eedaf8842c59bbdcecf60d94e.jpg","url2":"dream/1/setting/20240403/172dc3868484f8b88ad26e54bb51d737.jpg","url3":"dream/1/setting/20240403/b1ddd7a6a8433e6ebace1d5360e426a1.jpg","origin":"dream/1/setting/20240403/15ba95a920efb1353226863f2ba26b53.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13981970816","tel2":"","openTime":"10:00:00","closeTime":"20:00:00","mch":{"id":1,"name":"优创力直营店"}},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":427,"createTime":"2023/10/04 13:18","createById":22,"modifyTime":"2023/10/04 13:18","modifyById":22,"name":"管理员","description":"校长,管理员,助理","orgId":1,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1616,"createTime":"2023/11/04 11:23","createById":0,"modifyTime":"2023/12/08 14:10","modifyById":35,"name":"叮当上课-技术","description":"","mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":186,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2024/09/11 15:16","modifyById":35,"name":"拓世体育","description":"","address":"四川省成都市锦江区琉三路999号","addressDetail":"成都市锦江区水井坊锦江体育公园","lng":104.11273956298828,"lat":30.597631454467773,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"拓世体育","region":[],"logos":[{"url1":"dream/1/setting/20240911/35c21c25bdabe256e6d80a04443130bd.jpg","url2":"dream/1/setting/20240911/d147a21d1a515b8f1130f48131fb0fd0.jpg","url3":"dream/1/setting/20240911/4b377e21b8a24c326537b7033b3c5368.jpg","origin":"dream/1/setting/20240911/0fa9c2150e361d00a4c605477f355b72.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20231228//1fd0a04396e38f97154518976d2b9fcf.jpg","url2":"dream/1/setting/20231228//a8820bfd6b5b68430930308b138d07b8.jpg","url3":"dream/1/setting/20231228//4362c82baef5dd9114cc612275c5ef8b.jpg","origin":"dream/1/setting/20231228//19a648306dd555f044ae1321519d9765.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13880121131","tel2":"","openTime":"07:00:00","closeTime":"22:00:00","mch":{"id":81,"name":"拓世体育"}},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":886,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2023/11/04 11:22","modifyById":0,"name":"课程顾问","description":"销售顾问","orgId":186,"sys":1,"roleGroup":"org","roleName":"salesman","state":"USED"},"state":"USED"},{"id":1621,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":187,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"惠海琴行","description":null,"address":"龙泉驿区","addressDetail":"成都市龙泉驿区怡和新城F4区双龙路388号24栋附106、107号","lng":104.262856,"lat":30.572496,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"KS","region":[],"logos":[],"galleries":[],"tel1":"18884828287","tel2":"","openTime":"09:00:00","closeTime":"21:30:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":890,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":187,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1647,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":190,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"莱斯普乐艺术","description":null,"address":"锦江区锦丽路187号1楼","addressDetail":"","lng":104.09539,"lat":30.615751,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"莱斯普乐艺术培训学校","region":[],"logos":[],"galleries":[],"tel1":"15196265492","tel2":"","openTime":"09:00:00","closeTime":"21:00:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":905,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":190,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":2150,"createTime":"2024/09/13 19:15","createById":35,"modifyTime":"2024/10/15 09:15","modifyById":35,"name":"华老师","description":"","mobile":"","gender":"MALE","birthday":"2004/09/13","avatars":[],"org":{"id":192,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/10/25 09:32","modifyById":35,"name":"格斗馆","description":"","address":"四川省成都市锦江区中纱帽街8号","addressDetail":"商鼎国际2-1","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"巨石","region":[],"logos":[{"url1":"dream/1/setting/20240320/0e6dbe1029f347fd89eb5c99f287eaee.png","url2":"dream/1/setting/20240320/d1fca9110425cc02150b7c3f54298fbd.png","url3":"dream/1/setting/20240320/cdfd92ee8fd3da597be2144cd82f8788.png","origin":"dream/1/setting/20240320/86c0f4f1dfde36b0a9ea2b545ebc79c7.png","def":null,"ext":"png","duration":null}],"galleries":[{"url1":"dream/1/setting/20240809/d2b570eb5fc51f9e0a07106b96a0552c.jpg","url2":"dream/1/setting/20240809/4cfd9736bf2bc207cc50735f183fe6d7.jpg","url3":"dream/1/setting/20240809/8545384e4c2b8ccd0cba03833156884d.jpg","origin":"dream/1/setting/20240809/735f4daf8efc136ff4ab83d80dc9a79c.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"15002830891","tel2":null,"openTime":"08:00:00","closeTime":"21:00:00","mch":null},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":912,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/03/31 19:35","modifyById":1,"name":"教师","description":"教师","orgId":192,"sys":1,"roleGroup":"org","roleName":"staff","state":"USED"},"state":"USED"},{"id":1658,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:59","modifyById":46,"name":"张老师","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":193,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:57","modifyById":1,"name":"测试机构1","description":null,"address":null,"addressDetail":null,"lng":null,"lat":null,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"测试机构1","region":[],"logos":[],"galleries":[],"tel1":null,"tel2":null,"openTime":"10:00:00","closeTime":"21:00:00","mch":null},"title":"管理员","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":920,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:57","modifyById":1,"name":"管理员","description":"校长,管理员,助理","orgId":193,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"}]');
        // localStorage.setItem("selectStaff", '{"id":2569,"createTime":"2023/11/16 09:58","createById":1,"modifyTime":"2023/11/16 09:58","modifyById":46,"name":"张华","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":306,"createTime":"2023/06/06 19:47","createById":0,"modifyTime":"2024/05/22 00:02","modifyById":1,"name":"叮当云服务","description":"","address":"成都市","addressDetail":"123","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"PLATFORM","companyName":"88","region":[],"logos":[{"url1":"dream/1/setting/20240320/2a7d900fc72878a774d3cd6aea2195e0.jpg","url2":"dream/1/setting/20240320/9ccea81dbfdcb8e4d0c86b978aca0e42.jpg","url3":"dream/1/setting/20240320/a78b9307b000b3ec4d6ecc9d276494ee.jpg","origin":"dream/1/setting/20240320/71fad2f4bcae8fc644dca5d95b98c08c.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20240403/f87b937eedaf8842c59bbdcecf60d94e.jpg","url2":"dream/1/setting/20240403/172dc3868484f8b88ad26e54bb51d737.jpg","url3":"dream/1/setting/20240403/b1ddd7a6a8433e6ebace1d5360e426a1.jpg","origin":"dream/1/setting/20240403/15ba95a920efb1353226863f2ba26b53.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13981970816","tel2":"","openTime":"10:00:00","closeTime":"20:00:00","mch":{"id":1,"name":"优创力直营店"}},"title":null,"user":{"id":25,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":427,"createTime":"2023/10/04 13:18","createById":22,"modifyTime":"2023/10/04 13:18","modifyById":22,"name":"管理员","description":"校长,管理员,助理","orgId":1,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"}');
        // // 正式库测试机构 orgid=306
        localStorage.setItem("user", '{"id":46,"name":"微信用户","mobile":"18080857109","gender":"FEMALE","jwtToken":"eyJhbGciOiJIUzI1NiJ9.eyJleHBUaW1lIjoiMjAyNC8xMi8yMiAxNDoxOSIsInVzZXJJZCI6NDYsImp0aSI6ImFhNDE5NWM5LWI4NmEtNDU3Ni1hMTBhLTQ0YWE5MzY1MDVhZSIsImlhdCI6MTczNDg0MTE3NCwic3ViIjoieWNsIiwiZXhwIjoxNzM0ODQ4Mzc0fQ.4gn9c6Ga5J74Al_3ClPuScqbUQWieEL0iJzz4e4YY0g","avatars":[],"staffs":[{"id":1659,"createTime":"2023/11/16 09:58","createById":1,"modifyTime":"2023/11/16 09:58","modifyById":46,"name":"张华","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":1,"createTime":"2023/06/06 19:47","createById":0,"modifyTime":"2024/05/22 00:02","modifyById":1,"name":"叮当云服务","description":"","address":"成都市","addressDetail":"123","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"PLATFORM","companyName":"88","region":[],"logos":[{"url1":"dream/1/setting/20240320/2a7d900fc72878a774d3cd6aea2195e0.jpg","url2":"dream/1/setting/20240320/9ccea81dbfdcb8e4d0c86b978aca0e42.jpg","url3":"dream/1/setting/20240320/a78b9307b000b3ec4d6ecc9d276494ee.jpg","origin":"dream/1/setting/20240320/71fad2f4bcae8fc644dca5d95b98c08c.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20240403/f87b937eedaf8842c59bbdcecf60d94e.jpg","url2":"dream/1/setting/20240403/172dc3868484f8b88ad26e54bb51d737.jpg","url3":"dream/1/setting/20240403/b1ddd7a6a8433e6ebace1d5360e426a1.jpg","origin":"dream/1/setting/20240403/15ba95a920efb1353226863f2ba26b53.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13981970816","tel2":"","openTime":"10:00:00","closeTime":"20:00:00","mch":{"id":1,"name":"优创力直营店"}},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":427,"createTime":"2023/10/04 13:18","createById":22,"modifyTime":"2023/10/04 13:18","modifyById":22,"name":"管理员","description":"校长,管理员,助理","orgId":1,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1616,"createTime":"2023/11/04 11:23","createById":0,"modifyTime":"2023/12/08 14:10","modifyById":35,"name":"叮当上课-技术","description":"","mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":186,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2024/09/11 15:16","modifyById":35,"name":"拓世体育","description":"","address":"四川省成都市锦江区琉三路999号","addressDetail":"成都市锦江区水井坊锦江体育公园","lng":104.11273956298828,"lat":30.597631454467773,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"拓世体育","region":[],"logos":[{"url1":"dream/1/setting/20240911/35c21c25bdabe256e6d80a04443130bd.jpg","url2":"dream/1/setting/20240911/d147a21d1a515b8f1130f48131fb0fd0.jpg","url3":"dream/1/setting/20240911/4b377e21b8a24c326537b7033b3c5368.jpg","origin":"dream/1/setting/20240911/0fa9c2150e361d00a4c605477f355b72.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20231228//1fd0a04396e38f97154518976d2b9fcf.jpg","url2":"dream/1/setting/20231228//a8820bfd6b5b68430930308b138d07b8.jpg","url3":"dream/1/setting/20231228//4362c82baef5dd9114cc612275c5ef8b.jpg","origin":"dream/1/setting/20231228//19a648306dd555f044ae1321519d9765.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13880121131","tel2":"","openTime":"07:00:00","closeTime":"22:00:00","mch":{"id":81,"name":"拓世体育"}},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":886,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2023/11/04 11:22","modifyById":0,"name":"课程顾问","description":"销售顾问","orgId":186,"sys":1,"roleGroup":"org","roleName":"salesman","state":"USED"},"state":"USED"},{"id":1621,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":187,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"惠海琴行","description":null,"address":"龙泉驿区","addressDetail":"成都市龙泉驿区怡和新城F4区双龙路388号24栋附106、107号","lng":104.262856,"lat":30.572496,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"KS","region":[],"logos":[],"galleries":[],"tel1":"18884828287","tel2":"","openTime":"09:00:00","closeTime":"21:30:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":890,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":187,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1647,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":190,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"莱斯普乐艺术","description":null,"address":"锦江区锦丽路187号1楼","addressDetail":"","lng":104.09539,"lat":30.615751,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"莱斯普乐艺术培训学校","region":[],"logos":[],"galleries":[],"tel1":"15196265492","tel2":"","openTime":"09:00:00","closeTime":"21:00:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":905,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":190,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":2150,"createTime":"2024/09/13 19:15","createById":35,"modifyTime":"2024/10/15 09:15","modifyById":35,"name":"华老师","description":"","mobile":"","gender":"MALE","birthday":"2004/09/13","avatars":[],"org":{"id":192,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/10/25 09:32","modifyById":35,"name":"格斗馆","description":"","address":"四川省成都市锦江区中纱帽街8号","addressDetail":"商鼎国际2-1","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"巨石","region":[],"logos":[{"url1":"dream/1/setting/20240320/0e6dbe1029f347fd89eb5c99f287eaee.png","url2":"dream/1/setting/20240320/d1fca9110425cc02150b7c3f54298fbd.png","url3":"dream/1/setting/20240320/cdfd92ee8fd3da597be2144cd82f8788.png","origin":"dream/1/setting/20240320/86c0f4f1dfde36b0a9ea2b545ebc79c7.png","def":null,"ext":"png","duration":null}],"galleries":[{"url1":"dream/1/setting/20240809/d2b570eb5fc51f9e0a07106b96a0552c.jpg","url2":"dream/1/setting/20240809/4cfd9736bf2bc207cc50735f183fe6d7.jpg","url3":"dream/1/setting/20240809/8545384e4c2b8ccd0cba03833156884d.jpg","origin":"dream/1/setting/20240809/735f4daf8efc136ff4ab83d80dc9a79c.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"15002830891","tel2":null,"openTime":"08:00:00","closeTime":"21:00:00","mch":null},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":912,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/03/31 19:35","modifyById":1,"name":"教师","description":"教师","orgId":192,"sys":1,"roleGroup":"org","roleName":"staff","state":"USED"},"state":"USED"},{"id":2569,"createTime":"2024/11/29 11:05","createById":3555,"modifyTime":"2024/11/29 11:06","modifyById":46,"name":"张华","description":"","mobile":"","gender":"MALE","birthday":"2004/11/29","avatars":[],"org":{"id":306,"createTime":"2024/10/25 15:51","createById":1,"modifyTime":"2024/12/10 13:28","modifyById":1,"name":"晓博机构","description":null,"address":null,"addressDetail":null,"lng":null,"lat":null,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"晓博机构","region":[],"logos":[],"galleries":[],"tel1":null,"tel2":null,"openTime":"10:00:00","closeTime":"21:00:00","mch":null},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":1370,"createTime":"2024/10/25 15:51","createById":1,"modifyTime":"2024/10/25 15:51","modifyById":1,"name":"管理员","description":"校长,管理员,助理","orgId":306,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"}],"sessionKey":"zte8vmoX+swbnjI2/twPcg==","players":[{"id":3366,"name":"牛小二","orgId":193,"orgName":"测试机构1","mobile":"136780078","mgr":true,"state":"USED"},{"id":3372,"name":"张华","orgId":192,"orgName":"格斗馆","mobile":"","mgr":true,"state":"USED"}],"wxOpenid":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionid":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenid":"oApStw7I11L8uo1HoTWK4MUTBzkY"}');
        localStorage.setItem("staffs", '[{"id":2569,"createTime":"2023/11/16 09:58","createById":1,"modifyTime":"2023/11/16 09:58","modifyById":46,"name":"张华","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":306,"createTime":"2023/06/06 19:47","createById":0,"modifyTime":"2024/05/22 00:02","modifyById":1,"name":"叮当云服务","description":"","address":"成都市","addressDetail":"123","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"PLATFORM","companyName":"88","region":[],"logos":[{"url1":"dream/1/setting/20240320/2a7d900fc72878a774d3cd6aea2195e0.jpg","url2":"dream/1/setting/20240320/9ccea81dbfdcb8e4d0c86b978aca0e42.jpg","url3":"dream/1/setting/20240320/a78b9307b000b3ec4d6ecc9d276494ee.jpg","origin":"dream/1/setting/20240320/71fad2f4bcae8fc644dca5d95b98c08c.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20240403/f87b937eedaf8842c59bbdcecf60d94e.jpg","url2":"dream/1/setting/20240403/172dc3868484f8b88ad26e54bb51d737.jpg","url3":"dream/1/setting/20240403/b1ddd7a6a8433e6ebace1d5360e426a1.jpg","origin":"dream/1/setting/20240403/15ba95a920efb1353226863f2ba26b53.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13981970816","tel2":"","openTime":"10:00:00","closeTime":"20:00:00","mch":{"id":1,"name":"优创力直营店"}},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":427,"createTime":"2023/10/04 13:18","createById":22,"modifyTime":"2023/10/04 13:18","modifyById":22,"name":"管理员","description":"校长,管理员,助理","orgId":1,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1616,"createTime":"2023/11/04 11:23","createById":0,"modifyTime":"2023/12/08 14:10","modifyById":35,"name":"叮当上课-技术","description":"","mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":186,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2024/09/11 15:16","modifyById":35,"name":"拓世体育","description":"","address":"四川省成都市锦江区琉三路999号","addressDetail":"成都市锦江区水井坊锦江体育公园","lng":104.11273956298828,"lat":30.597631454467773,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"拓世体育","region":[],"logos":[{"url1":"dream/1/setting/20240911/35c21c25bdabe256e6d80a04443130bd.jpg","url2":"dream/1/setting/20240911/d147a21d1a515b8f1130f48131fb0fd0.jpg","url3":"dream/1/setting/20240911/4b377e21b8a24c326537b7033b3c5368.jpg","origin":"dream/1/setting/20240911/0fa9c2150e361d00a4c605477f355b72.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20231228//1fd0a04396e38f97154518976d2b9fcf.jpg","url2":"dream/1/setting/20231228//a8820bfd6b5b68430930308b138d07b8.jpg","url3":"dream/1/setting/20231228//4362c82baef5dd9114cc612275c5ef8b.jpg","origin":"dream/1/setting/20231228//19a648306dd555f044ae1321519d9765.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13880121131","tel2":"","openTime":"07:00:00","closeTime":"22:00:00","mch":{"id":81,"name":"拓世体育"}},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":886,"createTime":"2023/11/04 11:22","createById":0,"modifyTime":"2023/11/04 11:22","modifyById":0,"name":"课程顾问","description":"销售顾问","orgId":186,"sys":1,"roleGroup":"org","roleName":"salesman","state":"USED"},"state":"USED"},{"id":1621,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":187,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"惠海琴行","description":null,"address":"龙泉驿区","addressDetail":"成都市龙泉驿区怡和新城F4区双龙路388号24栋附106、107号","lng":104.262856,"lat":30.572496,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"KS","region":[],"logos":[],"galleries":[],"tel1":"18884828287","tel2":"","openTime":"09:00:00","closeTime":"21:30:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":890,"createTime":"2023/11/04 11:43","createById":0,"modifyTime":"2023/11/04 11:43","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":187,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":1647,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"叮当技术支持","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":"1998/11/04","avatars":[],"org":{"id":190,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"莱斯普乐艺术","description":null,"address":"锦江区锦丽路187号1楼","addressDetail":"","lng":104.09539,"lat":30.615751,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"莱斯普乐艺术培训学校","region":[],"logos":[],"galleries":[],"tel1":"15196265492","tel2":"","openTime":"09:00:00","closeTime":"21:00:00","mch":null},"title":"老师","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":905,"createTime":"2023/11/04 13:09","createById":0,"modifyTime":"2023/11/04 13:09","modifyById":0,"name":"管理员","description":"校长,管理员,助理","orgId":190,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"},{"id":2150,"createTime":"2024/09/13 19:15","createById":35,"modifyTime":"2024/10/15 09:15","modifyById":35,"name":"华老师","description":"","mobile":"","gender":"MALE","birthday":"2004/09/13","avatars":[],"org":{"id":192,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/10/25 09:32","modifyById":35,"name":"格斗馆","description":"","address":"四川省成都市锦江区中纱帽街8号","addressDetail":"商鼎国际2-1","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"巨石","region":[],"logos":[{"url1":"dream/1/setting/20240320/0e6dbe1029f347fd89eb5c99f287eaee.png","url2":"dream/1/setting/20240320/d1fca9110425cc02150b7c3f54298fbd.png","url3":"dream/1/setting/20240320/cdfd92ee8fd3da597be2144cd82f8788.png","origin":"dream/1/setting/20240320/86c0f4f1dfde36b0a9ea2b545ebc79c7.png","def":null,"ext":"png","duration":null}],"galleries":[{"url1":"dream/1/setting/20240809/d2b570eb5fc51f9e0a07106b96a0552c.jpg","url2":"dream/1/setting/20240809/4cfd9736bf2bc207cc50735f183fe6d7.jpg","url3":"dream/1/setting/20240809/8545384e4c2b8ccd0cba03833156884d.jpg","origin":"dream/1/setting/20240809/735f4daf8efc136ff4ab83d80dc9a79c.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"15002830891","tel2":null,"openTime":"08:00:00","closeTime":"21:00:00","mch":null},"title":null,"user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":912,"createTime":"2023/11/10 09:17","createById":1,"modifyTime":"2024/03/31 19:35","modifyById":1,"name":"教师","description":"教师","orgId":192,"sys":1,"roleGroup":"org","roleName":"staff","state":"USED"},"state":"USED"},{"id":1658,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:59","modifyById":46,"name":"张老师","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":193,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:57","modifyById":1,"name":"测试机构1","description":null,"address":null,"addressDetail":null,"lng":null,"lat":null,"pid":0,"versionType":"STANDARD","orgType":"NORMAL","companyName":"测试机构1","region":[],"logos":[],"galleries":[],"tel1":null,"tel2":null,"openTime":"10:00:00","closeTime":"21:00:00","mch":null},"title":"管理员","user":{"id":46,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":920,"createTime":"2023/11/16 09:57","createById":1,"modifyTime":"2023/11/16 09:57","modifyById":1,"name":"管理员","description":"校长,管理员,助理","orgId":193,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"}]');
        localStorage.setItem("selectStaff", '{"id":2569,"createTime":"2023/11/16 09:58","createById":1,"modifyTime":"2023/11/16 09:58","modifyById":46,"name":"张华","description":"","mobile":"18080857109","gender":"MALE","birthday":"2003/11/16","avatars":[],"org":{"id":306,"createTime":"2023/06/06 19:47","createById":0,"modifyTime":"2024/05/22 00:02","modifyById":1,"name":"叮当云服务","description":"","address":"成都市","addressDetail":"123","lng":104.08373260498047,"lat":30.653186798095703,"pid":0,"versionType":"STANDARD","orgType":"PLATFORM","companyName":"88","region":[],"logos":[{"url1":"dream/1/setting/20240320/2a7d900fc72878a774d3cd6aea2195e0.jpg","url2":"dream/1/setting/20240320/9ccea81dbfdcb8e4d0c86b978aca0e42.jpg","url3":"dream/1/setting/20240320/a78b9307b000b3ec4d6ecc9d276494ee.jpg","origin":"dream/1/setting/20240320/71fad2f4bcae8fc644dca5d95b98c08c.jpg","def":null,"ext":"jpg","duration":null}],"galleries":[{"url1":"dream/1/setting/20240403/f87b937eedaf8842c59bbdcecf60d94e.jpg","url2":"dream/1/setting/20240403/172dc3868484f8b88ad26e54bb51d737.jpg","url3":"dream/1/setting/20240403/b1ddd7a6a8433e6ebace1d5360e426a1.jpg","origin":"dream/1/setting/20240403/15ba95a920efb1353226863f2ba26b53.jpg","def":null,"ext":"jpg","duration":null}],"tel1":"13981970816","tel2":"","openTime":"10:00:00","closeTime":"20:00:00","mch":{"id":1,"name":"优创力直营店"}},"title":null,"user":{"id":25,"createTime":"2023/11/16 09:44","createById":0,"modifyTime":"2023/11/16 09:44","modifyById":46,"name":"微信用户","description":null,"mobile":"18080857109","gender":"FEMALE","birthday":null,"avatars":[],"wxOpenId":"ossku41W2iaQstCmFjGuenxP7lUg","wxUnionId":"oI1DI1QIOZp2Q1s7YCeOGkoxMoys","wxOaOpenId":"oApStw7I11L8uo1HoTWK4MUTBzkY"},"role":{"id":427,"createTime":"2023/10/04 13:18","createById":22,"modifyTime":"2023/10/04 13:18","modifyById":22,"name":"管理员","description":"校长,管理员,助理","orgId":1,"sys":1,"roleGroup":"org","roleName":"admin","state":"USED"},"state":"USED"}');
        // 正式库测试机构 orgid=306
    },
    mounted() {
        // 关闭浏览器窗口的时候清空浏览器缓存在localStorage的数据
src/api/order.js
New file
@@ -0,0 +1,14 @@
import apolloClient from "@/utils/graphql";
import gql from "graphql-tag";
export function getData(params) {
    return apolloClient.query({
      query: gql`
        query vars($staffId:Int!,$keyword:String,$pageIn:PageIn!){
        findOrderByOrgId(staffId:$staffId,keyword:$keyword,pageIn:$pageIn) {
          ls{id number createTime state payType payState message buyer{name } mobile amt discount originAmt
          playerBaseInfo{id name} orgBaseInfo{id name} saleStaff{name}
          details{goodsName skuName unitName voucherName giftQty qty amt price goodsGalleries{url1 url2 url3 origin def ext}  }} pageOut{total index size} }}`,
      variables: params,
    });
}
src/layout/components/Navbar.vue
@@ -13,7 +13,9 @@
    <div class="right-menu">
      <el-dropdown trigger="click" ref="eldrop" style="margin-right: 20px">
        <div class="avatar-wrapper" style="font-size: 20px">
          {{ selectStaff.org.name }}-{{ selectStaff.role.name }}
          {{ selectStaff ? selectStaff.org.name : "" }}-{{
            selectStaff ? selectStaff.role.name : ""
          }}
          <i class="el-icon-caret-bottom"></i>
        </div>
        <el-dropdown-menu slot="dropdown" align="center">
@@ -22,7 +24,7 @@
            @click.native="changeStaff(item)"
            :key="item.id"
          >
            {{ item.org.name }}-{{ item.role.name }}
            {{ item ? item.org.name : "" }}-{{ item ? item.role.name : "" }}
          </el-dropdown-item>
        </el-dropdown-menu>
      </el-dropdown>
@@ -87,6 +89,12 @@
      this.$router.push(`/login`);
    },
  },
  beforeCreate() {
    const user = JSON.parse(localStorage.getItem("user"));
    if (!user) {
      this.$router.push(`/login`);
    }
  },
  created() {
    const selectStaff = JSON.parse(localStorage.getItem("selectStaff"));
    if (selectStaff) {
src/router/index.js
@@ -105,6 +105,19 @@
        icon: "table"
      },
    }, ],
  },{
    path: "/",
    component: Layout,
    redirect: "/order",
    children: [{
      path: "/order",
      name: "Order",
      component: () => import("@/views/order/index"),
      meta: {
        title: "学员订单",
        icon: "table"
      },
    }, ],
  },
  // {
  //   path: "/educational",
src/utils/graphql.js
@@ -3,37 +3,56 @@
// const apolloClient = new ApolloClient({
//   uri: 'http://127.0.0.1:7001/graphql'
// })
import {
  MessageBox
} from 'element-ui'
// export default apolloClient;
// 定义不同请求地址
const EFORMURI = "/dream/graphql";
const IOTURI = "/dream/graphql";
// import ApolloClient from 'apollo-boost' //引入apollo-boost插件
import { ApolloClient } from "apollo-client";
import { createHttpLink } from "apollo-link-http";
import { InMemoryCache } from "apollo-cache-inmemory";
import { ApolloLink } from "apollo-link";
import {
  ApolloClient
} from "apollo-client";
import {
  createHttpLink
} from "apollo-link-http";
import {
  InMemoryCache
} from "apollo-cache-inmemory";
import {
  ApolloLink
} from "apollo-link";
const httpLink = createHttpLink({
  uri: EFORMURI, //配置api调用连接
});
const middlewareLink = new ApolloLink((operation, forward) => {
  operation.setContext({
    headers: {
      Authorization: JSON.parse(localStorage.getItem("user")).jwtToken,
      // Authorization:'eyJhbGciOiJIUzI1NiJ9.eyJleHBUaW1lIjoiMjAyNC8wNy8zMSAxODoxMSIsInVzZXJJZCI6NDQsImp0aSI6ImVlMDM3NmFjLWQ5OTAtNDRkZS05YTVmLTUxYjhjMjc0YWNiOSIsImlhdCI6MTcyMjQxMzUwMSwic3ViIjoieWNsIiwiZXhwIjoxNzIyNDIwNzAxfQ.bSd0qag44dwXeJQpvryYJXEtrQ03-8MmHQWhgILGXO4',
      staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
      playerId:
        JSON.parse(localStorage.getItem("user")).players.length > 0
          ? JSON.parse(localStorage.getItem("user")).players[0].id
          : 0,
    },
  }); //request拦截器
  const user = JSON.parse(localStorage.getItem("user"))
  if (user) {
    operation.setContext({
      headers: {
        Authorization: user.jwtToken,
        // Authorization:'eyJhbGciOiJIUzI1NiJ9.eyJleHBUaW1lIjoiMjAyNC8wNy8zMSAxODoxMSIsInVzZXJJZCI6NDQsImp0aSI6ImVlMDM3NmFjLWQ5OTAtNDRkZS05YTVmLTUxYjhjMjc0YWNiOSIsImlhdCI6MTcyMjQxMzUwMSwic3ViIjoieWNsIiwiZXhwIjoxNzIyNDIwNzAxfQ.bSd0qag44dwXeJQpvryYJXEtrQ03-8MmHQWhgILGXO4',
        staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
        playerId: user.players.length > 0 ?
          user.players[0].id : 0,
      },
    }); //request拦截器
  return forward(operation).map((response) => {
    return response;
  }); //response拦截器,但是此处并不能对错误响应进行拦截
    return forward(operation).map((response) => {
      return response;
    }); //response拦截器,但是此处并不能对错误响应进行拦截
  } else {
    MessageBox.confirm('登录状态已过期,您可以继续留在该页面,或者重新登录', '系统提示', {
      confirmButtonText: '重新登录',
      cancelButtonText: '取消',
      type: 'warning'
    }).then(() => {
      location.href = '/#/login';
    })
  }
});
const authLink = middlewareLink.concat(httpLink);
@@ -53,7 +72,7 @@
  link: authLink,
  cache: new InMemoryCache(),
  connectToDevTools: true,
  defaultOptions: defaultOptions,
  // defaultOptions: defaultOptions,
});
// const apolloClient = new ApolloClient({
//   uri: 'https://countries.trevorblades.com/',
src/utils/print.js
New file
@@ -0,0 +1,98 @@
export function printHtml(html) {
  let style = getStyle();
  let container = getContainer(html);
  document.body.appendChild(style);
  document.body.appendChild(container);
  getLoadPromise(container).then(() => {
    window.print();
    document.body.removeChild(style);
    document.body.removeChild(container);
  });
}
// 设置打印样式
function getStyle() {
  let styleContent = `#print-container {
      display: none;
  }
  @media print {
      body > :not(.print-container) {
          display: none;
      }
      html,
      body {
          display: block !important;
      }
      #print-container {
          display: block;
      }
  }
      @page {
        margin-top: 0;
        margin-bottom: 0
        }
    .div-2-column {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
    .m-h2 {
        text-align: center;
        font-size: 1.17em;
        margin-top: 50px;
        font-weight: bold;
    }
    #tr {
        height: 30px;
    }
    .txt-center {
        text-align: center;
    }
`;
  let style = document.createElement("style");
  style.innerHTML = styleContent;
  return style;
}
// 清空打印内容
function cleanPrint() {
  let div = document.getElementById('print-container')
  if (!!div) {
    document.querySelector('body').removeChild(div)
  }
}
// 新建DOM,将需要打印的内容填充到DOM
function getContainer(html) {
  cleanPrint()
  let container = document.createElement("div");
  container.setAttribute("id", "print-container");
  container.innerHTML = html;
  return container;
}
// 图片完全加载后再调用打印方法
function getLoadPromise(dom) {
  let imgs = dom.querySelectorAll("img");
  imgs = [].slice.call(imgs);
  if (imgs.length === 0) {
    return Promise.resolve();
  }
  let finishedCount = 0;
  return new Promise(resolve => {
    function check() {
      finishedCount++;
      if (finishedCount === imgs.length) {
        resolve();
      }
    }
    imgs.forEach(img => {
      img.addEventListener("load", check);
      img.addEventListener("error", check);
    })
  });
}
src/utils/ruoyi.js
@@ -1,5 +1,3 @@
/**
 * 通用js方法封装处理
 * Copyright (c) 2019 ruoyi
@@ -37,7 +35,9 @@
  const time_str = format.replace(/{(y|m|d|h|i|s|a)+}/g, (result, key) => {
    let value = formatObj[key]
    // Note: getDay() returns 0 on Sunday
    if (key === 'a') { return ['日', '一', '二', '三', '四', '五', '六'][value] }
    if (key === 'a') {
      return ['日', '一', '二', '三', '四', '五', '六'][value]
    }
    if (result.length > 0 && value < 10) {
      value = '0' + value
    }
@@ -88,7 +88,7 @@
// 回显数据字典(字符串、数组)
export function selectDictLabels(datas, value, separator) {
  if (value === undefined || value.length ===0) {
  if (value === undefined || value.length === 0) {
    return "";
  }
  if (Array.isArray(value)) {
@@ -114,7 +114,9 @@
// 字符串格式化(%s )
export function sprintf(str) {
  var args = arguments, flag = true, i = 1;
  var args = arguments,
    flag = true,
    i = 1;
  str = str.replace(/%s/g, function () {
    var arg = args[i++];
    if (typeof arg === 'undefined') {
@@ -202,9 +204,9 @@
}
/**
* 参数处理
* @param {*} params  参数
*/
 * 参数处理
 * @param {*} params  参数
 */
export function tansParams(params) {
  let result = ''
  for (const propName of Object.keys(params)) {
@@ -231,3 +233,96 @@
export function blobValidate(data) {
  return data.type !== 'application/json'
}
export function convertCurrency(money) {
  //汉字的数字
  var cnNums = new Array('零', '壹', '贰', '叁', '肆', '伍', '陆', '柒', '捌', '玖');
  //基本单位
  var cnIntRadice = new Array('', '拾', '佰', '仟');
  //对应整数部分扩展单位
  var cnIntUnits = new Array('', '万', '亿', '兆');
  //对应小数部分单位
  var cnDecUnits = new Array('角', '分', '毫', '厘');
  //整数金额时后面跟的字符
  var cnInteger = '整';
  //整型完以后的单位
  var cnIntLast = '元';
  //最大处理的数字
  var maxNum = 999999999999999.9999;
  //金额整数部分
  var integerNum;
  //金额小数部分
  var decimalNum;
  //输出的中文金额字符串
  var chineseStr = '';
  //分离金额后用的数组,预定义
  var parts;
  // 传入的参数为空情况
  if (money == '') {
    return '';
  }
  money = parseFloat(money)
  if (money >= maxNum) {
    return ''
  }
  // 传入的参数为0情况
  if (money == 0) {
    chineseStr = cnNums[0] + cnIntLast + cnInteger;
    return chineseStr
  }
  // 转为字符串
  money = money.toString();
  // indexOf 检测某字符在字符串中首次出现的位置 返回索引值(从0 开始) -1 代表无
  if (money.indexOf('.') == -1) {
    integerNum = money;
    decimalNum = ''
  } else {
    parts = money.split('.');
    integerNum = parts[0];
    decimalNum = parts[1].substr(0, 4);
  }
  //转换整数部分
  if (parseInt(integerNum, 10) > 0) {
    let zeroCount = 0;
    let IntLen = integerNum.length
    for (let i = 0; i < IntLen; i++) {
      let n = integerNum.substr(i, 1);
      let p = IntLen - i - 1;
      let q = p / 4;
      let m = p % 4;
      if (n == '0') {
        zeroCount++;
      } else {
        if (zeroCount > 0) {
          chineseStr += cnNums[0]
        }
        zeroCount = 0;
        chineseStr += cnNums[parseInt(n)] + cnIntRadice[m];
      }
      if (m == 0 && zeroCount < 4) {
        chineseStr += cnIntUnits[q];
      }
    }
    // 最后+ 元
    chineseStr += cnIntLast;
  }
  // 转换小数部分
  if (decimalNum != '') {
    let decLen = decimalNum.length;
    for (let i = 0; i < decLen; i++) {
      let n = decimalNum.substr(i, 1);
      if (n != '0') {
        chineseStr += cnNums[Number(n)] + cnDecUnits[i]
      }
    }
  }
  if (chineseStr == '') {
    chineseStr += cnNums[0] + cnIntLast + cnInteger;
  } else if (decimalNum == '') {
    chineseStr += cnInteger;
  }
  return chineseStr
}
src/views/class/index.vue
@@ -20,7 +20,7 @@
                </el-input>
            </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
            <el-table
                v-loading="listLoading"
                :data="list"
src/views/comment/index.vue
@@ -18,7 +18,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
@@ -72,7 +72,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
src/views/development/index.vue
@@ -18,7 +18,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
@@ -70,7 +70,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
src/views/integral/index.vue
@@ -18,7 +18,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
@@ -72,7 +72,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
src/views/order/index.vue
New file
@@ -0,0 +1,207 @@
<template>
  <div class="app-container">
    <div style="display: flex; justify-content: space-between">
      <div style="width: 300px">
        <el-input
          placeholder="按姓名、课程、电话搜索"
          v-model="data.keyword"
          class="input-with-select"
          size="small"
        >
          <el-button
            slot="append"
            icon="el-icon-search"
            @click="handleClick"
          ></el-button>
        </el-input>
      </div>
    </div>
    <div style="height: calc(100vh - 208px)">
      <el-table
        v-loading="listLoading"
        :data="list"
        element-loading-text="Loading"
        fit
        height="100%"
      >
        <el-table-column label="订单号" width="200" prop="number">
        </el-table-column>
        <el-table-column label="学员" prop="playerBaseInfo.name">
        </el-table-column>
        <el-table-column label="电话" prop="mobile"> </el-table-column>
        <el-table-column label="购买方式" width="200" prop="payType">
          <template slot-scope="scope">
            {{ scope.row.payType == "DIRECT" ? "收费录入" : "商城购入" }}
          </template>
        </el-table-column>
        <el-table-column label="总价" width="80" prop="originAmt">
        </el-table-column>
        <el-table-column label="折扣" width="80" prop="discount">
        </el-table-column>
        <el-table-column label="实际缴费" width="80" prop="amt">
        </el-table-column>
        <el-table-column label="订单时间" width="200" prop="createTime">
        </el-table-column>
        <el-table-column label="操作" width="200">
          <template slot-scope="scope">
            <el-link
              @click="handlePrint(scope.row)"
              type="primary"
              :underline="false"
              >打印收据</el-link
            >
          </template>
        </el-table-column>
      </el-table>
    </div>
    <div>
      <el-pagination
        @size-change="handleSizeChange"
        @current-change="handleCurrentChange"
        :current-page="data.pageIn.index + 1"
        :page-sizes="[10, 20, 30, 40]"
        :page-size="data.pageIn.size"
        layout="total, sizes, prev, pager, next, jumper"
        :total="total"
      >
      </el-pagination>
    </div>
  </div>
</template>
<script>
import { getData } from "@/api/order";
import { printHtml } from "@/utils/print";
import { convertCurrency } from "@/utils/ruoyi";
export default {
  filters: {
    statusFilter(status) {
      const statusMap = {
        published: "success",
        draft: "gray",
        deleted: "danger",
      };
      return statusMap[status];
    },
  },
  data() {
    return {
      dateRange: [],
      list: null,
      listLoading: true,
      total: 0,
      data: {
        staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
        keyword: "",
        pageIn: {
          //可选,如果是分页查询,需要加上。
          index: 0, //必选
          size: 10, //每页的大小。默认20
          sorts: {
            name: "createTime", //排序字段名称
            direction: "DESC", //排序方向
          },
        },
      },
      dialogVisible: false,
    };
  },
  created() {
    this.fetchData();
  },
  methods: {
    reloadData() {
      this.dialogVisible = false;
      this.fetchData();
    },
    fetchData() {
      this.listLoading = true;
      getData(this.data).then((response) => {
        this.list = response.data.findOrderByOrgId.ls;
        this.total = response.data.findOrderByOrgId.pageOut.total;
        this.listLoading = false;
      });
    },
    handleClick() {
      this.fetchData();
    },
    handleSizeChange(val) {
      this.data.pageIn.size = val;
      this.fetchData();
    },
    handleCurrentChange(val) {
      this.data.pageIn.index = val - 1;
      this.fetchData();
    },
    handlePrint(row) {
      const orgName = JSON.parse(localStorage.getItem("selectStaff")).org.name;
      let detail = "";
      row.details.forEach((o) => {
        detail += `<tr>
                <td> ${o.voucherName || o.goodsName}</td>
                <td>${o.qty} </td>
                <td> ${o.giftQty}</td>
                <td>${o.amt}</td>
                <td>${row.saleStaff.name} </td>
            </tr>`;
      });
      let printData = `<div style="display: flex; justify-content: center;">
    <div style="margin-top: 50px; width: 600px;line-height: 2;">
        <h2 style="text-align: center;">${orgName}缴费收据 </h2>
        <div> 订单号:${row.number}</div>
        <div class="div-2-column">
            <div> 学员姓名:<u>${
              row.playerBaseInfo ? row.playerBaseInfo.name : ""
            }</u> </div>
            <div>联系电话:<u>${row.mobile || "未录入"} </u></div>
        </div>
        <div> 订单类型:${
          row.payType == "DIRECT" ? "收费录入" : "商城购入"
        } </div>
        <div class="m-h2"> 课程信息</div>
        <table class="txt-center" width="100%" border="1" cellpadding="2" cellspacing="0">
            <tr>
                <th width="140px" nowradiv>科目</th>
                <th width="80px" nowradiv>数量</th>
                <th width="80px" nowradiv>赠送</th>
                <th width="100px" nowradiv>余额</th>
                <th>课程顾问</th>
            </tr>
            ${detail}
        </table>
        <div class="m-h2"> 缴费记录</div>
        <table width="100%" border="1" cellpadding="2" cellspacing="0">
            <tr>
                <td>&nbsp;应缴费金额:${row.originAmt}</td>
            </tr>
            <tr>
                <td>&nbsp;折扣/赠送金额:${row.discount}</td>
            </tr>
            <tr>
                <td>&nbsp;实缴金额:${convertCurrency(row.amt)}(¥${
        row.amt
      })</td>
            </tr>
        </table>
        <div>&nbsp;备注:${row.message || ""} </div>
        <br>
        <br>
        <div class="div-2-column">
            <div> 经办人:${row.buyer.name}  </div>
            <div>经办日期:${row.createTime} </div>
        </div>
    </div>
</div>`;
      printHtml(printData);
    },
    showCreate() {
      this.$refs.studentCreate.showDialog();
    },
  },
};
</script>
src/views/order/print.html
New file
@@ -0,0 +1,81 @@
<html>
<div style="display: flex; justify-content: center;">
    <div style="margin-top: 50px; width: 600px;line-height: 2;">
        <h2 style="text-align: center;">机构名称缴费收据 </h2>
        <div> 订单号:</div>
        <div class="div-2-column">
            <div> 学员姓名:<u>******</u> </div>
            <div>联系电话:<u>*********** </u></div>
        </div>
        <div> 订单类型:收费录入/商城购入 </div>
        <div class="m-h2"> 课程信息</div>
        <table class="txt-center" width="100%" border="1" cellpadding="2" cellspacing="0">
            <tr>
                <th width="140px" nowradiv>科目</th>
                <th width="80px" nowradiv>数量</th>
                <th width="80px" nowradiv>赠送</th>
                <th width="100px" nowradiv>余额</th>
                <th>课程顾问</th>
            </tr>
            <tr>
                <td> 科目一</td>
                <td>10 </td>
                <td> 0</td>
                <td>100.00 </td>
                <td>张凯 </td>
            </tr>
            <tr>
                <td>科目二</td>
                <td> </td>
                <td> </td>
                <td> </td>
                <td> </td>
            </tr>
        </table>
        <div class="m-h2"> 缴费记录</div>
        <table width="100%" border="1" cellpadding="2" cellspacing="0">
            <tr>
                <td>&nbsp;应缴费金额:</td>
            </tr>
            <tr>
                <td>&nbsp;折扣/赠送金额:</td>
            </tr>
            <tr>
                <td>&nbsp;实缴金额:壹仟叁百陆拾捌元整(¥3168.00)</td>
            </tr>
        </table>
        <div>&nbsp;备注: </div>
        <br>
        <br>
        <div class="div-2-column">
            <div> 经办人: </div>
            <div>经办日期:</div>
        </div>
    </div>
</div>
<style>
    .div-2-column {
        display: flex;
        flex-direction: row;
        justify-content: space-between;
    }
    .m-h2 {
        text-align: center;
        font-size: 1.17em;
        margin-top: 50px;
        font-weight: bold;
    }
    #tr {
        height: 30px;
    }
    .txt-center {
        text-align: center;
    }
</style>
</html>
src/views/rollCall/index.vue
@@ -18,7 +18,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
@@ -80,7 +80,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
@@ -130,7 +130,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
src/views/scheduleCourses/index.vue
@@ -20,7 +20,7 @@
                </el-input>
            </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
            <el-table
                v-loading="listLoading"
                :data="list"
src/views/student/index.vue
@@ -1,136 +1,132 @@
<template>
    <div class="app-container">
        <el-tabs v-model="activeName" @tab-click="handleClick">
            <el-tab-pane label="全部" name="all" />
            <el-tab-pane label="待续费" name="pendingFees" />
            <el-tab-pane label="已过期" name="expired" />
            <el-tab-pane label="已停用" name="deactivated" />
        </el-tabs>
        <div style="display: flex; justify-content: space-between">
            <!-- <el-button type="primary" size="small" @click="showCreate">新建学员</el-button> -->
            <div>
                <el-button type="primary" size="small" @click="handleExport"
                    >导出学员</el-button
                >
                <el-button type="primary" size="small" @click="handleImport"
                    >导入学员</el-button
                >
            </div>
            <div style="width: 500px">
                <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="至" start-placeholder="开始日期"
  <div class="app-container">
    <el-tabs v-model="activeName" @tab-click="handleClick">
      <el-tab-pane label="全部" name="all" />
      <el-tab-pane label="待续费" name="pendingFees" />
      <el-tab-pane label="已过期" name="expired" />
      <el-tab-pane label="已停用" name="deactivated" />
    </el-tabs>
    <div style="display: flex; justify-content: space-between">
      <!-- <el-button type="primary" size="small" @click="showCreate">新建学员</el-button> -->
      <div>
        <el-button type="primary" size="small" @click="handleExport"
          >导出学员</el-button
        >
        <el-button type="primary" size="small" @click="handleImport"
          >导入学员</el-button
        >
      </div>
      <div style="width: 500px">
        <!-- <el-date-picker v-model="dateRange" type="daterange" range-separator="至" start-placeholder="开始日期"
        end-placeholder="结束日期" value-format="yyyy-MM-dd" style="margin-right: 10px">
      </el-date-picker>
      <el-button type="primary" @click="handleExport2">导出课包</el-button> -->
            </div>
            <div style="width: 300px">
                <el-input
                    placeholder="按姓名搜索"
                    v-model="data.keyword"
                    class="input-with-select"
                    size="small"
                >
                    <el-button
                        slot="append"
                        icon="el-icon-search"
                        @click="handleClick"
                    ></el-button>
                </el-input>
            </div>
        </div>
        <div style="height: calc(100vh - 248px)">
            <el-table
                v-loading="listLoading"
                :data="list"
                element-loading-text="Loading"
                fit
                height="100%"
      </div>
      <div style="width: 300px">
        <el-input
          placeholder="按姓名搜索"
          v-model="data.keyword"
          class="input-with-select"
          size="small"
        >
          <el-button
            slot="append"
            icon="el-icon-search"
            @click="handleClick"
          ></el-button>
        </el-input>
      </div>
    </div>
    <div style="height: calc(100vh - 208px)">
      <el-table
        v-loading="listLoading"
        :data="list"
        element-loading-text="Loading"
        fit
        height="100%"
      >
        <el-table-column label="姓名" prop="">
          <template slot-scope="scope">
            <el-link
              type="primary"
              :underline="false"
              @click="goDetails(scope.row)"
              >{{ scope.row.name }}</el-link
            >
                <el-table-column label="姓名" prop="">
                    <template slot-scope="scope">
                        <el-link
                            type="primary"
                            :underline="false"
                            @click="goDetails(scope.row)"
                            >{{ scope.row.name }}</el-link
                        >
                        <!-- <el-link type="primary" :underline="false">{{
            <!-- <el-link type="primary" :underline="false">{{
              scope.row.name
            }}</el-link> -->
                    </template>
                </el-table-column>
                <el-table-column
                    label="性别"
                    width="80"
                    v-if="activeName !== 'deactivated'"
                >
                    <template slot-scope="scope">
                        {{ scope.row.gender == 'FEMALE' ? '女' : '男' }}
                    </template>
                </el-table-column>
                <el-table-column
                    label="手机号"
                    width="200"
                    prop="mobile"
                    v-if="activeName !== 'deactivated'"
                >
                    <template slot-scope="scope">
                        {{ scope.row.mobile ? scope.row.mobile : '--' }}
                    </template>
                </el-table-column>
                <el-table-column
                    label="是否绑定微信"
                    width="200"
                    v-if="activeName !== 'deactivated'"
                >
                    <template slot-scope="scope">
                        {{ scope.row.user ? '是' : '否' }}
                    </template>
                </el-table-column>
                <el-table-column
                    label="操作"
                    width="200"
                    v-if="activeName == 'deactivated'"
                >
                    <template slot-scope="">
                        <el-link type="primary" :underline="false"
                            >删除</el-link
                        >
                        &nbsp;&nbsp;&nbsp;&nbsp;
                        <el-link type="primary" :underline="false"
                            >恢复</el-link
                        >
                    </template>
                </el-table-column>
                <el-table-column
                    label="停用时间"
                    width="200"
                    v-if="activeName == 'deactivated'"
                >
                    <template slot-scope="scope">
                        {{ scope.row.modifyTime }}
                    </template>
                </el-table-column>
            </el-table>
        </div>
        <div>
            <el-pagination
                @size-change="handleSizeChange"
                @current-change="handleCurrentChange"
                :current-page="data.pageIn.index + 1"
                :page-sizes="[10, 20, 30, 40]"
                :page-size="data.pageIn.size"
                layout="total, sizes, prev, pager, next, jumper"
                :total="total"
            >
            </el-pagination>
        </div>
        <el-dialog :visible.sync="dialogVisible" width="560px" title="导入学员">
            <UploadStudent
                v-if="dialogVisible"
                @load-success="reloadData"
            ></UploadStudent>
        </el-dialog>
          </template>
        </el-table-column>
        <el-table-column
          label="性别"
          width="80"
          v-if="activeName !== 'deactivated'"
        >
          <template slot-scope="scope">
            {{ scope.row.gender == "FEMALE" ? "女" : "男" }}
          </template>
        </el-table-column>
        <el-table-column
          label="手机号"
          width="200"
          prop="mobile"
          v-if="activeName !== 'deactivated'"
        >
          <template slot-scope="scope">
            {{ scope.row.mobile ? scope.row.mobile : "--" }}
          </template>
        </el-table-column>
        <el-table-column
          label="是否绑定微信"
          width="200"
          v-if="activeName !== 'deactivated'"
        >
          <template slot-scope="scope">
            {{ scope.row.user ? "是" : "否" }}
          </template>
        </el-table-column>
        <el-table-column
          label="操作"
          width="200"
          v-if="activeName == 'deactivated'"
        >
          <template slot-scope="">
            <el-link type="primary" :underline="false">删除</el-link>
            &nbsp;&nbsp;&nbsp;&nbsp;
            <el-link type="primary" :underline="false">恢复</el-link>
          </template>
        </el-table-column>
        <el-table-column
          label="停用时间"
          width="200"
          v-if="activeName == 'deactivated'"
        >
          <template slot-scope="scope">
            {{ scope.row.modifyTime }}
          </template>
        </el-table-column>
      </el-table>
    </div>
    <div>
      <el-pagination
        @size-change="handleSizeChange"
        @current-change="handleCurrentChange"
        :current-page="data.pageIn.index + 1"
        :page-sizes="[10, 20, 30, 40]"
        :page-size="data.pageIn.size"
        layout="total, sizes, prev, pager, next, jumper"
        :total="total"
      >
      </el-pagination>
    </div>
    <el-dialog :visible.sync="dialogVisible" width="560px" title="导入学员">
      <UploadStudent
        v-if="dialogVisible"
        @load-success="reloadData"
      ></UploadStudent>
    </el-dialog>
  </div>
</template>
<script>
@@ -138,155 +134,150 @@
import UploadStudent from "./components/upload-student.vue";
export default {
    filters: {
        statusFilter(status) {
            const statusMap = {
                published: "success",
                draft: "gray",
                deleted: "danger",
            };
            return statusMap[status];
  filters: {
    statusFilter(status) {
      const statusMap = {
        published: "success",
        draft: "gray",
        deleted: "danger",
      };
      return statusMap[status];
    },
  },
  components: {
    UploadStudent,
  },
  data() {
    return {
      dateRange: [],
      list: null,
      listLoading: true,
      activeName: "all",
      total: 0,
      data: {
        staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
        keyword: "",
        pageIn: {
          //可选,如果是分页查询,需要加上。
          index: 0, //必选
          size: 10, //每页的大小。默认20
          sorts: {
            name: "name", //排序字段名称
            direction: "ASC", //排序方向
          },
        },
      },
      dialogVisible: false,
    };
  },
  created() {
    // 获取地址栏code
    // let code = this.$route.query.code;
    // if (code) {
    //   if (localStorage.getItem("code")) {
    //     if (code !== localStorage.getItem("code")) {
    //       this.getUserDate(code);
    //     }
    //   } else {
    //     this.getUserDate(code);
    //   }
    // } else {
    //   if (!localStorage.getItem("user")) {
    //     this.$router.push("/login");
    //   }
    // }
    this.fetchData();
  },
  methods: {
    handleExport() {
      this.download(
        "exportPlayer?orgId=" +
          JSON.parse(localStorage.getItem("selectStaff")).org.id,
        {},
        `导出_${new Date().getTime()}.xlsx`
      );
    },
    components: {
        UploadStudent,
    handleExport2() {
      if (this.dateRange.length == 0) {
        this.$message.warning("请选择日期范围");
        return;
      }
      this.download(
        "exportReport?startDate=" +
          this.dateRange[0] +
          "&endDate=" +
          this.dateRange[1],
        {},
        `导出_${new Date().getTime()}.xlsx`
      );
    },
    data() {
        return {
            dateRange: [],
            list: null,
            listLoading: true,
            activeName: "all",
            total: 0,
            data: {
                staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
                keyword: "",
                pageIn: {
                    //可选,如果是分页查询,需要加上。
                    index: 0, //必选
                    size: 10, //每页的大小。默认20
                    sorts: {
                        name: "name", //排序字段名称
                        direction: "ASC", //排序方向
                    },
                },
            },
            dialogVisible: false,
    handleImport() {
      this.dialogVisible = true;
    },
    reloadData() {
      this.dialogVisible = false;
      this.fetchData();
    },
    fetchData() {
      this.listLoading = true;
      getData(this.data).then((response) => {
        this.list = response.data.findPlayerByStaff.ls;
        this.total = response.data.findPlayerByStaff.pageOut.total;
        this.listLoading = false;
      });
    },
    handleSizeChange(val) {
      this.data.pageIn.size = val;
      this.handleClick();
    },
    handleCurrentChange(val) {
      this.data.pageIn.index = val - 1;
      this.handleClick();
    },
    handleClick(tab, event) {
      this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id;
      if (this.activeName == "pendingFees") {
        this.listLoading = true;
        getRenew(this.data).then((response) => {
          this.list = response.data.findPlayerRenew.ls;
          this.total = response.data.findPlayerRenew.pageOut.total;
          this.listLoading = false;
        });
      } else if (this.activeName == "expired") {
        this.listLoading = true;
        getExpire(this.data).then((response) => {
          this.list = response.data.findPlayerExpire.ls;
          this.total = response.data.findPlayerExpire.pageOut.total;
          this.listLoading = false;
        });
      } else if (this.activeName == "all") {
        this.fetchData();
      } else if (this.activeName == "deactivated") {
        this.listLoading = true;
        let data = {
          itemType: "PLAYER",
          staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
          keyword: this.data.keyword,
          pageIn: { ...this.data.pageIn },
        };
        getDeleted(data).then((response) => {
          this.list = response.data.findDeletedItem.ls;
          this.total = response.data.findDeletedItem.pageOut.total;
          this.listLoading = false;
        });
      }
    },
    created() {
        // 获取地址栏code
        // let code = this.$route.query.code;
        // if (code) {
        //   if (localStorage.getItem("code")) {
        //     if (code !== localStorage.getItem("code")) {
        //       this.getUserDate(code);
        //     }
        //   } else {
        //     this.getUserDate(code);
        //   }
        // } else {
        //   if (!localStorage.getItem("user")) {
        //     this.$router.push("/login");
        //   }
        // }
        if (localStorage.getItem("user")) {
            this.fetchData();
        } else {
            this.$router.push("/login");
        }
    goDetails(row) {
      this.$router.push({
        name: "StudentDetails",
        query: {
          id: row.id,
        },
      });
    },
    methods: {
        handleExport() {
            this.download(
                "exportPlayer?orgId=" +
                JSON.parse(localStorage.getItem("selectStaff")).org.id,
                {},
                `导出_${new Date().getTime()}.xlsx`
            );
        },
        handleExport2() {
            if (this.dateRange.length == 0) {
                this.$message.warning("请选择日期范围");
                return;
            }
            this.download(
                "exportReport?startDate=" +
                this.dateRange[0] +
                "&endDate=" +
                this.dateRange[1],
                {},
                `导出_${new Date().getTime()}.xlsx`
            );
        },
        handleImport() {
            this.dialogVisible = true;
        },
        reloadData() {
            this.dialogVisible = false;
            this.fetchData();
        },
        fetchData() {
            this.listLoading = true;
            getData(this.data).then((response) => {
                this.list = response.data.findPlayerByStaff.ls;
                this.total = response.data.findPlayerByStaff.pageOut.total;
                this.listLoading = false;
            });
        },
        handleSizeChange(val) {
            this.data.pageIn.size = val;
            this.handleClick();
        },
        handleCurrentChange(val) {
            this.data.pageIn.index = val - 1;
            this.handleClick();
        },
        handleClick(tab, event) {
            this.data.staffId = JSON.parse(localStorage.getItem("selectStaff")).id;
            if (this.activeName == "pendingFees") {
                this.listLoading = true;
                getRenew(this.data).then((response) => {
                    this.list = response.data.findPlayerRenew.ls;
                    this.total = response.data.findPlayerRenew.pageOut.total;
                    this.listLoading = false;
                });
            } else if (this.activeName == "expired") {
                this.listLoading = true;
                getExpire(this.data).then((response) => {
                    this.list = response.data.findPlayerExpire.ls;
                    this.total = response.data.findPlayerExpire.pageOut.total;
                    this.listLoading = false;
                });
            } else if (this.activeName == "all") {
                this.fetchData();
            } else if (this.activeName == "deactivated") {
                this.listLoading = true;
                let data = {
                    itemType: "PLAYER",
                    staffId: JSON.parse(localStorage.getItem("selectStaff")).id,
                    keyword: this.data.keyword,
                    pageIn: { ...this.data.pageIn },
                };
                getDeleted(data).then((response) => {
                    this.list = response.data.findDeletedItem.ls;
                    this.total = response.data.findDeletedItem.pageOut.total;
                    this.listLoading = false;
                });
            }
        },
        goDetails(row) {
            this.$router.push({
                name: "StudentDetails",
                query: {
                    id: row.id,
                },
            });
        },
        showCreate() {
            this.$refs.studentCreate.showDialog();
        },
    showCreate() {
      this.$refs.studentCreate.showDialog();
    },
  },
};
</script>
src/views/work/index.vue
@@ -18,7 +18,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
@@ -79,7 +79,7 @@
            </el-input>
          </div>
        </div>
        <div style="height: calc(100vh - 248px)">
        <div style="height: calc(100vh - 208px)">
          <el-table
            v-loading="listLoading"
            :data="list"
vue.config.js
@@ -39,7 +39,7 @@
    proxy: {
      [process.env.VUE_APP_BASE_API]: {
        // 匹配所有以 '/dev-api'开头的请求路径
        target: "http://127.0.0.1/dream", //类似于Nginx反向代理
        target: "http://127.0.0.1:18081/dream", //类似于Nginx反向代理
        changeOrigin: true, // 支持跨域
        pathRewrite: {
          // 重写路径: 去掉路径中开头的'/dev-api'