diff --git a/package.json b/package.json index e497151..7812d84 100644 --- a/package.json +++ b/package.json @@ -14,6 +14,7 @@ "file-saver": "^2.0.2", "jquery": "^3.5.1", "lib-flexible": "^0.3.2", + "lodash": "^4.17.15", "moment": "^2.24.0", "postcss-px2rem-exclude": "0.0.6", "script-loader": "^0.7.2", diff --git a/postcss.config.js b/postcss.config.js index 8c25487..ff4ee10 100644 --- a/postcss.config.js +++ b/postcss.config.js @@ -1,9 +1,9 @@ module.exports = { plugins: { autoprefixer: {}, - "postcss-px2rem-exclude": { - remUnit: 40, - exclude: /node_modules|folder_name/i, - }, + // "postcss-px2rem-exclude": { + // remUnit: 40, + // exclude: /node_modules|folder_name/i, + // }, }, }; diff --git a/src/iview.js b/src/iview.js index 82090c5..ce1bf96 100644 --- a/src/iview.js +++ b/src/iview.js @@ -1,83 +1,89 @@ -import Vue from 'vue'; +import Vue from "vue"; import { - Avatar, Breadcrumb, BreadcrumbItem, - Button, - Card, - Content, - Form, - FormItem, - Icon, - Input, - InputNumber, - Layout, - Menu, - MenuItem, - Sider, - Submenu, - Table, - Row, - Col, - Select, - Option, - Poptip, - DatePicker, - CheckboxGroup, - Checkbox, - RadioGroup, - Switch, - Modal, - Message, - Radio, - List, - Divider, - Page, - Upload, - Spin, - Tooltip, - Step, - Steps, - Tag + Avatar, + Breadcrumb, + BreadcrumbItem, + Button, + Card, + Content, + Form, + FormItem, + Icon, + Input, + InputNumber, + Layout, + Menu, + MenuItem, + Sider, + Submenu, + Table, + Row, + Col, + Select, + Option, + Poptip, + DatePicker, + CheckboxGroup, + Checkbox, + RadioGroup, + Switch, + Modal, + Message, + Radio, + List, + Divider, + Page, + Upload, + Spin, + Tooltip, + Step, + Steps, + Tag, + Collapse, + Panel, } from "view-design"; -import 'view-design/dist/styles/iview.css'; +import "view-design/dist/styles/iview.css"; -Vue.component('Button', Button); -Vue.component('Tag', Tag); -Vue.component('Table', Table); -Vue.component('Card', Card); -Vue.component('Form', Form); -Vue.component('FormItem', FormItem); -Vue.component('InputNumber', InputNumber); -Vue.component('Icon', Icon); -Vue.component('i-input', Input); -Vue.component('Layout', Layout); -Vue.component('Sider', Sider); -Vue.component('Avatar', Avatar); -Vue.component('Menu', Menu); -Vue.component('MenuItem', MenuItem); -Vue.component('Submenu', Submenu); -Vue.component('Content', Content); -Vue.component('Breadcrumb', Breadcrumb); -Vue.component('BreadcrumbItem', BreadcrumbItem); -Vue.component('Row', Row); -Vue.component('i-col', Col); -Vue.component('Select', Select); -Vue.component('Option', Option); -Vue.component('Poptip', Poptip); -Vue.component('DatePicker', DatePicker); -Vue.component('CheckboxGroup', CheckboxGroup); -Vue.component('Checkbox', Checkbox); -Vue.component('RadioGroup', RadioGroup); -Vue.component('i-switch', Switch); -Vue.component('Modal', Modal); -Vue.component('Message', Message); +Vue.component("Button", Button); +Vue.component("Collapse", Collapse); +Vue.component("Panel", Panel); +Vue.component("Tag", Tag); +Vue.component("Table", Table); +Vue.component("Card", Card); +Vue.component("Form", Form); +Vue.component("FormItem", FormItem); +Vue.component("InputNumber", InputNumber); +Vue.component("Icon", Icon); +Vue.component("i-input", Input); +Vue.component("Layout", Layout); +Vue.component("Sider", Sider); +Vue.component("Avatar", Avatar); +Vue.component("Menu", Menu); +Vue.component("MenuItem", MenuItem); +Vue.component("Submenu", Submenu); +Vue.component("Content", Content); +Vue.component("Breadcrumb", Breadcrumb); +Vue.component("BreadcrumbItem", BreadcrumbItem); +Vue.component("Row", Row); +Vue.component("i-col", Col); +Vue.component("Select", Select); +Vue.component("Option", Option); +Vue.component("Poptip", Poptip); +Vue.component("DatePicker", DatePicker); +Vue.component("CheckboxGroup", CheckboxGroup); +Vue.component("Checkbox", Checkbox); +Vue.component("RadioGroup", RadioGroup); +Vue.component("i-switch", Switch); +Vue.component("Modal", Modal); +Vue.component("Message", Message); Vue.prototype.$Modal = Modal; Vue.prototype.$Message = Message; -Vue.component('Radio', Radio); -Vue.component('List', List); -Vue.component('Divider', Divider); -Vue.component('Page', Page); -Vue.component('Spin', Spin); -Vue.component('Upload', Upload); -Vue.component('Tooltip', Tooltip); -Vue.component('Step', Step); -Vue.component('Steps', Steps); +Vue.component("Radio", Radio); +Vue.component("List", List); +Vue.component("Divider", Divider); +Vue.component("Page", Page); +Vue.component("Spin", Spin); +Vue.component("Upload", Upload); +Vue.component("Tooltip", Tooltip); +Vue.component("Step", Step); +Vue.component("Steps", Steps); diff --git a/src/main.js b/src/main.js index f638fca..0f8ceaa 100644 --- a/src/main.js +++ b/src/main.js @@ -1,43 +1,42 @@ -import Vue from 'vue' -import App from './App.vue' -import router from './router' -import Vuex from 'vuex' -import moment from 'moment' -import axios from 'axios'; -import QS from 'qs'; -import './iview'; -import './vcharts' -import 'lib-flexible/flexible' +import Vue from "vue"; +import App from "./App.vue"; +import router from "./router"; +import Vuex from "vuex"; +import moment from "moment"; +import axios from "axios"; +import QS from "qs"; +import "./iview"; +import "./vcharts"; +import "lib-flexible/flexible"; +import _ from "lodash"; Vue.prototype.$axios = axios; Vue.prototype.$qs = QS; Vue.prototype.$moment = moment; -Vue.config.productionTip = false +Vue.config.productionTip = false; Vue.prototype.$moment = moment; +Vue.prototype._ = _; -import echarts from 'echarts'; -import 'echarts/map/js/china' +import echarts from "echarts"; +import "echarts/map/js/china"; Vue.prototype.$echarts = echarts; // 需要汉化 -moment.locale('zh-cn'); +moment.locale("zh-cn"); Vue.use(Vuex); // Vue.use(ViewUI); //实现了全局的事件总线对象 Vue.prototype.bus = new Vue(); - new Vue({ - render: h => h(App), + render: (h) => h(App), router, -}).$mount('#app') - +}).$mount("#app"); //重复点击同一个报错解决 -import Router from 'vue-router' -const routerPush = Router.prototype.push +import Router from "vue-router"; +const routerPush = Router.prototype.push; Router.prototype.push = function push(location) { - return routerPush.call(this, location).catch(error=> error) -} - + return routerPush.call(this, location).catch((error) => error); +}; diff --git a/src/pages/activity/ActivityManager.vue b/src/pages/activity/ActivityManager.vue index beec632..9eba1c4 100644 --- a/src/pages/activity/ActivityManager.vue +++ b/src/pages/activity/ActivityManager.vue @@ -1,14 +1,21 @@ - diff --git a/src/pages/activity/addActivity.vue b/src/pages/activity/addActivity.vue index 3424827..a0955c0 100644 --- a/src/pages/activity/addActivity.vue +++ b/src/pages/activity/addActivity.vue @@ -1,236 +1,267 @@ - \ No newline at end of file + diff --git a/src/pages/activity/useActivityStepFoure.vue b/src/pages/activity/useActivityStepFoure.vue index 6af05a7..57aa016 100644 --- a/src/pages/activity/useActivityStepFoure.vue +++ b/src/pages/activity/useActivityStepFoure.vue @@ -1,31 +1,58 @@ - \ No newline at end of file + diff --git a/src/pages/activity/useActivityStepOne.vue b/src/pages/activity/useActivityStepOne.vue index d943f40..98434cb 100644 --- a/src/pages/activity/useActivityStepOne.vue +++ b/src/pages/activity/useActivityStepOne.vue @@ -1,25 +1,65 @@ \ No newline at end of file +.inputClass { + width: 45%; + margin-bottom: 10px; + margin-right: 20px; +} + diff --git a/src/pages/activity/useActivityStepThree.vue b/src/pages/activity/useActivityStepThree.vue index fc15933..e15e4cc 100644 --- a/src/pages/activity/useActivityStepThree.vue +++ b/src/pages/activity/useActivityStepThree.vue @@ -1,121 +1,214 @@ - \ No newline at end of file + diff --git a/src/pages/activity/useActivityStepTwo.vue b/src/pages/activity/useActivityStepTwo.vue index 820132a..2fb2059 100644 --- a/src/pages/activity/useActivityStepTwo.vue +++ b/src/pages/activity/useActivityStepTwo.vue @@ -1,121 +1,170 @@ - \ No newline at end of file + diff --git a/src/pages/activity/useTable.vue b/src/pages/activity/useTable.vue index 9e7ca0c..f912f5c 100644 --- a/src/pages/activity/useTable.vue +++ b/src/pages/activity/useTable.vue @@ -1,118 +1,166 @@ - \ No newline at end of file + diff --git a/src/services/ActivityManager/ActivityManager.js b/src/services/ActivityManager/ActivityManager.js index 3342703..b74366a 100644 --- a/src/services/ActivityManager/ActivityManager.js +++ b/src/services/ActivityManager/ActivityManager.js @@ -4,7 +4,7 @@ * @date 2020/05/19 */ -import http from '../CommonHttp' +import http from "../CommonHttp"; /** * 活动池列表 @@ -13,56 +13,56 @@ import http from '../CommonHttp' * @returns {Promise} 返回Promise对象 */ export function getActivityList(params, call) { - return http.get('/activity/schedule/list/all', params).then(call) + return http.get("/activity/schedule/list/all", params).then(call); } /** * 新增或修改活动池 */ export function addOreditActivity(params, call) { - return http.post('/activity/schedule/save',params).then(call) + return http.post("/activity/schedule/save", params).then(call); } /** * 获取活动池详情 */ export function getActivityInfo(params, call) { - return http.get('/activity/schedule/detail',params).then(call) + return http.get("/activity/schedule/detail", params).then(call); } /** * 上传图片 */ export function uploadImg(params, call) { - return http.post('/upload',params).then(call) + return http.post("/upload", params).then(call); } /** * 获取零售公司 */ export function getCompany(params, call) { - return http.get('/retail/company',params).then(call) + return http.get("/retail/company", params).then(call); } /** * 获取店铺 */ export function getShop(params, call) { - return http.post('poi/store/user/shop',params).then(call) + return http.post("poi/store/user/shopDTO", params).then(call); } /** * 根据活动池新建/编辑实例 */ export function saveActivityData(params, call) { - return http.post('activity/instance/save',params).then(call) + return http.post("activity/instance/save", params).then(call); } /** * 活动实例分页列表 */ export function getActivityTableData(params, call) { - return http.get('activity/instance/list',params).then(call) + return http.get("activity/instance/list", params).then(call); } export default { @@ -73,5 +73,5 @@ export default { getCompany, getShop, getActivityTableData, - saveActivityData -} + saveActivityData, +}; diff --git a/src/store/getters.js b/src/store/getters.js new file mode 100644 index 0000000..7bb01e1 --- /dev/null +++ b/src/store/getters.js @@ -0,0 +1,5 @@ +const getters = { + activityUseData: (state) => state.activity.useData, +}; + +export default getters; diff --git a/src/store/index.js b/src/store/index.js index 802a75b..15d2558 100644 --- a/src/store/index.js +++ b/src/store/index.js @@ -1,16 +1,16 @@ -import Vue from 'vue' -import Vuex from 'vuex' -import home from './modules/home' -import activity from './modules/activity' -import createLogger from 'vuex/dist/logger' +import Vue from "vue"; +import Vuex from "vuex"; +import home from "./modules/home"; +import activity from "./modules/activity"; +import createLogger from "vuex/dist/logger"; -Vue.use(Vuex) -const debug = true +Vue.use(Vuex); +const debug = true; export default new Vuex.Store({ modules: { home, - activity + activity, }, - plugins: debug ? [createLogger()] : [] -}) + plugins: debug ? [createLogger()] : [], +}); diff --git a/src/store/modules/activity.js b/src/store/modules/activity.js index a143180..cac4cc5 100644 --- a/src/store/modules/activity.js +++ b/src/store/modules/activity.js @@ -1,35 +1,54 @@ -import * as types from './mutation-type' +import * as types from "./mutation-type"; const activity = { state: { - useData: {}, + useData: { + beginTime: "", + endTime: "", + id: null, + name: "", + params: [], + scheduleId: null, + stores: [], + company: [], + }, useModal: false, - id: '', + id: "", store: [], - company: [], }, mutations: { [types.SET_useData](state, useData) { - state.useData = useData + state.useData = useData; + }, + [types.RSET_useData](state) { + state.useData = { + beginTime: "", + endTime: "", + id: null, + name: "", + params: [], + scheduleId: null, + stores: [], + company: [], + }; }, [types.SET_useModal](state, useModal) { - state.useModal = useModal + state.useModal = useModal; }, [types.SET_ID](state, id) { - state.id = id - } + state.id = id; + }, }, actions: {}, getters: { - useData: state => { - return state.useData - }, - useModal: state => { - return state.useModal - }, - id: state => { - return state.id - } - } - -} -export default activity \ No newline at end of file + useData: (state) => { + return state.useData; + }, + useModal: (state) => { + return state.useModal; + }, + id: (state) => { + return state.id; + }, + }, +}; +export default activity; diff --git a/src/store/modules/mutation-type.js b/src/store/modules/mutation-type.js index 080c5f0..c4630e5 100755 --- a/src/store/modules/mutation-type.js +++ b/src/store/modules/mutation-type.js @@ -1,4 +1,5 @@ -export const SET_NUM = 'SET_NUM' -export const SET_ID = 'SET_ID' -export const SET_useData = 'SET_useData' -export const SET_useModal = 'SET_useModal' +export const SET_NUM = "SET_NUM"; +export const SET_ID = "SET_ID"; +export const SET_useData = "SET_useData"; +export const RSET_useData = "RSET_useData"; +export const SET_useModal = "SET_useModal"; diff --git a/vue.config.js b/vue.config.js index 0cb5f79..85c6970 100644 --- a/vue.config.js +++ b/vue.config.js @@ -31,19 +31,19 @@ module.exports = { // proxy: 'http://192.168.1.123:8312/' // proxy: 'http://192.168.31.177:8312/' // proxy: 'http://localhost:8312/' - proxy: "http://111.231.218.44:8080/", + proxy: "http://localhost:8080/", // proxy: 'http://jdxdev.vipgz4.idcfengye.com/' }, chainWebpack: (config) => { - config.module - .rule("css") - .test(/\.css$/) - .oneOf("vue") - .resourceQuery(/\?vue/) - .use("px2rem") - .loader("px2rem-loader") - .options({ - remUnit: 40, - }); + // config.module + // .rule("css") + // .test(/\.css$/) + // .oneOf("vue") + // .resourceQuery(/\?vue/) + // .use("px2rem") + // .loader("px2rem-loader") + // .options({ + // remUnit: 40, + // }); }, };