diff --git a/package.json b/package.json index 7b29f02..470f7e0 100644 --- a/package.json +++ b/package.json @@ -17,9 +17,20 @@ } }, "lint-staged": { - "src/**/*.{js,vue}": ["eslint --fix", "git add"] + "src/**/*.{js,vue}": [ + "eslint --fix", + "git add" + ] }, - "keywords": ["vue", "admin", "dashboard", "element-ui", "boilerplate", "admin-template", "management-system"], + "keywords": [ + "vue", + "admin", + "dashboard", + "element-ui", + "boilerplate", + "admin-template", + "management-system" + ], "repository": { "type": "git", "url": "https://gitee.com/y_project/RuoYi-Vue.git" @@ -42,6 +53,7 @@ "screenfull": "5.0.2", "sortablejs": "1.10.2", "vue": "2.6.12", + "vue-amap": "^0.5.10", "vue-count-to": "1.0.13", "vue-cropper": "0.5.5", "vue-meta": "2.4.0", @@ -72,5 +84,8 @@ "node": ">=8.9", "npm": ">= 3.0.0" }, - "browserslist": ["> 1%", "last 2 versions"] + "browserslist": [ + "> 1%", + "last 2 versions" + ] } diff --git a/src/api/sch/classType.js b/src/api/sch/classType.js new file mode 100644 index 0000000..e83037c --- /dev/null +++ b/src/api/sch/classType.js @@ -0,0 +1,43 @@ +import request from '@/utils/request' + +// 查询班型列表 +export function getClassTypeTableList(query) { + return request({ + url: '/sch/classType/list', + method: 'get', + params: query + }) +} + +// 新增班型 +export function insertClassType(params) { + return request({ + url: '/sch/classType', + method: 'post', + data: params + }) +} +// 修改班型 +export function updateClassType(params) { + return request({ + url: '/sch/classType', + method: 'put', + data: params + }) +} +// 删除班型 +export function deleteClassType(ids) { + return request({ + url: '/sch/classType/' + ids, + method: 'delete' + }) +} + +//克隆班型 +export function cloneClassType(data) { + return request({ + url: '/sch/classType/clone', + method: 'post', + data: data + }) +} diff --git a/src/api/sch/place.js b/src/api/sch/place.js new file mode 100644 index 0000000..ea59c8b --- /dev/null +++ b/src/api/sch/place.js @@ -0,0 +1,27 @@ +import request from '@/utils/request' + +// 获取地图数据 +export function getMapData() { + return request({ + url: '/sch/place/list', + method: 'get' + }) +} + +// 更新驾校状态 +export async function updateSchoolStatus(data) { + return await request({ + url: '/sch/place/updateSchool', + method: 'put', + data: data + }) +} + +// 保存场地状态 +export function savePlace(data) { + return request({ + url: '/sch/place', + method: 'post', + data: data + }) +} diff --git a/src/api/sch/school.js b/src/api/sch/school.js new file mode 100644 index 0000000..2fda293 --- /dev/null +++ b/src/api/sch/school.js @@ -0,0 +1,36 @@ +import request from '@/utils/request' +export default { + pageList(data = {}) { + return request({ + url: "/sch/school/list", + method: "get", + params: data, + }); + }, + getById(id) { + return request({ + url: `/sch/school/${id}`, + method: "get", + }); + }, + add(data = {}) { + return request({ + url: "/sch/school", + method: "post", + data, + }); + }, + update(data = {}) { + return request({ + url: "/sch/school", + method: "put", + data, + }); + }, + delete(id) { + return request({ + url: `/sch/school/${id}`, + method: "delete", + }); + } +} diff --git a/src/api/system/dept.js b/src/api/system/dept.js index fc943cd..494b284 100644 --- a/src/api/system/dept.js +++ b/src/api/system/dept.js @@ -49,4 +49,11 @@ export function delDept(deptId) { url: '/system/dept/' + deptId, method: 'delete' }) -} \ No newline at end of file +} +// 查询部门下拉树结构 +export function deptTreeSelect() { + return request({ + url: '/system/dept/deptTree', + method: 'get' + }) +} diff --git a/src/api/system/employee.js b/src/api/system/employee.js new file mode 100644 index 0000000..c07e3fa --- /dev/null +++ b/src/api/system/employee.js @@ -0,0 +1,42 @@ +import request from '@/utils/request' +export default { + pageList(data = {}) { + return request({ + url: "/system/employee/list", + method: "get", + params: data, + }); + }, + getById(id) { + return request({ + url: `/system/employee/${id}`, + method: "get", + }); + }, + add(data = {}) { + return request({ + url: "/system/employee", + method: "post", + data, + }); + }, + update(data = {}) { + return request({ + url: "/system/employee", + method: "put", + data, + }); + }, + delete(id) { + return request({ + url: `/system/employee/${id}`, + method: "delete", + }); + }, + getEmployee() { + return request({ + url: "/system/employee/getEmployees", + method: "get" + }); + } +} diff --git a/src/api/system/role.js b/src/api/system/role.js index f13e6f4..cc74ed8 100644 --- a/src/api/system/role.js +++ b/src/api/system/role.js @@ -117,3 +117,12 @@ export function deptTreeSelect(roleId) { method: 'get' }) } + + + +export function getRoleOptions() { + return request({ + url: '/system/role/getRoles', + method: 'get' + }) +} diff --git a/src/api/system/user.js b/src/api/system/user.js index f2f76ef..1801bfa 100644 --- a/src/api/system/user.js +++ b/src/api/system/user.js @@ -1,5 +1,7 @@ import request from '@/utils/request' -import { parseStrEmpty } from "@/utils/ruoyi"; +import { + parseStrEmpty +} from "@/utils/ruoyi"; // 查询用户列表 export function listUser(query) { @@ -125,11 +127,3 @@ export function updateAuthRole(data) { params: data }) } - -// 查询部门下拉树结构 -export function deptTreeSelect() { - return request({ - url: '/system/user/deptTree', - method: 'get' - }) -} diff --git a/src/api/tool/common.js b/src/api/tool/common.js new file mode 100644 index 0000000..e69de29 diff --git a/src/api/tool/map.js b/src/api/tool/map.js new file mode 100644 index 0000000..e69de29 diff --git a/src/api/zs/clue.js b/src/api/zs/clue.js new file mode 100644 index 0000000..8ec3dd1 --- /dev/null +++ b/src/api/zs/clue.js @@ -0,0 +1,186 @@ +import request from '@/utils/request' + +// 查询线索列表 +export function getClueList(query) { + return request({ + url: '/zs/clue/list', + method: 'get', + params: query + }) +} + +// 新增线索 +export function addClue(data) { + return request({ + url: '/zs/clue', + method: 'post', + data: data + }) +} + +// 修改线索 +export function updateClue(data) { + return request({ + url: '/zs/clue', + method: 'put', + data: data + }) +} + +//删除 +export function deleteClue(data) { + return request({ + url: '/zs/clue', + method: 'delete', + params: data + }) +} +// 导出 +export function exportData(query) { + return request({ + url: '/zs/clue/export', + method: 'get', + params: query + }) +} + +// 导入模板 +export function importTemplate(param) { + return request({ + url: '/zs/clue/importTemplate', + method: 'get', + params: param + }) +} +// 导入 +export function importData(data) { + return request({ + url: '/zs/clue/importData', + method: 'post', + data: data + }) +} + +//查询登记getSign +export function getSign(query) { + return request({ + url: '/zs/clue/sign', + method: 'get', + params: query + }) +} +//保存登记 +export function saveSign(data) { + return request({ + url: '/zs/clue/sign', + method: 'post', + data: data + }) +} + +//甩单 +export function saveDistribute(data) { + return request({ + url: '/zs/clue/distribute', + method: 'put', + data: data + }) +} + +//驳回 +export function refuse(data) { + return request({ + url: '/zs/clue/refuse', + method: 'put', + data: data + }) +} + +//查询甩单记录 +export function getDistributeRecord(param) { + return request({ + url: '/zs/clue/distributerecord', + method: 'get', + params: param + }) +} + +//查询跟踪记录 +export function getFollowRecord(param) { + return request({ + url: '/zs/clue/followrecord', + method: 'get', + params: param + }) + +} + +// + +export function getConsultRecord(param) { + return request({ + url: '/zs/clue/consultrecord', + method: 'get', + params: param + }) +} +// 获取已过期 +export function getClueCountBadge() { + return request({ + url: `/zs/clue/badgeCount`, + method: 'get' + }) +} + +// 批量更新 +export function batchUpdate(data) { + return request({ + url: `/zs/clue/batchUpdate`, + method: 'put', + data: data + }) +} + +//公海线索 getPublicList +export function getPublicList(param) { + return request({ + url: `/zs/clue/public/list`, + method: 'get', + params: param + }) +} + +//拾取线索 +export function pickupClue(data) { + return request({ + url: `/zs/clue/public/pickup`, + method: 'put', + data: data + }) +} + +//丢弃线索 +export function discardClue(data) { + return request({ + url: `/zs/clue/public/discard`, + method: 'put', + data: data + }) +} + +//查询接收 +export function getAccept() { + return request({ + url: `/zs/clue/accept`, + method: 'get' + }) +} + +//丢弃线索 +export function updateAccept(data) { + return request({ + url: `/zs/clue/accept`, + method: 'put', + data: data + }) +} diff --git a/src/api/zs/sign.js b/src/api/zs/sign.js new file mode 100644 index 0000000..32dae0b --- /dev/null +++ b/src/api/zs/sign.js @@ -0,0 +1,89 @@ +import request from '@/utils/request' + +// 查询线索列表 +export function getSignList(query) { + return request({ + url: '/zs/sign/list', + method: 'get', + params: query + }) +} + +// 导出 +export function exportData(query) { + return request({ + url: '/zs/sign/export', + method: 'get', + params: query + }) +} + +// 导入模板 +export function importTemplate() { + return request({ + url: '/zs/sign/importTemplate', + method: 'get' + }) +} +// 导入 +export function importData(data) { + return request({ + url: '/zs/sign/importData', + method: 'post', + data: data + }) +} + + +export function addSign(data) { + return request({ + url: '/zs/sign', + method: 'post', + data: data + }) +} + +export function updateSign(data) { + return request({ + url: '/zs/sign', + method: 'put', + data: data + }) +} + +export function getClues(param) { + return request({ + url: '/zs/sign/clue', + method: 'get', + params: param + }) +} + + + +export function deleteSign(data) { + return request({ + url: '/zs/sign', + method: 'delete', + params: data + }) +} + +//审核登记 +export function checkSign(data) { + return request({ + url: '/zs/sign/check', + method: 'put', + data: data + }) +} + + +//审核记录 +export function getCheckRecord(data) { + return request({ + url: '/zs/sign/check', + method: 'get', + params: data + }) +} diff --git a/src/assets/images/place/flag_black.png b/src/assets/images/place/flag_black.png new file mode 100644 index 0000000..0791062 Binary files /dev/null and b/src/assets/images/place/flag_black.png differ diff --git a/src/assets/images/place/flag_blue.png b/src/assets/images/place/flag_blue.png new file mode 100644 index 0000000..78528e7 Binary files /dev/null and b/src/assets/images/place/flag_blue.png differ diff --git a/src/assets/images/place/flag_green.png b/src/assets/images/place/flag_green.png new file mode 100644 index 0000000..e5b98ba Binary files /dev/null and b/src/assets/images/place/flag_green.png differ diff --git a/src/assets/images/place/flag_purple.png b/src/assets/images/place/flag_purple.png new file mode 100644 index 0000000..8b80c04 Binary files /dev/null and b/src/assets/images/place/flag_purple.png differ diff --git a/src/assets/images/place/flag_red.png b/src/assets/images/place/flag_red.png new file mode 100644 index 0000000..e7a1459 Binary files /dev/null and b/src/assets/images/place/flag_red.png differ diff --git a/src/assets/images/place/flag_yellow.png b/src/assets/images/place/flag_yellow.png new file mode 100644 index 0000000..dd2887d Binary files /dev/null and b/src/assets/images/place/flag_yellow.png differ diff --git a/src/components/CustomColumnTable/index.vue b/src/components/CustomColumnTable/index.vue new file mode 100644 index 0000000..91c6959 --- /dev/null +++ b/src/components/CustomColumnTable/index.vue @@ -0,0 +1,278 @@ + + + + + + + diff --git a/src/global/components.js b/src/global/components.js index 179c074..59606dc 100644 --- a/src/global/components.js +++ b/src/global/components.js @@ -13,6 +13,8 @@ import ImageUpload from "@/components/ImageUpload"; import ImagePreview from "@/components/ImagePreview"; // 字典标签组件 import DictTag from "@/components/DictTag"; +// 字典数据组件 +import DictData from '@/components/DictData' // 全局组件挂载 Vue.component("DictTag", DictTag); @@ -22,3 +24,5 @@ Vue.component("Editor", Editor); Vue.component("FileUpload", FileUpload); Vue.component("ImageUpload", ImageUpload); Vue.component("ImagePreview", ImagePreview); + +DictData.install() diff --git a/src/layout/components/AppMain.vue b/src/layout/components/AppMain.vue index 667aafd..c6f2e57 100644 --- a/src/layout/components/AppMain.vue +++ b/src/layout/components/AppMain.vue @@ -1,5 +1,5 @@ - - + - + @@ -238,7 +125,7 @@ - + @@ -246,51 +133,34 @@ - + - {{dict.label}} + {{dict.label}} - - - - + + + + + + - + @@ -311,18 +181,7 @@ - +
将文件拖到此处,或点击上传
@@ -342,7 +201,8 @@ + + + \ No newline at end of file diff --git a/src/views/zs/components/batchUpdateForm.vue b/src/views/zs/components/batchUpdateForm.vue new file mode 100644 index 0000000..90a46f7 --- /dev/null +++ b/src/views/zs/components/batchUpdateForm.vue @@ -0,0 +1,73 @@ + + + diff --git a/src/views/zs/components/clueForm.vue b/src/views/zs/components/clueForm.vue new file mode 100644 index 0000000..9fa2a19 --- /dev/null +++ b/src/views/zs/components/clueForm.vue @@ -0,0 +1,650 @@ + + + + + diff --git a/src/views/zs/components/distributeForm.vue b/src/views/zs/components/distributeForm.vue new file mode 100644 index 0000000..3d4fde8 --- /dev/null +++ b/src/views/zs/components/distributeForm.vue @@ -0,0 +1,95 @@ + + + diff --git a/src/views/zs/components/filterForm.vue b/src/views/zs/components/filterForm.vue new file mode 100644 index 0000000..9932e4d --- /dev/null +++ b/src/views/zs/components/filterForm.vue @@ -0,0 +1,73 @@ + + + + diff --git a/src/views/zs/components/publicTable.vue b/src/views/zs/components/publicTable.vue new file mode 100644 index 0000000..74481b8 --- /dev/null +++ b/src/views/zs/components/publicTable.vue @@ -0,0 +1,84 @@ + + + + \ No newline at end of file diff --git a/src/views/zs/components/signForm.vue b/src/views/zs/components/signForm.vue new file mode 100644 index 0000000..f650aaf --- /dev/null +++ b/src/views/zs/components/signForm.vue @@ -0,0 +1,416 @@ + + + + + diff --git a/src/views/zs/sign.vue b/src/views/zs/sign.vue new file mode 100644 index 0000000..e69de29 diff --git a/vue.config.js b/vue.config.js index 8334c83..4160661 100644 --- a/vue.config.js +++ b/vue.config.js @@ -35,20 +35,31 @@ module.exports = { proxy: { // detail: https://cli.vuejs.org/config/#devserver-proxy [process.env.VUE_APP_BASE_API]: { - // target: `http://localhost:8080`, - target: `http://vue.ruoyi.vip/prod-api/`, + target: `http://localhost:8086`, + // target: `http://vue.ruoyi.vip/prod-api/`, changeOrigin: true, pathRewrite: { ['^' + process.env.VUE_APP_BASE_API]: '' } + }, + "/amap": { + target: "https://restapi.amap.com", + changeOrigin: true, + ws: true, + pathRewrite: { + "^/amap": "" + } } + }, disableHostCheck: true }, css: { loaderOptions: { sass: { - sassOptions: { outputStyle: 'expanded' } + sassOptions: { + outputStyle: 'expanded' + } } } }, @@ -59,6 +70,9 @@ module.exports = { '@': resolve('src') } }, + externals: { + AMap: "AMap" + }, plugins: [ // http://doc.ruoyi.vip/ruoyi-vue/other/faq.html#使用gzip解压缩静态文件 new CompressionPlugin({ @@ -92,12 +106,10 @@ module.exports = { config .plugin('ScriptExtHtmlWebpackPlugin') .after('html') - .use('script-ext-html-webpack-plugin', [ - { - // `runtime` must same as runtimeChunk name. default is `runtime` - inline: /runtime\..*\.js$/ - } - ]) + .use('script-ext-html-webpack-plugin', [{ + // `runtime` must same as runtimeChunk name. default is `runtime` + inline: /runtime\..*\.js$/ + }]) .end(); config.optimization.splitChunks({ chunks: 'all', @@ -122,11 +134,10 @@ module.exports = { } } }); - config.optimization.runtimeChunk('single'), - { - from: path.resolve(__dirname, './public/robots.txt'), // 防爬虫文件 - to: './' // 到根目录下 - }; + config.optimization.runtimeChunk('single'), { + from: path.resolve(__dirname, './public/robots.txt'), // 防爬虫文件 + to: './' // 到根目录下 + }; }); } };