diff --git a/package-lock.json b/package-lock.json index 146e600..75d8156 100644 --- a/package-lock.json +++ b/package-lock.json @@ -8,6 +8,7 @@ "name": "JinShan-Admin", "version": "1.0.0", "dependencies": { + "@amap/amap-jsapi-loader": "^1.0.1", "@ant-design/colors": "^7.0.0", "@ant-design/icons-vue": "^6.1.0", "@icon-park/vue-next": "^1.4.2", @@ -242,6 +243,12 @@ "@algolia/requester-common": "4.19.1" } }, + "node_modules/@amap/amap-jsapi-loader": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/@amap/amap-jsapi-loader/-/amap-jsapi-loader-1.0.1.tgz", + "integrity": "sha512-nPyLKt7Ow/ThHLkSvn2etQlUzqxmTVgK7bIgwdBRTg2HK5668oN7xVxkaiRe3YZEzGzfV2XgH5Jmu2T73ljejw==", + "license": "MIT" + }, "node_modules/@ant-design/colors": { "version": "7.0.0", "resolved": "https://registry.npmmirror.com/@ant-design/colors/-/colors-7.0.0.tgz", @@ -5514,6 +5521,11 @@ "@algolia/requester-common": "4.19.1" } }, + "@amap/amap-jsapi-loader": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/@amap/amap-jsapi-loader/-/amap-jsapi-loader-1.0.1.tgz", + "integrity": "sha512-nPyLKt7Ow/ThHLkSvn2etQlUzqxmTVgK7bIgwdBRTg2HK5668oN7xVxkaiRe3YZEzGzfV2XgH5Jmu2T73ljejw==" + }, "@ant-design/colors": { "version": "7.0.0", "resolved": "https://registry.npmmirror.com/@ant-design/colors/-/colors-7.0.0.tgz", diff --git a/package.json b/package.json index 6f07182..fdad0c8 100644 --- a/package.json +++ b/package.json @@ -17,6 +17,7 @@ "src/**/*.{js,vue}": "eslint --ext .js,.vue .eslintignore --no-cache --fix" }, "dependencies": { + "@amap/amap-jsapi-loader": "^1.0.1", "@ant-design/colors": "^7.0.0", "@ant-design/icons-vue": "^6.1.0", "@icon-park/vue-next": "^1.4.2", diff --git a/src/apis/modules/customer.js b/src/apis/modules/customer.js new file mode 100644 index 0000000..f4bc68d --- /dev/null +++ b/src/apis/modules/customer.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/customers', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/customers/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/customers', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/customers/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/customers/${id}`) diff --git a/src/apis/modules/mettingRoom.js b/src/apis/modules/mettingRoom.js new file mode 100644 index 0000000..4835a4e --- /dev/null +++ b/src/apis/modules/mettingRoom.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/metting-rooms', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/metting-rooms/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/metting-rooms', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/metting-rooms/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/metting-rooms/${id}`) diff --git a/src/apis/modules/mettingYuYue.js b/src/apis/modules/mettingYuYue.js new file mode 100644 index 0000000..0994cd4 --- /dev/null +++ b/src/apis/modules/mettingYuYue.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/metting-room-orders', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/metting-room-orders/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/metting-room-orders', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/metting-room-orders/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/metting-room-orders/${id}`) diff --git a/src/apis/modules/mutualComment.js b/src/apis/modules/mutualComment.js new file mode 100644 index 0000000..58a69ed --- /dev/null +++ b/src/apis/modules/mutualComment.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('api/v1/mutualComment', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`api/v1/mutualComment/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('api/v1/mutualComment', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`api/v1/mutualComment/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`api/v1/mutualComment/${id}`) diff --git a/src/apis/modules/nbdMutuaAid.js b/src/apis/modules/nbdMutuaAid.js new file mode 100644 index 0000000..28b0ab0 --- /dev/null +++ b/src/apis/modules/nbdMutuaAid.js @@ -0,0 +1,16 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/reciprocities', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/reciprocities/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/reciprocities', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/reciprocities/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/reciprocities/${id}`) +// 获取评论历史 +export const getList = (id) => request.basic.get(`/api/v1/reciprocity-histories/${id}`) diff --git a/src/apis/modules/orderList.js b/src/apis/modules/orderList.js new file mode 100644 index 0000000..a3390e1 --- /dev/null +++ b/src/apis/modules/orderList.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/work-orders', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/work-orders/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/work-orders', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/work-orders/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/work-orders/${id}`) diff --git a/src/apis/modules/orderType.js b/src/apis/modules/orderType.js new file mode 100644 index 0000000..3ac222e --- /dev/null +++ b/src/apis/modules/orderType.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/work-order-types', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/work-order-types/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/work-order-types', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/work-order-types/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/work-order-types/${id}`) diff --git a/src/apis/modules/serverList.js b/src/apis/modules/serverList.js new file mode 100644 index 0000000..f9ff955 --- /dev/null +++ b/src/apis/modules/serverList.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/surrounding-services', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/surrounding-services/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/surrounding-services', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/surrounding-services/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/surrounding-services/${id}`) diff --git a/src/apis/modules/serverType.js b/src/apis/modules/serverType.js new file mode 100644 index 0000000..c0006ed --- /dev/null +++ b/src/apis/modules/serverType.js @@ -0,0 +1,14 @@ +/** + * 图片管理接口 + */ +import request from '@/utils/request' +// 获取菜单列表 +export const getDataList = (params) => request.basic.get('/api/v1/surrounding-service-types', params) +// 获取菜单条数据 +export const getMenu = (id) => request.basic.get(`/api/v1/surrounding-service-types/${id}`) +// 添加菜单 +export const createMenu = (params) => request.basic.post('/api/v1/surrounding-service-types', params) +// 更新菜单 +export const updateMenu = (id, params) => request.basic.put(`/api/v1/surrounding-service-types/${id}`, params) +// 删除菜单 +export const delMenu = (id) => request.basic.delete(`/api/v1/surrounding-service-types/${id}`) diff --git a/src/assets/iconfont/iconfont.css b/src/assets/iconfont/iconfont.css index 0fd2e91..60267ea 100644 --- a/src/assets/iconfont/iconfont.css +++ b/src/assets/iconfont/iconfont.css @@ -1,8 +1,8 @@ @font-face { font-family: "iconfont"; /* Project id 4966438 */ - src: url('iconfont.woff2?t=1751607897346') format('woff2'), - url('iconfont.woff?t=1751607897346') format('woff'), - url('iconfont.ttf?t=1751607897346') format('truetype'); + src: url('iconfont.woff2?t=1752057370159') format('woff2'), + url('iconfont.woff?t=1752057370159') format('woff'), + url('iconfont.ttf?t=1752057370159') format('truetype'); } .iconfont { @@ -13,6 +13,38 @@ -moz-osx-font-smoothing: grayscale; } +.icon-cooperation:before { + content: "\e611"; +} + +.icon-huiyishi:before { + content: "\e614"; +} + +.icon-gongdan:before { + content: "\ec37"; +} + +.icon-zhoubian:before { + content: "\e739"; +} + +.icon-lishi:before { + content: "\e60e"; +} + +.icon-xiangqing:before { + content: "\e63c"; +} + +.icon-kaishi-yuan:before { + content: "\e64b"; +} + +.icon-shenhe:before { + content: "\f195"; +} + .icon-huodongliebiao-copy:before { content: "\e600"; } diff --git a/src/assets/iconfont/iconfont.js b/src/assets/iconfont/iconfont.js index 2145856..65c0bfe 100644 --- a/src/assets/iconfont/iconfont.js +++ b/src/assets/iconfont/iconfont.js @@ -1 +1 @@ -window._iconfont_svg_string_4966438='',(c=>{var t=(e=(e=document.getElementsByTagName("script"))[e.length-1]).getAttribute("data-injectcss"),e=e.getAttribute("data-disable-injectsvg");if(!e){var n,o,i,s,d,l=function(t,e){e.parentNode.insertBefore(t,e)};if(t&&!c.__iconfont__svg__cssinject__){c.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(t){console&&console.log(t)}}n=function(){var t,e=document.createElement("div");e.innerHTML=c._iconfont_svg_string_4966438,(e=e.getElementsByTagName("svg")[0])&&(e.setAttribute("aria-hidden","true"),e.style.position="absolute",e.style.width=0,e.style.height=0,e.style.overflow="hidden",e=e,(t=document.body).firstChild?l(e,t.firstChild):t.appendChild(e))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(n,0):(o=function(){document.removeEventListener("DOMContentLoaded",o,!1),n()},document.addEventListener("DOMContentLoaded",o,!1)):document.attachEvent&&(i=n,s=c.document,d=!1,h(),s.onreadystatechange=function(){"complete"==s.readyState&&(s.onreadystatechange=null,a())})}function a(){d||(d=!0,i())}function h(){try{s.documentElement.doScroll("left")}catch(t){return void setTimeout(h,50)}a()}})(window); \ No newline at end of file +window._iconfont_svg_string_4966438='',(a=>{var c=(t=(t=document.getElementsByTagName("script"))[t.length-1]).getAttribute("data-injectcss"),t=t.getAttribute("data-disable-injectsvg");if(!t){var e,i,l,o,h,n=function(c,t){t.parentNode.insertBefore(c,t)};if(c&&!a.__iconfont__svg__cssinject__){a.__iconfont__svg__cssinject__=!0;try{document.write("")}catch(c){console&&console.log(c)}}e=function(){var c,t=document.createElement("div");t.innerHTML=a._iconfont_svg_string_4966438,(t=t.getElementsByTagName("svg")[0])&&(t.setAttribute("aria-hidden","true"),t.style.position="absolute",t.style.width=0,t.style.height=0,t.style.overflow="hidden",t=t,(c=document.body).firstChild?n(t,c.firstChild):c.appendChild(t))},document.addEventListener?~["complete","loaded","interactive"].indexOf(document.readyState)?setTimeout(e,0):(i=function(){document.removeEventListener("DOMContentLoaded",i,!1),e()},document.addEventListener("DOMContentLoaded",i,!1)):document.attachEvent&&(l=e,o=a.document,h=!1,d(),o.onreadystatechange=function(){"complete"==o.readyState&&(o.onreadystatechange=null,s())})}function s(){h||(h=!0,l())}function d(){try{o.documentElement.doScroll("left")}catch(c){return void setTimeout(d,50)}s()}})(window); \ No newline at end of file diff --git a/src/assets/iconfont/iconfont.json b/src/assets/iconfont/iconfont.json index 0446e56..740fd53 100644 --- a/src/assets/iconfont/iconfont.json +++ b/src/assets/iconfont/iconfont.json @@ -5,6 +5,62 @@ "css_prefix_text": "icon-", "description": "", "glyphs": [ + { + "icon_id": "551475", + "name": "同行互助", + "font_class": "cooperation", + "unicode": "e611", + "unicode_decimal": 58897 + }, + { + "icon_id": "4942645", + "name": "会议室", + "font_class": "huiyishi", + "unicode": "e614", + "unicode_decimal": 58900 + }, + { + "icon_id": "5769243", + "name": "工单", + "font_class": "gongdan", + "unicode": "ec37", + "unicode_decimal": 60471 + }, + { + "icon_id": "14145077", + "name": "周边", + "font_class": "zhoubian", + "unicode": "e739", + "unicode_decimal": 59193 + }, + { + "icon_id": "10933913", + "name": "历史", + "font_class": "lishi", + "unicode": "e60e", + "unicode_decimal": 58894 + }, + { + "icon_id": "24848552", + "name": "详情", + "font_class": "xiangqing", + "unicode": "e63c", + "unicode_decimal": 58940 + }, + { + "icon_id": "34273005", + "name": "开始-圆", + "font_class": "kaishi-yuan", + "unicode": "e64b", + "unicode_decimal": 58955 + }, + { + "icon_id": "19738994", + "name": "审核", + "font_class": "shenhe", + "unicode": "f195", + "unicode_decimal": 61845 + }, { "icon_id": "29742036", "name": "活动列表", diff --git a/src/assets/iconfont/iconfont.ttf b/src/assets/iconfont/iconfont.ttf index d3e41e4..4ca9d78 100644 Binary files a/src/assets/iconfont/iconfont.ttf and b/src/assets/iconfont/iconfont.ttf differ diff --git a/src/assets/iconfont/iconfont.woff b/src/assets/iconfont/iconfont.woff index 6aae73f..800d980 100644 Binary files a/src/assets/iconfont/iconfont.woff and b/src/assets/iconfont/iconfont.woff differ diff --git a/src/assets/iconfont/iconfont.woff2 b/src/assets/iconfont/iconfont.woff2 index a000978..4b61249 100644 Binary files a/src/assets/iconfont/iconfont.woff2 and b/src/assets/iconfont/iconfont.woff2 differ diff --git a/src/components/GxMap/index.vue b/src/components/GxMap/index.vue new file mode 100644 index 0000000..ab1d08c --- /dev/null +++ b/src/components/GxMap/index.vue @@ -0,0 +1,262 @@ + + + + + \ No newline at end of file diff --git a/src/components/comment/index.vue b/src/components/comment/index.vue new file mode 100644 index 0000000..e69de29 diff --git a/src/components/index.js b/src/components/index.js index 7a747b5..1c2c111 100644 --- a/src/components/index.js +++ b/src/components/index.js @@ -20,6 +20,7 @@ import UploadInput from './Upload/UploadInput.vue' import Scrollbar from './Scrollbar/Scrollbar.vue' import Cascader from './Cascader/Cascader.vue' import GxUpload from './GxUpload/index.vue' +import GxMap from './GxMap/index.vue' import { setupLoadingDirective } from './Loading/directive' const componentList = [ @@ -42,7 +43,8 @@ const componentList = [ UploadInput, Scrollbar, Cascader, - GxUpload + GxUpload, + GxMap ] export const loading = Loading diff --git a/src/enums/index.js b/src/enums/index.js index 64ab02b..8811e43 100644 --- a/src/enums/index.js +++ b/src/enums/index.js @@ -1,15 +1,57 @@ import {EnumManager} from './enums' const activatyStatus = new EnumManager([ + { value: 1, name: '待审核', color: '#faad14' }, // 黄色(警告色) + { value: 2, name: '待开始', color: '#faad14' }, // 黄色(警告色) + { value: 3, name: '进行中', color: '#52c41a' }, // 绿色(进行中) + { value: 4, name: '已结束', color: '#bfbfbf' }, // 灰色(失效色) + { value: 99, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) +]) +//工单 +const orderStatus = new EnumManager([ { value: 1, name: '待审核', color: '#faad14' }, // 黄色(警告色) { value: 2, name: '进行中', color: '#52c41a' }, // 绿色(进行中) { value: 3, name: '已完成', color: '#1890ff' }, // 蓝色(完成色) - { value: 4, name: '已过期', color: '#bfbfbf' }, // 灰色(失效色) - { value: 5, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) + { value: 97, name: '已过期', color: '#bfbfbf' }, // 灰色(失效色) + { value: 98, name: '已撤销', color: '#bfbfbf' }, // 灰色(失效色) + { value: 99, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) +]) +//公告状态 +const announcementStatus = new EnumManager([ + { value: 1, name: '待审核', color: '#faad14' }, // 黄色(警告色) + { value: 2, name: '进行中', color: '#52c41a' }, // 绿色(进行中) + { value:98, name: '停用', color: '#bfbfbf' }, // 灰色(失效色) + { value: 99, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) ]) - const enumsStatus = new EnumManager([ - { value: 0, name: '启用', color: '#52c41a' }, // 绿色(启用) - { value: 1, name: '停用', color: '#ff4d4f' } // 红色(停用) + { value: 1, name: '启用', color: '#52c41a' }, // 绿色(启用) + { value: 2, name: '停用', color: '#ff4d4f' } // 红色(停用) ]) -export {activatyStatus,enumsStatus} \ No newline at end of file +//互助状态 +const nbdMutualStatus = new EnumManager([ + { value: 1, name: '待审核', color: '#faad14' }, // 黄色(警告色) + { value: 2, name: '进行中', color: '#52c41a' }, // 绿色(进行中) + { value: 3, name: '已完成', color: '#1890ff' }, // 蓝色(完成色) + { value: 98, name: '已撤销', color: '#bfbfbf' }, // 灰色(失效色) + { value: 99, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) +]) +//工单类型状态 +const workTypeStatus = new EnumManager([ + { value: 1, name: '待审核', color: '#faad14' }, // 黄色(警告色) + { value: 2, name: '启用中', color: '#52c41a' }, // 绿色(进行中) + { value: 98, name: '禁用', color: '#bfbfbf' }, // 灰色(失效色) + { value: 99, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) +]) +//会议室类型状态 +const mettingStatus = new EnumManager([ + { value: 1, name: '待审核', color: '#faad14' }, // 黄色(警告色) + { value: 2, name: '启用中', color: '#52c41a' }, // 绿色(进行中) + { value: 98, name: '禁用', color: '#bfbfbf' }, // 灰色(失效色) + { value: 99, name: '审核不通过', color: '#ff4d4f' } // 红色(错误色) +]) +//用户类型状态 +const userStatus = new EnumManager([ + { value: 1, name: '启用', color: '#52c41a' }, // 黄色(警告色) + { value: 2, name: '禁用', color: '#ff4d4f' } // 红色(错误色) +]) +export {activatyStatus,enumsStatus,orderStatus,announcementStatus,nbdMutualStatus,workTypeStatus,mettingStatus,userStatus} \ No newline at end of file diff --git a/src/locales/lang/zh-CN/menu.js b/src/locales/lang/zh-CN/menu.js index a588162..4e29e26 100644 --- a/src/locales/lang/zh-CN/menu.js +++ b/src/locales/lang/zh-CN/menu.js @@ -32,8 +32,21 @@ export default { account: '个人页', 'account.trigger': '触发报错', 'account.logout': '退出登录', - homebanner:'首页轮播图', - neighborhood:'邻里圈轮播图', - announcementList:'社区公告', - activity:'活动列表' + homebanner: '首页轮播图', + neighborhood: '邻里圈轮播图', + announcementList: '社区公告', + activity: '活动列表', + nbdMutualAid: '邻里互助', + nbdMutual: '邻里互助', + mutualComment: '评论列表', + workOrder: '工单管理', + orderList: '工单列表', + orderType: '工单类型', + server:'周边服务', + serverList: '门店列表', + serverType: '门店分类', + mettingMgt:'会议室管理', + mettingRoom:'会议室列表', + mettingYuYue:'预约记录', + customer:'用户管理' } diff --git a/src/locales/lang/zh-CN/pages.js b/src/locales/lang/zh-CN/pages.js index 43d9a74..dc26da3 100644 --- a/src/locales/lang/zh-CN/pages.js +++ b/src/locales/lang/zh-CN/pages.js @@ -57,7 +57,7 @@ export default { // role 'pages.system.role.add': '添加角色', 'pages.system.role.edit': '编辑角色', - 'pages.system.role.delTip': '确定删除该角色吗?', + 'pages.system.role.delTip': '确定删除该项吗?', 'pages.system.role.form.code': '编码', 'pages.system.role.form.code.placeholder': '请输入编码', 'pages.system.role.form.code.required': '编码是必填项!', @@ -78,7 +78,7 @@ export default { // user 'pages.system.user.add': '添加用户', 'pages.system.user.edit': '编辑用户', - 'pages.system.user.delTip': '确定删除该用户吗?', + 'pages.system.user.delTip': '确定删除该项吗?', 'pages.system.user.form.username': '用户名', 'pages.system.user.form.username.placeholder': '请输入用户名', 'pages.system.user.form.username.required': '用户名是必填项!', diff --git a/src/router/routes/pages.js b/src/router/routes/pages.js index 98a3217..96c056b 100644 --- a/src/router/routes/pages.js +++ b/src/router/routes/pages.js @@ -1,4 +1,4 @@ -import { TableOutlined,HomeOutlined } from '@ant-design/icons-vue' +import { TableOutlined, HomeOutlined } from '@ant-design/icons-vue' export default [ { @@ -49,4 +49,168 @@ export default [ permission: '*', }, }, + { + path: 'nbdMutual', + name: 'nbdMutual', + component: 'RouteViewLayout', + meta: { + icon: 'icon-cooperation', + title: '邻里互助', + isMenu: true, + keepAlive: true, + permission: '*', + }, + children: [ + { + path: 'nbdMutual/nbdMutualAid', + name: 'nbdMutualAid', + component: 'pages/nbdMutual/nbdMutualAid/index.vue', + meta: { + icon: '', + title: '邻里互助', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + // { + // path: 'nbdMutual/mutualComment', + // name: 'mutualComment', + // component: 'pages/nbdMutual/mutualComment/index.vue', + // meta: { + // icon: 'icon-huodongliebiao-copy', + // title: '求助评论', + // isMenu: true, + // keepAlive: true, + // permission: '*', + // }, + // }, + ], + }, + { + path: 'workOrder', + name: 'workOrder', + component: 'RouteViewLayout', + meta: { + icon: 'icon-gongdan', + title: '工单列表', + isMenu: true, + keepAlive: true, + permission: '*', + }, + children: [ + { + path: 'workOrder/orderType', + name: 'orderType', + component: 'pages/workOrder/orderType/index.vue', + meta: { + icon: '', + title: '功能类型', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + { + path: 'workOrder/orderList', + name: 'orderList', + component: 'pages/workOrder/orderList/index.vue', + meta: { + icon: '', + title: '工单列表', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + ], + }, + { + path: 'server', + name: 'server', + component: 'RouteViewLayout', + meta: { + icon: 'icon-zhoubian', + title: '周边服务', + isMenu: true, + keepAlive: true, + permission: '*', + }, + children: [ + { + path: 'server/serverType', + name: 'serverType', + component: 'pages/server/serverType/index.vue', + meta: { + icon: '', + title: '门店类型', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + { + path: 'server/serverList', + name: 'serverList', + component: 'pages/server/serverList/index.vue', + meta: { + icon: '', + title: '门店列表', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + ], + }, + { + path: 'mettingMgt', + name: 'mettingMgt', + component: 'RouteViewLayout', + meta: { + icon: 'icon-zhoubian', + title: '会议室管理', + isMenu: true, + keepAlive: true, + permission: '*', + }, + children: [ + { + path: 'mettingMgt/mettingRoom', + name: 'mettingRoom', + component: 'pages/mettingMgt/mettingList/index.vue', + meta: { + icon: '', + title: '会议室', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + { + path: 'mettingMgt/mettingYuYue', + name: 'mettingYuYue', + component: 'pages/mettingMgt/mettingYuYue/index.vue', + meta: { + icon: '', + title: '会议室预约', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, + ], + }, + { + path: 'customer/index', + name: 'customer', + component: 'pages/user/index.vue', + meta: { + icon: HomeOutlined, + title: '用户管理', + isMenu: true, + keepAlive: true, + permission: '*', + }, + }, ] diff --git a/src/views/pages/activity/components/EditDialog.vue b/src/views/pages/activity/components/EditDialog.vue index c7bc3fa..c1a3a3e 100644 --- a/src/views/pages/activity/components/EditDialog.vue +++ b/src/views/pages/activity/components/EditDialog.vue @@ -1,6 +1,6 @@ @@ -95,11 +125,12 @@ import apis from '@/apis' import { formatUtcDateTime } from '@/utils/util' import { config } from '@/config' import dayjs from 'dayjs' -import { usePagination } from '@/hooks' +import { usePagination,useModal } from '@/hooks' import EditDialog from './components/EditDialog.vue' import { PlusOutlined, EditOutlined, DeleteOutlined, QrcodeOutlined } from '@ant-design/icons-vue' import { useI18n } from 'vue-i18n' -import { enumsStatus } from '@/enums/index.js' +import { activatyStatus } from '@/enums/index.js' +import errImg from '@/assets/blankSpace.png' defineOptions({ name: 'activity', }) @@ -109,17 +140,20 @@ const imgList = ref([]) const type = ref(1) const columns = [ - { title: '活动标题', dataIndex: 'title'}, - { title: '活动时间', dataIndex: 'activityTime',align: 'center' }, - { title: '活动内容', dataIndex: 'activityContent',align: 'center' }, { title: '活动封面', dataIndex: 'cover', align: 'center', width: 100 }, - { title: t('button.action'), key: 'action', fixed: 'right', width: 150, align: 'center' }, + { title: '活动标题', dataIndex: 'title' }, + { title: '活动时间', dataIndex: 'openAt', align: 'center' }, + { title: '活动内容', dataIndex: 'content', align: 'center', width: 100 }, + { title: '状态', dataIndex: 'status', align: 'center', width: 100 }, + { title: t('button.action'), key: 'action', fixed: 'right', width: 140, align: 'center' }, ] - -const { listData, loading, showLoading, hideLoading, paginationState, resetPagination, searchFormData } = - usePagination() +const { modal, showModal, hideModal, showLoading:auditShowLoading, hideLoading:auditHideLoading } = useModal() +const { listData, loading, showLoading, hideLoading, paginationState, resetPagination, searchFormData } =usePagination() const editDialogRef = ref() +const currentForm=ref({}) +const auditStatus=ref(2) +const remark=ref('') getPageList() /** * 获取表格数据 @@ -147,7 +181,51 @@ async function getPageList() { hideLoading() } } - +const auditHandleEdit = (params) => { + currentForm.value = params + showModal() +} +const startHandleEdit=async (obj)=>{ + try { + const params = { + ...obj, + status: 3, + } + const result = await apis.activity.updateItem(obj.id, params).catch(() => { + throw new Error() + }) + if (config('http.code.success') === result?.success) { + hideModal() + getPageList() + message.success('活动已成功') + } + } catch (error) { + message.error(error.message) + } +} +const handleAuditEdit = async () => { + try { + auditShowLoading() + const params = { + ...currentForm.value, + status: auditStatus.value, + remark: remark.value + } + console.log(params); + const result = await apis.activity.updateItem(currentForm.value.id, params).catch(() => { + throw new Error() + }) + auditHideLoading() + if (config('http.code.success') === result?.success) { + hideModal() + getPageList() + message.success('审核成功') + } + } catch (error) { + message.error(error.message) + auditHideLoading() + } +} /** * 删除 */ diff --git a/src/views/pages/announcementList/components/AddDialog.vue b/src/views/pages/announcementList/components/AddDialog.vue index 6a63e6a..a1de2b4 100644 --- a/src/views/pages/announcementList/components/AddDialog.vue +++ b/src/views/pages/announcementList/components/AddDialog.vue @@ -1,6 +1,6 @@