(必须设置!!)
- * meta : {
- roles: ['admin','editor'] 控制页面角色(可以设置多个角色)
- title: 'title' 名称显示在侧边栏和面包屑中(推荐集)
- icon: 'svg-name'/'el-icon-x' 图标显示在侧栏中
- isCache: false 如果设置为true,页面将会被缓存(默认为false) 有效
- affix: true 如果设置为true,标记将附着在标记视图中
- breadcrumb: false 如果设置为false,该项将隐藏在breadcrumb中(默认为true)
- activeMenu: '/example/list' 如果设置路径,侧边栏将突出显示您设置的路径
- isShowChildrenByHover: false 如果设置为true, 鼠标在一级菜单上时,展示所有的二、三级菜单(默认false: 正常下拉展示 二、三级菜单)
- mulTag:false 如果设置为true,不同query的链接将打开一个新的tag页面
- }
- */
-
-/**
- * constantRoutes
- * a base page that does not have permission requirements
- * all roles can be accessed
- */
-export const constantRoutes = [
- {
- path: '/redirect',
- component: Layout,
- name: 'Redirect',
- hidden: true,
- children: [
- {
- path: '/redirect/:path(.*)',
- component: () => import('@/views/common/redirect/index'),
- },
- ],
- },
- {
- path: '/login',
- name: 'Login',
- component: () => import('@/views/common/login/auth-redirect'),
- hidden: true,
- },
- {
- path: '/auth-redirect',
- component: () => import('@/views/common/login/auth-redirect'),
- hidden: true,
- },
- {
- path: '/404',
- name: '404',
- component: () => import('@/views/common/error-page/404'),
- hidden: true,
- },
- {
- path: '/401',
- name: '401',
- component: () => import('@/views/common/error-page/401'),
- hidden: true,
- },
- {
- path: '/',
- component: Layout,
- redirect: '/dashboard',
- name: 'Dashboard1',
- meta: {
- // 展示在侧边栏
- title: '',
- icon: 'dashboard',
- breadcrumb: false,
- },
- hidden: true,
- children: [
- {
- path: '占位,第二级路由',
- name: 'Dashboard2',
- component: EmptyRouterAlive,
- redirect: '/dashboard',
- meta: {
- // 占位,凑四级路由,不展示
- title: '首页2',
- breadcrumb: false,
- },
- hidden: true,
- children: [
- {
- path: '占位,第三级路由',
- name: 'Dashboard3',
- component: EmptyRouter,
- redirect: '/dashboard',
- meta: {
- // 占位,凑四级路由,不展示
- title: '首页2',
- breadcrumb: false,
- },
- hidden: true,
- children: [
- {
- path: '/dashboard',
- component: () => import('@/views/common/dashboard/index'),
- name: 'Dashboard',
- meta: {
- // 展示在 面包屑、页签title
- title: '',
- icon: 'dashboard',
- affix: false,
- },
- },
- ],
- },
- ],
- },
- ],
- },
-
- {
- path: '/common',
- component: Layout,
- redirect: 'index',
- name: 'Common',
- hidden: true,
- children: [
- {
- path: 'xx',
- name: 'xxxxxx',
- component: EmptyRouterAlive,
- meta: {
- // 占位,凑四级路由,不展示
- title: '通用模块',
- breadcrumb: false,
- },
- hidden: true,
- children: [
- {
- path: 'xx',
- name: 'xxxxxx',
- component: EmptyRouter,
- meta: {
- // 占位,凑四级路由,不展示
- title: '通用模块',
- breadcrumb: false,
- },
- hidden: true,
- children: [
- {
- path: '/common/personal',
- component: () => import('@/views/common/personal'),
- name: 'CommonPersonal',
- meta: {
- // 展示在 面包屑、页签title
- title: '个人中心',
- },
- },
- {
- path: '/common/menu',
- component: () => import('@/views/center-setting/menu'),
- name: 'CommonMenu',
- meta: {
- title: '菜单配置',
- },
- },
- ],
- },
- ],
- },
- ],
- },
-];
-
-export const asyncRoutes = [
- {
- path: '/setting',
- component: Layout,
- // redirect: '/personal/index',
- name: 'Setting',
- meta: {
- title: '配置中心',
- icon: 'el-icon-s-operation',
- isShowChildrenByHover: true,
- },
- children: [...settingCenter],
- },
- {
- path: '/business',
- component: Layout,
- // redirect: '/personal/index',
- name: 'Business',
- meta: {
- title: '业务中心',
- icon: 'el-icon-notebook-1',
- isShowChildrenByHover: true,
- },
- children: [...businessCenter],
- },
- // {
- // path: '/test',
- // component: Layout,
- // redirect: '/test/index',
- // name: 'Test',
- // meta: {
- // title: 'DEMO',
- // breadcrumb: false,
- // icon: 'bug',
- // },
- // children: [
- // {
- // path: 'xx20210825',
- // name: 'XX20210825',
- // component: EmptyRouter,
- // meta: {
- // // 占位,凑三级路由,不展示
- // breadcrumb: false,
- // },
- // hidden: true,
- // children: [
- // {
- // path: '/test/index',
- // component: () => import('@/views/test/index'),
- // name: 'TestIndex',
- // meta: { title: '测试', isCache: true },
- // hidden: true,
- // },
- // ],
- // },
- // ],
- // },
- { path: '*', redirect: '/404', hidden: true },
-];
-
-console.log('asyncRoutes', asyncRoutes);
-console.log(
- '权限表 permission.json 用于初始化菜单权限数据',
- [asyncRoutes[0], asyncRoutes[1]].map((e1, n1) => {
- return {
- permissionType: e1.permissionType || 'api',
- title: e1.meta.title,
- icon: e1.meta.icon || null,
- code: e1.name,
- hiddenFlag: false,
- sort: n1,
- children: !e1.children
- ? []
- : e1.children.map((e2, n2) => {
- if (!e2.children || e2.children.length == 0) {
- console.log('只有二级:' + e1.meta.title + '-' + e2.meta.title);
- }
- return {
- permissionType: e2.permissionType || 'api',
- title: e2.meta.title,
- icon: e2.meta.icon || null,
- code: e2.name,
- hiddenFlag: false,
- sort: n2,
- children: !e2.children
- ? []
- : e2.children.map((e3, n3) => {
- if (!e3.children || e3.children.length == 0) {
- console.log(
- '只有三级:' + e1.meta.title + '-' + e2.meta.title + '-' + e3.meta.title,
- );
- }
- return {
- permissionType: e3.permissionType || 'api',
- title: e3.meta.title,
- icon: e3.meta.icon || null,
- code: e3.name,
- hiddenFlag: false,
- sort: n3,
- children: !e3.children
- ? []
- : e3.children.map((e4, n4) => {
- // 有下划线的 默认为按钮,没有下划线的为页面,如果是tab页,则对应路由表permissionType=tab
- const DEFAULT_TYPE = e4.name.includes('_') ? 'btn' : 'page';
- return {
- permissionType: e4.permissionType || DEFAULT_TYPE,
- title: e4.meta.title,
- icon: e4.meta.icon || null,
- code: e4.name,
- hiddenFlag: true,
- sort: n4,
- };
- }),
- };
- }),
- };
- }),
- };
- }),
-);
-
-const createRouter = () =>
- new Router({
- // mode: 'history', // require service support
- scrollBehavior: () => ({
- y: 0,
- }),
- routes: constantRoutes,
- });
-
-const router = createRouter();
-// Detail see: https://github.com/vuejs/vue-router/issues/1234#issuecomment-357941465
-export function resetRouter() {
- const newRouter = createRouter();
- router.matcher = newRouter.matcher; // reset router
-}
-
-export default router;
diff --git a/front-end/src/settings.js b/front-end/src/settings.js
deleted file mode 100644
index 36f4c25..0000000
--- a/front-end/src/settings.js
+++ /dev/null
@@ -1,35 +0,0 @@
-module.exports = {
- title: '飞骥管理系统',
-
- /**
- * @type {boolean} true | false
- * @是否显示设置右面板
- */
- showSettings: false,
-
- /**
- * @type {boolean} true | false
- * @description Whether need tagsView
- */
- tagsView: true,
-
- /**
- * @type {boolean} true | false
- * @description Whether fix the header
- */
- fixedHeader: true,
-
- /**
- * @type {boolean} true | false
- * @description Whether show the logo in sidebar
- */
- sidebarLogo: true,
-
- /**
- * @type {string | array} 'production' | ['production', 'development']
- * @description Need show err logs component.
- * The default is only used in the production env
- * If you want to also use it in dev, you can pass ['production', 'development']
- */
- errorLog: 'production',
-};
diff --git a/front-end/src/store/getters.js b/front-end/src/store/getters.js
deleted file mode 100644
index b614914..0000000
--- a/front-end/src/store/getters.js
+++ /dev/null
@@ -1,22 +0,0 @@
-const getters = {
- sidebar: state => state.app.sidebar,
- size: state => state.app.size,
- device: state => state.app.device,
- loadingCount: state => state.app.loadingCount,
- loadingDelayed: state => state.app.loadingDelayed,
- visitedViews: state => state.tagsView.visitedViews,
- cachedViews: state => state.tagsView.cachedViews,
- token: state => state.user.token,
- avatar: state => state.user.avatar,
- name: state => state.user.name,
- introduction: state => state.user.introduction,
- roles: state => state.user.roles,
- userInfo: state => state.user.userInfo,
- tenantId: state => state.user.userInfo.organizationId,
- permission_routes: state => state.permission.routes,
- errorLogs: state => state.errorLog.logs,
- isSuperAdmin: state => state.user.isSuperAdmin,
- userPermissions: state => state.user.permissions,
- userPermissionBtns: state => state.user.permissionBtns,
-};
-export default getters;
diff --git a/front-end/src/store/index.js b/front-end/src/store/index.js
deleted file mode 100644
index 2e119c4..0000000
--- a/front-end/src/store/index.js
+++ /dev/null
@@ -1,25 +0,0 @@
-import Vue from 'vue';
-import Vuex from 'vuex';
-import getters from './getters';
-
-Vue.use(Vuex);
-
-// https://webpack.js.org/guides/dependency-management/#requirecontext
-const modulesFiles = require.context('./modules', true, /\.js$/);
-
-// you do not need `import app from './modules/app'`
-// it will auto require all vuex module from modules file
-const modules = modulesFiles.keys().reduce((modules, modulePath) => {
- // set './app.js' => 'app'
- const moduleName = modulePath.replace(/^\.\/(.*)\.\w+$/, '$1');
- const value = modulesFiles(modulePath);
- modules[moduleName] = value.default;
- return modules;
-}, {});
-
-const store = new Vuex.Store({
- modules,
- getters,
-});
-
-export default store;
diff --git a/front-end/src/store/modules/app.js b/front-end/src/store/modules/app.js
deleted file mode 100644
index d6ee299..0000000
--- a/front-end/src/store/modules/app.js
+++ /dev/null
@@ -1,204 +0,0 @@
-import Cookies from 'js-cookie';
-import { commonApi } from '@/api';
-const LIKE_CODE = 'myLikeMenuList';
-const LIKE_CODE_VERSION = 3;
-const state = {
- sidebar: {
- opened: true, // Cookies.get('sidebarStatus') ? !!+Cookies.get('sidebarStatus') : true,
- liked: Cookies.get('sidebarLiked') ? !!+Cookies.get('sidebarLiked') : false,
- withoutAnimation: false,
- likedData: [],
- likedMax: 8, // 最多添加 8 个收藏菜单
- },
- device: 'desktop',
- size: Cookies.get('size') || 'medium',
- loadingCount: 0,
- loadingDelayed: 501, // ms 延时关闭,防止递归请求的loading频繁开关。
-};
-
-const mutations = {
- TOGGLE_SIDEBAR: state => {
- state.sidebar.opened = !state.sidebar.opened;
- state.sidebar.withoutAnimation = false;
- if (state.sidebar.opened) {
- Cookies.set('sidebarStatus', 1);
- } else {
- Cookies.set('sidebarStatus', 0);
- }
- },
- TOGGLE_SIDEBAR_LIKE: state => {
- state.sidebar.liked = !state.sidebar.liked;
- state.sidebar.withoutAnimation = false;
- if (state.sidebar.liked) {
- Cookies.set('sidebarLiked', 1);
- } else {
- Cookies.set('sidebarLiked', 0);
- }
- },
- OPEN_SIDEBAR: (state, withoutAnimation) => {
- Cookies.set('sidebarStatus', 1);
- state.sidebar.opened = true;
- state.sidebar.withoutAnimation = withoutAnimation;
- },
- CLOSE_SIDEBAR: (state, withoutAnimation) => {
- Cookies.set('sidebarStatus', 0);
- state.sidebar.opened = false;
- state.sidebar.withoutAnimation = withoutAnimation;
- },
- CLOSE_SIDEBAR_LIKE: (state, withoutAnimation) => {
- Cookies.set('sidebarLiked', 0);
- state.sidebar.liked = false;
- state.sidebar.withoutAnimation = withoutAnimation;
- },
- TOGGLE_DEVICE: (state, device) => {
- state.device = device;
- },
- SET_SIZE: (state, size) => {
- state.size = size;
- Cookies.set('size', size);
- },
- SET_LOADING_COUNT: (state, loadingCount) => {
- state.loadingCount = loadingCount;
- Cookies.set('loadingCount', loadingCount);
- },
- SET_SIDEBAR_LIKED_DATA: (state, list) => {
- state.sidebar.likedData = list;
- },
- ADD_SIDEBAR_LIKED_DATA: (state, route) => {
- route.meta.icon = ''; // 'el-icon-star-on';
-
- state.sidebar.likedData.push({
- ...route,
- children: [],
- });
- const LEN = state.sidebar.likedData.length;
- const MAX = state.sidebar.likedMax;
- if (LEN > MAX) {
- state.sidebar.likedData = state.sidebar.likedData.slice(LEN - MAX, LEN);
- }
- },
- DELETE_SIDEBAR_LIKED_DATA: (state, route) => {
- const TEMP = [].concat(state.sidebar.likedData);
- TEMP.remove(route.name, 'name');
- state.sidebar.likedData = [].concat(TEMP);
- },
-};
-
-const actions = {
- toggleSideBar({ commit }) {
- commit('TOGGLE_SIDEBAR');
- },
- toggleSideBarLike({ commit }) {
- commit('TOGGLE_SIDEBAR_LIKE');
- },
- openSideBar({ commit }, { withoutAnimation }) {
- commit('OPEN_SIDEBAR', withoutAnimation);
- },
- closeSideBar({ commit }, { withoutAnimation }) {
- commit('CLOSE_SIDEBAR', withoutAnimation);
- },
- closeSideBarLike({ commit }, { withoutAnimation }) {
- commit('CLOSE_SIDEBAR_LIKE', withoutAnimation);
- },
-
- toggleDevice({ commit }, device) {
- commit('TOGGLE_DEVICE', device);
- },
- setSize({ commit }, size) {
- commit('SET_SIZE', size);
- },
- addLoadingCount({ commit, state }, isAdd = true) {
- const ov = state.loadingCount;
- let nv;
- if (isAdd) {
- nv = ov + 1;
- } else {
- nv = ov ? ov - 1 : 0;
- }
- commit('SET_LOADING_COUNT', nv);
- },
- // 当isCache==true时,强制从接口获取数据
- getLikeData({ commit, state }, isCache) {
- if (state.sidebar.likedData.length && !isCache) {
- return state.sidebar.likedData;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getTabulation({
- code: LIKE_CODE,
- })
- .then(res => {
- console.log('saveConfig', res);
- const remoteVersion = res.flag || 1;
- let tempList = [];
-
- if (Array.isArray(res)) {
- tempList = res;
- }
- if (Array.isArray(res.titleList)) {
- tempList = res.titleList;
- }
-
- if (tempList && tempList.length && remoteVersion == LIKE_CODE_VERSION) {
- console.log('get really');
- tempList = tempList.map((e, i) => {
- return {
- children: [],
- component: null,
- hidden: false,
- meta: {
- title: e.label,
- icon: e.fixed,
- },
- name: e.prop,
- path: e.prop,
- redirect: e.width,
- sort: e.sort,
- };
- });
- } else {
- tempList = [];
- }
- // 只取后几个
- if (tempList.length > 8) {
- tempList = tempList.slice(tempList.length - state.sidebar.likedMax, tempList.length);
- }
-
- commit('SET_SIDEBAR_LIKED_DATA', tempList);
- resolve(tempList);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- saveLikeData({ commit, state }, list) {
- commonApi
- .saveTabulation({
- code: LIKE_CODE,
- flag: LIKE_CODE_VERSION,
- tabulationTitleDTOS: state.sidebar.likedData.map((e, i) => {
- return {
- disabled: false,
- fixed: e.meta && e.meta.icon,
- isCheck: false,
- label: e.meta && e.meta.title,
- prop: e.name,
- sort: i,
- width: e.redirect,
- };
- }),
- })
- .then(res => {
- console.log('saveConfig', res);
- });
- },
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/store/modules/errorLog.js b/front-end/src/store/modules/errorLog.js
deleted file mode 100644
index 17174cc..0000000
--- a/front-end/src/store/modules/errorLog.js
+++ /dev/null
@@ -1,28 +0,0 @@
-const state = {
- logs: []
-};
-
-const mutations = {
- ADD_ERROR_LOG: (state, log) => {
- state.logs.push(log);
- },
- CLEAR_ERROR_LOG: (state) => {
- state.logs.splice(0);
- }
-};
-
-const actions = {
- addErrorLog({ commit }, log) {
- commit('ADD_ERROR_LOG', log);
- },
- clearErrorLog({ commit }) {
- commit('CLEAR_ERROR_LOG');
- }
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions
-};
diff --git a/front-end/src/store/modules/fileUrl.js b/front-end/src/store/modules/fileUrl.js
deleted file mode 100644
index b39a2b7..0000000
--- a/front-end/src/store/modules/fileUrl.js
+++ /dev/null
@@ -1,107 +0,0 @@
-/**
- * @author zhengxinquan
- * @description 从api或缓存中获取授权的图片
- * @调用 await this.$store.dispatch('values/getValueList', 'SCHL.CHANNEL_TYPE');
- *
- */
-import { settingApi } from '@/api';
-
-const DEFAULT_EXPIRES = 1 * 60 * 60;
-const DEFAULT_BUCKET_NAME = process.env.VUE_APP_UPLOAD_BUCKET_NAME;
-const getDefaultState = () => {
- return {
- FILES: [
- {
- bucketName: '',
- url: '',
- key: '',
-
- // new Date().getTime()/1000
- create: '', // 秒
-
- expires: '', // 秒
- fileTokenUrl: '', //
- },
- ],
- };
-};
-const state = getDefaultState();
-
-const mutations = {
- ADD_FILES: (state, FILE) => {
- const index = state.FILES.findIndex(e => {
- if (FILE.url) {
- return e.bucketName == FILE.bucketName && e.url == FILE.url;
- }
- if (FILE.key) {
- return e.bucketName == FILE.bucketName && e.key == FILE.key;
- }
- return false;
- });
- if (index == -1) {
- state.FILES.push(FILE);
- } else {
- state.FILES.splice(index, 1, FILE);
- }
- },
-};
-
-const actions = {
- getFileTokenUrl({ commit, state }, { url, bucketName, expires }) {
- const EXPIRES = expires || DEFAULT_EXPIRES;
- const BUCKET_NAME = bucketName || DEFAULT_BUCKET_NAME;
- const URL = url;
- const finder_file = state.FILES.find(e => {
- const NOW_TIME = new Date().getTime() / 1000;
- const TIME_FLAG = e.create + e.expires > NOW_TIME;
- return e.bucketName == BUCKET_NAME && e.url == URL && TIME_FLAG;
- });
-
- return new Promise((resolve, reject) => {
- if (finder_file) {
- resolve(finder_file.fileTokenUrl);
- } else {
- // 去授权
- settingApi
- .getFileUrlByUrl({
- bucketName: BUCKET_NAME,
- url: URL,
- expires: EXPIRES,
- // 授权有效时长(单位秒)
- })
- .then(res => {
- if (res.failed !== true) {
- let url = res.fileTokenUrl || res.message || res;
- if (url.indexOf('http') !== 0) {
- url = 'http://' + url;
- }
- const FILE = {
- bucketName: BUCKET_NAME,
- url: URL,
- key: '',
- create: new Date().getTime() / 1000,
- expires: EXPIRES, // 秒
- fileTokenUrl: url,
- };
- commit('ADD_FILES', FILE);
- resolve(url);
- } else {
- reject(url);
- }
- });
- }
- });
- },
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/store/modules/permission.js b/front-end/src/store/modules/permission.js
deleted file mode 100644
index 79aa192..0000000
--- a/front-end/src/store/modules/permission.js
+++ /dev/null
@@ -1,145 +0,0 @@
-import { asyncRoutes, constantRoutes } from '@/router';
-/**
- * Use meta.role to determine if the current user has permission
- * @param roles
- * @param route
- */
-function hasPermission(permissions, route) {
- const code = route.name;
-
- const f = p => {
- let find = null;
- for (let index = 0; index < p.length; index++) {
- const e = p[index];
- if (e.code == code) {
- find = e;
- break;
- }
- find = f(e.children || []);
- if (find) break;
- }
- return find;
- };
- const obj = f(permissions);
-
- // 覆盖部分路由的配置
- let newRoute = route;
- if (obj) {
- newRoute = {
- ...route,
- // redirect
- meta: {
- ...route.meta,
- title: obj.title,
- icon: obj.icon,
- },
- hidden: obj.hidden,
- sort: obj.sort,
- };
- }
- return {
- flag: !!obj,
- route: newRoute,
- permission: obj,
- };
-}
-
-/**
- * Filter asynchronous routing tables by recursion
- * @param routes asyncRoutes
- * @param roles
- */
-export function filterAsyncRoutes(routes, USER_PERMISSIONS) {
- const res = [];
- routes.forEach(route => {
- const re = hasPermission(USER_PERMISSIONS, route);
- if (re.flag) {
- const tmp = re.route;
- if (tmp.children) {
- tmp.children = filterAsyncRoutes(tmp.children, USER_PERMISSIONS);
- }
- res.push(tmp);
- }
- });
-
- return res;
-}
-
-const state = {
- routes: [],
- addRoutes: [],
-};
-// 按sort从小到大排序
-function sortRoutes(routes) {
- routes.sort((a, b) => {
- return a.sort - b.sort;
- });
- routes.forEach(e => {
- if (e.children && e.children.length) {
- e.children = sortRoutes(e.children);
- }
- });
- return routes;
-}
-//
-function redirectFix(routes) {
- routes.forEach(e => {
- if (e.children && e.children.length) {
- e.children = redirectFix(e.children);
- const tabs = e.children.filter(r => r.permissionType == 'tab');
- if (tabs.length) {
- // 在父级的meta.tabs 自动构建一个数组,用于 BjRouteTabs 组件的支持
- e.meta['tabs'] = tabs.map(tab => {
- return {
- label: tab.meta && tab.meta.title,
- name: tab.name,
- };
- });
- const NEW_END_PATH = tabs[0].path; // 'sku/ordinary'
-
- // 当第1个tab无权访问时,自动redirect到下一个有权限的tab
- if (e.redirect) {
- const OLD_END_PATH = e.redirect.replace(e.path + '/', ''); // (e.redirect || '').split('/').slice(-1)[0]; //'ordinary'
- // const OLD_START_PATH_ARR = (e.redirect || '').split('/').slice(0, -1); //['audit', 'sku']
- if (NEW_END_PATH != OLD_END_PATH) {
- e.redirect = e.path + '/' + NEW_END_PATH; // [...OLD_START_PATH_ARR, NEW_END_PATH].join('/');
- console.log(' e.redirect', e.redirect);
- }
- }
- }
- }
- });
-
- return routes;
-}
-
-const mutations = {
- SET_ROUTES: (state, routes) => {
- state.addRoutes = routes;
- state.routes = constantRoutes.concat(routes);
- },
-};
-
-const actions = {
- generateRoutes({ commit }, USER_PERMISSIONS) {
- return new Promise(resolve => {
- // 按权限code过滤
- let accessedRoutes = filterAsyncRoutes(asyncRoutes, USER_PERMISSIONS);
- // permissionType: 'tab',处理父级redirect
- accessedRoutes = redirectFix(accessedRoutes);
- // 按sort从小到大排序
- accessedRoutes = sortRoutes(accessedRoutes);
- // 在路由最后,加入404
- accessedRoutes.push({ path: '*', redirect: '/404', hidden: true });
- commit('SET_ROUTES', accessedRoutes);
- resolve(accessedRoutes);
- });
- },
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/store/modules/settings.js b/front-end/src/store/modules/settings.js
deleted file mode 100644
index 5eee4c0..0000000
--- a/front-end/src/store/modules/settings.js
+++ /dev/null
@@ -1,34 +0,0 @@
-import variables from '@/styles/element-variables.scss';
-import defaultSettings from '@/settings';
-
-const { showSettings, tagsView, fixedHeader, sidebarLogo } = defaultSettings;
-
-const state = {
- theme: variables.theme,
- showSettings: showSettings,
- tagsView: tagsView,
- fixedHeader: fixedHeader,
- sidebarLogo: sidebarLogo,
-};
-
-const mutations = {
- CHANGE_SETTING: (state, { key, value }) => {
- // eslint-disable-next-line no-prototype-builtins
- if (state.hasOwnProperty(key)) {
- state[key] = value;
- }
- },
-};
-
-const actions = {
- changeSetting({ commit }, data) {
- commit('CHANGE_SETTING', data);
- },
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/store/modules/tagsView.js b/front-end/src/store/modules/tagsView.js
deleted file mode 100644
index 8ff0415..0000000
--- a/front-end/src/store/modules/tagsView.js
+++ /dev/null
@@ -1,254 +0,0 @@
-import router from '@/router';
-const state = {
- visitedViews: [],
- cachedViews: [],
- visitedViewsMax: 12,
-};
-const checkMulTag = view => {
- return view.meta.mulTag === true ? 'fullPath' : 'path';
-};
-const mutations = {
- REPLACE_VISITED_VIEW: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- const findViewIndex = state.visitedViews.findIndex(v => v[PATH_KEY] === view[PATH_KEY]);
- if (findViewIndex > -1) {
- state.visitedViews.splice(
- findViewIndex,
- 1,
- Object.assign({}, view, {
- title: view.otherTitle ? view.otherTitle : view.meta.title || 'no-name',
- }),
- );
- }
- },
- INIT_VISITED_VIEW: (state, view) => {
- state.visiteViews = view;
- },
- ADD_VISITED_VIEW: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- if (state.visitedViews.some(v => v[PATH_KEY] === view[PATH_KEY])) return;
- state.visitedViews.push(
- Object.assign({}, view, {
- title: view.meta.title || 'no-name',
- }),
- );
- if (state.visitedViews.length > state.visitedViewsMax) {
- state.visitedViews.splice(0, 1);
- }
- },
- ADD_CACHED_VIEW: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- if (state.cachedViews.some(v => v[PATH_KEY] === view[PATH_KEY])) return;
- if (view.meta.isCache === true) {
- state.cachedViews.push(
- Object.assign({}, view, {
- title: view.meta.title || 'no-name',
- }),
- );
- // console.log('添加缓存页', state.cachedViews, PATH_KEY + ':' + view[PATH_KEY]);
- }
- },
-
- DEL_VISITED_VIEW: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- const OLD_INDEX = state.visitedViews.findIndex(v => v[PATH_KEY] === view[PATH_KEY]);
- state.visitedViews.splice(OLD_INDEX, 1);
- },
- DEL_CACHED_VIEW: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- const index = state.cachedViews.findIndex(v => v[PATH_KEY] === view[PATH_KEY]);
- if (index > -1) {
- state.cachedViews.splice(index, 1);
- } else {
- console.warn('未缓存', state.cachedViews, PATH_KEY + ':' + view[PATH_KEY]);
- }
- },
-
- DEL_OTHERS_VISITED_VIEWS: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- state.visitedViews = state.visitedViews.filter(v => {
- return v.meta.affix || v[PATH_KEY] === view[PATH_KEY];
- });
- },
- DEL_OTHERS_CACHED_VIEWS: (state, view) => {
- const PATH_KEY = checkMulTag(view);
- const index = state.cachedViews.findIndex(v => v[PATH_KEY] === view[PATH_KEY]);
- if (index > -1) {
- state.cachedViews = state.cachedViews.slice(index, index + 1);
- } else {
- // if index = -1, there is no cached tags
- state.cachedViews = [];
- }
- },
-
- DEL_ALL_VISITED_VIEWS: state => {
- // keep affix tags
- const affixTags = state.visitedViews.filter(tag => tag.meta.affix);
- state.visitedViews = affixTags;
- },
- DEL_ALL_CACHED_VIEWS: state => {
- state.cachedViews = [];
- },
-
- UPDATE_VISITED_VIEW: (state, view) => {
- for (let v of state.visitedViews) {
- const PATH_KEY = checkMulTag(v);
- if (v[PATH_KEY] === view[PATH_KEY]) {
- v = Object.assign(v, view);
- break;
- }
- }
- },
- SWAP_VISITED_VIEW: (state, index) => {
- const temp = state.visitedViews.splice(-1)[0];
- state.visitedViews.splice(index, 0, temp);
- },
-};
-
-const actions = {
- replaceVisitedView({ commit }, view) {
- commit('REPLACE_VISITED_VIEW', view);
- },
- // 关闭当前页签:--------start----------
- closeCurrentView({ dispatch }, view) {
- const PATH_KEY = checkMulTag(view);
- const curView = state.visitedViews.find(v => {
- return v[PATH_KEY] === view[PATH_KEY];
- });
- dispatch('delView', curView).then(() => {
- if (curView[PATH_KEY] === view[PATH_KEY]) {
- dispatch('toLastView', curView);
- }
- });
- },
- // 关闭页签后,返回上一个页面
- toLastView(view) {
- const latestView = state.visitedViews.slice(-1)[0];
- if (latestView) {
- router.push(latestView.fullPath);
- } else {
- // now the default is to redirect to the home page if there is no tags-view,
- // you can adjust it according to your needs.
- if (view.name === 'Dashboard') {
- // to reload home page
- router.replace({ path: '/redirect' + view.fullPath });
- } else {
- router.push('/');
- }
- }
- },
- // 关闭当前页签:--------end----------
-
- initView({ commit }, view) {
- commit('INIT_VISITED_VIEW', view);
- },
- addView({ dispatch, state }, view) {
- dispatch('addVisitedView', view);
- dispatch('addCachedView', view);
- },
- addVisitedView({ commit }, view) {
- if (view.name === 'login') {
- return;
- }
- commit('ADD_VISITED_VIEW', view);
- },
- addCachedView({ commit }, view) {
- if (view.name === 'login') {
- return;
- }
- commit('ADD_CACHED_VIEW', view);
- },
-
- delView({ dispatch, state }, view) {
- return new Promise(resolve => {
- dispatch('delVisitedView', view);
-
- const VIEWS = state.visitedViews.filter(tag => {
- return tag.name == view.name;
- });
- if (VIEWS.length == 0) {
- dispatch('delCachedView', view);
- }
-
- resolve({
- visitedViews: [...state.visitedViews],
- cachedViews: [...state.cachedViews],
- });
- });
- },
- delVisitedView({ commit, state }, view) {
- return new Promise(resolve => {
- commit('DEL_VISITED_VIEW', view);
- resolve([...state.visitedViews]);
- });
- },
- delCachedView({ commit, state }, view) {
- return new Promise(resolve => {
- commit('DEL_CACHED_VIEW', view);
- resolve([...state.cachedViews]);
- });
- },
-
- delOthersViews({ dispatch, state }, view) {
- return new Promise(resolve => {
- dispatch('delOthersVisitedViews', view);
- dispatch('delOthersCachedViews', view);
- resolve({
- visitedViews: [...state.visitedViews],
- cachedViews: [...state.cachedViews],
- });
- });
- },
- delOthersVisitedViews({ commit, state }, view) {
- return new Promise(resolve => {
- commit('DEL_OTHERS_VISITED_VIEWS', view);
- resolve([...state.visitedViews]);
- });
- },
- delOthersCachedViews({ commit, state }, view) {
- return new Promise(resolve => {
- commit('DEL_OTHERS_CACHED_VIEWS', view);
- resolve([...state.cachedViews]);
- });
- },
-
- delAllViews({ dispatch, state }, view) {
- return new Promise(resolve => {
- dispatch('delAllVisitedViews', view);
- dispatch('delAllCachedViews', view);
- resolve({
- visitedViews: [...state.visitedViews],
- cachedViews: [...state.cachedViews],
- });
- });
- },
- delAllVisitedViews({ commit, state }) {
- return new Promise(resolve => {
- commit('DEL_ALL_VISITED_VIEWS');
- resolve([...state.visitedViews]);
- });
- },
- delAllCachedViews({ commit, state }) {
- return new Promise(resolve => {
- commit('DEL_ALL_CACHED_VIEWS');
- resolve([...state.cachedViews]);
- });
- },
-
- updateVisitedView({ commit }, view) {
- commit('UPDATE_VISITED_VIEW', view);
- },
- swapVisitedView({ commit, state }, index) {
- return new Promise(resolve => {
- commit('SWAP_VISITED_VIEW', index);
- resolve([...state.visitedViews]);
- });
- },
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/store/modules/user.js b/front-end/src/store/modules/user.js
deleted file mode 100644
index 52112a4..0000000
--- a/front-end/src/store/modules/user.js
+++ /dev/null
@@ -1,294 +0,0 @@
-import { userApi } from '@/api';
-import { getToken, setToken, removeToken } from '@/utils/auth';
-import router, { resetRouter } from '@/router';
-import { VUE_APP_BASE_API } from '@/utils/index';
-
-import permissionJson from '@/permissionOS.json';
-
-const getDefaultState = () => {
- return {
- token: getToken(),
- name: '',
- user: '',
- avatar: '',
- introduction: '',
- roles: [],
- permissions: [],
- permissionBtns: [],
- userInfo: null,
- isSuperAdmin: true,
- };
-};
-const state = getDefaultState();
-const mutations = {
- RESET_STATE: state => {
- Object.assign(state, getDefaultState());
- },
- SET_TOKEN: (state, token) => {
- state.token = token;
- },
- SET_INTRODUCTION: (state, introduction) => {
- state.introduction = introduction;
- },
- SET_NAME: (state, name) => {
- state.name = name;
- },
- SET_AVATAR: (state, avatar) => {
- state.avatar = avatar;
- },
- SET_USER: (state, user) => {
- state.user = user;
- },
- SET_USER_INFO: (state, userInfo) => {
- state.userInfo = userInfo;
- },
- SET_SUPER_ADMIN: (state, isSuperAdmin) => {
- state.isSuperAdmin = isSuperAdmin;
- },
- SET_PERMISSIONS: (state, permissions) => {
- state.permissions = permissions;
- const permissionBtnList = [];
- permissions.forEach(a1 => {
- (a1.children || []).forEach(a2 => {
- (a2.children || []).forEach(a3 => {
- (a3.children || []).forEach(a4 => {
- // if (a4.permissionType == 'btn') {
- permissionBtnList.push(a4.code.toLocaleLowerCase());
- // }
- });
- });
- });
- });
- state.permissionBtns = permissionBtnList;
- },
-};
-const actions = {
- setSuperAdmin({ commit }, isSuperAdmin) {
- commit('SET_SUPER_ADMIN', isSuperAdmin);
- },
- setUserInfo({ commit }, userInfo) {
- commit('SET_USER_INFO', userInfo);
- },
- setToken({ commit }, access_token) {
- commit('SET_TOKEN', access_token);
- },
- // user login
- login({ commit }, userInfo) {
- return new Promise((resolve, reject) => {
- commit('SET_TOKEN', 'admin-token');
- setToken('admin-token');
- resolve();
- // login({ username: username.trim(), password: password }).then(response => {
- // const { data } = response
- // commit('SET_TOKEN', data.token)
- // setToken(data.token)
- // resolve()
- // }).catch(error => {
- // reject(error)
- // })
- });
- },
- resetInfo({ commit }) {
- return new Promise((resolve, reject) => {
- removeToken();
- commit('SET_TOKEN', '');
- commit('SET_PERMISSIONS', []);
- resetRouter();
- commit('RESET_STATE');
- resolve();
- });
- },
- // get user info
- getInfo({ commit, state, dispatch }) {
- return new Promise((resolve, reject) => {
- if (process.env.VUE_APP_ACCESS_TOKEN) {
- const response = {
- id: '=3pLNuuotTVQSDRtvdZ5QKw===',
- loginName: 'admin',
- email: 'admin@hzero.com',
- organizationId: 0,
- realName: '超级管理员',
- phone: '18666666666',
- imageUrl:
- 'minio.baogicloud.com/test/0/1632481375656_16EK7K8I_src=http___img.zcool.cn_community_01dd6c56dc421232f875520ffb98e9.png@1280w_1l_2o_100sh.png&refer=http___img.zcool.jpg',
- language: 'zh_CN',
- languageName: '简体中文',
- timeZone: 'GMT+8',
- lastPasswordUpdatedAt: '2021-08-06 12:16:19',
- regionId: 0,
- phoneCheckFlag: 1,
- emailCheckFlag: 1,
- passwordResetFlag: 1,
- tenantName: 'HZERO平台',
- tenantNum: 'SKYER',
- dateFormat: 'YYYY-MM-DD',
- timeFormat: 'HH:mm:ss',
- dateTimeFormat: 'YYYY-MM-DD HH:mm:ss',
- changePasswordFlag: 0,
- title: 'HZERO技术平台',
- logo: '/hsop-image/doc_classify/0/8ff6ad27c153445d90606db2eca4c268/logo.png',
- menuLayout: 'side-all',
- menuLayoutTheme: 'color',
- roleMergeFlag: 0,
- tenantId: 0,
- currentRoleId: '=3pLNuuotTVQSDRtvdZ5QKw===',
- currentRoleCode: 'role/site/default/administrator',
- currentRoleName: '管理员1',
- currentRoleLevel: 'site',
- favicon:
- '/hsop-image/doc_classify/0/8ff6ad27c153445d90606db2eca4c268/logo.png',
- dataHierarchyFlag: 0,
- recentAccessTenantList: [],
- };
- if (response.failed === true) {
- console.error(response);
- reject(response);
- }
- const data = {
- // roles: response.recentAccessTenantList || [],
- name: response.realName,
- user: response.loginName,
- avatar: response.imageUrl,
- introduction: response.title,
- };
- commit('SET_USER_INFO', Object.assign(response, data));
- const { name, user, avatar, introduction } = data;
- commit('SET_USER', user);
- commit('SET_NAME', name);
- commit('SET_USER', user);
- commit('SET_AVATAR', avatar);
- commit('SET_INTRODUCTION', introduction);
- commit(
- 'SET_SUPER_ADMIN',
- response.currentRoleLevel === 'site' && response.loginName === 'admin',
- );
- commit('SET_PERMISSIONS', permissionJson);
- resolve(data);
- return;
- }
- userApi
- .getUserInfo()
- .then(async response => {
- if (response.failed === true) {
- console.error(response);
- reject(response);
- }
- const data = {
- // roles: response.recentAccessTenantList || [],
- name: response.realName,
- user: response.loginName,
- avatar: response.imageUrl,
- introduction: response.title,
- };
- commit('SET_USER_INFO', Object.assign(response, data));
- const { name, user, avatar, introduction } = data;
- commit('SET_USER', user);
- commit('SET_NAME', name);
- commit('SET_USER', user);
- commit('SET_AVATAR', avatar);
- commit('SET_INTRODUCTION', introduction);
- commit(
- 'SET_SUPER_ADMIN',
- response.currentRoleLevel === 'site' && response.loginName === 'admin',
- );
- await dispatch('getUserPermission');
- resolve(data);
- })
- .catch(error => {
- reject(error);
- });
- });
- },
- // 获取用户菜单权限
- getUserPermission({ commit, state, dispatch }) {
- return new Promise((resolve, reject) => {
- userApi
- .getUserMenuTree()
- .then(response => {
- commit('SET_PERMISSIONS', response);
- resolve(response);
- })
- .catch(error => {
- reject(error);
- });
- // permissionApi.get({ roleId: ROLE_ID }).then(res => {
- // const PERMISSION_ROUTE_NAMES = [];
- // const F = list => {
- // list.forEach(e => {
- // if (e.check === true && !PERMISSION_ROUTE_NAMES.includes(e.path)) {
- // PERMISSION_ROUTE_NAMES.push(e.path);
- // }
- // if (Array.isArray(e.levelPermissionVOS)) {
- // F(e.levelPermissionVOS);
- // }
- // });
- // };
- // F(Array.isArray(res) ? res : []);
- // console.log('PERMISSION_ROUTE_NAME_LIST', PERMISSION_ROUTE_NAMES);
- // commit('SET_PERMISSION_ROUTE_NAMES', PERMISSION_ROUTE_NAMES);
- // resolve(res);
- // });
- });
- },
- // user logout
- logout({ commit, state, dispatch }) {
- return new Promise((resolve, reject) => {
- const LOGOUT_URL = `${VUE_APP_BASE_API()}/oauth/logout?access_token=${state.token}`;
- window.location.replace(LOGOUT_URL);
- // commonApi
- // .logout({ access_token: state.token })
- // .then(() => {
- removeToken();
- commit('SET_TOKEN', '');
- commit('SET_PERMISSIONS', []);
- resetRouter();
- // reset visited views and cached views
- // to fixed https://github.com/PanJiaChen/vue-element-admin/issues/2485
- dispatch('tagsView/delAllViews', null, {
- root: true,
- });
- resolve();
- // })
- // .catch(error => {
- // removeToken();
- // commit('SET_TOKEN', '');
- // commit('SET_PERMISSIONS', []);
- // reject(error);
- // });
- });
- },
- // remove token
- resetToken({ commit }) {
- return new Promise(resolve => {
- commit('SET_TOKEN', '');
- commit('SET_PERMISSIONS', []);
- removeToken();
- resolve();
- });
- },
- // dynamically modify permissions
- async changeRoles({ commit, dispatch }, role) {
- const token = role + '-token';
- commit('SET_TOKEN', token);
- setToken(token);
- const { roles } = await dispatch('user/getInfo');
- console.log('changeRoles user/getInfo roles=', roles);
- resetRouter();
- // generate accessible routes map based on roles
- const accessRoutes = await dispatch('permission/generateRoutes', roles, {
- root: true,
- });
- // dynamically add accessible routes
- router.addRoutes(accessRoutes);
- // reset visited views and cached views
- dispatch('tagsView/delAllViews', null, {
- root: true,
- });
- },
-};
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/store/modules/values.js b/front-end/src/store/modules/values.js
deleted file mode 100644
index e3fbfc8..0000000
--- a/front-end/src/store/modules/values.js
+++ /dev/null
@@ -1,334 +0,0 @@
-/**
- * @author zhengxinquan
- * @description 从api或缓存中获取值集
- * @调用 await this.$store.dispatch('values/getValueList', 'SCHL.CHANNEL_TYPE');
- *
- */
-import { commonApi } from '@/api';
-import { LOV_CODE } from '@/utils/constants';
-
-const getDefaultState = () => {
- const TEMP = {};
- LOV_CODE.forEach(item => {
- TEMP[item.value.replace(/\./g, '_')] = [];
- });
- return Object.assign(TEMP, {
- // 非值集——API列表
- BJ_EXECUTOR_ID: [], // 执行器列表 BJ_EXECUTOR_ID
- BJ_EXECUTABLE_ID: [], // 可执行定义列表 BJ_TENANTS
- BJ_TENANTS: [], // 租户列表 BJ_EXECUTABLE_ID
- BJ_LANGUAGE: [], // 语言 BJ_LANGUAGE
- BJ_INSTALL_SERVICES: [], // 安装服务 BJ_INSTALL_SERVICES
- BJ_TAGS: [], // 标签 BJ_TAGS
- BJ_AFTER_REFUND_ONLY_REASONS: [], // 售后原因 仅退款 BJ_AFTER_REFUND_ONLY_REASONS
- BJ_AFTER_REFUND_GOODS_REASONS: [], // 售后原因 退货退款 BJ_AFTER_REFUND_GOODS_REASONS
- });
-};
-const state = getDefaultState();
-
-const getMutations = () => {
- const obj = {};
- Object.keys(state).forEach(key => {
- const SET_KEY = 'SET_' + key;
- obj[SET_KEY] = (state, v) => {
- state[key] = v;
- };
- });
- return obj;
-};
-
-const mutations = getMutations();
-
-const actions = {
- getValueList({ commit, state }, POST_KEY) {
- let isCache = true;
- if (typeof POST_KEY == 'object') {
- // 当 isCache = false 时,刷新值集的缓存
- POST_KEY = POST_KEY.POST_KEY;
- isCache = POST_KEY.isCache;
- }
- const KEY = POST_KEY.replace(/\./g, '_');
- const SET_KEY = 'SET_' + KEY;
- if (state[KEY].length && isCache) {
- return state[KEY];
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getLovsValue({
- lovCode: POST_KEY,
- })
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- label: Object.prototype.hasOwnProperty.call(e, 'label') ? e.label : e.meaning,
- ...e,
- };
- });
- commit(SET_KEY, data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getLanguagesList({ commit, state }, isCache) {
- if (state.BJ_LANGUAGE.length && !isCache) {
- return state.BJ_LANGUAGE;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getLanguages({})
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.code,
- label: e.name,
- ...e,
- };
- });
- commit('SET_BJ_LANGUAGE', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getExecutorList({ commit, state }, isCache) {
- if (state.BJ_EXECUTOR_ID.length && !isCache) {
- return state.BJ_EXECUTOR_ID;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getExecutorList({ status: 'ONLINE' })
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.executorId,
- label: e.executorName,
- ...e,
- };
- });
- commit('SET_BJ_EXECUTOR_ID', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getExecutableList({ commit, state }, isCache) {
- if (state.BJ_EXECUTABLE_ID.length && !isCache) {
- return state.BJ_EXECUTABLE_ID;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getExecutableList({})
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.executorId,
- label: e.executorName,
- ...e,
- };
- });
- commit('SET_BJ_EXECUTABLE_ID', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getTenants({ commit, state }, isCache) {
- if (state.BJ_TENANTS.length && !isCache) {
- return state.BJ_TENANTS;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getTenants({})
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.tenantId,
- label: e.tenantName,
- ...e,
- };
- });
- commit('SET_BJ_TENANTS', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getInstallServices({ commit, state }, isCache) {
- if (state.BJ_INSTALL_SERVICES.length && !isCache) {
- return state.BJ_INSTALL_SERVICES;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getInstallServices({})
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.installServiceCode,
- label: e.name,
- ...e,
- };
- });
- commit('SET_BJ_INSTALL_SERVICES', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getTags({ commit, state }, isCache) {
- if (state.BJ_TAGS.length && !isCache) {
- return state.BJ_TAGS;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getTags()
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.labelCode,
- label: e.textContent,
- ...e,
- };
- });
- commit('SET_BJ_TAGS', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getAfterRefundOnlyReasons({ commit, state }, isCache) {
- if (state.BJ_AFTER_REFUND_ONLY_REASONS.length && !isCache) {
- return state.BJ_AFTER_REFUND_ONLY_REASONS;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getAfterSalesReasons({ type: 0 })
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.reasonCode,
- label: e.reasonDescribe,
- ...e,
- };
- });
- commit('SET_BJ_AFTER_REFUND_ONLY_REASONS', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
- getAfterRefundGoodsReasons({ commit, state }, isCache) {
- if (state.BJ_AFTER_REFUND_GOODS_REASONS.length && !isCache) {
- return state.BJ_AFTER_REFUND_GOODS_REASONS;
- }
- return new Promise((resolve, reject) => {
- commonApi
- .getAfterSalesReasons({ type: 1 })
- .then(res => {
- let list = [];
- if (Array.isArray(res)) {
- list = res;
- } else {
- list = res.content || [];
- }
- const data = list.map(e => {
- return {
- value: e.reasonCode,
- label: e.reasonDescribe,
- ...e,
- };
- });
- commit('SET_BJ_AFTER_REFUND_GOODS_REASONS', data);
- resolve(data);
- })
- .catch(err => {
- console.error(err);
- reject(err);
- });
- });
- },
-};
-
-export default {
- namespaced: true,
- state,
- mutations,
- actions,
-};
diff --git a/front-end/src/styles/btn.scss b/front-end/src/styles/btn.scss
deleted file mode 100644
index 7c10f93..0000000
--- a/front-end/src/styles/btn.scss
+++ /dev/null
@@ -1,103 +0,0 @@
-@import './variables.scss';
-
-@mixin colorBtn($color) {
- background: $color;
-
- &:hover {
- color: $color;
-
- &:before,
- &:after {
- background: $color;
- }
- }
-}
-
-.blue-btn {
- @include colorBtn($blue);
-}
-
-.light-blue-btn {
- @include colorBtn($light-blue);
-}
-
-.red-btn {
- @include colorBtn($red);
-}
-
-.pink-btn {
- @include colorBtn($pink);
-}
-
-.green-btn {
- @include colorBtn($green);
-}
-
-.tiffany-btn {
- @include colorBtn($tiffany);
-}
-
-.yellow-btn {
- @include colorBtn($yellow);
-}
-
-.btn-default-width {
- width: 160px;
-}
-
-.pan-btn {
- font-size: 14px;
- color: #fff;
- padding: 14px 36px;
- border-radius: 8px;
- border: none;
- outline: none;
- transition: 600ms ease all;
- position: relative;
- display: inline-block;
-
- &:hover {
- background: #fff;
-
- &:before,
- &:after {
- width: 100%;
- transition: 600ms ease all;
- }
- }
-
- &:before,
- &:after {
- content: '';
- position: absolute;
- top: 0;
- right: 0;
- height: 2px;
- width: 0;
- transition: 400ms ease all;
- }
-
- &::after {
- right: inherit;
- top: inherit;
- left: 0;
- bottom: 0;
- }
-}
-
-.custom-button {
- display: inline-block;
- line-height: 1;
- white-space: nowrap;
- cursor: pointer;
- background: #fff;
- color: #fff;
- -webkit-appearance: none;
- text-align: center;
- box-sizing: border-box;
- outline: 0;
- margin: 0;
- padding: 10px 15px;
- font-size: 14px;
- border-radius: 4px;
-}
diff --git a/front-end/src/styles/element-ui.scss b/front-end/src/styles/element-ui.scss
deleted file mode 100644
index 6055614..0000000
--- a/front-end/src/styles/element-ui.scss
+++ /dev/null
@@ -1,108 +0,0 @@
-// cover some element-ui styles
-
-.el-breadcrumb__inner,
-.el-breadcrumb__inner a {
- font-weight: 400 !important;
-}
-
-.el-upload {
- input[type="file"] {
- display: none !important;
- }
-}
-
-.el-upload__input {
- display: none;
-}
-
-.cell {
- .el-tag {
- margin-right: 0px;
- }
-}
-
-.small-padding {
- .cell {
- padding-left: 5px;
- padding-right: 5px;
- }
-}
-
-.fixed-width {
- .el-button--mini {
- padding: 7px 10px;
- min-width: 60px;
- }
-}
-
-.status-col {
- .cell {
- padding: 0 10px;
- text-align: center;
-
- .el-tag {
- margin-right: 0px;
- }
- }
-}
-
-// to fixed https://github.com/ElemeFE/element/issues/2461
-.el-dialog {
- transform: none;
- left: 0;
- position: relative;
- margin: 0 auto;
-}
-
-// refine element ui upload
-.upload-container {
- .el-upload {
- width: 100%;
-
- .el-upload-dragger {
- width: 100%;
- height: 200px;
- }
- }
-}
-
-// dropdown
-.el-dropdown-menu {
- a {
- display: block
- }
-}
-
-// fix date-picker ui bug in filter-item
-.el-range-editor.el-input__inner {
- display: inline-flex !important;
-}
-
-// to fix el-date-picker css style
-.el-range-separator {
- box-sizing: content-box;
-}
-
-.el-link {
- font-size: 12px;
-}
-.el-aside {
- background: none;
- padding: 0 5px;
- margin-left: -20px;
-}
-.el-main {
- margin-left: 10px;
- padding: 0;
-}
-.el-dropdown-link {
- cursor: pointer;
- color: #409EFF;
-}
-.el-icon-arrow-down {
- font-size: 12px;
-}
-.el-dropdown {
- font-size: 12px;
- margin: 0 5px;
-}
diff --git a/front-end/src/styles/element-variables.scss b/front-end/src/styles/element-variables.scss
deleted file mode 100644
index 29e6ea9..0000000
--- a/front-end/src/styles/element-variables.scss
+++ /dev/null
@@ -1,36 +0,0 @@
-/**
-* I think element-ui's default theme color is too light for long-term use.
-* So I modified the default color and you can modify it to your liking.
-**/
-
-/* theme color */
-$--color-primary: $main-dark; //#1890ff;
-$--color-success: $main-normal; // $main-normal; // #13ce66;
-$--color-warning: #ffba00;
-$--color-danger: #f56c6c; //#ff4949;
-// $--color-info: #1E1E1E;
-
-$--button-font-weight: 400;
-
-// $--color-text-regular: #1f2d3d;
-
-$--border-color-light: #dfe4ed;
-$--border-color-lighter: #e6ebf5;
-
-$--table-border: 1px solid #dfe6ec;
-
-/* icon font path, required */
-$--font-path: '~element-ui/lib/theme-chalk/fonts';
-
-@import '~element-ui/packages/theme-chalk/src/index';
-
-// .el-tag.el-tag--success {
-// background-color: #f0f9eb;
-// border-color: #e1f3d8;
-// color: #67c23a;
-// }
-// the :export directive is the magic sauce for webpack
-// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
-:export {
- theme: $--color-primary;
-}
diff --git a/front-end/src/styles/index.scss b/front-end/src/styles/index.scss
deleted file mode 100644
index e79a08a..0000000
--- a/front-end/src/styles/index.scss
+++ /dev/null
@@ -1,728 +0,0 @@
-@import './variables.scss';
-@import './mixin.scss';
-@import './transition.scss';
-@import './element-ui.scss';
-@import './sidebar.scss';
-@import './btn.scss';
-@import './shop.scss';
-
-//[vxe-table 主题](https://vxetable.cn/v3/#/table/start/theme)
-@import 'vxe-table/styles/variable.scss';
-
-// 修改样式变量
-// $vxe-font-size: 30px;
-// $vxe-font-color: red;
-$vxe-primary-color: $main-dark;
-// $vxe-table-font-color: $vxe-font-color;
-// $vxe-table-border-color: red;
-$vxe-table-border-radius: 20px;
-// ...
-
-@import 'vxe-table/styles/icon.scss';
-@import 'vxe-table/styles/table.scss';
-@import 'vxe-table/styles/column.scss';
-@import 'vxe-table/styles/header.scss';
-@import 'vxe-table/styles/footer.scss';
-@import 'vxe-table/styles/filter.scss';
-
-body {
- height: 100%;
- -moz-osx-font-smoothing: grayscale;
- -webkit-font-smoothing: antialiased;
- text-rendering: optimizeLegibility;
- font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial,
- sans-serif;
-}
-
-label {
- font-weight: 700;
-}
-
-html {
- height: 100%;
- box-sizing: border-box;
-}
-
-#app {
- min-height: 100%;
-}
-
-*,
-*:before,
-*:after {
- box-sizing: inherit;
-}
-
-.no-padding,
-.padding-no {
- padding: 0px !important;
-}
-.no-margin,
-.margin-no {
- margin: 0px !important;
-}
-.height100 {
- height: 100% !important;
-}
-
-.padding-content {
- padding: 4px 0;
-}
-
-a:focus,
-a:active {
- outline: none;
-}
-
-a,
-a:focus,
-a:hover {
- cursor: pointer;
- color: inherit;
- text-decoration: none;
-}
-
-div:focus {
- outline: none;
-}
-
-.fr {
- float: right;
-}
-
-.fl {
- float: left;
-}
-
-.pr-5 {
- padding-right: 5px;
-}
-
-.pl-5 {
- padding-left: 5px;
-}
-
-.block {
- display: block;
-}
-
-.el-icon-document-copy,
-.el-icon-edit {
- cursor: pointer;
- color: $main-dark;
- margin-left: 10px;
-}
-.F68710 {
- color: #f68710;
-}
-.link {
- color: $sub-dark;
- cursor: pointer;
-}
-.pointer {
- cursor: pointer;
-}
-
-.inlineBlock {
- display: block;
-}
-
-.clearfix {
- &:after {
- visibility: hidden;
- display: block;
- font-size: 0;
- content: ' ';
- clear: both;
- height: 0;
- }
-}
-
-aside {
- background: #eef1f6;
- padding: 8px 24px;
- margin-bottom: 20px;
- border-radius: 2px;
- display: block;
- line-height: 32px;
- font-size: 16px;
- font-family: -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Oxygen, Ubuntu, Cantarell,
- 'Fira Sans', 'Droid Sans', 'Helvetica Neue', sans-serif;
- color: #2c3e50;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
-
- a {
- color: #337ab7;
- cursor: pointer;
-
- &:hover {
- color: rgb(32, 160, 255);
- }
- }
-}
-.avatar {
- width: 120px !important;
- height: 120px !important;
- display: block;
-}
-// 文本禁止默认选中
-.no-user-select {
- -moz-user-select: none; /*火狐*/
- -webkit-user-select: none; /*webkit浏览器*/
- -ms-user-select: none; /*IE10*/
- -khtml-user-select: none; /*早期浏览器*/
- user-select: none;
-}
-//main-container全局样式
-.app-container {
- padding: 16px 16px;
- padding-bottom: 10px;
-}
-
-.components-container {
- margin: 30px 50px;
- position: relative;
-}
-
-.pagination-container {
- margin-top: 30px;
-}
-
-.text-center {
- text-align: center;
-}
-.text-left {
- text-align: left;
-}
-.text-right {
- text-align: right;
-}
-.sub-navbar {
- height: 50px;
- line-height: 50px;
- position: relative;
- width: 100%;
- text-align: right;
- padding-right: 20px;
- transition: 600ms ease position;
- background: linear-gradient(
- 90deg,
- rgba(32, 182, 249, 1) 0%,
- rgba(32, 182, 249, 1) 0%,
- rgba(33, 120, 241, 1) 100%,
- rgba(33, 120, 241, 1) 100%
- );
-
- .subtitle {
- font-size: 20px;
- color: #fff;
- }
-
- &.draft {
- background: #d0d0d0;
- }
-
- &.deleted {
- background: #d0d0d0;
- }
-}
-
-.link-type,
-.link-type:focus {
- color: $sub-dark;
- cursor: pointer;
-
- &:hover {
- color: $sub-dark;
- }
-}
-
-.filter-container {
- padding-bottom: 10px;
-
- .filter-item {
- display: inline-block;
- vertical-align: middle;
- margin-bottom: 10px;
- }
-}
-
-//refine vue-multiselect plugin
-.multiselect {
- line-height: 16px;
-}
-
-.multiselect--active {
- z-index: 1000 !important;
-}
-
-//
-.ellipsis {
- overflow: hidden;
- white-space: nowrap;
- text-overflow: ellipsis;
-}
-//
-.multi-ellipsis--l2 {
- display: -webkit-box;
- overflow: hidden;
- text-overflow: ellipsis;
- -webkit-line-clamp: 2;
- -webkit-box-orient: vertical;
-}
-
-.footer {
- display: flex;
- flex-direction: row;
- justify-content: center;
- align-items: center;
- margin: 16px 0;
-}
-
-.full-width,
-.width-full {
- width: 100% !important;
-}
-.el-input-group__append-width-100 .el-input-group__append .el-input {
- width: 100px;
-}
-.tips {
- font-size: 10px;
- color: #c0c4cc;
-}
-.gray {
- color: #a2a7b1// #c0c4cc;
-}
-
-.el-radio {
- margin-right: 10px;
-}
-.flag-one {
- color: #fb0101;
-}
-.flag-two {
- color: #fcf703;
-}
-.flag-three {
- color: #0dfc34;
-}
-.flag-four {
- color: #0150f9;
-}
-.flag-five {
- color: #d706f1;
-}
-
-.flex {
- width: 100%;
- display: flex;
- flex-wrap: wrap;
- flex-direction: row;
-}
-.flex-column {
- width: 100%;
- display: flex;
- flex-wrap: wrap;
- flex-direction: column;
-}
-.flex-center {
- width: 100%;
- display: flex;
- justify-content: center;
- align-items: center;
-}
-.justify-between {
- justify-content: space-between;
-}
-.justify-center {
- justify-content: center;
-}
-.justify-around {
- justify-content: space-around;
-}
-
-.justify-end {
- justify-content: flex-end;
-}
-
-.justify-start {
- justify-content: flex-start !important;
-}
-
-.align-items {
- align-items: center;
-}
-.red {
- color: red;
-}
-
-.small-img {
- width: 200px !important;
-}
-
-/** 详情页的公共样式 bj-row ****/
-//通用
-.el-icon-circle-check {
- color: green;
-}
-.el-icon-warning-outline {
- color: red;
-}
-.border-no,
-.child-border-no > *,
-.all-border-no,
-.all-border-no > * {
- border: none !important;
-}
-.border-top {
- border-left: none !important;
- border-right: none !important;
- border-bottom: none !important;
- border-top: 1px solid rgba(215, 215, 215, 1);
-}
-.border-bottom {
- border-left: none !important;
- border-right: none !important;
- border-top: none !important;
- border-bottom: 1px solid rgba(215, 215, 215, 1);
-}
-.auto-width {
- width: auto !important;
-}
-// label 后面加 冒号
-.bj-label-colon div:not(.bj-page) .el-form-item__label::after {
- content: '\ff1a';
-}
-// // content 前面加冒号
-// .el-form-item-content-colon .el-form-item__content::before {
-// content: '\ff1a';
-// display: inline;
-// }
-// // content 前面加冒号时,label分散对齐
-// .el-form-item-content-colon .el-form-item__label {
-// padding-right: 0;
-// text-align: justify;
-// text-align-last: justify; //https://caniuse.com/?search=text-align-last
-// }
-// 重设 el-input 的 disabled 样式
-.bj-el-input-disabled .el-input.is-disabled .el-input__inner {
- background-color: #f7f8f9;
- color: #97a8be;
-}
-// 块状布局,统一 bj-form-item-label 的宽度
-div:not(.bj-page) {
- @for $i from 2 through 15 {
- .bj-col.label-width-#{$i} .bj-form-item-label,
- .label-width-#{$i} .bj-form-item-label {
- width: ($i + 1) * 1em; // 在bj-form-item-label::after加冒号,需要占位1em
- }
- }
- .bj-row {
- border: 1px solid rgba(215, 215, 215, 1);
- padding: 8px 16px;
- display: flex;
- flex-wrap: wrap;
-
- .bj-col {
- border-left: 1px solid rgba(215, 215, 215, 0.75);
- padding: 16px;
- width: 33.33%;
- }
- .bj-col:first-of-type {
- border-left: none;
- }
- @for $i from 1 through 24 {
- // 按 bj-col-* 布局宽度
- .bj-col-#{$i} {
- width: percentage($i/24) !important;
- }
- // bj-col 设为100%,按 bj-item-col-* 下的 el/bj-form-item 布局宽度
- .bj-col.bj-item-col-#{$i} {
- width: 100%;
- padding: 0;
- margin-top: 16px;
- }
- .bj-item-col-#{$i} {
- .bj-form-item,
- .el-form-item {
- width: percentage($i/24);
- float: left;
- padding: 0 16px;
- margin-right: 0;
- }
- }
- // title 和 item的样式
- .bj-col,
- .bj-col-#{$i} {
- .bj-form-title {
- font-size: 14px;
- font-weight: bold;
-
- margin-bottom: 16px;
- }
- .bj-form-title.empty::after {
- content: '';
- display: inline-block;
- }
- .right {
- float: right;
- font-weight: normal;
- }
- .bj-form-item:last-child {
- margin-bottom: 0;
- }
- .bj-form-item {
- display: flex;
- font-size: 12px;
- margin-bottom: 16px;
- button {
- margin-bottom: 10px;
- }
- .bj-form-item-label {
- flex: 0 0 auto;
- color: #000;
- text-align: right;
- // text-align: justify;
- // text-align-last: justify; //https://caniuse.com/?search=text-align-last
- // height: 1em;
- // overflow: hidden;
- }
- // .bj-form-item-label::after {
- // content: '';
- // display: inline-block;
- // width: 100%;
- // }
- // .bj-form-item-value::before {
- // content: '\ff1a';
- // }
- .bj-form-item-label::after {
- content: '\ff1a';
- }
- .bj-form-item-value {
- flex: 0 1 auto;
- color: #6c6c6c; //#7f7f7f;
- }
- .bj-form-item-right {
- flex: 0 0 auto;
- }
- }
- .bj-form-tips {
- font-size: 14px;
- font-weight: normal;
- margin: 6px 0;
- color: #7f7f7f;
- }
- }
- }
- }
-}
-/** 高度28px ,解决列表页查询条件高度不一致问题 */
-.el-form-item-28 {
- height: 28px;
-}
-
-/** 人工标签 的 颜色 START */
-// BjTag的style里
-/** 人工标签 的 颜色 END */
-.hand-tag {
- padding: 4px 8px;
- color: #fff !important;
-}
-
-// 长文本,不按单词断行。
-.el-message-box__message {
- word-break: break-all;
-}
-
-.el-form-item.el-form-item--mini {
- min-height: 29px;
-}
-
-.require::before {
- content: '*';
- color: red;
- padding: auto 2px;
-}
-/******** TreeSelect Start ****************/
-// class="bj-tree-select"
-
-// .vue-treeselect.bj-tree-select,
-// .bj-tree-select .vue-treeselect__control {
-// height: 36px;
-// width: 100%;
-// }
-
-.el-form-item--mini {
- div.vue-treeselect.bj-tree-select {
- width: 100%;
- .vue-treeselect__input {
- padding: 0;
- }
- .vue-treeselect__control {
- height: 26px;
- line-height: 26px;
- }
-
- .vue-treeselect__input,
- .vue-treeselect__input-container,
- .vue-treeselect__placeholder,
- .vue-treeselect__single-value,
- .vue-treeselect__control-arrow-container {
- height: 26px;
- line-height: 26px;
- }
- .vue-treeselect__multi-value,
- .vue-treeselect__multi-value-item-container,
- .vue-treeselect__multi-value-item,
- .vue-treeselect__limit-tip-text,
- .vue-treeselect__limit-tip,
- .vue-treeselect-helper-zoom-effect-off {
- padding: 0;
- border: none;
- margin: 0;
- font-size: 12px;
- padding-left: 10px;
- }
- }
-}
-
-.vue-treeselect.bj-tree-select.mini {
- width: 100%;
- .vue-treeselect__input {
- padding: 0;
- }
- .vue-treeselect__control,
- .vue-treeselect__input,
- .vue-treeselect__input-container,
- .vue-treeselect__placeholder,
- .vue-treeselect__single-value,
- .vue-treeselect__control-arrow-container {
- height: 28px;
- line-height: 28px;
- }
- .vue-treeselect__multi-value,
- .vue-treeselect__multi-value-item-container,
- .vue-treeselect__multi-value-item,
- .vue-treeselect__limit-tip-text,
- .vue-treeselect__limit-tip,
- .vue-treeselect-helper-zoom-effect-off {
- padding: 0;
- // border: none;
- margin: 0;
- }
-}
-/******** TreeSelect End ****************/
-.xs.el-button {
- font-size: 12px;
- padding: 3px 10px;
- margin-left: 16px;
-}
-
-.input-default-width {
- width: 200px;
-}
-
-/******** el-tabs ****************/
-.el-tabs--card > .el-tabs__header .el-tabs__nav {
- border: none;
- margin-bottom: -1px;
-}
-.el-tabs--card > .el-tabs__header .el-tabs__item:first-child {
- border-left: 1px solid #dfe4ed;
-}
-.el-tabs--card > .el-tabs__header .el-tabs__item {
- border-right: 1px solid #dfe4ed;
- border-bottom: 1px solid #dfe4ed;
- border-top: 1px solid #dfe4ed;
- border-left: none;
-}
-.el-tabs--card > .el-tabs__header .el-tabs__item.is-active {
- border-top: 2px $main-dark solid;
- border-bottom: 1px solid #fff;
-}
-/*** 表格 text 按钮 ****/
-.el-button--text.edit-btn {
- color: $sub-dark;
-}
-
-.el-button--text.delete-btn {
- color: $main-dark;
-}
-
-.el-button--text {
- color: $sub-dark;
-}
-
-.el-button--text.is-disabled {
- color: $minor-lighter;
-}
-
-/*** 操作栏 btn 按钮 ****/
-.top-left-btn .el-button {
- color: $main-normal;
- background: $background-light;
- border-color: #ffc79f;
-}
-.top-left-btn .el-button.is-disabled {
- color: $main-light;
- background-color: #fff1e7;
- border-color: #ffe3cf;
-}
-.top-left-btn .el-button.main-btn {
- color: $background-light;
- background-color: $main-dark;
- border-color: $main-dark;
-}
-
-/* 浏览器会把letter-spacing加到文字的后面,导致多出来一个宽度,可以用负margin消除这个宽度 */
-.letter-spacing-8 span {
- letter-spacing: 8px;
-}
-.letter-spacing-8 span:after {
- content: '';
- margin-left: -8px;
-}
-.letter-spacing-16 span {
- letter-spacing: 16px;
-}
-.letter-spacing-16 span:after {
- content: '';
- margin-left: -16px;
-}
-
-// 用于table的cellClassName回调,按条件隐藏展开图标。 例:src\views\center-business\after\internal\refund\add.vue
-.bj-cell-expand-hide > div {
- display: none;
-}
-// vue.draggable chosenClass 属性设置选中元素的样式
-.chosen {
- background: $ghost !important;
-}
-// vue.draggable ghostClass 目标位置占位符的样式及需要停靠位置的样式。
-.ghost {
- background: $ghost !important;
-}
-.status-icon-err {
- font-size: 52px;
- color: red;
- background-color: white;
- border-radius: 50%;
-}
-.status-icon-success {
- font-size: 52px;
- color: green;
- background-color: white;
- border-radius: 50%;
-}
-
-// .vxe-cell {
-// font-size: 12px;
-// }
-.table-other-td-item {
- // padding: 2px 2px;
-}
-.table-other-td-item::after {
- content: ';';
- display: inline-block;
-}
diff --git a/front-end/src/styles/mixin.scss b/front-end/src/styles/mixin.scss
deleted file mode 100644
index 06fa061..0000000
--- a/front-end/src/styles/mixin.scss
+++ /dev/null
@@ -1,66 +0,0 @@
-@mixin clearfix {
- &:after {
- content: "";
- display: table;
- clear: both;
- }
-}
-
-@mixin scrollBar {
- &::-webkit-scrollbar-track-piece {
- background: #d3dce6;
- }
-
- &::-webkit-scrollbar {
- width: 6px;
- }
-
- &::-webkit-scrollbar-thumb {
- background: #99a9bf;
- border-radius: 20px;
- }
-}
-
-@mixin relative {
- position: relative;
- width: 100%;
- height: 100%;
-}
-
-@mixin pct($pct) {
- width: #{$pct};
- position: relative;
- margin: 0 auto;
-}
-
-@mixin triangle($width, $height, $color, $direction) {
- $width: $width/2;
- $color-border-style: $height solid $color;
- $transparent-border-style: $width solid transparent;
- height: 0;
- width: 0;
-
- @if $direction==up {
- border-bottom: $color-border-style;
- border-left: $transparent-border-style;
- border-right: $transparent-border-style;
- }
-
- @else if $direction==right {
- border-left: $color-border-style;
- border-top: $transparent-border-style;
- border-bottom: $transparent-border-style;
- }
-
- @else if $direction==down {
- border-top: $color-border-style;
- border-left: $transparent-border-style;
- border-right: $transparent-border-style;
- }
-
- @else if $direction==left {
- border-right: $color-border-style;
- border-top: $transparent-border-style;
- border-bottom: $transparent-border-style;
- }
-}
diff --git a/front-end/src/styles/ruoyi.scss b/front-end/src/styles/ruoyi.scss
deleted file mode 100644
index c7f1de4..0000000
--- a/front-end/src/styles/ruoyi.scss
+++ /dev/null
@@ -1,274 +0,0 @@
-/**
- * 通用css样式布局处理
- * 2021 飞骥
- */
-
-/** 基础通用 **/
-.pt5 {
- padding-top: 5px;
-}
-.pr5 {
- padding-right: 5px;
-}
-.pb5 {
- padding-bottom: 5px;
-}
-.mt5 {
- margin-top: 5px;
-}
-.mr5 {
- margin-right: 5px;
-}
-.mb5 {
- margin-bottom: 5px;
-}
-.mb8 {
- margin-bottom: 8px;
-}
-.ml5 {
- margin-left: 5px;
-}
-.ml10 {
- margin-left: 10px;
-}
-.ml15 {
- margin-left: 15px;
-}
-.ml20 {
- margin-left: 20px !important;
-}
-.ml25 {
- margin-left: 25px !important;
-}
-.mt10 {
- margin-top: 10px;
-}
-.mr10 {
- margin-right: 10px;
-}
-.mb10 {
- margin-bottom: 10px;
-}
-.ml0 {
- margin-left: 10px;
-}
-.mt16 {
- margin-top: 16px;
-}
-.mr16 {
- margin-right: 16px;
-}
-.mb16 {
- margin-bottom: 16px;
-}
-.ml6 {
- margin-left: 16px;
-}
-.mt20 {
- margin-top: 20px;
-}
-.mr20 {
- margin-right: 20px;
-}
-.mb20 {
- margin-bottom: 20px;
-}
-.m20 {
- margin-left: 20px;
-}
-.font12 {
- font-size: 12px;
-}
-.font14 {
- font-size: 14px;
-}
-.font16 {
- font-size: 16px;
-}
-
-.el-dialog:not(.is-fullscreen) {
- margin-top: 6vh !important;
-}
-
-.el-table {
- .el-table__header-wrapper,
- .el-table__fixed-header-wrapper {
- th {
- word-break: break-word;
- background-color: #f8f8f9;
- color: #515a6e;
- height: 40px;
- font-size: 13px;
- }
- }
- .el-table__body-wrapper {
- .el-button [class*='el-icon-'] + span {
- margin-left: 1px;
- }
- }
-}
-
-/** 表单布局 **/
-.form-header {
- font-size: 15px;
- color: #6379bb;
- border-bottom: 1px solid #ddd;
- margin: 8px 10px 25px 10px;
- padding-bottom: 5px;
-}
-
-/** 表格布局 **/
-.pagination-container {
- position: relative;
- height: 25px;
- margin-bottom: 10px;
- margin-top: 15px;
- padding: 10px 20px !important;
-}
-
-/* tree border */
-.tree-border {
- margin-top: 5px;
- border: 1px solid #e5e6e7;
- background: #ffffff none;
- border-radius: 4px;
-}
-
-.pagination-container .el-pagination {
- right: 0;
- position: absolute;
-}
-
-.el-table .fixed-width .el-button--mini {
- color: #409eff;
- padding-left: 0;
- padding-right: 0;
- width: inherit;
-}
-
-.el-tree-node__content > .el-checkbox {
- margin-right: 8px;
-}
-
-.list-group-striped > .list-group-item {
- border-left: 0;
- border-right: 0;
- border-radius: 0;
- padding-left: 0;
- padding-right: 0;
-}
-
-.list-group {
- padding-left: 0px;
- list-style: none;
-}
-
-.list-group-item {
- border-bottom: 1px solid #e7eaec;
- border-top: 1px solid #e7eaec;
- margin-bottom: -1px;
- padding: 11px 0px;
- font-size: 13px;
-}
-
-.pull-right {
- float: right !important;
-}
-
-.el-card__header {
- padding: 14px 15px 7px;
- min-height: 40px;
-}
-
-.el-card__body {
- padding: 15px 20px 20px 20px;
-}
-
-.card-box {
- padding-right: 15px;
- padding-left: 15px;
- margin-bottom: 10px;
-}
-
-/* button color */
-.el-button--cyan.is-active,
-.el-button--cyan:active {
- background: $main-normal !important;
- border-color: $main-normal !important;
- color: #ffffff !important;
-}
-
-.el-button--cyan:focus,
-.el-button--cyan:hover {
- background: $main-normal !important;
- border-color: $main-normal !important;
- color: #ffffff !important;
-}
-
-.el-button--cyan {
- // background-color: $main-normal;
- border-color: $main-normal;
- color: $main-normal;
-}
-
-/* text color */
-.text-navy {
- color: #1ab394;
-}
-
-.text-primary {
- color: inherit;
-}
-
-.text-success {
- color: #1c84c6;
-}
-
-.text-info {
- color: #23c6c8;
-}
-
-.text-warning {
- color: #f8ac59;
-}
-
-.text-danger {
- color: #ed5565;
-}
-
-.text-muted {
- color: #888888;
-}
-
-/* image */
-.img-circle {
- border-radius: 50%;
-}
-
-.img-lg {
- width: 120px;
- height: 120px;
-}
-
-.avatar-upload-preview {
- position: absolute;
- top: 50%;
- transform: translate(50%, -50%);
- width: 180px;
- height: 180px;
- border-radius: 50%;
- box-shadow: 0 0 4px #ccc;
- overflow: hidden;
-}
-
-/* 拖拽列样式 */
-.sortable-ghost {
- opacity: 0.8;
- color: #fff !important;
- background: $ghost !important;
-}
-
-.top-right-btn {
- position: relative;
- float: right;
-}
diff --git a/front-end/src/styles/shop.scss b/front-end/src/styles/shop.scss
deleted file mode 100644
index 116e394..0000000
--- a/front-end/src/styles/shop.scss
+++ /dev/null
@@ -1,44 +0,0 @@
-.avatar-uploader .el-upload {
- border: 1px dashed #d9d9d9;
- border-radius: 6px;
- cursor: pointer;
- position: relative;
- overflow: hidden;
-}
-.avatar-uploader .el-upload:hover {
- border-color: #409EFF;
-}
-.avatar-uploader-icon {
- font-size: 28px;
- color: #8c939d;
- width: 120px;
- height: 120px;
- line-height: 120px;
- text-align: center;
-}
-.avatar {
- width: 120px;
- height: 120px;
- display: block;
-}
-.avatarTable {
- width: 100%;
- height: 100%;
- display: block;
-}
-.el-carousel__item h3 {
- color: #475669;
- font-size: 14px;
- opacity: 0.75;
- line-height: 200px;
- margin: 0;
-}
-
-.el-carousel__item:nth-child(2n) {
- background-color: #99a9bf;
-}
-
-.el-carousel__item:nth-child(2n+1) {
- background-color: #d3dce6;
-}
-
diff --git a/front-end/src/styles/sidebar.scss b/front-end/src/styles/sidebar.scss
deleted file mode 100644
index e4c6b5e..0000000
--- a/front-end/src/styles/sidebar.scss
+++ /dev/null
@@ -1,253 +0,0 @@
-#app {
- .main-container {
- min-height: 100%;
- transition: margin-left 0.28s;
- margin-left: $sideBarWidth;
- position: relative;
- }
-
- .sidebar-container {
- transition: width 0.28s;
- width: $sideBarWidth !important;
- background-color: $menuBg;
- height: 100%;
- position: fixed;
- font-size: 0px;
- top: 0;
- bottom: 0;
- left: 0;
- z-index: 2001;
- overflow: hidden;
-
- box-shadow: 0 2px 6px 0 rgba(149, 149, 149, 0.3);
-
- // reset element-ui css
- .horizontal-collapse-transition {
- transition: 0s width ease-in-out, 0s padding-left ease-in-out, 0s padding-right ease-in-out;
- }
-
- .scrollbar-wrapper {
- overflow-x: hidden !important;
- }
-
- .el-scrollbar__bar.is-vertical {
- right: 0px;
- }
-
- .el-scrollbar {
- height: 100%;
- }
-
- &.has-logo {
- .el-scrollbar {
- height: calc(100% - 50px);
- }
- }
-
- .is-horizontal {
- display: none;
- }
-
- a {
- display: inline-block;
- width: 100%;
- overflow: hidden;
- }
-
- .svg-icon {
- margin-right: 16px;
- }
-
- .sub-el-icon {
- margin-right: 12px;
- margin-left: -2px;
- }
-
- .el-menu {
- border: none;
- height: 100%;
- width: 100% !important;
- }
-
- // menu hover
- .submenu-title-noDropdown,
- .el-submenu__title {
- font-size: 16px !important;
- &:hover {
- background-color: $menuHover !important;
- }
- }
-
- .is-active > .el-submenu__title {
- color: $subMenuActiveText !important;
- }
-
- .el-menu-item.is-active {
- background-color: $background-light !important;
- }
-
- & .nest-menu .el-submenu > .el-submenu__title,
- & .el-submenu .el-menu-item {
- min-width: $sideBarWidth !important;
- background-color: $subMenuBg !important;
-
- &:hover {
- background-color: $subMenuHover !important;
- }
- }
- }
- .toggle-sidebar-tool {
- background: #f3f3f3;
- position: fixed;
- left: calc(2px + #{$sideBarWidth});
- top: calc(50% - 25px);
- width: 18px;
- height: 50px;
- z-index: 1;
- transition: left 0.28s;
- text-align: center;
- line-height: 68px;
- cursor: pointer;
- // 矩形透视为梯形 , left需要补2px
- transform: perspective(2em) rotateY(1deg);
- i {
- font-size: 20px;
- color: #d5d5d5;
- }
- }
- .hideSidebar {
- .toggle-sidebar-tool {
- left: $sideBarWidthHide;
- }
-
- .sidebar-container {
- width: $sideBarWidthHide !important;
- }
-
- .main-container {
- margin-left: $sideBarWidthHide;
- }
-
- .submenu-title-noDropdown {
- padding: 0 !important;
- position: relative;
-
- .el-tooltip {
- padding: 0 !important;
-
- .svg-icon {
- margin-left: 20px;
- }
-
- .sub-el-icon {
- margin-left: 19px;
- }
- }
- }
-
- .el-submenu {
- overflow: hidden;
-
- & > .el-submenu__title {
- padding: 0 !important;
-
- .svg-icon {
- margin-left: 20px;
- }
-
- .sub-el-icon {
- margin-left: 19px;
- }
-
- .el-submenu__icon-arrow {
- display: none;
- }
- }
- }
-
- .el-menu--collapse {
- .el-submenu {
- & > .el-submenu__title {
- & > span {
- height: 0;
- width: 0;
- overflow: hidden;
- visibility: hidden;
- display: inline-block;
- }
- }
- }
- }
- }
-
- .el-menu--collapse .el-menu .el-submenu {
- min-width: $sideBarWidth !important;
- }
-
- // mobile responsive
- .mobile {
- .main-container {
- margin-left: 0px;
- }
-
- .sidebar-container {
- transition: transform 0.28s;
- width: $sideBarWidth !important;
- }
-
- &.hideSidebar {
- .sidebar-container {
- pointer-events: none;
- transition-duration: 0.3s;
- transform: translate3d(-$sideBarWidth, 0, 0);
- }
- }
- }
-
- .withoutAnimation {
- .main-container,
- .sidebar-container {
- transition: none;
- }
- }
-}
-
-// when menu collapsed
-.el-menu--vertical {
- & > .el-menu {
- .svg-icon {
- margin-right: 16px;
- }
- .sub-el-icon {
- margin-right: 12px;
- margin-left: -2px;
- }
- }
-
- .nest-menu .el-submenu > .el-submenu__title,
- .el-menu-item {
- &:hover {
- // you can use $subMenuHover
- background-color: $menuHover !important;
- }
- }
-
- // the scroll bar appears when the subMenu is too long
- > .el-menu--popup {
- max-height: 100vh;
- overflow-y: auto;
-
- &::-webkit-scrollbar-track-piece {
- background: #d3dce6;
- }
-
- &::-webkit-scrollbar {
- width: 6px;
- }
-
- &::-webkit-scrollbar-thumb {
- background: #99a9bf;
- border-radius: 20px;
- }
- }
-}
diff --git a/front-end/src/styles/transition.scss b/front-end/src/styles/transition.scss
deleted file mode 100644
index 4cb27cc..0000000
--- a/front-end/src/styles/transition.scss
+++ /dev/null
@@ -1,48 +0,0 @@
-// global transition css
-
-/* fade */
-.fade-enter-active,
-.fade-leave-active {
- transition: opacity 0.28s;
-}
-
-.fade-enter,
-.fade-leave-active {
- opacity: 0;
-}
-
-/* fade-transform */
-.fade-transform-leave-active,
-.fade-transform-enter-active {
- transition: all .5s;
-}
-
-.fade-transform-enter {
- opacity: 0;
- transform: translateX(-30px);
-}
-
-.fade-transform-leave-to {
- opacity: 0;
- transform: translateX(30px);
-}
-
-/* breadcrumb transition */
-.breadcrumb-enter-active,
-.breadcrumb-leave-active {
- transition: all .5s;
-}
-
-.breadcrumb-enter,
-.breadcrumb-leave-active {
- opacity: 0;
- transform: translateX(20px);
-}
-
-.breadcrumb-move {
- transition: all .5s;
-}
-
-.breadcrumb-leave-active {
- position: absolute;
-}
diff --git a/front-end/src/styles/variables.scss b/front-end/src/styles/variables.scss
deleted file mode 100644
index dcac0a8..0000000
--- a/front-end/src/styles/variables.scss
+++ /dev/null
@@ -1,58 +0,0 @@
-// 品牌 主色
-$main-dark: #ff7310;
-$main-normal: #ff8d13;
-$main-light: #febb14;
-// 中性色 次色
-$minor-dark: #333333;
-$minor-normal: #666666;
-$minor-light: #999999;
-$minor-lighter: #d9d9d9;
-// 辅助色
-$sub-dark: #3173d0;
-$sub-normal: #ffeebf;
-$sub-light: #eeeaeb;
-// 背景色
-$background-dark: #f5f5f5;
-$background-normal: #fbfbfb;
-$background-light: #ffffff;
-
-// base color
-$blue: #324157;
-$light-blue: #3a71a8;
-$red: #c03639;
-$pink: #e65d6e;
-$green: #30b08f;
-$tiffany: #4ab7bd;
-$yellow: #fec171;
-$panGreen: #30b08f;
-$danger: #f56c6c;
-
-// sidebar
-$menuText: $minor-normal; // #bfcbd9;
-$menuActiveText: $main-dark; // #409eff;
-$subMenuActiveText: #f4f4f5; // https://github.com/ElemeFE/element/issues/12951
-
-$menuBg: $background-normal; //#304156;
-$menuHover: $background-dark; //#263445;
-
-$subMenuBg: #1f2d3d;
-$subMenuHover: #001528;
-
-$sideBarWidth: 180px;
-$sideBarWidthHide: 0px;
-// 拖拽样式
-$ghost: #eee;
-
-// the :export directive is the magic sauce for webpack
-// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
-:export {
- menuText: $menuText;
- menuActiveText: $menuActiveText;
- subMenuActiveText: $subMenuActiveText;
- menuBg: $menuBg;
- menuHover: $menuHover;
- subMenuBg: $subMenuBg;
- subMenuHover: $subMenuHover;
- sideBarWidth: $sideBarWidth;
- ghost: $ghost;
-}
diff --git a/front-end/src/utils/BjDialogListConfig.js b/front-end/src/utils/BjDialogListConfig.js
deleted file mode 100644
index 87abf50..0000000
--- a/front-end/src/utils/BjDialogListConfig.js
+++ /dev/null
@@ -1,688 +0,0 @@
-import { goodsApi, channelApi, stockApi, orderApi, afterApi } from '@/api';
-import { GOODS_TYPES } from '@/utils/constants';
-import { GOODS_COMBO_TYPES } from '@/utils/constants';
-// spu
-export function spuVirtual(title = '选择虚拟商品', option) {
- return spuDefault(title, {
- defaultQuery: { type: GOODS_TYPES.VIRTUAL, status: 1 },
- });
-}
-export function spuReal(title = '选择实物商品', option) {
- return spuDefault(title, {
- defaultQuery: { type: GOODS_TYPES.REAL, status: 1 },
- });
-}
-export function spuPackage(title = '选择套餐商品', option) {
- return spuDefault(title, {
- defaultQuery: { setFlag: GOODS_COMBO_TYPES.PACKAGE, status: 1 },
- });
-}
-export function spuOrdinary(title = '选择普通商品', option) {
- return spuDefault(title, {
- defaultQuery: { setFlag: GOODS_COMBO_TYPES.ORDINARY, status: 1 },
- });
-}
-export function spuDefault(title = '选择商品', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'spuCode',
- label: '商品编码',
- width: 160,
- },
- {
- prop: 'name',
- label: '商品名称',
- width: 160,
- },
- {
- prop: 'categoryName',
- label: '商品分类',
- },
- ],
- search: option.search || [
- {
- placeholder: '请输入编码',
- key: 'spuCode',
- },
- {
- placeholder: '请输入名称',
- key: 'name',
- },
- {
- placeholder: '请选择分类',
- key: 'categoryIdList',
- component: 'BjGoodsTypeTreeSelect',
- multiple: true,
- },
- ],
- actionApi: option.actionApi || goodsApi.getPage,
- defaultQuery: option.defaultQuery || { status: 1 },
- query: option.query || '',
- };
-}
-// sku
-export function skuReal(title = '选择实物商品', option) {
- return skuDefault(title, {
- defaultQuery: { spuType: GOODS_TYPES.REAL, status: [3, 4, 5] },
- });
-}
-export function skuDefault(title = '选择SKU', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'categoryName',
- label: '商品分类',
- },
- {
- prop: 'spuCode',
- label: '商品编码',
- width: 160,
- },
- {
- prop: 'spuName',
- label: '商品名称',
- width: 160,
- },
- {
- prop: 'skuCode',
- label: 'SKU编码',
- width: 160,
- },
- {
- prop: 'skuName',
- label: 'SKU名称',
- width: 160,
- },
- {
- prop: 'spuType',
- label: '商品类型',
- constantKey: 'GOODS_TYPE_LIST',
- },
- ],
- search: option.search || [
- {
- placeholder: '请输入商品名称',
- key: 'spuName',
- },
- {
- placeholder: '请输入商品编码',
- key: 'spuCode',
- },
- {
- placeholder: '请输入SKU编码',
- key: 'skuCode',
- },
- ],
- actionApi: option.actionApi || goodsApi.getSku,
- defaultQuery: option.defaultQuery || { status: [3, 4, 5] },
- query: option.query || '',
- };
-}
-// shop
-export function shopDefault(title = '选择店铺', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'code',
- label: '店铺编码',
- },
- {
- prop: 'name',
- label: '店铺名称',
- },
- {
- prop: 'categoryType',
- label: '店铺类型',
- constantKey: 'SHOP_TYPE_LIST',
- },
- ],
- search: option.search || [
- {
- placeholder: '请输入编码',
- key: 'code',
- },
- {
- placeholder: '请输入名称',
- key: 'name',
- },
- ],
- actionApi: option.actionApi || channelApi.getAllShopPage,
- defaultQuery: option.defaultQuery || {},
- query: option.query || '',
- };
-}
-// shopOnline
-export function shopOnline(title = '选择网店', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'code',
- label: '编码',
- },
- {
- prop: 'name',
- label: '名称',
- },
- {
- prop: 'channelTypeMeaning',
- label: '销售渠道',
- },
- {
- prop: 'onlineStoreTypeMeaning',
- label: '类型',
- },
- ],
- search: option.search || [
- {
- placeholder: '请输入网店编码',
- key: 'code',
- },
- {
- placeholder: '请输入网店名称',
- key: 'name',
- },
-
- {
- placeholder: '请选择渠道',
- key: 'channelTypeCode',
- component: 'BjSelectLov',
- lovCode: 'SCHL.CHANNEL_TYPE',
- },
- ],
- actionApi: option.actionApi || channelApi.getOnlineShopPage,
- defaultQuery: option.defaultQuery || { status: true },
- query: option.query || '',
- };
-}
-// channelApi.getWarehousePage
-export function warehouseDefault(title = '选择仓库', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'code',
- label: '仓库编码',
- },
- {
- prop: 'name',
- label: '仓库名称',
- },
- {
- prop: 'detailAddress',
- label: '仓库地址',
- },
- ],
- search: option.search || [
- {
- placeholder: '仓库编码',
- key: 'code',
- },
- {
- placeholder: '仓库名称',
- key: 'name',
- },
- ],
- actionApi: option.actionApi || channelApi.getWarehousePage,
- // // defaultQuery: { typeCode: ['real'] },
- defaultQuery: option.defaultQuery || { enableFlag: true },
- query: option.query || '',
- };
-}
-// stockApi.getWarehousesPage
-export function stockWarehouseLogic(time, option) {
- return stockWarehouseDefault('选择逻辑仓', {
- defaultQuery: { typeCode: ['logic'] },
- });
-}
-export function stockWarehouseReal(time, option) {
- return stockWarehouseDefault('选择实仓', {
- defaultQuery: { typeCode: ['real'] },
- });
-}
-export function stockWarehouseDefault(title = '选择仓库', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'code',
- label: '仓库编码',
- },
- {
- prop: 'name',
- label: '仓库名称',
- },
- ],
- search: option.search || [
- {
- placeholder: '仓库编码',
- key: 'code',
- },
- {
- placeholder: '仓库名称',
- key: 'name',
- },
- ],
- actionApi: option.actionApi || stockApi.getWarehousesPage,
- defaultQuery: option.defaultQuery || {},
- query: option.query || '',
- };
-}
-// stockGoods
-export function stockGoodsDefault(title = '选择商品', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'spuCode',
- label: '商品编码',
- width: 160,
- },
- {
- prop: 'spuName',
- label: '商品名称',
- width: 160,
- },
- {
- prop: 'skuCode',
- label: 'SKU编码',
- width: 160,
- },
- {
- prop: 'categoryName',
- label: '商品分类',
- },
- {
- prop: 'spuType',
- label: '商品类型',
- constantKey: 'GOODS_TYPE_LIST',
- },
- {
- prop: 'usableNum',
- label: '可用库存 ',
- },
- ],
- search: option.search || [
- {
- placeholder: '请输入商品名称',
- key: 'spuName',
- },
- {
- placeholder: '请输入商品编码',
- key: 'spuCode',
- },
- {
- placeholder: '请输入SKU编码',
- key: 'skuCode',
- },
- ],
- actionApi: option.actionApi || stockApi.getGoodsStockPage,
- // usableExcludeZeroFlag (boolean, optional): 可用库存是否大于零
- // warehouseId (Array[integer], optional): 仓库名称
- defaultQuery: option.defaultQuery || { warehouseId: [], usableExcludeZeroFlag: true },
- query: option.query || '',
- };
-}
-
-/** 内部销售单 */
-export function innerOrderDefault(title = '选择关联销售单', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'innerOrderNo',
- label: '内部订单号',
- width: 160,
- },
- {
- prop: 'outerOrderNo',
- label: '三方订单号',
- width: 160,
- },
- {
- prop: 'businessType',
- label: '订单类型',
- constantKey: 'ORDER_BUSINESS_TYPE_LIST',
- },
- {
- prop: 'orderStatus',
- label: '订单状态',
- constantKey: 'ORDER_INTERNAL_ORDER_STATUS_LIST',
- },
- {
- prop: 'storeName',
- label: '销售店铺',
- },
- {
- prop: 'channelTypeMeaning',
- label: '销售渠道',
- },
- {
- prop: 'payStatus',
- label: '支付状态',
- constantKey: 'ORDER_INTERNAL_PAYMENT_STATUS_LIST',
- },
- {
- prop: 'goodsQuatity',
- label: '商品行数量',
- },
- {
- prop: 'totalAmount',
- label: '商品总金额',
- },
- {
- prop: 'buyerPay',
- label: '买家应付',
- },
- {
- prop: 'costPrice',
- label: '商品总成本',
- },
- {
- prop: 'buyerRealPrice',
- label: '买家实付',
- },
- {
- prop: 'deliveryStatus',
- label: '发货状态',
- constantKey: 'ORDER_INTERNAL_DELIVER_STATUS_LIST',
- width: 100,
- },
- {
- prop: 'receivingStatus',
- label: '收货状态',
- constantKey: 'ORDER_INTERNAL_RECEIVING_STATUS_LIST',
- width: 100,
- },
- {
- prop: 'buyerNick',
- label: '买家昵称',
- },
- {
- prop: 'receiverName',
- label: '收货人姓名',
- },
- {
- prop: 'mobile',
- label: '手机号',
- width: 100,
- },
- {
- prop: 'address',
- label: '收货地址',
- },
- {
- prop: 'orderTime',
- label: '三方下单时间',
- width: 135,
- },
- {
- prop: 'payTime',
- label: '支付时间',
- width: 135,
- },
- {
- prop: 'creationDate',
- label: '创建时间',
- width: 135,
- },
- ],
- search: option.search || [
- {
- placeholder: '三方订单号/内部订单号',
- key: 'orderNo',
- },
- ],
- showChannelStore: ['channel', 'storeIdList'],
- actionApi: option.actionApi || orderApi.getInternalPage,
- defaultQuery: option.defaultQuery || {},
- query: option.query || '',
- };
-}
-/** 退款商品 */
-export function refundGoodsDefault(title = '选择退款商品', option = {}) {
- const list = title.includes('退货')
- ? [
- // {
- // prop: 'quantityShipped',
- // label: '已发货数量',
- // },
- // {
- // prop: 'quantityReturned',
- // label: '已退货数量',
- // },
- // {
- // prop: 'returnableQuantity',
- // label: '可退货数量',
- // },
- ]
- : [
- // {
- // prop: 'undeliveredQuantity',
- // label: '未发货数量',
- // },
- // {
- // prop: 'quantityRefunded',
- // label: '已退款数量',
- // },
- // {
- // prop: 'refundableQuantity',
- // label: '可退款数量',
- // },
- ];
-
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'spuCode',
- label: '商品编码',
- width: 160,
- },
- {
- prop: 'spuName',
- label: '商品名称',
- width: 160,
- },
- {
- prop: 'skuCode',
- label: 'SKU编码',
- width: 160,
- },
- {
- prop: 'skuName',
- label: 'SKU名称',
- width: 160,
- },
- {
- prop: 'giftFlag',
- label: '是否赠品',
- constantKey: 'STATUS_YES_NUM',
- width: 80,
- },
- {
- prop: 'totalQuantity',
- label: '商品行数量',
- width: 80,
- },
- ...list,
- ],
- search: option.search || [],
- actionApi: option.actionApi || afterApi.getRefundPageByInnerNo,
- defaultQuery: option.defaultQuery || { innerOrderNo: null },
- query: option.query || '',
- };
-}
-
-/** 三方销售单 */
-export function thirdOrderDefault(title = '选择关联三方订单', option = {}) {
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'outerOrderNo',
- label: '三方订单号',
- width: 160,
- },
- {
- prop: 'innerOrderNo',
- label: '内部订单号',
- width: 160,
- },
- {
- prop: 'businessType',
- label: '订单类型',
- constantKey: 'ORDER_BUSINESS_TYPE_LIST',
- },
- {
- prop: 'storeName',
- label: '销售店铺',
- width: 160,
- },
- {
- prop: 'channelTypeMeaning',
- label: '销售渠道',
- },
- {
- prop: 'circulationStatus',
- label: '流转状态',
- constantKey: 'AFTER_THIRD_REFUND_TRANSFER_STATUS',
- },
- {
- prop: 'syncStatus',
- label: '回写状态',
- constantKey: 'ORDER_BACK_RES_LIST',
- },
- {
- prop: 'receivingStatus',
- label: '平台收货状态',
- constantKey: 'ORDER_THIRD_RECEIVING_STATUS_LIST',
- },
- // {
- // prop: 'buyerRemarks',
- // label: '买家留言',
- // },
- // {
- // prop: 'serviceRemarks',
- // label: '客服备注',
- // },
- {
- prop: 'goodsQuantity',
- label: '商品数',
- },
- {
- prop: 'goodsTotalAmount',
- label: '商品总金额',
- },
- {
- prop: 'totalDiscount',
- label: '优惠合计',
- },
- {
- prop: 'amountReceivable',
- label: '应收总金额',
- },
- {
- prop: 'buyerPayAmount',
- label: '买家实付',
- },
- {
- prop: 'businessDiscountAmount',
- label: '商家承担优惠金额',
- },
- {
- prop: 'thirdDiscountAmount',
- label: '三方承担优惠金额',
- },
- {
- prop: 'buyerNick',
- label: '买家昵称',
- },
- {
- prop: 'receiverName',
- label: '收货人姓名',
- },
-
- {
- prop: 'mobile',
- label: '手机号',
- width: 100,
- },
- // {
- // prop: 'address',
- // label: '收货地址',
- // },
- {
- prop: 'orderTime',
- label: '三方下单时间',
- width: 135,
- },
- {
- prop: 'payTime',
- label: '支付时间',
- width: 135,
- },
- {
- prop: 'creationDate',
- label: '拉单时间',
- width: 135,
- },
- ],
- search: option.search || [
- {
- placeholder: '三方订单号/内部订单号',
- key: 'orderNo',
- },
- ],
- showChannelStore: ['channel', 'storeIdList'],
- actionApi: option.actionApi || orderApi.getThirdOrderPage,
- defaultQuery: option.defaultQuery || {},
- query: option.query || '',
- };
-}
-/** 三方退款商品: 三方销售单详情的thirdItemVO字段 */
-export function thirdRefundGoodsDefault(title = '选择退款商品', option = {}) {
- const list = title.includes('退货') ? [] : [];
-
- // outerSaleAmount: 199
- // outerSingleSaleAmount: 199
- // quantity: 1
-
- return {
- title: title,
- columns: option.columns || [
- {
- prop: 'spuCode',
- label: '商品编码',
- width: 160,
- },
- {
- prop: 'spuName',
- label: '商品名称',
- width: 160,
- },
- {
- prop: 'skuCode',
- label: 'SKU编码',
- width: 160,
- },
- {
- prop: 'skuName',
- label: 'SKU名称',
- },
- {
- prop: 'quantity',
- label: '商品行数量',
- },
- ...list,
- ],
- search: option.search || [],
- actionApi: option.actionApi || afterApi.getRefundPageByInnerNo,
- defaultQuery: option.defaultQuery || { innerOrderNo: null },
- query: option.query || '',
- };
-}
diff --git a/front-end/src/utils/auth.js b/front-end/src/utils/auth.js
deleted file mode 100644
index 42b6379..0000000
--- a/front-end/src/utils/auth.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import Cookies from 'js-cookie';
-
-const TokenKey = 'BJ-Token';
-
-export function getToken() {
- return Cookies.get(TokenKey);
-}
-
-export function setToken(token) {
- return Cookies.set(TokenKey, token);
-}
-
-export function removeToken() {
- return Cookies.remove(TokenKey);
-}
diff --git a/front-end/src/utils/axios.js b/front-end/src/utils/axios.js
deleted file mode 100644
index f00239f..0000000
--- a/front-end/src/utils/axios.js
+++ /dev/null
@@ -1,54 +0,0 @@
-// import Vue from 'vue';
-import axios from 'axios';
-// import vueAxios from 'vue-axios';
-import store from '@/store';
-import { getToken } from '@/utils/auth';
-import { VUE_APP_BASE_API } from '@/utils/index';
-
-/** axios通用配置 */
-axios.defaults.timeout = 30000;
-axios.defaults.baseURL = VUE_APP_BASE_API();
-
-/** http request 拦截器 */
-axios.interceptors.request.use(
- config => {
- // do something
- if (store.getters.token) {
- // let each request carry token
- // ['X-Token'] is a custom headers key
- // please modify it according to the actual situation
- config.headers['X-Token'] = getToken();
- }
- return config;
- },
- err => {
- return Promise.reject(err);
- },
-);
-
-// http response 拦截器
-axios.interceptors.response.use(
- response => {
- return response;
- },
- error => {
- if (error.response) {
- switch (error.response.status) {
- case 401:
- // 401 清除token信息并跳转到登录页面
- window.location.href = error.response.headers.location;
- }
- }
- return Promise.reject(error.response.data);
- },
-);
-
-// Vue.use(vueAxios, axios); // Vue.axios/this.axios/this.$http使用axios,一次封装方便协作规范
-
-/** 2021-9-8 13:57:49 线上npm build失败,先禁用vue-axios
- * This dependency was not found:
- * * vue-axios in ./src/utils/axios.js
- * To install it, you can run: npm install --save vue-axios
- * */
-
-export default axios;
diff --git a/front-end/src/utils/bpmn/customTranslate.js b/front-end/src/utils/bpmn/customTranslate.js
deleted file mode 100644
index be552f9..0000000
--- a/front-end/src/utils/bpmn/customTranslate.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/*
- * @Author: your name
- * @Date: 2021-10-12 17:42:31
- * @LastEditTime: 2021-10-12 17:42:46
- * @LastEditors: your name
- * @Description: In User Settings Edit
- * @FilePath: \newBj-admin\src\utils\bpmn\customTranslate.js
- */
-import translations from './translationsGerman';
-
-export default function customTranslate(template, replacements) {
- replacements = replacements || {};
-
- // Translate
- template = translations[template] || template;
-
- // Replace
- return template.replace(/{([^}]+)}/g, function(_, key) {
- var str = replacements[key];
- if (translations[replacements[key]] != null && translations[replacements[key]] != 'undefined') {
- str = translations[replacements[key]];
- }
- return str || '{' + key + '}';
- });
-}
diff --git a/front-end/src/utils/bpmn/defalutXml.js b/front-end/src/utils/bpmn/defalutXml.js
deleted file mode 100644
index 9446914..0000000
--- a/front-end/src/utils/bpmn/defalutXml.js
+++ /dev/null
@@ -1,17 +0,0 @@
-export default `
-
-
-
-
-
-
-
-`;
diff --git a/front-end/src/utils/bpmn/translationsGerman.js b/front-end/src/utils/bpmn/translationsGerman.js
deleted file mode 100644
index 6eec7cc..0000000
--- a/front-end/src/utils/bpmn/translationsGerman.js
+++ /dev/null
@@ -1,239 +0,0 @@
-export default {
- // Labels
- 'Activate the global connect tool': '激活全局连接工具',
- 'Append {type}': '追加 {type}',
- 'Append EndEvent': '追加 结束事件 ',
- 'Append Task': '追加 任务',
- 'Append Gateway': '追加 网关',
- 'Append Intermediate/Boundary Event': '追加 中间/边界 事件',
- 'Add Lane above': '在上面添加道',
- 'Divide into two Lanes': '分割成两个道',
- 'Divide into three Lanes': '分割成三个道',
- 'Add Lane below': '在下面添加道',
- 'Append compensation activity': '追加补偿活动',
- 'Change type': '修改类型',
- 'Connect using Association': '使用关联连接',
- 'Connect using Sequence/MessageFlow or Association': '使用顺序/消息流或者关联连接',
- 'Connect using DataInputAssociation': '使用数据输入关联连接',
- 'Remove': '移除',
- 'Activate the hand tool': '激活抓手工具',
- 'Activate the lasso tool': '激活套索工具',
- 'Activate the create/remove space tool': '激活创建/删除空间工具',
- 'Create expanded SubProcess': '创建扩展子过程',
- 'Create IntermediateThrowEvent/BoundaryEvent': '创建中间抛出事件/边界事件',
- 'Create Pool/Participant': '创建池/参与者',
- 'Parallel Multi Instance': '并行多重事件',
- 'Sequential Multi Instance': '时序多重事件',
- 'DataObjectReference': '数据对象参考',
- 'DataStoreReference': '数据存储参考',
- 'Loop': '循环',
- 'Ad-hoc': '即席',
- 'Create {type}': '创建 {type}',
- 'Create Task': '创建任务',
- 'Create StartEvent': '创建开始事件',
- 'Create EndEvent': '创建结束事件',
- 'Create Group': '创建组',
- 'Task': '任务',
- 'Send Task': '发送任务',
- 'Receive Task': '接收任务',
- 'User Task': '用户任务',
- 'Manual Task': '手工任务',
- 'Business Rule Task': '业务规则任务',
- 'Service Task': '服务任务',
- 'Script Task': '脚本任务',
- 'Call Activity': '调用活动',
- 'Sub Process (collapsed)': '子流程(折叠的)',
- 'Sub Process (expanded)': '子流程(展开的)',
- 'Start Event': '开始事件',
- 'StartEvent': '开始事件',
- 'Intermediate Throw Event': '中间事件',
- 'End Event': '结束事件',
- 'EndEvent': '结束事件',
- 'Create Gateway': '创建网关',
- 'GateWay': '网关',
- 'Create Intermediate/Boundary Event': '创建中间/边界事件',
- 'Message Start Event': '消息开始事件',
- 'Timer Start Event': '定时开始事件',
- 'Conditional Start Event': '条件开始事件',
- 'Signal Start Event': '信号开始事件',
- 'Error Start Event': '错误开始事件',
- 'Escalation Start Event': '升级开始事件',
- 'Compensation Start Event': '补偿开始事件',
- 'Message Start Event (non-interrupting)': '消息开始事件(非中断)',
- 'Timer Start Event (non-interrupting)': '定时开始事件(非中断)',
- 'Conditional Start Event (non-interrupting)': '条件开始事件(非中断)',
- 'Signal Start Event (non-interrupting)': '信号开始事件(非中断)',
- 'Escalation Start Event (non-interrupting)': '升级开始事件(非中断)',
- 'Message Intermediate Catch Event': '消息中间捕获事件',
- 'Message Intermediate Throw Event': '消息中间抛出事件',
- 'Timer Intermediate Catch Event': '定时中间捕获事件',
- 'Escalation Intermediate Throw Event': '升级中间抛出事件',
- 'Conditional Intermediate Catch Event': '条件中间捕获事件',
- 'Link Intermediate Catch Event': '链接中间捕获事件',
- 'Link Intermediate Throw Event': '链接中间抛出事件',
- 'Compensation Intermediate Throw Event': '补偿中间抛出事件',
- 'Signal Intermediate Catch Event': '信号中间捕获事件',
- 'Signal Intermediate Throw Event': '信号中间抛出事件',
- 'Message End Event': '消息结束事件',
- 'Escalation End Event': '定时结束事件',
- 'Error End Event': '错误结束事件',
- 'Cancel End Event': '取消结束事件',
- 'Compensation End Event': '补偿结束事件',
- 'Signal End Event': '信号结束事件',
- 'Terminate End Event': '终止结束事件',
- 'Message Boundary Event': '消息边界事件',
- 'Message Boundary Event (non-interrupting)': '消息边界事件(非中断)',
- 'Timer Boundary Event': '定时边界事件',
- 'Timer Boundary Event (non-interrupting)': '定时边界事件(非中断)',
- 'Escalation Boundary Event': '升级边界事件',
- 'Escalation Boundary Event (non-interrupting)': '升级边界事件(非中断)',
- 'Conditional Boundary Event': '条件边界事件',
- 'Conditional Boundary Event (non-interrupting)': '条件边界事件(非中断)',
- 'Error Boundary Event': '错误边界事件',
- 'Cancel Boundary Event': '取消边界事件',
- 'Signal Boundary Event': '信号边界事件',
- 'Signal Boundary Event (non-interrupting)': '信号边界事件(非中断)',
- 'Compensation Boundary Event': '补偿边界事件',
- 'Exclusive Gateway': '互斥网关',
- 'Parallel Gateway': '并行网关',
- 'Inclusive Gateway': '相容网关',
- 'Complex Gateway': '复杂网关',
- 'Event based Gateway': '事件网关',
- 'Transaction': '转运',
- 'Sub Process': '子流程',
- 'Event Sub Process': '事件子流程',
- 'Collapsed Pool': '折叠池',
- 'Expanded Pool': '展开池',
- // Errors
- 'no parent for {element} in {parent}': '在{parent}里,{element}没有父类',
- 'no shape type specified': '没有指定的形状类型',
- 'flow elements must be children of pools/participants': '流元素必须是池/参与者的子类',
- 'out of bounds release': 'out of bounds release',
- 'more than {count} child lanes': '子道大于{count} ',
- 'element required': '元素不能为空',
- 'diagram not part of bpmn:Definitions': '流程图不符合bpmn规范',
- 'no diagram to display': '没有可展示的流程图',
- 'no process or collaboration to display': '没有可展示的流程/协作',
- 'element {element} referenced by {referenced}#{property} not yet drawn': '由{referenced}#{property}引用的{element}元素仍未绘制',
- 'already rendered {element}': '{element} 已被渲染',
- 'failed to import {element}': '导入{element}失败',
- // 属性面板的参数
- 'Id': '编号',
- 'Name': '名称',
- 'General': '常规',
- 'Details': '详情',
- 'Message Name': '消息名称',
- 'Message': '消息',
- 'Initiator': '创建者',
- 'Asynchronous Continuations': '持续异步',
- 'Asynchronous Before': '异步前',
- 'Asynchronous After': '异步后',
- 'Job Configuration': '工作配置',
- 'Exclusive': '排除',
- 'Job Priority': '工作优先级',
- 'Retry Time Cycle': '重试时间周期',
- 'Documentation': '文档',
- 'Element Documentation': '元素文档',
- 'History Configuration': '历史配置',
- 'History Time To Live': '历史的生存时间',
- 'Forms': '表单',
- 'Form Key': '表单key',
- 'Form Fields': '表单字段',
- 'Business Key': '业务key',
- 'Form Field': '表单字段',
- 'ID': '编号',
- 'Type': '类型',
- 'Label': '名称',
- 'Default Value': '默认值',
- 'Validation': '校验',
- 'Add Constraint': '添加约束',
- 'Config': '配置',
- 'Properties': '属性',
- 'Add Property': '添加属性',
- 'Value': '值',
- 'Add': '添加',
- 'Values': '值',
- 'Add Value': '添加值',
- 'Listeners': '监听器',
- 'Execution Listener': '执行监听',
- 'Event Type': '事件类型',
- 'Listener Type': '监听器类型',
- 'Java Class': 'Java类',
- 'Expression': '表达式',
- 'Must provide a value': '必须提供一个值',
- 'Delegate Expression': '代理表达式',
- 'Script': '脚本',
- 'Script Format': '脚本格式',
- 'Script Type': '脚本类型',
- 'Inline Script': '内联脚本',
- 'External Script': '外部脚本',
- 'Resource': '资源',
- 'Field Injection': '字段注入',
- 'Extensions': '扩展',
- 'Input/Output': '输入/输出',
- 'Input Parameters': '输入参数',
- 'Output Parameters': '输出参数',
- 'Parameters': '参数',
- 'Output Parameter': '输出参数',
- 'Timer Definition Type': '定时器定义类型',
- 'Timer Definition': '定时器定义',
- 'Date': '日期',
- 'Duration': '持续',
- 'Cycle': '循环',
- 'Signal': '信号',
- 'Signal Name': '信号名称',
- 'Escalation': '升级',
- 'Error': '错误',
- 'Link Name': '链接名称',
- 'Condition': '条件名称',
- 'Variable Name': '变量名称',
- 'Variable Event': '变量事件',
- 'Specify more than one variable change event as a comma separated list.': '多个变量事件以逗号隔开',
- 'Wait for Completion': '等待完成',
- 'Activity Ref': '活动参考',
- 'Version Tag': '版本标签',
- 'Executable': '可执行文件',
- 'External Task Configuration': '扩展任务配置',
- 'Task Priority': '任务优先级',
- 'External': '外部',
- 'Connector': '连接器',
- 'Must configure Connector': '必须配置连接器',
- 'Connector Id': '连接器编号',
- 'Implementation': '实现方式',
- 'Field Injections': '字段注入',
- 'Fields': '字段',
- 'Result Variable': '结果变量',
- 'Topic': '主题',
- 'Configure Connector': '配置连接器',
- 'Input Parameter': '输入参数',
- 'Assignee': '代理人',
- 'Candidate Users': '候选用户',
- 'Candidate Groups': '候选组',
- 'Due Date': '到期时间',
- 'Follow Up Date': '跟踪日期',
- 'Priority': '优先级',
- 'The follow up date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)': '跟踪日期必须符合EL表达式,如: ${someDate} ,或者一个ISO标准日期,如:2015-06-26T09:54:00',
- 'The due date as an EL expression (e.g. ${someDate} or an ISO date (e.g. 2015-06-26T09:54:00)': '跟踪日期必须符合EL表达式,如: ${someDate} ,或者一个ISO标准日期,如:2015-06-26T09:54:00',
- 'Variables': '变量',
- 'Candidate Starter Configuration': '候选开始配置',
- 'Task Listener': '任务监听器',
- 'Candidate Starter Groups': '候选开始组',
- 'Candidate Starter Users': '候选开始用户',
- 'Tasklist Configuration': '任务列表配置',
- 'Startable': '启动',
- 'Specify more than one group as a comma separated list.': '指定多个组,用逗号分隔',
- 'Specify more than one user as a comma separated list.': '指定多个用户,用逗号分隔',
- 'This maps to the process definition key.': '这会映射为流程定义的键',
- 'CallActivity Type': '调用活动类型',
- 'Condition Type': '条件类型',
- 'Create UserTask': '创建用户任务',
- 'Create CallActivity': '创建调用活动',
- 'Called Element': '调用元素',
- 'Create DataObjectReference': '创建数据对象引用',
- 'Create DataStoreReference': '创建数据存储引用',
- 'Multi Instance': '多实例',
- 'Loop Cardinality': '实例数量',
- 'Collection': '任务参与人列表',
- 'Element Variable': '元素变量',
- 'Completion Condition': '完成条件'
-};
diff --git a/front-end/src/utils/clipboard.js b/front-end/src/utils/clipboard.js
deleted file mode 100644
index 981c1a8..0000000
--- a/front-end/src/utils/clipboard.js
+++ /dev/null
@@ -1,32 +0,0 @@
-import Vue from 'vue';
-import Clipboard from 'clipboard';
-
-function clipboardSuccess() {
- Vue.prototype.$message({
- message: 'Copy successfully',
- type: 'success',
- duration: 1500
- });
-}
-
-function clipboardError() {
- Vue.prototype.$message({
- message: 'Copy failed',
- type: 'error'
- });
-}
-
-export default function handleClipboard(text, event) {
- const clipboard = new Clipboard(event.target, {
- text: () => text
- });
- clipboard.on('success', () => {
- clipboardSuccess();
- clipboard.destroy();
- });
- clipboard.on('error', () => {
- clipboardError();
- clipboard.destroy();
- });
- clipboard.onClick(event);
-}
diff --git a/front-end/src/utils/constants.js b/front-end/src/utils/constants.js
deleted file mode 100644
index 3aa9440..0000000
--- a/front-end/src/utils/constants.js
+++ /dev/null
@@ -1,1265 +0,0 @@
-/*
- * @Author: your name
- * @Date: 2021-06-23 10:00:11
- * @LastEditTime: 2022-06-10 15:04:18
- * @LastEditors: LAPTOP-JM4BAR46
- * @Description: In User Settings Edit
- * @FilePath: \newBj-admin\src\utils\constants.js
- */
-// bjTable里的表格最大高度 的最小值
-export const BJ_TABLE_MINI_HEIGHT = 240;
-// 售后的类型: 1-仅退款单 2- 退货退款
-export const PAGE_SIZES = [20, 30, 50, 100, 200, 500, 1000];
-// 售后的类型: 1-仅退款单 2- 退货退款
-export const AFTER_ORDER_TYPES = {
- REFUND_ONLY: 1,
- REFUND_GOODS: 2,
-};
-// 商品中心-属性来源
-export const GOODS_ATTRIBUTE_SOURCES_JSON = {
- SPU: 0, // 新增(分类属性 或 商品属性)
- SYS: 1, // 系统默认
- CLASSIFY: 2, // 复制上级 分类属性
- ATTACHED: 3, // 附加属性
-};
-// 输入框 max 长度
-export const MAX_LENGTH = {
- DEFAULT: 50,
- CODE: 6, // 验证码
- NAME: 20, // 姓名、昵称
- REMARK: 200, // 备注、描述、说明等
- SHORT_NAME: 10, // 短短的名称
- PRIORITY: 999, // 优先级
- PRICE: 9, // 价格
-};
-// 商品类型 实物、虚拟
-export const GOODS_TYPES = {
- REAL: 1,
- VIRTUAL: 2,
-};
-// 属性关联类型
-export const ATTRIBUTE_RELATION_TYPES = {
- CLASSIFY: 1,
- GOODS: 2,
-};
-// :执行器注册到服务的方式,包括自动注册和手动录入
-export const EXECUTOR_TYPE_JSON = {
- AUTO: 0,
- MANUAL: 1,
-};
-// 表单类型
-export const INPUT_BOX_TYPE_JSON = {
- RADIO: 1,
- CHECKBOX: 2,
- INPUT: 3,
- SELECT: 4,
-};
-/** ***************** ARRAY 与 JSON 分界线 ****************** */
-const F = ar => {
- const a = [];
- new Map(ar).forEach((value, key) => {
- a.push({
- label: value,
- value: key,
- });
- });
- return a;
-};
-// 值集编码
-export const LOV_CODE = F([
- ['SCHL.CHANNEL_TYPE', ' 渠道类型'],
- // ['SSRH.SOURCE_FROM_TYPE', '来源类型'],//索引列表
- ['STOCK.INPUT_STATUS', '入库状态'],
- ['STOCK.DISTRIBUTE_PLAN_STATUS', '分仓计划状态'],
- ['STOCK.ALLOT_STATUS', '调拨/移仓状态'],
- ['STOCK.OUT_TYPE', '出库类型'],
- ['STOCK.PROCESS_TYPE', '流程类型'],
- ['LOGISTICS.SETTLEMENT_METHOD', '结算方式'],
- ['STOCK.RECORD_STATUS', '单据状态类型'],
- ['STOCK.RECORD_TYPE', '单据类型'],
- ['STOCK.WAREHOUSE_TYPE', '仓库类型'],
- ['PRICE.ITEM.TYPE', '租户价格项'],
- ['SCHL.INVOICE_TYPE', ' 发票种类'],
- ['SCHL.SHOP_TYPE', ' 店铺类型'],
- ['HRPT.TEMPLATE_TYPE', '报表模板类型'],
- ['HRPT.REQUEST_STATUS', '请求状态'],
- ['HRPT.REPORT_TYPE', '报表类型'],
- ['HSDR.REQUEST.INTERVAL_TYPE', '时间间隔类型'],
- ['HSDR.PARAM_FORMAT', '参数格式'],
- ['HSDR.PARAM_EDIT_TYPE', '编辑类型'],
- ['HSDR.LOG.JOB_RESULT', '任务调度结果'],
- ['HSDR.LOG.CLIENT_RESULT', '客户端执行结果'],
- ['HSDR.JOB_STATUS', '任务状态'],
- ['HSDR.GLUE_TYPE', '调度任务类型'],
- ['HSDR.FAIL_STRATEGY', '失败策略'],
- ['HSDR.EXECUTOR_STRATEGY', '执行器策略'],
- ['HMSG.SMS_SERVER_TYPE', '短信服务类型'],
- ['HMSG.NOTICE.STATUS', '公告状态'],
- ['HMSG.NOTICE.RECERVER_TYPE', '公告发布对象类别'],
- ['HMSG.NOTICE.NOTICE_TYPE.CH', '公告类型-子集'],
- ['HMSG.NOTICE.NOTICE_CATEGORY', '公告类别'],
- ['HMSG.MESSAGE_TYPE', '消息模板类型'],
- ['HMSG.MESSAGE_SUBCATEGORY', '消息子分类'],
- ['HMSG.MESSAGE_CATEGORY', '消息分类'],
- ['HMSG.EMAIL_PROTOCOL', '邮件协议'],
- ['HMSG.EMAIL.FILTER_STRATEGY', '邮箱账户筛选策略'],
- ['HFLE.STORAGE_UNIT', '存储大小限制单位'],
- ['HFLE.PREFIX_STRATEGY', '文件名前缀策略'],
- ['HFLE.FILE_FORMAT', '文件格式'],
- ['HFLE.CONTENT_TYPE', '文件分类'],
- ['HFLE.CAPACITY.ACCESS_CONTROL', '存储配置目录权限'],
- ['HPFM.LANGUAGE', '语言'],
- ['HPFM.CODE_RULE.VARIABLE', '编码规则变量常量'],
- ['HPFM.CODE_RULE.DATE_MASK', '编码规则日期掩码'],
-]);
-export const STATUS_ENABLED_NUM = F([
- [0, '禁用'],
- [1, '启用'],
-]);
-export const STATUS_ENABLED_TRUE = F([
- [false, '禁用'],
- [true, '启用'],
-]);
-export const STATUS_YES_NUM = F([
- [0, '否'],
- [1, '是'],
-]);
-export const USE_FLAG_NUM = F([
- [0, '未使用'],
- [1, '已使用'],
-]);
-export const STATUS_YES_TRUE = F([
- [false, '否'],
- [true, '是'],
-]);
-export const STATUS_HAVE_TRUE = F([
- [false, '无'],
- [true, '有'],
-]);
-export const STATUS_HAVE_NUMBER = F([
- [0, '无'],
- [1, '有'],
-]);
-export const STATUS_INIT_LIST = F([
- [0, '未初始'],
- [1, '已初始'],
-]);
-export const USER_TYPE_LIST = F([
- ['P', '平台用户'],
- ['C', 'C端用户'],
-]);
-export const GENDER_LIST = F([
- [0, '男'],
- [1, '女'],
-]);
-export const GOODS_TYPE_LIST = F([
- [1, '实物商品'],
- [2, '虚拟商品'],
-]);
-// -商品中心-商品管理- 组合类型 (普通商品、套餐商品、子母件)
-export const GOODS_COMBO_TYPES = {
- ORDINARY: 0,
- PACKAGE: 1,
- SON: 3,
-};
-export const GOODS_COMBO_TYPE_LIST = F([
- [0, '普通商品'],
- [1, '套餐商品'],
-]);
-// -商品中心-商品管理- 审核状态
-export const GOODS_MANAGE_AUDIT_STATUS = F([
- [1, '待提交'],
- [2, '待审核'],
- [3, '审核通过'],
- [4, '被驳回'],
-]);
-// 商品中心-SKU-完整状态
-export const GOODS_SKU_STATUS = F([
- [0, '草稿'],
- [1, '被驳回'],
- [2, '审核中'],
- [3, '已生效'],
- [4, '已生效-编辑中'],
- [5, '已生效-被驳回'],
-]);
-// 商品中心-SKU-状态 对应为 审核状态
-export const GOODS_SKU_VIEW_AUDIT_STATUS = F([
- [0, '未提交审核'],
- [1, '被驳回'],
- [2, '审核中'],
- [3, '已完成'],
- [4, '审核中'],
- [5, '被驳回'],
-]);
-/** * 审核列表 对应 GOODS_SKU_STATUS */
-// 默认: 1 2 3 4 5
-// 待审核: 2 4
-// 已生效 3
-// 被驳回 1 5
-export const GOODS_AUDIT_STATUS_LIST = F([
- [[2, 4], '待审核'],
- [[3], '已完成'],
- [[1, 5], '被驳回'],
-]);
-// 商品中心-SKU-状态(无草稿)
-export const GOODS_SKU_STATUS_NORMAL = GOODS_SKU_STATUS.slice(1);
-// 价格项,固定值; 'JG004', '内部分摊价'
-export const GOODS_PRICE_ITEMS = F([
- ['costPrice', '成本价'],
- ['salesPrice', '销售价'],
- ['activityPrice', '活动价'],
- ['marketPrice', '市场价'],
- ['distributionPrice', '分销价'],
- ['wholesalePrice', '批发价'],
- ['clearingPrice', '结算价'],
-]);
-export const ATTRIBUTE_RELATION_TYPE_LIST = F([
- [1, '分类'],
- [2, '商品'],
-]);
-// 状态:
-// 事务实例的运行状态。 共有进行中、完成、失败、没有消费者四种状态。
-// 事务实例时任务的运行状态。共有进行中、完成、失败、队列中、等待被拉取五种种状态。
-export const INSTANCE_RESULT_TYPE_LIST = F([
- ['RUNNING', '进行中'],
- ['FAILED', '失 败'],
- ['COMPLETED', '完 成'],
- ['NON_CONSUMER', '无消费者'],
- ['WAIT_TO_BE_PULLED', '等待被拉取'],
-]);
-// 存储类型
-export const FILE_STORAGE_TYPE_LIST = F([
- [1, '阿里'],
- [2, '华为'],
- [3, 'Minio'],
- [4, '腾讯'],
- [5, '七牛'],
- [6, '本地'],
- [7, '京东云'],
- [8, 'AWS'],
- [9, '百度云'],
-]);
-// :执行器注册到服务的方式,包括自动注册和手动录入
-export const EXECUTOR_TYPE_LIST = F([
- [0, '自动注册'],
- [1, '手动录入'],
-]);
-export const INPUT_BOX_TYPE_LIST = F([
- [1, '单选框'],
- [2, '复选框'],
- [3, '文本框'],
- [4, '下拉框'],
-]);
-export const INDEXES_TYPE_LIST = F([
- [0, '失效'],
- [1, '有效'],
-]);
-export const FIELD_TYPE_LIST = F([
- [0, '正序'],
- [1, '倒序'],
-]);
-export const ORDER_CAM_ON_HIERARCHY = F([
- ['channel', '渠道仓'],
- ['virtual', '虚仓'],
-]);
-export const RADIX_POINT_COMPUTED_MODE_LIST = F([
- ['trunc', '向下舍取整'],
- ['plusOne', '向上舍取整'],
-]);
-export const SHOP_TYPE_LIST = F([
- ['OnlineShop', '网店'],
- ['PhysicalShop', '门店'],
-]);
-export const CODE_RULE_FIELD_TYPE_LIST = F([
- ['SEQUENCE', '序列'],
- ['CONSTANT', '常量'],
- ['DATE', '日期'],
- ['VARIABLE', '变量'],
- ['UUID', 'UUID'],
-]);
-export const UUID_LEN_LIST = F([
- [8, '8位'],
- [16, '16位'],
- [22, '22位'],
- [32, '32位'],
-]);
-/** 取自 STOCK.WAREHOUSE_TYPE 的子集*/
-export const STOCK_WAREHOUSE_TYPE_SON_1_LIST = F([
- ['interline-virtual', '中转虚仓'],
- ['ratio-virtual', '比例虚仓'],
- ['qty-virtual', '数量虚仓'],
-]);
-/** 取自 STOCK.WAREHOUSE_TYPE 的子集*/
-export const STOCK_WAREHOUSE_TYPE_SON_2_LIST = F([
- ['interline-virtual', '中转虚仓'],
- ['ratio-virtual', '比例虚仓'],
- ['qty-virtual', '数量虚仓'],
- ['default-virtual', '默认虚仓'],
- ['real', '实仓'],
- ['logic', '逻辑仓'],
-]);
-/** 取自 STOCK.WAREHOUSE_TYPE 的子集*/
-export const STOCK_WAREHOUSE_TYPE_SON_3_LIST = F([
- ['qty-virtual', '数量虚仓'],
- ['interline-virtual', '中转虚仓'],
-]);
-/** 取自 STOCK.WAREHOUSE_TYPE 的子集*/
-export const STOCK_WAREHOUSE_TYPE_SON_4_LIST = F([
- ['real', '实仓'],
- ['ratio-virtual', '比例虚仓'],
-]);
-export const REPLENISHMENT_ORDER_PRIORITY = F([
- ['order', '订单商品缺货优先'],
- ['shop', '店铺商品缺货优先'],
-]);
-export const RELEASE_STATUS_TRUE = F([
- [false, '未发布'],
- [true, '已发布'],
-]);
-export const CONFIGURE_STATUS_TRUE = F([
- [false, '未设置'],
- [true, '已设置'],
-]);
-export const TEMPLATE_DATA_TYPE_LIST = F([
- ['VARCHAR', 'VARCHAR'],
- ['BIGINT', 'BIGINT'],
- ['DECIMAL', 'DECIMAL'],
-]);
-export const STOCK_ADJUST_STATUS = F([
- [0, '未调整'],
- [1, '已调整'],
-]);
-export const STOCK_ADJUST_TYPE_LIST = F([
- [1, '增加'],
- [2, '减少'],
-]);
-/** 取自 STOCK.RECORD_STATUS 的子集*/
-export const STOCK_LOCK_STATUS_LIST = F([
- ['wait', '待审核'],
- ['success', '审核成功'],
- ['fail', '审核失败'],
- ['abandon', '已作废'],
- ['close', '停用'],
-]);
-/** 取自 STOCK.RECORD_STATUS 的子集*/
-export const STOCK_TRANSFER_VERIFY_TYPE_LIST = F([
- ['wait', '待审核'],
- ['success', '审核成功'],
- ['fail', '审核失败'],
-]);
-/** 取自 STOCK.RECORD_STATUS 的子集*/
-export const STOCK_DISTRIBUTION_PLAN_STATUS_LIST = F([
- ['start', '开启'],
- ['stop', '暂停'],
- ['complete', '完成'],
- ['endTime', '到时截止'],
-]);
-export const VIRTUAL_GOODS_ROUTE_LIST = F([
- ['BusinessGoodsVirtualSkuGroupList', '组合商品'],
- ['BusinessGoodsVirtualSpuSonList', '子母件商品'],
- ['BusinessGoodsVirtualInstallServiceList', '安装服务'],
-]);
-export const STOCK_DELIVERY_ROUTE_LIST = F([
- ['BusinessStockDeliveryInformIndex', '出库通知单'],
- ['BusinessStockDeliveryResultIndex', '出库结果单'],
-]);
-export const STOCK_TRANSFER_ROUTE_LIST = F([
- ['BusinessStockTransferLogicIndex', '逻辑仓调拨'],
- ['BusinessStockTransferVirtualIndex', '虚仓移仓'],
-]);
-export const STOCK_VERIFY_ROUTE_LIST = F([
- ['BusinessStockVerifyLogicIndex', '逻辑仓调拨'],
- ['BusinessStockVerifyVirtualIndex', '虚仓移仓'],
- ['BusinessStockVerifyLockIndex', '库存预留'],
-]);
-export const STOCK_DISTRIBUTION_ROUTE_LIST = F([
- ['BusinessStockDistributionQtyIndex', '仓位数量分配'],
- ['BusinessStockDistributionRatioIndex', '仓位比例分配'],
- ['BusinessStockDistributionPlanIndex', '分仓计划'],
-]);
-export const LOGISTICS_COMPANY_ROUTE_LIST = F([
- ['BusinessLogisticsCompanyListIndex', '物流商列表'],
- ['BusinessLogisticsCompanyBusinessIndex', '物流业务管理'],
- ['BusinessLogisticsCompanyRelationIndex', '运费关联设置'],
- ['BusinessLogisticsCompanyFreightIndex', '运费模板'],
- ['BusinessLogisticsCompanyMapping', '物流映射'],
-]);
-export const LOGISTICS_ORDER_ROUTE_LIST = F([
- ['BusinessLogisticsOrderSale', '销售单物流'],
- ['BusinessLogisticsOrderAfter', '售后单物流'],
-]);
-export const SETTING_ORGANIZATION_ROUTE_LIST = F([
- ['SettingUserOrganizationGroup', '集团设置'],
- ['SettingUserOrganizationCompany', '下属公司'],
-]);
-export const LOGISTICS_ABNORMAL_ROUTE_LIST = F([
- ['BusinessLogisticsAbnormalDelivery', '派送异常'],
- ['BusinessLogisticsAbnormalDataAbort', '物流数据异常'],
-]);
-export const SALES_AFTER_INTERNAL_ROUTE_LIST = F([
- ['BusinessAfterInternalRefundIndex', '仅退款'],
- ['BusinessAfterInternalReturnIndex', '退货退款'],
- // ['BusinessAfterInternalExchangeIndex', '换货'],
-]);
-export const SALES_AFTER_THIRD_ROUTE_LIST = F([
- ['BusinessAfterThirdRefundIndex', '仅退款'],
- ['BusinessAfterThirdReturnIndex', '退货退款'],
- ['BusinessAfterThirdExchange', '换货'],
-]);
-export const FINANCE_PLATFORM_ROUTE_LIST = F([
- ['BusinessFinancePlatformTM', '天猫账单'],
- ['BusinessFinancePlatformJD', '京东账单'],
- ['BusinessFinancePlatformPDD', '拼多多账单'],
- ['BusinessFinancePlatformDY', '抖音账单'],
- ['BusinessFinancePlatformWPH', '唯品会账单'],
- ['BusinessFinancePlatformSNYG', '苏宁账单'],
- ['BusinessFinancePlatformXMYP', '小米账单'],
- ['BusinessFinancePlatformWYYX', '网易账单'],
-]);
-/** 物流商状态值集 */
-export const LOGISTICS_CLAIM_STATUS_LIST = F([
- [0, '待审核'],
- [1, '待核销'],
- [2, '审核通过'], // 已审核
- [3, '审核拒绝'], // 已驳回
- [4, '已取消'],
-]);
-/** 物流商状态值集 */
-export const LOGISTICS_CLAIM_CLAIMTYPE_LIST = F([
- [1, '破损'],
- [2, '丢件'],
-]);
-/** 物流商状态值集 */
-export const LOGISTICS_CLAIM_STANDARD_LIST = F([
- [0, '普通标准售价'],
- [1, '内部分摊价'],
- [2, '出厂价'],
-]);
-export const EXPRESS_STATUS_LIST = F([
- ['0', '在途'],
- ['1', '揽收'],
- ['2', '疑难'],
- ['3', '签收'],
- ['4', '退签'],
- ['5', '派件'],
- ['6', '退回'],
- ['7', '转单'],
- ['10', '待清关'],
- ['11', '清关中'],
- ['12', '已清关'],
- ['13', '清关异常'],
- ['14', '拒签'],
-]);
-export const ABNORMAL_REASON_LIST = F([
- [1, '运费模板不匹配'],
- [2, '物流不匹配'],
- [3, '业务不匹配'],
-]);
-export const ABNORMAL_STATUS_LIST = F([
- [0, '未处理'],
- [1, '已处理'],
-]);
-/** 运费模板 */
-export const LOGISTICS_COMPANY_FREGHHT_ADD_JFFS = F([
- [1, '按重量计费'],
- [2, '固定价格'],
-]);
-/** 运费模板 -> 理赔标准 */
-export const LOGISTICS_COMPANY_COMPENSATE_LIST = F([['JG004', '内部分摊价']]);
-export const SETTING_STOCK_PROCESS_TYPES = F([
- ['订单出库', '订单出库'],
- ['下架出库', '下架出库'],
- ['采购入库', '采购入库'],
- ['退货入库', '退货入库'],
-]);
-export const SETTING_STOCK_PROCESS_TYPE_JSON = {
- 订单出库: 'out-stock-process',
- 下架出库: 'out-stock-process',
- 采购入库: 'put-stock-process',
- 退货入库: 'put-stock-process',
-};
-export const ORDER_BACK_RES_LIST = F([
- ['0', '未回写'],
- ['1', '回写成功'],
- ['2', '回写失败'],
-]);
-export const THIRD_ORDER_RECEIVE_STATUS = F([
- ['0', '未收货'],
- ['1', '部分收货'],
- ['2', '已收货'],
-]);
-/** 商品行的寻源状态 */
-export const ORDER_SKU_SOURCE_STATUS_LIST = F([
-]);
-/** 补货类型 */
-export const ORDER_STOCKOUT_TYPE_LIST = F([
- [0, '订单补货'],
- [1, '店铺补货'],
-]);
-/** 退款单来源 */
-export const AFTER_REFUND_SOURCE_STATUS = F([
- ['0', '手工单'],
- ['1', '普通转单'],
- ['2', '复制单'],
-]);
-/**
- 13-仅退款 1-一审 1-待审核 31310
- 2-审核通过 31311
- 3-审核拒绝 31312
- 2-二审 1-待审核 31320
- 2-审核通过 31321
- 3-审核拒绝 31322
-14-退货退款 1-一审 1-待审核 31410
- 2-审核通过 31411
- 3-审核拒绝 31412
- 2-二审 1-待审核 31420
- 2-审核通过 31421
- 3-审核拒绝 31422
- */
-export const AFTER_REFUND_AUDIT_TABS_STATUS = F([
- ['31310,31320,31312,31322', '全部'],
- ['31310', '待一审'],
- ['31320', '待二审'],
- ['31312,31322', '审核拒绝'],
-]);
-export const AFTER_RETURN_AUDIT_TABS_STATUS = F([
- ['31410,31420,31412,31422', '全部'],
- ['31410', '待一审'],
- ['31420', '待二审'],
- ['31412,31422', '审核拒绝'],
-]);
-// 仅退款的审核状态 endorseStatus
-export const AFTER_REFUND_ENDORSE_STATUS = F([
- ['31310', '待一审'],
- ['31311', '一审通过'],
- ['31312', '一审拒绝'],
- ['31320', '待二审'],
- ['31321', '二审通过'],
- ['31322', '二审拒绝'],
-]);
-// 退货退款的审核状态 endorseStatus
-export const AFTER_RETURN_ENDORSE_STATUS = F([
- ['31410', '待一审'],
- ['31411', '一审通过'],
- ['31412', '一审拒绝'],
- ['31420', '待二审'],
- ['31421', '二审通过'],
- ['31422', '二审拒绝'],
-]);
-export const AFTER_REFUND_AUDIT_PERMISSION_RULES = [
- // 全部
- ['BusinessAfterAuditRefund_FirstAudit', 'BusinessAfterAuditRefund_SecondAudit'],
- // 待一审
- ['BusinessAfterAuditRefund_FirstAudit'],
- // 待二审
- ['BusinessAfterAuditRefund_SecondAudit'],
- // 审核拒绝
- ['BusinessOrderAuditIndex_ItIsAwayNot'],
-];
-export const AFTER_RETURN_AUDIT_PERMISSION_RULES = [
- // 全部
- ['BusinessAfterAuditReturn_FirstAudit', 'BusinessAfterAuditReturn_SecondAudit'],
- // 待一审
- ['BusinessAfterAuditReturn_FirstAudit'],
- // 待二审
- ['BusinessAfterAuditReturn_SecondAudit'],
- // 审核拒绝
- ['BusinessOrderAuditIndex_ItIsAwayNot'],
-];
-/** 内部仅退款状态 */
-export const AFTER_REFUND_TRADE_STATUS = F([
- ['0', '待审核'],
- ['3', '待退款'],
- ['4', '已完成'],
- ['5', '已拒绝'],
- ['6', '已取消'],
- ['7', '转单异常'],
-]);
-export const AFTER_REFUND_TRADE_STATUS_FOR_VIEW = AFTER_REFUND_TRADE_STATUS.slice(0, 3);
-/** 内部退货退款状态 */
-export const AFTER_RETURN_TRADE_STATUS = F([
- ['0', '待审核'],
- ['1', '待买家退货'],
- ['2', '待仓库验收'],
- ['3', '待退款'],
- ['4', '已完成'],
- ['5', '已拒绝'],
- ['6', '已取消'],
- ['7', '转单异常'],
-]);
-export const AFTER_RETURN_TRADE_STATUS_FOR_VIEW = AFTER_RETURN_TRADE_STATUS.slice(0, 5);
-export const AFTER_EXCHANGE_TRADE_STATUS = F([
- ['10', '待审核'],
- ['11', '待买家退货'],
- ['12', '待仓库验收'],
- ['13', '待仓库发货'],
- ['14', '待买家收货'],
- ['15', '已完成'],
-]);
-/** 业务中心/销售管理/业务预警-异常订单管理 */
-export const ORDER_ABNORMAL_ROUTE_LIST = F([
- ['BusinessOrderAbnormalWarning', '业务预警'],
- ['BusinessOrderAbnormalSyncAbnormal', '数据异常'],
-]);
-/** 预警类型 异常类型 */
-export const ORDER_ABNORMAL_TYPE_LIST = F([
- [0, '审核超时'],
- [1, '缺货超时'],
- [2, '发货超时'],
- [3, '订单更新超时'],
-]);
-/** 退货退款状态 */
-export const AFTER_THIRD_RETURN_STATUS_LIST = F([
- [0, '待审核'],
- [1, '待买家退货'],
- [2, '待仓库验收'],
- [3, '待退款'],
- [4, '退款完成'],
- [5, '买家取消'],
- [6, '关闭退货退款'],
- [7, '拒绝退货'],
-]);
-/** 换货状态 */
-export const AFTER_THIRD_EXCHANGE_STATUS_LIST = F([
- [0, '待审核'],
- [1, '待买家退货'],
- [2, '待发货'],
- [3, '待买家收货'],
- [4, '完成'],
- [5, '买家取消'],
- [6, '关闭换货'],
- [7, '拒绝换货'],
-]);
-/** 三方售后单/ 结算方式 */
-export const AFTER_INTERNAL_RETURN_PAY_LIST = F([[1, '网店平台退款']]);
-/** 三方售后单/ 转单状态 */
-export const AFTER_THIRD_REFUND_TRANSFER_STATUS = F([
- [0, '正常'],
- [1, '异常'],
-]);
-/** 三方售后单/ 仓库收货状态 */
-// export const AFTER_INTERNAL_RETURN_WAREHOUSE_RECEIVING_STATUS = F([[1, '未收货']]);
-/** 待审核售后单 */
-export const AFTER_AUDIT_ROUTE_LIST = F([
- ['BusinessAfterAuditRefundIndex', '仅退款'],
- ['BusinessAfterAuditReturnIndex', '退货退款'],
-]);
-/** 待审核售后单-退货退款/ 售后类型 */
-export const AFTER_AUDIT_RETURN_TYPE_LIST = F([
- [0, '退货'],
- [1, '换货'],
-]);
-/** 物流策略-设置订单金额 */
-/** 待审核售后单 */
-export const STRATEGY_AUTO_REPLENISH_ROUTE_LIST = F([
- ['BusinessStrategyAutoReplenishOrder', '订单商品缺货'],
- ['BusinessStrategyAutoReplenishOnlineStore', '网店商品缺货'],
-]);
-/** 异常库存管理 router */
-export const STOCK_ABNORMAL_ROUTE_LIST = F([
- ['BusinessStockAbnormalOrder', '订单缺货'],
- ['BusinessStockAbnormalWarehouse', '仓库缺货'],
-]);
-/** 支付状态 */
-export const STOCK_ABNORMAL_ORDER_STATUS_LIST = F([
- [0, '待处理'],
- [1, '已采购'],
- [2, '已调拨'],
- [3, '已移仓'],
-]);
-/* ************************************** 寻源策略部分 start ****************************************** */
-/** 异常库存管理 router */
-export const STRATEGY_SOURCE_ROUTE_LIST = F([
-]);
-/* ************************************** 寻源策略部分 end ****************************************** */
-/* ************************************** 内部销售单 start ****************************************** */
-/** 订单 —— 商品 是否赠品 */
-export const SKU_GIFT_TYPE_LIST = F([
- ['0', '否'],
- ['1', '赠品'],
- ['2', '随品'],
-]);
-export const SKU_GIFT_TYPE_LIST_FOR_CREATE = F([
- ['0', '否'],
- ['1', '是'],
-]);
-/** 订单 —— 交易类型 tradeType */
-export const ORDER_TRADE_TYPE_LIST = F([['101', '销售单']]);
-/** 订单 —— 业务类型 businessType */
-export const ORDER_BUSINESS_TYPE_LIST = F([
- ['common', '普通订单'],
- ['o2o', 'O2O订单'],
-]);
-export const ORDER_BUSINESS_TYPES = {
- O2O: 'o2o',
- COMMON: 'common',
-};
-/** 订单 —— 提货方式 takingDeliveryWay */
-export const ORDER_TAKING_DELIVERY_TYPE_LIST = F([
- ['1', '门店自提'],
- ['2', '物流配送'],
-]);
-/** 订单 —— 创建类型 / 订单来源 actionType */
-export const ORDER_ACTION_TYPE_LIST = F([
- ['101', '普通转单'],
- ['201', '手工单'],
- ['202', '复制单'],
-]);
-/** 内部销售单 --> 订单聚合状态 */
-export const ORDER_INTERNAL_ORDER_STATUS_LIST = F([
- ['0', '未完成'],
- ['1', '已完成'],
- ['2', '已关闭'],
- ['3', '异常'],
-]);
-/** 内部销售O2O订单 --> O2O 订单聚合状态 */
-export const ORDER_INTERNAL_O2O_STATUS_LIST = F([
- ['11', '待审核'],
- ['22', '待确认收货'],
- ['33', '已完成'],
-]);
-/** 三方销售单 --> 订单聚合状态 取自内部单,文字修改 */
-export const ORDER_THIRD_ORDER_STATUS_LIST = F([
- ['0', '待发货'],
- ['1', '已完成'],
- ['2', '已关闭'],
- ['3', '异常'],
-]);
-// 内部销售单 --> 寻源前待审核状态
-export const ORDER_INTERNAL_ORDER_AUDIT_TABS_BEFORE_SOURCE = F([
-]);
-// 内部销售单 --> 发货前待审核状态
-export const ORDER_INTERNAL_ORDER_AUDIT_TABS_BEFORE_PREEMPT = F([
- ['30411,30421,30413,30423', '全部'],
- ['30411', '待一审'],
- ['30421', '待二审'],
- ['30413,30423', '审核拒绝'],
-]);
-// 内部普通销售单 --> 审核权限; 与 路由表 对应
-export const ORDER_INTERNAL_ORDER_AUDIT_PERMISSION_RULES = [
- // 发货前
- [
- // 全部
- ['BusinessOrderAuditIndex_PreemptFirst', 'BusinessOrderAuditIndex_PreemptSecond'],
- // 待一审
- ['BusinessOrderAuditIndex_PreemptFirst'],
- // 待二审
- ['BusinessOrderAuditIndex_PreemptSecond'],
- // 审核拒绝
- ['BusinessOrderAuditIndex_ItIsAwayNot'],
- ],
-];
-// 内部o2o销售单 --> 审核权限; 与 路由表 对应
-export const ORDER_INTERNAL_O2O_AUDIT_PERMISSION_RULES = [
- [
- // 全部
- ['BusinessO2oAuditIndex_First', 'BusinessO2oAuditIndex_Second'],
- // 待一审
- ['BusinessO2oAuditIndex_First'],
- // 待二审
- ['BusinessO2oAuditIndex_Second'],
- // 审核拒绝
- ['BusinessOrderAuditIndex_ItIsAwayNot'],
- ],
-];
-/** 订单 —— 预占状态 */
-export const ORDER_INTERNAL_PREEMPT_STATUS_LIST = F([
- ['30101', '全部待预占'],
- ['30102', '全部预占成功'],
- ['30103', '全部预占失败'],
- ['30104', '部分预占'],
- ['31010', '取消预占'], // 订单取消时,预占也同时取消,状态码与订单取消状态相同
-]);
-export const ORDER_INTERNAL_SKU_PREEMPT_STATUS_LIST = F([
- ['20101', '全部待预占'],
- ['20102', '全部预占成功'],
- ['20103', '全部预占失败'],
- ['20104', '部分预占'],
- ['21010', '取消预占'], // 订单取消时,预占也同时取消,状态码与订单取消状态相同
-]);
-export const ORDER_INTERNAL_LINE_PREEMPT_STATUS_LIST = F([
- ['10101', '待预占'],
- ['10102', '预占成功'],
- ['10103', '预占失败'],
- ['10122', '解占成功'],
- ['11010', '取消预占'], // 订单取消时,预占也同时取消,状态码与订单取消状态相同
-]);
-// 预占管理-预占状态
-export const ORDER_ADVANCE_PREEMPT_STATUS_LIST = F([
- [0, '全部待预占'],
- [1, '全部预占成功'],
- [3, '全部预占失败'],
- [2, '部分预占'],
- [4, '取消预占'],
-]);
-/** 订单 —— 预占回写状态 */
-export const ORDER_INTERNAL_PREEMPT_BACK_STATUS_LIST = F([
- ['30111', '全部待回写'],
- ['30112', '全部回写成功'],
- ['30113', '全部回写失败'],
- ['30114', '部分回写'],
-]);
-export const ORDER_INTERNAL_SKU_PREEMPT_BACK_STATUS_LIST = F([
- ['20111', '全部待回写'],
- ['20112', '全部回写成功'],
- ['20113', '全部回写失败'],
- ['20114', '部分回写'],
-]);
-export const ORDER_INTERNAL_LINE_PREEMPT_BACK_STATUS_LIST = F([
- ['10111', '待回写'],
- ['10112', '回写成功'],
- ['10113', '回写失败'],
-]);
-/** 订单 —— 寻源状态 */
-export const ORDER_INTERNAL_SOURCE_STATUS_LIST = F([
-]);
-export const ORDER_INTERNAL_SKU_SOURCE_STATUS_LIST = F([
-]);
-export const ORDER_INTERNAL_LINE_SOURCE_STATUS_LIST = F([
-]);
-/** 订单 —— 发货状态 */
-export const ORDER_INTERNAL_DELIVER_STATUS_LIST = F([
- ['30510', '初始'],
- ['30511', '全部待发货'],
- ['30512', '全部发货成功'],
- ['30513', '全部发货失败'],
- ['30514', '部分发货'],
-]);
-export const ORDER_INTERNAL_SKU_DELIVER_STATUS_LIST = F([
- ['20510', '初始'],
- ['20511', '全部待发货'],
- ['20512', '全部发货成功'],
- ['20513', '全部发货失败'],
- ['20514', '部分发货'],
-]);
-export const ORDER_INTERNAL_LINE_DELIVER_STATUS_LIST = F([
- ['10510', '初始'],
- ['10511', '待发货'],
- ['10512', '发货成功'],
- ['10513', '发货失败'],
-]);
-/** 订单 —— 收货状态 */
-export const ORDER_INTERNAL_RECEIVING_STATUS_LIST = F([
- ['30520', '初始'],
- ['30521', '待收货'],
- ['30522', '全部已收货'],
- ['30523', '部分收货'],
-]);
-export const ORDER_INTERNAL_SKU_RECEIVING_STATUS_LIST = F([
- ['20520', '初始'],
- ['20521', '待收货'],
- ['20522', '全部已收货'],
- ['20523', '部分收货'],
-]);
-export const ORDER_INTERNAL_LINE_RECEIVING_STATUS_LIST = F([
- ['10520', '初始'],
- ['10521', '待收货'],
- ['10522', '已收货'],
-]);
-/** 订单 —— 库存回写状态 */
-export const ORDER_INTERNAL_STOCK_BACK_STATUS_LIST = F([
- ['30531', '全部待回写'],
- ['30532', '全部回写成功'],
- ['30533', '全部回写失败'],
- ['30534', '部分回写'],
-]);
-export const ORDER_INTERNAL_SKU_STOCK_BACK_STATUS_LIST = F([
- ['20531', '全部待回写'],
- ['20532', '全部回写成功'],
- ['20533', '全部回写失败'],
- ['20534', '部分回写'],
-]);
-export const ORDER_INTERNAL_LINE_STOCK_BACK_STATUS_LIST = F([
- ['10531', '待回写'],
- ['10532', '回写成功'],
- ['10533', '回写失败'],
-]);
-/** 订单 —— 不再履约 */
-export const ORDER_INTERNAL_OVER_STATUS_LIST = F([
- ['31000', '正常履约完成'],
- ['31010', '订单取消'],
-]);
-/** 订单 —— 挂起状态 */
-export const ORDER_INTERNAL_HAND_UP_STATUS_LIST = F([
- ['31200', '未挂起'],
- ['31201', '全部挂起成功'],
- ['31202', '全部挂起失败'],
- ['31203', '部分挂起'],
-]);
-export const ORDER_INTERNAL_SKU_HAND_UP_STATUS_LIST = F([
- ['21200', '未挂起'],
- ['21201', '全部挂起成功'],
- ['21202', '全部挂起失败'],
- ['21203', '部分挂起'],
-]);
-export const ORDER_INTERNAL_LINE_HAND_UP_STATUS_LIST = F([
- ['11210', ''],
- ['11200', '未挂起'],
- ['11211', '系统挂起成功'],
- ['11212', '系统挂起失败'],
- ['11213', '系统解挂成功'],
- ['11214', '系统解挂失败'],
- ['11221', '人工挂起成功'],
- ['11222', '人工挂起失败'],
- ['11223', '人工解挂成功'],
- ['11224', '人工解挂失败'],
-]);
-/** 退款状态 */
-export const ORDER_INTERNAL_REFUND_STATUS_LIST = F([
- [0, '未退款'],
- [1, '部分退款'],
- [2, '全部退款'],
-]);
-/** 审核状态 */
-export const ORDER_INTERNAL_AUDIT_STATUS_LIST = F([
- [30211, '待一审'],
- [30221, '待二审'],
- [30212, '一审通过'],
- [30222, '二审通过'],
- [30213, '一审不通过'],
- [30223, '二审不通过'],
- [30411, '待一审'],
- [30421, '待二审'],
- [30412, '一审通过'],
- [30422, '二审通过'],
- [30413, '一审不通过'],
- [30423, '二审不通过'],
-]);
-/** 支付方式 */
-export const ORDER_INTERNAL_PAYMENT_LIST = F([
- ['alipay', '支付宝'],
- ['tenpay', '财付通'],
- ['chinabank', '网银在线'],
- ['cod', '货到付款'],
- ['bank', '银行汇款/转账'],
- ['other', '其他'],
-]);
-/** 支付状态 */
-export const ORDER_INTERNAL_PAYMENT_STATUS_LIST = F([
- [0, '未支付'],
- [1, '已支付'],
-]);
-/* ************************************** 内部销售单 end ****************************************** */
-/* ************************************** 内部售后单 start ****************************************** */
-/** 退款单类型 */
-export const INTERNAL_AFTER_REFUND_ORDER_TYPE_LIST = F([[0, '普通退单']]);
-/** 退款类型 */
-export const INTERNAL_AFTER_REFUND_TYPE_LIST = F([[1, '未发货仅退款']]);
-export const INTERNAL_AFTER_RETURN_TYPE_LIST = F([[1, '退货退款']]);
-/** 退款阶段 */
-export const INTERNAL_AFTER_STAGE_STATUS = F([
- [0, '售中'],
- [1, '售后'],
-]);
-/** 退货原因 */
-export const INTERNAL_AFTER_REASON_STATUS = F([[0, '7天无理由退货']]);
-/* ************************************** 内部售后单 end ****************************************** */
-/* ************************************** 三方销售单 start ****************************************** */
-/** 支付状态 */
-export const ORDER_THIRD_PAYMENT_STATUS_LIST = F([[1, '已支付']]);
-/** 平台收货状态 */
-export const ORDER_THIRD_RECEIVING_STATUS_LIST = F([
- [0, '未收货'],
- [1, '已收货'],
-]);
-/* ************************************** 三方销售单 end ****************************************** */
-/* ************************************** 出库通知单 start ****************************************** */
-export const ORDER_STOCK_OUT_TYPE_LIST = F([
- [0, '待通知WMS'],
- [1, '待出库'],
- [2, '通知WMS失败'],
- [3, '全部出库'],
- [4, '部分出库'],
- [5, '取消出库'],
-]);
-/* ************************************** 出库通知单 end ****************************************** */
-/* ************************************** 出库结果单 start ****************************************** */
-export const ORDER_STOCK_RESULT_STATUS_LIST = F([[0, '全部出库']]);
-/* ************************************** 出库结果单 end ****************************************** */
-/* ************************************** 销售审核策略 start ****************************************** */
-/** 销售审核策略 router */
-export const STRATEGY_MARKETINGAUDIT_ROUTE_LIST = F([
- ['SettingOrderAuditStrategy', '订单审核策略'],
- ['SettingOrderAuditGoods', '订单商品行审核策略'],
-]);
-/* ************************************** 销售审核策略 end ****************************************** */
-/* ************************************** 财务管理 对账 start ****************************************** */
-export const FINANCE_ORIGINAL_ROUTE_LIST = F([
- ['BusinessFinancePlatformOriginalTmallIndex', '天猫账单'],
- ['BusinessFinancePlatformOriginalJdcomIndex', '京东账单'],
-]);
-// 解析状态
-export const FINANCE_PLATFORM_PARSING_STATUS = F([
- [0, '解析成功'],
- [1, '无需解析'],
-]);
-export const FINANCE_PLATFORM_PARSING_STATUS1 = F([
- [0, '解析失败'],
- [1, '解析成功'],
- [2, '无需解析'],
-]);
-// 对账状态
-export const FINANCE_PLATFORM_CHECKING_STATUS = F([
- [0, '已对账'],
- [1, '未对账'],
- [2, '无需对账'],
-]);
-export const FINANCE_PLATFORM_CHECKING_STATUS1 = F([
- [1, '已对账'],
- [0, '未对账'],
-]);
-// 业务类型
-export const FINANCE_PLATFORM_BUSINESS_TYPES = F([
- [0, '货款'],
- [1, '佣金'],
-]);
-// 流水类型
-export const FINANCE_PLATFORM_FLOW_TYPES = F([
- ['0', '正流水'],
- ['1', '负流水'],
-]);
-// 业务中心-财务管理-对账管理-已对账列表 状态
-export const FINANCE_CHECKING_CHECKED_STATUS = F([
- [true, '已对账'],
- [false, '金额异常'],
-]);
-// 财务管理-对账管理-物流对账 物流状态
-export const FINANCE_CHECKING_LOGISTIC_SIGN_STATUS = F([
- [0, '已签收'],
- [1, '已退回'],
- [2, '拒签'],
-]);
-// 财务管理-对账管理-物流对账 结算状态
-export const FINANCE_CHECKING_LOGISTIC_SETTLE_STATUS = F([
- [0, '已结算'],
- [1, '未结算'],
-]);
-// 财务管理-对账管理-物流对账 tab
-export const FINANCE_CHECKING_LOGISTIC_COST_DETAIL_TYPES = F([
- [null, '所有费用明细'],
- ['1', '匹配费用明细'],
- ['2', '未匹配费用明细'],
-]);
-// 财务管理-对账管理-物流对账 匹配状态
-export const FINANCE_CHECKING_LOGISTIC_MATCHING_TYPES = F([
- [0, '匹配'],
- [1, '匹配(金额差异)'],
- [2, '不匹配'],
-]);
-// 财务管理-对账管理-物流对账-内部物流单列表 费用确认状态
-export const FINANCE_CHECKING_LOGISTIC_COST_CONFIRM_STATUS = F([
- [0, '已确认'],
- [1, '未确认'],
- [2, '金额差异'],
-]);
-/* ************************************** 财务管理 对账 end ****************************************** */
-/* ************************************** 财务管理 平台账单解析策略设置 Start ****************************************** */
-// 账单类型
-export const FINANCE_PARSESTRATEGY_BULL_TYPES = F([
- [0, '销售收入'],
- [1, '退款支出'],
-]);
-// 金额取值
-export const FINANCE_PARSESTRATEGY_PRICE_VALUE_TYPES = F([
- [0, '取固定字段'],
- [1, '按公式计算'],
-]);
-/* ************************************** 财务管理 平台账单解析策略设置 end ****************************************** */
-/* ************************************** 财务管理 结算 Start ****************************************** */
-// 财务管理-结算管理-结算列表 订单类型
-export const FINANCE_SETTLEMENT_ORDER_TYPES = F([
- [0, '销售单'],
- [1, '仅退款单'],
- [2, '退货退款单'],
- [3, '换货单'],
-]);
-// 财务管理-结算管理-结算列表 售后单类型
-export const FINANCE_SETTLEMENT_AFTER_TYPES = F([
- [1, '仅退款单'],
- [2, '退货退款单'],
- [3, '换货单'],
-]);
-// 财务管理-结算管理-结算列表 状态
-export const FINANCE_SETTLEMENT_UNSETTLED_STATUS = F([
- [0, '已确认'],
- [1, '待确认'],
-]);
-// 财务管理-结算管理-结算列表 生成方式
-export const FINANCE_SETTLEMENT_UNSETTLED_CREATE_TYPES = F([
- [0, '手动'],
- [1, '自动'],
-]);
-// 财务管理-结算管理-未结算列表 对账状态
-export const FINANCE_SETTLEMENT_UNSETTLED_CHECKED_STATUS = F([
- [true, '正常'],
- [false, '异常'],
-]);
-// 结算管理-策略配置-结算策略配置-订单结算策略-新增 - 满足条件
-export const FINANCE_SETTLEMENT_STRATEGY_ORDER_CONDITIONS = F([
- ['all', '满足以下所有条件'],
- ['one', '满足以下任一条件'],
-]);
-// 结算管理-策略配置-结算策略配置-订单结算策略-新增 - 满足条件
-export const FINANCE_SETTLEMENT_STRATEGY_ORDER_CONDITION_TYPES = F([
- [0, '销售渠道'],
- [1, '订单来源'],
- [2, '订单类型'],
- [3, '订单标记'],
-]);
-// 结算管理-策略配置-结算策略配置-订单结算策略-新增 - 订单来源
-export const FINANCE_SETTLEMENT_STRATEGY_ORDER_SOURCE = F([
- [0, '三方平台下载'],
- [1, '手工创建'],
- [2, '文件导入'],
-]);
-// 结算管理-策略配置-结算策略配置-订单结算策略-新增 - 订单来源
-export const FINANCE_SETTLEMENT_STRATEGY_ORDER_TAGS = F([
- [0, '缺货'],
- [1, '异常'],
-]);
-// 结算管理-策略配置-结算策略配置-订单结算策略-新增 - 触发节点
-export const FINANCE_SETTLEMENT_STRATEGY_ORDER_NODES = F([
- [0, '订单完成'],
- [1, '发货完成'],
-]);
-// 结算管理-策略配置-结算策略配置-售后单结算策略-新增
-export const FINANCE_SETTLEMENT_STRATEGY_AFTER_CONDITION_TYPES = F([
- [0, '售后渠道'],
- [1, '售后单来源'],
- [2, '售后单类型'],
-]);
-// 结算管理-策略配置-结算策略配置-售后单结算策略-新增 - 触发节点
-export const FINANCE_SETTLEMENT_STRATEGY_AFTER_NODES = F([
- [0, '售后完成'],
- [1, '审核完成'],
-]);
-/* ************************************** 财务管理 结算 end ****************************************** */
-/* ************************************** 业务中心-营销管理-营销商品管理 Start ****************************************** */
-export const MARKETING_COMMODITY_MANAGEMENT_ROUTER = F([
- ['BusinessMarketingGoodsGiftRule', '赠品规则管理'],
- ['BusinessMarketingGoodsWithPackageRule', '随包规则管理'],
-]);
-export const MARKETING_COMMODITY_MANAGEMENT_STATUS = F([
- [0, '未开始'],
- [1, '进行中'],
- [2, '已结束'],
- [3, '已中止'],
-]);
-export const MARKETING_COMMODITY_MANAGEMENT_TIME_TYPES = F([
- [0, '三方下单时间'],
- [1, '支付时间'],
-]);
-export const MARKETING_COMMODITY_MANAGEMENT_GIFT_STORE_TYPES = F([
- [1, '所有店铺'],
- [0, '指定店铺'],
-]);
-export const MARKETING_COMMODITY_MANAGEMENT_GIFT_GOODS_TYPES = F([
- [1, '店铺内所有商品'],
- [0, '指定商品'],
-]);
-/** 赠送条件 */
-export const MARKETING_COMMODITY_MANAGEMENT_GIFT_TYPES = F([
- // [0, '满元赠'],
- [1, '满件赠'],
-]);
-export const MARKETING_COMMODITY_MANAGEMENT_PACKAGE_STATUS = F([
- [0, '未开始'],
- [1, '进行中'],
-]);
-/* ************************************** 业务中心-营销管理-营销商品管理 end ****************************************** */
-/* ************************************** 业务中心-标签管理-系统标签 Start ****************************************** */
-// 标签类型
-export const LABEL_SYS_TYPES = F([
- [0, '手工单'],
- [1, '复制单'],
- [2, '补发单'],
- [3, '退货单'],
- [4, '退款单'],
- [5, '换货单'],
- [6, '订单缺货'],
- [7, '订单异常'],
-]);
-// BjTag 组件的样式
-export const LABEL_HAND_COLORS = F([
- // [ value , name ],
- ['orange', 'orange橙色'],
- ['yellow-dark', 'yellow-dark暗黄'],
- ['purple-light', 'purple-light淡紫'],
- ['brown-light', 'brown-light淡棕'],
- ['blue-purple', 'blue-purple蓝紫'],
- ['blue-light', 'blue-light淡蓝'],
- ['green-light', 'green-light淡绿'],
- ['orange-red', 'orange-red橘黄'],
-]);
-/* ************************************** 业务中心-标签管理-系统标签 end ****************************************** */
-// 业务中心/销售管理/订单缺货管理
-export const ORDER_SHORT_ROUTER = F([
- ['BusinessOrderShortIndexSetting', '订单缺货设置'],
- ['BusinessOrderShortIndexWaiting', '订单待发货'],
-]);
-// 商品中心-分类管理-类型
-export const GOODS_CLASSIFY_TYPES = F([
- [false, '普通类目'],
- [true, '叶子类目'],
-]);
-// 商品中心-属性来源 有 GOODS_ATTRIBUTE_SOURCES_JSON
-export const GOODS_ATTRIBUTE_SOURCES = F([
- [0, '新增'], // 商品属性
- [1, '系统默认'],
- [2, '父级分类'], // 分类属性
- [3, '附加属性'],
-]);
-// SKU 的 属性 分类
-export const GOODS_ATTRIBUTE_TYPES = F([
- [0, '商品属性'],
- [1, '系统默认'],
- [2, '分类属性'],
- [3, '附加属性'],
-]);
-export const BPMN_STATUS_LIST = F([
- [0, '未布署'],
- [1, '已布署'],
-]);
-/** 标签管理 */
-export const BUSINESS_LABEL_ROUTE_LIST = F([
- ['BusinessLabelSysIndex', '系统标签'],
- ['BusinessLabelHandIndex', '人工标签'],
-]);
-export const SETTING_PERMISSION_TYPE_LIST = F([
- ['api', '菜单'],
- ['btn', '按钮'],
- ['page', '页面'],
- ['tab', '标签'],
-]);
-export const SETTING_PERMISSION_TYPE_COLOR_LIST = F([
- ['api', 'info'],
- ['btn', 'warning'],
- ['tab', 'danger'],
- ['page', 'success'],
-]);
-export const ENDORSE_STATUS_LIST = F([
- ['0', '待审核'],
- ['1', '已审核'],
-]);
-/** 报表管理 */
-export const BUSINESS_REPORT_SALE_ROUTE_LIST = F([
- ['BusinessReportSaleCensusIndex', '销售统计表'],
- ['BusinessReportSaleAnalysisIndex', '销售分析表'],
- ['BusinessReportSaleGoodsIndex', '销售商品统计表'],
- ['BusinessReportSaleShopIndex', '店铺销售表'],
-]);
-export const BUSINESS_REPORT_STOCK_ROUTE_LIST = F([
- ['BusinessReportStockDeliverIndex', '发货汇总表'],
- ['BusinessReportStockOutIndex', '缺货统计表'],
-]);
-export const REPORT_SALE_STATISTICS_TIME_LIST = F([
- [1, '按三方下单时间'],
- [2, '按内部创建时间'],
-]);
-export const REPORT_SALE_STATISTICS_SUMMARY_LIST = F([
- [1, '按渠道'],
- [2, '按月份'],
- [3, '按地区'],
-]);
-/** 报表管理end */
-export const CHINESE_NUM = ['零', '一', '二', '三', '四', '五', '六', '七', '八', '九'];
diff --git a/front-end/src/utils/error-log.js b/front-end/src/utils/error-log.js
deleted file mode 100644
index 78dafdf..0000000
--- a/front-end/src/utils/error-log.js
+++ /dev/null
@@ -1,35 +0,0 @@
-import Vue from 'vue';
-import store from '@/store';
-import { isString, isArray } from '@/utils/validate';
-import settings from '@/settings';
-
-// you can set in settings.js
-// errorLog:'production' | ['production', 'development']
-const { errorLog: needErrorLog } = settings;
-
-function checkNeed() {
- const env = process.env.NODE_ENV;
- if (isString(needErrorLog)) {
- return env === needErrorLog;
- }
- if (isArray(needErrorLog)) {
- return needErrorLog.includes(env);
- }
- return false;
-}
-
-if (checkNeed()) {
- Vue.config.errorHandler = function(err, vm, info, a) {
- // Don't ask me why I use Vue.nextTick, it just a hack.
- // detail see https://forum.vuejs.org/t/dispatch-in-vue-config-errorhandler-has-some-problem/23500
- Vue.nextTick(() => {
- store.dispatch('errorLog/addErrorLog', {
- err,
- vm,
- info,
- url: window.location.href
- });
- console.error(err, info);
- });
- };
-}
diff --git a/front-end/src/utils/get-page-title.js b/front-end/src/utils/get-page-title.js
deleted file mode 100644
index 3158902..0000000
--- a/front-end/src/utils/get-page-title.js
+++ /dev/null
@@ -1,10 +0,0 @@
-import defaultSettings from '@/settings';
-
-const title = defaultSettings.title || 'Vue Element Admin';
-
-export default function getPageTitle(pageTitle) {
- if (pageTitle) {
- return `${pageTitle} - ${title}`;
- }
- return `${title}`;
-}
diff --git a/front-end/src/utils/index.js b/front-end/src/utils/index.js
deleted file mode 100644
index b2802f5..0000000
--- a/front-end/src/utils/index.js
+++ /dev/null
@@ -1,911 +0,0 @@
-/**
- * Created by PanJiaChen on 16/11/18.
- */
-import html2pdf from 'html2pdf.js';
-/**
- * Parse the time to string
- * @param {(Object|string|number)} time
- * @param {string} cFormat
- * @returns {string | null}
- */
-export function parseTime(time, cFormat) {
- if (arguments.length === 0 || !time) {
- return null;
- }
- const format = cFormat || '{y}-{m}-{d} {h}:{i}:{s}';
- let date;
- if (typeof time === 'object') {
- date = time;
- } else {
- if (typeof time === 'string') {
- if (/^[0-9]+$/.test(time)) {
- // support "1548221490638"
- time = parseInt(time);
- } else {
- // support safari
- // https://stackoverflow.com/questions/4310953/invalid-date-in-safari
- time = time.replace(new RegExp(/-/gm), '/');
- }
- }
-
- if (typeof time === 'number' && time.toString().length === 10) {
- time = time * 1000;
- }
- date = new Date(time);
- }
- const formatObj = {
- y: date.getFullYear(),
- m: date.getMonth() + 1,
- d: date.getDate(),
- h: date.getHours(),
- i: date.getMinutes(),
- s: date.getSeconds(),
- a: date.getDay(),
- };
- const time_str = format.replace(/{([ymdhisa])+}/g, (result, key) => {
- const value = formatObj[key];
- // Note: getDay() returns 0 on Sunday
- if (key === 'a') {
- return ['日', '一', '二', '三', '四', '五', '六'][value];
- }
- return value.toString().padStart(2, '0');
- });
- return time_str;
-}
-
-/**
- * @param {number} time
- * @param {string} option
- * @returns {string}
- */
-export function formatTime(time, option) {
- if (('' + time).length === 10) {
- time = parseInt(time) * 1000;
- } else {
- time = +time;
- }
- const d = new Date(time);
- const now = Date.now();
-
- const diff = (now - d) / 1000;
-
- if (diff < 30) {
- return '刚刚';
- } else if (diff < 3600) {
- // less 1 hour
- return Math.ceil(diff / 60) + '分钟前';
- } else if (diff < 3600 * 24) {
- return Math.ceil(diff / 3600) + '小时前';
- } else if (diff < 3600 * 24 * 2) {
- return '1天前';
- }
- if (option) {
- return parseTime(time, option);
- } else {
- return (
- d.getMonth() + 1 + '月' + d.getDate() + '日' + d.getHours() + '时' + d.getMinutes() + '分'
- );
- }
-}
-
-/**
- * @param {string} url
- * @returns {Object}
- */
-export function getQueryObject(url) {
- url = url == null ? window.location.href : url;
- const search = url.substring(url.lastIndexOf('?') + 1);
- const obj = {};
- const reg = /([^?&=]+)=([^?&=]*)/g;
- search.replace(reg, (rs, $1, $2) => {
- const name = decodeURIComponent($1);
- let val = decodeURIComponent($2);
- val = String(val);
- obj[name] = val;
- return rs;
- });
- return obj;
-}
-
-/**
- * @param {string} input value
- * @returns {number} output value
- */
-export function byteLength(str) {
- // returns the byte length of an utf8 string
- let s = str.length;
- for (var i = str.length - 1; i >= 0; i--) {
- const code = str.charCodeAt(i);
- if (code > 0x7f && code <= 0x7ff) s++;
- else if (code > 0x7ff && code <= 0xffff) s += 2;
- if (code >= 0xdc00 && code <= 0xdfff) i--;
- }
- return s;
-}
-
-/**
- * @param {Array} actual
- * @returns {Array}
- */
-export function cleanArray(actual) {
- const newArray = [];
- for (let i = 0; i < actual.length; i++) {
- if (actual[i]) {
- newArray.push(actual[i]);
- }
- }
- return newArray;
-}
-
-/**
- * @param {Object} json
- * @returns {Array}
- */
-export function param(json) {
- if (!json) return '';
- return cleanArray(
- Object.keys(json).map(key => {
- if (json[key] === undefined) return '';
- return encodeURIComponent(key) + '=' + encodeURIComponent(json[key]);
- }),
- ).join('&');
-}
-
-/**
- * @param {string} url
- * @returns {Object}
- */
-export function param2Obj(url) {
- const search = decodeURIComponent(url.split('?')[1]).replace(/\+/g, ' ');
- if (!search) {
- return {};
- }
- const obj = {};
- const searchArr = search.split('&');
- searchArr.forEach(v => {
- const index = v.indexOf('=');
- if (index !== -1) {
- const name = v.substring(0, index);
- const val = v.substring(index + 1, v.length);
- obj[name] = val;
- }
- });
- return obj;
-}
-
-/**
- * @param {string} val
- * @returns {string}
- */
-export function html2Text(val) {
- const div = document.createElement('div');
- div.innerHTML = val;
- return div.textContent || div.innerText;
-}
-
-/**
- * Merges two objects, giving the last one precedence
- * @param {Object} target
- * @param {(Object|Array)} source
- * @returns {Object}
- */
-export function objectMerge(target, source) {
- if (typeof target !== 'object') {
- target = {};
- }
- if (Array.isArray(source)) {
- return source.slice();
- }
- Object.keys(source).forEach(property => {
- const sourceProperty = source[property];
- if (typeof sourceProperty === 'object') {
- target[property] = objectMerge(target[property], sourceProperty);
- } else {
- target[property] = sourceProperty;
- }
- });
- return target;
-}
-
-/**
- * @param {HTMLElement} element
- * @param {string} className
- */
-export function toggleClass(element, className) {
- if (!element || !className) {
- return;
- }
- let classString = element.className;
- const nameIndex = classString.indexOf(className);
- if (nameIndex === -1) {
- classString += '' + className;
- } else {
- classString =
- classString.substr(0, nameIndex) + classString.substr(nameIndex + className.length);
- }
- element.className = classString;
-}
-
-/**
- * @param {string} type
- * @returns {Date}
- */
-export function getTime(type) {
- if (type === 'start') {
- return new Date().getTime() - 3600 * 1000 * 24 * 90;
- } else {
- return new Date(new Date().toDateString());
- }
-}
-
-/**
- * @param {Function} func
- * @param {number} wait
- * @param {boolean} immediate
- * @return {*}
- */
-export function debounce(func, wait, immediate) {
- let timeout, args, context, timestamp, result;
-
- const later = function () {
- // 据上一次触发时间间隔
- const last = +new Date() - timestamp;
-
- // 上次被包装函数被调用时间间隔 last 小于设定时间间隔 wait
- if (last < wait && last > 0) {
- timeout = setTimeout(later, wait - last);
- } else {
- timeout = null;
- // 如果设定为immediate===true,因为开始边界已经调用过了此处无需调用
- if (!immediate) {
- result = func.apply(context, args);
- if (!timeout) context = args = null;
- }
- }
- };
-
- return function (...args) {
- context = this;
- timestamp = +new Date();
- const callNow = immediate && !timeout;
- // 如果延时不存在,重新设定延时
- if (!timeout) timeout = setTimeout(later, wait);
- if (callNow) {
- result = func.apply(context, args);
- context = args = null;
- }
-
- return result;
- };
-}
-/**
- * This is just a simple version of deep copy
- * Has a lot of edge cases bug
- * If you want to use a perfect deep copy, use lodash's _.cloneDeep
- * @param {Object} source
- * @returns {Object}
- */
-export function deepClone(source) {
- if (!source && typeof source !== 'object') {
- throw new Error('error arguments', 'deepClone');
- }
- const targetObj = source.constructor === Array ? [] : {};
- Object.keys(source).forEach(keys => {
- if (source[keys] && typeof source[keys] === 'object') {
- targetObj[keys] = deepClone(source[keys]);
- } else {
- targetObj[keys] = source[keys];
- }
- });
- return targetObj;
-}
-
-/**
- * @param {Array} arr
- * @returns {Array}
- */
-export function uniqueArr(arr) {
- return Array.from(new Set(arr));
-}
-
-/**
- * @returns {string}
- */
-export function createUniqueString() {
- const timestamp = +new Date() + '';
- const randomNum = parseInt((1 + Math.random()) * 65536) + '';
- return (+(randomNum + timestamp)).toString(32);
-}
-
-/**
- * Check if an element has a class
- * @param {HTMLElement} elm
- * @param {string} cls
- * @returns {boolean}
- */
-export function hasClass(ele, cls) {
- return !!ele.className.match(new RegExp('(\\s|^)' + cls + '(\\s|$)'));
-}
-
-/**
- * Add class to element
- * @param {HTMLElement} elm
- * @param {string} cls
- */
-export function addClass(ele, cls) {
- if (!hasClass(ele, cls)) ele.className += ' ' + cls;
-}
-
-/**
- * Remove class from element
- * @param {HTMLElement} elm
- * @param {string} cls
- */
-export function removeClass(ele, cls) {
- if (hasClass(ele, cls)) {
- const reg = new RegExp('(\\s|^)' + cls + '(\\s|$)');
- ele.className = ele.className.replace(reg, ' ');
- }
-}
-export const sessionStorageTagViews = {
- add: function (view) {
- const newView = {
- fullPath: view.fullPath,
- hash: view.hash,
- meta: view.meta,
- name: view.name,
- params: view.params,
- path: view.path,
- query: view.query,
- };
- const OLD_VISITED_VIEWS = this.get();
- OLD_VISITED_VIEWS.push(newView);
- sessionStorage.setItem('visitedViews', JSON.stringify(OLD_VISITED_VIEWS));
- },
- delete: function () {},
- set: function (visitedViews) {
- const VIEWS = visitedViews.map(view => {
- return {
- fullPath: view.fullPath,
- hash: view.hash,
- meta: view.meta,
- name: view.name,
- params: view.params,
- path: view.path,
- query: view.query,
- };
- });
- sessionStorage.setItem('visitedViews', JSON.stringify(VIEWS));
- },
- clear: function (params) {
- sessionStorage.setItem('visitedViews', '[]');
- },
- get: function () {
- return JSON.parse(sessionStorage.getItem('visitedViews') || '[]');
- },
-};
-/**
- * 数字转为带两位小数的金额显示
- * @param {string/Number} d //数字
- * @param {string/Number} n //几位小数
- * @returns {string}
- */
-export function number2money(d = 0, n = 2) {
- let zero = '';
- let ten = 1;
- for (let i = 0; i < n; i++) {
- zero += '0';
- ten = ten * 10;
- }
- if (d === undefined || d === null) {
- d = 0;
- }
- if (!d) {
- d = 0;
- }
- d = Math.round(d * ten) / ten;
- const price = (d + '').split('.');
- price[1] = price[1] ? `${(price[1] + zero).substring(0, n)}` : zero;
- return price.join('.');
-}
-
-export function downloadBlob(blob, fileName) {
- if (!fileName) {
- alert('文件名不正确');
- return;
- }
- // FileReader主要用于将文件内容读入内存
- var reader = new FileReader();
- reader.readAsDataURL(blob);
- // onload当读取操作成功完成时调用
- reader.onload = function (e) {
- var a = document.createElement('a');
- a.download = fileName;
- a.href = e.target.result;
- console.log(e.target.result);
- document.body.appendChild(a);
- a.click();
- document.body.removeChild(a);
- };
-}
-export function getBlobURL(blob) {
- // var binaryData = [];
- // binaryData.push(file);
- // new Blob(binaryData, { type: 'application/zip' })
- let url = null;
- if (window.createObjectURL !== undefined) {
- // basic
- url = window.createObjectURL(blob);
- } else if (window.webkitURL !== undefined) {
- // webkit or chrome
- try {
- url = window.webkitURL.createObjectURL(blob);
- } catch (error) {
- console.log(error);
- }
- } else if (window.URL !== undefined) {
- // mozilla(firefox)
- try {
- url = window.URL.createObjectURL(blob);
- } catch (error) {
- console.log(error);
- }
- }
- return url;
-}
-export function openWin(url, iWidth = 1200, iHeight = 800, name = '') {
- // 转向网页的地址;
- // 网页名称,可为空;
- // 弹出窗口的宽度;
- // 弹出窗口的高度;
- // 获得窗口的垂直位置
- const iTop = (window.screen.availHeight - 30 - iHeight) / 2;
- // 获得窗口的水平位置
- const iLeft = (window.screen.availWidth - 10 - iWidth) / 2;
- return window.open(
- url,
- name,
- 'height=' +
- iHeight +
- ',,innerHeight=' +
- iHeight +
- ',width=' +
- iWidth +
- ',innerWidth=' +
- iWidth +
- ',top=' +
- iTop +
- ',left=' +
- iLeft +
- ',status=no,toolbar=no,menubar=no,location=no,resizable=no,scrollbars=0,titlebar=no',
- );
-}
-/**
- * 返回一个十位的随机字符串 BJ 开头
- * @returns {string}
- */
-export function randomID() {
- return (
- 'BJ' +
- Number(Math.random().toString().substr(3, 12) + Date.now())
- .toString(36)
- .substr(0, 8)
- .toUpperCase()
- );
-}
-/**
- * offsetTop 是一个只读属性,返回当前元素相对于 offsetParent 节点顶部边界的偏移像素值。
- * 通过循环 offsetParent 读取 offsetTop ,累加,最终获得元素至文档顶部的真实距离
- * @param { Dom, String} element
- * @returns Number
- */
-export function getOffsetTop(element) {
- element = typeof element == 'string' ? document.querySelector(element) : element;
- let realTop = element.offsetTop;
- let next = element.offsetParent;
- while (next !== null) {
- realTop += next.offsetTop;
- next = next.offsetParent;
- }
- return realTop;
-}
-/**
- * this.$scrollToFormError() 调用,this请指向vue
- * 页面滚动到表单检验报错的地方
- */
-export function scrollToFormError() {
- this.$nextTick(() => {
- const DOM = document.querySelector('.el-form-item__error');
- const TOP = getOffsetTop(DOM);
- const fixedHeaderHeight = document.querySelector('.fixed-header').clientHeight || 0; // .fixed-header 高度
- const PARENT_HEIGHT = DOM.parentElement ? DOM.parentElement.clientHeight || 0 : 0; // .el-form-item__content 高度
- if (DOM && TOP) {
- document.documentElement.scrollTop = TOP - PARENT_HEIGHT - fixedHeaderHeight;
- }
- });
-}
-export function getFileTypeByUrl(url) {
- const TYPE_STRING = url.split('?')[0].split('.').slice(-1)[0].toLowerCase();
- const TYPE_JSON = {
- image: ['bmp', 'jpg', 'jpeg', 'gif', 'png', 'tif', 'tiff', 'tga', 'psd', 'jfif', 'webp'],
- video: ['avi', 'dv', 'mp4', 'mpeg', 'mpg', 'mov', 'wm', 'flv', 'mkv', 'ogg', 'ogv', 'webm'],
- text: [
- 'txt',
- 'php',
- 'html',
- 'htm',
- 'js',
- 'css',
- 'rtf',
- 'rtfd',
- 'py',
- 'java',
- 'rb',
- 'sh',
- 'pl',
- 'sql',
- 'xml',
- 'log',
- 'docx',
- ],
- audio: ['mp3', 'mid', 'ogg', 'mpga', 'mp4a', 'wav', 'wma'],
- application: [
- 'ai',
- 'eps',
- 'exe',
- 'doc',
- 'xls',
- 'ppt',
- 'pps',
- 'pdf',
- 'xml',
- 'odt',
- 'swf',
- 'gz',
- 'tgz',
- 'bz',
- 'bz2',
- 'tbz',
- 'zip',
- 'rar',
- 'tar',
- '7z',
- ],
- };
- return Object.keys(TYPE_JSON).find(key => TYPE_JSON[key].includes(TYPE_STRING));
-}
-/**
- * 排列组合
- * @returns
- */
-export function cartesianProductOf() {
- return Array.prototype.reduce.call(
- arguments,
- function (a, b) {
- var ret = [];
- a.forEach(function (a) {
- b.forEach(function (b) {
- ret.push(a.concat([b]));
- });
- });
- return ret;
- },
- [[]],
- );
-}
-/**
- * 导出表格为 HTML、WORD、PDF、EXCEL
- * @param {String} FILE_NAME 文件名 带后缀格式
- * @param {*} HTML_OR_DATA 表格数据 / HTML字符串 / html元素
- * @param {Array} LABEL_LIST 表格的表头; ['日期', '姓名', '地址']
- * @param {String} WORK_SHEET excel 的 sheet名称;默认 Sheet1
- */
-export function exportFile(FILE_NAME, HTML_OR_DATA, LABEL_LIST, WORK_SHEET) {
- if (!FILE_NAME) {
- console.error('exportFile need FILE_NAME');
- return;
- }
- if (FILE_NAME.indexOf('.') == -1) {
- console.error('FILE_NAME need File Type');
- return;
- }
- const TYPE = FILE_NAME.split('.').slice(-1)[0].toLowerCase();
- if (TYPE === 'html') {
- // downloadHtml(htmlTemplate(this.$refs.table.innerHTML), 'a.html');
- downloadHtml(htmlTemplate(HTML_OR_DATA), FILE_NAME);
- }
- if (TYPE === 'docx') {
- // downloadHtml(tableTemplate(this.tableData, ['日期', '姓名', '地址']), 'a.docx');
- downloadHtml(tableTemplate(HTML_OR_DATA, LABEL_LIST), FILE_NAME);
- }
- if (TYPE === 'pdf') {
- // downloadHtml(this.$refs.table.innerHTML, 'aaaa.PDF');
- downloadHtml(HTML_OR_DATA, FILE_NAME);
- }
- if (TYPE === 'xlsx') {
- // downloadHtml(excelTemplate(this.tableData, ['日期', '姓名', '地址'], 'worksheet'), 'a.xlsx');
- downloadHtml(excelTemplate(HTML_OR_DATA, LABEL_LIST, WORK_SHEET), FILE_NAME);
- }
-}
-/**
- * 下载 html 片段,转存为文件
- * @param {String,Element} fileHtml
- * @param {String} fileName
- * @returns
- */
-export function downloadHtml(fileHtml, fileName) {
- if (!fileName) {
- console.error('exportFile need fileName');
- return;
- }
- if (fileName.indexOf('.') == -1) {
- console.error('fileName need File Type');
- return;
- }
- fileName = fileName.replace(/\./g, '_' + new Date().getTime() + '.');
- // 转PDF下载
- if (fileName.split('.').slice(-1)[0].toLowerCase() === 'pdf') {
- console.log('转PDF下载');
- html2pdf(fileHtml, {
- margin: 1,
- filename: fileName,
- image: { type: 'jpeg', quality: 0.98 },
- html2canvas: { scale: 2 },
- jsPDF: { unit: 'in', format: 'letter', orientation: 'portrait' },
- });
- return;
- }
- // 其它HTML直接下载
- const a = document.createElement('a');
- const url = window.URL.createObjectURL(new Blob([fileHtml], { type: '' }));
- a.href = url;
- a.download = fileName;
- a.click();
- window.URL.revokeObjectURL(url);
-}
-/**
- * html模板
- * @param {String,Array} d 必填,table data / html 字符串
- * @param {Array} label 非必填,表头
- * @returns
- */
-export function htmlTemplate(d, label) {
- let innerHTML = d;
- if (Array.isArray(d)) {
- innerHTML = tableTemplate(d, label);
- }
- const html = `
-
-
-
-
-
- FeiJi
-
-
-
-
- ${innerHTML}
-
-
- `;
- return html;
-}
-/**
- * excel模板
- * @param {Array} data 表数据
- * @param {Array} label 表头
- * @param {String} worksheet excel sheet 名称
- * @returns
- */
-export function excelTemplate(data, label, worksheet) {
- const TABLE_HTML = tableTemplate(data, label);
- // Worksheet名
- worksheet = worksheet || 'Sheet1';
- // 下载的表格模板数据
- return `
-
- ${TABLE_HTML}`;
-}
-/**
- * table模板
- * @param {Array} TABLE_DATA 表数据
- * @param {Array} LABEL_LIST 表头
- * @returns
- */
-export function tableTemplate(TABLE_DATA, LABEL_LIST) {
- if (!TABLE_DATA) {
- console.error('tableTemplate: need table data');
- return;
- }
- if (!Array.isArray(TABLE_DATA)) {
- console.error('tableTemplate: table data must be Array');
- return;
- }
- if (!LABEL_LIST) {
- console.error('tableTemplate: need table header');
- return;
- }
- if (!Array.isArray(LABEL_LIST)) {
- console.error('tableTemplate: table header must be Array');
- return;
- }
- // 表头
- let str =
- '' +
- LABEL_LIST.map(
- e =>
- `${e} | `,
- ).join('') +
- '
';
- // 循环遍历,每行加入tr标签,每个单元格加td标签
- for (let i = 0; i < TABLE_DATA.length; i++) {
- str += '';
- for (const item in TABLE_DATA[i]) {
- // 增加\t为了不让表格显示科学计数法或者其他格式
- str += `${
- TABLE_DATA[i][item] + '\t'
- } | `;
- }
- str += '
';
- }
- return ``;
-}
-
-/**
- * element时间组件参数:picker-options
- * @param {Date} startDate 只当选中 startDate 以后的时间,之前的禁选
- * @returns
- */
-export function disabledPickerDate(startDate) {
- const TEMP_DATE = startDate ? new Date(startDate) : new Date();
- return {
- disabledDate: time => {
- return time.getTime() < TEMP_DATE.getTime() - 8.64e7 + 1;
- },
- };
-}
-
-/**
- * element时间范围datetime range 组件参数:picker-options
- * @param {option} pickerOptions 参数,会覆盖默认的shortcuts,可传入 disabledPickerDate() ,用于禁用过去的时间
- * @returns 默认的最近时间快捷范围
- */
-export function pickerOptions(option = {}) {
- return {
- firstDayOfWeek: option.firstDayOfWeek || 7,
- cellClassName: option.cellClassName || null,
- disabledDate: option.disabledDate || null,
- shortcuts: option.shortcuts || [
- {
- text: '最近一周',
- onClick(picker) {
- const end = new Date();
- const start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
- picker.$emit('pick', [start, end]);
- },
- },
- {
- text: '最近一个月',
- onClick(picker) {
- const end = new Date();
- const start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
- picker.$emit('pick', [start, end]);
- },
- },
- {
- text: '最近三个月',
- onClick(picker) {
- const end = new Date();
- const start = new Date();
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
- picker.$emit('pick', [start, end]);
- },
- },
- ],
- };
-}
-
-export function pickerOption(option = {}) {
- return {
- firstDayOfWeek: option.firstDayOfWeek || 7,
- cellClassName: option.cellClassName || null,
- disabledDate: option.disabledDate || null,
- shortcuts: option.shortcuts || [
- {
- text: '今天',
- onClick(picker) {
- picker.$emit('pick', new Date());
- },
- },
- {
- text: '昨天',
- onClick(picker) {
- const date = new Date();
- date.setTime(date.getTime() - 3600 * 1000 * 24);
- picker.$emit('pick', date);
- },
- },
- {
- text: '一周前',
- onClick(picker) {
- const date = new Date();
- date.setTime(date.getTime() - 3600 * 1000 * 24 * 7);
- picker.$emit('pick', date);
- },
- },
- ],
- };
-}
-
-export function VUE_APP_BASE_API() {
- let api = process.env.VUE_APP_BASE_API;
- if (process.env.NODE_ENV === 'production') {
- // 生产环境的API动态取值(在二级域名后,加 api),如果最终api有www的话直接去掉
- // 例1: https://nice.domain.com => https://niceapi.domain.com
- // 例2: http://www.domain.com => http://api.domain.com
- // 例2: http://www666.domain.com => http://666api.domain.com
- const URL_ARRAY = location.origin.split('.');
- URL_ARRAY[0] = URL_ARRAY[0] + 'api';
- api = URL_ARRAY.join('.');
- api = api.replace('www', '');
- }
- return api;
-}
-
-export function infinityNumber(n) {
- if (!n) {
- if (n === 0 || n === '0') {
- return 0;
- }
- return 999999999999999;
- }
- if (n === '不限' || n === '-') {
- return 999999999999999;
- }
- if (n === 999999999999999) {
- return '不限';
- }
- return Number(n);
-}
-export function isSameArray(a, b) {
- const la = a.length;
- const lb = b.length;
- if (la == lb) {
- return a.every(aa => b.some(bb => bb === aa)) && b.every(bb => a.some(aa => bb === aa));
- } else {
- return false;
- }
-}
-
-export function btnLetterAutoSpacing() {
- document.getElementsByTagName('button').forEach(btn => {
- if (btn.textContent.length == 3) {
- btn.classList.add('letter-spacing-8');
- } else if (btn.textContent.length <= 2) {
- btn.classList.add('letter-spacing-16');
- }
- });
-}
-// 子商品行背景着色
-export function treeRowStyleFun({ row, rowIndex }, key = 'BJ_HAS_CHILD', flag = false) {
- const styleJson = {};
- if (row[key] == flag) {
- styleJson.background = '#f5f5f5';
- }
- return styleJson;
-}
-export function repeatArrayFun(d, times = 10000) {
- const d2 = [];
- for (let i = 0; i < times; i++) {
- d2.push(...d);
- }
- return d2;
-}
diff --git a/front-end/src/utils/jumper2router.js b/front-end/src/utils/jumper2router.js
deleted file mode 100644
index ece30da..0000000
--- a/front-end/src/utils/jumper2router.js
+++ /dev/null
@@ -1,150 +0,0 @@
-import Vue from 'vue';
-import router from '@/router';
-import { ORDER_BUSINESS_TYPES } from '@/utils/constants.js';
-
-Vue.prototype.$toPage = (name, query) => {
- router.push({
- name: name,
- query: query,
- });
-};
-Vue.prototype.$toView = (name, id) => {
- router.push({
- name: name,
- query: { id: id },
- });
-};
-// 三方销售单
-Vue.prototype.$toBusinessOrderThirdView = (code, useIdFlag = false, businessType = 'common') => {
- let id = null;
- let name = 'BusinessOrderThirdView';
- if (useIdFlag) {
- id = code;
- code = null;
- }
-
- if (ORDER_BUSINESS_TYPES.O2O == businessType) {
- name = 'BusinessO2oThirdView';
- }
- router.push({
- name,
- query: { id, code },
- });
-};
-// 内部销售单
-Vue.prototype.$toBusinessOrderInternalView = (code, useIdFlag = false, businessType = 'common') => {
- let id = null;
- let name = 'BusinessOrderInternalView';
- if (useIdFlag) {
- id = code;
- code = null;
- }
- if (ORDER_BUSINESS_TYPES.O2O == businessType) {
- name = 'BusinessO2oInternalView';
- }
- router.push({
- name,
- query: { id, code },
- });
-};
-// 三方仅退款
-Vue.prototype.$toBusinessAfterThirdRefundView = (code, useIdFlag = false) => {
- let id = null;
- if (useIdFlag) {
- id = code;
- code = null;
- }
- router.push({
- name: 'BusinessAfterThirdRefundView',
- query: { id, code },
- });
-};
-// 三方退货退款
-Vue.prototype.$toBusinessAfterThirdReturnView = (code, useIdFlag = false) => {
- let id = null;
- if (useIdFlag) {
- id = code;
- code = null;
- }
- router.push({
- name: 'BusinessAfterThirdReturnView',
- query: { id, code },
- });
-};
-// 内部仅退款
-Vue.prototype.$toBusinessAfterInternalRefundView = (code, useIdFlag = false) => {
- let id = null;
- if (useIdFlag) {
- id = code;
- code = null;
- }
- router.push({
- name: 'BusinessAfterInternalRefundView',
- query: { id, code },
- });
-};
-// 内部退货退款
-Vue.prototype.$toBusinessAfterInternalReturnView = (code, useIdFlag = false) => {
- let id = null;
- if (useIdFlag) {
- id = code;
- code = null;
- }
- router.push({
- name: 'BusinessAfterInternalReturnView',
- query: { id, code },
- });
-};
-// 三方换货单
-Vue.prototype.$toBusinessAfterThirdExchangeView = id => {
- router.push({
- name: 'BusinessAfterThirdExchangeView',
- query: { id: id },
- });
-};
-// 内部换货单
-Vue.prototype.$toBusinessAfterInternalExchangeView = id => {
- router.push({
- name: 'BusinessAfterInternalExchangeIndex',
- query: { id: id },
- });
-};
-/** 出库通知单详情 */
-Vue.prototype.$toBusinessStockDeliveryInformView = id => {
- router.push({
- name: 'BusinessStockDeliveryInformView',
- query: { id: id },
- });
-};
-/** 出库结果单详情 */
-Vue.prototype.$toBusinessStockDeliveryResultView = id => {
- router.push({
- name: 'BusinessStockDeliveryResultView',
- query: { id: id },
- });
-};
-
-/** 入库通知单详情 */
-Vue.prototype.$toBusinessStockEntryInformView = (code, useIdFlag = false) => {
- let id = null;
- if (useIdFlag) {
- id = code;
- code = null;
- }
- router.push({
- name: 'BusinessStockEntryInformView',
- query: { id, code },
- });
-};
-/** 入库结果单详情 */
-Vue.prototype.$toBusinessStockEntryResultView = (code, useIdFlag = false) => {
- let id = null;
- if (useIdFlag) {
- id = code;
- code = null;
- }
- router.push({
- name: 'BusinessStockEntryResultView',
- query: { id, code },
- });
-};
diff --git a/front-end/src/utils/open-window.js b/front-end/src/utils/open-window.js
deleted file mode 100644
index 90a6ddd..0000000
--- a/front-end/src/utils/open-window.js
+++ /dev/null
@@ -1,25 +0,0 @@
-/**
- *Created by PanJiaChen on 16/11/29.
- * @param {Sting} url
- * @param {Sting} title
- * @param {Number} w
- * @param {Number} h
- */
-export default function openWindow(url, title, w, h) {
- // Fixes dual-screen position Most browsers Firefox
- const dualScreenLeft = window.screenLeft !== undefined ? window.screenLeft : screen.left;
- const dualScreenTop = window.screenTop !== undefined ? window.screenTop : screen.top;
-
- const width = window.innerWidth ? window.innerWidth : document.documentElement.clientWidth ? document.documentElement.clientWidth : screen.width;
- const height = window.innerHeight ? window.innerHeight : document.documentElement.clientHeight ? document.documentElement.clientHeight : screen.height;
-
- const left = ((width / 2) - (w / 2)) + dualScreenLeft;
- const top = ((height / 2) - (h / 2)) + dualScreenTop;
- const newWindow = window.open(url, title, 'toolbar=no, location=no, directories=no, status=no, menubar=no, scrollbars=no, resizable=yes, copyhistory=no, width=' + w + ', height=' + h + ', top=' + top + ', left=' + left);
-
- // Puts focus on the newWindow
- if (window.focus) {
- newWindow.focus();
- }
-}
-
diff --git a/front-end/src/utils/page-mixin.js b/front-end/src/utils/page-mixin.js
deleted file mode 100644
index 6b0cb2e..0000000
--- a/front-end/src/utils/page-mixin.js
+++ /dev/null
@@ -1,161 +0,0 @@
-/*
- * @Author: your name
- * @Date: 2021-06-24 18:36:56
- * @LastEditTime: 2022-04-24 18:21:34
- * @LastEditors: LAPTOP-JM4BAR46
- * @Description: In User Settings Edit
- * @FilePath: \newBj-admin\src\utils\page-mixin.js
- */
-import { commonApi } from '@/api';
-
-import ElTableColumn from '@/components/ElTableColumn/index.vue';
-
-export default {
- components: {
- ElTableColumn,
- },
- data() {
- return {
- /** * 拖拽自定义表头 */
- colSpan: 6,
- labelsVersion: 11, // 不能为 0 或 false
- SortableTable: {
- show: () => {},
- handleHeaderDragend: () => {},
- handleHeaderContextmenu: () => {},
- },
- dropCols: [],
- //
- selectedDataObj: {},
- tags: [], // 选中项 转为 tags ,在表格下方
- pagesSelectedRows: [], // 各页的选中项集合
- selectedRows: [], // 当前页的选中项
- treeTableChildrenSelection: [], //
- expandTableSelectedObj: [],
- selection: true,
- serial: true,
- /** 禁止拖动 */
- sortableTableCode: '', // 同一个路由页面下,多tab页列表的保存Code
- sortTableByOptionName: false,
- tableSortableDisabled: false,
-
- routerName: '',
- };
- },
- filters: {
- phoneFilter(val) {
- if (val) {
- const reg = /^(.{3}).*(.{4})$/;
- return val.replace(reg, '$1****$2');
- }
- },
- },
- computed: {},
- watch: {
- '$route.name'(v) {
- this.routerName = v;
- },
- },
- created() {},
- mounted() {
- this.routerName = this.$route.name;
- // 注册刷新事件
- this.$eventHub.$on('refresh' + this.routerName, this.reFresh);
- /** 拖拽自定义表头 */
- let startIndex = 0;
- if (this.selection) startIndex++;
- if (this.serial) startIndex++;
- // 保存的唯一code
- if (!this.sortableTableCode) {
- // 默认取路由name。
- this.sortableTableCode = this.$route.name;
- if (this.sortTableByOptionName) {
- // 取组件名称
- this.sortableTableCode = this.$options.name;
- }
- }
- // console.log('tableSortableDisabled = ', this.tableSortableDisabled);
- // console.log('sortableTableCode = ', this.sortableTableCode);
- this.SortableTable = this.$initElementTableSortable({
- el: '.body--wrapper>.vxe-table--header .vxe-header--row', // '.el-table__header-wrapper tr:last-child',
- tableSortableDisabled: this.tableSortableDisabled,
- dragElement: '.vxe-header--column', // 默认是 className : draggable .item
- defaultLabels: this.labelList,
- startIndex: startIndex,
- sortableTableCode: this.sortableTableCode, // 唯一key
- labelsVersion: this.labelsVersion, // 当前版本号
- setRemoteApi: commonApi.saveTabulation, // 非必填
- getRemoteApi: commonApi.getTabulation, // 非必填
- handleColumn: this.handleColumn,
- });
- // this.setSortTableCodeAndHeight();
-
- // 对整个页面滚轮进行监听,每发生一次滚轮事件,执行一次方法
- // window.addEventListener('scroll', this.scrollCallBack, true);
- },
- beforeDestroy() {
- this.$eventHub.$off('refresh' + this.routerName);
- },
- methods: {
- scrollCallBack() {
- // 兼容性,获取页面滚动距离
- const scrollTop =
- window.pageYOffset || document.documentElement.scrollTop || document.body.scrollTop;
-
- const IS_BOTTOM = document.body.scrollHeight - scrollTop - document.body.clientHeight < 3;
-
- this.$refs.BjPage.showSearch = !IS_BOTTOM;
- },
- // setSortTableCodeAndHeight() {
- // this.$nextTick(() => {
- // // 根据列表code,获取列表的自定义高度(用于max-height)
- // const LAST_HEIGHT = Number(localStorage.getItem(this.sortableTableCode) || 0);
- // // 把 code 和 height 传入 bjPage
- // if (LAST_HEIGHT) {
- // this.$refs.BjPage?.setSortTableCodeAndHeight(this.sortableTableCode, LAST_HEIGHT);
- // }
- // });
- // },
- /** 重置按钮操作 */
- beforeResetSearch() {
- this.handleSelectionChange({});
- return new Promise(resolve => {
- resolve();
- });
- },
- /** 拖拽自定义表头 */
- handleColumn(data) {
- this.dropCols = data;
- if (this.tableSortableDisabled) return;
- this.$nextTick(() => {
- this.$refs.BjPage.$refs.BjTable && this.$refs.BjPage.$refs.BjTable.refreshColumn();
- });
- },
- reFresh() {
- this.$refs.BjPage && this.$refs.BjPage.fetchData();
- },
- handleSelectionChange(data) {
- this.selectedDataObj = { ...data };
- this.selectedRows = data.selection || [];
- this.tags = data.tags || [];
- // console.log('this.tags', this.tags);
- this.treeTableChildrenSelection = data.children || [];
- this.pagesSelectedRows = data.pagesSelectedRows || [];
- },
- handleQuery() {
- this.reFresh();
- },
- // 子多选框选中数据
- handleExpandTableSelectionChange(arg) {
- // const {
- // childrenSelection,
- // parentRow,
- // parentIndex,
- // expandTableIndexSelection,
- // treeTableChildrenSelection,
- // } = arg;
- this.expandTableSelectedObj = arg;
- console.log(this.expandTableSelectedObj);
- },
- },
-};
diff --git a/front-end/src/utils/permission.js b/front-end/src/utils/permission.js
deleted file mode 100644
index 221d970..0000000
--- a/front-end/src/utils/permission.js
+++ /dev/null
@@ -1,21 +0,0 @@
-import store from '@/store';
-
-/**
- * @param {Array} value
- * @returns {Boolean}
- * @example see @/views/permission/directive.vue
- */
-export default function checkPermission(value) {
- if (value && value instanceof Array && value.length > 0) {
- const roles = store.getters && store.getters.roles;
- const permissionRoles = value;
-
- const hasPermission = roles.some(role => {
- return permissionRoles.includes(role);
- });
- return hasPermission;
- } else {
- console.error(`need roles! Like v-permission="['admin','editor']"`);
- return false;
- }
-}
diff --git a/front-end/src/utils/prototype-native.js b/front-end/src/utils/prototype-native.js
deleted file mode 100644
index f72877e..0000000
--- a/front-end/src/utils/prototype-native.js
+++ /dev/null
@@ -1,39 +0,0 @@
-/*eslint no-extend-native: ["error", { "exceptions": ["Array"] }]*/
-function getLabelByValue(list, value, valueString = 'value', labelString = 'label') {
- if (Array.isArray(list)) {
- const FIND_ITEM = list.find(item => {
- const VALUE = item[valueString];
- // 兼容 item.value为数组的情况
- return VALUE == value || (Array.isArray(VALUE) && VALUE.some(n => n == value));
- });
- if (FIND_ITEM) return FIND_ITEM[labelString];
- }
- return value;
-}
-Array.prototype.bjGet = function(value, valueString = 'value', labelString = 'label') {
- return getLabelByValue(this, value, valueString, labelString);
-};
-Array.prototype.bjIncludes = function(value, valueKey) {
- return this.some(e => {
- if (valueKey) {
- return e[valueKey] == value;
- }
- return e == value;
- });
-};
-/**
- *
- * @param {*} val //要查找的值
- * @param {*} key // 如果数组元素是一个object,需要提供对应的key
- */
-Array.prototype.remove = function(val, key) {
- let index;
- if (typeof key == 'string') {
- index = this.findIndex(e => e[key] == val);
- } else {
- index = this.indexOf(val);
- }
- if (index > -1) {
- this.splice(index, 1);
- }
-};
diff --git a/front-end/src/utils/prototype-vue.js b/front-end/src/utils/prototype-vue.js
deleted file mode 100644
index 72264b0..0000000
--- a/front-end/src/utils/prototype-vue.js
+++ /dev/null
@@ -1,85 +0,0 @@
-import Vue from 'vue';
-import '@/utils/jumper2router.js';
-// 全局组件之间通信
-Vue.prototype.$eventHub = Vue.prototype.$eventHub || new Vue(); // 巴士
-
-Vue.prototype.$rowStyle = {
- DEFAULT: { fontSize: '13px' }, // background: '#eef1f6', color: '#606266',
- LIGHT_GREY: { background: '#f7f7f7', color: '#606266' },
- LIGHT_BLUE: { background: '#c4d9f5', color: '#606266' },
- WHITE: { background: '#FFFFFF', color: '#6c6c6c' },
-};
-
-// 数字转2位小数金额
-import {
- number2money,
- getFileTypeByUrl,
- disabledPickerDate,
- pickerOptions,
- pickerOption,
- infinityNumber,
- scrollToFormError,
- treeRowStyleFun,
- repeatArrayFun,
-} from '@/utils/index.js';
-Vue.prototype.$number2money = number2money;
-Vue.prototype.$getFileTypeByUrl = getFileTypeByUrl;
-Vue.prototype.$disabledPickerDate = disabledPickerDate;
-Vue.prototype.$pickerOptions = pickerOptions;
-Vue.prototype.$pickerOption = pickerOption;
-Vue.prototype.$infinityNumber = infinityNumber;
-Vue.prototype.$scrollToFormError = scrollToFormError;
-Vue.prototype.$treeRowStyleFun = treeRowStyleFun;
-Vue.prototype.$repeatArrayFun = repeatArrayFun;
-
-import * as BjDialogListConfig from '@/utils/BjDialogListConfig.js';
-Vue.prototype.$BjDialogListConfig = BjDialogListConfig;
-
-Vue.prototype.msgSuccess = function (msg) {
- this.$message({ showClose: true, message: msg, type: 'success' });
-};
-Vue.prototype.msgError = function (msg) {
- this.$message({ showClose: true, message: msg, type: 'error' });
-};
-Vue.prototype.msgInfo = function (msg) {
- this.message.info(msg);
-};
-Vue.prototype.$onCopy = () => {
- Vue.prototype.$message.success('复制成功');
-};
-Vue.prototype.$onError = () => {
- Vue.prototype.$message.error('复制失败');
-};
-
-import { MAX_LENGTH } from '@/utils/constants';
-Vue.prototype.MAX_LENGTH = MAX_LENGTH;
-
-import lodash from 'lodash';
-Vue.prototype.$lodash = lodash;
-
-// https://github.com/wangduanduan/jsplumb-chinese-tutorial/tree/master/docs
-// https://www.cnblogs.com/leomYili/p/6346526.html
-
-// import jsPlumb from 'jsplumb';
-// Vue.prototype.$jsPlumb = jsPlumb.jsPlumb;
-
-/**
- * If you don't want to use mock-server
- * you want to use MockJs for mock api
- * you can execute: mockXHR()
- *
- * Currently MockJs will be used in the production environment,
- * please remove it before going online ! ! !
- */
-// if (process.env.NODE_ENV === 'production') {
-// const { mockXHR } = require('../mock');
-// mockXHR();
-// }
-const Mock = require('mockjs');
-Vue.prototype.$getMockData = list => {
- const res = Mock.mock({
- 'list|6-10': list,
- }).list;
- console.log(JSON.stringify(res));
- return res;
-};
diff --git a/front-end/src/utils/request.js b/front-end/src/utils/request.js
deleted file mode 100644
index 8b02bfe..0000000
--- a/front-end/src/utils/request.js
+++ /dev/null
@@ -1,387 +0,0 @@
-import axios from './axios.js';
-// import Vue from 'vue';
-import router from '@/router';
-import { Message } from 'element-ui';
-import store from '@/store';
-import { getToken } from '@/utils/auth';
-import _ from 'lodash';
-
-function sleep(time) {
- return new Promise(resolve => setTimeout(resolve, time));
-}
-
-const CONTENT_TYPES = {
- 1: 'application/json',
- 2: 'multipart/form-data',
- 3: 'application/x-www-form-urlencoded',
-};
-const RESPONSE_TYPES = {
- 0: 'text',
- 1: 'json',
- 2: 'blob',
- 3: 'buffer',
-};
-// console.log('http1', Vue.prototype.$http.options);
-// console.log('axios', axios);
-// console.log('aa', Vue.prototype.$http.prototype);
-// // create an axios instance
-
-const service = axios.create({
- // withCredentials: true, // send cookies when cross-domain requests
-});
-
-// // request interceptor
-service.interceptors.request.use(
- config => {
- if (!config.loadingHide) store.dispatch('app/addLoadingCount');
- if (getToken()) {
- config.headers['Authorization'] = 'Bearer ' + getToken();
- }
- // console.log(config);
- return config;
- },
- error => {
- // do something with request error
- // console.error(error); // for debug
- return Promise.reject(error);
- },
-);
-
-// // response interceptor
-service.interceptors.response.use(
- /**
- * If you want to get http information such as headers or status
- * Please return response => response
- */
-
- /**
- * Determine the request status by custom code
- * Here is just an example
- * You can also judge the status by HTTP Status Code
- */
- async response => {
- const config = response && response.config;
-
- await sleep(config.loadingMore);
-
- if (config.loadingMore) console.log('主动延迟' + config.loadingMore + 'ms', config.url);
-
- if (!config.loadingHide) store.dispatch('app/addLoadingCount', false);
-
- const OLD_RESPONSE_DATA = response.data;
- let NEW_RESPONSE_DATA = null;
-
- if (
- (response.status === 204 || response.status === 200) &&
- (typeof OLD_RESPONSE_DATA === 'string' || typeof OLD_RESPONSE_DATA === 'number')
- ) {
- NEW_RESPONSE_DATA = {
- failed: false,
- message: OLD_RESPONSE_DATA || '操作成功',
- };
- }
-
- if (
- (response.status === 204 || response.status === 200) &&
- typeof OLD_RESPONSE_DATA === 'boolean'
- ) {
- NEW_RESPONSE_DATA = {
- failed: !OLD_RESPONSE_DATA,
- message: OLD_RESPONSE_DATA ? '操作成功' : 'Waring',
- };
- }
-
- const res = NEW_RESPONSE_DATA || OLD_RESPONSE_DATA || response;
- /**
- * 统一处理 : 接口连接正常,但 res.failed==true 的情况
- */
- if (res && res.failed && !config.errorHide) {
- Message({
- message: (res && res.message) || 'api error', // error.message
- type: 'error',
- duration: 2 * 1000,
- });
- }
-
- return res;
- // if the custom code is not 0, it is judged as an error.
- // if (res.code === null || (res.code && res.code !== 0)) {
- // if (res.code === 100008005 && res.data && Array.isArray(res.data) && res.data.length > 0) {
- // Message({
- // message: res.data[0].msg || 'Error',
- // type: 'error',
- // duration: 5 * 1000,
- // });
- // } else {
- // Message({
- // message: res.message || 'Error',
- // type: 'error',
- // duration: 5 * 1000,
- // });
- // }
- // // 50008: Illegal token; 50012: Other clients logged in; 50014: Token expired;
- // if (res.code === 50008 || res.code === 50012 || res.code === 50014) {
- // // to re-login
- // MessageBox.confirm(
- // 'You have been logged out, you can cancel to stay on this page, or log in again',
- // 'Confirm logout',
- // {
- // confirmButtonText: 'Re-Login',
- // cancelButtonText: 'Cancel',
- // type: 'warning',
- // },
- // ).then(() => {
- // store.dispatch('app/user/resetToken').then(() => {
- // location.reload();
- // });
- // });
- // }
- // if (store.getters.globalPartialLoading) {
- // setTimeout(() => {
- // store.dispatch('app/toggleGlobalLoading', false);
- // }, 700);
- // }
- // return Promise.reject(new Error(res.message || 'Error'));
- // } else {
- // if (store.getters.globalPartialLoading) {
- // setTimeout(() => {
- // store.dispatch('app/toggleGlobalLoading', false);
- // }, 700);
- // }
-
- // return res;
- // }
- },
- error => {
- const config = error && error.config;
- if (config && !config.loadingHide) store.dispatch('app/addLoadingCount', false);
- console.log(error); // for debug
- // if (store.getters.globalPartialLoading) {
- // setTimeout(() => {
- // store.dispatch('app/toggleGlobalLoading', false);
- // }, 700);
- // }
-
- if (error.message.includes('timeout')) {
- // 判断请求异常信息中是否含有超时timeout字符串
-
- Message({
- message: '请求服务器超时,请刷新重试', // error.message
- type: 'error',
- duration: 2 * 1000,
- });
- return Promise.reject({
- failed: true,
- message: '',
- });
- }
-
- if (error && error.response && error.response.status) {
- console.log(error.response.status);
- switch (error.response.status) {
- case 500:
- case 503:
- // do something...
- Message({
- message: `请求失败,请稍候重试(${error.response.status})`,
- type: 'error',
- duration: 5 * 1000,
- });
- break;
- case 404:
- // do something...
- Message({
- message: `请求资源不存在(${error.response.status})`,
- type: 'error',
- duration: 5 * 1000,
- });
- break;
- case 403:
- // do something...
- Message({
- message: `服务器拒绝或者禁止了您的访问(${error.response.status})`,
- type: 'error',
- duration: 5 * 1000,
- });
- break;
- case 401:
- // do something...
- if (!process.env.VUE_APP_ACCESS_TOKEN) {
- Message({
- message: '请重新登录', // error.message
- type: 'error',
- duration: 2 * 1000,
- });
- setTimeout(() => {
- store.dispatch('user/resetInfo').then(() => {
- router.replace({
- path: '/login',
- });
- });
- }, 1000);
- }
-
- break;
- default:
- // do something...
- // Message({
- // message: '服务器开小差了~', // error.message
- // type: 'error',
- // duration: 5 * 1000,
- // });
- break;
- }
- } else {
- // Message({
- // message: '服务器开小差了~', // error.message
- // type: 'error',
- // duration: 5 * 1000,
- // });
- }
- return Promise.reject({
- failed: true,
- message: 'Api Http Status Code : ' + (error.response && error.response.status),
- });
- },
-);
-
-export function ajax(method = 'post', url, options) {
- // console.log(`%c ajax url: ${url}`, 'color:blue;');
- // console.log(options.data);
-
- method = method.toLowerCase();
- options.data = options.data || {};
- let requestType = (options.type || '').toLowerCase();
- // data参数指定隐藏loading动画
- const BjAjaxLoadingHide = options.data.BjAjaxLoadingHide;
- delete options.data.BjAjaxLoadingHide;
- const opts = {
- url,
- method,
- errorHide: !!options.errorHide,
- loadingHide: !!options.loadingHide || BjAjaxLoadingHide, // 此请求隐藏loading动画
- loadingMore: options.loadingMore || 0, // 此请求延迟loading,主动延迟返回(后端异步的情况)
- headers: {
- 'Content-type': CONTENT_TYPES[options.cType || '1'],
- },
- responseType: RESPONSE_TYPES[options.rType || '0'],
- };
- /**
- * 兼容rest风格(请求参数拼接在路径上)
- */
- let restfulUrl = '';
- if (url[url.length - 1] === '/') {
- // rest 风格的get 请求 需要api文件的url 最后拼接上/
- let restAPI = Object.values(options.data); // 取参数value数组
- if (typeof options.data === 'string') {
- restAPI = [options.data];
- }
- restfulUrl = opts.url + restAPI.join('/'); // 把参数拼接在url后面
- requestType = 'restful';
- }
- /**
- * 没有指定请求的类型,自动判断请求方式
- */
- if (!requestType) {
- if (method === 'get') {
- requestType = 'query';
- } else {
- requestType = 'body';
- }
- }
- if (requestType === 'query') {
- opts.params = options.data;
- }
- if (requestType === 'body') {
- opts.data = options.data;
- }
- if (requestType === 'form' && options.data) {
- const formData = new FormData();
- Object.keys(options.data).forEach(key => {
- formData.append(key, options.data[key]);
- });
- opts.data = formData;
- }
- if (requestType === 'restful') {
- opts.url = restfulUrl;
- }
-
- /** 特定奇葩的传参方式 */
- if (options.data && options.data.BjBody) {
- opts.data = options.data.BjBody;
- }
- if (options.data && options.data.BjQuery) {
- opts.params = options.data.BjQuery;
- }
-
- // console.log('options.opts', opts);
- return service(opts);
-}
-
-export function generate(config) {
- const map = {};
- const items = config.items;
- for (let i = 0, len = items.length; i < len; i++) {
- map[items[i].key] = function(data) {
- /**
- * 把data里的值 替换到url上{}里,并删除data对应key
- */
- let tempUrl = (items[i].prefix || config.prefix || '') + items[i].url;
- const REG = /\{(.+?)\}/g;
- const __matchKey = tempUrl.match(REG); // 带{}花括号
-
- // 链接{}花括号参数处理
- if (Array.isArray(__matchKey)) {
- const matchKey = __matchKey.map(e => e.replace('{', '').replace('}', '')); // 去{}花括号
- matchKey.forEach((key, index) => {
- const __key = __matchKey[index];
- let __value;
- // {}花括号 从data中取值(如果有data.key的话)
- if (data && Object.prototype.hasOwnProperty.call(data, key)) {
- __value = data[key];
- tempUrl = tempUrl.replace(__key, __value);
- delete data[key];
- } else {
- // data 没有 给 organizationId、tenantId 赋值,从store中获取,默认为0租户
- if (key === 'organizationId' || key === 'tenantId') {
- __value = store.getters.tenantId || 0;
- tempUrl = tempUrl.replace(__key, __value);
- } else {
- console.error(`Can't find ${key} from the ${items[i].method} data`, data);
- }
- }
- });
- }
- // 默认值
- if (
- data &&
- Object.prototype.hasOwnProperty.call(data, 'tenantId') &&
- data.tenantId == 'default'
- ) {
- data.tenantId = store.getters.tenantId || 0;
- }
- if (
- data &&
- Object.prototype.hasOwnProperty.call(data, 'organizationId') &&
- data.organizationId == 'default'
- ) {
- data.organizationId = store.getters.tenantId || 0;
- }
- /** END */
-
- /**
- * TODO: 从0开始的分页page */
- if (data && Object.prototype.hasOwnProperty.call(data, 'page') && data.page > 0) {
- data.page = data.page - 1;
- }
- /** END */
- return ajax(items[i].method, tempUrl, {
- data,
- ...(_.omit(items[i], ['key', 'url', 'method', 'prefix']) || {}),
- });
- };
- }
- return map;
-}
-
-export default {};
diff --git a/front-end/src/utils/scroll-to.js b/front-end/src/utils/scroll-to.js
deleted file mode 100644
index d11b672..0000000
--- a/front-end/src/utils/scroll-to.js
+++ /dev/null
@@ -1,58 +0,0 @@
-Math.easeInOutQuad = function(t, b, c, d) {
- t /= d / 2;
- if (t < 1) {
- return c / 2 * t * t + b;
- }
- t--;
- return -c / 2 * (t * (t - 2) - 1) + b;
-};
-
-// requestAnimationFrame for Smart Animating http://goo.gl/sx5sts
-var requestAnimFrame = (function() {
- return window.requestAnimationFrame || window.webkitRequestAnimationFrame || window.mozRequestAnimationFrame || function(callback) { window.setTimeout(callback, 1000 / 60); };
-})();
-
-/**
- * Because it's so fucking difficult to detect the scrolling element, just move them all
- * @param {number} amount
- */
-function move(amount) {
- document.documentElement.scrollTop = amount;
- document.body.parentNode.scrollTop = amount;
- document.body.scrollTop = amount;
-}
-
-function position() {
- return document.documentElement.scrollTop || document.body.parentNode.scrollTop || document.body.scrollTop;
-}
-
-/**
- * @param {number} to
- * @param {number} duration
- * @param {Function} callback
- */
-export function scrollTo(to, duration, callback) {
- const start = position();
- const change = to - start;
- const increment = 20;
- let currentTime = 0;
- duration = (typeof (duration) === 'undefined') ? 500 : duration;
- var animateScroll = function() {
- // increment the time
- currentTime += increment;
- // find the value with the quadratic in-out easing function
- var val = Math.easeInOutQuad(currentTime, start, change, duration);
- // move the document.body
- move(val);
- // do the animation unless its over
- if (currentTime < duration) {
- requestAnimFrame(animateScroll);
- } else {
- if (callback && typeof (callback) === 'function') {
- // the animation is done so lets callback
- callback();
- }
- }
- };
- animateScroll();
-}
diff --git a/front-end/src/utils/validate.js b/front-end/src/utils/validate.js
deleted file mode 100644
index 266410a..0000000
--- a/front-end/src/utils/validate.js
+++ /dev/null
@@ -1,299 +0,0 @@
-/**
- * Created by PanJiaChen on 16/11/18.
- */
-
-/**
- * @param {string} path
- * @returns {Boolean}
- */
-export function isExternal(path) {
- return /^(https?:|mailto:|tel:)/.test(path);
-}
-
-/**
- * @param {string} str
- * @returns {Boolean}
- */
-export function validUsername(str) {
- const valid_map = ['admin', 'editor'];
- return valid_map.indexOf(str.trim()) >= 0;
-}
-
-/**
- * @param {string} url
- * @returns {Boolean}
- */
-export function validURL(url) {
- const reg = /^(https?|ftp):\/\/([a-zA-Z0-9.-]+(:[a-zA-Z0-9.&%$-]+)*@)*((25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9][0-9]?)(\.(25[0-5]|2[0-4][0-9]|1[0-9]{2}|[1-9]?[0-9])){3}|([a-zA-Z0-9-]+\.)*[a-zA-Z0-9-]+\.(com|edu|gov|int|mil|net|org|biz|arpa|info|name|pro|aero|coop|museum|[a-zA-Z]{2}))(:[0-9]+)*(\/($|[a-zA-Z0-9.,?'\\+&%$#=~_-]+))*$/;
- return reg.test(url);
-}
-
-/**
- * @param {string} str
- * @returns {Boolean}
- */
-export function validLowerCase(str) {
- const reg = /^[a-z]+$/;
- return reg.test(str);
-}
-
-/**
- * @param {string} str
- * @returns {Boolean}
- */
-export function validUpperCase(str) {
- const reg = /^[A-Z]+$/;
- return reg.test(str);
-}
-
-/**
- * @param {string} str
- * @returns {Boolean}
- */
-export function validAlphabets(str) {
- const reg = /^[A-Za-z]+$/;
- return reg.test(str);
-}
-
-/**
- * @param {string} email
- * @returns {Boolean}
- */
-export const patternEmail = /^[a-zA-Z0-9_.-]{1,30}@[a-zA-Z0-9-]{1,30}(\.[a-zA-Z0-9-]+)*\.[a-zA-Z0-9]{2,6}$/;
-export function validEmail(email) {
- // const reg =/^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
- return patternEmail.test(email);
-}
-export const validatorEmail = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入邮箱'));
- } else {
- callback();
- }
- } else {
- if (!patternEmail.test(String(value))) {
- callback(new Error('邮箱格式错误'));
- } else {
- callback();
- }
- }
-};
-
-/**
- * @param {string} phone
- * @returns {Boolean}
- */
-export const patternMobile = /^134[0-8]\d{7}$|^13[^4]\d{8}$|^14[5-9]\d{8}$|^15[^4]\d{8}$|^16[6]\d{8}$|^17[0-8]\d{8}$|^18[\d]{9}$|^19[89]\d{8}$/;
-export function validPhone(phone) {
- return patternMobile.test(phone);
-}
-
-/**
- * 排除非数字和字母还有_.-其他禁止输入
- */
-export const checkCode = /[^\a-\z\A-\Z0-9-_.]/g;
-export const checkCodeWithComma = /[^\a-\z\A-\Z0-9-_.,]/g;
-/**
- * 编码的规则
- */
-export const patternCode = /^[A-Z0-9][A-Z0-9-_./]*$/;
-export const patternCodeSimple = /^[A-Za-z0-9-_./]{0,50}$/;
-export const validatorCodeSimple = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入编码'));
- } else {
- callback();
- }
- } else {
- if (!patternCodeSimple.test(String(value))) {
- callback(new Error('编码格式错误'));
- } else {
- callback();
- }
- }
-};
-export const validatorCodeSimpleLabel = function(rule, value, callback, label = '编码') {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入' + label));
- } else {
- callback();
- }
- } else {
- if (!patternCodeSimple.test(String(value))) {
- callback(new Error(label + '格式错误'));
- } else {
- callback();
- }
- }
-};
-/**
- * @param {string} str
- * @returns {Boolean}
- */
-export function isString(str) {
- if (typeof str === 'string' || str instanceof String) {
- return true;
- }
- return false;
-}
-
-/**
- * @param {Array} arg
- * @returns {Boolean}
- */
-export function isArray(arg) {
- if (typeof Array.isArray === 'undefined') {
- return Object.prototype.toString.call(arg) === '[object Array]';
- }
- return Array.isArray(arg);
-}
-// 100以内的数字,最多两位小数
-export const patternPercent = /(^[0-9]{1,2}$)|(^[0-9]{1,2}[\.]{1}[0-9]{0,2}$)/;
-export function validPercent(v) {
- return patternPercent.test(v);
-}
-
-// 不能小于1
-export const validatorMinOne = (rule, value, callback) => {
- if (value < 1) {
- callback(new Error(rule.message));
- } else {
- callback();
- }
-};
-
-/**
- * 账户验证规则
- */
-export const validateLoginName = (rule, value, callback) => {
- if (rule.required && (!value || value === 0)) {
- callback(new Error('请输入账户'));
- } else {
- if (!/^[\u4E00-\u9FA5\uF900-\uFA2D|a-zA-Z0-9]{2,20}$/.test(value)) {
- callback(new Error('请输入正确的账户'));
- } else {
- callback();
- }
- }
-};
-/**
- * 手机号验证规则
- */
-export const patternMobileSimple = /^1\d{10}$/;
-export const validatorMobile = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入手机号'));
- } else {
- callback();
- }
- } else {
- if (!patternMobileSimple.test(String(value))) {
- callback(new Error('手机号格式错误'));
- } else {
- callback();
- }
- }
-};
-/**
- * 邮编验证规则
- */
-export const patternPostCode = /\d{6}/;
-export const validatorPostCode = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入邮编'));
- } else {
- callback();
- }
- } else {
- if (!patternPostCode.test(String(value))) {
- callback(new Error('邮编格式错误'));
- } else {
- callback();
- }
- }
-};
-
-/**
- * 区号-电话号码 验证规则
- */
-export const patternPhone = /^\d{3,4}-\d{7,8}$/;
-export const validatorPhone = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入固定电话号码'));
- } else {
- callback();
- }
- } else {
- if (!patternPhone.test(String(value))) {
- callback(new Error('固定电话号码格式错误'));
- } else {
- callback();
- }
- }
-};
-
-/**
- * 年龄 验证规则
- */
-export const patternAge = /^[1-9][0-9]{0,2}$/;
-export const validatorAge = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入年龄'));
- } else {
- callback();
- }
- } else {
- if (!patternAge.test(String(value))) {
- callback(new Error('年龄格式错误'));
- } else {
- callback();
- }
- }
-};
-
-// 密码
-export const patternPassword = /^(\w){6,20}$/;
-// 中文,英文字母,数字
-export const validatorGoodsClassifyName = /^[a-zA-Z0-9\u4e00-\u9fa5]+$/;
-export const patternGoodsClassifyName = function(rule, value, callback) {
- if (!value) {
- return callback(new Error('请输入分类名称'));
- }
- if (!validatorGoodsClassifyName.test(value)) {
- callback(new Error('中文,英文字母,数字'));
- } else {
- callback();
- }
-};
-// 商品分类编码
-export const patternGoodsClassifyCode = /^[a-zA-Z0-9]{0,20}$/;
-export const validatorGoodsClassifyCode = function(rule, value, callback) {
- if (typeof value == 'number') value = String(value);
- if (!value) {
- if (rule.required) {
- callback(new Error('请输入'));
- } else {
- callback();
- }
- } else {
- if (!patternGoodsClassifyCode.test(String(value))) {
- callback(new Error('请输入不大于20位的数字及字母组合'));
- } else {
- callback();
- }
- }
-};
diff --git a/front-end/src/utils/view-mixin.js b/front-end/src/utils/view-mixin.js
deleted file mode 100644
index f09f2a5..0000000
--- a/front-end/src/utils/view-mixin.js
+++ /dev/null
@@ -1,107 +0,0 @@
-/*
- * 通用混入viewForm 详情页面
- */
-// import { commonApi } from '@/api';
-export default {
- props: {
- isEdit: {
- type: Boolean,
- default: false,
- },
- isView: {
- type: Boolean,
- default: false,
- },
- isAdd: {
- type: Boolean,
- default: false,
- },
- },
- data() {
- return {
- pageName: 'page_list_router_name',
- };
- },
- filters: {},
- computed: {},
- watch: {},
- created() {},
- mounted() {
- // if (document.querySelector('.resize-col')) {
- // let oldWidth = document.getElementById('app').clientWidth;
- // window.addEventListener('resize', () => {
- // const WIDTH = document.getElementById('app').clientWidth;
- // const isAdd = WIDTH > oldWidth;
- // console.log(WIDTH);
- // for (let i = 1; i <= 24; i++) {
- // const THIS_CLASS = 'bj-item-col-' + i;
- // const NEXT_I = isAdd ? i + 2 : i - 2;
- // const NEXT_CLASS = 'bj-item-col-' + NEXT_I;
- // const DOM = document.querySelector('.' + THIS_CLASS);
- // if (DOM && NEXT_I > 1 && NEXT_I <= 24) {
- // // TODO: 动态重置布局
- // // if (WIDTH < 1400 && i > 7 && NEXT_I > 1 && NEXT_I <= 24) {
- // // DOM.classList.add(NEXT_CLASS);
- // // DOM.classList.remove(THIS_CLASS);
- // // }
- // }
- // }
- // });
- // }
- },
- beforeDestroy() {},
- methods: {
- jumper(ARG_ROUTER, GO_BY_NAME = false) {
- console.log(...arguments);
- const view = this.$route;
- let page = this.pageName;
- // 跳转到 route.name
- GO_BY_NAME = GO_BY_NAME === true;
-
- if (typeof ARG_ROUTER == 'string') {
- page = ARG_ROUTER;
- }
- if (ARG_ROUTER && typeof ARG_ROUTER.name == 'string') {
- page = ARG_ROUTER.name;
- }
- if (!GO_BY_NAME) this.$router.go(-1);
- this.$store.dispatch('tagsView/closeCurrentView', view).then(() => {
- // 目标路由 pageName
- // 1. 如果有被缓存,就调用 eventHub 的 刷新数据
- // 2. 如果没有被缓存,无需手动刷新。(防止多次API请求)
- const hasCached = this.$store.state.tagsView.cachedViews.map(e => e.name).includes(page);
- if (GO_BY_NAME) this.$router.push({ name: page }); // 【返回功能】 暂时使用router.go(-1),不指定返回到router.name
- if (hasCached) {
- setTimeout(() => {
- this.$eventHub.$emit('refresh' + page, 1);
- }, 500);
- }
- });
- },
- // 完成后,按routerName跳转
- complete(ARG_ROUTER) {
- this.jumper(ARG_ROUTER, true);
- },
- // 取消/返回 上一页
- cancel(ARG_ROUTER) {
- this.jumper(ARG_ROUTER, false);
- },
- // 弹窗确定后,再取消/返回 上一页
- tryCancel(ARG_ROUTER, title = '当前页面数据未保存,是否放弃?') {
- this.$confirm(title, '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning',
- })
- .then(() => {
- this.cancel(ARG_ROUTER);
- })
- .catch(() => {
- this.$message({
- type: 'info',
- message: '已取消',
- });
- });
- },
- },
-};
diff --git a/front-end/src/vendor/Export2Excel.js b/front-end/src/vendor/Export2Excel.js
deleted file mode 100644
index d8a2af3..0000000
--- a/front-end/src/vendor/Export2Excel.js
+++ /dev/null
@@ -1,220 +0,0 @@
-/* eslint-disable */
-import { saveAs } from 'file-saver'
-import XLSX from 'xlsx'
-
-function generateArray(table) {
- var out = [];
- var rows = table.querySelectorAll('tr');
- var ranges = [];
- for (var R = 0; R < rows.length; ++R) {
- var outRow = [];
- var row = rows[R];
- var columns = row.querySelectorAll('td');
- for (var C = 0; C < columns.length; ++C) {
- var cell = columns[C];
- var colspan = cell.getAttribute('colspan');
- var rowspan = cell.getAttribute('rowspan');
- var cellValue = cell.innerText;
- if (cellValue !== "" && cellValue == +cellValue) cellValue = +cellValue;
-
- //Skip ranges
- ranges.forEach(function (range) {
- if (R >= range.s.r && R <= range.e.r && outRow.length >= range.s.c && outRow.length <= range.e.c) {
- for (var i = 0; i <= range.e.c - range.s.c; ++i) outRow.push(null);
- }
- });
-
- //Handle Row Span
- if (rowspan || colspan) {
- rowspan = rowspan || 1;
- colspan = colspan || 1;
- ranges.push({
- s: {
- r: R,
- c: outRow.length
- },
- e: {
- r: R + rowspan - 1,
- c: outRow.length + colspan - 1
- }
- });
- };
-
- //Handle Value
- outRow.push(cellValue !== "" ? cellValue : null);
-
- //Handle Colspan
- if (colspan)
- for (var k = 0; k < colspan - 1; ++k) outRow.push(null);
- }
- out.push(outRow);
- }
- return [out, ranges];
-};
-
-function datenum(v, date1904) {
- if (date1904) v += 1462;
- var epoch = Date.parse(v);
- return (epoch - new Date(Date.UTC(1899, 11, 30))) / (24 * 60 * 60 * 1000);
-}
-
-function sheet_from_array_of_arrays(data, opts) {
- var ws = {};
- var range = {
- s: {
- c: 10000000,
- r: 10000000
- },
- e: {
- c: 0,
- r: 0
- }
- };
- for (var R = 0; R != data.length; ++R) {
- for (var C = 0; C != data[R].length; ++C) {
- if (range.s.r > R) range.s.r = R;
- if (range.s.c > C) range.s.c = C;
- if (range.e.r < R) range.e.r = R;
- if (range.e.c < C) range.e.c = C;
- var cell = {
- v: data[R][C]
- };
- if (cell.v == null) continue;
- var cell_ref = XLSX.utils.encode_cell({
- c: C,
- r: R
- });
-
- if (typeof cell.v === 'number') cell.t = 'n';
- else if (typeof cell.v === 'boolean') cell.t = 'b';
- else if (cell.v instanceof Date) {
- cell.t = 'n';
- cell.z = XLSX.SSF._table[14];
- cell.v = datenum(cell.v);
- } else cell.t = 's';
-
- ws[cell_ref] = cell;
- }
- }
- if (range.s.c < 10000000) ws['!ref'] = XLSX.utils.encode_range(range);
- return ws;
-}
-
-function Workbook() {
- if (!(this instanceof Workbook)) return new Workbook();
- this.SheetNames = [];
- this.Sheets = {};
-}
-
-function s2ab(s) {
- var buf = new ArrayBuffer(s.length);
- var view = new Uint8Array(buf);
- for (var i = 0; i != s.length; ++i) view[i] = s.charCodeAt(i) & 0xFF;
- return buf;
-}
-
-export function export_table_to_excel(id) {
- var theTable = document.getElementById(id);
- var oo = generateArray(theTable);
- var ranges = oo[1];
-
- /* original data */
- var data = oo[0];
- var ws_name = "SheetJS";
-
- var wb = new Workbook(),
- ws = sheet_from_array_of_arrays(data);
-
- /* add ranges to worksheet */
- // ws['!cols'] = ['apple', 'banan'];
- ws['!merges'] = ranges;
-
- /* add worksheet to workbook */
- wb.SheetNames.push(ws_name);
- wb.Sheets[ws_name] = ws;
-
- var wbout = XLSX.write(wb, {
- bookType: 'xlsx',
- bookSST: false,
- type: 'binary'
- });
-
- saveAs(new Blob([s2ab(wbout)], {
- type: "application/octet-stream"
- }), "test.xlsx")
-}
-
-export function export_json_to_excel({
- multiHeader = [],
- header,
- data,
- filename,
- merges = [],
- autoWidth = true,
- bookType = 'xlsx'
-} = {}) {
- /* original data */
- filename = filename || 'excel-list'
- data = [...data]
- data.unshift(header);
-
- for (let i = multiHeader.length - 1; i > -1; i--) {
- data.unshift(multiHeader[i])
- }
-
- var ws_name = "SheetJS";
- var wb = new Workbook(),
- ws = sheet_from_array_of_arrays(data);
-
- if (merges.length > 0) {
- if (!ws['!merges']) ws['!merges'] = [];
- merges.forEach(item => {
- ws['!merges'].push(XLSX.utils.decode_range(item))
- })
- }
-
- if (autoWidth) {
- /*设置worksheet每列的最大宽度*/
- const colWidth = data.map(row => row.map(val => {
- /*先判断是否为null/undefined*/
- if (val == null) {
- return {
- 'wch': 10
- };
- }
- /*再判断是否为中文*/
- else if (val.toString().charCodeAt(0) > 255) {
- return {
- 'wch': val.toString().length * 2
- };
- } else {
- return {
- 'wch': val.toString().length
- };
- }
- }))
- /*以第一行为初始值*/
- let result = colWidth[0];
- for (let i = 1; i < colWidth.length; i++) {
- for (let j = 0; j < colWidth[i].length; j++) {
- if (result[j]['wch'] < colWidth[i][j]['wch']) {
- result[j]['wch'] = colWidth[i][j]['wch'];
- }
- }
- }
- ws['!cols'] = result;
- }
-
- /* add worksheet to workbook */
- wb.SheetNames.push(ws_name);
- wb.Sheets[ws_name] = ws;
-
- var wbout = XLSX.write(wb, {
- bookType: bookType,
- bookSST: false,
- type: 'binary'
- });
- saveAs(new Blob([s2ab(wbout)], {
- type: "application/octet-stream"
- }), `${filename}.${bookType}`);
-}
diff --git a/front-end/src/vendor/Export2Zip.js b/front-end/src/vendor/Export2Zip.js
deleted file mode 100644
index db70707..0000000
--- a/front-end/src/vendor/Export2Zip.js
+++ /dev/null
@@ -1,24 +0,0 @@
-/* eslint-disable */
-import { saveAs } from 'file-saver'
-import JSZip from 'jszip'
-
-export function export_txt_to_zip(th, jsonData, txtName, zipName) {
- const zip = new JSZip()
- const txt_name = txtName || 'file'
- const zip_name = zipName || 'file'
- const data = jsonData
- let txtData = `${th}\r\n`
- data.forEach((row) => {
- let tempStr = ''
- tempStr = row.toString()
- txtData += `${tempStr}\r\n`
- })
- zip.file(`${txt_name}.txt`, txtData)
- zip.generateAsync({
- type: "blob"
- }).then((blob) => {
- saveAs(blob, `${zip_name}.zip`)
- }, (err) => {
- alert('导出失败')
- })
-}
diff --git a/front-end/src/views/center-business/after/components/BaseInfoDialog.vue b/front-end/src/views/center-business/after/components/BaseInfoDialog.vue
deleted file mode 100644
index c14c55f..0000000
--- a/front-end/src/views/center-business/after/components/BaseInfoDialog.vue
+++ /dev/null
@@ -1,133 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/InternalOrderList.vue b/front-end/src/views/center-business/after/components/InternalOrderList.vue
deleted file mode 100644
index f4f0ef9..0000000
--- a/front-end/src/views/center-business/after/components/InternalOrderList.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
- {{
- ORDER_INTERNAL_PAYMENT_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
-
-
- {{
- ORDER_INTERNAL_DELIVER_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
-
-
- {{
- ORDER_INTERNAL_RECEIVING_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
-
-
-
- {{ ORDER_BUSINESS_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
-
- {{
- ORDER_INTERNAL_ORDER_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
-
-
-
- {{ scope.row[col.prop] | phoneFilter }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/LogisticsInfoDialog.vue b/front-end/src/views/center-business/after/components/LogisticsInfoDialog.vue
deleted file mode 100644
index 8ef89d3..0000000
--- a/front-end/src/views/center-business/after/components/LogisticsInfoDialog.vue
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/LogisticsListDialog.vue b/front-end/src/views/center-business/after/components/LogisticsListDialog.vue
deleted file mode 100644
index ec17141..0000000
--- a/front-end/src/views/center-business/after/components/LogisticsListDialog.vue
+++ /dev/null
@@ -1,52 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/ReceivingWarehouseDialog.vue b/front-end/src/views/center-business/after/components/ReceivingWarehouseDialog.vue
deleted file mode 100644
index 72f9913..0000000
--- a/front-end/src/views/center-business/after/components/ReceivingWarehouseDialog.vue
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/SkuList.vue b/front-end/src/views/center-business/after/components/SkuList.vue
deleted file mode 100644
index d5f65f1..0000000
--- a/front-end/src/views/center-business/after/components/SkuList.vue
+++ /dev/null
@@ -1,203 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {{ STATUS_YES_NUM.bjGet(scope.row[col.prop]) }}
-
- {{ $number2money(scope.row[col.prop]) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- {{ btn.text }}
-
-
-
-
-
- 应退买家合计:{{ $number2money(totalPrice) }}
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/UploadImgDialog.vue b/front-end/src/views/center-business/after/components/UploadImgDialog.vue
deleted file mode 100644
index 2ad2772..0000000
--- a/front-end/src/views/center-business/after/components/UploadImgDialog.vue
+++ /dev/null
@@ -1,108 +0,0 @@
-
-
-
-
-
-
-
-
- 可拖拽图片调整顺序,支持上传文件格式、尺寸根据各平台与定,大小不超过5M
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/components/api.js b/front-end/src/views/center-business/after/components/api.js
deleted file mode 100644
index 28b15c8..0000000
--- a/front-end/src/views/center-business/after/components/api.js
+++ /dev/null
@@ -1,152 +0,0 @@
-/*
- * 混入
-
- 13-仅退款 1-一审 1-待审核 31310
- 2-审核通过 31311
- 3-审核拒绝 31312
- 2-二审 1-待审核 31320
- 2-审核通过 31321
- 3-审核拒绝 31322
-14-退货退款 1-一审 1-待审核 31410
- 2-审核通过 31411
- 3-审核拒绝 31412
- 2-二审 1-待审核 31420
- 2-审核通过 31421
- 3-审核拒绝 31422
-
- */
-import { afterApi } from '@/api';
-export default {
- props: {},
- data() {
- return {};
- },
- filters: {},
- computed: {
- permissionBtns() {
- return this.$store.state.user.permissionBtns || [];
- },
- // 审核权限
- cptAuditPermission() {
- const INDEX = this.AUDIT_TABS_STATUS.findIndex(
- e => e.value == this.queryParams.endorseStatusList.join(),
- );
- const THIS_RULES = this.PERMISSION_RULES[INDEX];
- return THIS_RULES.some(code => this.permissionBtns.includes(code.toLocaleLowerCase()));
- },
- // 批量选中行的权限
- cptSelectRowsPermissionIsRight() {
- return this.selectedRows.every(e => {
- const INDEX = Number(this.getAuditLvl(e.endorseStatus));
- const THIS_RULES = this.PERMISSION_RULES[INDEX];
- return THIS_RULES.some(code => this.permissionBtns.includes(code.toLocaleLowerCase()));
- });
- },
- },
- watch: {},
- created() {},
- mounted() {},
- beforeDestroy() {},
- methods: {
- getAuditLvl(endorseStatus) {
- return endorseStatus.slice(3, 4);
- },
- getMessageName(endorseStatus) {
- // 取 审核状态码的第四位,1为一审,2为二审,以此类推
- return 'receive' + this.getAuditLvl(endorseStatus);
- },
- /** 审核 */
- onApprovedOrder() {
- if (!this.selectedRows.length) {
- this.$message.warning('请选择审核数据');
- return;
- }
- const checkStatus = this.selectedRows.every(e => e.status == 0);
- if (!checkStatus) {
- this.$message.warning('请选择待审核的订单');
- return;
- }
-
- // 权限判断
- if (!this.cptSelectRowsPermissionIsRight) {
- this.$message.warning('您权限不足,无法审核选中的订单');
- return;
- }
-
- const text = `是否 通过审核 售后单 ${this.selectedRows
- .map(e => e.innerRefundNo)
- .join(',')} ?`;
- this.$confirm(text, '提示', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning',
- })
- .then(() => {
- const auditList = this.selectedRows.map(e => {
- return {
- auditId: e.id,
- failReason: '',
- status: 1,
- messageName: this.getMessageName(e.endorseStatus),
- };
- });
- this.batchAuditRefundOrder(auditList);
- })
- .catch(() => {});
- },
- onRefuseOrder() {
- if (!this.selectedRows.length) {
- this.$message.warning('请选择审核数据');
- return;
- }
- const checkStatus = this.selectedRows.every(e => e.status == 0);
- if (!checkStatus) {
- this.$message.warning('请选择待审核的订单');
- return;
- }
-
- // 权限判断
- if (!this.cptSelectRowsPermissionIsRight) {
- this.$message.warning('您权限不足,无法审核选中的订单');
- return;
- }
-
- const text = `是否 拒绝审核 售后单 ${this.selectedRows
- .map(e => e.innerRefundNo)
- .join(',')} ?`;
- this.$prompt(text, '审核拒绝', {
- inputPlaceholder: '请输入拒绝原因',
- closeOnClickModal: false,
- inputType: 'textarea',
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- // inputPattern: /\S/,
- inputErrorMessage: '请输入',
- })
- .then(({ value }) => {
- const auditList = this.selectedRows.map(e => {
- return {
- auditId: e.id,
- failReason: value,
- status: 0,
- messageName: this.getMessageName(e.endorseStatus),
- };
- });
-
- this.batchAuditRefundOrder(auditList);
- })
- .catch(() => {});
- },
- batchAuditRefundOrder(POST_DATA) {
- afterApi.batchAuditRefundOrder(POST_DATA).then(res => {
- console.log(res);
- if (res.id || res._token || res.content || Array.isArray(res) || res.failed === false) {
- this.$message.success('操作成功');
- setTimeout(() => {
- this.reFresh();
- }, 500);
- }
- });
- },
- },
-};
diff --git a/front-end/src/views/center-business/after/internal/exchange/add.vue b/front-end/src/views/center-business/after/internal/exchange/add.vue
deleted file mode 100644
index 9003105..0000000
--- a/front-end/src/views/center-business/after/internal/exchange/add.vue
+++ /dev/null
@@ -1,242 +0,0 @@
-
-
-
-
- 选择关联销售单
-
- 基础信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 退货商品信息
- 添加退货商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
- 退货物流信息
-
-
-
-
-
-
-
-
-
- 换货商品信息
- 添加换货商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
- 换货物流信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 取 消
- 确 定
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/exchange/data.json b/front-end/src/views/center-business/after/internal/exchange/data.json
deleted file mode 100644
index 048ebfa..0000000
--- a/front-end/src/views/center-business/after/internal/exchange/data.json
+++ /dev/null
@@ -1,27 +0,0 @@
-[
- {
- "thirdRefundNo": "210208298559852",
- "internalRefundNo": "HH202109161314",
- "thirdSellRefundNo": "2102082985597464100",
- "internalSellRefundNo": "XS202109151819003",
- "returnSource": "平台下载",
- "status": "待审核",
- "reason": "7天无理由换货",
- "buyRemark": "",
- "returnStock": "厦门集美仓",
- "returnNo": "85696653250124",
- "returnCompany": "申通物流",
- "nickName": "tb1568246983",
- "returnName": "钱欧明",
- "returnPhone": "139****9858",
- "returnAddress": "福建省 福州市 闽侯县*****",
- "exchangeInternalSellRefundNo": "",
- "storeName": "淘宝_居家旗舰店",
- "channelType": "淘宝",
- "time1": "2021-09-13 19:20:11",
- "time2": "2021-09-13 18:18:11",
- "time3": "2021-09-16 14:35:11",
- "time4": ""
- }
- ]
-
\ No newline at end of file
diff --git a/front-end/src/views/center-business/after/internal/exchange/index.vue b/front-end/src/views/center-business/after/internal/exchange/index.vue
deleted file mode 100644
index bec5ce5..0000000
--- a/front-end/src/views/center-business/after/internal/exchange/index.vue
+++ /dev/null
@@ -1,297 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增换货单
- 导入
- 导出
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/exchange/view.vue b/front-end/src/views/center-business/after/internal/exchange/view.vue
deleted file mode 100644
index 046ea4f..0000000
--- a/front-end/src/views/center-business/after/internal/exchange/view.vue
+++ /dev/null
@@ -1,387 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/refund/add.vue b/front-end/src/views/center-business/after/internal/refund/add.vue
deleted file mode 100644
index a19d77f..0000000
--- a/front-end/src/views/center-business/after/internal/refund/add.vue
+++ /dev/null
@@ -1,615 +0,0 @@
-
-
-
-
- 关联销售单
-
- 选择关联销售单
-
-
-
- 基础信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 财务信息
-
-
-
- 商品信息
-
- 添加退款商品
-
-
-
- 图片附件
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 取 消
- 确 定
-
-
-
-
-
-
-
-
- 关联销售单:{{ form.orderRefundInfoDTO.innerOrderNo }}
-
-
-
-
-
-
- 未发货数量: {{ scope.row.undeliveredQuantity }}
- 已退款数量: {{ scope.row.quantityRefunded }}
- 可退款数量: {{ scope.row.refundableQuantity }}
-
-
-
- 发货状态:{{
- ORDER_INTERNAL_LINE_DELIVER_STATUS_LIST.bjGet(scope.row.deliveryStatus)
- }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/refund/data.json b/front-end/src/views/center-business/after/internal/refund/data.json
deleted file mode 100644
index d32da89..0000000
--- a/front-end/src/views/center-business/after/internal/refund/data.json
+++ /dev/null
@@ -1,96 +0,0 @@
-[
- {
- "thirdRefundNo": "959593215112803",
- "internalRefundNo": "TK8954563024",
- "orderSn": "2102569670297465620",
- "orderType": "0",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109141819323",
- "storeName": "淘宝_居家旗舰店",
- "channelTypeCode": "淘宝",
- "tradeStatus": "11",
- "tradeErr": true,
- "errReason": "买家申请仅退款",
- "resStatus": "0",
- "thirdReceiveStatus": "0",
- "shippingName": "中通快递",
- "shippingSn": "",
- "guaQi": "否",
- "buyMsg": "发中通物流",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "89.90",
- "discountFee": "0.00",
- "shippingFee": "0.00",
- "totalAmount": "49.90",
- "payment": "49.90",
- "sorFavourable": "40.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "yuyuyuyou",
- "receiverName": "陈诗宇",
- "receiverMobile": "156****6366",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "陈诗宇",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-07-06 18:33:53",
- "payTime": "2021-07-06 18:35:53",
- "createTime": "2021-07-06 19:33:53",
- "faHuoTime": "",
- "confirmTime": "2021-07-06 19:33:53",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [
- {
- "no": "TK8954563024",
- "type": "仅退款",
- "status": "待审核"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "中通物流",
- "list": []
- },
- "goodsList": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "89.90",
- "internalPrice": "89.90",
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "afterRefundType": "0",
- "afterRefundSource": "1",
- "afterRefundStatus": "待审核",
- "afterRefundNum": "2",
- "afterRefundAmount": "49.90",
- "afterRefundReason": "7天无理由退货",
- "afterRefundRemark": ""
- }
-]
diff --git a/front-end/src/views/center-business/after/internal/refund/index.vue b/front-end/src/views/center-business/after/internal/refund/index.vue
deleted file mode 100644
index a3dee82..0000000
--- a/front-end/src/views/center-business/after/internal/refund/index.vue
+++ /dev/null
@@ -1,307 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增仅退款单
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{ ORDER_ACTION_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ INTERNAL_AFTER_REFUND_ORDER_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ INTERNAL_AFTER_REFUND_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ AFTER_INTERNAL_RETURN_PAY_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ BJ_AFTER_REFUND_ONLY_REASONS.bjGet(scope.row[col.prop]) }}
-
-
- {{ AFTER_REFUND_TRADE_STATUS.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/refund/view.vue b/front-end/src/views/center-business/after/internal/refund/view.vue
deleted file mode 100644
index 17896c7..0000000
--- a/front-end/src/views/center-business/after/internal/refund/view.vue
+++ /dev/null
@@ -1,922 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/return/add.vue b/front-end/src/views/center-business/after/internal/return/add.vue
deleted file mode 100644
index e8bef69..0000000
--- a/front-end/src/views/center-business/after/internal/return/add.vue
+++ /dev/null
@@ -1,787 +0,0 @@
-
-
-
-
- 关联销售单
-
- 选择关联销售单
-
-
-
- 基础信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 财务信息
-
-
-
- 物流信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品信息
-
- 添加退货商品
-
-
-
- 图片附件
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 取 消
- 确 定
-
-
-
-
-
-
-
-
- 关联销售单:{{ form.orderRefundInfoDTO.innerOrderNo }}
-
-
-
-
-
-
- 已发货数量: {{ scope.row.quantityShipped }}
- 已退货数量: {{ scope.row.quantityReturned }}
- 可退货数量: {{ scope.row.returnableQuantity }}
-
-
-
- 发货状态:{{
- ORDER_INTERNAL_LINE_DELIVER_STATUS_LIST.bjGet(scope.row.deliveryStatus)
- }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/return/data.json b/front-end/src/views/center-business/after/internal/return/data.json
deleted file mode 100644
index e1bbb22..0000000
--- a/front-end/src/views/center-business/after/internal/return/data.json
+++ /dev/null
@@ -1,67 +0,0 @@
-[
- {
- "thirdRefundNo": "210208298559852",
- "internalRefundNo": "TH202109161429006",
- "thirdSellRefundNo": "2102082985597464100",
- "internalSellRefundNo": "XS202109151819003",
- "type": "换货",
- "status": "待结算",
- "returnSource": "换货单",
- "reason": "7天无理由换货",
- "buyRemark": "",
- "serviceRemark": "",
- "returnGoodsNum": "2",
- "money": 118.00,
- "returnMoney": 98.00,
- "payWay": "网店平台退款",
- "receiveType": "",
- "receiveName": "",
- "receiveAccount": "",
- "returnStock": "厦门集美仓",
- "returnNo": "85696653250124",
- "returnCompany": "申通快递",
- "nickName": "tb1568246983",
- "returnName": "钱欧明",
- "returnPhone": "139****9858",
- "returnAddress": "福建省 福州市 闽侯县*****",
- "storeName": "淘宝_居家旗舰店",
- "channelType": "淘宝",
- "time1": "2021-09-13 19:20:11",
- "time2": "2021-09-13 20:35:11",
- "time3": "2021-09-16 14:35:11",
- "time4": "2021-09-16 15:00:11"
- },
- {
- "thirdRefundNo": "2102561665620468920",
- "internalRefundNo": "TH4653300101120",
- "thirdSellRefundNo": "2102561003394443575",
- "internalSellRefundNo": "XS202109151845002",
- "type": "退货",
- "status": "待仓库验收",
- "returnSource": "平台下载",
- "reason": "发货时间太久",
- "buyRemark": "",
- "serviceRemark": "",
- "returnGoodsNum": "1",
- "money": 260.00,
- "returnMoney": 260.00,
- "payWay": "网店平台退款",
- "receiveType": "",
- "receiveName": "",
- "receiveAccount": "",
- "returnStock": "厦门分仓",
- "returnNo": "84122475274",
- "returnCompany": "百世汇通",
- "nickName": "bilaoye",
- "returnName": "饶必",
- "returnPhone": "180****4462",
- "returnAddress": "福建省 厦门市 集美区 *****",
- "storeName": "京东_柒牌官方旗舰店",
- "channelType": "京东",
- "time1": "2021-08-27 18:33:53",
- "time2": "2021-08-28 18:33:53",
- "time3": "2021-08-28 19:56:15",
- "time4": ""
- }
- ]
-
\ No newline at end of file
diff --git a/front-end/src/views/center-business/after/internal/return/index.vue b/front-end/src/views/center-business/after/internal/return/index.vue
deleted file mode 100644
index 661108f..0000000
--- a/front-end/src/views/center-business/after/internal/return/index.vue
+++ /dev/null
@@ -1,333 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增退货退款单
-
-
-
-
-
-
-
-
-
-
-
- 查看
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{ ORDER_ACTION_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ INTERNAL_AFTER_REFUND_ORDER_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ INTERNAL_AFTER_RETURN_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ AFTER_INTERNAL_RETURN_PAY_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ BJ_AFTER_REFUND_GOODS_REASONS.bjGet(scope.row[col.prop]) }}
-
-
- {{ AFTER_RETURN_TRADE_STATUS.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/internal/return/view.vue b/front-end/src/views/center-business/after/internal/return/view.vue
deleted file mode 100644
index 74fcac1..0000000
--- a/front-end/src/views/center-business/after/internal/return/view.vue
+++ /dev/null
@@ -1,1051 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/exchange/data.json b/front-end/src/views/center-business/after/third/exchange/data.json
deleted file mode 100644
index 66e4925..0000000
--- a/front-end/src/views/center-business/after/third/exchange/data.json
+++ /dev/null
@@ -1,25 +0,0 @@
-[
- {
- "thirdRefundNo": "210208298559852",
- "internalRefundNo": "HH202109161314",
- "thirdSellRefundNo": "2102082985597464100",
- "internalSellRefundNo": "XS202109151819003",
- "status": "待审核",
- "reason": "7天无理由换货",
- "remark": "",
- "returnGoodsNum": "2",
- "money": 2.22,
- "returnStock": "厦门集美仓",
- "returnNo": "85696653250124",
- "returnCompany": "申通物流",
- "nickName": "tb1568246983",
- "returnName": "钱欧明",
- "returnPhone": "139****9858",
- "returnAddress": "福建省 福州市 闽侯县*****",
- "thirdStatus": "待发货",
- "storeName": "淘宝_居家旗舰店",
- "channelType": "淘宝",
- "time1": "2021-09-13 19:20:11"
- }
- ]
-
\ No newline at end of file
diff --git a/front-end/src/views/center-business/after/third/exchange/index.vue b/front-end/src/views/center-business/after/third/exchange/index.vue
deleted file mode 100644
index 93553d8..0000000
--- a/front-end/src/views/center-business/after/third/exchange/index.vue
+++ /dev/null
@@ -1,354 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ INTERNAL_AFTER_REFUND_ORDER_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ AFTER_REFUND_TRADE_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/exchange/view.vue b/front-end/src/views/center-business/after/third/exchange/view.vue
deleted file mode 100644
index b5f9d48..0000000
--- a/front-end/src/views/center-business/after/third/exchange/view.vue
+++ /dev/null
@@ -1,198 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/refund/add.vue b/front-end/src/views/center-business/after/third/refund/add.vue
deleted file mode 100644
index 68db85b..0000000
--- a/front-end/src/views/center-business/after/third/refund/add.vue
+++ /dev/null
@@ -1,550 +0,0 @@
-
-
-
-
-
- 三方退款单基本信息
-
-
- 取 消
- 确 定
-
-
-
-
-
- 关联三方订单
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 买家信息
-
-
-
-
-
-
- 商品信息
-
- 添加退款商品
-
-
-
-
-
-
-
-
-
-
-
- 关联三方订单:{{
- form.thirdPartyRefundBaseInfo.outerOrderNo
- }}
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/refund/components/SkuList.vue b/front-end/src/views/center-business/after/third/refund/components/SkuList.vue
deleted file mode 100644
index 3ac0a1c..0000000
--- a/front-end/src/views/center-business/after/third/refund/components/SkuList.vue
+++ /dev/null
@@ -1,140 +0,0 @@
-
-
-
-
-
-
-
-
-
-
- {
-
- {{ SKU_GIFT_TYPE_LIST_FOR_CREATE.bjGet(scope.row.giftFlag) }} }
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/refund/data.json b/front-end/src/views/center-business/after/third/refund/data.json
deleted file mode 100644
index f35e855..0000000
--- a/front-end/src/views/center-business/after/third/refund/data.json
+++ /dev/null
@@ -1,95 +0,0 @@
-[
- {
- "thirdRefundNo": "959593215112803",
- "internalRefundNo": "TK8954563024",
- "orderSn": "2102569670297465620",
- "orderType": "0",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109141819323",
- "storeName": "淘宝_居家旗舰店",
- "channelTypeCode": "淘宝",
- "tradeStatus": "11",
- "tradeErr": true,
- "errReason": "买家申请仅退款",
- "resStatus": "0",
- "thirdReceiveStatus": "0",
- "shippingName": "中通快递",
- "shippingSn": "",
- "guaQi": "否",
- "buyMsg": "发中通物流",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "89.90",
- "discountFee": "0.00",
- "shippingFee": "0.00",
- "totalAmount": "49.90",
- "payment": "49.90",
- "sorFavourable": "40.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "yuyuyuyou",
- "receiverName": "陈诗宇",
- "receiverMobile": "156****6366",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "陈诗宇",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-07-06 18:33:53",
- "payTime": "2021-07-06 18:35:53",
- "createTime": "2021-07-06 19:33:53",
- "faHuoTime": "",
- "confirmTime": "2021-07-06 19:33:53",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [
- {
- "no": "TK8954563024",
- "type": "仅退款",
- "status": "待审核"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "中通物流",
- "list": []
- },
- "goodsList": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "89.90",
- "internalPrice": "89.90",
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "afterRefundType": "0",
- "afterRefundSource": "平台下载",
- "afterRefundStatus": "待审核",
- "afterRefundAmount": "49.90",
- "afterRefundReason": "7天无理由退货",
- "afterRefundRemark": ""
- }
-]
diff --git a/front-end/src/views/center-business/after/third/refund/index.vue b/front-end/src/views/center-business/after/third/refund/index.vue
deleted file mode 100644
index 320d3e9..0000000
--- a/front-end/src/views/center-business/after/third/refund/index.vue
+++ /dev/null
@@ -1,303 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增退款单
-
-
-
-
-
-
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- {{ AFTER_THIRD_REFUND_TRANSFER_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- {{ BJ_AFTER_REFUND_ONLY_REASONS.bjGet(scope.row[col.prop]) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/refund/view.vue b/front-end/src/views/center-business/after/third/refund/view.vue
deleted file mode 100644
index 928c57c..0000000
--- a/front-end/src/views/center-business/after/third/refund/view.vue
+++ /dev/null
@@ -1,381 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/return/add.vue b/front-end/src/views/center-business/after/third/return/add.vue
deleted file mode 100644
index ac86061..0000000
--- a/front-end/src/views/center-business/after/third/return/add.vue
+++ /dev/null
@@ -1,679 +0,0 @@
-
-
-
-
-
- 三方退货单基本信息
-
-
- 取 消
- 确 定
-
-
-
-
-
- 关联三方订单
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 买家信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 退货物流信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品信息
-
- 添加退货商品
-
-
-
-
-
-
-
-
-
-
-
- 关联三方订单:{{
- form.thirdPartyRefundBaseInfo.outerOrderNo
- }}
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/return/data.json b/front-end/src/views/center-business/after/third/return/data.json
deleted file mode 100644
index 240b7f8..0000000
--- a/front-end/src/views/center-business/after/third/return/data.json
+++ /dev/null
@@ -1,24 +0,0 @@
-[
- {
- "thirdRefundNo": "2102561665620468920",
- "internalRefundNo": "TH4653300101120",
- "thirdSellRefundNo": "2102561003394443575",
- "internalSellRefundNo": "XS202109151845002",
- "status": "待仓库验收",
- "nickName": "bilaoye",
- "returnGoodsNum": 1,
- "money": 260.00,
- "reason": "c",
- "remark": "",
- "returnNo": "84122475274",
- "returnCompany": "百世汇通",
- "returnName": "饶必",
- "returnPhone": "180****4462",
- "returnAddress": "福建厦门市集美区...",
- "thirdStatus": "已签收",
- "storeName": "京东_柒牌官方旗舰店",
- "channelType": "京东",
- "time1": "2021-08-27 18:33:53",
- "time2": "2021-08-28 18:33:53"
- }
-]
diff --git a/front-end/src/views/center-business/after/third/return/index.vue b/front-end/src/views/center-business/after/third/return/index.vue
deleted file mode 100644
index 835a324..0000000
--- a/front-end/src/views/center-business/after/third/return/index.vue
+++ /dev/null
@@ -1,303 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新建退货退款单
-
-
-
-
-
-
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- {{ AFTER_THIRD_REFUND_TRANSFER_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- {{ BJ_AFTER_REFUND_GOODS_REASONS.bjGet(scope.row[col.prop]) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/after/third/return/view.vue b/front-end/src/views/center-business/after/third/return/view.vue
deleted file mode 100644
index 9267dd9..0000000
--- a/front-end/src/views/center-business/after/third/return/view.vue
+++ /dev/null
@@ -1,460 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/dealer/components/DataForm.vue b/front-end/src/views/center-business/channel/dealer/components/DataForm.vue
deleted file mode 100644
index 0b5dd99..0000000
--- a/front-end/src/views/center-business/channel/dealer/components/DataForm.vue
+++ /dev/null
@@ -1,126 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/dealer/index.vue b/front-end/src/views/center-business/channel/dealer/index.vue
deleted file mode 100644
index 41085b6..0000000
--- a/front-end/src/views/center-business/channel/dealer/index.vue
+++ /dev/null
@@ -1,272 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 新增经销商
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.status) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/online/components/DataForm.vue b/front-end/src/views/center-business/channel/online/components/DataForm.vue
deleted file mode 100644
index 338f024..0000000
--- a/front-end/src/views/center-business/channel/online/components/DataForm.vue
+++ /dev/null
@@ -1,204 +0,0 @@
-
-
- 基本信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ this.isEdit ? '编辑' : '创建' }}渠道仓
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/online/index.vue b/front-end/src/views/center-business/channel/online/index.vue
deleted file mode 100644
index 3789992..0000000
--- a/front-end/src/views/center-business/channel/online/index.vue
+++ /dev/null
@@ -1,430 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 新增网店
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.status) }}
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.channelWarehouseStatus) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 天
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/physical/components/DataForm.vue b/front-end/src/views/center-business/channel/physical/components/DataForm.vue
deleted file mode 100644
index 4c5215a..0000000
--- a/front-end/src/views/center-business/channel/physical/components/DataForm.vue
+++ /dev/null
@@ -1,242 +0,0 @@
-
-
- 基本信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ this.isEdit ? '编辑' : '创建' }}渠道仓
-
-
-
-
-
-
-
-
-
- 是否为O2O订单自提门店
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/physical/index.vue b/front-end/src/views/center-business/channel/physical/index.vue
deleted file mode 100644
index 535d9b4..0000000
--- a/front-end/src/views/center-business/channel/physical/index.vue
+++ /dev/null
@@ -1,337 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 是否自提
-
-
-
-
-
-
-
-
-
-
- 删除
- 新增门店
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.status) }}
- {{ STATUS_YES_TRUE.bjGet(!!scope.row.selfPickupFlag) }}
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.channelWarehouseStatus) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/storage/components/DataForm.vue b/front-end/src/views/center-business/channel/storage/components/DataForm.vue
deleted file mode 100644
index 10b09b1..0000000
--- a/front-end/src/views/center-business/channel/storage/components/DataForm.vue
+++ /dev/null
@@ -1,226 +0,0 @@
-
-
- 基本信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ this.isEdit ? '编辑' : '创建' }}逻辑仓
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/channel/storage/index.vue b/front-end/src/views/center-business/channel/storage/index.vue
deleted file mode 100644
index 368f3cf..0000000
--- a/front-end/src/views/center-business/channel/storage/index.vue
+++ /dev/null
@@ -1,275 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增仓库
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.logicalFlag) }}
- {{
- scope.row.provinceName +
- scope.row.cityName +
- scope.row.districtName +
- scope.row.detailAddress
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/components/dataForm.vue b/front-end/src/views/center-business/goods/audit/components/dataForm.vue
deleted file mode 100644
index 84d1d0d..0000000
--- a/front-end/src/views/center-business/goods/audit/components/dataForm.vue
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
- 基本信息
-
-
- 服装/男装/羽绒服
-
-
- 柒牌男装羽绒服
-
-
- 00001
-
-
- 柒牌
-
-
- 红色/机械款L
-
-
- SP0001
-
-
- 匹配信息
-
- 淘宝
-
-
- 淘宝-九牧旗舰店
-
-
- SP0001
-
-
- 红色/机械款L
-
-
- 上架
-
- 审核
- 张三
-
- 审核通过
- 审核拒绝
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/components/dialogIdea.vue b/front-end/src/views/center-business/goods/audit/components/dialogIdea.vue
deleted file mode 100644
index a7e9847..0000000
--- a/front-end/src/views/center-business/goods/audit/components/dialogIdea.vue
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/components/DialogIdea.vue b/front-end/src/views/center-business/goods/audit/sku/components/DialogIdea.vue
deleted file mode 100644
index a7e9847..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/components/DialogIdea.vue
+++ /dev/null
@@ -1,54 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/components/PageOrdinaryPackage.vue b/front-end/src/views/center-business/goods/audit/sku/components/PageOrdinaryPackage.vue
deleted file mode 100644
index c4faa6f..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/components/PageOrdinaryPackage.vue
+++ /dev/null
@@ -1,252 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ GOODS_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
-
-
-
- {{ GOODS_AUDIT_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查 看
- 审 核
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/components/RowDetailFromSkuDetailList.vue b/front-end/src/views/center-business/goods/audit/sku/components/RowDetailFromSkuDetailList.vue
deleted file mode 100644
index dcf762b..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/components/RowDetailFromSkuDetailList.vue
+++ /dev/null
@@ -1,55 +0,0 @@
-
-
-
-
-
-
-
- {{ $number2money(scope.row.value) }}
-
- {{ scope.row.value }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/components/ViewForm.vue b/front-end/src/views/center-business/goods/audit/sku/components/ViewForm.vue
deleted file mode 100644
index d8bcea6..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/components/ViewForm.vue
+++ /dev/null
@@ -1,520 +0,0 @@
-
-
-
-
-
-
- 通 过
- 驳 回
-
-
- 通 过
- 驳 回
-
- 返 回
-
-
-
-
-
- {{ data.draftSkuVO ? '修改前' : '商品详情审核' }}
-
-
- 修改后
-
-
-
-
基本信息
-
-
-
- {{ scope.row.name }}
-
-
-
-
-
- {{
- scope.row.newValue
- }}
-
-
-
-
SKU属性
-
-
-
- {{
- scope.row.name
- }}
-
-
-
-
-
- {{
- scope.row.newValue
- }}
-
-
-
-
SKU价格
-
-
-
- {{
- scope.row.name
- }}
-
-
-
-
- {{ $number2money(scope.row.value) }}
-
-
-
-
- {{
- $number2money(scope.row.newValue)
- }}
-
-
-
-
-
SKU 明细
-
-
-
-
- {{ scope.row.value }}
- 详情
-
-
-
-
- {{ scope.row.newValue }}
- 详情
-
-
-
-
-
商品素材
-
-
-
- {{
- scope.row.name
- }}
-
-
-
-
- {{ scope.row.value }}
-
-
-
-
-
-
-
-
- {{
- scope.row.newValue
- }}
-
-
-
-
-
-
-
-
审核
-
- {{
- data.thisSkuVO && data.thisSkuVO.auditCommitName
- }}
-
-
- {{ GOODS_AUDIT_STATUS_LIST.bjGet($route.query.status) }}
-
- {{ data.thisSkuVO && data.thisSkuVO.auditIdea }}
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/ordinary/audit.vue b/front-end/src/views/center-business/goods/audit/sku/ordinary/audit.vue
deleted file mode 100644
index 03a34f0..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/ordinary/audit.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/ordinary/index.vue b/front-end/src/views/center-business/goods/audit/sku/ordinary/index.vue
deleted file mode 100644
index 899fbc4..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/ordinary/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/ordinary/view.vue b/front-end/src/views/center-business/goods/audit/sku/ordinary/view.vue
deleted file mode 100644
index ccd098e..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/ordinary/view.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/package/audit.vue b/front-end/src/views/center-business/goods/audit/sku/package/audit.vue
deleted file mode 100644
index 2dfe26c..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/package/audit.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/package/index.vue b/front-end/src/views/center-business/goods/audit/sku/package/index.vue
deleted file mode 100644
index 400a993..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/package/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/audit/sku/package/view.vue b/front-end/src/views/center-business/goods/audit/sku/package/view.vue
deleted file mode 100644
index 6f2a348..0000000
--- a/front-end/src/views/center-business/goods/audit/sku/package/view.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/brand/components/DataForm.vue b/front-end/src/views/center-business/goods/brand/components/DataForm.vue
deleted file mode 100644
index b53f68a..0000000
--- a/front-end/src/views/center-business/goods/brand/components/DataForm.vue
+++ /dev/null
@@ -1,157 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 建议尺寸:800*800像素,只能上传jpg/png/gif格式文件,文件不能超过50KB
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/brand/index.vue b/front-end/src/views/center-business/goods/brand/index.vue
deleted file mode 100644
index 8337aea..0000000
--- a/front-end/src/views/center-business/goods/brand/index.vue
+++ /dev/null
@@ -1,273 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 新增品牌
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.status) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
- 启用
- 禁用
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/classify/components/DataForm.vue b/front-end/src/views/center-business/goods/classify/components/DataForm.vue
deleted file mode 100644
index f02a2bd..0000000
--- a/front-end/src/views/center-business/goods/classify/components/DataForm.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
- 基本信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 是否叶子结点
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/classify/index.vue b/front-end/src/views/center-business/goods/classify/index.vue
deleted file mode 100644
index fd473d5..0000000
--- a/front-end/src/views/center-business/goods/classify/index.vue
+++ /dev/null
@@ -1,441 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 下载模板
-
- 导入数据
-
- 新增分类
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row[col.prop]) }}
- {{
- GOODS_CLASSIFY_TYPES.bjGet(scope.row[col.prop])
- }}
-
- {{ scope.row.attributeList.length }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 编辑
- 启用
- 禁用删除
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/components/DefaultAttributeList.json b/front-end/src/views/center-business/goods/components/DefaultAttributeList.json
deleted file mode 100644
index 37b115d..0000000
--- a/front-end/src/views/center-business/goods/components/DefaultAttributeList.json
+++ /dev/null
@@ -1,46 +0,0 @@
-[
- {
- "id": null,
- "name": "商品重量",
- "code": "weight",
- "skuFlag": false,
- "status": 1,
- "formType": 3,
- "sourceType": 1,
- "remark": "系统默认属性",
- "attributeValueList": []
- },
- {
- "id": null,
- "name": "商品长度",
- "code": "length",
- "skuFlag": false,
- "status": 1,
- "formType": 3,
- "sourceType": 1,
- "remark": "系统默认属性",
- "attributeValueList": []
- },
- {
- "id": null,
- "name": "商品宽度",
- "code": "width",
- "skuFlag": false,
- "status": 1,
- "formType": 3,
- "sourceType": 1,
- "remark": "系统默认属性",
- "attributeValueList": []
- },
- {
- "id": null,
- "name": "商品高度",
- "code": "height",
- "skuFlag": false,
- "status": 1,
- "formType": 3,
- "sourceType": 1,
- "remark": "系统默认属性",
- "attributeValueList": []
- }
-]
diff --git a/front-end/src/views/center-business/goods/components/GoodsAttribute.vue b/front-end/src/views/center-business/goods/components/GoodsAttribute.vue
deleted file mode 100644
index 3552171..0000000
--- a/front-end/src/views/center-business/goods/components/GoodsAttribute.vue
+++ /dev/null
@@ -1,545 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/components/GoodsAttributeList.vue b/front-end/src/views/center-business/goods/components/GoodsAttributeList.vue
deleted file mode 100644
index adb307c..0000000
--- a/front-end/src/views/center-business/goods/components/GoodsAttributeList.vue
+++ /dev/null
@@ -1,266 +0,0 @@
-
-
- 属性表
-
- 删除
- {{
- isSpu ? '导入分类属性' : '复制上级属性'
- }}
- 添加属性
-
-
-
-
-
-
-
-
-
- {{ INPUT_BOX_TYPE_LIST.bjGet(scope.row.formType) }}
-
-
-
-
- {{ getValueString(scope.row.attributeValueList) }}
-
-
-
-
- {{
- (isSpu ? GOODS_ATTRIBUTE_TYPES : GOODS_ATTRIBUTE_SOURCES).bjGet(scope.row.sourceType)
- }}
-
-
-
-
-
- {{ scope.row.skuFlag ? '是' : '否' }}
-
-
-
-
- 删除
- 编辑
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/components/README.md b/front-end/src/views/center-business/goods/components/README.md
deleted file mode 100644
index fcb78d1..0000000
--- a/front-end/src/views/center-business/goods/components/README.md
+++ /dev/null
@@ -1,14 +0,0 @@
-## 说明
-
-这是 业务中心 - 商品 模块 的组件,仅在 此模块 使用。
-
-### GoodsAttribute.vue 属性组件
- 编辑属性时,添加`isEdit`
- ` `
- ```js
- methods:{
- handleConfirm(data){
- console.log(data)
- }
- }
- ```
\ No newline at end of file
diff --git a/front-end/src/views/center-business/goods/material/components/DataForm.vue b/front-end/src/views/center-business/goods/material/components/DataForm.vue
deleted file mode 100644
index 1d74461..0000000
--- a/front-end/src/views/center-business/goods/material/components/DataForm.vue
+++ /dev/null
@@ -1,267 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 视频:最大支持1段视频,支持上传时长、格式根据各平台写定,大小不超过300M
- 图片:可拖拽图片调整顺序,至少上传一张,支持上传文件格式、尺寸根据各平台与定,大小不超过5M
- 最多上传10份(图片+视频)
-
-
-
-
-
-
-
-
-
-
-
- 可拖拽图片调整顺序,支持上传文件格式、尺寸根据各平台与定,大小不超过5M
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/material/index.vue b/front-end/src/views/center-business/goods/material/index.vue
deleted file mode 100644
index b31366c..0000000
--- a/front-end/src/views/center-business/goods/material/index.vue
+++ /dev/null
@@ -1,229 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增素材
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/otherInfo/add.vue b/front-end/src/views/center-business/goods/otherInfo/add.vue
deleted file mode 100644
index a520b15..0000000
--- a/front-end/src/views/center-business/goods/otherInfo/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/otherInfo/components/ViewForm.vue b/front-end/src/views/center-business/goods/otherInfo/components/ViewForm.vue
deleted file mode 100644
index 78237f2..0000000
--- a/front-end/src/views/center-business/goods/otherInfo/components/ViewForm.vue
+++ /dev/null
@@ -1,410 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/otherInfo/edit.vue b/front-end/src/views/center-business/goods/otherInfo/edit.vue
deleted file mode 100644
index 087c543..0000000
--- a/front-end/src/views/center-business/goods/otherInfo/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/otherInfo/index.vue b/front-end/src/views/center-business/goods/otherInfo/index.vue
deleted file mode 100644
index 9c294ef..0000000
--- a/front-end/src/views/center-business/goods/otherInfo/index.vue
+++ /dev/null
@@ -1,197 +0,0 @@
-
-
-
-
-
- 删除
-
- 新增信息项
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{
- INPUT_BOX_TYPE_LIST.bjGet(scope.row[col.prop])
- }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/components/tableView/index.vue b/front-end/src/views/center-business/goods/price/components/tableView/index.vue
deleted file mode 100644
index c5e0e55..0000000
--- a/front-end/src/views/center-business/goods/price/components/tableView/index.vue
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 重 置
- 查 询
-
-
-
-
- SKU管理
-
-
- 价格项管理
-
-
-
-
-
- {{ scope.row.design ? scope.row.design : '未设置SKU' }}
-
-
-
-
- {{ scope.row.color ? scope.row.color : '未设置SKU' }}
-
-
-
-
- {{ scope.row.spec ? scope.row.spec : '未设置SKU' }}
-
-
-
-
- 未设置价格项
-
-
-
-
-
- 未设置价格项
-
-
-
-
-
- 重 置
- 保 存
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/history/index.vue b/front-end/src/views/center-business/goods/price/history/index.vue
deleted file mode 100644
index 40f9fb2..0000000
--- a/front-end/src/views/center-business/goods/price/history/index.vue
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/item/index.vue b/front-end/src/views/center-business/goods/price/item/index.vue
deleted file mode 100644
index 3f0f9fc..0000000
--- a/front-end/src/views/center-business/goods/price/item/index.vue
+++ /dev/null
@@ -1,343 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{
- GOODS_PRICE_ITEMS.bjGet(scope.row.value)
- }}
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row[col.prop]) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 启用
- 禁用
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ GOODS_PRICE_ITEMS.bjGet(form.value) }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/sku/add.vue b/front-end/src/views/center-business/goods/price/sku/add.vue
deleted file mode 100644
index 195f4de..0000000
--- a/front-end/src/views/center-business/goods/price/sku/add.vue
+++ /dev/null
@@ -1,15 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/sku/components/DataForm.vue b/front-end/src/views/center-business/goods/price/sku/components/DataForm.vue
deleted file mode 100644
index bac8652..0000000
--- a/front-end/src/views/center-business/goods/price/sku/components/DataForm.vue
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/sku/edit.vue b/front-end/src/views/center-business/goods/price/sku/edit.vue
deleted file mode 100644
index 941fd7c..0000000
--- a/front-end/src/views/center-business/goods/price/sku/edit.vue
+++ /dev/null
@@ -1,270 +0,0 @@
-
-
-
基础信息
-
-
-
-
- {{ goodsInfo.code }}
-
-
-
-
- {{ goodsInfo.name }}
-
-
-
-
-
- {{ goodsInfo.categoryName }}
-
-
-
-
SKU组合列表
-
- 批量设置价格
-
-
-
-
-
-
-
-
-
-
-
- {{ props.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/price/sku/index.vue b/front-end/src/views/center-business/goods/price/sku/index.vue
deleted file mode 100644
index 9ec23c0..0000000
--- a/front-end/src/views/center-business/goods/price/sku/index.vue
+++ /dev/null
@@ -1,244 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ isPriceProp(scope.row, col.prop) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 编辑
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/AttributeInput.vue b/front-end/src/views/center-business/goods/sku/components/AttributeInput.vue
deleted file mode 100644
index 395e5c5..0000000
--- a/front-end/src/views/center-business/goods/sku/components/AttributeInput.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
-
-
- {{
- vItem[nameKey]
- }}
-
- 清除选中
-
-
-
- {{
- vItem[nameKey]
- }}
-
-
-
-
-
- {{ $number2money(Number(id || 0)) }}
-
-
-
-
-
- {{ colProp === 'weight' ? 'g' : 'cm' }}
-
-
-
-
-
- {{ id }}
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/ColumnSetting.vue b/front-end/src/views/center-business/goods/sku/components/ColumnSetting.vue
deleted file mode 100644
index 24dab26..0000000
--- a/front-end/src/views/center-business/goods/sku/components/ColumnSetting.vue
+++ /dev/null
@@ -1,148 +0,0 @@
-
-
-
- 全选
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/DataForm.vue b/front-end/src/views/center-business/goods/sku/components/DataForm.vue
deleted file mode 100644
index e74ea46..0000000
--- a/front-end/src/views/center-business/goods/sku/components/DataForm.vue
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
-
- 空值不覆盖
- 空值覆盖
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/PageOrdinaryPackage.vue b/front-end/src/views/center-business/goods/sku/components/PageOrdinaryPackage.vue
deleted file mode 100644
index 7932a0f..0000000
--- a/front-end/src/views/center-business/goods/sku/components/PageOrdinaryPackage.vue
+++ /dev/null
@@ -1,585 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 下载模板
- 导入数据
- 新增普通SKU
- 提交
-
-
- 删除
- 下载模板
- 导入数据
- 新增套餐SKU
- 提交
-
-
- 提交
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- 套
- {{ scope.row[col.prop] }}
-
-
- {{
- GOODS_SKU_STATUS.bjGet(scope.row[col.prop])
- }}
-
- {{
- $number2money(scope.row[col.prop])
- }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/SkuRowData.vue b/front-end/src/views/center-business/goods/sku/components/SkuRowData.vue
deleted file mode 100644
index be86f4c..0000000
--- a/front-end/src/views/center-business/goods/sku/components/SkuRowData.vue
+++ /dev/null
@@ -1,96 +0,0 @@
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/ViewForm.vue b/front-end/src/views/center-business/goods/sku/components/ViewForm.vue
deleted file mode 100644
index ff5440f..0000000
--- a/front-end/src/views/center-business/goods/sku/components/ViewForm.vue
+++ /dev/null
@@ -1,489 +0,0 @@
-
-
-
{{ TITLE_TEXT }}基础信息{{ setFlag }}
-
-
-
- 取 消
- 保存为草稿
- 提 交
-
-
- 返 回
-
-
-
-
-
-
-
-
-
- {{ skuInfo.skuName }}
-
-
-
-
-
-
-
-
- {{ skuInfo.skuCode }}
-
-
-
-
-
-
- {{ skuInfo.spuName }}
-
-
-
-
-
- {{ skuInfo.categoryName }}
-
-
-
-
-
- {{ skuInfo.spuCode }}
-
-
-
-
-
- {{ skuInfo.brandName }}
-
-
-
-
- {{ TITLE_TEXT }}SKU属性# 参与生成sku的属性
-
-
- 系统属性
-
-
-
-
-
-
-
- 分类属性
-
-
- {{ col.value }}
-
-
-
- 商品属性
-
-
- {{ col.value }}
-
-
-
- 附加属性
-
-
-
-
-
-
-
- {{ TITLE_TEXT }}SKU价格
-
-
-
-
-
-
-
- {{ TITLE_TEXT }}SKU明细
-
-
-
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
-
-
-
- {{ TITLE_TEXT }}商品图片
-
-
-
- {{ skuInfo.materialName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 审核详情
-
-
-
-
- {{ GOODS_SKU_VIEW_AUDIT_STATUS.bjGet(skuInfo.status) }}
-
-
-
- {{ skuInfo.auditIdea }}
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/components/addForm.vue b/front-end/src/views/center-business/goods/sku/components/addForm.vue
deleted file mode 100644
index 66fb80c..0000000
--- a/front-end/src/views/center-business/goods/sku/components/addForm.vue
+++ /dev/null
@@ -1,1347 +0,0 @@
-
-
-
{{ TITLE_TEXT }}基础信息
-
- 选择{{ TITLE_TEXT }}商品
-
-
-
-
- 取 消
- 保存为草稿
- 提 交
-
-
- 返 回
-
-
-
-
-
-
-
- {{ goodsInfo.spuCode }}
-
-
-
-
- {{ goodsInfo.name }}
-
-
-
-
-
-
- {{ goodsInfo.categoryName }}
-
-
-
-
- {{ goodsInfo.brandName }}
-
-
-
-
-
-
-
- {{ TITLE_TEXT }}SKU属性# 参与生成sku的属性
-
-
-
-
- {{ groupItem.title }}
-
-
-
-
-
-
- 附加属性
-
-
- {{ attachedItem.attributeName }}
-
-
-
-
- + 添加属性
-
-
-
-
-
新{{ TITLE_TEXT }}SKU列表
-
- {{
- isPackAgeSku ? '生成套餐' : '生成SKU列表'
- }}
- 批量删除{{ TITLE_TEXT }}SKU
-
-
- 批量设置属性
- 设置属性展示
-
-
-
-
-
-
-
-
-
-
-
更多属性
-
- {{
- expandFormVisibleMap[props.row.BJ_EBC_ID] ? '收起属性' : '展开属性'
- }}
-
-
-
-
-
-
-
- {{ props.row[col.prop] }}
-
-
-
-
-
-
-
- SKU明细
-
- 批量删除明细
- 添加SKU明细
-
-
-
-
-
-
-
-
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ col.label }}
-
-
-
-
- {{
- props.row[col.prop]
- }}
-
-
- {{
- props.row[col.prop] || '0.00'
- }}
-
-
-
-
-
-
-
-
-
- 已有{{ TITLE_TEXT }}SKU列表
-
-
-
-
-
-
-
-
更多属性
-
-
-
- {{ $number2money(item[item.prop]) }}
-
-
- {{ props.row[item.prop] }}
-
-
-
-
- SKU明细
-
-
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
-
-
-
-
-
-
-
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
-
-
-
-
-
-
{{ TITLE_TEXT }}商品图片
-
-
-
-
- {{ goodsInfo.materialName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 审核
-
-
-
- 已通过
-
-
- 挺好的
-
-
-
- 被驳回
-
-
- 请修改价格
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/draft/index.vue b/front-end/src/views/center-business/goods/sku/draft/index.vue
deleted file mode 100644
index dcb4e62..0000000
--- a/front-end/src/views/center-business/goods/sku/draft/index.vue
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/ordinary/add.vue b/front-end/src/views/center-business/goods/sku/ordinary/add.vue
deleted file mode 100644
index 0211208..0000000
--- a/front-end/src/views/center-business/goods/sku/ordinary/add.vue
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/ordinary/edit.vue b/front-end/src/views/center-business/goods/sku/ordinary/edit.vue
deleted file mode 100644
index 9e5a089..0000000
--- a/front-end/src/views/center-business/goods/sku/ordinary/edit.vue
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/ordinary/index.vue b/front-end/src/views/center-business/goods/sku/ordinary/index.vue
deleted file mode 100644
index e49b3ef..0000000
--- a/front-end/src/views/center-business/goods/sku/ordinary/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/ordinary/view.vue b/front-end/src/views/center-business/goods/sku/ordinary/view.vue
deleted file mode 100644
index cb05f38..0000000
--- a/front-end/src/views/center-business/goods/sku/ordinary/view.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/package/add.vue b/front-end/src/views/center-business/goods/sku/package/add.vue
deleted file mode 100644
index 5964297..0000000
--- a/front-end/src/views/center-business/goods/sku/package/add.vue
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/package/edit.vue b/front-end/src/views/center-business/goods/sku/package/edit.vue
deleted file mode 100644
index f7d8a87..0000000
--- a/front-end/src/views/center-business/goods/sku/package/edit.vue
+++ /dev/null
@@ -1,28 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/package/index.vue b/front-end/src/views/center-business/goods/sku/package/index.vue
deleted file mode 100644
index 0024979..0000000
--- a/front-end/src/views/center-business/goods/sku/package/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/sku/package/view.vue b/front-end/src/views/center-business/goods/sku/package/view.vue
deleted file mode 100644
index 0dd5744..0000000
--- a/front-end/src/views/center-business/goods/sku/package/view.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/components/PageOrdinaryPackage.vue b/front-end/src/views/center-business/goods/spu/components/PageOrdinaryPackage.vue
deleted file mode 100644
index 3c56b7e..0000000
--- a/front-end/src/views/center-business/goods/spu/components/PageOrdinaryPackage.vue
+++ /dev/null
@@ -1,395 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 下载模板
-
- 导入数据
-
- 新增普通商品
-
-
- 下载模板
-
- 导入数据
- 新增套餐商品
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- {{
- GOODS_TYPE_LIST.bjGet(scope.row[col.prop])
- }}
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
- {{ props.row.status ? '禁用' : '启用' }}
-
- 删除
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/components/viewForm.vue b/front-end/src/views/center-business/goods/spu/components/viewForm.vue
deleted file mode 100644
index 48c6ebd..0000000
--- a/front-end/src/views/center-business/goods/spu/components/viewForm.vue
+++ /dev/null
@@ -1,362 +0,0 @@
-
-
-
基本信息
-
-
- 取 消
- 保 存
-
-
- 返 回
-
-
-
-
-
-
-
- {{ GOODS_COMBO_TYPE_LIST.bjGet(form.setFlag) }}
-
-
-
-
-
- {{ GOODS_TYPE_LIST.bjGet(form.type) }}
-
-
-
-
-
- {{ form.name }}
-
-
-
-
-
-
-
-
-
- {{ form.categoryName }}
-
-
-
-
-
- {{ form.brandName }}
-
-
-
-
-
-
- {{ form.remark }}
-
-
-
-
- 商品图片
-
-
-
-
- {{ form.materialName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/ordinary/add.vue b/front-end/src/views/center-business/goods/spu/ordinary/add.vue
deleted file mode 100644
index 7eaa199..0000000
--- a/front-end/src/views/center-business/goods/spu/ordinary/add.vue
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/ordinary/edit.vue b/front-end/src/views/center-business/goods/spu/ordinary/edit.vue
deleted file mode 100644
index 295536f..0000000
--- a/front-end/src/views/center-business/goods/spu/ordinary/edit.vue
+++ /dev/null
@@ -1,40 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/ordinary/index.vue b/front-end/src/views/center-business/goods/spu/ordinary/index.vue
deleted file mode 100644
index 3c6deab..0000000
--- a/front-end/src/views/center-business/goods/spu/ordinary/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/ordinary/view.vue b/front-end/src/views/center-business/goods/spu/ordinary/view.vue
deleted file mode 100644
index 4511225..0000000
--- a/front-end/src/views/center-business/goods/spu/ordinary/view.vue
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/package/add.vue b/front-end/src/views/center-business/goods/spu/package/add.vue
deleted file mode 100644
index df1e8e7..0000000
--- a/front-end/src/views/center-business/goods/spu/package/add.vue
+++ /dev/null
@@ -1,14 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/package/edit.vue b/front-end/src/views/center-business/goods/spu/package/edit.vue
deleted file mode 100644
index a552aea..0000000
--- a/front-end/src/views/center-business/goods/spu/package/edit.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/package/index.vue b/front-end/src/views/center-business/goods/spu/package/index.vue
deleted file mode 100644
index 92e9548..0000000
--- a/front-end/src/views/center-business/goods/spu/package/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/spu/package/view.vue b/front-end/src/views/center-business/goods/spu/package/view.vue
deleted file mode 100644
index 5099737..0000000
--- a/front-end/src/views/center-business/goods/spu/package/view.vue
+++ /dev/null
@@ -1,45 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/install-service/add.vue b/front-end/src/views/center-business/goods/virtual/install-service/add.vue
deleted file mode 100644
index 53f7f57..0000000
--- a/front-end/src/views/center-business/goods/virtual/install-service/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/install-service/components/ViewForm.vue b/front-end/src/views/center-business/goods/virtual/install-service/components/ViewForm.vue
deleted file mode 100644
index 65ec756..0000000
--- a/front-end/src/views/center-business/goods/virtual/install-service/components/ViewForm.vue
+++ /dev/null
@@ -1,412 +0,0 @@
-
-
-
基础信息
-
- 选择商品
-
-
-
-
-
-
-
- {{ form.spuCode }}
-
-
-
-
- {{ form.spuName }}
-
-
-
-
- {{ form.categoryText }}
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ selectedInfo.type }}
-
-
-
-
- {{ selectedInfo.peopleAmount }}人
-
-
-
- {{ selectedInfo.money }}元
-
-
-
- {{
- (selectedInfo.serviceZone || [])
- .map(e => e.cityDetail.levelTwoAreaName + e.cityDetail.levelThreeAreaName)
- .join(',')
- }}
-
-
-
-
- {{ selectedInfo.remark }}
-
-
-
-
-
售卖店铺
-
-
-
- 全部店铺
- 指定店铺
-
-
- {{ form.isAllStore ? '全部店铺' : '指定店铺' }}
-
-
-
-
- 选择店铺
-
- 删除店铺
-
-
-
-
-
-
-
-
-
-
-
-
-
商品明细
-
- 选择商品
-
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
操作
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/install-service/edit.vue b/front-end/src/views/center-business/goods/virtual/install-service/edit.vue
deleted file mode 100644
index cf71e08..0000000
--- a/front-end/src/views/center-business/goods/virtual/install-service/edit.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/install-service/index.vue b/front-end/src/views/center-business/goods/virtual/install-service/index.vue
deleted file mode 100644
index a8ac442..0000000
--- a/front-end/src/views/center-business/goods/virtual/install-service/index.vue
+++ /dev/null
@@ -1,243 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ scope.row.isAllStore ? '所有' : scope.row.storeCount }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
- 删除
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/install-service/view.vue b/front-end/src/views/center-business/goods/virtual/install-service/view.vue
deleted file mode 100644
index f2da8cf..0000000
--- a/front-end/src/views/center-business/goods/virtual/install-service/view.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/sku-group/add.vue b/front-end/src/views/center-business/goods/virtual/sku-group/add.vue
deleted file mode 100644
index 0effe8d..0000000
--- a/front-end/src/views/center-business/goods/virtual/sku-group/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/sku-group/components/ViewForm.vue b/front-end/src/views/center-business/goods/virtual/sku-group/components/ViewForm.vue
deleted file mode 100644
index 4081aac..0000000
--- a/front-end/src/views/center-business/goods/virtual/sku-group/components/ViewForm.vue
+++ /dev/null
@@ -1,429 +0,0 @@
-
-
-
基础信息
-
- 选择商品
-
-
-
-
-
-
-
- {{ form.spuCode }}
-
-
-
-
- {{ form.spuName }}
-
-
-
-
- {{ form.categoryName }}
-
-
-
-
-
- {{ form.remark }}
-
-
-
-
-
售卖店铺
-
-
-
- 全部店铺
- 指定店铺
-
-
- {{ form.isAllStore ? '全部店铺' : '指定店铺' }}
-
-
-
-
- 选择店铺
-
- 删除店铺
-
-
-
-
-
-
-
-
-
-
-
-
-
商品明细
-
- 选择商品
-
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ isPriceProp(props.row, item.prop) }}
-
-
-
-
-
- {{ props.row.num }}
-
-
-
-
-
操作
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/sku-group/edit.vue b/front-end/src/views/center-business/goods/virtual/sku-group/edit.vue
deleted file mode 100644
index 0157756..0000000
--- a/front-end/src/views/center-business/goods/virtual/sku-group/edit.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/sku-group/index.vue b/front-end/src/views/center-business/goods/virtual/sku-group/index.vue
deleted file mode 100644
index 8a635cd..0000000
--- a/front-end/src/views/center-business/goods/virtual/sku-group/index.vue
+++ /dev/null
@@ -1,207 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ (scope.row[col.prop] || []).length || '所有' }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
- 删除
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/sku-group/view.vue b/front-end/src/views/center-business/goods/virtual/sku-group/view.vue
deleted file mode 100644
index 5736437..0000000
--- a/front-end/src/views/center-business/goods/virtual/sku-group/view.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/spu-son/add.vue b/front-end/src/views/center-business/goods/virtual/spu-son/add.vue
deleted file mode 100644
index 8224840..0000000
--- a/front-end/src/views/center-business/goods/virtual/spu-son/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/spu-son/components/ViewForm.vue b/front-end/src/views/center-business/goods/virtual/spu-son/components/ViewForm.vue
deleted file mode 100644
index ca069c0..0000000
--- a/front-end/src/views/center-business/goods/virtual/spu-son/components/ViewForm.vue
+++ /dev/null
@@ -1,427 +0,0 @@
-
-
-
基础信息
-
- 选择商品
-
-
-
-
-
-
-
- {{ form.spuCode }}
-
-
-
-
- {{ form.spuName }}
-
-
-
-
- {{ form.categoryName }}
-
-
-
-
-
- {{ form.remark }}
-
-
-
-
-
售卖店铺
-
-
-
- 全部店铺
- 指定店铺
-
-
- {{ form.isAllStore ? '全部店铺' : '指定店铺' }}
-
-
-
-
- 选择店铺
-
- 删除店铺
-
-
-
-
-
-
-
-
-
-
-
-
-
商品明细
-
- 选择商品
-
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ isPriceProp(props.row, item.prop) }}
-
-
-
-
-
- {{ props.row.amount }}
-
-
-
-
-
操作
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/spu-son/edit.vue b/front-end/src/views/center-business/goods/virtual/spu-son/edit.vue
deleted file mode 100644
index 9628800..0000000
--- a/front-end/src/views/center-business/goods/virtual/spu-son/edit.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/spu-son/index.vue b/front-end/src/views/center-business/goods/virtual/spu-son/index.vue
deleted file mode 100644
index 55d6e5a..0000000
--- a/front-end/src/views/center-business/goods/virtual/spu-son/index.vue
+++ /dev/null
@@ -1,207 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ scope.row.isAllStore ? '所有' : scope.row.storeCount }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
- 删除
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/goods/virtual/spu-son/view.vue b/front-end/src/views/center-business/goods/virtual/spu-son/view.vue
deleted file mode 100644
index 2f401e8..0000000
--- a/front-end/src/views/center-business/goods/virtual/spu-son/view.vue
+++ /dev/null
@@ -1,35 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/label/hand/components/DataForm.vue b/front-end/src/views/center-business/label/hand/components/DataForm.vue
deleted file mode 100644
index a8f9a17..0000000
--- a/front-end/src/views/center-business/label/hand/components/DataForm.vue
+++ /dev/null
@@ -1,180 +0,0 @@
-
-
- 基础信息
-
-
-
-
-
-
-
-
-
-
-
-
-
- 标签样式
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/label/hand/components/Page.vue b/front-end/src/views/center-business/label/hand/components/Page.vue
deleted file mode 100644
index 4898f2d..0000000
--- a/front-end/src/views/center-business/label/hand/components/Page.vue
+++ /dev/null
@@ -1,380 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 禁用
- 启用
- 新增
-
-
-
-
-
-
-
-
-
- {{ LABEL_SYS_TYPES.bjGet(scope.row[col.prop]) }}
-
-
- {{ STATUS_YES_TRUE.bjGet(scope.row.status) }}
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.status) }}
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/label/hand/index.vue b/front-end/src/views/center-business/label/hand/index.vue
deleted file mode 100644
index e90cc61..0000000
--- a/front-end/src/views/center-business/label/hand/index.vue
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/label/sys/index.vue b/front-end/src/views/center-business/label/sys/index.vue
deleted file mode 100644
index e4bd869..0000000
--- a/front-end/src/views/center-business/label/sys/index.vue
+++ /dev/null
@@ -1,13 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/order/abnormal/components/setWarnDialog.vue b/front-end/src/views/center-business/order/abnormal/components/setWarnDialog.vue
deleted file mode 100644
index aece265..0000000
--- a/front-end/src/views/center-business/order/abnormal/components/setWarnDialog.vue
+++ /dev/null
@@ -1,81 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/abnormal/syncAbnormal.vue b/front-end/src/views/center-business/order/abnormal/syncAbnormal.vue
deleted file mode 100644
index 071fc0a..0000000
--- a/front-end/src/views/center-business/order/abnormal/syncAbnormal.vue
+++ /dev/null
@@ -1,203 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 刷新异常
- 自动刷新设置
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ ORDER_ABNORMAL_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 操 作
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/abnormal/warning.vue b/front-end/src/views/center-business/order/abnormal/warning.vue
deleted file mode 100644
index 85ca1f9..0000000
--- a/front-end/src/views/center-business/order/abnormal/warning.vue
+++ /dev/null
@@ -1,223 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 刷新预警
- 业务预警设置
- 自动刷新设置
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ ORDER_ABNORMAL_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 操 作
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/components/BjOrderStatus/index.vue b/front-end/src/views/center-business/order/components/BjOrderStatus/index.vue
deleted file mode 100644
index 5e657aa..0000000
--- a/front-end/src/views/center-business/order/components/BjOrderStatus/index.vue
+++ /dev/null
@@ -1,58 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/components/EditTags/index.vue b/front-end/src/views/center-business/order/components/EditTags/index.vue
deleted file mode 100644
index 3a55ee9..0000000
--- a/front-end/src/views/center-business/order/components/EditTags/index.vue
+++ /dev/null
@@ -1,76 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/components/FiveFlag/index.vue b/front-end/src/views/center-business/order/components/FiveFlag/index.vue
deleted file mode 100644
index 3dd1fa0..0000000
--- a/front-end/src/views/center-business/order/components/FiveFlag/index.vue
+++ /dev/null
@@ -1,61 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/components/LogTable/index.js b/front-end/src/views/center-business/order/components/LogTable/index.js
deleted file mode 100644
index 2a06a94..0000000
--- a/front-end/src/views/center-business/order/components/LogTable/index.js
+++ /dev/null
@@ -1,17 +0,0 @@
-import Vue from 'vue';
-import OrderLog from './log.vue'; // 引入刚才写的弹框组件
-const OrderLogConstructor = Vue.extend(OrderLog); // 返回一个“扩展实例构造器”
-
-const OrderLogModal = orderNo => {
- const orderLogDom = new OrderLogConstructor({
- el: document.createElement('div') // 将Alert组件挂载到新创建的div上
- });
- document.body.appendChild(orderLogDom.$el); // 把Alert组件的dom添加到body里
-
- // 标题
- orderLogDom.orderNo = orderNo;
- orderLogDom.dialogTableVisible = true;
- orderLogDom.init();
-};
-// // 订单统一调用 $orderlog(内部订单号)
-export default OrderLogModal;
diff --git a/front-end/src/views/center-business/order/components/LogTable/log.vue b/front-end/src/views/center-business/order/components/LogTable/log.vue
deleted file mode 100644
index 0a7f8ef..0000000
--- a/front-end/src/views/center-business/order/components/LogTable/log.vue
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/add.vue b/front-end/src/views/center-business/order/internal/add.vue
deleted file mode 100644
index af16b2d..0000000
--- a/front-end/src/views/center-business/order/internal/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/AddForm.vue b/front-end/src/views/center-business/order/internal/components/AddForm.vue
deleted file mode 100644
index 82aeb06..0000000
--- a/front-end/src/views/center-business/order/internal/components/AddForm.vue
+++ /dev/null
@@ -1,900 +0,0 @@
-
-
-
-
三方订单基本信息
-
-
-
- 取 消
- 保 存
-
-
- 返 回
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 买家以及收货信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 支付信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 优惠信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品信息
-
-
- 批量删除SKU
-
- 添加普通商品
- 添加套餐商品
-
-
-
-
-
-
- ¥ {{ $number2money(goodsTotalAmount) || ' 0.00' }}
-
-
- ¥ {{ $number2money(cptOrderDiscountTotal || 0) || ' 0.00' }}
-
-
- ¥ {{ $number2money(transPriceTotalAmount) || ' 0.00' }}
-
-
- ¥ {{ $number2money(form.orderPaymentInfoDTO.payAmount) || ' 0.00' }}
-
-
- ¥ {{ $number2money(costTotalAmount) || ' 0.00' }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/EditReceiverInfo/index.vue b/front-end/src/views/center-business/order/internal/components/EditReceiverInfo/index.vue
deleted file mode 100644
index d67c57e..0000000
--- a/front-end/src/views/center-business/order/internal/components/EditReceiverInfo/index.vue
+++ /dev/null
@@ -1,156 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/EditRemarks/index.vue b/front-end/src/views/center-business/order/internal/components/EditRemarks/index.vue
deleted file mode 100644
index 84ed2fa..0000000
--- a/front-end/src/views/center-business/order/internal/components/EditRemarks/index.vue
+++ /dev/null
@@ -1,115 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/SkuLineList.vue b/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/SkuLineList.vue
deleted file mode 100644
index 7175d4e..0000000
--- a/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/SkuLineList.vue
+++ /dev/null
@@ -1,212 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- STATUS_YES_NUM.bjGet(!!scope.row.giftFlag)
- }}
-
-
-
-
-
- {{ $number2money(scope.row.thirdSaleAmount) }}
-
-
- {{ $number2money(scope.row.outBalancePrice) }}
-
-
- {{ $number2money(scope.row.innerSalePrice) }}
-
-
- {{ $number2money(scope.row.innerBalancePrice) }}
-
-
- {{ $number2money(scope.row.costAmount) }}
-
-
- {{ $number2money(scope.row.totalCostAmount) }}
-
- {{ $number2money(scope.row.transPrice) }}
-
-
-
- {{ ORDER_INTERNAL_LINE_DELIVER_STATUS_LIST.bjGet(scope.row.deliveryStatus) }}
-
-
- {{ ORDER_INTERNAL_LINE_RECEIVING_STATUS_LIST.bjGet(scope.row.receivingStatus) }}
-
-
-
- {{ ORDER_INTERNAL_LINE_HAND_UP_STATUS_LIST.bjGet(scope.row.suspendStatus) }}
-
-
- {{ ORDER_INTERNAL_LINE_STOCK_BACK_STATUS_LIST.bjGet(scope.row.syncDeliveryStatus) }}
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/SkuList.vue b/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/SkuList.vue
deleted file mode 100644
index 6881fce..0000000
--- a/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/SkuList.vue
+++ /dev/null
@@ -1,387 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 套
- {{ scope.row[col.prop] }}
-
-
- {{
- STATUS_YES_NUM.bjGet(!!scope.row.giftFlag)
- }}
-
-
- {{
- STATUS_YES_NUM.bjGet(!!scope.row.refundFlag)
- }}
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
- {{
- [
- ...ORDER_INTERNAL_SKU_DELIVER_STATUS_LIST,
- ...ORDER_INTERNAL_LINE_DELIVER_STATUS_LIST,
- ].bjGet(scope.row[col.prop])
- }}
-
-
- {{
- [
- ...ORDER_INTERNAL_SKU_RECEIVING_STATUS_LIST,
- ...ORDER_INTERNAL_LINE_RECEIVING_STATUS_LIST,
- ].bjGet(scope.row[col.prop])
- }}
-
-
- {{
- [
- ...ORDER_INTERNAL_SKU_HAND_UP_STATUS_LIST,
- ...ORDER_INTERNAL_LINE_HAND_UP_STATUS_LIST,
- ].bjGet(scope.row[col.prop])
- }}
-
-
- {{
- [
- ...ORDER_INTERNAL_SKU_STOCK_BACK_STATUS_LIST,
- ...ORDER_INTERNAL_LINE_STOCK_BACK_STATUS_LIST,
- ].bjGet(scope.row[col.prop])
- }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/index.vue b/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/index.vue
deleted file mode 100644
index 3f6726c..0000000
--- a/front-end/src/views/center-business/order/internal/components/GoodsInfoTab/index.vue
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
-
-
-
-
- 确认收货
- 挂起
- 解挂
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/LogisticsTable/DeliverTable.vue b/front-end/src/views/center-business/order/internal/components/LogisticsTable/DeliverTable.vue
deleted file mode 100644
index cdd1ad3..0000000
--- a/front-end/src/views/center-business/order/internal/components/LogisticsTable/DeliverTable.vue
+++ /dev/null
@@ -1,90 +0,0 @@
-
-
-
-
-
-
-
-
- {{
- scope.row.code
- }}
-
-
-
-
- {{ item.code }}
-
-
-
-
-
- {{ ORDER_STOCK_OUT_TYPE_LIST.bjGet(scope.row.status) }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/LogisticsTable/PackageTable.vue b/front-end/src/views/center-business/order/internal/components/LogisticsTable/PackageTable.vue
deleted file mode 100644
index b07002a..0000000
--- a/front-end/src/views/center-business/order/internal/components/LogisticsTable/PackageTable.vue
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row.shippingNo }}
-
-
-
-
-
- {{
- scope.row.odoCode
- }}
-
-
-
-
-
-
- 包裹明细
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/LogisticsTable/ParcelDetails.vue b/front-end/src/views/center-business/order/internal/components/LogisticsTable/ParcelDetails.vue
deleted file mode 100644
index a72e91c..0000000
--- a/front-end/src/views/center-business/order/internal/components/LogisticsTable/ParcelDetails.vue
+++ /dev/null
@@ -1,89 +0,0 @@
-
-
-
-
- {{ info.logisticCompany }}
- {{ info.shippingNo }}
- {{ info.odoCode }}
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/LogisticsTable/index.vue b/front-end/src/views/center-business/order/internal/components/LogisticsTable/index.vue
deleted file mode 100644
index 5eb18aa..0000000
--- a/front-end/src/views/center-business/order/internal/components/LogisticsTable/index.vue
+++ /dev/null
@@ -1,26 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/O2oConfirmReceipt/index.vue b/front-end/src/views/center-business/order/internal/components/O2oConfirmReceipt/index.vue
deleted file mode 100644
index 00c2ad7..0000000
--- a/front-end/src/views/center-business/order/internal/components/O2oConfirmReceipt/index.vue
+++ /dev/null
@@ -1,113 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/O2oViewForm.vue b/front-end/src/views/center-business/order/internal/components/O2oViewForm.vue
deleted file mode 100644
index 4c84483..0000000
--- a/front-end/src/views/center-business/order/internal/components/O2oViewForm.vue
+++ /dev/null
@@ -1,1017 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/OrderItemTable/index.vue b/front-end/src/views/center-business/order/internal/components/OrderItemTable/index.vue
deleted file mode 100644
index 9f6168e..0000000
--- a/front-end/src/views/center-business/order/internal/components/OrderItemTable/index.vue
+++ /dev/null
@@ -1,292 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row.num }}
-
-
-
-
-
- {{
- SKU_GIFT_TYPE_LIST_FOR_CREATE.bjGet(scope.row.giftFlag)
- }}
-
-
-
-
-
-
- {{ $number2money(scope.row.outerSingleSaleAmount) }}
-
-
- {{ $number2money(scope.row.salesPrice) }}
-
-
-
-
-
-
-
-
- {{ $number2money(scope.row.salesPrice) }}
-
-
-
-
-
-
-
- {{ $number2money(scope.row.innerSingleSaleAmount) }}
-
-
- {{ $number2money(scope.row.salesPrice) }}
-
-
-
-
-
-
-
- {{
- $number2money((scope.row.innerSingleSaleAmount || 0) * (scope.row.quantity || 0))
- }}
-
-
- {{ $number2money(scope.row.salesPrice) }}
-
-
-
-
-
-
- {{ $number2money(scope.row.costPrice) }}
-
-
-
-
-
- {{
- $number2money(Number(scope.row.costPrice || 0) * Number(scope.row.quantity || 0))
- }}
-
-
- {{ $number2money(scope.row.salesPrice) }}
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/PageIndex.vue b/front-end/src/views/center-business/order/internal/components/PageIndex.vue
deleted file mode 100644
index c60460f..0000000
--- a/front-end/src/views/center-business/order/internal/components/PageIndex.vue
+++ /dev/null
@@ -1,949 +0,0 @@
-
-
-
-
- 常用查询:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 聚合状态:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 时间查询:
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 金额查询:
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 创建订单
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
-
- {{
- ORDER_INTERNAL_DELIVER_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
-
-
- {{
- ORDER_INTERNAL_RECEIVING_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
-
-
- {{ STATUS_YES_NUM.bjGet(scope.row[col.prop]) }}
-
-
- {{
- STATUS_HAVE_TRUE.bjGet(scope.row[col.prop])
- }}
-
-
- {{ ORDER_ACTION_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_BUSINESS_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_TAKING_DELIVERY_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_INTERNAL_SOURCE_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_INTERNAL_HAND_UP_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_INTERNAL_STOCK_BACK_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
-
- {{ scope.row[col.prop] | phoneFilter }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/SuspendReason/index.vue b/front-end/src/views/center-business/order/internal/components/SuspendReason/index.vue
deleted file mode 100644
index 7366ce9..0000000
--- a/front-end/src/views/center-business/order/internal/components/SuspendReason/index.vue
+++ /dev/null
@@ -1,120 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/components/ViewForm.vue b/front-end/src/views/center-business/order/internal/components/ViewForm.vue
deleted file mode 100644
index db968d7..0000000
--- a/front-end/src/views/center-business/order/internal/components/ViewForm.vue
+++ /dev/null
@@ -1,999 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/data.json b/front-end/src/views/center-business/order/internal/data.json
deleted file mode 100644
index e79404e..0000000
--- a/front-end/src/views/center-business/order/internal/data.json
+++ /dev/null
@@ -1,442 +0,0 @@
-[
- {
- "orderSn": "2102569670297464100",
- "orderType": "0",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109141819001",
- "storeName": "天猫_居家日用旗舰",
- "channelTypeCode": "天猫",
- "tradeStatus": "10",
- "shippingName": "中通快递",
- "shippingSn": "",
- "guaQi": "否",
- "buyMsg": "发中通物流",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "89.90",
- "discountFee": "40.00",
- "shippingFee": "0.00",
- "totalAmount": "49.90",
- "payment": "49.90",
- "sorFavourable": "40.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "yuyuyuyou",
- "buyerRemark": "发中通快递",
- "receiverName": "陈诗宇",
- "receiverMobile": "156****6366",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "有买家备注",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "陈诗宇",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-07-05 18:33:53",
- "payTime": "2021-07-05 18:35:53",
- "createTime": "2021-07-05 18:40:53",
- "faHuoTime": "",
- "confirmTime": "",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [],
- "distributionInfo": {
- "type": "物流",
- "name": "中通物流",
- "list": [
- {
- "value1": "逻辑仓2仓",
- "value2": "CKTZ9698547773",
- "value3": "CKJG9698954673",
- "value4": "申通快递",
- "value5": "全部出库",
- "value6": "2",
- "value7": "2"
- },
- {
- "value1": "逻辑仓3仓",
- "value2": "CKTZ9698545821",
- "value3": "CKJG9698954673",
- "value4": "申通快递",
- "value5": "全部出库",
- "value6": "2",
- "value7": "2"
- }
- ],
- "list1": [
- {
- "value1": "45121216222311",
- "value2": "申通快递",
- "value3": "CKTZ9698547773",
- "value4": "1",
- "value5": "2021-09-12 18:20:11"
- }
- ]
- },
- "goodsList": [
- {
- "sign": 0,
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 2,
- "thirdPrice": "59.00",
- "internalPrice": "59.00",
- "avgPlatformPrice": "49.00",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avginternalPrice": "49.00",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00",
- "fhzt": "部分发货",
- "tkzt": "部分退款",
- "detailsList": [
- {
- "sign": 1,
- "status": "待收货",
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "SKU5655565",
- "isGift": "否",
- "isPutup": "否",
- "num": 1,
- "thirdPrice": "59.00",
- "internalPrice": "59.00",
- "avgPlatformPrice": "49.00",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avginternalPrice": "49.00",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00",
- "fhzt": "已发货",
- "tkzt": "否",
- "istk": "否",
- "shStatus": "已审核",
- "xyStatus": "成功",
- "yzStatus": "预占成功"
- },
- {
- "sign": 0,
- "status": "已取消",
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "SKU5655565",
- "isGift": "否",
- "isPutup": "是",
- "num": 1,
- "thirdPrice": "59.00",
- "internalPrice": "59.00",
- "avgPlatformPrice": "49.00",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avginternalPrice": "49.00",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00",
- "fhzt": "未发货",
- "tkzt": "是",
- "istk": "是",
- "shStatus": "未审核",
- "xyStatus": "待寻源",
- "yzStatus": "待预占"
- }
- ]
- }
- ],
- "skuDetail": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ]
- },
- {
- "orderSn": "2102082985597464100",
- "orderType": "0",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109151819003",
- "storeName": "淘宝_居家旗舰店",
- "channelTypeCode": "天猫",
- "tradeStatus": "13",
- "shippingName": "申通快递",
- "shippingSn": "895417896313",
- "guaQi": "是",
- "buyMsg": "",
- "csMark": "",
- "goodsNum": "2",
- "orderAmount": "118.00",
- "discountFee": "20.00",
- "shippingFee": "0.00",
- "totalAmount": "108.90",
- "payment": "98.00",
- "sorFavourable": "10.00",
- "sorThirdPromotion": "10.00",
- "sorBuyerNikeName": "tb1568246983",
- "receiverName": "钱欧明",
- "receiverMobile": "139****9858",
- "isInvoice": "无",
- "receiverAddress": "福建省 福州市 闽侯县*****",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "",
- "invoiceHeader": "",
- "invoiceContent": "",
- "thirdCreateTime": "2021-09-12 11:31:51",
- "payTime": "2021-09-12 11:31:58",
- "createTime": "2021-09-12 12:32:11",
- "faHuoTime": "2021-09-12 18:20:11",
- "confirmTime": "",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [
- {
- "no": "HH202109161314",
- "type": "换货",
- "status": "待发货"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "申通快递",
- "list": [
- {
- "deliveryWarehouse": "逻辑仓2仓",
- "deliveryNoticeNo": "CKTZ9698547773",
- "deliverResultNo": "CKJG9698954673",
- "logisticsCompany": "申通快递",
- "shippingSn": "895417896313",
- "status": "全部出库",
- "num": "2",
- "time": "2021-09-12 18:20:11"
- }
- ]
- },
- "goodsList": [
- {
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 2,
- "thirdPrice": "59.9",
- "internalPrice": "59..9",
- "avgPlatformPrice": "98.9",
- "avgInternalPrice": "98.9",
- "avgFeight": "0.00",
- "avgMarketPrice": "10.00",
- "avgThirdPrice": "10.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "49.9",
- "avgInternalPrice": "49.9",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00"
- },
- {
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "49.9",
- "avgInternalPrice": "49.9",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00"
- }
- ]
- },
- {
- "orderSn": "2102561003394443575",
- "orderType": "0",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109151845002",
- "storeName": "京东-柒牌官方旗舰店",
- "channelTypeCode": "京东",
- "tradeStatus": "13",
- "shippingName": "顺丰速运",
- "shippingSn": "SF5620061322963",
- "guaQi": "否",
- "buyMsg": "",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "299.00",
- "discountFee": "39.00",
- "shippingFee": "0.00",
- "totalAmount": "260.00",
- "payment": "260.00",
- "sorFavourable": "39.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "饶必",
- "receiverName": "陈诗宇",
- "receiverMobile": "180****4462",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "饶必",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-08-25 16:56:12",
- "payTime": "2021-08-25 16:56:15",
- "createTime": "2021-08-26 17:51:12",
- "faHuoTime": "2021-08-26 17:51:12",
- "confirmTime": "",
- "relateSaleOrderList": [
- {
- "no": "XS202109151845002",
- "type": "父订单",
- "status": "取消"
- }
- ],
- "relateAfterOrderList": [
- {
- "no": "TH303100",
- "type": "退货退款",
- "status": "待收货"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "顺丰速运",
- "list": [
- {
- "deliveryWarehouse": "逻辑仓2仓",
- "deliveryNoticeNo": "88888888888",
- "deliverResultNo": "66666666666",
- "logisticsCompany": "顺丰速运",
- "shippingSn": "SF9399016707663780",
- "status": "已出库",
- "num": "1",
- "time": "2021-08-26 17:51:12"
- }
- ]
- },
- "goodsList": [
- {
- "spuName": "柒牌条纹长袖衬衫男韩版商务休闲中青年绣花男士衬衣121JA70230 灰蓝色 L",
- "spuCode": "CS0314622",
- "skuCode": "654C4D44",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "299.00",
- "internalPrice": "299.00",
- "avgPlatformPrice": "260.00",
- "avgInternalPrice": "260.00",
- "avgFeight": "0.00",
- "avgMarketPrice": "39.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "柒牌条纹长袖衬衫男韩版商务休闲中青年绣花男士衬衣121JA70230 灰蓝色 L",
- "spuCode": "CS0314622",
- "skuCode": "654C4D44",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "260.00",
- "avgInternalPrice": "260.00",
- "avgMarketPrice": "39.00",
- "avgThirdPrice": "0.00"
- }
- ]
- },
- {
- "orderSn": "2102569670297465620",
- "orderType": "0",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109141819323",
- "storeName": "淘宝_居家旗舰店",
- "channelTypeCode": "淘宝",
- "tradeStatus": "11",
- "shippingName": "中通快递",
- "shippingSn": "",
- "guaQi": "否",
- "buyMsg": "发中通物流",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "89.90",
- "discountFee": "0.00",
- "shippingFee": "0.00",
- "totalAmount": "49.90",
- "payment": "49.90",
- "sorFavourable": "40.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "yuyuyuyou",
- "receiverName": "陈诗宇",
- "receiverMobile": "156****6366",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "陈诗宇",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-07-06 18:33:53",
- "payTime": "2021-07-06 18:35:53",
- "createTime": "2021-07-06 19:33:53",
- "faHuoTime": "",
- "confirmTime": "2021-07-06 19:33:53",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [
- {
- "no": "TK8954563024",
- "type": "仅退款",
- "status": "待审核"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "中通物流",
- "list": []
- },
- "goodsList": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "89.90",
- "internalPrice": "89.90",
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ]
- }
-]
diff --git a/front-end/src/views/center-business/order/internal/index.vue b/front-end/src/views/center-business/order/internal/index.vue
deleted file mode 100644
index 9cdd106..0000000
--- a/front-end/src/views/center-business/order/internal/index.vue
+++ /dev/null
@@ -1,21 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/order/internal/view.vue b/front-end/src/views/center-business/order/internal/view.vue
deleted file mode 100644
index a42a0e3..0000000
--- a/front-end/src/views/center-business/order/internal/view.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/add.vue b/front-end/src/views/center-business/order/third/add.vue
deleted file mode 100644
index 3fd6a51..0000000
--- a/front-end/src/views/center-business/order/third/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/components/AddForm.vue b/front-end/src/views/center-business/order/third/components/AddForm.vue
deleted file mode 100644
index 8a397eb..0000000
--- a/front-end/src/views/center-business/order/third/components/AddForm.vue
+++ /dev/null
@@ -1,843 +0,0 @@
-
-
-
-
三方订单基本信息
-
-
-
- 取 消
- 保 存
-
-
- 返 回
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 买家以及收货信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 支付信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 优惠信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品信息
-
-
- 删除
-
- 添加商品
-
-
-
-
-
-
-
- ¥ {{ $number2money(goodsTotalAmount) || ' 0.00' }}
-
-
- ¥ {{ $number2money(cptOrderDiscountTotal || 0) || ' 0.00' }}
-
-
-
-
-
- ¥ {{ $number2money(form.thirdOrderPaymentInfoDTO.payAmount) || ' 0.00' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/components/OrderItemTable/index.vue b/front-end/src/views/center-business/order/third/components/OrderItemTable/index.vue
deleted file mode 100644
index f18e2c3..0000000
--- a/front-end/src/views/center-business/order/third/components/OrderItemTable/index.vue
+++ /dev/null
@@ -1,171 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/components/PageIndex.vue b/front-end/src/views/center-business/order/third/components/PageIndex.vue
deleted file mode 100644
index fc5c4d8..0000000
--- a/front-end/src/views/center-business/order/third/components/PageIndex.vue
+++ /dev/null
@@ -1,436 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 创建订单
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{ AFTER_THIRD_REFUND_TRANSFER_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_BACK_RES_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_THIRD_RECEIVING_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ scope.row[col.prop] | phoneFilter }}
-
-
-
- {{ ORDER_BUSINESS_TYPE_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_BACK_RES_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ ORDER_INTERNAL_ORDER_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ THIRD_ORDER_RECEIVE_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- {{ $number2money(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
- 只能上传 Excel 文件,且不超过 2Mb
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/components/ViewForm.vue b/front-end/src/views/center-business/order/third/components/ViewForm.vue
deleted file mode 100644
index 800a86b..0000000
--- a/front-end/src/views/center-business/order/third/components/ViewForm.vue
+++ /dev/null
@@ -1,498 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/components/dialogForm.vue b/front-end/src/views/center-business/order/third/components/dialogForm.vue
deleted file mode 100644
index b57adc4..0000000
--- a/front-end/src/views/center-business/order/third/components/dialogForm.vue
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-
-
-
- {{ type === 0 ? '按订单号下载(支持多个订单,逗号隔开)' : '按时间下载' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/data.json b/front-end/src/views/center-business/order/third/data.json
deleted file mode 100644
index 3bfb76e..0000000
--- a/front-end/src/views/center-business/order/third/data.json
+++ /dev/null
@@ -1,375 +0,0 @@
-[
- {
- "orderSn": "2102569670297464100",
- "orderType": "common",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109141819001",
- "storeName": "天猫_居家日用旗舰",
- "channelTypeCode": "天猫",
- "tradeStatus": "1",
- "tradeErr": false,
- "errReason": "",
- "resStatus": "0",
- "thirdReceiveStatus": "0",
- "shippingName": "中通快递",
- "shippingSn": "",
- "guaQi": "否",
- "buyMsg": "发中通物流",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "89.90",
- "discountFee": "40.00",
- "shippingFee": "0.00",
- "totalAmount": "49.90",
- "payment": "49.90",
- "sorFavourable": "40.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "yuyuyuyou",
- "receiverName": "陈诗宇",
- "receiverMobile": "156****6366",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "有买家备注",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "陈诗宇",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-07-05 18:33:53",
- "payTime": "2021-07-05 18:35:53",
- "createTime": "2021-07-05 18:40:53",
- "faHuoTime": "",
- "confirmTime": "",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [],
- "distributionInfo": {
- "type": "物流",
- "name": "中通物流",
- "list": []
- },
- "goodsList": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "89.90",
- "internalPrice": "89.90",
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ]
- },
- {
- "orderSn": "2102082985597464100",
- "orderType": "common",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109151819003",
- "storeName": "淘宝_居家旗舰店",
- "channelTypeCode": "天猫",
- "tradeStatus": "2",
- "tradeErr": true,
- "errReason": "买家申请换货",
- "resStatus": "0",
- "thirdReceiveStatus": "0",
- "shippingName": "申通快递",
- "shippingSn": "895417896313",
- "guaQi": "是",
- "buyMsg": "",
- "csMark": "",
- "goodsNum": "2",
- "orderAmount": "118.00",
- "discountFee": "20.00",
- "shippingFee": "0.00",
- "totalAmount": "108.90",
- "payment": "98.00",
- "sorFavourable": "10.00",
- "sorThirdPromotion": "10.00",
- "sorBuyerNikeName": "tb1568246983",
- "receiverName": "钱欧明",
- "receiverMobile": "139****9858",
- "isInvoice": "无",
- "receiverAddress": "福建省 福州市 闽侯县*****",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "",
- "invoiceHeader": "",
- "invoiceContent": "",
- "thirdCreateTime": "2021-09-12 11:31:51",
- "payTime": "2021-09-12 11:31:58",
- "createTime": "2021-09-12 12:32:11",
- "faHuoTime": "2021-09-12 18:20:11",
- "confirmTime": "",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [
- {
- "no": "HH202109161314",
- "type": "换货",
- "status": "待发货"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "申通快递",
- "list": [
- {
- "deliveryWarehouse": "逻辑仓2仓",
- "deliveryNoticeNo": "CKTZ9698547773",
- "deliverResultNo": "CKJG9698954673",
- "logisticsCompany": "申通快递",
- "shippingSn": "895417896313",
- "status": "全部出库",
- "num": "2",
- "time": "2021-09-12 18:20:11"
- }
- ]
- },
- "goodsList": [
- {
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 2,
- "thirdPrice": "59.9",
- "internalPrice": "59..9",
- "avgPlatformPrice": "98.9",
- "avgInternalPrice": "98.9",
- "avgFeight": "0.00",
- "avgMarketPrice": "10.00",
- "avgThirdPrice": "10.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "49.9",
- "avgInternalPrice": "49.9",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00"
- },
- {
- "spuName": "手持挂烫机蒸汽熨斗家用小型宿舍学生便携式熨衣服神器熨烫机",
- "spuCode": "S256978541",
- "skuCode": "458963152",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "49.9",
- "avgInternalPrice": "49.9",
- "avgMarketPrice": "5.00",
- "avgThirdPrice": "5.00"
- }
- ]
- },
- {
- "orderSn": "2102561003394443575",
- "orderType": "common",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109151845002",
- "storeName": "京东-柒牌官方旗舰店",
- "channelTypeCode": "京东",
- "tradeStatus": "2",
- "tradeErr": true,
- "errReason": "买家申请退货退款",
- "resStatus": "0",
- "thirdReceiveStatus": "0",
- "shippingName": "顺丰速运",
- "shippingSn": "SF5620061322963",
- "guaQi": "否",
- "buyMsg": "",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "299.00",
- "discountFee": "39.00",
- "shippingFee": "0.00",
- "totalAmount": "260.00",
- "payment": "260.00",
- "sorFavourable": "39.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "bilaoye",
- "receiverName": "饶必",
- "receiverMobile": "180****4462",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "饶必",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-08-25 16:56:12",
- "payTime": "2021-08-25 16:56:15",
- "createTime": "2021-08-26 17:51:12",
- "faHuoTime": "2021-08-26 17:51:12",
- "confirmTime": "",
- "relateSaleOrderList": [
- {
- "no": "XS202109151845002",
- "type": "父订单",
- "status": "取消"
- }
- ],
- "relateAfterOrderList": [
- {
- "no": "TH303100",
- "type": "退货退款",
- "status": "待收货"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "顺丰速运",
- "list": [
- {
- "deliveryWarehouse": "逻辑仓2仓",
- "deliveryNoticeNo": "88888888888",
- "deliverResultNo": "66666666666",
- "logisticsCompany": "顺丰速运",
- "shippingSn": "SF9399016707663780",
- "status": "已出库",
- "num": "1",
- "time": "2021-08-26 17:51:12"
- }
- ]
- },
- "goodsList": [
- {
- "spuName": "柒牌条纹长袖衬衫男韩版商务休闲中青年绣花男士衬衣121JA70230 灰蓝色 L",
- "spuCode": "CS0314622",
- "skuCode": "654C4D44",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "299.00",
- "internalPrice": "299.00",
- "avgPlatformPrice": "260.00",
- "avgInternalPrice": "260.00",
- "avgFeight": "0.00",
- "avgMarketPrice": "39.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "柒牌条纹长袖衬衫男韩版商务休闲中青年绣花男士衬衣121JA70230 灰蓝色 L",
- "spuCode": "CS0314622",
- "skuCode": "654C4D44",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "260.00",
- "avgInternalPrice": "260.00",
- "avgMarketPrice": "39.00",
- "avgThirdPrice": "0.00"
- }
- ]
- },
- {
- "orderSn": "2102569670297465620",
- "orderType": "common",
- "fsSon": "父订单",
- "innerOrderSn": "XS202109141819323",
- "storeName": "淘宝_居家旗舰店",
- "channelTypeCode": "淘宝",
- "tradeStatus": "0",
- "tradeErr": true,
- "errReason": "买家申请仅退款",
- "resStatus": "0",
- "thirdReceiveStatus": "0",
- "shippingName": "中通快递",
- "shippingSn": "",
- "guaQi": "否",
- "buyMsg": "发中通物流",
- "csMark": "",
- "goodsNum": "1",
- "orderAmount": "89.90",
- "discountFee": "0.00",
- "shippingFee": "0.00",
- "totalAmount": "49.90",
- "payment": "49.90",
- "sorFavourable": "40.00",
- "sorThirdPromotion": "0.00",
- "sorBuyerNikeName": "yuyuyuyou",
- "receiverName": "陈诗宇",
- "receiverMobile": "156****6366",
- "isInvoice": "有",
- "receiverAddress": "福建省 厦门市 集美区***",
- "auditReason": "",
- "fiveFlag": "1",
- "payType": "支付宝",
- "payStatus": "已支付",
- "invoiceType": "普通发票",
- "invoiceHeader": "陈诗宇",
- "invoiceContent": "明细",
- "thirdCreateTime": "2021-07-06 18:33:53",
- "payTime": "2021-07-06 18:35:53",
- "createTime": "2021-07-06 19:33:53",
- "faHuoTime": "",
- "confirmTime": "2021-07-06 19:33:53",
- "relateSaleOrderList": [],
- "relateAfterOrderList": [
- {
- "no": "TK8954563024",
- "type": "仅退款",
- "status": "待审核"
- }
- ],
- "distributionInfo": {
- "type": "物流",
- "name": "中通物流",
- "list": []
- },
- "goodsList": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "thirdPrice": "89.90",
- "internalPrice": "89.90",
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgFeight": "0.00",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ],
- "skuDetail": [
- {
- "spuName": "折叠床单人床午睡家用简易午休床陪护便携",
- "spuCode": "S15698752",
- "skuCode": "789654233",
- "isGift": "否",
- "num": 1,
- "avgPlatformPrice": "89.90",
- "avgInternalPrice": "89.90",
- "avgMarketPrice": "40.00",
- "avgThirdPrice": "0.00"
- }
- ]
- }
-]
diff --git a/front-end/src/views/center-business/order/third/index.vue b/front-end/src/views/center-business/order/third/index.vue
deleted file mode 100644
index d00eacf..0000000
--- a/front-end/src/views/center-business/order/third/index.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/order/third/view.vue b/front-end/src/views/center-business/order/third/view.vue
deleted file mode 100644
index 19fc31b..0000000
--- a/front-end/src/views/center-business/order/third/view.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/area/index.vue b/front-end/src/views/center-business/source/area/index.vue
deleted file mode 100644
index ae7c1b3..0000000
--- a/front-end/src/views/center-business/source/area/index.vue
+++ /dev/null
@@ -1,205 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 添 加
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
- 寻源设置
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/components/viewForm.vue b/front-end/src/views/center-business/source/components/viewForm.vue
deleted file mode 100644
index 7d12700..0000000
--- a/front-end/src/views/center-business/source/components/viewForm.vue
+++ /dev/null
@@ -1,150 +0,0 @@
-
-
-
-
拖动排序,越上面优先级越高
-
-
-
-
- {{ item.name }}
-
-
-
-
-
-
-
-
- {{ item.name }}
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/parcel/components/dialogForm.vue b/front-end/src/views/center-business/source/parcel/components/dialogForm.vue
deleted file mode 100644
index 7642fa3..0000000
--- a/front-end/src/views/center-business/source/parcel/components/dialogForm.vue
+++ /dev/null
@@ -1,92 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- -
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/parcel/components/sendOut.vue b/front-end/src/views/center-business/source/parcel/components/sendOut.vue
deleted file mode 100644
index 0316195..0000000
--- a/front-end/src/views/center-business/source/parcel/components/sendOut.vue
+++ /dev/null
@@ -1,130 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/parcel/components/sendOut2.vue b/front-end/src/views/center-business/source/parcel/components/sendOut2.vue
deleted file mode 100644
index 08dc8ed..0000000
--- a/front-end/src/views/center-business/source/parcel/components/sendOut2.vue
+++ /dev/null
@@ -1,216 +0,0 @@
-
-
-
-
-
- 添 加
-
-
- 清 空
- 删 除
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/parcel/components/setMealSeparate.vue b/front-end/src/views/center-business/source/parcel/components/setMealSeparate.vue
deleted file mode 100644
index 2a592de..0000000
--- a/front-end/src/views/center-business/source/parcel/components/setMealSeparate.vue
+++ /dev/null
@@ -1,94 +0,0 @@
-
-
-
-
- 选择套餐
-
- 套 餐
-
-
-
-
-
- 删 除
-
-
-
- 分包明细
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/source/parcel/index.vue b/front-end/src/views/center-business/source/parcel/index.vue
deleted file mode 100644
index 0ea1f1e..0000000
--- a/front-end/src/views/center-business/source/parcel/index.vue
+++ /dev/null
@@ -1,247 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 添 加
- 清 空
- 排除条件设置
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编 辑
- 删 除
-
-
-
-
-
-
-
- 寻源设置
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/abnormal/components/allot.vue b/front-end/src/views/center-business/stock/abnormal/components/allot.vue
deleted file mode 100644
index 19b2ad4..0000000
--- a/front-end/src/views/center-business/stock/abnormal/components/allot.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
- 基础信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ form.supportName }}
-
-
-
- {{ form.receiveName }}
-
-
-
-
-
-
-
-
- 商品明细
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/abnormal/components/purchase.vue b/front-end/src/views/center-business/stock/abnormal/components/purchase.vue
deleted file mode 100644
index dfa2583..0000000
--- a/front-end/src/views/center-business/stock/abnormal/components/purchase.vue
+++ /dev/null
@@ -1,123 +0,0 @@
-
-
-
- 基础信息
-
-
-
-
-
-
- 搜索
-
-
-
- 商品明细
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/abnormal/order/index.vue b/front-end/src/views/center-business/stock/abnormal/order/index.vue
deleted file mode 100644
index d621ece..0000000
--- a/front-end/src/views/center-business/stock/abnormal/order/index.vue
+++ /dev/null
@@ -1,239 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 导 出
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 采 购
- 调 拨
- 移 仓
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/abnormal/warehouse/index.vue b/front-end/src/views/center-business/stock/abnormal/warehouse/index.vue
deleted file mode 100644
index 1d9e85f..0000000
--- a/front-end/src/views/center-business/stock/abnormal/warehouse/index.vue
+++ /dev/null
@@ -1,236 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 导 出
-
- 快速补货
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 采 购
- 调 拨
- 移 仓
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/change/index.vue b/front-end/src/views/center-business/stock/change/index.vue
deleted file mode 100644
index 85e760a..0000000
--- a/front-end/src/views/center-business/stock/change/index.vue
+++ /dev/null
@@ -1,386 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ STOCK_LOCK_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 禁用
- 启用
- 作废
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/components/DialogStockoutOrderAllot.vue b/front-end/src/views/center-business/stock/components/DialogStockoutOrderAllot.vue
deleted file mode 100644
index ef7a596..0000000
--- a/front-end/src/views/center-business/stock/components/DialogStockoutOrderAllot.vue
+++ /dev/null
@@ -1,175 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- 可分配库存:{{ planNum }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 取 消
- 确 定
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/delivery/components/tableDialog.vue b/front-end/src/views/center-business/stock/delivery/components/tableDialog.vue
deleted file mode 100644
index e305d21..0000000
--- a/front-end/src/views/center-business/stock/delivery/components/tableDialog.vue
+++ /dev/null
@@ -1,47 +0,0 @@
-
-
-
-
-
-
-
-
- {{ scope.row.code }}
-
-
-
-
-
- 确 定
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/delivery/inform/index.vue b/front-end/src/views/center-business/stock/delivery/inform/index.vue
deleted file mode 100644
index e6f25c5..0000000
--- a/front-end/src/views/center-business/stock/delivery/inform/index.vue
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
-
- {{
- ORDER_STOCK_OUT_TYPE_LIST.bjGet(scope.row[col.prop])
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/delivery/inform/view.vue b/front-end/src/views/center-business/stock/delivery/inform/view.vue
deleted file mode 100644
index e14c312..0000000
--- a/front-end/src/views/center-business/stock/delivery/inform/view.vue
+++ /dev/null
@@ -1,229 +0,0 @@
-
-
-
出库基本信息
-
- 返 回
-
-
-
-
-
-
- {{ data.code || noDataText }}
-
-
-
- {{ data.outLogicWarehouseCode || noDataText }}
-
-
- {{ data.outLogicWarehouseName || noDataText }}
-
-
- {{ data.outTypeMeaning || noDataText }}
-
-
- {{ ORDER_STOCK_OUT_TYPE_LIST.bjGet(data.status) || noDataText }}
-
-
- {{ data.buyMsg || noDataText }}
-
-
- {{ data.orderMsg || noDataText }}
-
-
-
-
-
-
- {{ data.logisticCompany || noDataText }}
-
-
- {{ data.logisticBusiness || noDataText }}
-
- {{ data.receiverName || noDataText }}
- {{ data.receiverMobile | phoneFilter }}
-
- {{ data.receiverProvince + data.receiverCity + data.receiverDistrict + '******' }}
-
-
- {{ data.creationDate || noDataText }}
-
-
- {{ data.createdName || noDataText }}
-
-
-
-
-
关联单据
-
-
-
- {{ data.frontRecordCode }}
-
-
-
-
-
- {{
- data.orderCode
- }}
-
-
-
-
-
- {{
- data.platformOrderCode
- }}
-
-
-
-
-
-
-
- {{
- index > 1 ? '' : item.code
- }}
- {{
- index === 0 ? ',' : ''
- }}
-
-
-
- 查看更多
-
-
-
-
商品明细
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 发货总数量:{{ qtyData.plannedQty }} 已发货数量:{{ qtyData.alreadyOutQty }}
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/delivery/result/index.vue b/front-end/src/views/center-business/stock/delivery/result/index.vue
deleted file mode 100644
index b2c760c..0000000
--- a/front-end/src/views/center-business/stock/delivery/result/index.vue
+++ /dev/null
@@ -1,208 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{
- ORDER_STOCK_RESULT_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/delivery/result/view.vue b/front-end/src/views/center-business/stock/delivery/result/view.vue
deleted file mode 100644
index b2a71dd..0000000
--- a/front-end/src/views/center-business/stock/delivery/result/view.vue
+++ /dev/null
@@ -1,161 +0,0 @@
-
-
- 出库基本信息
-
- 返 回
-
-
-
-
-
-
- {{ data.resultCode || noDataText }}
-
-
-
- {{ data.outLogicWarehouseCode || noDataText }}
-
-
- {{ data.outLogicWarehouseName || noDataText }}
-
-
- {{ data.logisticCompany || noDataText }}
-
-
- {{ data.logisticBusiness || noDataText }}
-
-
-
-
-
- {{ data.receiverName || noDataText }}
- {{ data.receiverMobile | phoneFilter }}
-
- {{ data.receiverProvince + data.receiverCity + data.receiverDistrict + '******' }}
-
-
- {{ data.creationDate || noDataText }}
-
-
- {{ data.createdName || noDataText }}
-
-
-
-
- 关联单据
-
-
-
- {{ data.shippingNo || noDataText }}
-
-
-
-
-
- {{ data.odoCode || noDataText }}
-
-
-
-
-
- {{ data.wmsCode || noDataText }}
-
-
-
-
- 商品明细
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 已发货数量:{{ qtyData.alreadyOutQty }}
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/plan/add.vue b/front-end/src/views/center-business/stock/distribution/plan/add.vue
deleted file mode 100644
index 0c1a98c..0000000
--- a/front-end/src/views/center-business/stock/distribution/plan/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/plan/components/ViewForm.vue b/front-end/src/views/center-business/stock/distribution/plan/components/ViewForm.vue
deleted file mode 100644
index 03d3f6a..0000000
--- a/front-end/src/views/center-business/stock/distribution/plan/components/ViewForm.vue
+++ /dev/null
@@ -1,434 +0,0 @@
-
-
- 基础信息
-
-
- 取 消
- 确 定
-
- 返 回
-
-
- 审核通过审核拒绝
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品明细
-
- 添加商品
-
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 缺货订单分配
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/plan/edit.vue b/front-end/src/views/center-business/stock/distribution/plan/edit.vue
deleted file mode 100644
index f36beba..0000000
--- a/front-end/src/views/center-business/stock/distribution/plan/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/plan/index.vue b/front-end/src/views/center-business/stock/distribution/plan/index.vue
deleted file mode 100644
index 5cdad5f..0000000
--- a/front-end/src/views/center-business/stock/distribution/plan/index.vue
+++ /dev/null
@@ -1,347 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ STOCK_DISTRIBUTE_PLAN_STATUS.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
-
- 编辑
- 重置
- 作废
- 取消
-
-
-
- 审核通过
- 审核拒绝
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/plan/view.vue b/front-end/src/views/center-business/stock/distribution/plan/view.vue
deleted file mode 100644
index 8531488..0000000
--- a/front-end/src/views/center-business/stock/distribution/plan/view.vue
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/qty/addSku.vue b/front-end/src/views/center-business/stock/distribution/qty/addSku.vue
deleted file mode 100644
index fb07f8f..0000000
--- a/front-end/src/views/center-business/stock/distribution/qty/addSku.vue
+++ /dev/null
@@ -1,534 +0,0 @@
-
-
-
仓位数量分配添加
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 查询
- 重置
-
-
-
-
-
-
-
- 供货仓商品列表
-
- 仓库类型:实仓;仓库编码:{{ form.supportWarehouseCode }};仓库名称:{{
- form.supportWarehouseName
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 分配
-
-
-
- 撤回
-
-
-
-
-
-
-
- 接收仓商品列表
-
- 仓库类型:{{ form.receiveWarehouseTypeName }};仓库编码:{{
- form.receiveWarehouseCode
- }};仓库名称:{{ form.receiveWarehouseName }}
-
-
- 批量设置
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/qty/addWarehouse.vue b/front-end/src/views/center-business/stock/distribution/qty/addWarehouse.vue
deleted file mode 100644
index 26c3c84..0000000
--- a/front-end/src/views/center-business/stock/distribution/qty/addWarehouse.vue
+++ /dev/null
@@ -1,433 +0,0 @@
-
-
- 基础信息
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品明细
-
- 添加商品
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
-
-
- 接收仓库
-
- 添加数量虚仓
- 添加中转虚仓
-
-
-
-
-
-
-
-
-
- {{ $store.state.values.STOCK_WAREHOUSE_TYPE.bjGet(scope.row.receiveTypeCode) }}
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/qty/components/ViewForm.vue b/front-end/src/views/center-business/stock/distribution/qty/components/ViewForm.vue
deleted file mode 100644
index c94e9bc..0000000
--- a/front-end/src/views/center-business/stock/distribution/qty/components/ViewForm.vue
+++ /dev/null
@@ -1,432 +0,0 @@
-
-
- 基础信息
- 返 回
- 刷新
- 保 存
-
-
-
-
-
-
- {{ form.supportName }}
-
-
-
-
-
- {{ form.supportTypeMeaning }}
-
-
-
-
- {{ form.supportCode }}
-
-
-
-
-
- {{ form.receiveName }}
-
-
-
-
-
- {{ form.receiveTypeMeaning }}
-
-
-
-
- {{ form.receiveCode }}
-
-
-
-
-
- 商品明细
- 选择供货仓商品
-
-
-
-
-
-
-
-
-
-
-
-
- {{ props.row.qty }}
-
-
-
-
- 删除
- 编辑
-
- 保存
-
- 取消
-
-
-
-
-
-
- 操作日志
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/qty/edit.vue b/front-end/src/views/center-business/stock/distribution/qty/edit.vue
deleted file mode 100644
index eca5468..0000000
--- a/front-end/src/views/center-business/stock/distribution/qty/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/qty/index.vue b/front-end/src/views/center-business/stock/distribution/qty/index.vue
deleted file mode 100644
index 94cf0c5..0000000
--- a/front-end/src/views/center-business/stock/distribution/qty/index.vue
+++ /dev/null
@@ -1,317 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品分配
- 批量分配
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ $infinityNumber(scope.row[col.prop]) }}
-
-
- {{ STOCK_DISTRIBUTION_PLAN_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ $store.state.values.STOCK_WAREHOUSE_TYPE.bjGet(scope.row[col.prop]) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/qty/view.vue b/front-end/src/views/center-business/stock/distribution/qty/view.vue
deleted file mode 100644
index b4ee94c..0000000
--- a/front-end/src/views/center-business/stock/distribution/qty/view.vue
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/ratio/addSku.vue b/front-end/src/views/center-business/stock/distribution/ratio/addSku.vue
deleted file mode 100644
index e04f751..0000000
--- a/front-end/src/views/center-business/stock/distribution/ratio/addSku.vue
+++ /dev/null
@@ -1,555 +0,0 @@
-
-
-
仓位比例分配添加
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 查询
- 重置
-
-
-
-
-
-
-
- 供货仓商品列表
-
- 仓库类型:实仓;仓库编码:{{ form.supportWarehouseCode }};仓库名称:{{
- form.supportWarehouseName
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 分配
-
-
-
- 撤回
-
-
-
-
-
-
-
- 接收仓商品列表
-
- 仓库类型:{{ form.receiveWarehouseTypeName }};仓库编码:{{
- form.receiveWarehouseCode
- }};仓库名称:{{ form.receiveWarehouseName }}
-
-
-
-
- 仓库结构比例设置
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/ratio/addWarehouse.vue b/front-end/src/views/center-business/stock/distribution/ratio/addWarehouse.vue
deleted file mode 100644
index 465c5ed..0000000
--- a/front-end/src/views/center-business/stock/distribution/ratio/addWarehouse.vue
+++ /dev/null
@@ -1,419 +0,0 @@
-
-
- 基础信息
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品明细
-
- 添加商品
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
-
-
- 接收仓库
-
-
-
-
-
-
-
- {{ $store.state.values.STOCK_WAREHOUSE_TYPE.bjGet(scope.row.receiveTypeCode) }}
-
-
-
-
-
- {{ props.row.structureDistributionQty }} %
-
-
-
-
-
- %
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/ratio/components/ViewForm.vue b/front-end/src/views/center-business/stock/distribution/ratio/components/ViewForm.vue
deleted file mode 100644
index 8274757..0000000
--- a/front-end/src/views/center-business/stock/distribution/ratio/components/ViewForm.vue
+++ /dev/null
@@ -1,424 +0,0 @@
-
-
- 基础信息
- 返 回
- 刷新
- 保 存
-
-
-
-
-
-
- {{ form.supportName }}
-
-
-
-
-
- {{ form.supportTypeMeaning }}
-
-
-
-
- {{ form.supportCode }}
-
-
-
-
-
- {{ form.receiveName }}
-
-
-
-
-
- {{ form.receiveTypeMeaning }}
-
-
-
-
- {{ form.receiveCode }}
-
-
-
-
-
- 商品明细
- 选择供货仓商品
-
-
-
-
-
-
-
-
-
-
- {{ props.row.warehouseStructuralQty }} %
-
-
-
-
-
- {{ props.row.qty }} %
-
-
-
-
- 删除
- 编辑
-
- 保存
-
- 取消
-
-
-
-
-
-
- 操作日志
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/ratio/edit.vue b/front-end/src/views/center-business/stock/distribution/ratio/edit.vue
deleted file mode 100644
index 8d7f2c5..0000000
--- a/front-end/src/views/center-business/stock/distribution/ratio/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/ratio/index.vue b/front-end/src/views/center-business/stock/distribution/ratio/index.vue
deleted file mode 100644
index 033d730..0000000
--- a/front-end/src/views/center-business/stock/distribution/ratio/index.vue
+++ /dev/null
@@ -1,260 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品分配
- 批量分配
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ STOCK_DISTRIBUTION_PLAN_STATUS_LIST.bjGet(scope.row[col.prop]) }}
-
-
- {{ $store.state.values.STOCK_WAREHOUSE_TYPE.bjGet(scope.row[col.prop]) }}
-
-
-
- {{ scope.row[col.prop] }} %
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/distribution/ratio/view.vue b/front-end/src/views/center-business/stock/distribution/ratio/view.vue
deleted file mode 100644
index b4ee94c..0000000
--- a/front-end/src/views/center-business/stock/distribution/ratio/view.vue
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/entry/inform/index.vue b/front-end/src/views/center-business/stock/entry/inform/index.vue
deleted file mode 100644
index dcc8057..0000000
--- a/front-end/src/views/center-business/stock/entry/inform/index.vue
+++ /dev/null
@@ -1,225 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/entry/inform/view.vue b/front-end/src/views/center-business/stock/entry/inform/view.vue
deleted file mode 100644
index 0cdbfd4..0000000
--- a/front-end/src/views/center-business/stock/entry/inform/view.vue
+++ /dev/null
@@ -1,252 +0,0 @@
-
-
- 基本信息
-
- 返 回
- 刷新
-
-
-
-
-
-
- {{ data.code || noDataText }}
-
-
-
- {{ data.receivingLogicWarehouseCode || noDataText }}
-
-
- {{ data.receivingLogicWarehouseName || noDataText }}
-
-
- {{ data.inputTypeMeaning || noDataText }}
-
-
- {{ data.statusMeaning || noDataText }}
-
-
-
-
-
-
- {{ data.returnsName || noDataText }}
- {{ data.returnsMobile | phoneFilter }}
- {{ cptAddress }}
-
- {{ data.creationDate || noDataText }}
-
-
-
-
-
-
- 物流信息
-
-
-
- {{
- data.logisticsList
- .map(item => `${item.logisticsCompanyName} - ${item.logisticsNo}`)
- .join(';')
- }}
-
-
-
-
-
- 关联单据
-
-
-
-
- {{ data.frontRecordCode }}
-
-
-
-
-
- {{
- data.orderCode
- }}
-
-
-
-
-
- {{
- data.platformOrderCode
- }}
-
-
-
-
-
- {{
- data.resultCode
- }}
-
-
-
-
- 商品信息
-
-
-
-
-
-
-
-
-
-
-
- 入库总数量:{{ data.totalQty }} 已入库数量:{{ data.alreadyTotalQty }}
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/entry/result/index.vue b/front-end/src/views/center-business/stock/entry/result/index.vue
deleted file mode 100644
index a1c930e..0000000
--- a/front-end/src/views/center-business/stock/entry/result/index.vue
+++ /dev/null
@@ -1,220 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
- {{
- ORDER_STOCK_RESULT_STATUS_LIST.bjGet(scope.row[col.prop])
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/entry/result/view.vue b/front-end/src/views/center-business/stock/entry/result/view.vue
deleted file mode 100644
index dac69b7..0000000
--- a/front-end/src/views/center-business/stock/entry/result/view.vue
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
- 基本信息
-
- 返 回
- 刷新
-
-
-
-
-
-
- {{ data.code || noDataText }}
-
-
-
- {{ data.receivingLogicWarehouseCode || noDataText }}
-
-
- {{ data.receivingLogicWarehouseName || noDataText }}
-
-
- {{ data.inputTypeMeaning || noDataText }}
-
-
- {{ data.statusMeaning || noDataText }}
-
-
-
-
-
-
- {{ data.returnsName || noDataText }}
- {{ data.returnsMobile | phoneFilter }}
- {{ cptAddress }}
-
- {{ data.creationDate || noDataText }}
-
-
-
-
-
-
- 关联单据
-
-
-
- {{ data.warehouseWarrantCode }}
-
-
-
-
-
- {{
- data.orderCode
- }}
-
-
-
-
-
- {{
- data.platformOrderCode
- }}
-
-
-
-
-
- 商品信息
-
-
-
-
-
-
-
-
-
-
- 已入库数量:{{ data.alreadyQty }}
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/out/add.vue b/front-end/src/views/center-business/stock/out/add.vue
deleted file mode 100644
index f8a0f05..0000000
--- a/front-end/src/views/center-business/stock/out/add.vue
+++ /dev/null
@@ -1,316 +0,0 @@
-
-
-
缺货商品信息
-
-
- 取 消
- 保 存
-
-
-
-
-
-
- 新增商品
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
-
-
-
关联缺货店铺
-
-
- 选择店铺
-
- 批量删除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/out/index.vue b/front-end/src/views/center-business/stock/out/index.vue
deleted file mode 100644
index 1f27dab..0000000
--- a/front-end/src/views/center-business/stock/out/index.vue
+++ /dev/null
@@ -1,325 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{
- STATUS_YES_TRUE.bjGet(scope.row.shopPriorityReplenish)
- }}
-
-
-
-
-
-
- {{
- scope.row[col.prop]
- }}
-
-
-
- {{
- scope.row[col.prop]
- }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编 辑
- 保 存
- 取 消
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/search/index.vue b/front-end/src/views/center-business/stock/search/index.vue
deleted file mode 100644
index 806ae30..0000000
--- a/front-end/src/views/center-business/stock/search/index.vue
+++ /dev/null
@@ -1,218 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- $store.state.values.STOCK_WAREHOUSE_TYPE.bjGet(scope.row[col.prop])
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/synchronization/add.vue b/front-end/src/views/center-business/stock/synchronization/add.vue
deleted file mode 100644
index f00d20c..0000000
--- a/front-end/src/views/center-business/stock/synchronization/add.vue
+++ /dev/null
@@ -1,210 +0,0 @@
-
-
- 基础信息
-
- 选择逻辑仓
-
-
-
- 取 消
- 保 存
-
-
-
-
-
-
-
- 系统自动生成
-
-
-
-
- {{ info.code }}
-
-
-
-
- {{ info.name }}
-
-
-
-
-
-
-
-
-
-
- 商品明细
-
- 选择商品
-
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/synchronization/index.vue b/front-end/src/views/center-business/stock/synchronization/index.vue
deleted file mode 100644
index 3ce5caa..0000000
--- a/front-end/src/views/center-business/stock/synchronization/index.vue
+++ /dev/null
@@ -1,279 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ $store.state.values.STOCK_RECORD_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 审核通过
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/logic/add.vue b/front-end/src/views/center-business/stock/transfer/logic/add.vue
deleted file mode 100644
index eb7d172..0000000
--- a/front-end/src/views/center-business/stock/transfer/logic/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/logic/components/ViewForm.vue b/front-end/src/views/center-business/stock/transfer/logic/components/ViewForm.vue
deleted file mode 100644
index 61ab73a..0000000
--- a/front-end/src/views/center-business/stock/transfer/logic/components/ViewForm.vue
+++ /dev/null
@@ -1,365 +0,0 @@
-
-
- 基础信息
-
-
- 取 消
- 确 定
-
-
- 返 回
-
-
- 审核通过审核拒绝
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品明细
-
- 添加商品
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/logic/edit.vue b/front-end/src/views/center-business/stock/transfer/logic/edit.vue
deleted file mode 100644
index e0668cf..0000000
--- a/front-end/src/views/center-business/stock/transfer/logic/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/logic/index.vue b/front-end/src/views/center-business/stock/transfer/logic/index.vue
deleted file mode 100644
index f4b24b0..0000000
--- a/front-end/src/views/center-business/stock/transfer/logic/index.vue
+++ /dev/null
@@ -1,328 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ STOCK_ALLOT_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- 查看
-
- 修改
- 重置
- 执行
- 再次执行
- 取消
- 作废
-
-
-
- 审核通过
- 审核拒绝
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/logic/view.vue b/front-end/src/views/center-business/stock/transfer/logic/view.vue
deleted file mode 100644
index d3b9262..0000000
--- a/front-end/src/views/center-business/stock/transfer/logic/view.vue
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/virtual/add.vue b/front-end/src/views/center-business/stock/transfer/virtual/add.vue
deleted file mode 100644
index 6ae43d9..0000000
--- a/front-end/src/views/center-business/stock/transfer/virtual/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/virtual/components/ViewForm.vue b/front-end/src/views/center-business/stock/transfer/virtual/components/ViewForm.vue
deleted file mode 100644
index a2d3def..0000000
--- a/front-end/src/views/center-business/stock/transfer/virtual/components/ViewForm.vue
+++ /dev/null
@@ -1,435 +0,0 @@
-
-
- 基础信息
-
-
- 取 消
- 确 定
-
-
- 返 回
-
-
- 审核通过审核拒绝
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 商品明细
-
- 添加商品
-
- 删除商品
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 缺货订单分配
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/virtual/edit.vue b/front-end/src/views/center-business/stock/transfer/virtual/edit.vue
deleted file mode 100644
index d9ccdba..0000000
--- a/front-end/src/views/center-business/stock/transfer/virtual/edit.vue
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/virtual/index.vue b/front-end/src/views/center-business/stock/transfer/virtual/index.vue
deleted file mode 100644
index 99f3250..0000000
--- a/front-end/src/views/center-business/stock/transfer/virtual/index.vue
+++ /dev/null
@@ -1,329 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ STOCK_ALLOT_STATUS.bjGet(scope.row[col.prop]) }}
-
-
- 查看
-
- 修改
- 重置
- 执行
- 再次执行
- 取消
- 作废
-
-
-
- 审核通过
- 审核拒绝
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/stock/transfer/virtual/view.vue b/front-end/src/views/center-business/stock/transfer/virtual/view.vue
deleted file mode 100644
index ff672b7..0000000
--- a/front-end/src/views/center-business/stock/transfer/virtual/view.vue
+++ /dev/null
@@ -1,43 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-business/strategy/autoReplenish/components/tableData.vue b/front-end/src/views/center-business/strategy/autoReplenish/components/tableData.vue
deleted file mode 100644
index 40078ca..0000000
--- a/front-end/src/views/center-business/strategy/autoReplenish/components/tableData.vue
+++ /dev/null
@@ -1,607 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
- 重 置
- 查 询
-
-
-
-
-
-
-
-
- {{ '' }}
-
-
-
-
-
-
-
- {{
- constants[column.constantKey].bjGet(scope.row[column.prop])
- }}
- {{
- (scope.row[column.prop] || [])
- .map(e => (e[column.array] === undefined ? e : e[column.array]))
- .join(',')
- }}
-
- {{ scope.row[column.prop] }}
-
-
-
-
-
-
-
-
-
-
-
- 已选择:
-
-
- 清 空
- 删 除
-
-
-
-
-
-
-
- {{
- constants[column.constantKey].bjGet(scope.row[column.prop])
- }}
- {{
- (scope.row[column.prop] || [])
- .map(e => (e[column.array] === undefined ? e : e[column.array]))
- .join(',')
- }}
-
-
-
-
- {{ scope.row[column.prop] }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/strategy/autoReplenish/onlineStore/components/DataForm.vue b/front-end/src/views/center-business/strategy/autoReplenish/onlineStore/components/DataForm.vue
deleted file mode 100644
index 923441b..0000000
--- a/front-end/src/views/center-business/strategy/autoReplenish/onlineStore/components/DataForm.vue
+++ /dev/null
@@ -1,98 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/strategy/autoReplenish/onlineStore/index.vue b/front-end/src/views/center-business/strategy/autoReplenish/onlineStore/index.vue
deleted file mode 100644
index 6a83484..0000000
--- a/front-end/src/views/center-business/strategy/autoReplenish/onlineStore/index.vue
+++ /dev/null
@@ -1,285 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
- 新增网店
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编 辑
- 删 除
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
diff --git a/front-end/src/views/center-business/strategy/autoReplenish/order/components/DialogForm.vue b/front-end/src/views/center-business/strategy/autoReplenish/order/components/DialogForm.vue
deleted file mode 100644
index 32b28e7..0000000
--- a/front-end/src/views/center-business/strategy/autoReplenish/order/components/DialogForm.vue
+++ /dev/null
@@ -1,63 +0,0 @@
-
-
-
-
- 缺货商品到货,根据优先级补货
-
-
- 订单商品缺货优先
- 网店商品缺货优先
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/strategy/autoReplenish/order/index.vue b/front-end/src/views/center-business/strategy/autoReplenish/order/index.vue
deleted file mode 100644
index c73e835..0000000
--- a/front-end/src/views/center-business/strategy/autoReplenish/order/index.vue
+++ /dev/null
@@ -1,269 +0,0 @@
-
-
-
-
- 设置优先级
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
- 新增商品
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/account/add.vue b/front-end/src/views/center-business/user/account/add.vue
deleted file mode 100644
index e280362..0000000
--- a/front-end/src/views/center-business/user/account/add.vue
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/account/allot.vue b/front-end/src/views/center-business/user/account/allot.vue
deleted file mode 100644
index 4c05a01..0000000
--- a/front-end/src/views/center-business/user/account/allot.vue
+++ /dev/null
@@ -1,255 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
- 分配用户组
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/account/components/DialogCompany/index.vue b/front-end/src/views/center-business/user/account/components/DialogCompany/index.vue
deleted file mode 100644
index 928d056..0000000
--- a/front-end/src/views/center-business/user/account/components/DialogCompany/index.vue
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/account/components/viewForm/index.vue b/front-end/src/views/center-business/user/account/components/viewForm/index.vue
deleted file mode 100644
index 855fedc..0000000
--- a/front-end/src/views/center-business/user/account/components/viewForm/index.vue
+++ /dev/null
@@ -1,431 +0,0 @@
-
-
-
基础信息
-
- 取 消
- 确 定
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
角色
-
-
- 删除
-
-
- 添加角色
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
组织架构
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/account/edit.vue b/front-end/src/views/center-business/user/account/edit.vue
deleted file mode 100644
index 54f1e8e..0000000
--- a/front-end/src/views/center-business/user/account/edit.vue
+++ /dev/null
@@ -1,171 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/account/index.vue b/front-end/src/views/center-business/user/account/index.vue
deleted file mode 100644
index b4bdd8b..0000000
--- a/front-end/src/views/center-business/user/account/index.vue
+++ /dev/null
@@ -1,470 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增账户
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.enabled) }}
- {{ STATUS_YES_TRUE.bjGet(scope.row.locked) }}
- {{ STATUS_YES_TRUE.bjGet(scope.row.activeFlag) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
-
- 操作
-
-
- 关联组织架构
- 修改密码
- 启用
- 禁用
- 锁定
- 解锁
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/data/add.vue b/front-end/src/views/center-business/user/data/add.vue
deleted file mode 100644
index e69de29..0000000
diff --git a/front-end/src/views/center-business/user/data/index.vue b/front-end/src/views/center-business/user/data/index.vue
deleted file mode 100644
index 5995385..0000000
--- a/front-end/src/views/center-business/user/data/index.vue
+++ /dev/null
@@ -1,247 +0,0 @@
-
-
-
-
-
-
-
-
-
- 删除
-
-
- 分配数据权限
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/group/edit.vue b/front-end/src/views/center-business/user/group/edit.vue
deleted file mode 100644
index b0d901c..0000000
--- a/front-end/src/views/center-business/user/group/edit.vue
+++ /dev/null
@@ -1,312 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
-
- 添加用户
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/group/index.vue b/front-end/src/views/center-business/user/group/index.vue
deleted file mode 100644
index 4babe00..0000000
--- a/front-end/src/views/center-business/user/group/index.vue
+++ /dev/null
@@ -1,301 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/role/add.vue b/front-end/src/views/center-business/user/role/add.vue
deleted file mode 100644
index 0a3fb18..0000000
--- a/front-end/src/views/center-business/user/role/add.vue
+++ /dev/null
@@ -1,221 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 说明:行权限定义用户可见的数据范围,用户只可见到符合所设权限字段的数据
-
-
-
-
-
-
-
-
-
-
-
- 添加表
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 说明:列权限定义用户不可见的字段数据,设置的字段会被隐藏处理
-
-
-
- 添加表
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 取 消
- 确 定
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/role/allotData.vue b/front-end/src/views/center-business/user/role/allotData.vue
deleted file mode 100644
index bcb086a..0000000
--- a/front-end/src/views/center-business/user/role/allotData.vue
+++ /dev/null
@@ -1,244 +0,0 @@
-
-
-
-
-
-
-
-
-
- 删除
-
-
- 分配数据权限
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/role/allotMenu.vue b/front-end/src/views/center-business/user/role/allotMenu.vue
deleted file mode 100644
index 60ac3f8..0000000
--- a/front-end/src/views/center-business/user/role/allotMenu.vue
+++ /dev/null
@@ -1,154 +0,0 @@
-
-
- 分配菜单权限
-
- 返 回
- 确 定
-
-
-
-
-
-
-
-
- {{ SETTING_PERMISSION_TYPE_LIST.bjGet(data.permissionType) }}{{ node.label }}
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/role/allotUser.vue b/front-end/src/views/center-business/user/role/allotUser.vue
deleted file mode 100644
index 9aaf48e..0000000
--- a/front-end/src/views/center-business/user/role/allotUser.vue
+++ /dev/null
@@ -1,242 +0,0 @@
-
-
-
-
-
-
-
-
-
- 删除
-
-
- 添加用户
-
-
-
- 返 回
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/role/index.vue b/front-end/src/views/center-business/user/role/index.vue
deleted file mode 100644
index 259e1d4..0000000
--- a/front-end/src/views/center-business/user/role/index.vue
+++ /dev/null
@@ -1,494 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 创建角色
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.enabled) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
-
- 操作
-
-
- 禁用
- 启用
-
- 分配用户
- 分配菜单权限
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ node.label }}
- 按钮
- API
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/user/role/menuData.vue b/front-end/src/views/center-business/user/role/menuData.vue
deleted file mode 100644
index 9745d4f..0000000
--- a/front-end/src/views/center-business/user/role/menuData.vue
+++ /dev/null
@@ -1,129 +0,0 @@
-
-
- 分配菜单权限
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/worksheet/service/components/DataForm.vue b/front-end/src/views/center-business/worksheet/service/components/DataForm.vue
deleted file mode 100644
index 724c4fe..0000000
--- a/front-end/src/views/center-business/worksheet/service/components/DataForm.vue
+++ /dev/null
@@ -1,252 +0,0 @@
-
-
-
-
- {{ form.installServiceCode || '自动生成' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 人
-
-
-
-
-
-
- 元
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/worksheet/service/index.vue b/front-end/src/views/center-business/worksheet/service/index.vue
deleted file mode 100644
index fc7917f..0000000
--- a/front-end/src/views/center-business/worksheet/service/index.vue
+++ /dev/null
@@ -1,197 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
- {{
- STATUS_ENABLED_TRUE.bjGet(scope.row.status)
- }}
- {{ $number2money(scope.row.money) }}
-
- {{
- (scope.row.serviceZone || [])
- .map(e => e.cityDetail.levelTwoAreaName + e.cityDetail.levelThreeAreaName)
- .join(',')
- }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 查看
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-business/worksheet/service/view.vue b/front-end/src/views/center-business/worksheet/service/view.vue
deleted file mode 100644
index cb5bba2..0000000
--- a/front-end/src/views/center-business/worksheet/service/view.vue
+++ /dev/null
@@ -1,83 +0,0 @@
-
-
- 基础信息
-
-
-
-
- {{ form.installServiceCode }}
-
-
-
-
- {{ form.name }}
-
-
-
-
- {{ form.type }}
-
-
-
-
- {{ form.peopleAmount }}人
-
-
-
- {{ form.money }}元
-
-
-
- {{
- (form.serviceZone || [])
- .map(e => e.cityDetail.levelTwoAreaName + e.cityDetail.levelThreeAreaName)
- .join(',')
- }}
-
-
-
-
- {{ form.remark }}
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/after-sales-reason/components/DataForm.vue b/front-end/src/views/center-setting/base-data/after-sales-reason/components/DataForm.vue
deleted file mode 100644
index a71cd42..0000000
--- a/front-end/src/views/center-setting/base-data/after-sales-reason/components/DataForm.vue
+++ /dev/null
@@ -1,118 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/after-sales-reason/refund.vue b/front-end/src/views/center-setting/base-data/after-sales-reason/refund.vue
deleted file mode 100644
index a7e911c..0000000
--- a/front-end/src/views/center-setting/base-data/after-sales-reason/refund.vue
+++ /dev/null
@@ -1,298 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增售后原因
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.status) }}
-
- {{ USE_FLAG_NUM.bjGet(scope.row.useFlag) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/after-sales-reason/return.vue b/front-end/src/views/center-setting/base-data/after-sales-reason/return.vue
deleted file mode 100644
index 14557e8..0000000
--- a/front-end/src/views/center-setting/base-data/after-sales-reason/return.vue
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增售后原因
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.status) }}
-
- {{ USE_FLAG_NUM.bjGet(scope.row.useFlag) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/code-rule/components/DataForm.vue b/front-end/src/views/center-setting/base-data/code-rule/components/DataForm.vue
deleted file mode 100644
index df5ee12..0000000
--- a/front-end/src/views/center-setting/base-data/code-rule/components/DataForm.vue
+++ /dev/null
@@ -1,121 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/code-rule/components/DataFormRuleDist.vue b/front-end/src/views/center-setting/base-data/code-rule/components/DataFormRuleDist.vue
deleted file mode 100644
index 0277708..0000000
--- a/front-end/src/views/center-setting/base-data/code-rule/components/DataFormRuleDist.vue
+++ /dev/null
@@ -1,209 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/code-rule/components/ViewForm.vue b/front-end/src/views/center-setting/base-data/code-rule/components/ViewForm.vue
deleted file mode 100644
index 192c732..0000000
--- a/front-end/src/views/center-setting/base-data/code-rule/components/ViewForm.vue
+++ /dev/null
@@ -1,277 +0,0 @@
-
-
- 基础信息
-
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 编码段
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/code-rule/edit.vue b/front-end/src/views/center-setting/base-data/code-rule/edit.vue
deleted file mode 100644
index 46fd2ec..0000000
--- a/front-end/src/views/center-setting/base-data/code-rule/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/code-rule/index.vue b/front-end/src/views/center-setting/base-data/code-rule/index.vue
deleted file mode 100644
index 103e008..0000000
--- a/front-end/src/views/center-setting/base-data/code-rule/index.vue
+++ /dev/null
@@ -1,240 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/country/components/DataForm.vue b/front-end/src/views/center-setting/base-data/country/components/DataForm.vue
deleted file mode 100644
index 83a45a3..0000000
--- a/front-end/src/views/center-setting/base-data/country/components/DataForm.vue
+++ /dev/null
@@ -1,137 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/country/index.vue b/front-end/src/views/center-setting/base-data/country/index.vue
deleted file mode 100644
index 95a2caa..0000000
--- a/front-end/src/views/center-setting/base-data/country/index.vue
+++ /dev/null
@@ -1,204 +0,0 @@
-
-
-
-
-
- 新增国家
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag) }}
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 编辑
- 启用
- 禁用
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/lov/components/DataForm.vue b/front-end/src/views/center-setting/base-data/lov/components/DataForm.vue
deleted file mode 100644
index 481c39a..0000000
--- a/front-end/src/views/center-setting/base-data/lov/components/DataForm.vue
+++ /dev/null
@@ -1,122 +0,0 @@
-
-
- 基本信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/lov/index.vue b/front-end/src/views/center-setting/base-data/lov/index.vue
deleted file mode 100644
index 69ef53d..0000000
--- a/front-end/src/views/center-setting/base-data/lov/index.vue
+++ /dev/null
@@ -1,295 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 新增
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/region/components/DataForm.vue b/front-end/src/views/center-setting/base-data/region/components/DataForm.vue
deleted file mode 100644
index 88db715..0000000
--- a/front-end/src/views/center-setting/base-data/region/components/DataForm.vue
+++ /dev/null
@@ -1,149 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/base-data/region/index.vue b/front-end/src/views/center-setting/base-data/region/index.vue
deleted file mode 100644
index ee3a944..0000000
--- a/front-end/src/views/center-setting/base-data/region/index.vue
+++ /dev/null
@@ -1,257 +0,0 @@
-
-
-
-
-
- 新增省级区域
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 新建下级区域
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/search/components/DataForm.vue b/front-end/src/views/center-setting/file/search/components/DataForm.vue
deleted file mode 100644
index 6f2a7e6..0000000
--- a/front-end/src/views/center-setting/file/search/components/DataForm.vue
+++ /dev/null
@@ -1,124 +0,0 @@
-
-
- 配置
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 文件
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/search/index.vue b/front-end/src/views/center-setting/file/search/index.vue
deleted file mode 100644
index 12c15b2..0000000
--- a/front-end/src/views/center-setting/file/search/index.vue
+++ /dev/null
@@ -1,360 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 文件上传
-
-
-
-
-
-
-
- {{
- STATUS_YES_NUM.bjGet(scope.row.defaultFlag)
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 预览
- 下载
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/storage/components/DataForm.vue b/front-end/src/views/center-setting/file/storage/components/DataForm.vue
deleted file mode 100644
index 81f7a3b..0000000
--- a/front-end/src/views/center-setting/file/storage/components/DataForm.vue
+++ /dev/null
@@ -1,233 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/storage/index.vue b/front-end/src/views/center-setting/file/storage/index.vue
deleted file mode 100644
index 31eb2f1..0000000
--- a/front-end/src/views/center-setting/file/storage/index.vue
+++ /dev/null
@@ -1,230 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
- {{
- STATUS_YES_NUM.bjGet(scope.row.defaultFlag)
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/upload-config/components/DataForm.vue b/front-end/src/views/center-setting/file/upload-config/components/DataForm.vue
deleted file mode 100644
index 69406ab..0000000
--- a/front-end/src/views/center-setting/file/upload-config/components/DataForm.vue
+++ /dev/null
@@ -1,169 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/upload-config/index.vue b/front-end/src/views/center-setting/file/upload-config/index.vue
deleted file mode 100644
index 2a1828d..0000000
--- a/front-end/src/views/center-setting/file/upload-config/index.vue
+++ /dev/null
@@ -1,187 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
- 查看容量配置
-
-
-
-
-
-
-
- {{
- STATUS_YES_NUM.bjGet(scope.row.defaultFlag)
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/file/upload-ram/index.vue b/front-end/src/views/center-setting/file/upload-ram/index.vue
deleted file mode 100644
index 8f5591b..0000000
--- a/front-end/src/views/center-setting/file/upload-ram/index.vue
+++ /dev/null
@@ -1,161 +0,0 @@
-
-
-
-
-
-
-
-
- {{ form.totalCapacityUnit }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/goods/audit/strategy/index.vue b/front-end/src/views/center-setting/goods/audit/strategy/index.vue
deleted file mode 100644
index 0e78443..0000000
--- a/front-end/src/views/center-setting/goods/audit/strategy/index.vue
+++ /dev/null
@@ -1,127 +0,0 @@
-
-
-
- SKU信息审核
-
-
-
- {{ loading ? '保存中' : '保存' }}
-
-
-
-
-
-
-
-
-
-
-
-
-
- 上下架审核
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/components/BjCodeSelect/index.vue b/front-end/src/views/center-setting/indexes/components/BjCodeSelect/index.vue
deleted file mode 100644
index 9a2d222..0000000
--- a/front-end/src/views/center-setting/indexes/components/BjCodeSelect/index.vue
+++ /dev/null
@@ -1,106 +0,0 @@
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/inquiry/add.vue b/front-end/src/views/center-setting/indexes/inquiry/add.vue
deleted file mode 100644
index 9c4b9ff..0000000
--- a/front-end/src/views/center-setting/indexes/inquiry/add.vue
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/inquiry/components/condition.vue b/front-end/src/views/center-setting/indexes/inquiry/components/condition.vue
deleted file mode 100644
index d5c4260..0000000
--- a/front-end/src/views/center-setting/indexes/inquiry/components/condition.vue
+++ /dev/null
@@ -1,68 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/inquiry/components/fieldList.vue b/front-end/src/views/center-setting/indexes/inquiry/components/fieldList.vue
deleted file mode 100644
index 408daed..0000000
--- a/front-end/src/views/center-setting/indexes/inquiry/components/fieldList.vue
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
-
- 新 增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/inquiry/components/inquiryOperate.vue b/front-end/src/views/center-setting/indexes/inquiry/components/inquiryOperate.vue
deleted file mode 100644
index 8e5c38d..0000000
--- a/front-end/src/views/center-setting/indexes/inquiry/components/inquiryOperate.vue
+++ /dev/null
@@ -1,282 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 保 存
-
-
-
-
-
- 测 试
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/inquiry/edit.vue b/front-end/src/views/center-setting/indexes/inquiry/edit.vue
deleted file mode 100644
index 2ff81bb..0000000
--- a/front-end/src/views/center-setting/indexes/inquiry/edit.vue
+++ /dev/null
@@ -1,23 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/inquiry/index.vue b/front-end/src/views/center-setting/indexes/inquiry/index.vue
deleted file mode 100644
index 88ae94b..0000000
--- a/front-end/src/views/center-setting/indexes/inquiry/index.vue
+++ /dev/null
@@ -1,258 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新 建
-
-
-
-
-
-
- {{ INDEXES_TYPE_LIST.bjGet(scope.row.enabledFlag) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/list/add.vue b/front-end/src/views/center-setting/indexes/list/add.vue
deleted file mode 100644
index 9f831c4..0000000
--- a/front-end/src/views/center-setting/indexes/list/add.vue
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/list/components/details.vue b/front-end/src/views/center-setting/indexes/list/components/details.vue
deleted file mode 100644
index fe4aebb..0000000
--- a/front-end/src/views/center-setting/indexes/list/components/details.vue
+++ /dev/null
@@ -1,229 +0,0 @@
-
-
-
基础信息
-
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
同步字段
-
- 新 增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/list/edit.vue b/front-end/src/views/center-setting/indexes/list/edit.vue
deleted file mode 100644
index a201b48..0000000
--- a/front-end/src/views/center-setting/indexes/list/edit.vue
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/list/index.vue b/front-end/src/views/center-setting/indexes/list/index.vue
deleted file mode 100644
index 7d2627a..0000000
--- a/front-end/src/views/center-setting/indexes/list/index.vue
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新 增
-
-
-
-
-
-
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 启用
- 禁用
- 复制索引
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/sync/add.vue b/front-end/src/views/center-setting/indexes/sync/add.vue
deleted file mode 100644
index 6354016..0000000
--- a/front-end/src/views/center-setting/indexes/sync/add.vue
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/sync/components/syncOperate.vue b/front-end/src/views/center-setting/indexes/sync/components/syncOperate.vue
deleted file mode 100644
index 36e1ec6..0000000
--- a/front-end/src/views/center-setting/indexes/sync/components/syncOperate.vue
+++ /dev/null
@@ -1,256 +0,0 @@
-
-
-
基础信息
-
- 取 消
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
同步字段
-
- 新 增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删 除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/sync/edit.vue b/front-end/src/views/center-setting/indexes/sync/edit.vue
deleted file mode 100644
index cd50674..0000000
--- a/front-end/src/views/center-setting/indexes/sync/edit.vue
+++ /dev/null
@@ -1,22 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/indexes/sync/index.vue b/front-end/src/views/center-setting/indexes/sync/index.vue
deleted file mode 100644
index f2724ad..0000000
--- a/front-end/src/views/center-setting/indexes/sync/index.vue
+++ /dev/null
@@ -1,208 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新 建
-
-
-
-
-
-
- {{ INDEXES_TYPE_LIST.bjGet(scope.row.enabledFlag) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/instance/components/instance-detail/index.vue b/front-end/src/views/center-setting/instance/components/instance-detail/index.vue
deleted file mode 100644
index 860b56b..0000000
--- a/front-end/src/views/center-setting/instance/components/instance-detail/index.vue
+++ /dev/null
@@ -1,253 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{ detail.seq }}
-
-
- {{ detail.taskCode }}
-
-
- {{ detail.sagaCode }}
-
-
- {{ detail.description }}
-
-
- {{ typeList.bjGet(detail.status) }}
-
-
- 重 试
- 强制失败
-
-
-
- {{ detail.service }}
-
-
- {{ detail.instanceLock }}
-
-
-
- {{ detail.concurrentLimitPolicy }}
-
-
- {{ detail.concurrentLimitNum }}
-
-
- {{ detail.maxRetryCount }}
-
-
-
- {{ detail.maxRetryCount }}
-
-
- {{ detail.retriedCount }}
-
-
- {{ detail.plannedStartTime }}
-
-
- {{ detail.actualStartTime }}
-
-
- {{ detail.actualEndTime }}
-
-
-
-
-
-
-
-
-
-
-
-
{{ detail.exceptionMessage }}
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/instance/components/instance-img/index.vue b/front-end/src/views/center-setting/instance/components/instance-img/index.vue
deleted file mode 100644
index 7c2a0af..0000000
--- a/front-end/src/views/center-setting/instance/components/instance-img/index.vue
+++ /dev/null
@@ -1,214 +0,0 @@
-
-
-
- Input
-
-
-
-
-
-
- {{ taskObj.taskCode }}
- {{ taskObj.description }}
-
-
-
-
-
-
- Output
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/instance/manage/index.vue b/front-end/src/views/center-setting/instance/manage/index.vue
deleted file mode 100644
index 038895a..0000000
--- a/front-end/src/views/center-setting/instance/manage/index.vue
+++ /dev/null
@@ -1,234 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
- {{ INSTANCE_RESULT_TYPE_LIST.bjGet(scope.row.status) }}
-
-
-
-
完成:{{ scope.row.completedCount }}
-
失败:{{ scope.row.failedCount }}
-
进行中:{{ scope.row.runningCount }}
-
等待被拉取:{{ scope.row.waitToBePulledCount }}
-
- 查看
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/manage/audit/index.vue b/front-end/src/views/center-setting/manage/audit/index.vue
deleted file mode 100644
index ca6f172..0000000
--- a/front-end/src/views/center-setting/manage/audit/index.vue
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
title:{{ title }}
- name:{{ name }}
- path:{{ fullPath }}
- tip:页面未完成
-
-
-
-
diff --git a/front-end/src/views/center-setting/manage/cancel/index.vue b/front-end/src/views/center-setting/manage/cancel/index.vue
deleted file mode 100644
index ca6f172..0000000
--- a/front-end/src/views/center-setting/manage/cancel/index.vue
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
title:{{ title }}
- name:{{ name }}
- path:{{ fullPath }}
- tip:页面未完成
-
-
-
-
diff --git a/front-end/src/views/center-setting/manage/search/index.vue b/front-end/src/views/center-setting/manage/search/index.vue
deleted file mode 100644
index ca6f172..0000000
--- a/front-end/src/views/center-setting/manage/search/index.vue
+++ /dev/null
@@ -1,32 +0,0 @@
-
-
-
title:{{ title }}
- name:{{ name }}
- path:{{ fullPath }}
- tip:页面未完成
-
-
-
-
diff --git a/front-end/src/views/center-setting/menu/components/DataForm.vue b/front-end/src/views/center-setting/menu/components/DataForm.vue
deleted file mode 100644
index f1f1a52..0000000
--- a/front-end/src/views/center-setting/menu/components/DataForm.vue
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/menu/components/PermissionSelect.vue b/front-end/src/views/center-setting/menu/components/PermissionSelect.vue
deleted file mode 100644
index 6ac1133..0000000
--- a/front-end/src/views/center-setting/menu/components/PermissionSelect.vue
+++ /dev/null
@@ -1,133 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/menu/index.vue b/front-end/src/views/center-setting/menu/index.vue
deleted file mode 100644
index 83e29e7..0000000
--- a/front-end/src/views/center-setting/menu/index.vue
+++ /dev/null
@@ -1,238 +0,0 @@
-
-
-
-
- 新增菜单
- 刷新
- 批量删除
- 初始化
-
-
-
-
-
-
- {{ SETTING_PERMISSION_TYPE_LIST.bjGet(data.permissionType) }}{{ node.label }}
-
- remove(node, data)"
- >
- 删除
-
- 编辑
- onAdd(data)">
- 添加子菜单
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/email/add.vue b/front-end/src/views/center-setting/message/email/add.vue
deleted file mode 100644
index 3d77d01..0000000
--- a/front-end/src/views/center-setting/message/email/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/email/components/ConfigDialog.vue b/front-end/src/views/center-setting/message/email/components/ConfigDialog.vue
deleted file mode 100644
index e298a90..0000000
--- a/front-end/src/views/center-setting/message/email/components/ConfigDialog.vue
+++ /dev/null
@@ -1,56 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/email/components/DrawerTable.vue b/front-end/src/views/center-setting/message/email/components/DrawerTable.vue
deleted file mode 100644
index cc2a413..0000000
--- a/front-end/src/views/center-setting/message/email/components/DrawerTable.vue
+++ /dev/null
@@ -1,230 +0,0 @@
-
-
-
-
-
- 删除
-
- 新增
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/email/components/ViewForm.vue b/front-end/src/views/center-setting/message/email/components/ViewForm.vue
deleted file mode 100644
index 026aed3..0000000
--- a/front-end/src/views/center-setting/message/email/components/ViewForm.vue
+++ /dev/null
@@ -1,328 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 使用163邮箱时,用户名 发送人都要是邮箱账号,邮件才能正常发送
-
-
-
-
-
-
- 新建服务器配置项
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/email/edit.vue b/front-end/src/views/center-setting/message/email/edit.vue
deleted file mode 100644
index 83286ad..0000000
--- a/front-end/src/views/center-setting/message/email/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/email/index.vue b/front-end/src/views/center-setting/message/email/index.vue
deleted file mode 100644
index 2a8b2b2..0000000
--- a/front-end/src/views/center-setting/message/email/index.vue
+++ /dev/null
@@ -1,190 +0,0 @@
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 设置黑白名单
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/notice/add.vue b/front-end/src/views/center-setting/message/notice/add.vue
deleted file mode 100644
index f586cd6..0000000
--- a/front-end/src/views/center-setting/message/notice/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/notice/components/ViewForm.vue b/front-end/src/views/center-setting/message/notice/components/ViewForm.vue
deleted file mode 100644
index 14f59aa..0000000
--- a/front-end/src/views/center-setting/message/notice/components/ViewForm.vue
+++ /dev/null
@@ -1,218 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/notice/edit.vue b/front-end/src/views/center-setting/message/notice/edit.vue
deleted file mode 100644
index 95c72ed..0000000
--- a/front-end/src/views/center-setting/message/notice/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/notice/index.vue b/front-end/src/views/center-setting/message/notice/index.vue
deleted file mode 100644
index f1bca70..0000000
--- a/front-end/src/views/center-setting/message/notice/index.vue
+++ /dev/null
@@ -1,296 +0,0 @@
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 发布
- 撤消
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/send/add.vue b/front-end/src/views/center-setting/message/send/add.vue
deleted file mode 100644
index 3b980bf..0000000
--- a/front-end/src/views/center-setting/message/send/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/send/components/DataForm.vue b/front-end/src/views/center-setting/message/send/components/DataForm.vue
deleted file mode 100644
index f60b9c5..0000000
--- a/front-end/src/views/center-setting/message/send/components/DataForm.vue
+++ /dev/null
@@ -1,242 +0,0 @@
-
-
-
-
- 基础信息
-
-
-
-
-
-
-
-
-
-
-
-
- 参数
-
-
-
-
-
-
-
- 接收人
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 添加接收人
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/send/components/ViewDataForm.vue b/front-end/src/views/center-setting/message/send/components/ViewDataForm.vue
deleted file mode 100644
index bcf99e8..0000000
--- a/front-end/src/views/center-setting/message/send/components/ViewDataForm.vue
+++ /dev/null
@@ -1,279 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/send/components/ViewForm.vue b/front-end/src/views/center-setting/message/send/components/ViewForm.vue
deleted file mode 100644
index cee76a3..0000000
--- a/front-end/src/views/center-setting/message/send/components/ViewForm.vue
+++ /dev/null
@@ -1,332 +0,0 @@
-
-
-
基础信息
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
模板配置
-
- 添加模板
-
-
-
-
-
-
-
-
-
-
-
- {{
- $store.state.values.HMSG_MESSAGE_TYPE.bjGet(scope.row.typeCode)
- }}
-
-
-
-
-
-
-
-
-
-
-
-
- 编辑
- 预览
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/send/edit.vue b/front-end/src/views/center-setting/message/send/edit.vue
deleted file mode 100644
index 0ebb805..0000000
--- a/front-end/src/views/center-setting/message/send/edit.vue
+++ /dev/null
@@ -1,46 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/send/index.vue b/front-end/src/views/center-setting/message/send/index.vue
deleted file mode 100644
index 07e2e43..0000000
--- a/front-end/src/views/center-setting/message/send/index.vue
+++ /dev/null
@@ -1,223 +0,0 @@
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ server.typeMeaning }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
- 测试发送
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/sms/components/DataForm.vue b/front-end/src/views/center-setting/message/sms/components/DataForm.vue
deleted file mode 100644
index 933c9d7..0000000
--- a/front-end/src/views/center-setting/message/sms/components/DataForm.vue
+++ /dev/null
@@ -1,187 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/sms/index.vue b/front-end/src/views/center-setting/message/sms/index.vue
deleted file mode 100644
index e6136a3..0000000
--- a/front-end/src/views/center-setting/message/sms/index.vue
+++ /dev/null
@@ -1,218 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/template/add.vue b/front-end/src/views/center-setting/message/template/add.vue
deleted file mode 100644
index f586cd6..0000000
--- a/front-end/src/views/center-setting/message/template/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/template/components/DrawerTable.vue b/front-end/src/views/center-setting/message/template/components/DrawerTable.vue
deleted file mode 100644
index 55390f8..0000000
--- a/front-end/src/views/center-setting/message/template/components/DrawerTable.vue
+++ /dev/null
@@ -1,245 +0,0 @@
-
-
-
-
-
- 初始化
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 删除
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/template/components/ViewForm.vue b/front-end/src/views/center-setting/message/template/components/ViewForm.vue
deleted file mode 100644
index 8532436..0000000
--- a/front-end/src/views/center-setting/message/template/components/ViewForm.vue
+++ /dev/null
@@ -1,231 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 简单文本
- 富文本
-
-
-
-
-
-
-
-
-
-
- 参数模板
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/template/edit.vue b/front-end/src/views/center-setting/message/template/edit.vue
deleted file mode 100644
index 49a3919..0000000
--- a/front-end/src/views/center-setting/message/template/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/message/template/index.vue b/front-end/src/views/center-setting/message/template/index.vue
deleted file mode 100644
index 3e33392..0000000
--- a/front-end/src/views/center-setting/message/template/index.vue
+++ /dev/null
@@ -1,188 +0,0 @@
-
-
-
-
-
-
- 新增
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ $store.state.values.BJ_LANGUAGE.bjGet(scope.row.lang) }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/concurrent/components/DataForm.vue b/front-end/src/views/center-setting/scheduler/concurrent/components/DataForm.vue
deleted file mode 100644
index 8983290..0000000
--- a/front-end/src/views/center-setting/scheduler/concurrent/components/DataForm.vue
+++ /dev/null
@@ -1,366 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ paramForm }}
- 请求参数
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/concurrent/index.vue b/front-end/src/views/center-setting/scheduler/concurrent/index.vue
deleted file mode 100644
index 275fd36..0000000
--- a/front-end/src/views/center-setting/scheduler/concurrent/index.vue
+++ /dev/null
@@ -1,347 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增
-
-
-
-
-
-
-
-
- {{
- STATUS_YES_NUM.bjGet(scope.row.cycleFlag)
- }}
-
-
- {{
- STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag)
- }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 暂停
- 恢复
- 终止
- 执行
-
- 日志
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/executable/components/DataForm.vue b/front-end/src/views/center-setting/scheduler/executable/components/DataForm.vue
deleted file mode 100644
index 625af78..0000000
--- a/front-end/src/views/center-setting/scheduler/executable/components/DataForm.vue
+++ /dev/null
@@ -1,189 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/executable/index.vue b/front-end/src/views/center-setting/scheduler/executable/index.vue
deleted file mode 100644
index bf67c74..0000000
--- a/front-end/src/views/center-setting/scheduler/executable/index.vue
+++ /dev/null
@@ -1,222 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增
-
-
-
-
-
-
-
-
- {{
- STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag)
- }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
- 编辑
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/executor/components/DataForm.vue b/front-end/src/views/center-setting/scheduler/executor/components/DataForm.vue
deleted file mode 100644
index 3fc38b8..0000000
--- a/front-end/src/views/center-setting/scheduler/executor/components/DataForm.vue
+++ /dev/null
@@ -1,208 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/executor/components/ExecutorsConfig.vue b/front-end/src/views/center-setting/scheduler/executor/components/ExecutorsConfig.vue
deleted file mode 100644
index e2a868e..0000000
--- a/front-end/src/views/center-setting/scheduler/executor/components/ExecutorsConfig.vue
+++ /dev/null
@@ -1,217 +0,0 @@
-
-
-
-
-
-
- {{ props.row.configId }}
- 未保存
-
-
-
-
-
- {{ props.row.address }}
-
-
-
-
-
- {{ props.row.weight }}
-
-
-
-
-
- {{ props.row.maxConcurrent }}
-
-
-
-
-
-
-
-
-
-
- 编辑
- 取消
- 保存
- 删除
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/executor/index.vue b/front-end/src/views/center-setting/scheduler/executor/index.vue
deleted file mode 100644
index f6fd450..0000000
--- a/front-end/src/views/center-setting/scheduler/executor/index.vue
+++ /dev/null
@@ -1,275 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增执行器
-
-
-
-
-
-
-
-
- {{
- scope.row.statusMeaning
- }}
-
-
-
- {{ EXECUTOR_TYPE_LIST.bjGet(scope.row.executorType) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 配置
- 编辑
- 下线
- 上线
-
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/log/index.vue b/front-end/src/views/center-setting/scheduler/log/index.vue
deleted file mode 100644
index 6d2883a..0000000
--- a/front-end/src/views/center-setting/scheduler/log/index.vue
+++ /dev/null
@@ -1,239 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/request/add.vue b/front-end/src/views/center-setting/scheduler/request/add.vue
deleted file mode 100644
index 427c9be..0000000
--- a/front-end/src/views/center-setting/scheduler/request/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/request/components/DataForm.vue b/front-end/src/views/center-setting/scheduler/request/components/DataForm.vue
deleted file mode 100644
index 5f3b5f4..0000000
--- a/front-end/src/views/center-setting/scheduler/request/components/DataForm.vue
+++ /dev/null
@@ -1,188 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/request/components/ViewForm.vue b/front-end/src/views/center-setting/scheduler/request/components/ViewForm.vue
deleted file mode 100644
index c192e3c..0000000
--- a/front-end/src/views/center-setting/scheduler/request/components/ViewForm.vue
+++ /dev/null
@@ -1,526 +0,0 @@
-
-
-
请求定义
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
参数
-
新 增
-
-
-
-
- {{ props.row.orderSeq }}
-
-
-
-
-
- {{ props.row.paramCode }}
-
-
-
-
-
- {{ props.row.paramName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ props.row.businessModel }}
-
-
-
-
-
- {{ props.row.defaultValue }}
-
-
-
-
-
-
- {{ props.row.valueFiledFrom }}
-
-
-
-
-
- {{ props.row.valueFiledTo }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 编辑
- 取消
- 保存
- 删除
-
-
-
-
-
- 数字参数格式(可以填写字段值从,字段值至,默认值)
- 日期参数格式(分日期选择框,日期时间选择框,差异仅在默认值,可以填写字段值从,字段值至,默认值)
- 文本参数格式(分为LOV,文本,勾选框,下拉单选,下拉多选,可以填写业务模型和默认值)
- LOV:业务模型填写值集视图的视图代码
- 文本框:只可填写默认值
- 勾选框:业务模型填写值集编码,默认值填写值集中的值
- 下拉单选:业务模型填写值集编码,默认值填写值集中的值,显示值填写值集中的含义
- 下拉多选:业务模型填写值集编码,默认值填写值集中的值,显示值填写值集中的含义
-
-
操作
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/request/edit.vue b/front-end/src/views/center-setting/scheduler/request/edit.vue
deleted file mode 100644
index c300c29..0000000
--- a/front-end/src/views/center-setting/scheduler/request/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/request/index.vue b/front-end/src/views/center-setting/scheduler/request/index.vue
deleted file mode 100644
index 8cd0cba..0000000
--- a/front-end/src/views/center-setting/scheduler/request/index.vue
+++ /dev/null
@@ -1,255 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增
-
-
-
-
-
-
-
-
- {{
- STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag)
- }}
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 分配权限
- 编辑
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/request/permissions.vue b/front-end/src/views/center-setting/scheduler/request/permissions.vue
deleted file mode 100644
index 1910eae..0000000
--- a/front-end/src/views/center-setting/scheduler/request/permissions.vue
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
-
-
-
- {{ $route.query.concurrentCode }}
-
-
- {{ $route.query.concurrentName }}
-
-
-
- 新增
-
-
-
-
-
-
-
- {{ scope.row.enabledFlag }},
- {{ STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag) }}
-
- {{ scope.row[col.prop] }}
-
-
-
-
-
- 编辑
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/task/components/DataForm.vue b/front-end/src/views/center-setting/scheduler/task/components/DataForm.vue
deleted file mode 100644
index 256bae2..0000000
--- a/front-end/src/views/center-setting/scheduler/task/components/DataForm.vue
+++ /dev/null
@@ -1,218 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/scheduler/task/index.vue b/front-end/src/views/center-setting/scheduler/task/index.vue
deleted file mode 100644
index fb88e6f..0000000
--- a/front-end/src/views/center-setting/scheduler/task/index.vue
+++ /dev/null
@@ -1,299 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
-
- 新增任务
-
-
-
-
-
-
-
-
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
-
-
- 暂停
- 恢复
- 终止
- 执行
-
- 删除
-
- 日志
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/base/components/Field/index.vue b/front-end/src/views/center-setting/statement/base/components/Field/index.vue
deleted file mode 100644
index d8c2a6e..0000000
--- a/front-end/src/views/center-setting/statement/base/components/Field/index.vue
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
- 新增字段
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 修改
- 禁用
- 启用
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/base/components/Log/index.vue b/front-end/src/views/center-setting/statement/base/components/Log/index.vue
deleted file mode 100644
index 0a16e45..0000000
--- a/front-end/src/views/center-setting/statement/base/components/Log/index.vue
+++ /dev/null
@@ -1,50 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/base/components/Shop/index.vue b/front-end/src/views/center-setting/statement/base/components/Shop/index.vue
deleted file mode 100644
index 3ceabd5..0000000
--- a/front-end/src/views/center-setting/statement/base/components/Shop/index.vue
+++ /dev/null
@@ -1,65 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
没有您想要设置对账的店铺? 去新增店铺
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/base/index.vue b/front-end/src/views/center-setting/statement/base/index.vue
deleted file mode 100644
index c19fab5..0000000
--- a/front-end/src/views/center-setting/statement/base/index.vue
+++ /dev/null
@@ -1,111 +0,0 @@
-
-
- 基础设置
-
-
-
-
-
-
-
-
-
-
-
-
- 操作记录
- 字段维护
- 对账店铺维护
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/strategy/components/DataForm.vue b/front-end/src/views/center-setting/statement/strategy/components/DataForm.vue
deleted file mode 100644
index b208848..0000000
--- a/front-end/src/views/center-setting/statement/strategy/components/DataForm.vue
+++ /dev/null
@@ -1,287 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 字段{{ index + 1 }} :
-
- 增加字段
- 删除
-
- 计算规则 =
-
- {{ '字段' + (i / 2 + 1) }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/strategy/index.vue b/front-end/src/views/center-setting/statement/strategy/index.vue
deleted file mode 100644
index 38b78ed..0000000
--- a/front-end/src/views/center-setting/statement/strategy/index.vue
+++ /dev/null
@@ -1,195 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 新增策略
-
-
-
-
-
-
-
-
- {{ FINANCE_PARSESTRATEGY_BULL_TYPES.bjGet(scope.row[col.prop]) }}
-
-
-
- {{ scope.row.amountStr }}
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row[col.prop]) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 启用
- 禁用
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/statement/strategy/view.vue b/front-end/src/views/center-setting/statement/strategy/view.vue
deleted file mode 100644
index bdb31d4..0000000
--- a/front-end/src/views/center-setting/statement/strategy/view.vue
+++ /dev/null
@@ -1,42 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/tenant/add.vue b/front-end/src/views/center-setting/tenant/add.vue
deleted file mode 100644
index 466449d..0000000
--- a/front-end/src/views/center-setting/tenant/add.vue
+++ /dev/null
@@ -1,20 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/tenant/components/ViewForm.vue b/front-end/src/views/center-setting/tenant/components/ViewForm.vue
deleted file mode 100644
index 6262038..0000000
--- a/front-end/src/views/center-setting/tenant/components/ViewForm.vue
+++ /dev/null
@@ -1,308 +0,0 @@
-
-
-
-
- 基础信息
-
- 自动生成
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 管理账号
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 基本配置
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 支持JPG/JPEG/PNG格式,图片大小不超过2M
-
-
-
- 菜单配置
-
-
- 重 置
- 查 询
-
-
-
-
-
-
- 操作
-
-
-
-
diff --git a/front-end/src/views/center-setting/tenant/edit.vue b/front-end/src/views/center-setting/tenant/edit.vue
deleted file mode 100644
index 5013969..0000000
--- a/front-end/src/views/center-setting/tenant/edit.vue
+++ /dev/null
@@ -1,36 +0,0 @@
-
-
-
-
diff --git a/front-end/src/views/center-setting/tenant/index.vue b/front-end/src/views/center-setting/tenant/index.vue
deleted file mode 100644
index f2c18e8..0000000
--- a/front-end/src/views/center-setting/tenant/index.vue
+++ /dev/null
@@ -1,183 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 创建租户
-
-
-
-
-
-
-
- {{
- STATUS_ENABLED_NUM.bjGet(scope.row.enabledFlag)
- }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 删除
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/user/account/strategy.vue b/front-end/src/views/center-setting/user/account/strategy.vue
deleted file mode 100644
index b7468e0..0000000
--- a/front-end/src/views/center-setting/user/account/strategy.vue
+++ /dev/null
@@ -1,327 +0,0 @@
-
-
-
- 密码安全策略
-
- 重 置
- 保 存
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 登录安全策略
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/user/organization/company.vue b/front-end/src/views/center-setting/user/organization/company.vue
deleted file mode 100644
index 13d3f4c..0000000
--- a/front-end/src/views/center-setting/user/organization/company.vue
+++ /dev/null
@@ -1,402 +0,0 @@
-
-
-
-
-
-
{{ group.groupName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 删除
- 新增公司
-
-
-
-
-
-
-
-
- {{ STATUS_ENABLED_TRUE.bjGet(scope.row.status) }}
- {{ scope.row[col.prop] }}
-
-
-
-
- 编辑
- 禁用
- 启用
- 删除
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/user/organization/components/DataForm.vue b/front-end/src/views/center-setting/user/organization/components/DataForm.vue
deleted file mode 100644
index 6bbb621..0000000
--- a/front-end/src/views/center-setting/user/organization/components/DataForm.vue
+++ /dev/null
@@ -1,179 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{ group.groupName }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 支持JPG/JPEG/PNG格式,图片大小不超过2M
-
-
-
-
-
-
diff --git a/front-end/src/views/center-setting/user/organization/group.vue b/front-end/src/views/center-setting/user/organization/group.vue
deleted file mode 100644
index fbf2476..0000000
--- a/front-end/src/views/center-setting/user/organization/group.vue
+++ /dev/null
@@ -1,182 +0,0 @@
-
-
-
- 集团信息
-
-
- 编 辑
- 保 存
- 取 消
-
-
-
-
-
- {{ form.groupName }}
-
-
-
-
- {{ form.groupShortName }}
-
-
-
-
-
-
-
-
-
-
- 支持PNG/JPG格式,且不超过500KB
-
-
-
-
-
-
-
-
-
-
-
- 支持.ico格式,且不超过200KB
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/BarChart.vue b/front-end/src/views/common/dashboard/admin/components/BarChart.vue
deleted file mode 100644
index bd57ca8..0000000
--- a/front-end/src/views/common/dashboard/admin/components/BarChart.vue
+++ /dev/null
@@ -1,102 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/BoxCard.vue b/front-end/src/views/common/dashboard/admin/components/BoxCard.vue
deleted file mode 100644
index 223337c..0000000
--- a/front-end/src/views/common/dashboard/admin/components/BoxCard.vue
+++ /dev/null
@@ -1,114 +0,0 @@
-
-
-
-
-
-
-
- Vue
-
-
-
- JavaScript
-
-
-
- CSS
-
-
-
- ESLint
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/LineChart.vue b/front-end/src/views/common/dashboard/admin/components/LineChart.vue
deleted file mode 100644
index 5b91e6e..0000000
--- a/front-end/src/views/common/dashboard/admin/components/LineChart.vue
+++ /dev/null
@@ -1,135 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/PanelGroup.vue b/front-end/src/views/common/dashboard/admin/components/PanelGroup.vue
deleted file mode 100644
index c71f594..0000000
--- a/front-end/src/views/common/dashboard/admin/components/PanelGroup.vue
+++ /dev/null
@@ -1,181 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/PieChart.vue b/front-end/src/views/common/dashboard/admin/components/PieChart.vue
deleted file mode 100644
index b6c4c3b..0000000
--- a/front-end/src/views/common/dashboard/admin/components/PieChart.vue
+++ /dev/null
@@ -1,79 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/RaddarChart.vue b/front-end/src/views/common/dashboard/admin/components/RaddarChart.vue
deleted file mode 100644
index 81c1fc1..0000000
--- a/front-end/src/views/common/dashboard/admin/components/RaddarChart.vue
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/TodoList/Todo.vue b/front-end/src/views/common/dashboard/admin/components/TodoList/Todo.vue
deleted file mode 100644
index be4bb84..0000000
--- a/front-end/src/views/common/dashboard/admin/components/TodoList/Todo.vue
+++ /dev/null
@@ -1,81 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/TodoList/index.scss b/front-end/src/views/common/dashboard/admin/components/TodoList/index.scss
deleted file mode 100644
index 74ce0d5..0000000
--- a/front-end/src/views/common/dashboard/admin/components/TodoList/index.scss
+++ /dev/null
@@ -1,320 +0,0 @@
-.todoapp {
- font: 14px 'Helvetica Neue', Helvetica, Arial, sans-serif;
- line-height: 1.4em;
- color: #4d4d4d;
- min-width: 230px;
- max-width: 550px;
- margin: 0 auto ;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- font-weight: 300;
- background: #fff;
- z-index: 1;
- position: relative;
- button {
- margin: 0;
- padding: 0;
- border: 0;
- background: none;
- font-size: 100%;
- vertical-align: baseline;
- font-family: inherit;
- font-weight: inherit;
- color: inherit;
- -webkit-appearance: none;
- appearance: none;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- }
- :focus {
- outline: 0;
- }
- .hidden {
- display: none;
- }
- .todoapp {
- background: #fff;
- margin: 130px 0 40px 0;
- position: relative;
- box-shadow: 0 2px 4px 0 rgba(0, 0, 0, 0.2), 0 25px 50px 0 rgba(0, 0, 0, 0.1);
- }
- .todoapp input::-webkit-input-placeholder {
- font-style: italic;
- font-weight: 300;
- color: #e6e6e6;
- }
- .todoapp input::-moz-placeholder {
- font-style: italic;
- font-weight: 300;
- color: #e6e6e6;
- }
- .todoapp input::input-placeholder {
- font-style: italic;
- font-weight: 300;
- color: #e6e6e6;
- }
- .todoapp h1 {
- position: absolute;
- top: -155px;
- width: 100%;
- font-size: 100px;
- font-weight: 100;
- text-align: center;
- color: rgba(175, 47, 47, 0.15);
- -webkit-text-rendering: optimizeLegibility;
- -moz-text-rendering: optimizeLegibility;
- text-rendering: optimizeLegibility;
- }
- .new-todo,
- .edit {
- position: relative;
- margin: 0;
- width: 100%;
- font-size: 18px;
- font-family: inherit;
- font-weight: inherit;
- line-height: 1.4em;
- border: 0;
- color: inherit;
- padding: 6px;
- border: 1px solid #999;
- box-shadow: inset 0 -1px 5px 0 rgba(0, 0, 0, 0.2);
- box-sizing: border-box;
- -webkit-font-smoothing: antialiased;
- -moz-osx-font-smoothing: grayscale;
- }
- .new-todo {
- padding: 10px 16px 16px 60px;
- border: none;
- background: rgba(0, 0, 0, 0.003);
- box-shadow: inset 0 -2px 1px rgba(0, 0, 0, 0.03);
- }
- .main {
- position: relative;
- z-index: 2;
- border-top: 1px solid #e6e6e6;
- }
- .toggle-all {
- text-align: center;
- border: none;
- /* Mobile Safari */
- opacity: 0;
- position: absolute;
- }
- .toggle-all+label {
- width: 60px;
- height: 34px;
- font-size: 0;
- position: absolute;
- top: -52px;
- left: -13px;
- -webkit-transform: rotate(90deg);
- transform: rotate(90deg);
- }
- .toggle-all+label:before {
- content: '❯';
- font-size: 22px;
- color: #e6e6e6;
- padding: 10px 27px 10px 27px;
- }
- .toggle-all:checked+label:before {
- color: #737373;
- }
- .todo-list {
- margin: 0;
- padding: 0;
- list-style: none;
- }
- .todo-list li {
- position: relative;
- font-size: 24px;
- border-bottom: 1px solid #ededed;
- }
- .todo-list li:last-child {
- border-bottom: none;
- }
- .todo-list li.editing {
- border-bottom: none;
- padding: 0;
- }
- .todo-list li.editing .edit {
- display: block;
- width: 506px;
- padding: 12px 16px;
- margin: 0 0 0 43px;
- }
- .todo-list li.editing .view {
- display: none;
- }
- .todo-list li .toggle {
- text-align: center;
- width: 40px;
- /* auto, since non-WebKit browsers doesn't support input styling */
- height: auto;
- position: absolute;
- top: 0;
- bottom: 0;
- margin: auto 0;
- border: none;
- /* Mobile Safari */
- -webkit-appearance: none;
- appearance: none;
- }
- .todo-list li .toggle {
- opacity: 0;
- }
- .todo-list li .toggle+label {
- /*
- Firefox requires `#` to be escaped - https://bugzilla.mozilla.org/show_bug.cgi?id=922433
- IE and Edge requires *everything* to be escaped to render, so we do that instead of just the `#` - https://developer.microsoft.com/en-us/microsoft-edge/platform/issues/7157459/
- */
- background-image: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%22-10%20-18%20100%20135%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2250%22%20fill%3D%22none%22%20stroke%3D%22%23ededed%22%20stroke-width%3D%223%22/%3E%3C/svg%3E');
- background-repeat: no-repeat;
- background-position: center left;
- background-size: 36px;
- }
- .todo-list li .toggle:checked+label {
- background-size: 36px;
- background-image: url('data:image/svg+xml;utf8,%3Csvg%20xmlns%3D%22http%3A//www.w3.org/2000/svg%22%20width%3D%2240%22%20height%3D%2240%22%20viewBox%3D%22-10%20-18%20100%20135%22%3E%3Ccircle%20cx%3D%2250%22%20cy%3D%2250%22%20r%3D%2250%22%20fill%3D%22none%22%20stroke%3D%22%23bddad5%22%20stroke-width%3D%223%22/%3E%3Cpath%20fill%3D%22%235dc2af%22%20d%3D%22M72%2025L42%2071%2027%2056l-4%204%2020%2020%2034-52z%22/%3E%3C/svg%3E');
- }
- .todo-list li label {
- word-break: break-all;
- padding: 15px 15px 15px 50px;
- display: block;
- line-height: 1.0;
- font-size: 14px;
- transition: color 0.4s;
- }
- .todo-list li.completed label {
- color: #d9d9d9;
- text-decoration: line-through;
- }
- .todo-list li .destroy {
- display: none;
- position: absolute;
- top: 0;
- right: 10px;
- bottom: 0;
- width: 40px;
- height: 40px;
- margin: auto 0;
- font-size: 30px;
- color: #cc9a9a;
- transition: color 0.2s ease-out;
- cursor: pointer;
- }
- .todo-list li .destroy:hover {
- color: #af5b5e;
- }
- .todo-list li .destroy:after {
- content: '×';
- }
- .todo-list li:hover .destroy {
- display: block;
- }
- .todo-list li .edit {
- display: none;
- }
- .todo-list li.editing:last-child {
- margin-bottom: -1px;
- }
- .footer {
- color: #777;
- position: relative;
- padding: 10px 15px;
- height: 40px;
- text-align: center;
- border-top: 1px solid #e6e6e6;
- }
- .footer:before {
- content: '';
- position: absolute;
- right: 0;
- bottom: 0;
- left: 0;
- height: 40px;
- overflow: hidden;
- box-shadow: 0 1px 1px rgba(0, 0, 0, 0.2), 0 8px 0 -3px #f6f6f6, 0 9px 1px -3px rgba(0, 0, 0, 0.2), 0 16px 0 -6px #f6f6f6, 0 17px 2px -6px rgba(0, 0, 0, 0.2);
- }
- .todo-count {
- float: left;
- text-align: left;
- }
- .todo-count strong {
- font-weight: 300;
- }
- .filters {
- margin: 0;
- padding: 0;
- position: relative;
- z-index: 1;
- list-style: none;
- }
- .filters li {
- display: inline;
- }
- .filters li a {
- color: inherit;
- font-size: 12px;
- padding: 3px 7px;
- text-decoration: none;
- border: 1px solid transparent;
- border-radius: 3px;
- }
- .filters li a:hover {
- border-color: rgba(175, 47, 47, 0.1);
- }
- .filters li a.selected {
- border-color: rgba(175, 47, 47, 0.2);
- }
- .clear-completed,
- html .clear-completed:active {
- float: right;
- position: relative;
- line-height: 20px;
- text-decoration: none;
- cursor: pointer;
- }
- .clear-completed:hover {
- text-decoration: underline;
- }
- .info {
- margin: 65px auto 0;
- color: #bfbfbf;
- font-size: 10px;
- text-shadow: 0 1px 0 rgba(255, 255, 255, 0.5);
- text-align: center;
- }
- .info p {
- line-height: 1;
- }
- .info a {
- color: inherit;
- text-decoration: none;
- font-weight: 400;
- }
- .info a:hover {
- text-decoration: underline;
- }
- /*
- Hack to remove background from Mobile Safari.
- Can't use it globally since it destroys checkboxes in Firefox
-*/
- @media screen and (-webkit-min-device-pixel-ratio:0) {
- .toggle-all,
- .todo-list li .toggle {
- background: none;
- }
- .todo-list li .toggle {
- height: 40px;
- }
- }
- @media (max-width: 430px) {
- .footer {
- height: 50px;
- }
- .filters {
- bottom: 10px;
- }
- }
-}
diff --git a/front-end/src/views/common/dashboard/admin/components/TodoList/index.vue b/front-end/src/views/common/dashboard/admin/components/TodoList/index.vue
deleted file mode 100644
index 6d44fe8..0000000
--- a/front-end/src/views/common/dashboard/admin/components/TodoList/index.vue
+++ /dev/null
@@ -1,127 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/TransactionTable.vue b/front-end/src/views/common/dashboard/admin/components/TransactionTable.vue
deleted file mode 100644
index 6ad20fb..0000000
--- a/front-end/src/views/common/dashboard/admin/components/TransactionTable.vue
+++ /dev/null
@@ -1,53 +0,0 @@
-
-
-
-
- {{ (scope.row.order_no || '') | orderNoFilter }}
-
-
-
- ¥{{ scope.row.price | toThousandFilter }}
-
-
-
-
- {{ row.status }}
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/admin/components/mixins/resize.js b/front-end/src/views/common/dashboard/admin/components/mixins/resize.js
deleted file mode 100644
index de40dcd..0000000
--- a/front-end/src/views/common/dashboard/admin/components/mixins/resize.js
+++ /dev/null
@@ -1,55 +0,0 @@
-import { debounce } from '@/utils';
-
-export default {
- data() {
- return {
- $_sidebarElm: null,
- $_resizeHandler: null
- };
- },
- mounted() {
- this.$_resizeHandler = debounce(() => {
- if (this.chart) {
- this.chart.resize();
- }
- }, 100);
- this.$_initResizeEvent();
- this.$_initSidebarResizeEvent();
- },
- beforeDestroy() {
- this.$_destroyResizeEvent();
- this.$_destroySidebarResizeEvent();
- },
- // to fixed bug when cached by keep-alive
- // https://github.com/PanJiaChen/vue-element-admin/issues/2116
- activated() {
- this.$_initResizeEvent();
- this.$_initSidebarResizeEvent();
- },
- deactivated() {
- this.$_destroyResizeEvent();
- this.$_destroySidebarResizeEvent();
- },
- methods: {
- // use $_ for mixins properties
- // https://vuejs.org/v2/style-guide/index.html#Private-property-names-essential
- $_initResizeEvent() {
- window.addEventListener('resize', this.$_resizeHandler);
- },
- $_destroyResizeEvent() {
- window.removeEventListener('resize', this.$_resizeHandler);
- },
- $_sidebarResizeHandler(e) {
- if (e.propertyName === 'width') {
- this.$_resizeHandler();
- }
- },
- $_initSidebarResizeEvent() {
- this.$_sidebarElm = document.getElementsByClassName('sidebar-container')[0];
- this.$_sidebarElm && this.$_sidebarElm.addEventListener('transitionend', this.$_sidebarResizeHandler);
- },
- $_destroySidebarResizeEvent() {
- this.$_sidebarElm && this.$_sidebarElm.removeEventListener('transitionend', this.$_sidebarResizeHandler);
- }
- }
-};
diff --git a/front-end/src/views/common/dashboard/admin/index.vue b/front-end/src/views/common/dashboard/admin/index.vue
deleted file mode 100644
index 5c6a20a..0000000
--- a/front-end/src/views/common/dashboard/admin/index.vue
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/editor/index.vue b/front-end/src/views/common/dashboard/editor/index.vue
deleted file mode 100644
index 7508833..0000000
--- a/front-end/src/views/common/dashboard/editor/index.vue
+++ /dev/null
@@ -1,74 +0,0 @@
-
-
-
-
- Your roles:
- {{ item }}
-
-
-
- {{ name }}
- Editor's Dashboard
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/dashboard/index.vue b/front-end/src/views/common/dashboard/index.vue
deleted file mode 100644
index cb7660d..0000000
--- a/front-end/src/views/common/dashboard/index.vue
+++ /dev/null
@@ -1,38 +0,0 @@
-
-
-
-
-
-
diff --git a/front-end/src/views/common/error-page/401.vue b/front-end/src/views/common/error-page/401.vue
deleted file mode 100644
index e8d8959..0000000
--- a/front-end/src/views/common/error-page/401.vue
+++ /dev/null
@@ -1,97 +0,0 @@
-
-
-
返回
-
-
- Oops!
- 你没有权限去该页面
- 如有不满请联系你领导
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/error-page/404.vue b/front-end/src/views/common/error-page/404.vue
deleted file mode 100644
index c169b6f..0000000
--- a/front-end/src/views/common/error-page/404.vue
+++ /dev/null
@@ -1,227 +0,0 @@
-
-
-
-
-
-
哎哟!
-
-
{{ message }}
-
请检查您输入的网址是否正确,或点击下面的按钮返回主页.
-
返回主页
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/login/auth-redirect.vue b/front-end/src/views/common/login/auth-redirect.vue
deleted file mode 100644
index 998934a..0000000
--- a/front-end/src/views/common/login/auth-redirect.vue
+++ /dev/null
@@ -1,254 +0,0 @@
-
-
-
-
电商中心管理后台
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/login/index.vue b/front-end/src/views/common/login/index.vue
deleted file mode 100644
index c55d746..0000000
--- a/front-end/src/views/common/login/index.vue
+++ /dev/null
@@ -1,337 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- 登录
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- codeText
- }}
-
-
- 登录
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/personal/components/rowText/index.vue b/front-end/src/views/common/personal/components/rowText/index.vue
deleted file mode 100644
index 655c7dd..0000000
--- a/front-end/src/views/common/personal/components/rowText/index.vue
+++ /dev/null
@@ -1,80 +0,0 @@
-
-
-
- {{ title }}
- {{ content }}
-
-
-
-
- {{ iconText }}
-
-
{{
- btnText
- }}
-
-
-
-
-
diff --git a/front-end/src/views/common/personal/index.vue b/front-end/src/views/common/personal/index.vue
deleted file mode 100644
index 5f008ea..0000000
--- a/front-end/src/views/common/personal/index.vue
+++ /dev/null
@@ -1,638 +0,0 @@
-
-
-
个人信息
-
-
-
安全设置
-
-
-
-
-
- {{ userInfo.phoneCheckFlag ? '已绑定' : '请验证' }}手机号
- {{ userInfo.phone | phoneFilter }}(手机号可用于登录、密码找回)
-
-
-
-
-
- {{ userInfo.emailCheckFlag ? '已绑定' : '请验证' }}邮箱
- {{ userInfo.email | phoneFilter }}(邮箱可用于登录、密码找回)
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{
- codeText
- }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
- {{ codeTextEmail }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/common/redirect/index.vue b/front-end/src/views/common/redirect/index.vue
deleted file mode 100644
index 38b2943..0000000
--- a/front-end/src/views/common/redirect/index.vue
+++ /dev/null
@@ -1,13 +0,0 @@
-
diff --git a/front-end/src/views/icons/element-icons.js b/front-end/src/views/icons/element-icons.js
deleted file mode 100644
index 765716a..0000000
--- a/front-end/src/views/icons/element-icons.js
+++ /dev/null
@@ -1,3 +0,0 @@
-const elementIcons = ['platform-eleme', 'eleme', 'delete-solid', 'delete', 's-tools', 'setting', 'user-solid', 'user', 'phone', 'phone-outline', 'more', 'more-outline', 'star-on', 'star-off', 's-goods', 'goods', 'warning', 'warning-outline', 'question', 'info', 'remove', 'circle-plus', 'success', 'error', 'zoom-in', 'zoom-out', 'remove-outline', 'circle-plus-outline', 'circle-check', 'circle-close', 's-help', 'help', 'minus', 'plus', 'check', 'close', 'picture', 'picture-outline', 'picture-outline-round', 'upload', 'upload2', 'download', 'camera-solid', 'camera', 'video-camera-solid', 'video-camera', 'message-solid', 'bell', 's-cooperation', 's-order', 's-platform', 's-fold', 's-unfold', 's-operation', 's-promotion', 's-home', 's-release', 's-ticket', 's-management', 's-open', 's-shop', 's-marketing', 's-flag', 's-comment', 's-finance', 's-claim', 's-custom', 's-opportunity', 's-data', 's-check', 's-grid', 'menu', 'share', 'd-caret', 'caret-left', 'caret-right', 'caret-bottom', 'caret-top', 'bottom-left', 'bottom-right', 'back', 'right', 'bottom', 'top', 'top-left', 'top-right', 'arrow-left', 'arrow-right', 'arrow-down', 'arrow-up', 'd-arrow-left', 'd-arrow-right', 'video-pause', 'video-play', 'refresh', 'refresh-right', 'refresh-left', 'finished', 'sort', 'sort-up', 'sort-down', 'rank', 'loading', 'view', 'c-scale-to-original', 'date', 'edit', 'edit-outline', 'folder', 'folder-opened', 'folder-add', 'folder-remove', 'folder-delete', 'folder-checked', 'tickets', 'document-remove', 'document-delete', 'document-copy', 'document-checked', 'document', 'document-add', 'printer', 'paperclip', 'takeaway-box', 'search', 'monitor', 'attract', 'mobile', 'scissors', 'umbrella', 'headset', 'brush', 'mouse', 'coordinate', 'magic-stick', 'reading', 'data-line', 'data-board', 'pie-chart', 'data-analysis', 'collection-tag', 'film', 'suitcase', 'suitcase-1', 'receiving', 'collection', 'files', 'notebook-1', 'notebook-2', 'toilet-paper', 'office-building', 'school', 'table-lamp', 'house', 'no-smoking', 'smoking', 'shopping-cart-full', 'shopping-cart-1', 'shopping-cart-2', 'shopping-bag-1', 'shopping-bag-2', 'sold-out', 'sell', 'present', 'box', 'bank-card', 'money', 'coin', 'wallet', 'discount', 'price-tag', 'news', 'guide', 'male', 'female', 'thumb', 'cpu', 'link', 'connection', 'open', 'turn-off', 'set-up', 'chat-round', 'chat-line-round', 'chat-square', 'chat-dot-round', 'chat-dot-square', 'chat-line-square', 'message', 'postcard', 'position', 'turn-off-microphone', 'microphone', 'close-notification', 'bangzhu', 'time', 'odometer', 'crop', 'aim', 'switch-button', 'full-screen', 'copy-document', 'mic', 'stopwatch', 'medal-1', 'medal', 'trophy', 'trophy-1', 'first-aid-kit', 'discover', 'place', 'location', 'location-outline', 'location-information', 'add-location', 'delete-location', 'map-location', 'alarm-clock', 'timer', 'watch-1', 'watch', 'lock', 'unlock', 'key', 'service', 'mobile-phone', 'bicycle', 'truck', 'ship', 'basketball', 'football', 'soccer', 'baseball', 'wind-power', 'light-rain', 'lightning', 'heavy-rain', 'sunrise', 'sunrise-1', 'sunset', 'sunny', 'cloudy', 'partly-cloudy', 'cloudy-and-sunny', 'moon', 'moon-night', 'dish', 'dish-1', 'food', 'chicken', 'fork-spoon', 'knife-fork', 'burger', 'tableware', 'sugar', 'dessert', 'ice-cream', 'hot-water', 'water-cup', 'coffee-cup', 'cold-drink', 'goblet', 'goblet-full', 'goblet-square', 'goblet-square-full', 'refrigerator', 'grape', 'watermelon', 'cherry', 'apple', 'pear', 'orange', 'coffee', 'ice-tea', 'ice-drink', 'milk-tea', 'potato-strips', 'lollipop', 'ice-cream-square', 'ice-cream-round'];
-
-export default elementIcons;
diff --git a/front-end/src/views/icons/index.vue b/front-end/src/views/icons/index.vue
deleted file mode 100644
index 1fad1a1..0000000
--- a/front-end/src/views/icons/index.vue
+++ /dev/null
@@ -1,104 +0,0 @@
-
-
-
-
-
-
-
-
-
- {{ generateIconCode(item) }}
-
-
-
- {{ item }}
-
-
-
-
-
-
-
-
-
-
- {{ generateElementIconCode(item) }}
-
-
-
- {{ item }}
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/icons/svg-icons.js b/front-end/src/views/icons/svg-icons.js
deleted file mode 100644
index b5f264b..0000000
--- a/front-end/src/views/icons/svg-icons.js
+++ /dev/null
@@ -1,10 +0,0 @@
-const req = require.context('../../icons/svg', false, /\.svg$/);
-const requireAll = requireContext => requireContext.keys();
-
-const re = /\.\/(.*)\.svg/;
-
-const svgIcons = requireAll(req).map(i => {
- return i.match(re)[1];
-});
-
-export default svgIcons;
diff --git a/front-end/src/views/test/components/endpoint/index.vue b/front-end/src/views/test/components/endpoint/index.vue
deleted file mode 100644
index 3fc8aa1..0000000
--- a/front-end/src/views/test/components/endpoint/index.vue
+++ /dev/null
@@ -1,37 +0,0 @@
-
-
-
-
-
diff --git a/front-end/src/views/test/empty.vue b/front-end/src/views/test/empty.vue
deleted file mode 100644
index 88b4fa7..0000000
--- a/front-end/src/views/test/empty.vue
+++ /dev/null
@@ -1,33 +0,0 @@
-
-
-
title:{{ title }}
- name:{{ name }}
- path:{{ fullPath }}
- tip:页面未完成
-
-
-
-
diff --git a/front-end/src/views/test/index copy.vue b/front-end/src/views/test/index copy.vue
deleted file mode 100644
index 0cae70e..0000000
--- a/front-end/src/views/test/index copy.vue
+++ /dev/null
@@ -1,674 +0,0 @@
-
-
-
-
-
-
- 中转虚仓
-
-
- 数量虚仓
-
-
- 比例虚仓
-
-
- 实仓
-
-
-
-
-
-
- {{ item.title ? item.title : '未命名虚仓' }}
-
-
-
-
-
-
- {{ item.title ? item.title : '未命名虚仓' }}
-
-
-
-
-
-
-
- {{ drag.title }}
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/test/index cory1.vue b/front-end/src/views/test/index cory1.vue
deleted file mode 100644
index dd97e7c..0000000
--- a/front-end/src/views/test/index cory1.vue
+++ /dev/null
@@ -1,614 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/src/views/test/index.vue b/front-end/src/views/test/index.vue
deleted file mode 100644
index 68c70a7..0000000
--- a/front-end/src/views/test/index.vue
+++ /dev/null
@@ -1,116 +0,0 @@
-
-
-
-
-
-
-
diff --git a/front-end/src/views/test/index11.vue b/front-end/src/views/test/index11.vue
deleted file mode 100644
index 5b1b628..0000000
--- a/front-end/src/views/test/index11.vue
+++ /dev/null
@@ -1,157 +0,0 @@
-
-
-
-
-
-
-
- {{ element.name }}
-
-
-
-
-
-
- {{ element.name }}
-
-
-
-
-
-
-
-
-
-
diff --git a/front-end/tests/unit/.eslintrc.js b/front-end/tests/unit/.eslintrc.js
deleted file mode 100644
index 958d51b..0000000
--- a/front-end/tests/unit/.eslintrc.js
+++ /dev/null
@@ -1,5 +0,0 @@
-module.exports = {
- env: {
- jest: true
- }
-}
diff --git a/front-end/tests/unit/components/Hamburger.spec.js b/front-end/tests/unit/components/Hamburger.spec.js
deleted file mode 100644
index 01ea303..0000000
--- a/front-end/tests/unit/components/Hamburger.spec.js
+++ /dev/null
@@ -1,18 +0,0 @@
-import { shallowMount } from '@vue/test-utils'
-import Hamburger from '@/components/Hamburger/index.vue'
-describe('Hamburger.vue', () => {
- it('toggle click', () => {
- const wrapper = shallowMount(Hamburger)
- const mockFn = jest.fn()
- wrapper.vm.$on('toggleClick', mockFn)
- wrapper.find('.hamburger').trigger('click')
- expect(mockFn).toBeCalled()
- })
- it('prop isActive', () => {
- const wrapper = shallowMount(Hamburger)
- wrapper.setProps({ isActive: true })
- expect(wrapper.contains('.is-active')).toBe(true)
- wrapper.setProps({ isActive: false })
- expect(wrapper.contains('.is-active')).toBe(false)
- })
-})
diff --git a/front-end/tests/unit/components/SvgIcon.spec.js b/front-end/tests/unit/components/SvgIcon.spec.js
deleted file mode 100644
index 31467a9..0000000
--- a/front-end/tests/unit/components/SvgIcon.spec.js
+++ /dev/null
@@ -1,22 +0,0 @@
-import { shallowMount } from '@vue/test-utils'
-import SvgIcon from '@/components/SvgIcon/index.vue'
-describe('SvgIcon.vue', () => {
- it('iconClass', () => {
- const wrapper = shallowMount(SvgIcon, {
- propsData: {
- iconClass: 'test'
- }
- })
- expect(wrapper.find('use').attributes().href).toBe('#icon-test')
- })
- it('className', () => {
- const wrapper = shallowMount(SvgIcon, {
- propsData: {
- iconClass: 'test'
- }
- })
- expect(wrapper.classes().length).toBe(1)
- wrapper.setProps({ className: 'test' })
- expect(wrapper.classes().includes('test')).toBe(true)
- })
-})
diff --git a/front-end/tests/unit/utils/formatTime.spec.js b/front-end/tests/unit/utils/formatTime.spec.js
deleted file mode 100644
index d07e414..0000000
--- a/front-end/tests/unit/utils/formatTime.spec.js
+++ /dev/null
@@ -1,29 +0,0 @@
-import { formatTime } from '@/utils/index.js'
-describe('Utils:formatTime', () => {
- const d = new Date('2018-07-13 17:54:01') // "2018-07-13 17:54:01"
- const retrofit = 5 * 1000
-
- it('ten digits timestamp', () => {
- expect(formatTime((d / 1000).toFixed(0))).toBe('7月13日17时54分')
- })
- it('test now', () => {
- expect(formatTime(+new Date() - 1)).toBe('刚刚')
- })
- it('less two minute', () => {
- expect(formatTime(+new Date() - 60 * 2 * 1000 + retrofit)).toBe('2分钟前')
- })
- it('less two hour', () => {
- expect(formatTime(+new Date() - 60 * 60 * 2 * 1000 + retrofit)).toBe('2小时前')
- })
- it('less one day', () => {
- expect(formatTime(+new Date() - 60 * 60 * 24 * 1 * 1000)).toBe('1天前')
- })
- it('more than one day', () => {
- expect(formatTime(d)).toBe('7月13日17时54分')
- })
- it('format', () => {
- expect(formatTime(d, '{y}-{m}-{d} {h}:{i}')).toBe('2018-07-13 17:54')
- expect(formatTime(d, '{y}-{m}-{d}')).toBe('2018-07-13')
- expect(formatTime(d, '{y}/{m}/{d} {h}-{i}')).toBe('2018/07/13 17-54')
- })
-})
diff --git a/front-end/tests/unit/utils/param2Obj.spec.js b/front-end/tests/unit/utils/param2Obj.spec.js
deleted file mode 100644
index e106ed8..0000000
--- a/front-end/tests/unit/utils/param2Obj.spec.js
+++ /dev/null
@@ -1,14 +0,0 @@
-import { param2Obj } from '@/utils/index.js'
-describe('Utils:param2Obj', () => {
- const url = 'https://github.com/PanJiaChen/vue-element-admin?name=bill&age=29&sex=1&field=dGVzdA==&key=%E6%B5%8B%E8%AF%95'
-
- it('param2Obj test', () => {
- expect(param2Obj(url)).toEqual({
- name: 'bill',
- age: '29',
- sex: '1',
- field: window.btoa('test'),
- key: '测试'
- })
- })
-})
diff --git a/front-end/tests/unit/utils/parseTime.spec.js b/front-end/tests/unit/utils/parseTime.spec.js
deleted file mode 100644
index 3e138d0..0000000
--- a/front-end/tests/unit/utils/parseTime.spec.js
+++ /dev/null
@@ -1,37 +0,0 @@
-import { parseTime } from '@/utils/index.js'
-
-describe('Utils:parseTime', () => {
- const d = new Date('2018-07-13 17:54:01') // "2018-07-13 17:54:01"
- it('timestamp', () => {
- expect(parseTime(d)).toBe('2018-07-13 17:54:01')
- })
-
- it('timestamp string', () => {
- expect(parseTime((d + ''))).toBe('2018-07-13 17:54:01')
- })
-
- it('ten digits timestamp', () => {
- expect(parseTime((d / 1000).toFixed(0))).toBe('2018-07-13 17:54:01')
- })
- it('new Date', () => {
- expect(parseTime(new Date(d))).toBe('2018-07-13 17:54:01')
- })
- it('format', () => {
- expect(parseTime(d, '{y}-{m}-{d} {h}:{i}')).toBe('2018-07-13 17:54')
- expect(parseTime(d, '{y}-{m}-{d}')).toBe('2018-07-13')
- expect(parseTime(d, '{y}/{m}/{d} {h}-{i}')).toBe('2018/07/13 17-54')
- })
- it('get the day of the week', () => {
- expect(parseTime(d, '{a}')).toBe('五') // 星期五
- })
- it('get the day of the week', () => {
- expect(parseTime(+d + 1000 * 60 * 60 * 24 * 2, '{a}')).toBe('日') // 星期日
- })
- it('empty argument', () => {
- expect(parseTime()).toBeNull()
- })
-
- it('null', () => {
- expect(parseTime(null)).toBeNull()
- })
-})
diff --git a/front-end/tests/unit/utils/validate.spec.js b/front-end/tests/unit/utils/validate.spec.js
deleted file mode 100644
index ef2efe6..0000000
--- a/front-end/tests/unit/utils/validate.spec.js
+++ /dev/null
@@ -1,28 +0,0 @@
-import { validUsername, validURL, validLowerCase, validUpperCase, validAlphabets } from '@/utils/validate.js'
-describe('Utils:validate', () => {
- it('validUsername', () => {
- expect(validUsername('admin')).toBe(true)
- expect(validUsername('editor')).toBe(true)
- expect(validUsername('xxxx')).toBe(false)
- })
- it('validURL', () => {
- expect(validURL('https://github.com/PanJiaChen/vue-element-admin')).toBe(true)
- expect(validURL('http://github.com/PanJiaChen/vue-element-admin')).toBe(true)
- expect(validURL('github.com/PanJiaChen/vue-element-admin')).toBe(false)
- })
- it('validLowerCase', () => {
- expect(validLowerCase('abc')).toBe(true)
- expect(validLowerCase('Abc')).toBe(false)
- expect(validLowerCase('123abc')).toBe(false)
- })
- it('validUpperCase', () => {
- expect(validUpperCase('ABC')).toBe(true)
- expect(validUpperCase('Abc')).toBe(false)
- expect(validUpperCase('123ABC')).toBe(false)
- })
- it('validAlphabets', () => {
- expect(validAlphabets('ABC')).toBe(true)
- expect(validAlphabets('Abc')).toBe(true)
- expect(validAlphabets('123aBC')).toBe(false)
- })
-})
diff --git a/front-end/vue.config.js b/front-end/vue.config.js
deleted file mode 100644
index c41bacf..0000000
--- a/front-end/vue.config.js
+++ /dev/null
@@ -1,222 +0,0 @@
-'use strict';
-const path = require('path');
-const defaultSettings = require('./src/settings.js');
-
-function resolve(dir) {
- return path.join(__dirname, dir);
-}
-
-require('events').EventEmitter.defaultMaxListeners = 0;
-
-const name = defaultSettings.title || '飞骥管理系统'; // page title
-
-// If your port is set to 80,
-// use administrator privileges to execute the command line.
-// For example, Mac: sudo npm run
-// You can change the port by the following method:
-// port = 9527 npm run dev OR npm run dev --port = 9527
-const port = process.env.port || process.env.npm_config_port || 10086; // dev port
-
-// All configuration item explanations can be find in https://cli.vuejs.org/config/
-module.exports = {
- /**
- * You will need to set publicPath if you plan to deploy your site under a sub path,
- * for example GitHub Pages. If you plan to deploy your site to https://foo.github.io/bar/,
- * then publicPath should be set to "/bar/".
- * In most cases please use '/' !!!
- * Detail: https://cli.vuejs.org/config/#publicpath
- */
- publicPath: './',
- outputDir: 'dist',
- assetsDir: 'static',
- lintOnSave: process.env.NODE_ENV === 'development',
- productionSourceMap: true,
- devServer: {
- // port: port,
- // open: true,
- // overlay: {
- // warnings: false,
- // errors: true
- // },
- // before: require('./mock/mock-server.js')
- host: 'localhost',
- port: port,
- open: true,
- overlay: {
- warnings: false,
- errors: true,
- },
- // before: require('./mock/mock-server.js'),
- proxy: {
- '/iam/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/iam/': '/iam/',
- },
- },
- '/schl/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/schl/': '/schl/',
- },
- },
- '/spfm/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/spfm/': '/spfm/',
- },
- },
- '/sgoo/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/sgoo/': '/sgoo/',
- },
- },
- '/oauth/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/oauth/': '/oauth/',
- },
- },
- '/ssdr/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/ssdr/': '/ssdr/',
- },
- },
- '/sfle/': {
- target: process.env.VUE_APP_BASE_API,
- // target: 'http://192.168.124.146:8110', // 李晓阳
- changeOrigin: true,
- pathRewrite: {
- '^/sfle/': '/sfle/',
- },
- },
- '/hagd/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/hagd/': '/hagd/',
- },
- },
- '/smsg/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/smsg/': '/smsg/',
- },
- },
- '/lgit/': {
- target: process.env.VUE_APP_BASE_API,
- changeOrigin: true,
- pathRewrite: {
- '^/lgit/': '/lgit/',
- },
- },
- },
- },
- configureWebpack: {
- // provide the app's title in webpack's name field, so that
- // it can be accessed in index.html to inject the correct title.
- name: name,
-
- resolve: {
- extensions: ['.js', '.vue', '.json', '.css'],
- alias: {
- vue$: 'vue/dist/vue.esm.js',
- '@': resolve('src'),
- },
- },
- devtool: 'source-map',
- },
- chainWebpack(config) {
- // it can improve the speed of the first screen, it is recommended to turn on preload
- // it can improve the speed of the first screen, it is recommended to turn on preload
- config.plugin('preload').tap(() => [
- {
- rel: 'preload',
- // to ignore runtime.js
- // https://github.com/vuejs/vue-cli/blob/dev/packages/@vue/cli-service/lib/config/app.js#L171
- fileBlacklist: [/\.map$/, /hot-update\.js$/, /runtime\..*\.js$/],
- include: 'initial',
- },
- ]);
-
- // when there are many pages, it will cause too many meaningless requests
- config.plugins.delete('prefetch');
- // when images size < 5 kb ,turn to base64
- config.module
- .rule('images')
- .use('url-loader')
- .loader('url-loader')
- .tap(options => Object.assign(options, { limit: 5 * 1024 }));
-
- // set svg-sprite-loader
- config.module
- .rule('svg')
- .exclude.add(resolve('src/icons'))
- .end();
- config.module
- .rule('icons')
- .test(/\.svg$/)
- .include.add(resolve('src/icons'))
- .end()
- .use('svg-sprite-loader')
- .loader('svg-sprite-loader')
- .options({
- symbolId: 'icon-[name]',
- })
- .end();
-
- config.when(process.env.NODE_ENV !== 'development', config => {
- config
- .plugin('ScriptExtHtmlWebpackPlugin')
- .after('html')
- .use('script-ext-html-webpack-plugin', [
- {
- // `runtime` must same as runtimeChunk name. default is `runtime`
- inline: /runtime\..*\.js$/,
- },
- ])
- .end();
- config.optimization.splitChunks({
- chunks: 'all',
- cacheGroups: {
- libs: {
- name: 'chunk-libs',
- test: /[\\/]node_modules[\\/]/,
- priority: 10,
- chunks: 'initial', // only package third parties that are initially dependent
- },
- elementUI: {
- name: 'chunk-elementUI', // split elementUI into a single package
- priority: 20, // the weight needs to be larger than libs and app or it will be packaged into libs or app
- test: /[\\/]node_modules[\\/]_?element-ui(.*)/, // in order to adapt to cnpm
- },
- commons: {
- name: 'chunk-commons',
- test: resolve('src/components'), // can customize your rules
- minChunks: 3, // minimum common number
- priority: 5,
- reuseExistingChunk: true,
- },
- },
- });
- // https:// webpack.js.org/configuration/optimization/#optimizationruntimechunk
- config.optimization.runtimeChunk('single');
- });
- },
- css: {
- loaderOptions: {
- scss: {
- prependData: `@import "~@/styles/variables.scss";`,
- },
- },
- },
-};
diff --git a/front-end/we.png b/front-end/we.png
deleted file mode 100644
index f62afa1..0000000
Binary files a/front-end/we.png and /dev/null differ
diff --git a/front-end/业务架构.png b/front-end/业务架构.png
deleted file mode 100644
index d611e9a..0000000
Binary files a/front-end/业务架构.png and /dev/null differ
diff --git a/front-end/云原生.png b/front-end/云原生.png
deleted file mode 100644
index b3f0bb8..0000000
Binary files a/front-end/云原生.png and /dev/null differ
diff --git a/front-end/夯实数字化基座.png b/front-end/夯实数字化基座.png
deleted file mode 100644
index 8d5ebe2..0000000
Binary files a/front-end/夯实数字化基座.png and /dev/null differ
diff --git a/front-end/库存共享.png b/front-end/库存共享.png
deleted file mode 100644
index fac5d12..0000000
Binary files a/front-end/库存共享.png and /dev/null differ
diff --git a/front-end/开发.png b/front-end/开发.png
deleted file mode 100644
index a2195ae..0000000
Binary files a/front-end/开发.png and /dev/null differ
diff --git a/front-end/强大的技术与架构.png b/front-end/强大的技术与架构.png
deleted file mode 100644
index 3f5323f..0000000
Binary files a/front-end/强大的技术与架构.png and /dev/null differ
diff --git a/front-end/技术支持.png b/front-end/技术支持.png
deleted file mode 100644
index 59d57a6..0000000
Binary files a/front-end/技术支持.png and /dev/null differ
diff --git a/front-end/技术架构.png b/front-end/技术架构.png
deleted file mode 100644
index fbf74b2..0000000
Binary files a/front-end/技术架构.png and /dev/null differ
diff --git a/front-end/测试.png b/front-end/测试.png
deleted file mode 100644
index 84ee91d..0000000
Binary files a/front-end/测试.png and /dev/null differ
diff --git a/front-end/部署.png b/front-end/部署.png
deleted file mode 100644
index 17d356f..0000000
Binary files a/front-end/部署.png and /dev/null differ
diff --git a/skyer-after-sales/.gitignore b/skyer-after-sales/.gitignore
deleted file mode 100644
index b4ce6f3..0000000
--- a/skyer-after-sales/.gitignore
+++ /dev/null
@@ -1,103 +0,0 @@
-#======================================================================================================================
-#========================================= gitignore的基础用法 =========================================
-#======================================================================================================================
-# 一.基础语法
-# .gitignore配置文件的一些通用技巧 [参考:https://git-scm.com/docs/gitignore]
-# 1.空白行不匹配任何文件,所以可以作为可读性的分隔符,同时两端的空格将会被忽略.
-# 2.使用[#]开头,将会注释掉整行,使其不进行匹配操作,如果需要匹配#开头,可以使用转义字符[\].
-# 3.1匹配模式以[/]结尾,表示想要匹配一个目录及其子文件.(比如[foo/]会匹配foo目录及其下面的路径.)
-# 3.2匹配模式不包含[/],将会全局匹配该文件.
-# 4.通配符
-# [*]: 匹配除[/]以外的任何内容,也就意味着[*]不能跨目录.
-# [?]: 匹配除[/]和[[]以及[]]以外的任何一个字符.
-# [**]: 匹配所有的内容,或者说匹配任意目录下的内容.
-# 示例:
-# 1.[**/foo/bar] 将会匹配所有直接在foo目录下的bar,无论foo处在何处.
-# 2.[foo/**]则表示匹配foo目录下的所有文件和目录.
-# 3.[a/**/b]则可以匹配a/b, a/c/b, a/c/d/b,即此处的[**]可以表示0个或多个.
-# !!! 需要注意的是,除上面示例的用法外,剩余的[**]都是无效的..
-# 5.可以通过前缀[!]来表示不忽略某些文件,比如可以通过[!a]来确保文件a不会被忽略,即时前面已经声明了忽略其父目录,该模式优先级高于普通忽略模式.
-# 二.常用命令
-# 1.git -rm [https://git-scm.com/docs/git-rm]
-# 删除文件索引,或者同时删除文件索引和物理文件.可以使用通配符.
-# 2.git-check-ignore [https://git-scm.com/docs/git-check-ignore]
-# 调试.gitignore文件
-# 三.注意事项
-# 1.如果文件已经被git管理,那么后续添加的忽略模式将不会生效,具体解决方法,参考<<二.常用命令>>.
-
-#=======================================================================================================================
-#============================== java忽略文件 =====================================
-#===================== https://github.com/github/gitignore/blob/master/Java.gitignore ==================
-#=======================================================================================================================
-# 编译后的class文件,忽略所有以[.class]结尾的文件
-*.class
-
-# 日志文件,忽略所有以[.log]结尾的文件.
-*.log
-
-# BlueJ 文件,忽略所有以[.ctxt]结尾的文件.
-*.ctxt
-
-# Mobile Tools for Java (J2ME),忽略[.mtj.tmp/]目录及其子文件.
-.mtj.tmp/
-
-# 打包文件,忽略所有以[.jar]或[.war]或[.nar]或[.ear]或[.zip]或[.tar.gz]或[rar]结尾的文件.
-*.jar
-*.war
-*.nar
-*.ear
-*.zip
-*.tar.gz
-*.rar
-
-# 虚拟机崩溃日志,忽略所有以[hs_err_pid]开头的文件.[see http://www.java.com/en/download/help/error_hotspot.xml]
-hs_err_pid*
-#=======================================================================================================================
-#============================== maven忽略文件 ===================================
-#===================== https://github.com/github/gitignore/blob/master/Maven.gitignore ==================
-#=======================================================================================================================
-target/
-pom.xml.tag
-pom.xml.releaseBackup
-pom.xml.versionsBackup
-pom.xml.next
-release.properties
-dependency-reduced-pom.xml
-buildNumber.properties
-.mvn/timing.properties
-# Avoid ignoring Maven wrapper jar file (.jar files are usually ignored)
-!/.mvn/wrapper/maven-wrapper.jar
-#=======================================================================================================================
-#============================== IDE环境忽略文件 ==================================
-#===================== https://github.com/github/gitignore/blob/master/Maven.gitignore ==================
-#=======================================================================================================================
-#----------------IDEA-------------
-.idea/*
-.idea/compiler.xml
-.idea/encodings.xml
-.idea/modules.xml
-*.iml
-#=======================================================================================================================
-#============================== other环境忽略文件 ================================
-#===================== https://github.com/github/gitignore/blob/master/Maven.gitignore ==================
-#=======================================================================================================================
-*.sw?
-.#*
-*#
-*~
-.classpath
-.project
-.settings/
-bin
-build
-target
-dependency-reduced-pom.xml
-*.sublime-*
-/scratch
-.gradle
-Guardfile
-README.html
-*.iml
-.idea
-*/.DS_Store
-.DS_Store
\ No newline at end of file
diff --git a/skyer-after-sales/.gitlab-ci.yml b/skyer-after-sales/.gitlab-ci.yml
deleted file mode 100644
index 1c16c18..0000000
--- a/skyer-after-sales/.gitlab-ci.yml
+++ /dev/null
@@ -1,11 +0,0 @@
-include: http://api.k8s9.com/devops/v1/projects/285085540595404800/ci_contents/pipelines/18168a96-ee4e-4511-bbe4-2b9cae1a9e07/content.yaml
-
-#include: http://api.k8s9.com/devops/v1/projects/285085540595404800/ci_contents/pipelines/d65d3f5e-8aec-4a8e-b631-bab6ce337580/content.yaml
-#
-##include: http://api.k8s9.com/devops/v1/projects/285085540595404800/ci_contents/pipelines/8cccd705-9bc2-4343-a9f2-20a8df472c83/content.yaml
-##
-###include: http://api.baogicloud.com/devops/v1/projects/204888765897510912/ci_contents/pipelines/87fb3170-17fd-4de3-b1e3-d94eabcf1663/content.yaml
-###
-####include: http://api.baogicloud.com/devops/v1/projects/204888765897510912/ci_contents/pipelines/53d138fb-99ea-4e26-971a-0ba5c8302b2a/content.yaml
-####
-#####include: http://api.baogicloud.com/devops/v1/projects/187577360164982784/ci_contents/pipelines/65d7a991-cf06-4979-9b87-b916b0cdc17b/content.yaml
\ No newline at end of file
diff --git a/skyer-after-sales/charts/skyer-after-sales/Chart.yaml b/skyer-after-sales/charts/skyer-after-sales/Chart.yaml
deleted file mode 100644
index 4e47d8a..0000000
--- a/skyer-after-sales/charts/skyer-after-sales/Chart.yaml
+++ /dev/null
@@ -1,5 +0,0 @@
-apiVersion: v1
-appVersion: "1.0"
-description: A Helm chart for Kubernetes
-name: skyer-after-sales
-version: 0.1.0
diff --git a/skyer-after-sales/charts/skyer-after-sales/README.md b/skyer-after-sales/charts/skyer-after-sales/README.md
deleted file mode 100644
index bed1986..0000000
--- a/skyer-after-sales/charts/skyer-after-sales/README.md
+++ /dev/null
@@ -1,81 +0,0 @@
-# skyer Base Service
-基于Spring Cloud After Sales的微服务
-## Introduction
-
-## Add Helm chart repository
-
-``` bash
-helm repo add skyer https://chart.skyer.com.cn/skyer/c7n
-helm repo update
-```
-
-## Installing the Chart
-
-```bash
-$ helm install c7n/skyer-platform --name skyer-platform
-```
-
-Specify each parameter using the `--set key=value[,key=value]` argument to `helm install`.
-
-## Uninstalling the Chart
-
-```bash
-$ helm delete skyer-platform
-```
-
-## Configuration
-
-Parameter | Description | Default
---- | --- | ---
-`replicaCount` | pod运行数量 | `1`
-`image.repository` | 镜像库地址 | `registry.skyer.com.cn/skyer/skyer-platform`
-`image.pullPolicy` | 镜像拉取策略 | `IfNotPresent`
-`preJob.timeout` | job超时时间 | `300`
-`preJob.image` | job镜像库地址 | `registry.cn-hangzhou.aliyuncs.com/skyer-tools/dbtool:0.6.4`
-`metrics.path` | 收集应用的指标数据路径 | `/actuator/prometheus`
-`metrics.group` | 性能指标应用分组 | `spring-boot`
-`logs.parser` | 日志收集格式 | `spring-boot`
-`deployment.managementPort` | 服务管理端口 | `8101`
-`ingress.enabled` | 是否创建k8s ingress | `false`
-`env.open.SPRING_DATASOURCE_URL` | 数据库连接地址 | `jdbc:mysql://localhost/base_service?useUnicode=true&characterEncoding=utf-8&useSSL=false&useInformationSchema=true&remarks=true`
-`env.open.SPRING_DATASOURCE_USERNAME` | 数据库用户名 | `skyer`
-`env.open.SPRING_DATASOURCE_PASSWORD` | 数据库密码 | `password`
-`env.open.SPRING_REDIS_HOST` | redis主机地址 | `localhost`
-`env.open.SPRING_REDIS_PORT` | redis端口 | `6379`
-`env.open.SPRING_REDIS_DATABASE` | redis db | `1`
-`env.open.EUREKA_CLIENT_SERVICEURL_DEFAULTZONE` | 注册服务地址 | `http://register-server:8000/eureka/`
-`service.enabled` | 是否创建k8s service | `false`
-`service.type` | service类型 | `ClusterIP`
-`service.port` | service端口 | `8100`
-`service.name` | service名称 | `skyer-platform`
-`resources.limits` | k8s中容器能使用资源的资源最大值 | `3Gi`
-`resources.requests` | k8s中容器使用的最小资源需求 | `2Gi`
-
-### SkyWalking Configuration
-Parameter | Description
---- | ---
-`javaagent` | SkyWalking 代理jar包(添加则开启 SkyWalking,删除则关闭)
-`skywalking.agent.application_code` | SkyWalking 应用名称
-`skywalking.agent.sample_n_per_3_secs` | SkyWalking 采样率配置
-`skywalking.agent.namespace` | SkyWalking 跨进程链路中的header配置
-`skywalking.agent.authentication` | SkyWalking 认证token配置
-`skywalking.agent.span_limit_per_segment` | SkyWalking 每segment中的最大span数配置
-`skywalking.agent.ignore_suffix` | SkyWalking 需要忽略的调用配置
-`skywalking.agent.is_open_debugging_class` | SkyWalking 是否保存增强后的字节码文件
-`skywalking.collector.backend_service` | SkyWalking OAP 服务地址和端口配置
-
-```bash
-$ helm install c7n/skyer-platform \
- --set env.open.SKYWALKING_OPTS="-javaagent:/agent/skywalking-agent.jar -Dskywalking.agent.application_code=skyer-platform -Dskywalking.agent.sample_n_per_3_secs=-1 -Dskywalking.collector.backend_service=oap.skywalking:11800" \
- --name skyer-platform
-```
-
-## 验证部署
-```bash
-curl -s $(kubectl get po -n c7n-system -l skyer.io/release=skyer-platform -o jsonpath="{.items[0].status.podIP}"):8081/actuator/health | jq -r .status
-```
-出现以下类似信息即为成功部署
-
-```bash
-UP
-```
\ No newline at end of file
diff --git a/skyer-after-sales/charts/skyer-after-sales/templates/_helpers.tpl b/skyer-after-sales/charts/skyer-after-sales/templates/_helpers.tpl
deleted file mode 100644
index 92e3d91..0000000
--- a/skyer-after-sales/charts/skyer-after-sales/templates/_helpers.tpl
+++ /dev/null
@@ -1,28 +0,0 @@
-{{/* vim: set filetype=mustache: */}}
-{{- /*
-service.labels.standard prints the standard service Helm labels.
-The standard labels are frequently used in metadata.
-*/ -}}
-
-{{- define "service.image" -}}
-{{- printf "%s:%s" .Values.image.repository (default (.Chart.Version) .Values.image.tag) -}}
-{{- end -}}
-
-{{/*
-Return the appropriate apiVersion for deployment.
-*/}}
-{{- define "app.deployment.apiVersion" -}}
-{{- if semverCompare "<1.9-0" .Capabilities.KubeVersion.GitVersion -}}
-{{- print "apps/v1beta2" -}}
-{{- else -}}
-{{- print "apps/v1" -}}
-{{- end -}}
-{{- end -}}
-
-
-{{- define "service.labels.kubesphere" -}}
-app: {{ .Release.Name | quote }}
-app.kubernetes.io/name: {{ .Values.kubesphere.app.name | quote }}
-app.kubernetes.io/version: {{ .Values.kubesphere.app.version | quote }}
-version: {{ .Values.kubesphere.app.version | quote }}
-{{- end -}}
\ No newline at end of file
diff --git a/skyer-after-sales/charts/skyer-after-sales/templates/deployment.yaml b/skyer-after-sales/charts/skyer-after-sales/templates/deployment.yaml
deleted file mode 100644
index 27741cf..0000000
--- a/skyer-after-sales/charts/skyer-after-sales/templates/deployment.yaml
+++ /dev/null
@@ -1,121 +0,0 @@
-apiVersion: {{ include "app.deployment.apiVersion" . }}
-kind: Deployment
-metadata:
- name: {{ .Release.Name }}
- labels:
-{{ include "service.labels.kubesphere" . | indent 4 }}
- annotations:
- deployment.kubernetes.io/revision: '1'
- kubesphere.io/creator: {{ .Values.kubesphere.app.creator | quote }}
- servicemesh.kubesphere.io/enabled: '{{ .Values.kubesphere.app.servicemesh }}'
-spec:
- strategy:
- type: {{ .Values.deploymentUpdate.type }}
- {{- if eq .Values.deploymentUpdate.type "RollingUpdate" }}
- rollingUpdate:
- maxSurge: {{ .Values.deploymentUpdate.maxSurge }}
- maxUnavailable: {{ .Values.deploymentUpdate.maxUnavailable }}
- {{- else }}
- rollingUpdate: null
- {{- end}}
- replicas: {{ .Values.replicaCount }}
- selector:
- matchLabels:
-{{ include "service.labels.kubesphere" . | indent 6 }}
- template:
- metadata:
- annotations:
- sidecar.istio.io/inject: '{{ .Values.kubesphere.app.servicemesh }}'
- labels:
-{{ include "service.labels.kubesphere" . | indent 8 }}
- spec:
- volumes:
- - name: host-time
- hostPath:
- path: /etc/localtime
- type: ''
- - name: data
- {{- if .Values.persistence.enabled }}
- persistentVolumeClaim:
- claimName: {{ .Values.persistence.existingClaim | default ( .Release.Name ) }}
- {{- else }}
- emptyDir: {}
- {{- end }}
- containers:
- - name: {{ .Release.Name }}
- image: {{ include "service.image" . }}
- imagePullPolicy: {{ .Values.image.pullPolicy }}
- env:
- {{- range $name, $value := .Values.env.open }}
- {{- if ne (len ($value | quote)) 0 }}
- - name: {{ $name | quote }}
- value: {{ $value | quote }}
- {{- end }}
- {{- end }}
- ports:
- - name: http-{{ .Values.service.port }}
- containerPort: {{ .Values.service.port }}
- protocol: TCP
- {{- if not (empty .Values.deployment.managementPort) }}
- - name: http-{{ .Values.deployment.managementPort }}
- containerPort: {{ .Values.deployment.managementPort }}
- protocol: TCP
- {{- end }}
- readinessProbe:
- initialDelaySeconds: {{ .Values.readinessProbe.initialDelaySeconds }}
- periodSeconds: {{ .Values.readinessProbe.periodSeconds }}
- timeoutSeconds: {{ .Values.readinessProbe.timeoutSeconds }}
- successThreshold: {{ .Values.readinessProbe.successThreshold }}
- failureThreshold: {{ .Values.readinessProbe.failureThreshold }}
- exec:
- command:
- - /bin/sh
- - -c
- - >
- nc -z localhost {{ .Values.env.open.SERVER_PORT }}
- && curl -s --fail localhost:{{ .Values.env.open.MANAGEMENT_SERVER_PORT }}/actuator/health
- livenessProbe:
- initialDelaySeconds: {{ .Values.livenessProbe.initialDelaySeconds }}
- periodSeconds: {{ .Values.livenessProbe.periodSeconds }}
- timeoutSeconds: {{ .Values.livenessProbe.timeoutSeconds }}
- successThreshold: {{ .Values.livenessProbe.successThreshold }}
- failureThreshold: {{ .Values.livenessProbe.failureThreshold }}
- exec:
- command:
- - /bin/sh
- - -c
- - >
- nc -z localhost {{ .Values.env.open.SERVER_PORT }}
- && curl -s --fail localhost:{{ .Values.env.open.MANAGEMENT_SERVER_PORT }}/actuator/health
- resources:
-{{ toYaml .Values.resources | indent 12 }}
- volumeMounts:
- - name: host-time
- readOnly: true
- mountPath: /etc/localtime
- - mountPath: /Charts
- name: data
- {{- if not (empty .Values.persistence.subPath) }}
- subPath: {{ .Values.persistence.subPath }}
- {{- end }}
- terminationMessagePath: /dev/termination-log
- terminationMessagePolicy: File
- restartPolicy: Always
- terminationGracePeriodSeconds: 30
- dnsPolicy: ClusterFirst
- serviceAccountName: default
- serviceAccount: default
- securityContext: {}
- schedulerName: default-scheduler
-{{- with .Values.nodeSelector }}
- nodeSelector:
-{{ toYaml . | indent 8 }}
-{{- end }}
-{{- with .Values.affinity }}
- affinity:
-{{ toYaml . | indent 8 }}
-{{- end }}
-{{- with .Values.tolerations }}
- tolerations:
-{{ toYaml . | indent 8 }}
-{{- end }}
\ No newline at end of file
diff --git a/skyer-after-sales/charts/skyer-after-sales/templates/service.yaml b/skyer-after-sales/charts/skyer-after-sales/templates/service.yaml
deleted file mode 100644
index 9cd5099..0000000
--- a/skyer-after-sales/charts/skyer-after-sales/templates/service.yaml
+++ /dev/null
@@ -1,41 +0,0 @@
-{{- if .Values.service.enabled }}
-kind: Service
-apiVersion: v1
-metadata:
- name: {{ .Release.Name }}
- labels:
-{{ include "service.labels.kubesphere" . | indent 4 }}
- annotations:
- kubesphere.io/creator: {{ .Values.kubesphere.app.creator }}
- kubesphere.io/serviceType: {{ .Values.kubesphere.app.serviceType | quote }}
- {{- if .Values.kubesphere.app.ingress }}
- service.beta.kubernetes.io/qingcloud-load-balancer-eip-ids: ''
- service.beta.kubernetes.io/qingcloud-load-balancer-type: '0'
- {{- end }}
- servicemesh.kubesphere.io/enabled: '{{ .Values.kubesphere.app.servicemesh }}'
-spec:
- ports:
- - name: http-{{ .Values.service.port }}
- protocol: TCP
- port: {{ .Values.service.port }}
- targetPort: {{ .Values.service.port }}
- {{- if not (empty .Values.service.nodePort) }}
- nodePort: {{ .Values.service.nodePort }}
- {{- end }}
- {{- if not (empty .Values.deployment.managementPort) }}
- - name: http-{{ .Values.deployment.managementPort }}
- protocol: TCP
- port: {{ .Values.deployment.managementPort }}
- targetPort: {{ .Values.deployment.managementPort }}
- {{- if not (empty .Values.deployment.nodePort) }}
- nodePort: {{ .Values.deployment.nodePort }}
- {{- end }}
- {{- end }}
- selector:
-{{ include "service.labels.kubesphere" . | indent 4 }}
- type: {{ .Values.service.type | quote }}
- sessionAffinity: None
- ipFamilies:
- - IPv4
- ipFamilyPolicy: SingleStack
- {{- end }}
\ No newline at end of file
diff --git a/skyer-after-sales/charts/skyer-after-sales/values.yaml b/skyer-after-sales/charts/skyer-after-sales/values.yaml
deleted file mode 100644
index a0208eb..0000000
--- a/skyer-after-sales/charts/skyer-after-sales/values.yaml
+++ /dev/null
@@ -1,138 +0,0 @@
-## 实例运行数量
-replicaCount: 1
-
-## 设置默认的 image、imageTag 和 imagePullPolicy。
-image:
- repository: harbor.k8s9.com/k8s9-skyer-ebc/skyer-after-sales
- pullPolicy: IfNotPresent
-
-deployment:
- managementPort: 8321
- nodePort:
-
-kubesphere:
- app:
- name: spay
- version: v1
- creator: admin
- servicemesh: true
- # statelessservice statefulservice
- serviceType: statelessservice
- ingress: false
-
-## Deployment 更新策略
-deploymentUpdate:
- type: RollingUpdate
- maxUnavailable: 0
- maxSurge: 100%
-
-## Pod 节点分配
-## ref: https://kubernetes.io/docs/user-guide/node-selection/
-##
-nodeSelector: {}
-tolerations: []
-affinity: {}
-
-
-## Liveness 和 Readiness 探针相关配置
-## ref: https://kubernetes.io/docs/tasks/configure-pod-container/configure-liveness-readiness-probes/
-livenessProbe:
- initialDelaySeconds: 240
- periodSeconds: 30
- timeoutSeconds: 3
- successThreshold: 1
- failureThreshold: 3
-readinessProbe:
- initialDelaySeconds: 240
- periodSeconds: 15
- timeoutSeconds: 3
- successThreshold: 1
- failureThreshold: 3
-
-## 资源请求和限制相关配置
-## ref: http://kubernetes.io/docs/user-guide/compute-resources/
-##
-resources:
- limits:
- cpu: 3000m
- memory: 2Gi
- requests:
- cpu: 600m
- memory: 2Gi
-
-## service 相关设置
-## ref: http://kubernetes.io/docs/user-guide/services/
-##
-service:
- enabled: true
- # LoadBalancer ClusterIP
- type: ClusterIP
- port: 8320
- nodePort:
-
-persistence:
- enabled: false
- ## A manually managed Persistent Volume and Claim
- ## Requires persistence.enabled: true
- ## If defined, PVC must be created manually before volume will be bound
- # existingClaim:
- # subPath:
-
-
-## 实例运行时的环境变量
-env:
- open:
- # 本实例服务端口
- SERVER_PORT: 8320
- # 本实例管理端口
- MANAGEMENT_SERVER_PORT: 8321
-
- # 是否启用配置中心
- SPRING_CLOUD_CONFIG_ENABLED: false
- # 配置中心地址
- SPRING_CLOUD_CONFIG_URI: http://skyer-config:8010
-
- # Redis 主机地址
- SPRING_REDIS_HOST: skyer-redis
- # Redis 端口
- SPRING_REDIS_PORT: 6379
- # Redis db 固定数据不可更改
- SPRING_REDIS_DATABASE: 1
-
- # 数据库连接地址
- SPRING_DATASOURCE_URL: jdbc:mysql://skyer-mysql:3306/skyer_after_sales?useUnicode=true&characterEncoding=utf-8&useSSL=false&useInformationSchema=true&remarks=true&serverTimezone=Asia/Shanghai
- # 数据库用户名
- SPRING_DATASOURCE_USERNAME: root
- # 数据库密码
- SPRING_DATASOURCE_PASSWORD: Ss110110
-
- # 注册服务地址
- EUREKA_CLIENT_SERVICEURL_DEFAULTZONE: http://skyer-register:8000/eureka/
-
- EUREKA_INSTANCE_PREFER_IP_ADDRESS: true
-
- # 项目级API是否必须检查项目参数
- SKYER_GATEWAY_FILTER_COMMON_REQUEST_CHECK_PROJECT: true
- # 组织级API是否必须检查组织参数
- SKYER_GATEWAY_FILTER_COMMON_REQUEST_CHECK_ORGANIZATION: true
- # 是否启用标准的权限检查
- SKYER_GATEWAY_FILTER_COMMON_REQUEST_ENABLE: true
- # 是否统计API访问情况
- SKYER_GATEWAY_FILTER_COLLECT_SPAN_ENABLED: true
- # 是否打印 JWT
- SKYER_GATEWAY_HELPER_ENABLE_JWT_LOG: false
- # 主键加密配置 encrypt(主键加密) to_string(主键变字符串类型) do_nothing(关闭加密)
- SKYER_REQUEST_ENCRYPT_MODE: encrypt
- LOG_LEVEL: info
- SKYER_GATEWAY_AUTHENTICATE_REDIS: true
-
- # 百分比使用物理内存,预留一部分用于堆外内存以及外部程序
- JAVA_OPTS: >-
- -XX:MaxRAMPercentage=80.0
-
- ## Skywalking 配置参数
- # SKYWALKING_OPTS: >-
- # -javaagent:/agent/skywalking-agent.jar
- # -Dskywalking.agent.application_code=asgard-service
- # -Dskywalking.agent.sample_n_per_3_secs=-1
- # -Dskywalking.collector.backend_service=oap.skywalking:11800
diff --git a/skyer-after-sales/docker/Dockerfile b/skyer-after-sales/docker/Dockerfile
deleted file mode 100644
index 53c42c7..0000000
--- a/skyer-after-sales/docker/Dockerfile
+++ /dev/null
@@ -1,6 +0,0 @@
-FROM registry.cn-shanghai.aliyuncs.com/c7n/javabase:0.10.0
-RUN mkdir /skyer && chown -R www-data:www-data /skyer
-COPY --chown=www-data:www-data app.jar /skyer/skyer-after-sales.jar
-WORKDIR /skyer
-USER 33
-CMD java $JAVA_OPTS $SKYWALKING_OPTS -jar /skyer/skyer-after-sales.jar
\ No newline at end of file
diff --git a/skyer-after-sales/init-local-database.sh b/skyer-after-sales/init-local-database.sh
deleted file mode 100644
index 8ed6dca..0000000
--- a/skyer-after-sales/init-local-database.sh
+++ /dev/null
@@ -1,13 +0,0 @@
-#!/usr/bin/env bash
-mkdir -p target
-if [ ! -f target/skyer-tool-liquibase.jar ]
-then
- curl https://nexus.skyer.com.cn/repository/skyer-release/io/skyer/skyer-tool-liquibase/0.8.1.RELEASE/skyer-tool-liquibase-0.8.1.RELEASE.jar -o target/skyer-tool-liquibase.jar
-fi
-
-java -Dspring.datasource.url="jdbc connection url" \
- -Dspring.datasource.username=username \
- -Dspring.datasource.password=password \
- -Ddata.drop=false -Ddata.init=init \
- -Ddata.dir=src/main/resources \
- -jar target/skyer-tool-liquibase.jar
diff --git a/skyer-after-sales/pom.xml b/skyer-after-sales/pom.xml
deleted file mode 100644
index 9ebdf0e..0000000
--- a/skyer-after-sales/pom.xml
+++ /dev/null
@@ -1,321 +0,0 @@
-
-
- 4.0.0
-
-
- org.skyer
- skyer-parent
- 1.0.0-SNAPSHOT
-
- skyer-after-sales
-
-
-
-
- org.skyer.starter
- skyer-starter-core
-
-
- org.skyer.starter
- skyer-starter-mybatis-mapper
-
-
- org.skyer.starter
- skyer-starter-export
-
-
- org.skyer.starter
- skyer-starter-feign-replay
-
-
- org.skyer.starter
- skyer-starter-websocket
-
-
- org.skyer.starter
- skyer-starter-config-client
-
-
- org.skyer.starter
- skyer-starter-metric
-
-
- org.skyer.starter
- skyer-starter-keyencrypt
-
-
-
-
- org.skyer.boot
- skyer-boot-iam
-
-
- org.skyer.boot
- skyer-boot-platform
-
-
- org.skyer.boot
- skyer-boot-message
-
-
- org.skyer.boot
- skyer-boot-scheduler
-
-
-
- org.skyer.boot
- skyer-boot-import
-
-
-
- org.skyer.boot
- skyer-boot-customize
-
-
-
-
-
- org.skyer.boot
- skyer-boot-api-customize
-
-
-
-
-
-
-
-
-
-
-
-
- mysql
- mysql-connector-java
- true
-
-
- com.oracle
- ojdbc7
- true
-
-
- com.microsoft.sqlserver
- sqljdbc4
- true
-
-
-
-
- org.springframework.boot
- spring-boot-starter-undertow
-
-
- org.springframework.boot
- spring-boot-starter-actuator
-
-
- org.springframework.boot
- spring-boot-configuration-processor
- true
-
-
- org.springframework.boot
- spring-boot-starter-aop
-
-
- org.springframework.boot
- spring-boot-starter-data-redis
-
-
- org.springframework.boot
- spring-boot-starter-websocket
-
-
-
- com.squareup.retrofit2
- retrofit
-
-
- com.squareup.retrofit2
- converter-jackson
-
-
-
-
- org.apache.commons
- commons-lang3
-
-
- org.apache.commons
- commons-collections4
-
-
- com.fasterxml.jackson.dataformat
- jackson-dataformat-yaml
-
-
-
-
- org.mybatis
- mybatis-typehandlers-jsr310
- 1.0.2
-
-
-
-
- org.springframework.boot
- spring-boot-starter-test
- test
-
-
-
- org.spockframework
- spock-core
- test
-
-
- org.spockframework
- spock-spring
- test
-
-
- cglib
- cglib-nodep
- test
-
-
-
- com.jcraft
- jsch
-
-
-
-
- org.springframework.cloud
- spring-cloud-starter-netflix-eureka-client
- true
-
-
- org.springframework.cloud
- spring-cloud-config-client
- true
-
-
-
-
- org.projectlombok
- lombok
- true
-
-
-
-
- cn.hutool
- hutool-all
- 5.7.9
-
-
-
-
- app
-
-
- src/main/java
-
- **/*.properties
-
- true
-
-
- src/main/resources
-
- **/**
-
-
- saml/*.jks
-
- true
-
-
- src
-
- **/*.sh
-
- true
-
-
-
-
- org.apache.maven.plugins
- maven-resources-plugin
-
-
- xlsx
- xls
- ttf
- ttc
-
-
-
-
- org.apache.maven.plugins
- maven-compiler-plugin
-
-
- 1.8
- ${project.build.sourceEncoding}
-
-
-
- org.apache.maven.plugins
- maven-javadoc-plugin
-
- ${maven.javadoc.skip}
-
-
-
- attach-javadocs
- package
-
- jar
-
-
-
-
- -Xdoclint:none
-
-
-
-
-
-
-
- org.springframework.boot
- spring-boot-maven-plugin
-
- false
-
-
-
-
- repackage
-
-
-
-
-
- org.apache.maven.plugins
- maven-surefire-plugin
-
-
- **/*Test.java
- **/*Spec.java
-
-
-
-
-
-
-
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/AfterSalesApplication.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/AfterSalesApplication.java
deleted file mode 100644
index 0e1832a..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/AfterSalesApplication.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package org.skyer.afterSales;
-
-import org.springframework.boot.SpringApplication;
-import org.springframework.boot.autoconfigure.SpringBootApplication;
-import org.springframework.cloud.client.discovery.EnableDiscoveryClient;
-
-/**
- * Skyer平台服务启动类 主要包含平台通用功能
- *
- * @author xianzhi.chen@hand-china.com 2018年6月7日下午6:09:44
- */
-@org.skyer.autoconfigure.afterSales.EnableSkyerAfterSales
-@EnableDiscoveryClient
-@SpringBootApplication
-public class AfterSalesApplication {
-
- public static void main(String[] args) {
- try {
- SpringApplication.run(AfterSalesApplication.class, args);
- } catch (Exception e) {
- e.printStackTrace();
- }
- }
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/api/controller/v1/InstallOrderController.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/api/controller/v1/InstallOrderController.java
deleted file mode 100644
index 6b468c9..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/api/controller/v1/InstallOrderController.java
+++ /dev/null
@@ -1,82 +0,0 @@
-package org.skyer.afterSales.api.controller.v1;
-
-import cn.hutool.core.lang.Dict;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.skyer.afterSales.app.service.InstallOrderService;
-import org.skyer.afterSales.config.AfterSalesSwaggerApiConfig;
-import org.skyer.afterSales.domain.dto.InstallOrderDTO;
-import org.skyer.afterSales.domain.dto.MultiCodeDelDTO;
-import org.skyer.afterSales.domain.dto.PageInstallOrderDTO;
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-import org.skyer.core.base.BaseController;
-import org.skyer.core.domain.Page;
-import org.skyer.core.iam.ResourceLevel;
-import org.skyer.core.util.Results;
-import org.skyer.mybatis.pagehelper.annotation.SortDefault;
-import org.skyer.mybatis.pagehelper.domain.PageRequest;
-import org.skyer.mybatis.pagehelper.domain.Sort;
-import org.skyer.swagger.annotation.Permission;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-import springfox.documentation.annotations.ApiIgnore;
-
-/**
- * 安装工单表 管理 API
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-@RestController("installOrderSiteController.v1")
-@RequestMapping("/v1/install-orders")
-@Api(tags = AfterSalesSwaggerApiConfig.INSTALL_ORDERS)
-public class InstallOrderController extends BaseController {
-
- @Autowired
- private InstallOrderService installOrderService;
-
- @ApiOperation(value = "物流商列表分页")
- @Permission(level = ResourceLevel.SITE)
- @GetMapping
- public ResponseEntity> list(PageInstallOrderDTO queryDto, @ApiIgnore @SortDefault(value = LogisticsCompany.FIELD_ID,
- direction = Sort.Direction.DESC) PageRequest pageRequest) {
- Page list = installOrderService.page(pageRequest, queryDto);
- return Results.success(list);
- }
-
- @ApiOperation(value = "物流商明细")
- @Permission(level = ResourceLevel.SITE)
- @GetMapping("/{code}")
- public ResponseEntity> detail(@PathVariable String code) {
- Dict detail = installOrderService.detail(code);
- return Results.success(detail);
- }
-
- @ApiOperation(value = "创建物流商")
- @Permission(level = ResourceLevel.SITE)
- @PostMapping
- public ResponseEntity> create(@RequestBody InstallOrderDTO dto) {
- validObject(dto);
- boolean result = installOrderService.create(dto);
- return result ? Results.success("添加成功.") : Results.error("添加失败!");
- }
-
- @ApiOperation(value = "修改物流商")
- @Permission(level = ResourceLevel.SITE)
- @PutMapping
- public ResponseEntity> update(@RequestBody InstallOrderDTO dto) {
- // validObject(dto);
- boolean result = installOrderService.update(dto);
- return result ? Results.success("修改成功.") : Results.error("修改失败!");
- }
-
- @ApiOperation(value = "删除物流商(支持1个和多个)")
- @Permission(level = ResourceLevel.SITE)
- @DeleteMapping
- public ResponseEntity> batchRemove(@ApiParam("主键ID") @RequestBody MultiCodeDelDTO delDto) {
- int result = installOrderService.batchRemove(delDto.getCodes());
- return result > 0 ? Results.success(result + "条数据被删除.") : Results.error("删除出错!");
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/api/controller/v1/LogisticsCompanyController.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/api/controller/v1/LogisticsCompanyController.java
deleted file mode 100644
index 85871d9..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/api/controller/v1/LogisticsCompanyController.java
+++ /dev/null
@@ -1,83 +0,0 @@
-package org.skyer.afterSales.api.controller.v1;
-
-import cn.hutool.core.lang.Dict;
-import io.swagger.annotations.Api;
-import io.swagger.annotations.ApiOperation;
-import io.swagger.annotations.ApiParam;
-import org.skyer.afterSales.app.service.LogisticsCompanyService;
-import org.skyer.afterSales.domain.dto.LogisticsCompanyDTO;
-import org.skyer.afterSales.domain.dto.MultiDelDTO;
-import org.skyer.afterSales.domain.dto.PageLogisticsCompanyDTO;
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-import org.skyer.core.base.BaseController;
-import org.skyer.core.domain.Page;
-import org.skyer.core.iam.ResourceLevel;
-import org.skyer.core.util.Results;
-import org.skyer.mybatis.pagehelper.annotation.SortDefault;
-import org.skyer.mybatis.pagehelper.domain.PageRequest;
-import org.skyer.mybatis.pagehelper.domain.Sort;
-import org.skyer.starter.keyencrypt.core.Encrypt;
-import org.skyer.swagger.annotation.Permission;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.*;
-import springfox.documentation.annotations.ApiIgnore;
-
-/**
- * 物流商表 管理 API
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-@RestController("logisticsCompanySiteController.v1")
-@RequestMapping("/xxx/logistics-companys")
-@Api(tags = "LogisticsCompanyController")
-@Deprecated
-public class LogisticsCompanyController extends BaseController {
-
- @Autowired
- private LogisticsCompanyService logisticsCompanyService;
-
- @ApiOperation(value = "物流商列表分页")
- @Permission(level = ResourceLevel.SITE)
- @GetMapping
- public ResponseEntity> list(PageLogisticsCompanyDTO logisticsCompanyDTO, @ApiIgnore @SortDefault(value = LogisticsCompany.FIELD_ID,
- direction = Sort.Direction.DESC) PageRequest pageRequest) {
- Page list = logisticsCompanyService.page(pageRequest, logisticsCompanyDTO);
- return Results.success(list);
- }
-
- @ApiOperation(value = "物流商明细")
- @Permission(level = ResourceLevel.SITE)
- @GetMapping("/{id}")
- public ResponseEntity> detail(@Encrypt @PathVariable Long id) {
- Dict detail = logisticsCompanyService.detail(id);
- return Results.success(detail);
- }
-
- @ApiOperation(value = "创建物流商")
- @Permission(level = ResourceLevel.SITE)
- @PostMapping
- public ResponseEntity> create(@RequestBody LogisticsCompanyDTO dto) {
- validObject(dto);
- boolean result = logisticsCompanyService.create(dto);
- return result ? Results.success("添加成功.") : Results.error("添加失败!");
- }
-
- @ApiOperation(value = "修改物流商")
- @Permission(level = ResourceLevel.SITE)
- @PutMapping
- public ResponseEntity> update(@RequestBody LogisticsCompanyDTO dto) {
- // validObject(dto);
- boolean result = logisticsCompanyService.update(dto);
- return result ? Results.success("修改成功.") : Results.error("修改失败!");
- }
-
- @ApiOperation(value = "删除物流商(支持1个和多个)")
- @Permission(level = ResourceLevel.SITE)
- @DeleteMapping
- public ResponseEntity> batchRemove(@ApiParam("主键ID") @RequestBody MultiDelDTO idsReqDTO) {
- int result = logisticsCompanyService.batchRemove(idsReqDTO.getIds());
- return result > 0 ? Results.success(result + "条数据被删除.") : Results.error("删除出错!");
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/InstallOrderService.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/InstallOrderService.java
deleted file mode 100644
index a23be32..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/InstallOrderService.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.skyer.afterSales.app.service;
-
-import cn.hutool.core.lang.Dict;
-import org.skyer.afterSales.domain.dto.InstallOrderDTO;
-import org.skyer.afterSales.domain.dto.PageInstallOrderDTO;
-import org.skyer.afterSales.domain.entity.InstallOrder;
-import org.skyer.core.domain.Page;
-import org.skyer.mybatis.pagehelper.domain.PageRequest;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import java.util.List;
-
-/**
- * 安装工单表应用服务
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-public interface InstallOrderService {
- /**
- * 列表
- *
- * @param queryDto
- * @return
- */
- List list(PageInstallOrderDTO queryDto);
-
- /**
- * 分页
- *
- * @param pageRequest
- * @param queryDto
- * @return
- */
- Page page(PageRequest pageRequest, PageInstallOrderDTO queryDto);
-
- /**
- * 详情
- *
- * @param code
- * @return
- */
- Dict detail(String code);
-
- /**
- * 添加,创建
- *
- * @param addDto
- * @return
- */
- Boolean create(@RequestBody InstallOrderDTO addDto);
-
- /**
- * 更新,修改
- *
- * @param editDto
- * @return
- */
- Boolean update(@RequestBody InstallOrderDTO editDto);
-
- /**
- * 批量删除
- *
- * @param codes
- * @return
- */
- int batchRemove(List codes);
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/LogisticsCompanyService.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/LogisticsCompanyService.java
deleted file mode 100644
index 43bb1cb..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/LogisticsCompanyService.java
+++ /dev/null
@@ -1,67 +0,0 @@
-package org.skyer.afterSales.app.service;
-
-import cn.hutool.core.lang.Dict;
-import org.skyer.afterSales.domain.dto.LogisticsCompanyDTO;
-import org.skyer.afterSales.domain.dto.PageLogisticsCompanyDTO;
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-import org.skyer.core.domain.Page;
-import org.skyer.mybatis.pagehelper.domain.PageRequest;
-import org.springframework.web.bind.annotation.RequestBody;
-
-import java.util.List;
-
-/**
- * 物流商表应用服务
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-public interface LogisticsCompanyService {
- /**
- * 列表
- *
- * @param queryDto
- * @return
- */
- List list(PageLogisticsCompanyDTO queryDto);
-
- /**
- * 分页
- *
- * @param pageRequest
- * @param queryDto
- * @return
- */
- Page page(PageRequest pageRequest, PageLogisticsCompanyDTO queryDto);
-
- /**
- * 详情
- *
- * @param id
- * @return
- */
- Dict detail(Long id);
-
- /**
- * 添加,创建
- *
- * @param addDto
- * @return
- */
- Boolean create(@RequestBody LogisticsCompanyDTO addDto);
-
- /**
- * 更新,修改
- *
- * @param editDto
- * @return
- */
- Boolean update(@RequestBody LogisticsCompanyDTO editDto);
-
- /**
- * 批量删除
- *
- * @param ids
- * @return
- */
- int batchRemove(List ids);
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/impl/InstallOrderServiceImpl.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/impl/InstallOrderServiceImpl.java
deleted file mode 100644
index 7c541a9..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/impl/InstallOrderServiceImpl.java
+++ /dev/null
@@ -1,153 +0,0 @@
-package org.skyer.afterSales.app.service.impl;
-
-import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.lang.Dict;
-import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.RandomUtil;
-import cn.hutool.core.util.StrUtil;
-import org.skyer.afterSales.app.service.InstallOrderService;
-import org.skyer.afterSales.domain.dto.InstallOrderDTO;
-import org.skyer.afterSales.domain.dto.PageInstallOrderDTO;
-import org.skyer.afterSales.domain.entity.InstallOrder;
-import org.skyer.afterSales.domain.repository.InstallOrderRepository;
-import org.skyer.core.domain.Page;
-import org.skyer.core.domain.PageInfo;
-import org.skyer.core.oauth.CustomUserDetails;
-import org.skyer.core.oauth.DetailsHelper;
-import org.skyer.mybatis.domian.Condition;
-import org.skyer.mybatis.pagehelper.PageHelper;
-import org.skyer.mybatis.pagehelper.domain.PageRequest;
-import org.skyer.mybatis.util.Sqls;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-import org.springframework.transaction.annotation.Transactional;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * 安装工单表应用服务默认实现
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-@Service
-public class InstallOrderServiceImpl implements InstallOrderService {
- @Autowired
- private InstallOrderRepository installOrderRepository;
-
- @Override
- public List list(PageInstallOrderDTO queryDto) {
- // 根据条件查找
- return installOrderRepository.selectByCondition(Condition.builder(InstallOrder.class)
- .andWhere(Sqls.custom()
- .andLike(InstallOrder.FIELD_INNER_ORDER_NO, queryDto.getOrderNo(), true)
- .andEqualTo(InstallOrder.FIELD_SHOP_NAME, queryDto.getShopName(), true)
- .andEqualTo(InstallOrder.FIELD_DELETE_FLAG, false))
- .build());
- }
-
- @Override
- public Page page(PageRequest pageRequest, PageInstallOrderDTO queryDto) {
- Page page = PageHelper.doPageAndSort(pageRequest, () -> installOrderRepository.selectByCondition(Condition.builder(InstallOrder.class)
- .andWhere(Sqls.custom()
- .andLike(InstallOrder.FIELD_INNER_ORDER_NO, queryDto.getOrderNo(), true)
- .andEqualTo(InstallOrder.FIELD_SHOP_NAME, queryDto.getShopName(), true)
- .andEqualTo(InstallOrder.FIELD_DELETE_FLAG, false))
- .build()));
-
- List pageListContent = page.getContent();
- if (CollUtil.isNotEmpty(pageListContent)) {
- List dictList = pageListContent.stream().map(xx -> {
- Dict item = Dict.create();
-
- item.set("id", xx.getId());
-
- item.set("tenantId", xx.getTenantId());
-
- item.set("createdBy", xx.getCreatedBy());
- item.set("objectVersionNumber", xx.getObjectVersionNumber());
- item.set("creationDate", DateUtil.formatDateTime(xx.getCreationDate()));
-
- return item;
- }).collect(Collectors.toList());
- return new Page<>(dictList, new PageInfo(page.getTotalPages(), page.getSize()), page.getTotalElements());
- }
-
- return new Page<>(new ArrayList<>(), new PageInfo(0, page.getSize()), 0);
- }
-
- @Override
- public Dict detail(String code) {
- List list = installOrderRepository.selectByCondition(Condition.builder(InstallOrder.class)
- .andWhere(Sqls.custom()
- .andEqualTo(InstallOrder.FIELD_INSTALL_ORDER_NO, code, true))
- .build());
-
- InstallOrder installOrder = CollUtil.isNotEmpty(list) ? list.get(0) : null;
- if (ObjectUtil.isNotNull(installOrder)) {
- Dict dict = Dict.create();
-
- dict.set("id", installOrder.getId());
-
- dict.set("tenantId", installOrder.getTenantId());
-
- dict.set("createdBy", installOrder.getCreatedBy());
- dict.set("objectVersionNumber", installOrder.getObjectVersionNumber());
- dict.set("creationDate", DateUtil.formatDateTime(installOrder.getCreationDate()));
-
- return dict;
- }
- return null;
- }
-
- @Override
- public Boolean create(InstallOrderDTO addDto) {
- InstallOrder installOrder = new InstallOrder();
- BeanUtils.copyProperties(addDto, installOrder);
-
- if (StrUtil.isEmpty(addDto.getInstallOrderCode())) {
- installOrder.setInstallOrderNo(RandomUtil.randomString(6) + RandomUtil.randomNumbers(3) + RandomUtil.randomString(2));
- }
-
- // 获取租户的id
- CustomUserDetails userDetails = DetailsHelper.getUserDetails();
- Long tenantId = ObjectUtil.isNotNull(userDetails) ? userDetails.getTenantId() : 0;
- installOrder.setDeleteFlag(false);
- installOrder.setTenantId(tenantId);
-
- return installOrderRepository.insertSelective(installOrder) > 0;
- }
-
- @Transactional(rollbackFor = Exception.class)
- @Override
- public Boolean update(InstallOrderDTO editDto) {
- List list = installOrderRepository.selectByCondition(Condition.builder(InstallOrder.class)
- .andWhere(Sqls.custom()
- .andEqualTo(InstallOrder.FIELD_INSTALL_ORDER_NO, editDto.getInstallOrderCode(), true))
- .build());
-
- if (CollUtil.isNotEmpty(list)) {
- InstallOrder entityOne = list.get(0);
-
- InstallOrder updateEntity = new InstallOrder();
- BeanUtils.copyProperties(editDto, updateEntity);
- updateEntity.setId(entityOne.getId());
-
- return installOrderRepository.updateByPrimaryKeySelective(entityOne) > 0;
- }
- return false;
- }
-
- @Override
- public int batchRemove(List codes) {
- List list = installOrderRepository.selectByCondition(Condition.builder(InstallOrder.class)
- .andWhere(Sqls.custom()
- .andIn(InstallOrder.FIELD_INSTALL_ORDER_NO, codes, true))
- .build());
-
- return installOrderRepository.batchDelete(list);
- }
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/impl/LogisticsCompanyServiceImpl.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/impl/LogisticsCompanyServiceImpl.java
deleted file mode 100644
index fbaf719..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/app/service/impl/LogisticsCompanyServiceImpl.java
+++ /dev/null
@@ -1,140 +0,0 @@
-package org.skyer.afterSales.app.service.impl;
-
-import cn.hutool.core.collection.CollUtil;
-import cn.hutool.core.date.DateUtil;
-import cn.hutool.core.lang.Dict;
-import cn.hutool.core.util.ObjectUtil;
-import cn.hutool.core.util.RandomUtil;
-import cn.hutool.core.util.StrUtil;
-import org.skyer.afterSales.app.service.LogisticsCompanyService;
-import org.skyer.afterSales.domain.dto.LogisticsCompanyDTO;
-import org.skyer.afterSales.domain.dto.PageLogisticsCompanyDTO;
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-import org.skyer.afterSales.domain.repository.LogisticsCompanyRepository;
-import org.skyer.core.domain.Page;
-import org.skyer.core.domain.PageInfo;
-import org.skyer.core.oauth.CustomUserDetails;
-import org.skyer.core.oauth.DetailsHelper;
-import org.skyer.mybatis.domian.Condition;
-import org.skyer.mybatis.pagehelper.PageHelper;
-import org.skyer.mybatis.pagehelper.domain.PageRequest;
-import org.skyer.mybatis.util.Sqls;
-import org.springframework.beans.BeanUtils;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import java.util.ArrayList;
-import java.util.List;
-import java.util.stream.Collectors;
-
-/**
- * 物流商表应用服务默认实现
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-@Service
-public class LogisticsCompanyServiceImpl implements LogisticsCompanyService {
- @Autowired
- private LogisticsCompanyRepository logisticsCompanyRepository;
-
- @Override
- public List list(PageLogisticsCompanyDTO queryDto) {
- // 根据条件查找
- return logisticsCompanyRepository.selectByCondition(Condition.builder(LogisticsCompany.class)
- .andWhere(Sqls.custom()
- .andLike(LogisticsCompany.FIELD_CODE, queryDto.getCode(), true)
- .andEqualTo(LogisticsCompany.FIELD_ENABLE_FLAG, queryDto.getEnableFlag(), true)
- .andEqualTo(LogisticsCompany.FIELD_DELETE_FLAG, true))
- .build());
- }
-
- @Override
- public Page page(PageRequest pageRequest, PageLogisticsCompanyDTO queryDto) {
- Page page = PageHelper.doPageAndSort(pageRequest, () -> logisticsCompanyRepository.selectByCondition(Condition.builder(LogisticsCompany.class)
- .andWhere(Sqls.custom()
- .andLike(LogisticsCompany.FIELD_CODE, queryDto.getCode(), true)
- .andLike(LogisticsCompany.FIELD_NAME, queryDto.getName(), true)
- .andEqualTo(LogisticsCompany.FIELD_ENABLE_FLAG, queryDto.getEnableFlag(), true)
- .andEqualTo(LogisticsCompany.FIELD_DELETE_FLAG, false))
- .build()));
-
- List pageListContent = page.getContent();
- if (CollUtil.isNotEmpty(pageListContent)) {
- List dictList = pageListContent.stream().map(xx -> {
- Dict item = Dict.create();
-
- item.set("id", xx.getId());
- item.set("name", xx.getName());
- item.set("code", xx.getCode());
- item.set("enableFlag", xx.getEnableFlag());
- item.set("tenantId", xx.getTenantId());
-
- item.set("createdBy", xx.getCreatedBy());
- item.set("objectVersionNumber", xx.getObjectVersionNumber());
- item.set("creationDate", DateUtil.formatDateTime(xx.getCreationDate()));
-
- return item;
- }).collect(Collectors.toList());
- return new Page<>(dictList, new PageInfo(page.getTotalPages(), page.getSize()), page.getTotalElements());
- }
-
- return new Page<>(new ArrayList<>(), new PageInfo(0, page.getSize()), 0);
- }
-
- @Override
- public Dict detail(Long id) {
- LogisticsCompany logisticsCompany = logisticsCompanyRepository.selectByPrimaryKey(id);
- if (ObjectUtil.isNotNull(logisticsCompany)) {
- Dict dict = Dict.create();
-
- dict.set("id", logisticsCompany.getId());
- dict.set("name", logisticsCompany.getName());
- dict.set("code", logisticsCompany.getCode());
- dict.set("enableFlag", logisticsCompany.getEnableFlag());
- dict.set("tenantId", logisticsCompany.getTenantId());
-
- dict.set("createdBy", logisticsCompany.getCreatedBy());
- dict.set("objectVersionNumber", logisticsCompany.getObjectVersionNumber());
- dict.set("creationDate", DateUtil.formatDateTime(logisticsCompany.getCreationDate()));
-
- return dict;
- }
- return null;
- }
-
- @Override
- public Boolean create(LogisticsCompanyDTO addDto) {
- LogisticsCompany logisticsCompany = new LogisticsCompany();
- BeanUtils.copyProperties(addDto, logisticsCompany);
-
- if (StrUtil.isEmpty(addDto.getCode())) {
- logisticsCompany.setCode(RandomUtil.randomString(6) + RandomUtil.randomNumbers(3) + RandomUtil.randomString(2));
- }
-
- // 获取租户的id
- CustomUserDetails userDetails = DetailsHelper.getUserDetails();
- Long tenantId = ObjectUtil.isNotNull(userDetails) ? userDetails.getTenantId() : 0;
- logisticsCompany.setDeleteFlag(false);
- logisticsCompany.setTenantId(tenantId);
-
- return logisticsCompanyRepository.insertSelective(logisticsCompany) > 0;
- }
-
- @Override
- public Boolean update(LogisticsCompanyDTO editDto) {
- LogisticsCompany logisticsCompany = new LogisticsCompany();
- BeanUtils.copyProperties(editDto, logisticsCompany);
-
- return logisticsCompanyRepository.updateByPrimaryKeySelective(logisticsCompany) > 0;
- }
-
- @Override
- public int batchRemove(List ids) {
- List list = logisticsCompanyRepository.selectByCondition(Condition.builder(LogisticsCompany.class)
- .andWhere(Sqls.custom()
- .andIn(LogisticsCompany.FIELD_ID, ids, true))
- .build());
-
- return logisticsCompanyRepository.batchDelete(list);
- }
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/config/AfterSalesExtraDataManager.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/config/AfterSalesExtraDataManager.java
deleted file mode 100644
index 65ad07b..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/config/AfterSalesExtraDataManager.java
+++ /dev/null
@@ -1,34 +0,0 @@
-package org.skyer.afterSales.config;
-
-
-import org.skyer.core.swagger.SkyerRouteData;
-import org.skyer.swagger.annotation.SkyerExtraData;
-import org.skyer.swagger.swagger.extra.ExtraData;
-import org.skyer.swagger.swagger.extra.ExtraDataManager;
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.core.env.Environment;
-
-/**
- * 服务基本信息
- *
- * @author gaokuo.dai@hand-china.com 2018年7月20日下午4:49:12
- */
-@SkyerExtraData
-public class AfterSalesExtraDataManager implements ExtraDataManager {
-
- @Autowired
- private Environment environment;
-
- @Override
- public ExtraData getData() {
- SkyerRouteData routeData = new SkyerRouteData();
- routeData.setName(environment.getProperty("skyer.service.current.name", "safs"));
- routeData.setPath(environment.getProperty("skyer.service.current.path", "/safs/**"));
- routeData.setServiceId(
- environment.getProperty("skyer.service.current.service-name", "skyer-after-sales"));
- routeData.setPackages("org.skyer.afterSales.api");
- extraData.put(ExtraData.ZUUL_ROUTE_DATA, routeData);
- return extraData;
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/config/AfterSalesSwaggerApiConfig.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/config/AfterSalesSwaggerApiConfig.java
deleted file mode 100644
index a5779ed..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/config/AfterSalesSwaggerApiConfig.java
+++ /dev/null
@@ -1,28 +0,0 @@
-package org.skyer.afterSales.config;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.context.annotation.Configuration;
-import springfox.documentation.service.Tag;
-import springfox.documentation.spring.web.plugins.Docket;
-
-/**
- *
- * Swagger Api 描述配置
- *
- *
- * @author qingsheng.chen 2018/7/30 星期一 14:26
- */
-@Configuration
-public class AfterSalesSwaggerApiConfig {
- public static final String USER_EXPRESSAGE_ACCOUNT_MANAGE = "User Expressage Account Manage";
- public static final String INSTALL_ORDERS = "Install Orders";
-
-
- @Autowired
- public AfterSalesSwaggerApiConfig(Docket docket) {
- docket.tags(
- new Tag(USER_EXPRESSAGE_ACCOUNT_MANAGE, "用户快递账号管理"),
- new Tag(INSTALL_ORDERS, "安装工单")
- );
- }
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/InstallOrderDTO.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/InstallOrderDTO.java
deleted file mode 100644
index 01957f0..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/InstallOrderDTO.java
+++ /dev/null
@@ -1,64 +0,0 @@
-package org.skyer.afterSales.domain.dto;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-/**
- * 物流商
- *
- * @author chenzz 2021-08-16 15:04:38
- */
-@ApiModel("物流商")
-@Data
-public class InstallOrderDTO {
-
- @ApiModelProperty(value = "安装工单单号", required = true)
- @NotBlank
- private String installOrderCode;
-
- @ApiModelProperty(value = "安装状态,1待安装,2取消安装,3安装完成", required = true)
- @NotNull
- private Integer status;
-
- @ApiModelProperty(value = "内部订单号", required = true)
- @NotBlank
- private String innerOrderNo;
-
- @ApiModelProperty(value = "外部第三方订单号", required = true)
- @NotBlank
- private String outerOrderNo;
-
- @ApiModelProperty(value = "出库通知单单号", required = true)
- @NotBlank
- private String outStockNoticeNo;
-
- @ApiModelProperty(value = "店铺名称", required = true)
- @NotBlank
- private String shopName;
-
- @ApiModelProperty(value = "渠道名称", required = true)
- @NotBlank
- private String channelName;
-
- @ApiModelProperty(value = "客户姓名", required = true)
- @NotBlank
- private String customerName;
-
- @ApiModelProperty(value = "客户联系方式", required = true)
- @NotBlank
- private String customerPhone;
-
- @ApiModelProperty(value = "客户联系地址", required = true)
- @NotBlank
- private String customerAddress;
-
- @ApiModelProperty(value = "删除状态")
- private Boolean deleteFlag;
-
- private Long objectVersionNumber;
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/LogisticsCompanyDTO.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/LogisticsCompanyDTO.java
deleted file mode 100644
index 2cc6a7b..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/LogisticsCompanyDTO.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.skyer.afterSales.domain.dto;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-import org.skyer.starter.keyencrypt.core.Encrypt;
-
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-/**
- * 物流商
- *
- * @author chenzz 2021-08-16 15:04:38
- */
-@ApiModel("物流商")
-@Data
-public class LogisticsCompanyDTO {
-
- @ApiModelProperty("主键id")
- private Long id;
-
- @ApiModelProperty(value = "物流商编码")
- private String code;
-
- @ApiModelProperty(value = "物流商名称", required = true)
- @NotBlank
- private String name;
-
- @ApiModelProperty(value = "启用标志", required = true)
- @NotNull
- private Boolean enableFlag;
-
- private Long objectVersionNumber;
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/MultiCodeDelDTO.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/MultiCodeDelDTO.java
deleted file mode 100644
index 13d8d73..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/MultiCodeDelDTO.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.skyer.afterSales.domain.dto;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.util.List;
-
-/**
- * @description
- * @Author chenzz
- * @create 2021/8/19 10:04 上午
- */
-@Data
-@ApiModel("要删除的编码")
-public class MultiCodeDelDTO {
-
- @ApiModelProperty("编码列表")
- private List codes;
-}
\ No newline at end of file
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/MultiDelDTO.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/MultiDelDTO.java
deleted file mode 100644
index 9a645fb..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/MultiDelDTO.java
+++ /dev/null
@@ -1,20 +0,0 @@
-package org.skyer.afterSales.domain.dto;
-
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-import java.util.List;
-
-/**
- * @description
- * @Author chenzz
- * @create 2021/8/19 10:04 上午
- */
-@Data
-@ApiModel("删除id")
-public class MultiDelDTO {
-
- @ApiModelProperty("主键id")
- private List ids;
-}
\ No newline at end of file
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/PageInstallOrderDTO.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/PageInstallOrderDTO.java
deleted file mode 100644
index ec9c65f..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/PageInstallOrderDTO.java
+++ /dev/null
@@ -1,18 +0,0 @@
-package org.skyer.afterSales.domain.dto;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@Data
-public class PageInstallOrderDTO {
-
- @ApiModelProperty(value = "安装单号,订单号等")
- private String orderNo;
-
- @ApiModelProperty(value = "店铺名称")
- private String shopName;
-
- @ApiModelProperty(value = "渠道名称")
- private String channelName;
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/PageLogisticsCompanyDTO.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/PageLogisticsCompanyDTO.java
deleted file mode 100644
index 356b06d..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/dto/PageLogisticsCompanyDTO.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.skyer.afterSales.domain.dto;
-
-import io.swagger.annotations.ApiModelProperty;
-import lombok.Data;
-
-@Data
-public class PageLogisticsCompanyDTO {
-
- @ApiModelProperty(value = "编码")
- private String code;
-
- @ApiModelProperty(value = "物流商名称")
- private String name;
-
- @ApiModelProperty(value = "启用标志")
- private Boolean enableFlag;
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/entity/InstallOrder.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/entity/InstallOrder.java
deleted file mode 100644
index 83592cd..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/entity/InstallOrder.java
+++ /dev/null
@@ -1,241 +0,0 @@
-package org.skyer.afterSales.domain.entity;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import org.skyer.mybatis.annotation.ModifyAudit;
-import org.skyer.mybatis.annotation.VersionAudit;
-import org.skyer.mybatis.domain.AuditDomain;
-
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-/**
- * 安装工单表
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-@ApiModel("安装工单表")
-@VersionAudit
-@ModifyAudit
-@JsonInclude(value = JsonInclude.Include.NON_NULL)
-@Table(name = "safs_install_order")
-public class InstallOrder extends AuditDomain {
-
- public static final String FIELD_ID = "id";
- public static final String FIELD_INSTALL_ORDER_NO = "installOrderNo";
- public static final String FIELD_STATUS = "status";
- public static final String FIELD_INNER_ORDER_NO = "innerOrderNo";
- public static final String FIELD_OUTER_ORDER_NO = "outerOrderNo";
- public static final String FIELD_OUT_STOCK_NOTICE_NO = "outStockNoticeNo";
- public static final String FIELD_SHOP_NAME = "shopName";
- public static final String FIELD_CHANNEL_NAME = "channelName";
- public static final String FIELD_CUSTOMER_NAME = "customerName";
- public static final String FIELD_CUSTOMER_PHONE = "customerPhone";
- public static final String FIELD_CUSTOMER_ADDRESS = "customerAddress";
- public static final String FIELD_DELETE_FLAG = "deleteFlag";
- public static final String FIELD_TENANT_ID = "tenantId";
-
- //
- // 业务方法(按public protected private顺序排列)
- // ------------------------------------------------------------------------------
-
- //
- // 数据库字段
- // ------------------------------------------------------------------------------
-
-
- @ApiModelProperty("主键id")
- @Id
- @GeneratedValue
- private Long id;
- @ApiModelProperty(value = "安装工单单号", required = true)
- @NotBlank
- private String installOrderNo;
- @ApiModelProperty(value = "安装状态,1待安装,2取消安装,3安装完成", required = true)
- @NotNull
- private Integer status;
- @ApiModelProperty(value = "内部订单号", required = true)
- @NotBlank
- private String innerOrderNo;
- @ApiModelProperty(value = "外部第三方订单号", required = true)
- @NotBlank
- private String outerOrderNo;
- @ApiModelProperty(value = "出库通知单单号", required = true)
- @NotBlank
- private String outStockNoticeNo;
- @ApiModelProperty(value = "店铺名称", required = true)
- @NotBlank
- private String shopName;
- @ApiModelProperty(value = "渠道名称", required = true)
- @NotBlank
- private String channelName;
- @ApiModelProperty(value = "客户姓名", required = true)
- @NotBlank
- private String customerName;
- @ApiModelProperty(value = "客户联系方式", required = true)
- @NotBlank
- private String customerPhone;
- @ApiModelProperty(value = "客户联系地址", required = true)
- @NotBlank
- private String customerAddress;
- @ApiModelProperty(value = "删除状态")
- private Boolean deleteFlag;
- @ApiModelProperty(value = "租户Id")
- private Long tenantId;
-
- //
- // 非数据库字段
- // ------------------------------------------------------------------------------
-
- //
- // getter/setter
- // ------------------------------------------------------------------------------
-
- /**
- * @return 主键id
- */
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- /**
- * @return 安装工单单号
- */
- public String getInstallOrderNo() {
- return installOrderNo;
- }
-
- public void setInstallOrderNo(String installOrderNo) {
- this.installOrderNo = installOrderNo;
- }
-
- /**
- * @return 安装状态, 1待安装, 2取消安装, 3安装完成
- */
- public Integer getStatus() {
- return status;
- }
-
- public void setStatus(Integer status) {
- this.status = status;
- }
-
- /**
- * @return 内部订单号
- */
- public String getInnerOrderNo() {
- return innerOrderNo;
- }
-
- public void setInnerOrderNo(String innerOrderNo) {
- this.innerOrderNo = innerOrderNo;
- }
-
- /**
- * @return 外部第三方订单号
- */
- public String getOuterOrderNo() {
- return outerOrderNo;
- }
-
- public void setOuterOrderNo(String outerOrderNo) {
- this.outerOrderNo = outerOrderNo;
- }
-
- /**
- * @return 出库通知单单号
- */
- public String getOutStockNoticeNo() {
- return outStockNoticeNo;
- }
-
- public void setOutStockNoticeNo(String outStockNoticeNo) {
- this.outStockNoticeNo = outStockNoticeNo;
- }
-
- /**
- * @return 店铺名称
- */
- public String getShopName() {
- return shopName;
- }
-
- public void setShopName(String shopName) {
- this.shopName = shopName;
- }
-
- /**
- * @return 渠道名称
- */
- public String getChannelName() {
- return channelName;
- }
-
- public void setChannelName(String channelName) {
- this.channelName = channelName;
- }
-
- /**
- * @return 客户姓名
- */
- public String getCustomerName() {
- return customerName;
- }
-
- public void setCustomerName(String customerName) {
- this.customerName = customerName;
- }
-
- /**
- * @return 客户联系方式
- */
- public String getCustomerPhone() {
- return customerPhone;
- }
-
- public void setCustomerPhone(String customerPhone) {
- this.customerPhone = customerPhone;
- }
-
- /**
- * @return 客户联系地址
- */
- public String getCustomerAddress() {
- return customerAddress;
- }
-
- public void setCustomerAddress(String customerAddress) {
- this.customerAddress = customerAddress;
- }
-
- /**
- * @return 删除状态
- */
- public Boolean getDeleteFlag() {
- return deleteFlag;
- }
-
- public void setDeleteFlag(Boolean deleteFlag) {
- this.deleteFlag = deleteFlag;
- }
-
- /**
- * @return 租户Id
- */
- public Long getTenantId() {
- return tenantId;
- }
-
- public void setTenantId(Long tenantId) {
- this.tenantId = tenantId;
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/entity/LogisticsCompany.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/entity/LogisticsCompany.java
deleted file mode 100644
index e09d49f..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/entity/LogisticsCompany.java
+++ /dev/null
@@ -1,136 +0,0 @@
-package org.skyer.afterSales.domain.entity;
-
-import com.fasterxml.jackson.annotation.JsonInclude;
-import io.swagger.annotations.ApiModel;
-import io.swagger.annotations.ApiModelProperty;
-import org.skyer.mybatis.annotation.ModifyAudit;
-import org.skyer.mybatis.annotation.VersionAudit;
-import org.skyer.mybatis.domain.AuditDomain;
-
-import javax.persistence.GeneratedValue;
-import javax.persistence.Id;
-import javax.persistence.Table;
-import javax.validation.constraints.NotBlank;
-import javax.validation.constraints.NotNull;
-
-/**
- * 物流商表
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-@ApiModel("物流商表")
-@VersionAudit
-@ModifyAudit
-@JsonInclude(value = JsonInclude.Include.NON_NULL)
-@Table(name = "lgit_logistics_company")
-public class LogisticsCompany extends AuditDomain {
-
- public static final String FIELD_ID = "id";
- public static final String FIELD_CODE = "code";
- public static final String FIELD_NAME = "name";
- public static final String FIELD_ENABLE_FLAG = "enableFlag";
- public static final String FIELD_DELETE_FLAG = "deleteFlag";
- public static final String FIELD_TENANT_ID = "tenantId";
-
- //
- // 业务方法(按public protected private顺序排列)
- // ------------------------------------------------------------------------------
-
- //
- // 数据库字段
- // ------------------------------------------------------------------------------
-
-
- @ApiModelProperty("id主键")
- @Id
- @GeneratedValue
- private Long id;
- @ApiModelProperty(value = "物流商编码", required = true)
- @NotBlank
- private String code;
- @ApiModelProperty(value = "物流商名称", required = true)
- @NotBlank
- private String name;
- @ApiModelProperty(value = "启用标志", required = true)
- @NotNull
- private Boolean enableFlag;
- @ApiModelProperty(value = "删除状态")
- private Boolean deleteFlag;
- @ApiModelProperty(value = "租户Id")
- private Long tenantId;
-
- //
- // 非数据库字段
- // ------------------------------------------------------------------------------
-
- //
- // getter/setter
- // ------------------------------------------------------------------------------
-
- /**
- * @return id主键
- */
- public Long getId() {
- return id;
- }
-
- public void setId(Long id) {
- this.id = id;
- }
-
- /**
- * @return 物流商编码
- */
- public String getCode() {
- return code;
- }
-
- public void setCode(String code) {
- this.code = code;
- }
-
- /**
- * @return 物流商名称
- */
- public String getName() {
- return name;
- }
-
- public void setName(String name) {
- this.name = name;
- }
-
- /**
- * @return 启用标志
- */
- public Boolean getEnableFlag() {
- return enableFlag;
- }
-
- public void setEnableFlag(Boolean enableFlag) {
- this.enableFlag = enableFlag;
- }
-
- /**
- * @return 删除状态
- */
- public Boolean getDeleteFlag() {
- return deleteFlag;
- }
-
- public void setDeleteFlag(Boolean deleteFlag) {
- this.deleteFlag = deleteFlag;
- }
-
- /**
- * @return 租户Id
- */
- public Long getTenantId() {
- return tenantId;
- }
-
- public void setTenantId(Long tenantId) {
- this.tenantId = tenantId;
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/repository/InstallOrderRepository.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/repository/InstallOrderRepository.java
deleted file mode 100644
index 24d7e4e..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/repository/InstallOrderRepository.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.skyer.afterSales.domain.repository;
-
-import org.skyer.mybatis.base.BaseRepository;
-import org.skyer.afterSales.domain.entity.InstallOrder;
-
-/**
- * 安装工单表资源库
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-public interface InstallOrderRepository extends BaseRepository {
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/repository/LogisticsCompanyRepository.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/repository/LogisticsCompanyRepository.java
deleted file mode 100644
index 2b7e68d..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/domain/repository/LogisticsCompanyRepository.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.skyer.afterSales.domain.repository;
-
-import org.skyer.mybatis.base.BaseRepository;
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-
-/**
- * 物流商表资源库
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-public interface LogisticsCompanyRepository extends BaseRepository {
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/annocations/DatasourceType.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/annocations/DatasourceType.java
deleted file mode 100644
index a561b62..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/annocations/DatasourceType.java
+++ /dev/null
@@ -1,23 +0,0 @@
-package org.skyer.afterSales.infra.annocations;
-
-import java.lang.annotation.*;
-
-/**
- * 数据源类型
- *
- * @author xiaoyu.zhao@hand-china.com
- */
-@Inherited
-@Target({ElementType.TYPE})
-@Retention(RetentionPolicy.RUNTIME)
-@Documented
-public @interface DatasourceType {
-
- /**
- * 数据源类型
- *
- * @return 类型
- */
- String[] value();
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/feign/UserDetailRemoteService.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/feign/UserDetailRemoteService.java
deleted file mode 100644
index 3ee8b7e..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/feign/UserDetailRemoteService.java
+++ /dev/null
@@ -1,36 +0,0 @@
-package org.skyer.afterSales.infra.feign;
-
-import org.skyer.common.SkyerService;
-import org.skyer.afterSales.infra.feign.impl.UserDetailRemoteServiceImpl;
-import org.springframework.cloud.openfeign.FeignClient;
-import org.springframework.http.ResponseEntity;
-import org.springframework.web.bind.annotation.PostMapping;
-import org.springframework.web.bind.annotation.RequestParam;
-
-import java.util.List;
-
-/**
- * 用户信息远程 Feign 调用
- *
- * @author qingsheng.chen@hand-china.com
- */
-@FeignClient(value = SkyerService.Oauth.NAME, fallback = UserDetailRemoteServiceImpl.class, path = "/oauth/api/user")
-public interface UserDetailRemoteService {
- /**
- * 存储用户附加信息
- *
- * @param accessToken 用户授权token
- * @param dataHierarchyCode 数据层级编码
- * @param dataHierarchyValue 数据层级值
- * @param dataHierarchyMeaning 数据层级值展示值
- * @param childrenDataHierarchyCodes 子数据层级编码
- * @return 存储用户附加信息
- */
- @PostMapping("/addition-info")
- ResponseEntity storeUserAdditionInfo(@RequestParam("access_token") String accessToken,
- @RequestParam("dataHierarchyCode") String dataHierarchyCode,
- @RequestParam("dataHierarchyValue") String dataHierarchyValue,
- @RequestParam("dataHierarchyMeaning") String dataHierarchyMeaning,
- @RequestParam(value = "childrenDataHierarchyCodes",
- required = false) List childrenDataHierarchyCodes);
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/feign/impl/UserDetailRemoteServiceImpl.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/feign/impl/UserDetailRemoteServiceImpl.java
deleted file mode 100644
index 4d3e9ba..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/feign/impl/UserDetailRemoteServiceImpl.java
+++ /dev/null
@@ -1,24 +0,0 @@
-package org.skyer.afterSales.infra.feign.impl;
-
-import org.skyer.core.exception.CommonException;
-import org.skyer.afterSales.infra.feign.UserDetailRemoteService;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Component;
-
-import java.util.List;
-
-/**
- * 用户信息远程调用失败回调
- *
- * @author qingsheng.chen@hand-china.com
- */
-@Component
-public class UserDetailRemoteServiceImpl implements UserDetailRemoteService {
-
- @Override
- public ResponseEntity storeUserAdditionInfo(String accessToken, String dataHierarchyCode, String dataHierarchyValue,
- String dataHierarchyMeaning, List childrenDataHierarchyCodes) {
- throw new CommonException(
- "Error store user addition info[" + dataHierarchyCode + ":" + dataHierarchyValue + "].");
- }
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/mapper/InstallOrderMapper.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/mapper/InstallOrderMapper.java
deleted file mode 100644
index ca482ea..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/mapper/InstallOrderMapper.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.skyer.afterSales.infra.mapper;
-
-import org.skyer.afterSales.domain.entity.InstallOrder;
-import org.skyer.mybatis.common.BaseMapper;
-
-/**
- * 安装工单表Mapper
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-public interface InstallOrderMapper extends BaseMapper {
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/mapper/LogisticsCompanyMapper.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/mapper/LogisticsCompanyMapper.java
deleted file mode 100644
index 60e13ec..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/mapper/LogisticsCompanyMapper.java
+++ /dev/null
@@ -1,13 +0,0 @@
-package org.skyer.afterSales.infra.mapper;
-
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-import org.skyer.mybatis.common.BaseMapper;
-
-/**
- * 物流商表Mapper
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-public interface LogisticsCompanyMapper extends BaseMapper {
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/properties/AfterSalesProperties.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/properties/AfterSalesProperties.java
deleted file mode 100644
index ae0d1c0..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/properties/AfterSalesProperties.java
+++ /dev/null
@@ -1,118 +0,0 @@
-package org.skyer.afterSales.infra.properties;
-
-import java.util.List;
-
-import org.springframework.boot.context.properties.ConfigurationProperties;
-
-/**
- * HPFM Properties
- *
- * @author gaokuo.dai@hand-china.com 2018年8月20日下午4:24:58
- */
-@ConfigurationProperties(prefix = AfterSalesProperties.PREFIX)
-public class AfterSalesProperties {
-
- public static final String PREFIX = "skyer.platform";
- private static final String HTTP_PROTOCOL_SUFFIX = "://";
-
- /**
- * 启动时是否刷新缓存,默认true
- */
- private Boolean initCache = true;
- /**
- * 平台Http协议,默认http
- */
- private String httpProtocol = "http";
- /**
- * 完整平台Http协议,默认http://
- */
- private String fullHttpProtocol = "http://";
-
- /**
- * @return 启动时是否刷新缓存,默认true
- */
- public Boolean getInitCache() {
- return initCache;
- }
-
- /**
- * 获取卡片使用的模板角色Code
- */
- private List roleTemplateCodes;
-
- private Encrypt encrypt = new Encrypt();
-
- public List getRoleTemplateCodes() {
- return roleTemplateCodes;
- }
-
- public void setRoleTemplateCodes(List roleTemplateCodes) {
- this.roleTemplateCodes = roleTemplateCodes;
- }
-
- public void setInitCache(Boolean initCache) {
- this.initCache = initCache;
- }
-
- /**
- * @return 平台Http协议,默认http
- */
- public String getHttpProtocol() {
- return httpProtocol;
- }
-
- public void setHttpProtocol(String httpProtocol) {
- this.httpProtocol = httpProtocol;
- this.fullHttpProtocol = httpProtocol + HTTP_PROTOCOL_SUFFIX;
- }
-
- /**
- * @return 完整平台Http协议,默认http://
- */
- public String getFullHttpProtocol() {
- return fullHttpProtocol;
- }
-
- public Encrypt getEncrypt() {
- return encrypt;
- }
-
- public void setEncrypt(Encrypt encrypt) {
- this.encrypt = encrypt;
- }
-
- /**
- * 加密私钥和公钥
- */
- public static class Encrypt {
- /**
- * 密码加密公钥
- */
- private String publicKey =
- "MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIPdTZ1b9Q13Y2YmZ4mjQnFpypCqhV6rjGgsTQMYqC0eVu/je3/L98/4/j3lNePWqwHgCDD0mxISFm44nDKfPbcCAwEAAQ==";
- /**
- * 密码加密私钥
- */
- private String privateKey =
- "MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAg91NnVv1DXdjZiZniaNCcWnKkKqFXquMaCxNAxioLR5W7+N7f8v3z/j+PeU149arAeAIMPSbEhIWbjicMp89twIDAQABAkAYAgbLi56GISJ7yqo3KP5D39r9k85MejdKECbFVYvpCsLG51IrwtVcdGJTExmkzIuOWnwqRAYUjpQnVvPvLzZhAiEA/Dyk4j+XZtC7NVxrXjn+PHG0vWZ8x14G5sBL6RfgzEsCIQCF1O0383YF0BbDUGkBoaVGmEc3H0D7FQF5L4gMe5EYxQIgLljOSyw4G5I68+EZcWTijCSweyS7xL5IMlofGKNkkOUCIC+hqdAZEW9eMUvQaZ8QBf/LIMWIlRsHzd9wwE4ZCHo1AiEAqsUlDIIfPOrjQfbeYVWSD+Ac9PzMiFfH9H/WMuaWRtw=";
-
-
- public String getPublicKey() {
- return publicKey;
- }
-
- public void setPublicKey(String publicKey) {
- this.publicKey = publicKey;
- }
-
- public String getPrivateKey() {
- return privateKey;
- }
-
- public void setPrivateKey(String privateKey) {
- this.privateKey = privateKey;
- }
-
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/properties/DataHierarchyProperties.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/properties/DataHierarchyProperties.java
deleted file mode 100644
index 81a0355..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/properties/DataHierarchyProperties.java
+++ /dev/null
@@ -1,19 +0,0 @@
-package org.skyer.afterSales.infra.properties;
-
-import org.springframework.boot.context.properties.ConfigurationProperties;
-
-/**
- * @author yuelinsoft
- */
-@ConfigurationProperties(prefix = "skyer.data-hierarchy.display")
-public class DataHierarchyProperties {
- private int maxSelectCount = 3;
-
- public int getMaxSelectCount() {
- return maxSelectCount;
- }
-
- public void setMaxSelectCount(int maxSelectCount) {
- this.maxSelectCount = maxSelectCount;
- }
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/remote/api/RemoteCustomizeService.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/remote/api/RemoteCustomizeService.java
deleted file mode 100644
index d11ea4a..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/remote/api/RemoteCustomizeService.java
+++ /dev/null
@@ -1,39 +0,0 @@
-package org.skyer.afterSales.infra.remote.api;
-
-import java.util.List;
-
-import org.skyer.boot.api.customize.commons.vo.MethodMetaData;
-
-/**
- * 客制化业务方法调用
- *
- * @author bojiangzhou 2019/07/04
- */
-public interface RemoteCustomizeService {
-
- /**
- * 获取服务的方法
- *
- * @param serviceName 服务编码
- * @param packageNames 包名
- * @return List
- */
- List fetchServiceMethods(String serviceName, String packageNames);
-
- /**
- * 应用客制化规则
- *
- * @param serviceNames 服务名
- * @param ruleCodes 规则规则
- */
- void applyCustomizeRule(List serviceNames, List ruleCodes);
-
- /**
- * 应用客制化规则
- *
- * @param serviceName 服务名
- * @param ruleCodes 规则规则
- */
- void applyCustomizeRule(String serviceName, List ruleCodes);
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/remote/api/impl/RemoteCustomizeServiceImpl.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/remote/api/impl/RemoteCustomizeServiceImpl.java
deleted file mode 100644
index f432d86..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/remote/api/impl/RemoteCustomizeServiceImpl.java
+++ /dev/null
@@ -1,141 +0,0 @@
-package org.skyer.afterSales.infra.remote.api.impl;
-
-import org.apache.commons.collections4.CollectionUtils;
-import org.skyer.afterSales.infra.properties.AfterSalesProperties;
-import org.skyer.afterSales.infra.remote.api.RemoteCustomizeService;
-import org.skyer.boot.api.customize.commons.vo.MethodMetaData;
-import org.skyer.core.base.BaseConstants;
-import org.skyer.core.exception.CommonException;
-import org.skyer.core.exception.ExceptionResponse;
-import org.skyer.core.net.RequestHeaderCopyInterceptor;
-import org.slf4j.Logger;
-import org.slf4j.LoggerFactory;
-import org.springframework.cloud.client.ServiceInstance;
-import org.springframework.cloud.client.discovery.DiscoveryClient;
-import org.springframework.cloud.client.loadbalancer.LoadBalanced;
-import org.springframework.core.ParameterizedTypeReference;
-import org.springframework.http.HttpMethod;
-import org.springframework.http.ResponseEntity;
-import org.springframework.stereotype.Component;
-import org.springframework.web.client.RestClientException;
-import org.springframework.web.client.RestTemplate;
-
-import java.util.Collections;
-import java.util.List;
-
-/**
- * 远程 RemoteCustomizeService 方法
- *
- * @author bojiangzhou 2019/07/04
- */
-@Component
-public class RemoteCustomizeServiceImpl implements RemoteCustomizeService {
-
- private static final Logger LOGGER = LoggerFactory.getLogger(RemoteCustomizeServiceImpl.class);
-
- @LoadBalanced
- private final RestTemplate balanceRestTemplate;
- private final AfterSalesProperties afterSalesProperties;
- private final DiscoveryClient discoveryClient;
-
- private final RestTemplate normalRestTemplate;
-
- private static final String SCAN_URI = "/v1/customize/scan";
- private static final String APPLY_URI = "/v1/customize/apply";
-
- private ParameterizedTypeReference> METHOD_TYPE =
- new ParameterizedTypeReference>() {
- };
-
- public RemoteCustomizeServiceImpl(RestTemplate restTemplate, AfterSalesProperties afterSalesProperties,
- DiscoveryClient discoveryClient) {
- this.balanceRestTemplate = restTemplate;
- this.afterSalesProperties = afterSalesProperties;
- this.discoveryClient = discoveryClient;
-
- normalRestTemplate = new RestTemplate();
- normalRestTemplate.setInterceptors(Collections.singletonList(new RequestHeaderCopyInterceptor()));
- }
-
- @Override
- public List fetchServiceMethods(String serviceName, String packageNames) {
- String[] names = packageNames.split(BaseConstants.Symbol.COMMA);
- StringBuilder builder = new StringBuilder();
- for (String name : names) {
- builder.append("&packageNames=").append(name);
- }
- String params = builder.toString().replaceFirst("&", "?");
- String url = afterSalesProperties.getFullHttpProtocol() + serviceName + SCAN_URI + params;
- LOGGER.debug("fetch service class methods, service = [{}], url = [{}]", serviceName, url);
- List points;
- try {
- ResponseEntity> responseEntity =
- balanceRestTemplate.exchange(url, HttpMethod.GET, null, METHOD_TYPE);
- if (responseEntity.getStatusCode().is2xxSuccessful()) {
- points = responseEntity.getBody();
- } else {
- throw new CommonException("hpfm.warn.fetchMethods.failure", responseEntity.getStatusCodeValue());
- }
- } catch (RestClientException e) {
- LOGGER.error("fetch service class methods exception, service = {}, package = {}, ex={}", serviceName,
- packageNames, e.getMessage());
- throw new CommonException("hpfm.warn.fetchMethods.exception", e.getMessage());
- } catch (Exception e) {
- LOGGER.error("fetch service class methods error, service = {}, package = {}, ex = {}", serviceName,
- packageNames, e.getMessage());
- throw new CommonException("hpfm.warn.fetchServiceException", serviceName);
- }
-
- if (LOGGER.isDebugEnabled() && CollectionUtils.isNotEmpty(points)) {
- for (MethodMetaData point : points) {
- LOGGER.debug("point = {}", point);
- }
- }
-
- return points;
- }
-
- @Override
- public void applyCustomizeRule(List serviceNames, List ruleCodes) {
- for (String serviceName : serviceNames) {
- applyCustomizeRule(serviceName, ruleCodes);
- }
- }
-
- @Override
- public void applyCustomizeRule(String serviceName, List ruleCodes) {
- StringBuilder builder = new StringBuilder();
- for (String ruleCode : ruleCodes) {
- builder.append("&ruleCodes=").append(ruleCode);
- }
- String params = builder.toString().replaceFirst("&", "?");
-
- List instances = discoveryClient.getInstances(serviceName);
-
- if (CollectionUtils.isEmpty(instances)) {
- throw new CommonException("hpfm.warn.customize.instanceNotRunning", serviceName);
- }
-
- for (ServiceInstance instance : instances) {
- String url = instance.getUri().toString() + APPLY_URI + params;
- LOGGER.debug("apply customize rule, service = [{}], url = [{}]", serviceName, url);
-
- try {
- ResponseEntity responseEntity =
- normalRestTemplate.getForEntity(url, ExceptionResponse.class);
- if (!responseEntity.getStatusCode().is2xxSuccessful()) {
- if (responseEntity.getBody() != null) {
- throw new CommonException("hpfm.warn.customizeRuleFailure", serviceName,
- responseEntity.getBody().getMessage());
- } else {
- throw new CommonException("hpfm.warn.callServiceFailure", serviceName);
- }
- }
- } catch (Exception e) {
- throw new CommonException("hpfm.warn.callServiceFailure", serviceName);
- }
-
- }
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/repository/impl/InstallOrderRepositoryImpl.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/repository/impl/InstallOrderRepositoryImpl.java
deleted file mode 100644
index 615b5a9..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/repository/impl/InstallOrderRepositoryImpl.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.skyer.afterSales.infra.repository.impl;
-
-import org.skyer.mybatis.base.impl.BaseRepositoryImpl;
-import org.skyer.afterSales.domain.entity.InstallOrder;
-import org.skyer.afterSales.domain.repository.InstallOrderRepository;
-import org.springframework.stereotype.Component;
-
-/**
- * 安装工单表 资源库实现
- *
- * @author chenzz 2021-09-13 14:46:41
- */
-@Component
-public class InstallOrderRepositoryImpl extends BaseRepositoryImpl implements InstallOrderRepository {
-
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/repository/impl/LogisticsCompanyRepositoryImpl.java b/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/repository/impl/LogisticsCompanyRepositoryImpl.java
deleted file mode 100644
index dfadbec..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/afterSales/infra/repository/impl/LogisticsCompanyRepositoryImpl.java
+++ /dev/null
@@ -1,17 +0,0 @@
-package org.skyer.afterSales.infra.repository.impl;
-
-import org.skyer.mybatis.base.impl.BaseRepositoryImpl;
-import org.skyer.afterSales.domain.entity.LogisticsCompany;
-import org.skyer.afterSales.domain.repository.LogisticsCompanyRepository;
-import org.springframework.stereotype.Component;
-
-/**
- * 物流商表 资源库实现
- *
- * @author chenzz 2021-09-13 10:39:10
- */
-@Component
-public class LogisticsCompanyRepositoryImpl extends BaseRepositoryImpl implements LogisticsCompanyRepository {
-
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/autoconfigure/afterSales/AfterSalesAutoConfiguration.java b/skyer-after-sales/src/main/java/org/skyer/autoconfigure/afterSales/AfterSalesAutoConfiguration.java
deleted file mode 100644
index a557340..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/autoconfigure/afterSales/AfterSalesAutoConfiguration.java
+++ /dev/null
@@ -1,53 +0,0 @@
-package org.skyer.autoconfigure.afterSales;
-
-import com.google.common.util.concurrent.ThreadFactoryBuilder;
-import org.skyer.afterSales.infra.properties.AfterSalesProperties;
-import org.skyer.afterSales.infra.properties.DataHierarchyProperties;
-import org.skyer.core.jackson.annotation.EnableObjectMapper;
-import org.skyer.core.util.CommonExecutor;
-import org.skyer.resource.annoation.EnableSkyerResourceServer;
-import org.springframework.beans.factory.annotation.Qualifier;
-import org.springframework.boot.context.properties.EnableConfigurationProperties;
-import org.springframework.cloud.openfeign.EnableFeignClients;
-import org.springframework.context.annotation.Bean;
-import org.springframework.context.annotation.ComponentScan;
-import org.springframework.context.annotation.EnableAspectJAutoProxy;
-import org.springframework.scheduling.annotation.EnableAsync;
-
-import java.util.concurrent.LinkedBlockingQueue;
-import java.util.concurrent.ThreadPoolExecutor;
-import java.util.concurrent.TimeUnit;
-
-/**
- * @author bojiangzhou 2018/10/25
- */
-@ComponentScan(value = {"org.hippius.wd", "org.skyer.afterSales.api", "org.skyer.afterSales.app",
- "org.skyer.afterSales.config", "org.skyer.afterSales.domain", "org.skyer.afterSales.infra"})
-@EnableFeignClients({"org.skyer.afterSales", "org.skyer", "org.skyer.plugin"})
-@EnableAspectJAutoProxy(proxyTargetClass = true, exposeProxy = true)
-@EnableSkyerResourceServer
-@EnableObjectMapper
-@EnableAsync
-@EnableConfigurationProperties({AfterSalesProperties.class, DataHierarchyProperties.class})
-public class AfterSalesAutoConfiguration {
-
- /**
- * 通用线程池
- */
- @Bean
- @Qualifier("commonAsyncTaskExecutor")
- public ThreadPoolExecutor commonAsyncTaskExecutor() {
- int coreSize = CommonExecutor.getCpuProcessors();
- int maxSize = coreSize * 8;
- ThreadPoolExecutor executor =
- new ThreadPoolExecutor(coreSize, maxSize, 30, TimeUnit.MINUTES, new LinkedBlockingQueue<>(16),
- new ThreadFactoryBuilder().setNameFormat("CommonExecutor-%d").build(),
- new ThreadPoolExecutor.CallerRunsPolicy());
-
- CommonExecutor.displayThreadPoolStatus(executor, "HpfmCommonExecutor");
- CommonExecutor.hookShutdownThreadPool(executor, "HpfmCommonExecutor");
-
- return executor;
- }
-
-}
diff --git a/skyer-after-sales/src/main/java/org/skyer/autoconfigure/afterSales/EnableSkyerAfterSales.java b/skyer-after-sales/src/main/java/org/skyer/autoconfigure/afterSales/EnableSkyerAfterSales.java
deleted file mode 100644
index af9a4dd..0000000
--- a/skyer-after-sales/src/main/java/org/skyer/autoconfigure/afterSales/EnableSkyerAfterSales.java
+++ /dev/null
@@ -1,15 +0,0 @@
-package org.skyer.autoconfigure.afterSales;
-
-import org.springframework.context.annotation.Import;
-
-import java.lang.annotation.*;
-
-/**
- * @author bojiangzhou 2018/10/25
- */
-@Target(ElementType.TYPE)
-@Retention(RetentionPolicy.RUNTIME)
-@Documented
-@Import(AfterSalesAutoConfiguration.class)
-public @interface EnableSkyerAfterSales {
-}
diff --git a/skyer-after-sales/src/main/resources/application.yml b/skyer-after-sales/src/main/resources/application.yml
deleted file mode 100644
index 3abdeef..0000000
--- a/skyer-after-sales/src/main/resources/application.yml
+++ /dev/null
@@ -1,144 +0,0 @@
-spring:
- application:
- name: skyer-after-sales
- datasource:
- url: ${SPRING_DATASOURCE_URL:jdbc:mysql://192.168.124.199:3306/skyer_after_sales?useUnicode=true&characterEncoding=utf-8&useSSL=false}
- username: ${SPRING_DATASOURCE_USERNAME:root}
- password: ${SPRING_DATASOURCE_PASSWORD:123456}
- hikari:
- # 连接池最小空闲连接数
- minimum-idle: ${SPRING_DATASOURCE_MINIMUM_IDLE:20}
- # 连接池允许的最大连接数
- maximum-pool-size: ${SPRING_DATASOURCE_MAXIMUM_POOL_SIZE:200}
- # 等待连接池分配连接的最大时长(毫秒)
- connection-timeout: ${SPRING_DATASOURCE_CONNECTION_TIMEOUT:30000}
- redis:
- host: ${SPRING_REDIS_HOST:192.168.124.199}
- port: ${SPRING_REDIS_PORT:30379}
- database: ${SPRING_REDIS_DATABASE:1}
- lettuce:
- pool:
- # 资源池中最大连接数
- # 默认8,-1表示无限制;可根据服务并发redis情况及服务端的支持上限调整
- max-active: ${SPRING_REDIS_POOL_MAX_ACTIVE:50}
- # 资源池运行最大空闲的连接数
- # 默认8,-1表示无限制;可根据服务并发redis情况及服务端的支持上限调整,一般建议和max-active保持一致,避免资源伸缩带来的开销
- max-idle: ${SPRING_REDIS_POOL_MAX_IDLE:50}
- # 当资源池连接用尽后,调用者的最大等待时间(单位为毫秒)
- # 默认 -1 表示永不超时,设置5秒
- max-wait: ${SPRING_REDIS_POOL_MAX_WAIT:5000}
-
-server:
- undertow:
- # 设置IO线程数, 它主要执行非阻塞的任务,它们会负责多个连接
- # 默认值为8,建议设置每个CPU核心一个线程
- io-threads: ${SERVER_UNDERTOW_IO_THREADS:4}
- # 阻塞任务线程池, 当执行类似servlet请求阻塞操作, undertow会从这个线程池中取得线程
- # 默认等于 io-threads*8,它的值设置取决于系统的负载,可适当调大该值
- worker-threads: ${SERVER_UNDERTOW_WORKER_THREADS:128}
- # 每块buffer的空间大小,越小空间被利用越充分
- # 不要设置太大,以免影响其他应用,合适即可
- buffer-size: ${SERVER_UNDERTOW_BUFFER_SIZE:1024}
- # 是否分配的直接内存(NIO直接分配的堆外内存)
- # 默认false
- direct-buffers: true
- # HTTP POST请求最大的大小
- # 默认0,无限制,可设置10M
- max-http-post-size: 10485760
- allow-unescaped-characters-in-url: true
-
-feign:
- hystrix:
- enabled: true
-
-hystrix:
- threadpool:
- default:
- # 执行命令线程池的核心线程数,也是命令执行的最大并发量
- # 默认10
- coreSize: 1000
- # 最大执行线程数
- maximumSize: 1000
- command:
- default:
- execution:
- isolation:
- thread:
- # HystrixCommand 执行的超时时间,超时后进入降级处理逻辑。一个接口,理论的最佳响应速度应该在200ms以内,或者慢点的接口就几百毫秒。
- # 默认 1000 毫秒,最高设置 2000足矣。如果超时,首先看能不能优化接口相关业务、SQL查询等,不要盲目加大超时时间,否则会导致线程堆积过多,hystrix 线程池卡死,最终服务不可用。
- timeoutInMilliseconds: ${HYSTRIX_COMMAND_TIMEOUT_IN_MILLISECONDS:40000}
-
-ribbon:
- # 客户端读取超时时间,超时时间要小于Hystrix的超时时间,否则重试机制就无意义了
- ReadTimeout: ${RIBBON_READ_TIMEOUT:30000}
- # 客户端连接超时时间
- ConnectTimeout: ${RIBBON_CONNECT_TIMEOUT:3000}
- # 访问实例失败(超时),允许自动重试,设置重试次数,失败后会更换实例访问,请一定确保接口的幂等性,否则重试可能导致数据异常。
- OkToRetryOnAllOperations: true
- MaxAutoRetries: 1
- MaxAutoRetriesNextServer: 1
-
-mybatis:
- mapperLocations: classpath*:/mapper/*.xml
- configuration:
- mapUnderscoreToCamelCase: true
- key-generator: snowflake
-
-skyer:
- lov:
- # 是否开启SQL类型LOV
- sql:
- enabled: ${SKYER_LOV_SQL_ENABLED:true}
- # 是否开启LOV值翻译
- value:
- enabled: ${SKYER_LOV_VALUE_ENABLED:true}
- platform:
- # 是否启动初始化缓存
- init-cache: ${SKYER_PLATFORM_INIT_CACHE:true}
- # 平台HTTP协议
- http-protocol: ${SKYER_PLATFORM_HTTP_PROTOCOL:http}
- # 角色模板编码
- role-template-codes:
- - ${SKYER_SALES_TEMPLATE_CODE:role/organization/default/template/sales}
- - ${SKYER_EXPERTS_TEMPLATE_CODE:role/organization/default/template/experts}
- regist-entity:
- # 是否开启实体类的注册
- enable: ${SKYER_REGIST_ENTITY_ENABLE:false}
- # 公钥和私钥
- encrypt:
- public-key: ${SKYER_OAUTH_PASSWORD_PUBLIC_KEY:MFwwDQYJKoZIhvcNAQEBBQADSwAwSAJBAIPdTZ1b9Q13Y2YmZ4mjQnFpypCqhV6rjGgsTQMYqC0eVu/je3/L98/4/j3lNePWqwHgCDD0mxISFm44nDKfPbcCAwEAAQ==}
- private-key: ${SKYER_OAUTH_PASSWORD_PRIVATE_KEY:MIIBVAIBADANBgkqhkiG9w0BAQEFAASCAT4wggE6AgEAAkEAg91NnVv1DXdjZiZniaNCcWnKkKqFXquMaCxNAxioLR5W7+N7f8v3z/j+PeU149arAeAIMPSbEhIWbjicMp89twIDAQABAkAYAgbLi56GISJ7yqo3KP5D39r9k85MejdKECbFVYvpCsLG51IrwtVcdGJTExmkzIuOWnwqRAYUjpQnVvPvLzZhAiEA/Dyk4j+XZtC7NVxrXjn+PHG0vWZ8x14G5sBL6RfgzEsCIQCF1O0383YF0BbDUGkBoaVGmEc3H0D7FQF5L4gMe5EYxQIgLljOSyw4G5I68+EZcWTijCSweyS7xL5IMlofGKNkkOUCIC+hqdAZEW9eMUvQaZ8QBf/LIMWIlRsHzd9wwE4ZCHo1AiEAqsUlDIIfPOrjQfbeYVWSD+Ac9PzMiFfH9H/WMuaWRtw=}
- data:
- permission:
- db-owner: ${SKYER_DB_OWNER:}
- change:
- enable: true
- audit:
- operation:
- # 全局开关,默认 false
- enable: true
- data:
- # 是否启用数据变更监控功能
- enable: true
- scheduler:
- executor-code: LGIT_EXECUTOR
- export:
- enable-async: true
- api-customize:
- enable-agent: false
- resource:
- # 匹配的资源才会解析JwtToken便于得到UserDetails
- pattern: ${SKYER_RESOURCE_PATTERN:/v1/*,/skyer/*,/safs/v1/*,/safs/skyer/*}
- field-permission:
- enable: true
- import:
- transaction-control: true
- batch-size: 3000
-
-logging:
- level:
- org.skyer: ${LOG_LEVEL:info}
- org.skyer.mybatis: ${LOG_LEVEL:info}
- org.skyer.platform: ${LOG_LEVEL:info}
- org.skyer.starter: ${LOG_LEVEL:info}
- org.skyer.plugin.platform: ${LOG_LEVEL:info}
\ No newline at end of file
diff --git a/skyer-after-sales/src/main/resources/banner.txt b/skyer-after-sales/src/main/resources/banner.txt
deleted file mode 100644
index 786f537..0000000
--- a/skyer-after-sales/src/main/resources/banner.txt
+++ /dev/null
@@ -1,10 +0,0 @@
-
- █████████ █████ ████ █████ █████ ██████████ ███████████
- ███░░░░░███░░███ ███░ ░░███ ░░███ ░░███░░░░░█░░███░░░░░███
-░███ ░░░ ░███ ███ ░░███ ███ ░███ █ ░ ░███ ░███
-░░█████████ ░███████ ░░█████ ░██████ ░██████████
- ░░░░░░░░███ ░███░░███ ░░███ ░███░░█ ░███░░░░░███
- ███ ░███ ░███ ░░███ ░███ ░███ ░ █ ░███ ░███
-░░█████████ █████ ░░████ █████ ██████████ █████ █████
- ░░░░░░░░░ ░░░░░ ░░░░ ░░░░░ ░░░░░░░░░░ ░░░░░ ░░░░░
-:: ${spring.application.name} :: (v${eureka.instance.metadata-map.VERSION}.RELEASE)
diff --git a/skyer-after-sales/src/main/resources/bootstrap.yml b/skyer-after-sales/src/main/resources/bootstrap.yml
deleted file mode 100644
index 507b79d..0000000
--- a/skyer-after-sales/src/main/resources/bootstrap.yml
+++ /dev/null
@@ -1,45 +0,0 @@
-server:
- port: 8420
-management:
- server:
- port: 8421
- endpoints:
- web:
- exposure:
- include: '*'
-
-spring:
- profiles:
- active: ${SPRING_PROFILES_ACTIVE:dev}
- cloud:
- config:
- fail-fast: false
- # 是否启用配置中心
- enabled: ${SPRING_CLOUD_CONFIG_ENABLED:false}
- # 配置中心地址
- uri: ${SPRING_CLOUD_CONFIG_URI:http://dev.skyer.org:8010}
- retry:
- # 最大重试次数
- maxAttempts: 6
- multiplier: 1.1
- # 重试间隔时间
- maxInterval: 2000
- # 标签
- label: ${SPRING_CLOUD_CONFIG_LABEL:}
-
-eureka:
- instance:
- # 以IP注册到注册中心
- preferIpAddress: ${EUREKA_INSTANCE_PREFER_IP_ADDRESS:true}
- leaseRenewalIntervalInSeconds: 10
- leaseExpirationDurationInSeconds: 30
- # 服务的一些元数据信息k
- metadata-map:
- VERSION: 1.0.0
- client:
- serviceUrl:
- # 注册中心地址
- defaultZone: ${EUREKA_DEFAULT_ZONE:http://eureka.skyer.org/eureka}
- registryFetchIntervalSeconds: 10
- disable-delta: true
-
diff --git a/skyer-after-sales/src/main/resources/mapper/InstallOrderMapper.xml b/skyer-after-sales/src/main/resources/mapper/InstallOrderMapper.xml
deleted file mode 100644
index 6477258..0000000
--- a/skyer-after-sales/src/main/resources/mapper/InstallOrderMapper.xml
+++ /dev/null
@@ -1,25 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/skyer-after-sales/src/main/resources/mapper/LogisticsCompanyMapper.xml b/skyer-after-sales/src/main/resources/mapper/LogisticsCompanyMapper.xml
deleted file mode 100644
index 8987041..0000000
--- a/skyer-after-sales/src/main/resources/mapper/LogisticsCompanyMapper.xml
+++ /dev/null
@@ -1,18 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/skyer-after-sales/src/main/resources/messages/messages_hpfm_en_US.properties b/skyer-after-sales/src/main/resources/messages/messages_hpfm_en_US.properties
deleted file mode 100644
index e8f02ac..0000000
--- a/skyer-after-sales/src/main/resources/messages/messages_hpfm_en_US.properties
+++ /dev/null
@@ -1,182 +0,0 @@
-# basic
-hpfm.info.predefined=Predefined
-hpfm.info.customize=Customize
-hpfm.error.no_pk=lov query error: no primary key or code
-hpfm.error.data_repeat=lov query error: multiple record in database
-hpfm.error.date.start_later_end=start date active {0} is later than end date active {1}
-hpfm.error.jdbc_connection=JDBC Cannot Establish a Connection
-error.data_invalid=Data invalid
-error.not_found=Resource not found
-error.error=There is a mistake in the program. Please contact the administrator
-error.optimistic_lock=data not exists or version not match
-error.data_exists=data already exist, please do not repeat the submission
-error.data_not_exists=data not exists
-# Event
-hpfm.error.event.code_exists=event code exists
-hpfm.error.event.notMatch=event rule data not match
-hpfm.error.event.not_match=The tenant contained in the incoming event information does not match the current tenant and cannot be updated or deleted!
-# lov
-hpfm.error.lov.invalid_route_name="invalid route name"
-# StaticText
-hpfm.error.text_code.repeat_date=the same code has repeated date.
-hpfm.error.text_code.not_exists=text code[{0}] not exists.
-hpfm.error.text_code_lang.not_exists=text code[{0}] with language[{1}] not exists.
-hpfm.error.permission_rule_cited=The permission rule has been referenced and is forbidden to delete.
-hpfm.error.code_rule.not_found=Encoding rules are not enabled
-hpfm.error.blocking_rule.exist=A blocking rule exists for the database prefix type
-# tenant
-hpfm.error.tenant.name_repeat=Tenant name repeat!
-hpfm.error.send_saga_message.fail=saga send message fail.
-#dbIde
-hpfm.error.can_not_insert=the database cannot be insert
-hpfm.error.can_not_update=the database cannot be update
-hpfm.error.can_not_delete=the database cannot be delete
-hpfm.error.database.can_not_alter=public database cannot be alter
-hpfm.error.database.can_not_drop=public database cannot be drop
-hpfm.error.database.can_not_create_index=public database cannot be create index
-hpfm.error.operation_without_permission=there are no new table permissions in this service
-hpfm.error.table.not_exist=table not exist;
-hpfm.error.field.not_exist=field not exist;
-#rule_script
-hpfm.error.rule_script.get_rule_failed=Get rule script configuration failed
-hpfm.error.rule_script.run_groovy_failed=Groovy script failed to run
-hpfm.error.rule_script.service_not_found=Service not found
-hpfm.error.rule.script.check=Rule Script Check Error
-#DashboardLayout
-hpfm.error.data.empty=Data is empty
-hpfm.error.code_repeat=The code {0} already exists, please recreate it
-hpfm.error.role_card.exists=The card exists under the current role. Please do not add it again
-hpfm.error.saga.start=startSaga failed and fallback.
-hpfm.error.lov_tenant.not_match=The incoming tenant does not match the current lov tenant.
-hpfm.error.card_tenant.repeat=The same card cannot continuously assign the same tenant, please confirm the information of assigned tenant is correct.
-hpfm.error.card_clause.repeat=You cannot assign more than one card under the same item. Please make sure that the card information is not repeated!
-hpfm.error.prompt_tenant.not_match=The incoming tenant does not match the current prompt tenant.
-hpfm.error.rule_script.not_match=The incoming tenant does not match the current ruleScript tenant.
-hpfm.error.permission_rule.not_match=The incoming tenant does not match the current permissionRule tenant.
-hpfm.error.date.irregularity=The start time must not be greater than the end time.
-hpfm.error.data.disabled=This data is in the disabled state. Please enable this data before operation.
-# hr
-error.hr.portion.multiple.supervisor.exceptions=department can have at most one supervisor position
-error.hr.unit.parent_disabled=parent is disabled
-error.hr.unit.multiple.supervisor.exceptions=only one supervisor unit is allowed in same level
-error.hr.unit.top_type_error=top unit must be company or group
-error.position.not.allowed=Department or parent position is not enabled
-error.data.source.not.allowed=Data source is not allowed : {0}
-error.child.can.not.be.parent=The lower level post is not allowed to be set as the superior position of the superior position.
-error.employee.not.exist=Employee does not exist
-error.position.not.exist=Position does not exist
-error.user_not_exists.or.already_linked=Sub-account does not exist or has associated employees
-error.parent_unit.not.exist=The parent unit does not exist
-error.department.missing.parent_unit=The department has no parent unit
-error.department.missing.or.not.department=Department does not exist or unit type is not department
-error.parent_position.not.exist=The parent position does not exist
-error.department.or.company.not.enabled=Department or company is not activated
-# mdm
-error.multiple.code=Code repetition
-error.multiple.name=Name repetition
-error.parent.disable=Parent is not enabled or parent does not allow operation
-calendar.holiday.overlap=calendar holiday is overlapped
-startDate.bigger.endDate=Start Date is bigger than end Date
-error.industry.category.name.repeat=Industry or category names under the same level are not allowed to be duplicated
-hpfm.error.country.calendar.repeat=A country can only maintain one calendar!
-hpfm.error.static_text.not_match=The incoming static text message contains a tenant that does not match the current tenant, so the data cannot be updated!
-error.period.continue=Period is not continue
-# flex
-hpfm.flex.model.delete=The model has been used and cannot be deleted!
-hpfm.flex.model_field.delete=The model field has been used and cannot be deleted!
-hpfm.flex.rule_detail.delete=The rule detail has been used and cannot be deleted!
-hpfm.flex.model_field.init=Initialization failed, please check the configuration!
-# UiDimensionTemplate
-dimension.template.not.exist=Dimension Template Not Exist
-# UiField
-dimension.template.or.field.not.exist=Dimension Template Or Field Not Exist
-can.not.update=Can Not Update
-hpfm.lov.tenant.repeat=The code for the next value set under the same tenant is not repeatable. Please confirm whether the value set already exists under the current tenant
-hpfm.lov.site.copy_fail=This value set already exists on the current platform and does not need to be copied again
-hpfm.lov_view.tenant.repeat=The code for the value set view under the same tenant is not repeatable. Please confirm whether the value set view already exists under the current tenant
-hpfm.lov_view.site.copy_fail=This value set view already exists on the current platform and does not need to be copied again
-# error
-himp.error.readFile=Failed to read file
-himp.error.excel.data=Excel is empty, please fill in the import data
-himp.error.import.data=Import method is not defined
-himp.error.template.match=Template and EXCEL do not match, please download the latest template
-himp.error.feign.template=Feign call failed
-himp.error.get.contract.attachment=Failed to get template information
-himp.error.local_template.exists=Template already exists
-himp.error.local_template.not_exists=Template not exists
-himp.error.uploading=Data is being uploaded
-himp.error.checking=Data is being verified
-himp.error.importing=Data is being imported
-himp.error.openSheet=Error while open sheet {0}
-himp.error.dataFormat=Date {0} does not match the format {1}
-himp.error.formula=Formula {0} is not supported at this time
-himp.error.cell=Error reading a cell
-himp.error.template.page.not_exists=Template page not exists
-himp.error.batch.not_exists=Batch number does not exist {0}
-himp.error.not_null={0} must be not null
-himp.error.length_exceeds_limit={0} length exceeds limit
-himp.error.regular_mismatch={0}regular mismatch
-himp.error.lov_mismatch={0} lov mismatch
-himp.error.not_decimal={0} is an illegal number type
-himp.error.not_date={0} time format error
-himp.error.not_number={0} is an illegal number type
-himp.error.more_than={0} more than {1}
-himp.error.less_than={0} less than {1}
-himp.error.field=Illegal template field type
-himp.error.script=Executing script {0} failed: {1}
-hpfm.template_config.exists=The template configuration already exists. Please reenter it
-hpfm.template_assign.exists=The template already exists. Please don't re-assign
-hpfm.warn.fetchMethods.failure=Get service method failed, return status {0}
-hpfm.warn.fetchMethods.exception=An exception occurred while getting the service method, exception information [{0}]
-hpfm.warn.fetchServiceException=Service Instance [{0}] is not running.
-hpfm.warn.customizeRuleFailure=api customize failure, service is [{0}], exception is [{1}]
-hpfm.warn.callServiceFailure=call service to customize failure, service is [{0}]
-hpfm.warn.customize.instanceNotRunning=customize service instance not running, service is [{0}]
-hpfm.warn.checkCode.failure=Invoke service check code correctness failed
-hpfm.warn.checkCode.exception=Invoke service check code correctness exception
-hpfm.warn.range.ruleNotFound=Personalization rules do not exist
-hpfm.warn.range.tenantNotEquals=The selected rule belongs to the tenant that does not match
-hpfm.error.cache_data.null=Failed to get cache parameters. domainUrl: {0}, sourceType: {1}
-hpfm.error.form_header.null=The form configuration header information does not exist, please check whether the entered form header encoding is correct, form header encoding: {0}, tenant Id: {1}
-hpfm.error.template_assign.delete_default=The default template cannot be deleted. Please select it again
-hpfm.error.datasource_register.fail=The database type already exists and cannot be re-registered
-hpfm.error.get_connection.fail=Failed to get connection object. Please check whether the database type is correct. The database type is : {0}
-hpfm.relational_param.illegal=Data source parameter verification failed. Current database type mandatory parameters: url address: {0}, driver class: {1}, user name: {2}, password: {3}
-hpfm.error.datasource_id.null=The data source Id cannot be null when updated
-hpfm.error.group_data_exists=The data[0] is exists
-hpfm.error.template.is_referenced=The current template is already referenced, please delete the reference to the template before disabling it
-hpfm.error.prompt.param_not_null=Parameter checking failed. PromptKey is: {0}, promptCode is: {1}
-#export
-hpfm.error.export_task.not_exists=The record [taskCode={0}] is not exists
-hpfm.error.export.cancel_failed=cancel the export task failed. cause={0}
-#datasource driver
-hpfm.error.driver.exists=The driver version is not repeatable under the same tenant and driver type, tenantId is : {0}, driverType is : {1}, driverVersion is : {2}
-hpfm.error.custom_driver=The custom driver could not test the connection !
-hpfm.error.send_socket=Message failed to be sent.
-#CA\u05A4\u8BC1\u4E66
-hpfm.error.certificate.not_null=certificate can bot be null
-hpfm.error.certificate.file.error=certificate file error
-hpfm.error.certificate.exists=certificate file has been exists
-hpfm.error.certificate.name.not_match=domainName of certificate is not match
-#Server\u670D\u52A1\u5668\u7BA1\u7406
-hpfm.error.server.code.exists=Code exists
-hpfm.error.server.check.fail=server check fail
-hpfm.error.server.ip.empty=server ip empty
-hpfm.error.server.ip.illegal=server ip illegal
-hpfm.error.server.name.empty=server name empty
-hpfm.error.server.name.existed=server name existed
-hpfm.error.server.not.found=server not found
-hpfm.error.prompt.refresh_cache=Do not repeat the operation during cache initialization.
-hiam.warn.operation.onlySupperAdminAllowed=Only super admin have access to this api.
-#gantt
-hpfm.gantt.taskNameRepeat=Duplicate task name, please check. The task name is : {0}
-#lov import
-error.lov.import.have_not_parent=Value set has no parent value set
-error.lov.import.parent_value_invalid=Parent value set value does not exist or is not enabled
-hpfm.error.deleteUsedDriver=The driver has been used and cannot be deleted!
-error.data_hierarchy.select.exceeds_maximum_number_limit=The maximum number of data level configuration select lists is {0}
-error.data_hierarchy.display.not_match_parent=The data hierarchy configuration display style does not match the parent hierarchy
-hpfm.error.clusterAssignServers=The server has been allocated under the cluster and cannot be deleted!
-hpfm.error.lov.parentLovNotNull=The parent value set does not exist, lovCode is : {0}
-hpfm.error.lov.urlNotNull=When the value set type is SQL type, the query SQL parameters must be lost!
-hpfm.error.lovTypeNotMatch=It is not allowed to update the value set type when the same value set is updated. Please check the content of the existing value set under the current tenant, value set encoding: {0}
diff --git a/skyer-after-sales/src/main/resources/messages/messages_hpfm_zh_CN.properties b/skyer-after-sales/src/main/resources/messages/messages_hpfm_zh_CN.properties
deleted file mode 100644
index 982eb5b..0000000
--- a/skyer-after-sales/src/main/resources/messages/messages_hpfm_zh_CN.properties
+++ /dev/null
@@ -1,183 +0,0 @@
-# basic
-hpfm.info.predefined=预定义
-hpfm.info.customize=自定义
-hpfm.error.no_pk=查询异常: 没有主键或代码
-hpfm.error.data_repeat=查询异常: 数据库中找不到记录或存在重复记录
-hpfm.error.date.start_later_end=起始日期 {0} 晚于终止日期 {1}
-hpfm.error.jdbc_connection=数据源不能建立连接
-error.data_invalid=数据校验不通过
-error.not_found=资源不存在
-error.error=程序出现错误,请联系管理员
-error.optimistic_lock=记录不存在或版本不一致
-error.data_exists=数据已存在,请不要重复提交
-error.data_not_exists=数据不存在
-# Event
-hpfm.error.event.code_exists=事件编码已存在
-hpfm.error.event.notMatch=事件数据不匹配
-hpfm.error.event.not_match=传入事件信息所含租户与当前租户不匹配,无法更新或删除数据!
-# lov
-hpfm.error.lov.invalid_route_name="无效的路由名"
-# StaticText
-hpfm.error.text_code.repeat_date=同一文本编码有效期重叠
-hpfm.error.text_code.not_exists=文本编码[{0}]不存在
-hpfm.error.text_code_lang.not_exists=文本编码[{0}]+语言[{1}]不存在
-hpfm.error.permission_rule_cited=当前规则已经被引用,禁止删除
-hpfm.error.code_rule.not_found=编码规则未启用
-hpfm.error.blocking_rule.exist=已存在为数据库前缀类型的屏蔽规则
-# tenant
-hpfm.error.tenant.name_repeat=租户名称重复!
-hpfm.error.send_saga_message.fail=saga消息发送失败
-#dbIde
-hpfm.error.can_not_insert=不能进行插入操作
-hpfm.error.can_not_update=不能进行更新操作
-hpfm.error.can_not_delete=不能进行删除操作
-hpfm.error.database.can_not_alter=不能对公有库进行表更新操作
-hpfm.error.database.can_not_drop=不能对公有库进行表删除操作
-hpfm.error.database.can_not_create_index=不能对公有库进行插入索引操作
-hpfm.error.operation_without_permission=在此服务中没有新增表权限
-hpfm.error.table.not_exist=表不存在
-hpfm.error.field.not_exist=字段不存在
-#rule_script
-hpfm.error.rule_script.get_rule_failed=获取规则引擎配置失败
-hpfm.error.rule_script.run_groovy_failed=Groovy脚本运行失败
-hpfm.error.rule_script.service_not_found=未找到指定服务
-hpfm.error.rule.script.check=业务脚本校验不通过
-#DashboardLayout
-hpfm.error.data.empty=数据为空
-hpfm.error.code_repeat=卡片编码 {0} 已经存在,请您重新输入
-hpfm.error.role_card.exists=当前角色下存在该卡片,请不要重复添加
-hpfm.error.saga.start=startSaga调用失败
-hpfm.error.lov_tenant.not_match=传入值集信息所含租户与当前租户不匹配,无法更新数据!
-hpfm.error.card_tenant.repeat=同一卡片下不能分配多个相同租户,请确认分配租户信息是否不重复!
-hpfm.error.card_clause.repeat=同一条目下不能分配多个相同卡片,请确认分配卡片信息是否不重复!
-hpfm.error.prompt_tenant.not_match=传入多语言信息所含租户与当前租户不匹配,无法更新数据!
-hpfm.error.rule_script.not_match=传入规则引擎信息所含租户与当前租户不匹配,无法更新数据!
-hpfm.error.permission_rule.not_match=传入数据权限信息所含租户与当前租户不匹配,无法更新数据!
-hpfm.error.date.irregularity=起始时间不能大于截止时间,请重新选择时间范围
-hpfm.error.data.disabled=该条数据处于禁用状态,请先启用之后再操作
-# hr
-error.hr.portion.multiple.supervisor.exceptions=一个部门最多只能有一个主管职位
-error.hr.unit.parent_disabled=父级未启用
-error.hr.unit.multiple.supervisor.exceptions=同级部门只能有一个主管部门
-error.hr.unit.top_type_error=顶层组织类型必须为公司或集团
-error.position.not.allowed=部门或者父级岗位未启用
-error.data.source.not.allowed=数据来源不允许 : {0}
-error.child.can.not.be.parent=下级岗位不允许设置为上级岗位的上级岗位
-error.employee.not.exist=员工不存在
-error.position.not.exist=岗位不存在
-error.user_not_exists.or.already_linked=子账户不存在或已关联员工
-error.parent_unit.not.exist=上级组织不存在
-error.department.missing.parent_unit=部门没有上级组织
-error.department.missing.or.not.department=所属部门不存在或者组织类型非部门
-error.parent_position.not.exist=上级岗位不存在
-error.department.or.company.not.enabled=部门或所属公司未启用
-# mdm
-error.multiple.code=编码重复
-error.multiple.name=名称重复
-error.parent.disable=父级未启用或父级不允许操作
-calendar.holiday.overlap=假期重叠
-startDate.bigger.endDate=假期起始日期大于终止日期
-error.industry.category.name.repeat=同一层级下行业或品类名称不允许重复
-hpfm.error.country.calendar.repeat=一个国家只能维护一个日历!
-hpfm.error.static_text.not_match=传入静态文本信息所含租户与当前租户不匹配,无法更新数据!
-error.period.continue=期间不连续
-# flex
-hpfm.flex.model.delete=模型已被使用,不可删除!
-hpfm.flex.model_field.delete=模型字段已被使用,不可删除!
-hpfm.flex.rule_detail.delete=规则明细已被使用,不可删除!
-hpfm.flex.model_field.init=初始化失败,请检查配置数据!
-# UiDimensionTemplate
-dimension.template.not.exist=维度模板不存在
-# UiField
-dimension.template.or.field.not.exist=维度模板或字段不存在
-can.not.update=不能更新
-hpfm.lov.tenant.repeat=同一租户下值集编码不可重复,请确认该值集在当前租户下是否已经存在
-hpfm.lov.site.copy_fail=当前平台下已经存在该值集,无需再次复制
-hpfm.lov_view.tenant.repeat=同一租户下值集视图编码不可重复,请确认该值集视图在当前租户下是否已经存在
-hpfm.lov_view.site.copy_fail=当前平台下已经存在该值集视图,无需再次复制
-# error
-himp.error.readFile=文件读取失败
-himp.error.excel.data=Excel为空,请填写导入数据
-himp.error.import.data=导入方法未定义
-himp.error.template.match=模板和EXCEL不匹配,请下载最新模板
-himp.error.feign.template=feign调用失败
-himp.error.get.contract.attachment=获取模板信息失败
-himp.error.local_template.exists=模板已存在
-himp.error.local_template.not_exists=模板不存在
-himp.error.uploading=数据上传未完成
-himp.error.checking=数据校验未完成
-himp.error.importing=数据导入未完成
-himp.error.openSheet=打开Sheet页{0}时发生错误
-himp.error.dataFormat=日期 {0} 不符合格式 {1}
-himp.error.formula=暂不支持公式 {0}
-himp.error.cell=读取单元格事发生错误
-himp.error.template.page.not_exists=模板页不存在
-himp.error.batch.not_exists=批号不存在 {0}
-himp.error.not_null={0} 不能为空
-himp.error.length_exceeds_limit={0} 长度超过限制
-himp.error.regular_mismatch={0} 正则不匹配
-himp.error.lov_mismatch={0} 值集校验失败
-himp.error.not_decimal={0} 是非法的数字类型
-himp.error.not_date={0} 时间格式错误
-himp.error.not_number={0} 是非法的数字类型
-himp.error.more_than={0} 大于 {1}
-himp.error.less_than={0} 小于 {1}
-himp.error.field=非法模板字段类型
-himp.error.script=执行脚本 {0} 失败: {1}
-hpfm.template_config.exists=该模板配置已经存在,请重新输入
-hpfm.template_assign.exists=模板已经存在,请勿重复分配
-hpfm.warn.fetchMethods.failure=获取服务方法失败,返回状态 {0}
-hpfm.warn.fetchMethods.exception=获取服务方法时发生异常,异常信息 [{0}]
-hpfm.warn.fetchServiceException=服务实例[{0}]未正常运行
-hpfm.warn.customizeRuleFailure=API客制化失败,服务[{0}], 异常信息[{1}]
-hpfm.warn.callServiceFailure=API客制化服务调用失败,服务[{0}]
-hpfm.warn.customize.instanceNotRunning=客制化服务实例未运行,服务 [{0}]
-hpfm.warn.checkCode.failure=调用服务检查代码正确性失败
-hpfm.warn.checkCode.exception=调用服务检查代码正确性发生异常
-hpfm.warn.range.ruleNotFound=个性化规则不存在
-hpfm.warn.range.tenantNotEquals=选择的规则所属租户不匹配
-hpfm.error.cache_data.null=获取缓存参数失败,域名信息:{0},来源类型信息:{1}
-hpfm.error.form_header.null=表单配置头信息不存在,请检查输入的表单头编码是否正确,表单头编码:{0}, 租户Id:{1}
-hpfm.error.template_assign.delete_default=默认模板不可删除,请重新选择
-hpfm.error.datasource_register.fail=数据库类型已经存在,无法重复注册
-hpfm.error.get_connection.fail=获取连接对象失败,请检查数据库类型是否正确,数据库类型为:{0}
-hpfm.relational_param.illegal=数据源参数校验失败,当前数据库类型必输参数:url地址:{0},驱动类:{1},用户名:{2},密码:{3}
-hpfm.error.datasource_id.null=更新时数据源Id不可为空
-hpfm.error.group_data_exists=数据【{0}】已经存在
-hpfm.error.template.is_referenced=当前模板已经被引用,请先删除该模板的引用后再禁用
-hpfm.error.prompt.param_not_null=参数校验失败,promptKey is : {0}, promptCode is : {1}
-#export
-hpfm.error.export_task.not_exists=不存在该[taskCode={0}]的记录
-hpfm.error.export.cancel_failed=导出任务取消失败。cause={0}
-#datasource driver
-hpfm.error.driver.exists=同一租户及驱动类型下驱动版本不可重复,租户:{0},驱动类型:{1},驱动版本:{2}
-hpfm.error.custom_driver=自定义驱动无法进行测试连接!
-hpfm.error.send_socket=Socket消息发送失败
-#CA证书
-hpfm.error.certificate.not_null=CA证书不能为空
-hpfm.error.certificate.file.error=CA证书文件错误
-hpfm.error.certificate.exists=CA证书文件已经存在
-hpfm.error.certificate.name.not_match=CA证书域名不匹配
-#Server服务器管理
-hpfm.error.server.code.exists=Code已存在
-hpfm.error.server.check.fail=服务器不可用
-hpfm.error.server.ip.empty=服务器IP不能为空
-hpfm.error.server.ip.illegal=服务器IP不合法
-hpfm.error.server.name.empty=服务器名不可为空
-hpfm.error.server.name.existed=服务器名已存在
-hpfm.error.server.not.found=服务器不存在
-hpfm.error.prompt.refresh_cache=缓存初始化中,请勿重复操作
-hiam.warn.operation.onlySupperAdminAllowed=只有超级管理员有权限调用此接口
-#gantt
-hpfm.gantt.taskNameRepeat=任务名称重复,请检查。任务名称为:{0}
-#lov import
-error.lov.import.have_not_parent=值集没有父级值集
-error.lov.import.parent_value_invalid=父级值集值不存在或未启用
-hpfm.error.deleteUsedDriver=驱动已经被使用,不可删除!
-error.data_hierarchy.select.exceeds_maximum_number_limit=数据层级配置下拉列表数量最多允许 {0} 个
-error.data_hierarchy.display.not_match_parent=数据层级配置显示样式与父级层级不匹配
-hpfm.error.clusterAssignServers=集群下已分配服务器,不可删除!
-hpfm.error.lov.parentLovNotNull=值集编码为 {0} 的父级值集不存在!
-hpfm.error.lov.urlNotNull=值集类型为 URL 类型时,查询 URL 参数必输!
-hpfm.error.lov.sqlNotNull=值集类型为 SQL 类型时,查询 SQL 参数必输!
-hpfm.error.lovTypeNotMatch=同一值集更新时不允许更新值集类型,请查看当前租户下已存在的值集内容,值集编码:{0}
diff --git a/skyer-after-sales/src/main/resources/static/js/babel.min.js b/skyer-after-sales/src/main/resources/static/js/babel.min.js
deleted file mode 100644
index 1075776..0000000
--- a/skyer-after-sales/src/main/resources/static/js/babel.min.js
+++ /dev/null
@@ -1,25 +0,0 @@
-!function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t():"function"==typeof define&&define.amd?define([],t):"object"==typeof exports?exports.Babel=t():e.Babel=t()}(this,function(){return function(e){function t(n){if(r[n])return r[n].exports;var i=r[n]={exports:{},id:n,loaded:!1};return e[n].call(i.exports,i,i.exports,t),i.loaded=!0,i.exports}var r={};return t.m=e,t.c=r,t.p="",t(0)}(function(e){for(var t in e)if(Object.prototype.hasOwnProperty.call(e,t))switch(typeof e[t]){case"function":break;case"object":e[t]=function(t){var r=t.slice(1),n=e[t[0]];return function(e,t,i){n.apply(this,[e,t,i].concat(r))}}(e[t]);break;default:e[t]=e[e[t]]}return e}([function(e,t,r){"use strict";function n(e,t){return g(t)&&"string"==typeof t[0]?e.hasOwnProperty(t[0])?[e[t[0]]].concat(t.slice(1)):void 0:"string"==typeof t?e[t]:t}function i(e){var t=(e.presets||[]).map(function(e){var t=n(E,e);if(!t)throw new Error('Invalid preset specified in Babel options: "'+e+'"');return g(t)&&"object"===h(t[0])&&t[0].hasOwnProperty("buildPreset")&&(t[0]=d({},t[0],{buildPreset:t[0].buildPreset})),t}),r=(e.plugins||[]).map(function(e){var t=n(b,e);if(!t)throw new Error('Invalid plugin specified in Babel options: "'+e+'"');return t});return d({babelrc:!1},e,{presets:t,plugins:r})}function s(e,t){return y.transform(e,i(t))}function a(e,t,r){return y.transformFromAst(e,t,i(r))}function o(e,t){b.hasOwnProperty(e)&&console.warn('A plugin named "'+e+'" is already registered, it will be overridden'),b[e]=t}function u(e){Object.keys(e).forEach(function(t){return o(t,e[t])})}function l(e,t){E.hasOwnProperty(e)&&console.warn('A preset named "'+e+'" is already registered, it will be overridden'),E[e]=t}function c(e){Object.keys(e).forEach(function(t){return l(t,e[t])})}function f(e){(0,v.runScripts)(s,e)}function p(){window.removeEventListener("DOMContentLoaded",f)}Object.defineProperty(t,"__esModule",{value:!0}),t.version=t.buildExternalHelpers=t.availablePresets=t.availablePlugins=void 0;var d=Object.assign||function(e){for(var t=1;t=n.length)break;a=n[s++]}else{if(s=n.next(),s.done)break;a=s.value}if(e===a)return!0}}return!1}function o(e,t,r){if(e){var n=z.NODE_FIELDS[e.type];if(n){var i=n[t];i&&i.validate&&(i.optional&&null==r||i.validate(e,t,r))}}}function u(e,t){for(var r=(0,B.default)(t),n=r,i=Array.isArray(n),s=0,n=i?n:(0,T.default)(n);;){var a;if(i){if(s>=n.length)break;a=n[s++]}else{if(s=n.next(),s.done)break;a=s.value}var o=a;if(e[o]!==t[o])return!1}return!0}function l(e,t,r){return e.object=z.memberExpression(e.object,e.property,e.computed),e.property=t,e.computed=!!r,e}function c(e,t){return e.object=z.memberExpression(t,e.object),e}function f(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"body";return e[t]=z.toBlock(e[t],e)}function p(e){if(!e)return e;var t={};for(var r in e)"_"!==r[0]&&(t[r]=e[r]);return t}function d(e){var t=p(e);return delete t.loc,t}function h(e){if(!e)return e;var t={};for(var r in e)if("_"!==r[0]){var n=e[r];n&&(n.type?n=z.cloneDeep(n):Array.isArray(n)&&(n=n.map(z.cloneDeep))),t[r]=n}return t}function m(e,t){var r=e.split(".");return function(e){if(!z.isMemberExpression(e))return!1;for(var n=[e],i=0;n.length;){var s=n.shift();if(t&&i===r.length)return!0;if(z.isIdentifier(s)){if(r[i]!==s.name)return!1}else{if(!z.isStringLiteral(s)){if(z.isMemberExpression(s)){if(s.computed&&!z.isStringLiteral(s.property))return!1;n.push(s.object),n.push(s.property);continue}return!1}if(r[i]!==s.value)return!1}if(++i>r.length)return!1}return!0}}function y(e){for(var t=z.COMMENT_KEYS,r=Array.isArray(t),n=0,t=r?t:(0,T.default)(t);;){var i;if(r){if(n>=t.length)break;i=t[n++]}else{if(n=t.next(),n.done)break;i=n.value}delete e[i]}return e}function v(e,t){return g(e,t),b(e,t),E(e,t),e}function g(e,t){x("trailingComments",e,t)}function b(e,t){x("leadingComments",e,t)}function E(e,t){x("innerComments",e,t)}function x(e,t,r){t&&r&&(t[e]=(0,K.default)([].concat(t[e],r[e]).filter(Boolean)))}function A(e,t){if(!e||!t)return e;for(var r=z.INHERIT_KEYS.optional,n=Array.isArray(r),i=0,r=n?r:(0,T.default)(r);;){var s;if(n){if(i>=r.length)break;s=r[i++]}else{if(i=r.next(),i.done)break;s=i.value}var a=s;null==e[a]&&(e[a]=t[a])}for(var o in t)"_"===o[0]&&(e[o]=t[o]);for(var u=z.INHERIT_KEYS.force,l=Array.isArray(u),c=0,u=l?u:(0,T.default)(u);;){var f;if(l){if(c>=u.length)break;f=u[c++]}else{if(c=u.next(),c.done)break;f=c.value}var p=f;e[p]=t[p]}return z.inheritsComments(e,t),e}function S(e){if(!_(e))throw new TypeError("Not a valid node "+(e&&e.type))}function _(e){return!(!e||!H.VISITOR_KEYS[e.type])}function D(e,t,r){if(e){var n=z.VISITOR_KEYS[e.type];if(n){r=r||{},t(e,r);for(var i=n,s=Array.isArray(i),a=0,i=s?i:(0,T.default)(i);;){var o;if(s){if(a>=i.length)break;o=i[a++]}else{if(a=i.next(),a.done)break;o=a.value}var u=o,l=e[u];if(Array.isArray(l))for(var c=l,f=Array.isArray(c),p=0,c=f?c:(0,T.default)(c);;){var d;if(f){if(p>=c.length)break;d=c[p++]}else{if(p=c.next(),p.done)break;d=p.value}var h=d;D(h,t,r)}else D(l,t,r)}}}}function C(e,t){t=t||{};for(var r=t.preserveComments?Z:ee,n=r,i=Array.isArray(n),s=0,n=i?n:(0,T.default)(n);;){var a;if(i){if(s>=n.length)break;a=n[s++]}else{if(s=n.next(),s.done)break;a=s.value}var o=a;null!=e[o]&&(e[o]=void 0)}for(var u in e)"_"===u[0]&&null!=e[u]&&(e[u]=void 0);for(var l=(0,k.default)(e),c=l,f=Array.isArray(c),p=0,c=f?c:(0,T.default)(c);;){var d;if(f){if(p>=c.length)break;d=c[p++]}else{if(p=c.next(),p.done)break;d=p.value}e[d]=null}}function w(e,t){return D(e,C,t),e}t.__esModule=!0,t.createTypeAnnotationBasedOnTypeof=t.removeTypeDuplicates=t.createUnionTypeAnnotation=t.valueToNode=t.toBlock=t.toExpression=t.toStatement=t.toBindingIdentifierName=t.toIdentifier=t.toKeyAlias=t.toSequenceExpression=t.toComputedKey=t.isNodesEquivalent=t.isImmutable=t.isScope=t.isSpecifierDefault=t.isVar=t.isBlockScoped=t.isLet=t.isValidIdentifier=t.isReferenced=t.isBinding=t.getOuterBindingIdentifiers=t.getBindingIdentifiers=t.TYPES=t.react=t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.NODE_FIELDS=t.ALIAS_KEYS=t.VISITOR_KEYS=t.NOT_LOCAL_BINDING=t.BLOCK_SCOPED_SYMBOL=t.INHERIT_KEYS=t.UNARY_OPERATORS=t.STRING_UNARY_OPERATORS=t.NUMBER_UNARY_OPERATORS=t.BOOLEAN_UNARY_OPERATORS=t.BINARY_OPERATORS=t.NUMBER_BINARY_OPERATORS=t.BOOLEAN_BINARY_OPERATORS=t.COMPARISON_BINARY_OPERATORS=t.EQUALITY_BINARY_OPERATORS=t.BOOLEAN_NUMBER_BINARY_OPERATORS=t.UPDATE_OPERATORS=t.LOGICAL_OPERATORS=t.COMMENT_KEYS=t.FOR_INIT_KEYS=t.FLATTENABLE_KEYS=t.STATEMENT_OR_BLOCK_KEYS=void 0;var P=r(360),k=n(P),F=r(2),T=n(F),O=r(14),B=n(O),R=r(35),I=n(R),M=r(135);Object.defineProperty(t,"STATEMENT_OR_BLOCK_KEYS",{enumerable:!0,get:function(){return M.STATEMENT_OR_BLOCK_KEYS}}),Object.defineProperty(t,"FLATTENABLE_KEYS",{enumerable:!0,get:function(){return M.FLATTENABLE_KEYS}}),Object.defineProperty(t,"FOR_INIT_KEYS",{enumerable:!0,get:function(){return M.FOR_INIT_KEYS}}),Object.defineProperty(t,"COMMENT_KEYS",{enumerable:!0,get:function(){return M.COMMENT_KEYS}}),Object.defineProperty(t,"LOGICAL_OPERATORS",{enumerable:!0,get:function(){return M.LOGICAL_OPERATORS}}),Object.defineProperty(t,"UPDATE_OPERATORS",{enumerable:!0,get:function(){return M.UPDATE_OPERATORS}}),Object.defineProperty(t,"BOOLEAN_NUMBER_BINARY_OPERATORS",{enumerable:!0,get:function(){return M.BOOLEAN_NUMBER_BINARY_OPERATORS}}),Object.defineProperty(t,"EQUALITY_BINARY_OPERATORS",{enumerable:!0,get:function(){return M.EQUALITY_BINARY_OPERATORS}}),Object.defineProperty(t,"COMPARISON_BINARY_OPERATORS",{enumerable:!0,get:function(){return M.COMPARISON_BINARY_OPERATORS}}),Object.defineProperty(t,"BOOLEAN_BINARY_OPERATORS",{enumerable:!0,get:function(){return M.BOOLEAN_BINARY_OPERATORS}}),Object.defineProperty(t,"NUMBER_BINARY_OPERATORS",{enumerable:!0,get:function(){return M.NUMBER_BINARY_OPERATORS}}),Object.defineProperty(t,"BINARY_OPERATORS",{enumerable:!0,get:function(){return M.BINARY_OPERATORS}}),Object.defineProperty(t,"BOOLEAN_UNARY_OPERATORS",{enumerable:!0,get:function(){return M.BOOLEAN_UNARY_OPERATORS}}),Object.defineProperty(t,"NUMBER_UNARY_OPERATORS",{enumerable:!0,get:function(){return M.NUMBER_UNARY_OPERATORS}}),Object.defineProperty(t,"STRING_UNARY_OPERATORS",{enumerable:!0,get:function(){return M.STRING_UNARY_OPERATORS}}),Object.defineProperty(t,"UNARY_OPERATORS",{enumerable:!0,get:function(){return M.UNARY_OPERATORS}}),Object.defineProperty(t,"INHERIT_KEYS",{enumerable:!0,get:function(){return M.INHERIT_KEYS}}),Object.defineProperty(t,"BLOCK_SCOPED_SYMBOL",{enumerable:!0,get:function(){return M.BLOCK_SCOPED_SYMBOL}}),Object.defineProperty(t,"NOT_LOCAL_BINDING",{enumerable:!0,get:function(){return M.NOT_LOCAL_BINDING}}),t.is=s,t.isType=a,t.validate=o,t.shallowEqual=u,t.appendToMemberExpression=l,t.prependToMemberExpression=c,t.ensureBlock=f,t.clone=p,t.cloneWithoutLoc=d,t.cloneDeep=h,t.buildMatchMemberExpression=m,t.removeComments=y,t.inheritsComments=v,t.inheritTrailingComments=g,t.inheritLeadingComments=b,t.inheritInnerComments=E,t.inherits=A,t.assertNode=S,t.isNode=_,t.traverseFast=D,t.removeProperties=C,t.removePropertiesDeep=w;var N=r(226);Object.defineProperty(t,"getBindingIdentifiers",{enumerable:!0,get:function(){return N.getBindingIdentifiers}}),Object.defineProperty(t,"getOuterBindingIdentifiers",{enumerable:!0,get:function(){return N.getOuterBindingIdentifiers}});var L=r(395);Object.defineProperty(t,"isBinding",{enumerable:!0,get:function(){return L.isBinding}}),Object.defineProperty(t,"isReferenced",{enumerable:!0,get:function(){return L.isReferenced}}),Object.defineProperty(t,"isValidIdentifier",{enumerable:!0,get:function(){return L.isValidIdentifier}}),Object.defineProperty(t,"isLet",{enumerable:!0,get:function(){return L.isLet}}),Object.defineProperty(t,"isBlockScoped",{enumerable:!0,get:function(){return L.isBlockScoped}}),Object.defineProperty(t,"isVar",{enumerable:!0,get:function(){return L.isVar}}),Object.defineProperty(t,"isSpecifierDefault",{enumerable:!0,get:function(){return L.isSpecifierDefault}}),Object.defineProperty(t,"isScope",{enumerable:!0,get:function(){return L.isScope}}),Object.defineProperty(t,"isImmutable",{enumerable:!0,get:function(){return L.isImmutable}}),Object.defineProperty(t,"isNodesEquivalent",{enumerable:!0,get:function(){return L.isNodesEquivalent}});var j=r(385);Object.defineProperty(t,"toComputedKey",{enumerable:!0,get:function(){return j.toComputedKey}}),Object.defineProperty(t,"toSequenceExpression",{enumerable:!0,get:function(){return j.toSequenceExpression}}),Object.defineProperty(t,"toKeyAlias",{enumerable:!0,get:function(){return j.toKeyAlias}}),Object.defineProperty(t,"toIdentifier",{enumerable:!0,get:function(){return j.toIdentifier}}),Object.defineProperty(t,"toBindingIdentifierName",{enumerable:!0,get:function(){return j.toBindingIdentifierName}}),Object.defineProperty(t,"toStatement",{enumerable:!0,get:function(){return j.toStatement}}),Object.defineProperty(t,"toExpression",{enumerable:!0,get:function(){return j.toExpression}}),Object.defineProperty(t,"toBlock",{enumerable:!0,get:function(){return j.toBlock}}),Object.defineProperty(t,"valueToNode",{enumerable:!0,get:function(){return j.valueToNode}});var U=r(393);Object.defineProperty(t,"createUnionTypeAnnotation",{enumerable:!0,get:function(){return U.createUnionTypeAnnotation}}),Object.defineProperty(t,"removeTypeDuplicates",{enumerable:!0,get:function(){return U.removeTypeDuplicates}}),Object.defineProperty(t,"createTypeAnnotationBasedOnTypeof",{enumerable:!0,get:function(){return U.createTypeAnnotationBasedOnTypeof}});var V=r(624),G=n(V),W=r(109),Y=n(W),q=r(600),K=n(q);r(390);var H=r(26),J=r(394),X=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(J),z=t;t.VISITOR_KEYS=H.VISITOR_KEYS,t.ALIAS_KEYS=H.ALIAS_KEYS,t.NODE_FIELDS=H.NODE_FIELDS,t.BUILDER_KEYS=H.BUILDER_KEYS,t.DEPRECATED_KEYS=H.DEPRECATED_KEYS,t.react=X;for(var $ in z.VISITOR_KEYS)i($);z.FLIPPED_ALIAS_KEYS={},(0,B.default)(z.ALIAS_KEYS).forEach(function(e){z.ALIAS_KEYS[e].forEach(function(t){(z.FLIPPED_ALIAS_KEYS[t]=z.FLIPPED_ALIAS_KEYS[t]||[]).push(e)})}),(0,B.default)(z.FLIPPED_ALIAS_KEYS).forEach(function(e){z[e.toUpperCase()+"_TYPES"]=z.FLIPPED_ALIAS_KEYS[e],i(e)});t.TYPES=(0,B.default)(z.VISITOR_KEYS).concat((0,B.default)(z.FLIPPED_ALIAS_KEYS)).concat((0,B.default)(z.DEPRECATED_KEYS));(0,B.default)(z.BUILDER_KEYS).forEach(function(e){function t(){if(arguments.length>r.length)throw new Error("t."+e+": Too many arguments passed. Received "+arguments.length+" but can receive no more than "+r.length);var t={};t.type=e;for(var n=0,i=r,s=Array.isArray(i),a=0,i=s?i:(0,T.default)(i);;){var u;if(s){if(a>=i.length)break;u=i[a++]}else{if(a=i.next(),a.done)break;u=a.value}var l=u,c=z.NODE_FIELDS[e][l],f=arguments[n++];void 0===f&&(f=(0,Y.default)(c.default)),t[l]=f}for(var p in t)o(t,p,t[p]);return t}var r=z.BUILDER_KEYS[e];z[e]=t,z[e[0].toLowerCase()+e.slice(1)]=t});for(var Q in z.DEPRECATED_KEYS)!function(e){function t(t){return function(){return console.trace("The node type "+e+" has been renamed to "+r),t.apply(this,arguments)}}var r=z.DEPRECATED_KEYS[e];z[e]=z[e[0].toLowerCase()+e.slice(1)]=t(z[r]),z["is"+e]=t(z["is"+r]),z["assert"+e]=t(z["assert"+r])}(Q);(0,G.default)(z),(0,G.default)(z.VISITOR_KEYS);var Z=["tokens","start","end","loc","raw","rawValue"],ee=z.COMMENT_KEYS.concat(["comments"]).concat(Z)},function(e,t,r){"use strict";e.exports={default:r(404),__esModule:!0}},function(e,t){"use strict";t.__esModule=!0,t.default=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function i(e){return e&&e.__esModule?e:{default:e}}function s(e,t){e=(0,l.default)(e);var r=e,n=r.program;return t.length&&(0,m.default)(e,A,null,t),n.body.length>1?n.body:n.body[0]}t.__esModule=!0;var a=r(10),o=i(a);t.default=function(e,t){var r=void 0;try{throw new Error}catch(e){e.stack&&(r=e.stack.split("\n").slice(1).join("\n"))}t=(0,f.default)({allowReturnOutsideFunction:!0,allowSuperOutsideMethod:!0,preserveComments:!1},t);var n=function(){var i=void 0;try{i=v.parse(e,t),i=m.default.removeProperties(i,{preserveComments:t.preserveComments}),m.default.cheap(i,function(e){e[E]=!0})}catch(e){throw e.stack=e.stack+"from\n"+r,e}return n=function(){return i},i};return function(){for(var e=arguments.length,t=Array(e),r=0;r=l.length)break;p=l[f++]}else{if(f=l.next(),f.done)break;p=f.value}var h=p;if((!s||!s[h])&&o.visit(e,h))return}},s.clearNode=function(e,t){x.removeProperties(e,t),S.path.delete(e)},s.removeProperties=function(e,t){return x.traverseFast(e,s.clearNode,t),e},s.hasType=function(e,t,r,n){if((0,b.default)(n,e.type))return!1;if(e.type===r)return!0;var i={has:!1,type:r};return s(e,{blacklist:n,enter:a},t,i),i.has},s.clearCache=function(){S.clear()},s.clearCache.clearPath=S.clearPath,s.clearCache.clearScope=S.clearScope,s.copyCache=function(e,t){S.path.has(e)&&S.path.set(t,S.path.get(e))}},function(e,t){"use strict";function r(){throw new Error("setTimeout has not been defined")}function n(){throw new Error("clearTimeout has not been defined")}function i(e){if(c===setTimeout)return setTimeout(e,0);if((c===r||!c)&&setTimeout)return c=setTimeout,setTimeout(e,0);try{return c(e,0)}catch(t){try{return c.call(null,e,0)}catch(t){return c.call(this,e,0)}}}function s(e){if(f===clearTimeout)return clearTimeout(e);if((f===n||!f)&&clearTimeout)return f=clearTimeout,clearTimeout(e);try{return f(e)}catch(t){try{return f.call(null,e)}catch(t){return f.call(this,e)}}}function a(){m&&d&&(m=!1,d.length?h=d.concat(h):y=-1,h.length&&o())}function o(){if(!m){var e=i(a);m=!0;for(var t=h.length;t;){for(d=h,h=[];++y1)for(var r=1;r=0;n--){var i=e[n];"."===i?e.splice(n,1):".."===i?(e.splice(n,1),r++):r&&(e.splice(n,1),r--)}if(t)for(;r--;r)e.unshift("..");return e}function n(e,t){if(e.filter)return e.filter(t);for(var r=[],n=0;n=-1&&!i;s--){var a=s>=0?arguments[s]:e.cwd();if("string"!=typeof a)throw new TypeError("Arguments to path.resolve must be strings");a&&(t=a+"/"+t,i="/"===a.charAt(0))}return t=r(n(t.split("/"),function(e){return!!e}),!i).join("/"),(i?"/":"")+t||"."},t.normalize=function(e){var i=t.isAbsolute(e),s="/"===a(e,-1);return e=r(n(e.split("/"),function(e){return!!e}),!i).join("/"),e||i||(e="."),e&&s&&(e+="/"),(i?"/":"")+e},t.isAbsolute=function(e){return"/"===e.charAt(0)},t.join=function(){var e=Array.prototype.slice.call(arguments,0);return t.normalize(n(e,function(e,t){if("string"!=typeof e)throw new TypeError("Arguments to path.join must be strings");return e}).join("/"))},t.relative=function(e,r){function n(e){for(var t=0;t=0&&""===e[r];r--);return t>r?[]:e.slice(t,r-t+1)}e=t.resolve(e).substr(1),r=t.resolve(r).substr(1);for(var i=n(e.split("/")),s=n(r.split("/")),a=Math.min(i.length,s.length),o=a,u=0;u1?t-1:0),n=1;n=s.length)break;u=s[o++]}else{if(o=s.next(),o.done)break;u=o.value}var l=u;if(b.is(l,n)){i=!0;break}}if(!i)throw new TypeError("Property "+t+" of "+e.type+" expected node to be of a type "+(0,m.default)(r)+" but instead got "+(0,m.default)(n&&n.type))}for(var t=arguments.length,r=Array(t),n=0;n=a.length)break;l=a[u++]}else{if(u=a.next(),u.done)break;l=u.value}var c=l;if(i(n)===c||b.is(c,n)){s=!0;break}}if(!s)throw new TypeError("Property "+t+" of "+e.type+" expected node to be of a type "+(0,m.default)(r)+" but instead got "+(0,m.default)(n&&n.type))}for(var t=arguments.length,r=Array(t),n=0;n=e.length)break;i=e[n++]}else{if(n=e.next(),n.done)break;i=n.value}i.apply(void 0,arguments)}}for(var t=arguments.length,r=Array(t),n=0;n1&&void 0!==arguments[1]?arguments[1]:{},r=t.inherits&&D[t.inherits]||{};t.fields=t.fields||r.fields||{},t.visitor=t.visitor||r.visitor||[],t.aliases=t.aliases||r.aliases||[],t.builder=t.builder||r.builder||t.visitor||[],t.deprecatedAlias&&(_[t.deprecatedAlias]=e);for(var n=t.visitor.concat(t.builder),s=Array.isArray(n),a=0,n=s?n:(0,d.default)(n);;){var o;if(s){if(a>=n.length)break;o=n[a++]}else{if(a=n.next(),a.done)break;o=a.value}var u=o;t.fields[u]=t.fields[u]||{}}for(var c in t.fields){var f=t.fields[c];-1===t.builder.indexOf(c)&&(f.optional=!0),void 0===f.default?f.default=null:f.validate||(f.validate=l(i(f.default)))}E[e]=t.visitor,S[e]=t.builder,A[e]=t.fields,x[e]=t.aliases,D[e]=t}t.__esModule=!0,t.DEPRECATED_KEYS=t.BUILDER_KEYS=t.NODE_FIELDS=t.ALIAS_KEYS=t.VISITOR_KEYS=void 0;var p=r(2),d=n(p),h=r(35),m=n(h),y=r(11),v=n(y);t.assertEach=s,t.assertOneOf=a,t.assertNodeType=o,t.assertNodeOrValueType=u,t.assertValueType=l,t.chain=c,t.default=f;var g=r(1),b=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(g),E=t.VISITOR_KEYS={},x=t.ALIAS_KEYS={},A=t.NODE_FIELDS={},S=t.BUILDER_KEYS={},_=t.DEPRECATED_KEYS={},D={}},function(e,t){"use strict";e.exports=function(e){try{return!!e()}catch(e){return!0}}},function(e,t){"use strict";var r={}.hasOwnProperty;e.exports=function(e,t){return r.call(e,t)}},function(e,t,r){"use strict";var n=r(23),i=r(92);e.exports=r(22)?function(e,t,r){return n.f(e,t,i(1,r))}:function(e,t,r){return e[t]=r,e}},function(e,t,r){"use strict";function n(e){return null==e?void 0===e?u:o:l&&l in Object(e)?s(e):a(e)}var i=r(45),s=r(534),a=r(559),o="[object Null]",u="[object Undefined]",l=i?i.toStringTag:void 0;e.exports=n},function(e,t,r){"use strict";function n(e,t,r,n){var a=!r;r||(r={});for(var o=-1,u=t.length;++o=s.length)break;u=s[o++]}else{if(o=s.next(),o.done)break;u=o.value}var l=u;if(l.container===t)return l.plugin}var c=void 0;if(c="function"==typeof t?t(b):t,"object"===(void 0===c?"undefined":(0,m.default)(c))){var f=new x.default(c,i);return e.memoisedPlugins.push({container:t,plugin:f}),f}throw new TypeError(S.get("pluginNotObject",r,n,void 0===c?"undefined":(0,m.default)(c))+r+n)},e.createBareOptions=function(){var e={};for(var t in M.default){var r=M.default[t];e[t]=(0,O.default)(r.default)}return e},e.normalisePlugin=function(t,r,n,i){if(!((t=t.__esModule?t.default:t)instanceof x.default)){if("function"!=typeof t&&"object"!==(void 0===t?"undefined":(0,m.default)(t)))throw new TypeError(S.get("pluginNotFunction",r,n,void 0===t?"undefined":(0,m.default)(t)));t=e.memoisePluginContainer(t,r,n,i)}return t.init(r,n),t},e.normalisePlugins=function(t,n,i){return i.map(function(i,s){var a=void 0,o=void 0;if(!i)throw new TypeError("Falsy value found in plugins");Array.isArray(i)?(a=i[0],o=i[1]):a=i;var u="string"==typeof a?a:t+"$"+s;if("string"==typeof a){var l=(0,C.default)(a,n);if(!l)throw new ReferenceError(S.get("pluginUnknown",a,t,s,n));a=r(179)(l)}return a=e.normalisePlugin(a,t,s,u),[a,o]})},e.prototype.mergeOptions=function(t){var r=this,i=t.options,s=t.extending,a=t.alias,o=t.loc,u=t.dirname;if(a=a||"foreign",i){("object"!==(void 0===i?"undefined":(0,m.default)(i))||Array.isArray(i))&&this.log.error("Invalid options type for "+a,TypeError);var l=(0,F.default)(i,function(e){if(e instanceof x.default)return e});u=u||n.cwd(),o=o||a;for(var c in l){if(!M.default[c]&&this.log)if(L.default[c])this.log.error("Using removed Babel 5 option: "+a+"."+c+" - "+L.default[c].message,ReferenceError);else{var p="Unknown option: "+a+"."+c+". Check out http://babeljs.io/docs/usage/options/ for more information about options.";this.log.error(p+"\n\nA common cause of this error is the presence of a configuration options object without the corresponding preset name. Example:\n\nInvalid:\n `{ presets: [{option: value}] }`\nValid:\n `{ presets: [['presetName', {option: value}]] }`\n\nFor more detailed information on preset configuration, please see http://babeljs.io/docs/plugins/#pluginpresets-options.",ReferenceError)}}(0,_.normaliseOptions)(l),l.plugins&&(l.plugins=e.normalisePlugins(o,u,l.plugins)),l.presets&&(l.passPerPreset?l.presets=this.resolvePresets(l.presets,u,function(e,t){r.mergeOptions({options:e,extending:e,alias:t,loc:t,dirname:u})}):(this.mergePresets(l.presets,u),delete l.presets)),i===s?(0,f.default)(s,l):(0,R.default)(s||this.options,l)}},e.prototype.mergePresets=function(e,t){var r=this;this.resolvePresets(e,t,function(e,t){r.mergeOptions({options:e,alias:t,loc:t,dirname:G.default.dirname(t||"")})})},e.prototype.resolvePresets=function(e,t,n){return e.map(function(e){var i=void 0;if(Array.isArray(e)){if(e.length>2)throw new Error("Unexpected extra options "+(0,l.default)(e.slice(2))+" passed to preset.");var s=e;e=s[0],i=s[1]}var a=void 0;try{if("string"==typeof e){if(!(a=(0,P.default)(e,t)))throw new Error("Couldn't find preset "+(0,l.default)(e)+" relative to directory "+(0,l.default)(t));e=r(179)(a)}if("object"===(void 0===e?"undefined":(0,m.default)(e))&&e.__esModule)if(e.default)e=e.default;else{var u=e,c=(u.__esModule,(0,o.default)(u,["__esModule"]));e=c}if("object"===(void 0===e?"undefined":(0,m.default)(e))&&e.buildPreset&&(e=e.buildPreset),"function"!=typeof e&&void 0!==i)throw new Error("Options "+(0,l.default)(i)+" passed to "+(a||"a preset")+" which does not accept options.");if("function"==typeof e&&(e=e(b,i,{dirname:t})),"object"!==(void 0===e?"undefined":(0,m.default)(e)))throw new Error("Unsupported preset format: "+e+".");n&&n(e,a)}catch(e){throw a&&(e.message+=" (While processing preset: "+(0,l.default)(a)+")"),e}return e})},e.prototype.normaliseOptions=function(){var e=this.options;for(var t in M.default){var r=M.default[t],n=e[t];!n&&r.optional||(r.alias?e[r.alias]=e[r.alias]||n:e[t]=n)}},e.prototype.init=function(){for(var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=(0,U.default)(e,this.log),r=Array.isArray(t),n=0,t=r?t:(0,d.default)(t);;){var i;if(r){if(n>=t.length)break;i=t[n++]}else{if(n=t.next(),n.done)break;i=n.value}var s=i;this.mergeOptions(s)}return this.normaliseOptions(e),this.options},e}();t.default=W,W.memoisedPlugins=[],e.exports=t.default}).call(t,r(8))},function(e,t,r){"use strict";e.exports={default:r(405),__esModule:!0}},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}function i(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var s=r(2),a=i(s),o=r(3),u=i(o),l=r(224),c=n(l),f=r(239),p=i(f),d=r(466),h=i(d),m=r(7),y=i(m),v=r(174),g=i(v),b=r(134),E=i(b),x=r(1),A=n(x),S=r(88),_=(0,p.default)("babel"),D=function(){function e(t,r){(0,u.default)(this,e),this.parent=r,this.hub=t,this.contexts=[],this.data={},this.shouldSkip=!1,this.shouldStop=!1,this.removed=!1,this.state=null,this.opts=null,this.skipKeys=null,this.parentPath=null,this.context=null,this.container=null,this.listKey=null,this.inList=!1,this.parentKey=null,this.key=null,this.node=null,this.scope=null,this.type=null,this.typeAnnotation=null}return e.get=function(t){var r=t.hub,n=t.parentPath,i=t.parent,s=t.container,a=t.listKey,o=t.key;!r&&n&&(r=n.hub),(0,h.default)(i,"To get a node path the parent needs to exist");var u=s[o],l=S.path.get(i)||[];S.path.has(i)||S.path.set(i,l);for(var c=void 0,f=0;f1&&void 0!==arguments[1]?arguments[1]:SyntaxError;return this.hub.file.buildCodeFrameError(this.node,e,t)},e.prototype.traverse=function(e,t){(0,y.default)(this.node,e,this.scope,t,this)},e.prototype.mark=function(e,t){this.hub.file.metadata.marked.push({type:e,message:t,loc:this.node.loc})},e.prototype.set=function(e,t){A.validate(this.node,e,t),this.node[e]=t},e.prototype.getPathLocation=function(){var e=[],t=this;do{var r=t.key;t.inList&&(r=t.listKey+"["+r+"]"),e.unshift(r)}while(t=t.parentPath);return e.join(".")},e.prototype.debug=function(e){_.enabled&&_(this.getPathLocation()+" "+this.type+": "+e())},e}();t.default=D,(0,g.default)(D.prototype,r(368)),(0,g.default)(D.prototype,r(374)),(0,g.default)(D.prototype,r(382)),(0,g.default)(D.prototype,r(372)),(0,g.default)(D.prototype,r(371)),(0,g.default)(D.prototype,r(377)),(0,g.default)(D.prototype,r(370)),(0,g.default)(D.prototype,r(381)),(0,g.default)(D.prototype,r(380)),(0,g.default)(D.prototype,r(373)),(0,g.default)(D.prototype,r(369));for(var C=A.TYPES,w=Array.isArray(C),P=0,C=w?C:(0,a.default)(C);;){var k;if("break"===function(){if(w){if(P>=C.length)return"break";k=C[P++]}else{if(P=C.next(),P.done)return"break";k=P.value}var e=k,t="is"+e;D.prototype[t]=function(e){return A[t](this.node,e)},D.prototype["assert"+e]=function(r){if(!this[t](r))throw new TypeError("Expected node path of type "+e)}}())break}for(var F in c){(function(e){if("_"===e[0])return"continue";A.TYPES.indexOf(e)<0&&A.TYPES.push(e);var t=c[e];D.prototype["is"+e]=function(e){return t.checkPath(this,e)}})(F)}e.exports=t.default},function(e,t,r){"use strict";var n=r(142),i=r(140);e.exports=function(e){return n(i(e))}},function(e,t,r){"use strict";function n(e,t){var r=s(e,t);return i(r)?r:void 0}var i=r(497),s=r(535);e.exports=n},function(e,t){"use strict";e.exports=function(e){return e.webpackPolyfill||(e.deprecate=function(){},e.paths=[],e.children=[],e.webpackPolyfill=1),e}},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function i(e,t,r,n){if(e.selfReference){if(!n.hasBinding(r.name)||n.hasGlobal(r.name)){if(!f.isFunction(t))return;var i=p;t.generator&&(i=d);var s=i({FUNCTION:t,FUNCTION_ID:r,FUNCTION_KEY:n.generateUidIdentifier(r.name)}).expression;s.callee._skipModulesRemap=!0;for(var a=s.callee.body.body[0].params,u=0,l=(0,o.default)(t);u0&&void 0!==arguments[0]?arguments[0]:{},r=arguments[1];(0,p.default)(this,n);var i=(0,h.default)(this,t.call(this));return i.pipeline=r,i.log=new L.default(i,e.filename||"unknown"),i.opts=i.initOptions(e),i.parserOpts={sourceType:i.opts.sourceType,sourceFileName:i.opts.filename,plugins:[]},i.pluginVisitors=[],i.pluginPasses=[],i.buildPluginsForOptions(i.opts),i.opts.passPerPreset&&(i.perPresetOpts=[],i.opts.presets.forEach(function(e){var t=(0,c.default)((0,u.default)(i.opts),e);i.perPresetOpts.push(t),i.buildPluginsForOptions(t)})),i.metadata={usedHelpers:[],marked:[],modules:{imports:[],exports:{exported:[],specifiers:[]}}},i.dynamicImportTypes={},i.dynamicImportIds={},i.dynamicImports=[],i.declarations={},i.usedHelpers={},i.path=null,i.ast={},i.code="",i.shebang="",i.hub=new w.Hub(i),i}return(0,y.default)(n,t),n.prototype.getMetadata=function(){for(var e=!1,t=this.ast.program.body,r=Array.isArray(t),n=0,t=r?t:(0,a.default)(t);;){var i;if(r){if(n>=t.length)break;i=t[n++]}else{if(n=t.next(),n.done)break;i=n.value}var s=i;if(H.isModuleDeclaration(s)){e=!0;break}}e&&this.path.traverse(E,this)},n.prototype.initOptions=function(e){e=new _.default(this.log,this.pipeline).init(e),e.inputSourceMap&&(e.sourceMaps=!0),e.moduleId&&(e.moduleIds=!0),e.basename=q.default.basename(e.filename,q.default.extname(e.filename)),e.ignore=W.arrayify(e.ignore,W.regexify),e.only&&(e.only=W.arrayify(e.only,W.regexify)),(0,M.default)(e,{moduleRoot:e.sourceRoot}),(0,M.default)(e,{sourceRoot:e.moduleRoot}),(0,M.default)(e,{filenameRelative:e.filename});var t=q.default.basename(e.filenameRelative);return(0,M.default)(e,{sourceFileName:t,sourceMapTarget:t}),e},n.prototype.buildPluginsForOptions=function(e){if(Array.isArray(e.plugins)){for(var t=e.plugins.concat(te),r=[],n=[],i=t,s=Array.isArray(i),o=0,i=s?i:(0,a.default)(i);;){var u;if(s){if(o>=i.length)break;u=i[o++]}else{if(o=i.next(),o.done)break;u=o.value}var l=u,c=l[0],f=l[1];r.push(c.visitor),n.push(new C.default(this,c,f)),c.manipulateOptions&&c.manipulateOptions(e,this.parserOpts,this)}this.pluginVisitors.push(r),this.pluginPasses.push(n)}},n.prototype.getModuleName=function(){var e=this.opts;if(!e.moduleIds)return null;if(null!=e.moduleId&&!e.getModuleId)return e.moduleId;var t=e.filenameRelative,r="";if(null!=e.moduleRoot&&(r=e.moduleRoot+"/"),!e.filenameRelative)return r+e.filename.replace(/^\//,"");if(null!=e.sourceRoot){var n=new RegExp("^"+e.sourceRoot+"/?");t=t.replace(n,"")}return t=t.replace(/\.(\w*?)$/,""),r+=t,r=r.replace(/\\/g,"/"),e.getModuleId?e.getModuleId(r)||r:r},n.prototype.resolveModuleSource=function(e){var t=this.opts.resolveModuleSource;return t&&(e=t(e,this.opts.filename)),e},n.prototype.addImport=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:t,n=e+":"+t,i=this.dynamicImportIds[n];if(!i){e=this.resolveModuleSource(e),i=this.dynamicImportIds[n]=this.scope.generateUidIdentifier(r);var s=[];"*"===t?s.push(H.importNamespaceSpecifier(i)):"default"===t?s.push(H.importDefaultSpecifier(i)):s.push(H.importSpecifier(i,H.identifier(t)));var a=H.importDeclaration(s,H.stringLiteral(e));a._blockHoist=3,this.path.unshiftContainer("body",a)}return i},n.prototype.addHelper=function(e){var t=this.declarations[e];if(t)return t;this.usedHelpers[e]||(this.metadata.usedHelpers.push(e),this.usedHelpers[e]=!0);var r=this.get("helperGenerator"),n=this.get("helpersNamespace");if(r){var i=r(e);if(i)return i}else if(n)return H.memberExpression(n,H.identifier(e));var s=(0,g.default)(e),a=this.declarations[e]=this.scope.generateUidIdentifier(e);return H.isFunctionExpression(s)&&!s.id?(s.body._compact=!0,s._generated=!0,s.id=a,s.type="FunctionDeclaration",this.path.unshiftContainer("body",s)):(s._compact=!0,this.scope.push({id:a,init:s,unique:!0})),a},n.prototype.addTemplateObject=function(e,t,r){var n=r.elements.map(function(e){return e.value}),i=e+"_"+r.elements.length+"_"+n.join(","),s=this.declarations[i];if(s)return s;var a=this.declarations[i]=this.scope.generateUidIdentifier("templateObject"),o=this.addHelper(e),u=H.callExpression(o,[t,r]);return u._compact=!0,this.scope.push({id:a,init:u,_blockHoist:1.9}),a},n.prototype.buildCodeFrameError=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:SyntaxError,n=e&&(e.loc||e._loc),i=new r(t);return n?i.loc=n.start:((0,P.default)(e,re,this.scope,i),i.message+=" (This is an error on an internal node. Probably an internal error",i.loc&&(i.message+=". Location has been estimated."),i.message+=")"),i},n.prototype.mergeSourceMap=function(e){var t=this.opts.inputSourceMap;if(t){var r=new F.default.SourceMapConsumer(t),n=new F.default.SourceMapConsumer(e),i=new F.default.SourceMapGenerator({file:r.file,sourceRoot:r.sourceRoot}),s=n.sources[0];r.eachMapping(function(e){var t=n.generatedPositionFor({line:e.generatedLine,column:e.generatedColumn,source:s});null!=t.column&&i.addMapping({source:e.source,original:null==e.source?null:{line:e.originalLine,column:e.originalColumn},generated:t})});var a=i.toJSON();return t.mappings=a.mappings,t}return e},n.prototype.parse=function(t){var n=V.parse,i=this.opts.parserOpts;if(i&&(i=(0,c.default)({},this.parserOpts,i),i.parser)){if("string"==typeof i.parser){var s=q.default.dirname(this.opts.filename)||e.cwd(),a=(0,X.default)(i.parser,s);if(!a)throw new Error("Couldn't find parser "+i.parser+' with "parse" method relative to directory '+s);n=r(178)(a).parse}else n=i.parser;i.parser={parse:function(e){return(0,V.parse)(e,i)}}}this.log.debug("Parse start");var o=n(t,i||this.parserOpts);return this.log.debug("Parse stop"),o},n.prototype._addAst=function(e){this.path=w.NodePath.get({hub:this.hub,parentPath:null,parent:e,container:e,key:"program"}).setContext(),this.scope=this.path.scope,this.ast=e,this.getMetadata()},n.prototype.addAst=function(e){this.log.debug("Start set AST"),this._addAst(e),this.log.debug("End set AST")},n.prototype.transform=function(){for(var e=0;e=r.length)break;s=r[i++]}else{if(i=r.next(),i.done)break;s=i.value}var o=s,u=o.plugin,l=u[e];l&&l.call(o,this)}},n.prototype.parseInputSourceMap=function(e){var t=this.opts;if(!1!==t.inputSourceMap){var r=A.default.fromSource(e);r&&(t.inputSourceMap=r.toObject(),e=A.default.removeComments(e))}return e},n.prototype.parseShebang=function(){var e=ee.exec(this.code);e&&(this.shebang=e[0],this.code=this.code.replace(ee,""))},n.prototype.makeResult=function(e){var t=e.code,r=e.map,n=e.ast,i=e.ignored,s={metadata:null,options:this.opts,ignored:!!i,code:null,ast:null,map:r||null};return this.opts.code&&(s.code=t),this.opts.ast&&(s.ast=n),this.opts.metadata&&(s.metadata=this.metadata),s},n.prototype.generate=function(){var t=this.opts,n=this.ast,i={ast:n};if(!t.code)return this.makeResult(i);var s=O.default;if(t.generatorOpts.generator&&"string"==typeof(s=t.generatorOpts.generator)){var a=q.default.dirname(this.opts.filename)||e.cwd(),o=(0,X.default)(s,a);if(!o)throw new Error("Couldn't find generator "+s+' with "print" method relative to directory '+a);s=r(178)(o).print}this.log.debug("Generation start");var u=s(n,t.generatorOpts?(0,c.default)(t,t.generatorOpts):t,this.code);return i.code=u.code,i.map=u.map,this.log.debug("Generation end"),this.shebang&&(i.code=this.shebang+"\n"+i.code),i.map&&(i.map=this.mergeSourceMap(i.map)),"inline"!==t.sourceMaps&&"both"!==t.sourceMaps||(i.code+="\n"+A.default.fromObject(i.map).toComment()),"inline"===t.sourceMaps&&(i.map=null),this.makeResult(i)},n}(U.default);t.default=ne,t.File=ne}).call(t,r(8))},function(e,t,r){(function(n){"use strict";function i(e){return e&&e.__esModule?e:{default:e}}function s(e){var t=x[e];return null==t?x[e]=E.default.existsSync(e):t}function a(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},t=arguments[1],r=e.filename,n=new S(t);return!1!==e.babelrc&&n.findConfigs(r),n.mergeConfig({options:e,alias:"base",dirname:r&&g.default.dirname(r)}),n.configs}t.__esModule=!0;var o=r(87),u=i(o),l=r(3),c=i(l);t.default=a;var f=r(118),p=i(f),d=r(470),h=i(d),m=r(604),y=i(m),v=r(19),g=i(v),b=r(115),E=i(b),x={},A={},S=function(){function e(t){(0,c.default)(this,e),this.resolvedConfigs=[],this.configs=[],this.log=t}return e.prototype.findConfigs=function(e){if(e){(0,y.default)(e)||(e=g.default.join(n.cwd(),e));for(var t=!1,r=!1;e!==(e=g.default.dirname(e));){if(!t){var i=g.default.join(e,".babelrc");s(i)&&(this.addConfig(i),t=!0);var a=g.default.join(e,"package.json");!t&&s(a)&&(t=this.addConfig(a,"babel",JSON))}if(!r){var o=g.default.join(e,".babelignore");s(o)&&(this.addIgnoreConfig(o),r=!0)}if(r&&t)return}}},e.prototype.addIgnoreConfig=function(e){var t=E.default.readFileSync(e,"utf8"),r=t.split("\n");r=r.map(function(e){return e.replace(/#(.*?)$/,"").trim()}).filter(function(e){return!!e}),r.length&&this.mergeConfig({options:{ignore:r},alias:e,dirname:g.default.dirname(e)})},e.prototype.addConfig=function(e,t){var r=arguments.length>2&&void 0!==arguments[2]?arguments[2]:h.default;if(this.resolvedConfigs.indexOf(e)>=0)return!1
-;this.resolvedConfigs.push(e);var n=E.default.readFileSync(e,"utf8"),i=void 0;try{i=A[n]=A[n]||r.parse(n),t&&(i=i[t])}catch(t){throw t.message=e+": Error while parsing JSON - "+t.message,t}return this.mergeConfig({options:i,alias:e,dirname:g.default.dirname(e)}),!!i},e.prototype.mergeConfig=function(e){var t=e.options,r=e.alias,i=e.loc,s=e.dirname;if(!t)return!1;if(t=(0,u.default)({},t),s=s||n.cwd(),i=i||r,t.extends){var a=(0,p.default)(t.extends,s);a?this.addConfig(a):this.log&&this.log.error("Couldn't resolve extends clause of "+t.extends+" in "+r),delete t.extends}this.configs.push({options:t,alias:r,loc:i,dirname:s});var o=void 0,l=n.env.BABEL_ENV||"production"||"development";t.env&&(o=t.env[l],delete t.env),this.mergeConfig({options:o,alias:r+".env."+l,dirname:s})},e}();e.exports=t.default}).call(t,r(8))},function(e,t,r){"use strict";function n(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};for(var t in e){var r=e[t];if(null!=r){var n=o.default[t];if(n&&n.alias&&(n=o.default[n.alias]),n){var i=s[n.type];i&&(r=i(r)),e[t]=r}}}return e}t.__esModule=!0,t.config=void 0,t.normaliseOptions=n;var i=r(53),s=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(i),a=r(33),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.config=o.default},function(e,t,r){"use strict";function n(e){return!!e}function i(e){return l.booleanify(e)}function s(e){return l.list(e)}t.__esModule=!0,t.filename=void 0,t.boolean=n,t.booleanString=i,t.list=s;var a=r(284),o=function(e){return e&&e.__esModule?e:{default:e}}(a),u=r(122),l=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(u);t.filename=o.default},function(e,t){"use strict";e.exports={auxiliaryComment:{message:"Use `auxiliaryCommentBefore` or `auxiliaryCommentAfter`"},blacklist:{message:"Put the specific transforms you want in the `plugins` option"},breakConfig:{message:"This is not a necessary option in Babel 6"},experimental:{message:"Put the specific transforms you want in the `plugins` option"},externalHelpers:{message:"Use the `external-helpers` plugin instead. Check out http://babeljs.io/docs/plugins/external-helpers/"},extra:{message:""},jsxPragma:{message:"use the `pragma` option in the `react-jsx` plugin . Check out http://babeljs.io/docs/plugins/transform-react-jsx/"},loose:{message:"Specify the `loose` option for the relevant plugin you are using or use a preset that sets the option."},metadataUsedHelpers:{message:"Not required anymore as this is enabled by default"},modules:{message:"Use the corresponding module transform plugin in the `plugins` option. Check out http://babeljs.io/docs/plugins/#modules"},nonStandard:{message:"Use the `react-jsx` and `flow-strip-types` plugins to support JSX and Flow. Also check out the react preset http://babeljs.io/docs/plugins/preset-react/"},optional:{message:"Put the specific transforms you want in the `plugins` option"},sourceMapName:{message:"Use the `sourceMapTarget` option"},stage:{message:"Check out the corresponding stage-x presets http://babeljs.io/docs/plugins/#presets"},whitelist:{message:"Put the specific transforms you want in the `plugins` option"}}},function(e,t,r){"use strict";var n=r(43),i=r(428),s=r(427),a=r(21),o=r(153),u=r(238),l={},c={},f=e.exports=function(e,t,r,f,p){var d,h,m,y,v=p?function(){return e}:u(e),g=n(r,f,t?2:1),b=0;if("function"!=typeof v)throw TypeError(e+" is not iterable!");if(s(v)){for(d=o(e.length);d>b;b++)if((y=t?g(a(h=e[b])[0],h[1]):g(e[b]))===l||y===c)return y}else for(m=v.call(e);!(h=m.next()).done;)if((y=i(m,g,h.value,t))===l||y===c)return y};f.BREAK=l,f.RETURN=c},function(e,t){"use strict";e.exports={}},function(e,t,r){"use strict";var n="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},i=r(95)("meta"),s=r(16),a=r(28),o=r(23).f,u=0,l=Object.isExtensible||function(){return!0},c=!r(27)(function(){return l(Object.preventExtensions({}))}),f=function(e){o(e,i,{value:{i:"O"+ ++u,w:{}}})},p=function(e,t){if(!s(e))return"symbol"==(void 0===e?"undefined":n(e))?e:("string"==typeof e?"S":"P")+e;if(!a(e,i)){if(!l(e))return"F";if(!t)return"E";f(e)}return e[i].i},d=function(e,t){if(!a(e,i)){if(!l(e))return!0;if(!t)return!1;f(e)}return e[i].w},h=function(e){return c&&m.NEED&&l(e)&&!a(e,i)&&f(e),e},m=e.exports={KEY:i,NEED:!1,fastKey:p,getWeak:d,onFreeze:h}},function(e,t,r){"use strict";var n=r(16);e.exports=function(e,t){if(!n(e)||e._t!==t)throw TypeError("Incompatible receiver, "+t+" required!");return e}},function(e,t,r){"use strict";r(440);for(var n=r(15),i=r(29),s=r(56),a=r(13)("toStringTag"),o="CSSRuleList,CSSStyleDeclaration,CSSValueList,ClientRectList,DOMRectList,DOMStringList,DOMTokenList,DataTransferItemList,FileList,HTMLAllCollection,HTMLCollection,HTMLFormElement,HTMLSelectElement,MediaList,MimeTypeArray,NamedNodeMap,NodeList,PaintRequestList,Plugin,PluginArray,SVGLengthList,SVGNumberList,SVGPathSegList,SVGPointList,SVGStringList,SVGTransformList,SourceBufferList,StyleSheetList,TextTrackCueList,TextTrackList,TouchList".split(","),u=0;u=0;c--)a=u[c],"."===a?u.splice(c,1):".."===a?l++:l>0&&(""===a?(u.splice(c+1,l),l=0):(u.splice(c,2),l--));return r=u.join("/"),""===r&&(r=o?"/":"."),s?(s.path=r,i(s)):r}function a(e,t){""===e&&(e="."),""===t&&(t=".");var r=n(t),a=n(e);if(a&&(e=a.path||"/"),r&&!r.scheme)return a&&(r.scheme=a.scheme),i(r);if(r||t.match(v))return t;if(a&&!a.host&&!a.path)return a.host=t,i(a);var o="/"===t.charAt(0)?t:s(e.replace(/\/+$/,"")+"/"+t);return a?(a.path=o,i(a)):o}function o(e,t){""===e&&(e="."),e=e.replace(/\/$/,"");for(var r=0;0!==t.indexOf(e+"/");){var n=e.lastIndexOf("/");if(n<0)return t;if(e=e.slice(0,n),e.match(/^([^\/]+:\/)?\/*$/))return t;++r}return Array(r+1).join("../")+t.substr(e.length+1)}function u(e){return e}function l(e){return f(e)?"$"+e:e}function c(e){return f(e)?e.slice(1):e}function f(e){if(!e)return!1;var t=e.length;if(t<9)return!1;if(95!==e.charCodeAt(t-1)||95!==e.charCodeAt(t-2)||111!==e.charCodeAt(t-3)||116!==e.charCodeAt(t-4)||111!==e.charCodeAt(t-5)||114!==e.charCodeAt(t-6)||112!==e.charCodeAt(t-7)||95!==e.charCodeAt(t-8)||95!==e.charCodeAt(t-9))return!1;for(var r=t-10;r>=0;r--)if(36!==e.charCodeAt(r))return!1;return!0}function p(e,t,r){var n=e.source-t.source;return 0!==n?n:0!==(n=e.originalLine-t.originalLine)?n:0!==(n=e.originalColumn-t.originalColumn)||r?n:0!==(n=e.generatedColumn-t.generatedColumn)?n:(n=e.generatedLine-t.generatedLine,0!==n?n:e.name-t.name)}function d(e,t,r){var n=e.generatedLine-t.generatedLine;return 0!==n?n:0!==(n=e.generatedColumn-t.generatedColumn)||r?n:0!==(n=e.source-t.source)?n:0!==(n=e.originalLine-t.originalLine)?n:(n=e.originalColumn-t.originalColumn,0!==n?n:e.name-t.name)}function h(e,t){return e===t?0:e>t?1:-1}function m(e,t){var r=e.generatedLine-t.generatedLine;return 0!==r?r:0!==(r=e.generatedColumn-t.generatedColumn)?r:0!==(r=h(e.source,t.source))?r:0!==(r=e.originalLine-t.originalLine)?r:(r=e.originalColumn-t.originalColumn,0!==r?r:h(e.name,t.name))}t.getArg=r;var y=/^(?:([\w+\-.]+):)?\/\/(?:(\w+:\w+)@)?([\w.]*)(?::(\d+))?(\S*)$/,v=/^data:.+\,.+$/;t.urlParse=n,t.urlGenerate=i,t.normalize=s,t.join=a,t.isAbsolute=function(e){return"/"===e.charAt(0)||!!e.match(y)},t.relative=o;var g=function(){return!("__proto__"in Object.create(null))}();t.toSetString=g?u:l,t.fromSetString=g?u:c,t.compareByOriginalPositions=p,t.compareByGeneratedPositionsDeflated=d,t.compareByGeneratedPositionsInflated=m},function(e,t,r){(function(t){"use strict";function n(e,t){if(e===t)return 0;for(var r=e.length,n=t.length,i=0,s=Math.min(r,n);i=0;o--)if(u[o]!==l[o])return!1;for(o=u.length-1;o>=0;o--)if(a=u[o],!d(e[a],t[a],r,n))return!1;return!0}function y(e,t,r){d(e,t,!0)&&f(e,t,r,"notDeepStrictEqual",y)}function v(e,t){if(!e||!t)return!1;if("[object RegExp]"==Object.prototype.toString.call(t))return t.test(e);try{if(e instanceof t)return!0}catch(e){}return!Error.isPrototypeOf(t)&&!0===t.call({},e)}function g(e){var t;try{e()}catch(e){t=e}return t}function b(e,t,r,n){var i;if("function"!=typeof t)throw new TypeError('"block" argument must be a function');"string"==typeof r&&(n=r,r=null),i=g(t),n=(r&&r.name?" ("+r.name+").":".")+(n?" "+n:"."),e&&!i&&f(i,r,"Missing expected exception"+n);var s="string"==typeof n,a=!e&&x.isError(i),o=!e&&i&&!r;if((a&&s&&v(i,r)||o)&&f(i,r,"Got unwanted exception"+n),e&&i&&r&&!v(i,r)||!e&&i)throw i}var E="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e},x=r(117),A=Object.prototype.hasOwnProperty,S=Array.prototype.slice,_=function(){return"foo"===function(){}.name}(),D=e.exports=p,C=/\s*function\s+([^\(\s]*)\s*/;D.AssertionError=function(e){this.name="AssertionError",this.actual=e.actual,this.expected=e.expected,this.operator=e.operator,e.message?(this.message=e.message,this.generatedMessage=!1):(this.message=c(this),this.generatedMessage=!0);var t=e.stackStartFunction||f;if(Error.captureStackTrace)Error.captureStackTrace(this,t);else{var r=new Error;if(r.stack){var n=r.stack,i=o(t),s=n.indexOf("\n"+i);if(s>=0){var a=n.indexOf("\n",s+1);n=n.substring(a+1)}this.stack=n}}},x.inherits(D.AssertionError,Error),D.fail=f,D.ok=p,D.equal=function(e,t,r){e!=t&&f(e,t,r,"==",D.equal)},D.notEqual=function(e,t,r){e==t&&f(e,t,r,"!=",D.notEqual)},D.deepEqual=function(e,t,r){d(e,t,!1)||f(e,t,r,"deepEqual",D.deepEqual)},D.deepStrictEqual=function(e,t,r){d(e,t,!0)||f(e,t,r,"deepStrictEqual",D.deepStrictEqual)},D.notDeepEqual=function(e,t,r){d(e,t,!1)&&f(e,t,r,"notDeepEqual",D.notDeepEqual)},D.notDeepStrictEqual=y,D.strictEqual=function(e,t,r){e!==t&&f(e,t,r,"===",D.strictEqual)},D.notStrictEqual=function(e,t,r){e===t&&f(e,t,r,"!==",D.notStrictEqual)},D.throws=function(e,t,r){b(!0,e,t,r)},D.doesNotThrow=function(e,t,r){b(!1,e,t,r)},D.ifError=function(e){if(e)throw e};var w=Object.keys||function(e){var t=[];for(var r in e)A.call(e,r)&&t.push(r);return t}}).call(t,function(){return this}())},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=r(2),s=n(i),a=r(3),o=n(a),u=r(42),l=n(u),c=r(41),f=n(c),p=r(34),d=n(p),h=r(20),m=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(h),y=r(119),v=n(y),g=r(7),b=n(g),E=r(174),x=n(E),A=r(109),S=n(A),_=["enter","exit"],D=function(e){function t(r,n){(0,o.default)(this,t);var i=(0,l.default)(this,e.call(this));return i.initialized=!1,i.raw=(0,x.default)({},r),i.key=i.take("name")||n,i.manipulateOptions=i.take("manipulateOptions"),i.post=i.take("post"),i.pre=i.take("pre"),i.visitor=i.normaliseVisitor((0,S.default)(i.take("visitor"))||{}),i}return(0,f.default)(t,e),t.prototype.take=function(e){var t=this.raw[e];return delete this.raw[e],t},t.prototype.chain=function(e,t){if(!e[t])return this[t];if(!this[t])return e[t];var r=[e[t],this[t]];return function(){for(var e=void 0,t=arguments.length,n=Array(t),i=0;i=a.length)break;l=a[u++]}else{if(u=a.next(),u.done)break;l=u.value}var c=l;if(c){var f=c.apply(this,n);null!=f&&(e=f)}}return e}},t.prototype.maybeInherit=function(e){var t=this.take("inherits");t&&(t=d.default.normalisePlugin(t,e,"inherits"),this.manipulateOptions=this.chain(t,"manipulateOptions"),this.post=this.chain(t,"post"),this.pre=this.chain(t,"pre"),this.visitor=b.default.visitors.merge([t.visitor,this.visitor]))},t.prototype.init=function(e,t){if(!this.initialized){this.initialized=!0,this.maybeInherit(e);for(var r in this.raw)throw new Error(m.get("pluginInvalidProperty",e,t,r))}},t.prototype.normaliseVisitor=function(e){for(var t=_,r=Array.isArray(t),n=0,t=r?t:(0,s.default)(t);;){var i;if(r){if(n>=t.length)break;i=t[n++]}else{if(n=t.next(),n.done)break;i=n.value}if(e[i])throw new Error("Plugins aren't allowed to specify catch-all enter/exit handlers. Please target individual nodes.")}return b.default.explode(e),e},t}(v.default);t.default=D,e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0;var n=r(2),i=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=function(e){var t=e.messages;return{visitor:{Scope:function(e){var r=e.scope;for(var n in r.bindings){var s=r.bindings[n];if("const"===s.kind||"module"===s.kind)for(var a=s.constantViolations,o=Array.isArray(a),u=0,a=o?a:(0,i.default)(a);;){var l;if(o){if(u>=a.length)break;l=a[u++]}else{if(u=a.next(),u.done)break;l=u.value}var c=l;throw c.buildCodeFrameError(t.get("readOnly",n))}}}}}},e.exports=t.default},function(e,t){"use strict";t.__esModule=!0,t.default=function(){return{manipulateOptions:function(e,t){t.plugins.push("asyncFunctions")}}},e.exports=t.default},function(e,t){"use strict";t.__esModule=!0,t.default=function(e){var t=e.types;return{visitor:{ArrowFunctionExpression:function(e,r){if(r.opts.spec){var n=e.node;if(n.shadow)return;n.shadow={this:!1},n.type="FunctionExpression";var i=t.thisExpression();i._forceShadow=e,e.ensureBlock(),e.get("body").unshiftContainer("body",t.expressionStatement(t.callExpression(r.addHelper("newArrowCheck"),[t.thisExpression(),i]))),e.replaceWith(t.callExpression(t.memberExpression(n,t.identifier("bind")),[t.thisExpression()]))}else e.arrowFunctionToShadowed()}}}},e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0;var n=r(2),i=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=function(e){function t(e,t){for(var n=t.get(e),s=n,a=Array.isArray(s),o=0,s=a?s:(0,i.default)(s);;){var u;if(a){if(o>=s.length)break;u=s[o++]}else{if(o=s.next(),o.done)break;u=o.value}var l=u,c=l.node;if(l.isFunctionDeclaration()){var f=r.variableDeclaration("let",[r.variableDeclarator(c.id,r.toExpression(c))]);f._blockHoist=2,c.id=null,l.replaceWith(f)}}}var r=e.types;return{visitor:{BlockStatement:function(e){var n=e.node,i=e.parent;r.isFunction(i,{body:n})||r.isExportDeclaration(i)||t("body",e)},SwitchCase:function(e){t("consequent",e)}}}},e.exports=t.default},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}function i(e){return b.isLoop(e.parent)||b.isCatchClause(e.parent)}function s(e){return!!b.isVariableDeclaration(e)&&(!!e[b.BLOCK_SCOPED_SYMBOL]||("let"===e.kind||"const"===e.kind))}function a(e,t,r,n){var i=arguments.length>4&&void 0!==arguments[4]&&arguments[4];if(t||(t=e.node),!b.isFor(r))for(var s=0;s0&&e.traverse(P,t),e.skip()}},v.visitor]),P=y.default.visitors.merge([{ReferencedIdentifier:function(e,t){var r=t.letReferences[e.node.name];if(r){var n=e.scope.getBindingIdentifier(e.node.name);n&&n!==r||(t.closurify=!0)}}},v.visitor]),k={enter:function(e,t){var r=e.node;e.parent;if(e.isForStatement()){if(o(r.init)){var n=t.pushDeclar(r.init);1===n.length?r.init=n[0]:r.init=b.sequenceExpression(n)}}else if(e.isFor())o(r.left)&&(t.pushDeclar(r.left),r.left=r.left.declarations[0].id);else if(o(r))e.replaceWithMultiple(t.pushDeclar(r).map(function(e){return b.expressionStatement(e)}));else if(e.isFunction())return e.skip()}},F={LabeledStatement:function(e,t){var r=e.node;t.innerLabels.push(r.label.name)}},T={enter:function(e,t){if(e.isAssignmentExpression()||e.isUpdateExpression()){var r=e.getBindingIdentifiers();for(var n in r)t.outsideReferences[n]===e.scope.getBindingIdentifier(n)&&(t.reassignments[n]=!0)}}},O={Loop:function(e,t){var r=t.ignoreLabeless;t.ignoreLabeless=!0,e.traverse(O,t),t.ignoreLabeless=r,e.skip()},Function:function(e){e.skip()},SwitchCase:function(e,t){var r=t.inSwitchCase;t.inSwitchCase=!0,e.traverse(O,t),t.inSwitchCase=r,e.skip()},"BreakStatement|ContinueStatement|ReturnStatement":function(e,t){var r=e.node,n=e.parent,i=e.scope;if(!r[this.LOOP_IGNORE]){var s=void 0,a=u(r);if(a){if(r.label){if(t.innerLabels.indexOf(r.label.name)>=0)return;a=a+"|"+r.label.name}else{if(t.ignoreLabeless)return;if(t.inSwitchCase)return;if(b.isBreakStatement(r)&&b.isSwitchCase(n))return}t.hasBreakContinue=!0,t.map[a]=r,s=b.stringLiteral(a)}e.isReturnStatement()&&(t.hasReturn=!0,s=b.objectExpression([b.objectProperty(b.identifier("v"),r.argument||i.buildUndefinedNode())])),s&&(s=b.returnStatement(s),s[this.LOOP_IGNORE]=!0,e.skip(),e.replaceWith(b.inherits(s,r)))}}},B=function(){function e(t,r,n,i,s){(0,h.default)(this,e),this.parent=n,this.scope=i,this.file=s,this.blockPath=r,this.block=r.node,this.outsideLetReferences=(0,p.default)(null),this.hasLetReferences=!1,this.letReferences=(0,p.default)(null),this.body=[],t&&(this.loopParent=t.parent,this.loopLabel=b.isLabeledStatement(this.loopParent)&&this.loopParent.label,this.loopPath=t,this.loop=t.node)}return e.prototype.run=function(){var e=this.block;if(!e._letDone){e._letDone=!0;var t=this.getLetReferences();if(b.isFunction(this.parent)||b.isProgram(this.block))return void this.updateScopeInfo();if(this.hasLetReferences)return t?this.wrapClosure():this.remap(),this.updateScopeInfo(t),this.loopLabel&&!b.isLabeledStatement(this.loopParent)?b.labeledStatement(this.loopLabel,this.loop):void 0}},e.prototype.updateScopeInfo=function(e){var t=this.scope,r=t.getFunctionParent(),n=this.letReferences;for(var i in n){var s=n[i],a=t.getBinding(s.name);a&&("let"!==a.kind&&"const"!==a.kind||(a.kind="var",e?t.removeBinding(s.name):t.moveBindingTo(s.name,r)))}},e.prototype.remap=function(){var e=this.letReferences,t=this.scope;for(var r in e){var n=e[r];(t.parentHasBinding(r)||t.hasGlobal(r))&&(t.hasOwnBinding(r)&&t.rename(n.name),this.blockPath.scope.hasOwnBinding(r)&&this.blockPath.scope.rename(n.name))}},e.prototype.wrapClosure=function(){if(this.file.opts.throwIfClosureRequired)throw this.blockPath.buildCodeFrameError("Compiling let/const in this block would add a closure (throwIfClosureRequired).");var e=this.block,t=this.outsideLetReferences;if(this.loop)for(var r in t){var n=t[r];(this.scope.hasGlobal(n.name)||this.scope.parentHasBinding(n.name))&&(delete t[n.name],delete this.letReferences[n.name],this.scope.rename(n.name),this.letReferences[n.name]=n,t[n.name]=n)}this.has=this.checkLoop(),this.hoistVarDeclarations();var i=(0,x.default)(t),s=(0,x.default)(t),a=this.blockPath.isSwitchStatement(),o=b.functionExpression(null,i,b.blockStatement(a?[e]:e.body));o.shadow=!0,this.addContinuations(o);var u=o;this.loop&&(u=this.scope.generateUidIdentifier("loop"),this.loopPath.insertBefore(b.variableDeclaration("var",[b.variableDeclarator(u,o)])));var l=b.callExpression(u,s),c=this.scope.generateUidIdentifier("ret");y.default.hasType(o.body,this.scope,"YieldExpression",b.FUNCTION_TYPES)&&(o.generator=!0,l=b.yieldExpression(l,!0)),y.default.hasType(o.body,this.scope,"AwaitExpression",b.FUNCTION_TYPES)&&(o.async=!0,l=b.awaitExpression(l)),this.buildClosure(c,l),a?this.blockPath.replaceWithMultiple(this.body):e.body=this.body},e.prototype.buildClosure=function(e,t){var r=this.has;r.hasReturn||r.hasBreakContinue?this.buildHas(e,t):this.body.push(b.expressionStatement(t))},e.prototype.addContinuations=function(e){var t={reassignments:{},outsideReferences:this.outsideLetReferences};this.scope.traverse(e,T,t);for(var r=0;r=t.length)break;o=t[a++]}else{if(a=t.next(),a.done)break;o=a.value}var u=o;"get"===u.kind||"set"===u.kind?n(e,u):r(e.objId,u,e.body)}}function a(e){for(var s=e.objId,a=e.body,u=e.computedProps,l=e.state,c=u,f=Array.isArray(c),p=0,c=f?c:(0,i.default)(c);;){var d;if(f){if(p>=c.length)break;d=c[p++]}else{if(p=c.next(),p.done)break;d=p.value}var h=d,m=o.toComputedKey(h);if("get"===h.kind||"set"===h.kind)n(e,h);else if(o.isStringLiteral(m,{value:"__proto__"}))r(s,h,a);else{if(1===u.length)return o.callExpression(l.addHelper("defineProperty"),[e.initPropExpression,m,t(h)]);a.push(o.expressionStatement(o.callExpression(l.addHelper("defineProperty"),[s,m,t(h)])))}}}var o=e.types,u=e.template,l=u("\n MUTATOR_MAP_REF[KEY] = MUTATOR_MAP_REF[KEY] || {};\n MUTATOR_MAP_REF[KEY].KIND = VALUE;\n ");return{visitor:{ObjectExpression:{exit:function(e,t){for(var r=e.node,n=e.parent,u=e.scope,l=!1,c=r.properties,f=Array.isArray(c),p=0,c=f?c:(0,i.default)(c);;){var d;if(f){if(p>=c.length)break;d=c[p++]}else{if(p=c.next(),p.done)break;d=p.value}if(l=!0===d.computed)break}if(l){for(var h=[],m=[],y=!1,v=r.properties,g=Array.isArray(v),b=0,v=g?v:(0,i.default)(v);;){var E;if(g){if(b>=v.length)break;E=v[b++]}else{if(b=v.next(),b.done)break;E=b.value}var x=E;x.computed&&(y=!0),y?m.push(x):h.push(x)}var A=u.generateUidIdentifierBasedOnNode(n),S=o.objectExpression(h),_=[];_.push(o.variableDeclaration("var",[o.variableDeclarator(A,S)]));var D=a;t.opts.loose&&(D=s);var C=void 0,w=function(){return C||(C=u.generateUidIdentifier("mutatorMap"),_.push(o.variableDeclaration("var",[o.variableDeclarator(C,o.objectExpression([]))]))),C},P=D({scope:u,objId:A,body:_,computedProps:m,initPropExpression:S,getMutatorId:w,state:t});C&&_.push(o.expressionStatement(o.callExpression(t.addHelper("defineEnumerableProperties"),[A,C]))),P?e.replaceWith(P):(_.push(o.expressionStatement(A)),e.replaceWithMultiple(_))}}}}}},e.exports=t.default},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=r(3),s=n(i),a=r(2),o=n(a);t.default=function(e){function t(e){for(var t=e.declarations,r=Array.isArray(t),i=0,t=r?t:(0,o.default)(t);;){var s;if(r){if(i>=t.length)break;s=t[i++]}else{if(i=t.next(),i.done)break;s=i.value}var a=s;if(n.isPattern(a.id))return!0}return!1}function r(e){for(var t=e.elements,r=Array.isArray(t),i=0,t=r?t:(0,o.default)(t);;){var s;if(r){if(i>=t.length)break;s=t[i++]}else{if(i=t.next(),i.done)break;s=i.value}var a=s;if(n.isRestElement(a))return!0}return!1}var n=e.types,i={ReferencedIdentifier:function(e,t){t.bindings[e.node.name]&&(t.deopt=!0,e.stop())}},a=function(){function e(t){(0,s.default)(this,e),this.blockHoist=t.blockHoist,this.operator=t.operator,this.arrays={},this.nodes=t.nodes||[],this.scope=t.scope,this.file=t.file,this.kind=t.kind}
-return e.prototype.buildVariableAssignment=function(e,t){var r=this.operator;n.isMemberExpression(e)&&(r="=");var i=void 0;return i=r?n.expressionStatement(n.assignmentExpression(r,e,t)):n.variableDeclaration(this.kind,[n.variableDeclarator(e,t)]),i._blockHoist=this.blockHoist,i},e.prototype.buildVariableDeclaration=function(e,t){var r=n.variableDeclaration("var",[n.variableDeclarator(e,t)]);return r._blockHoist=this.blockHoist,r},e.prototype.push=function(e,t){n.isObjectPattern(e)?this.pushObjectPattern(e,t):n.isArrayPattern(e)?this.pushArrayPattern(e,t):n.isAssignmentPattern(e)?this.pushAssignmentPattern(e,t):this.nodes.push(this.buildVariableAssignment(e,t))},e.prototype.toArray=function(e,t){return this.file.opts.loose||n.isIdentifier(e)&&this.arrays[e.name]?e:this.scope.toArray(e,t)},e.prototype.pushAssignmentPattern=function(e,t){var r=this.scope.generateUidIdentifierBasedOnNode(t),i=n.variableDeclaration("var",[n.variableDeclarator(r,t)]);i._blockHoist=this.blockHoist,this.nodes.push(i);var s=n.conditionalExpression(n.binaryExpression("===",r,n.identifier("undefined")),e.right,r),a=e.left;if(n.isPattern(a)){var o=n.expressionStatement(n.assignmentExpression("=",r,s));o._blockHoist=this.blockHoist,this.nodes.push(o),this.push(a,r)}else this.nodes.push(this.buildVariableAssignment(a,s))},e.prototype.pushObjectRest=function(e,t,r,i){for(var s=[],a=0;a=i)break;if(!n.isRestProperty(o)){var u=o.key;n.isIdentifier(u)&&!o.computed&&(u=n.stringLiteral(o.key.name)),s.push(u)}}s=n.arrayExpression(s);var l=n.callExpression(this.file.addHelper("objectWithoutProperties"),[t,s]);this.nodes.push(this.buildVariableAssignment(r.argument,l))},e.prototype.pushObjectProperty=function(e,t){n.isLiteral(e.key)&&(e.computed=!0);var r=e.value,i=n.memberExpression(t,e.key,e.computed);n.isPattern(r)?this.push(r,i):this.nodes.push(this.buildVariableAssignment(r,i))},e.prototype.pushObjectPattern=function(e,t){if(e.properties.length||this.nodes.push(n.expressionStatement(n.callExpression(this.file.addHelper("objectDestructuringEmpty"),[t]))),e.properties.length>1&&!this.scope.isStatic(t)){var r=this.scope.generateUidIdentifierBasedOnNode(t);this.nodes.push(this.buildVariableDeclaration(r,t)),t=r}for(var i=0;it.elements.length)){if(e.elements.length=s.length)break;l=s[u++]}else{if(u=s.next(),u.done)break;l=u.value}var c=l;if(!c)return!1;if(n.isMemberExpression(c))return!1}for(var f=t.elements,p=Array.isArray(f),d=0,f=p?f:(0,o.default)(f);;){var h;if(p){if(d>=f.length)break;h=f[d++]}else{if(d=f.next(),d.done)break;h=d.value}var m=h;if(n.isSpreadElement(m))return!1;if(n.isCallExpression(m))return!1;if(n.isMemberExpression(m))return!1}var y=n.getBindingIdentifiers(e),v={deopt:!1,bindings:y};return this.scope.traverse(t,i,v),!v.deopt}},e.prototype.pushUnpackedArrayPattern=function(e,t){for(var r=0;r=y.length)break;b=y[g++]}else{if(g=y.next(),g.done)break;b=g.value}var E=b,x=m[m.length-1];if(x&&n.isVariableDeclaration(x)&&n.isVariableDeclaration(E)&&x.kind===E.kind){var A;(A=x.declarations).push.apply(A,E.declarations)}else m.push(E)}for(var S=m,_=Array.isArray(S),D=0,S=_?S:(0,o.default)(S);;){var C;if(_){if(D>=S.length)break;C=S[D++]}else{if(D=S.next(),D.done)break;C=D.value}var w=C;if(w.declarations)for(var P=w.declarations,k=Array.isArray(P),F=0,P=k?P:(0,o.default)(P);;){var T;if(k){if(F>=P.length)break;T=P[F++]}else{if(F=P.next(),F.done)break;T=F.value}var O=T,B=O.id.name;s.bindings[B]&&(s.bindings[B].kind=w.kind)}}1===m.length?e.replaceWith(m[0]):e.replaceWithMultiple(m)}}}}},e.exports=t.default},function(e,t){"use strict";t.__esModule=!0,t.default=function(e){function t(e){var t=e.node,r=e.scope,n=[],i=t.right;if(!a.isIdentifier(i)||!r.hasBinding(i.name)){var s=r.generateUidIdentifier("arr");n.push(a.variableDeclaration("var",[a.variableDeclarator(s,i)])),i=s}var u=r.generateUidIdentifier("i"),l=o({BODY:t.body,KEY:u,ARR:i});a.inherits(l,t),a.ensureBlock(l);var c=a.memberExpression(i,u,!0),f=t.left;return a.isVariableDeclaration(f)?(f.declarations[0].init=c,l.body.body.unshift(f)):l.body.body.unshift(a.expressionStatement(a.assignmentExpression("=",f,c))),e.parentPath.isLabeledStatement()&&(l=a.labeledStatement(e.parentPath.node.label,l)),n.push(l),n}function r(e,t){var r=e.node,n=e.scope,s=e.parent,o=r.left,l=void 0,c=void 0;if(a.isIdentifier(o)||a.isPattern(o)||a.isMemberExpression(o))c=o;else{if(!a.isVariableDeclaration(o))throw t.buildCodeFrameError(o,i.get("unknownForHead",o.type));c=n.generateUidIdentifier("ref"),l=a.variableDeclaration(o.kind,[a.variableDeclarator(o.declarations[0].id,c)])}var f=n.generateUidIdentifier("iterator"),p=n.generateUidIdentifier("isArray"),d=u({LOOP_OBJECT:f,IS_ARRAY:p,OBJECT:r.right,INDEX:n.generateUidIdentifier("i"),ID:c});l||d.body.body.shift();var h=a.isLabeledStatement(s),m=void 0;return h&&(m=a.labeledStatement(s.label,d)),{replaceParent:h,declar:l,node:m||d,loop:d}}function n(e,t){var r=e.node,n=e.scope,s=e.parent,o=r.left,u=void 0,c=n.generateUidIdentifier("step"),f=a.memberExpression(c,a.identifier("value"));if(a.isIdentifier(o)||a.isPattern(o)||a.isMemberExpression(o))u=a.expressionStatement(a.assignmentExpression("=",o,f));else{if(!a.isVariableDeclaration(o))throw t.buildCodeFrameError(o,i.get("unknownForHead",o.type));u=a.variableDeclaration(o.kind,[a.variableDeclarator(o.declarations[0].id,f)])}var p=n.generateUidIdentifier("iterator"),d=l({ITERATOR_HAD_ERROR_KEY:n.generateUidIdentifier("didIteratorError"),ITERATOR_COMPLETION:n.generateUidIdentifier("iteratorNormalCompletion"),ITERATOR_ERROR_KEY:n.generateUidIdentifier("iteratorError"),ITERATOR_KEY:p,STEP_KEY:c,OBJECT:r.right,BODY:null}),h=a.isLabeledStatement(s),m=d[3].block.body,y=m[0];return h&&(m[0]=a.labeledStatement(s.label,y)),{replaceParent:h,declar:u,loop:y,node:d}}var i=e.messages,s=e.template,a=e.types,o=s("\n for (var KEY = 0; KEY < ARR.length; KEY++) BODY;\n "),u=s("\n for (var LOOP_OBJECT = OBJECT,\n IS_ARRAY = Array.isArray(LOOP_OBJECT),\n INDEX = 0,\n LOOP_OBJECT = IS_ARRAY ? LOOP_OBJECT : LOOP_OBJECT[Symbol.iterator]();;) {\n var ID;\n if (IS_ARRAY) {\n if (INDEX >= LOOP_OBJECT.length) break;\n ID = LOOP_OBJECT[INDEX++];\n } else {\n INDEX = LOOP_OBJECT.next();\n if (INDEX.done) break;\n ID = INDEX.value;\n }\n }\n "),l=s("\n var ITERATOR_COMPLETION = true;\n var ITERATOR_HAD_ERROR_KEY = false;\n var ITERATOR_ERROR_KEY = undefined;\n try {\n for (var ITERATOR_KEY = OBJECT[Symbol.iterator](), STEP_KEY; !(ITERATOR_COMPLETION = (STEP_KEY = ITERATOR_KEY.next()).done); ITERATOR_COMPLETION = true) {\n }\n } catch (err) {\n ITERATOR_HAD_ERROR_KEY = true;\n ITERATOR_ERROR_KEY = err;\n } finally {\n try {\n if (!ITERATOR_COMPLETION && ITERATOR_KEY.return) {\n ITERATOR_KEY.return();\n }\n } finally {\n if (ITERATOR_HAD_ERROR_KEY) {\n throw ITERATOR_ERROR_KEY;\n }\n }\n }\n ");return{visitor:{ForOfStatement:function(e,i){if(e.get("right").isArrayExpression())return e.parentPath.isLabeledStatement()?e.parentPath.replaceWithMultiple(t(e)):e.replaceWithMultiple(t(e));var s=n;i.opts.loose&&(s=r);var o=e.node,u=s(e,i),l=u.declar,c=u.loop,f=c.body;e.ensureBlock(),l&&f.body.push(l),f.body=f.body.concat(o.body.body),a.inherits(c,o),a.inherits(c.body,o.body),u.replaceParent?(e.parentPath.replaceWithMultiple(u.node),e.remove()):e.replaceWithMultiple(u.node)}}}},e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0,t.default=function(){return{visitor:{FunctionExpression:{exit:function(e){if("value"!==e.key&&!e.parentPath.isObjectProperty()){var t=(0,i.default)(e);t&&e.replaceWith(t)}}},ObjectProperty:function(e){var t=e.get("value");if(t.isFunction()){var r=(0,i.default)(t);r&&t.replaceWith(r)}}}}};var n=r(40),i=function(e){return e&&e.__esModule?e:{default:e}}(n);e.exports=t.default},function(e,t){"use strict";t.__esModule=!0,t.default=function(){return{visitor:{NumericLiteral:function(e){var t=e.node;t.extra&&/^0[ob]/i.test(t.extra.raw)&&(t.extra=void 0)},StringLiteral:function(e){var t=e.node;t.extra&&/\\[u]/gi.test(t.extra.raw)&&(t.extra=void 0)}}}},e.exports=t.default},function(e,t,r){"use strict";function n(e){return e&&e.__esModule?e:{default:e}}t.__esModule=!0;var i=r(14),s=n(i),a=r(9),o=n(a),u=r(2),l=n(u),c=r(10),f=n(c);t.default=function(){var e=(0,f.default)(),t={ReferencedIdentifier:function(e){var t=e.node.name,r=this.remaps[t];if(r&&this.scope.getBinding(t)===e.scope.getBinding(t)){if(e.parentPath.isCallExpression({callee:e.node}))e.replaceWith(g.sequenceExpression([g.numericLiteral(0),r]));else if(e.isJSXIdentifier()&&g.isMemberExpression(r)){var n=r.object,i=r.property;e.replaceWith(g.JSXMemberExpression(g.JSXIdentifier(n.name),g.JSXIdentifier(i.name)))}else e.replaceWith(r);this.requeueInParent(e)}},AssignmentExpression:function(t){var r=t.node;if(!r[e]){var n=t.get("left");if(n.isIdentifier()){var i=n.node.name,s=this.exports[i];if(!s)return;if(this.scope.getBinding(i)!==t.scope.getBinding(i))return;r[e]=!0;for(var a=s,o=Array.isArray(a),u=0,a=o?a:(0,l.default)(a);;){var c;if(o){if(u>=a.length)break;c=a[u++]}else{if(u=a.next(),u.done)break;c=u.value}r=S(c,r).expression}t.replaceWith(r),this.requeueInParent(t)}else if(n.isObjectPattern())for(var f=n.node.properties,p=Array.isArray(f),d=0,f=p?f:(0,l.default)(f);;){var h;if(p){if(d>=f.length)break;h=f[d++]}else{if(d=f.next(),d.done)break;h=d.value}var m=h,y=m.value.name,v=this.exports[y];if(v){if(this.scope.getBinding(y)!==t.scope.getBinding(y))return;r[e]=!0,t.insertAfter(S(g.identifier(y),g.identifier(y)))}}else if(n.isArrayPattern())for(var b=n.node.elements,E=Array.isArray(b),x=0,b=E?b:(0,l.default)(b);;){var A;if(E){if(x>=b.length)break;A=b[x++]}else{if(x=b.next(),x.done)break;A=x.value}var _=A;if(_){var D=_.name,C=this.exports[D];if(C){if(this.scope.getBinding(D)!==t.scope.getBinding(D))return;r[e]=!0,t.insertAfter(S(g.identifier(D),g.identifier(D)))}}}}},UpdateExpression:function(e){var t=e.get("argument");if(t.isIdentifier()){var r=t.node.name;if(this.exports[r]&&this.scope.getBinding(r)===e.scope.getBinding(r)){var n=g.assignmentExpression(e.node.operator[0]+"=",t.node,g.numericLiteral(1));if(e.parentPath.isExpressionStatement()&&!e.isCompletionRecord()||e.node.prefix)return e.replaceWith(n),void this.requeueInParent(e);var i=[];i.push(n);var s=void 0;s="--"===e.node.operator?"+":"-",i.push(g.binaryExpression(s,t.node,g.numericLiteral(1))),e.replaceWithMultiple(g.sequenceExpression(i))}}}};return{inherits:y.default,visitor:{ThisExpression:function(e,t){this.ranCommonJS||!0===t.opts.allowTopLevelThis||e.findParent(function(e){return!e.is("shadow")&&D.indexOf(e.type)>=0})||e.replaceWith(g.identifier("undefined"))},Program:{exit:function(e){function r(t,r){var n=C[t];if(n)return n;var i=e.scope.generateUidIdentifier((0,p.basename)(t,(0,p.extname)(t))),s=g.variableDeclaration("var",[g.variableDeclarator(i,b(g.stringLiteral(t)).expression)]);return h[t]&&(s.loc=h[t].loc),"number"==typeof r&&r>0&&(s._blockHoist=r),v.push(s),C[t]=i}function n(e,t,r){var n=e[t]||[];e[t]=n.concat(r)}this.ranCommonJS=!0;var i=!!this.opts.strict,a=!!this.opts.noInterop,u=e.scope;u.rename("module"),u.rename("exports"),u.rename("require");for(var c=!1,f=!1,d=e.get("body"),h=(0,o.default)(null),m=(0,o.default)(null),y=(0,o.default)(null),v=[],D=(0,o.default)(null),C=(0,o.default)(null),w=d,P=Array.isArray(w),k=0,w=P?w:(0,l.default)(w);;){var F;if(P){if(k>=w.length)break;F=w[k++]}else{if(k=w.next(),k.done)break;F=k.value}var T=F;if(T.isExportDeclaration()){c=!0;for(var O=[].concat(T.get("declaration"),T.get("specifiers")),B=O,R=Array.isArray(B),I=0,B=R?B:(0,l.default)(B);;){var M;if(R){if(I>=B.length)break;M=B[I++]}else{if(I=B.next(),I.done)break;M=I.value}var N=M;if(N.getBindingIdentifiers().__esModule)throw N.buildCodeFrameError('Illegal export "__esModule"')}}if(T.isImportDeclaration()){var L;f=!0;var j=T.node.source.value,U=h[j]||{specifiers:[],maxBlockHoist:0,loc:T.node.loc};(L=U.specifiers).push.apply(L,T.node.specifiers),"number"==typeof T.node._blockHoist&&(U.maxBlockHoist=Math.max(T.node._blockHoist,U.maxBlockHoist)),h[j]=U,T.remove()}else if(T.isExportDefaultDeclaration()){var V=T.get("declaration");if(V.isFunctionDeclaration()){var G=V.node.id,W=g.identifier("default");G?(n(m,G.name,W),v.push(S(W,G)),T.replaceWith(V.node)):(v.push(S(W,g.toExpression(V.node))),T.remove())}else if(V.isClassDeclaration()){var Y=V.node.id,q=g.identifier("default");Y?(n(m,Y.name,q),T.replaceWithMultiple([V.node,S(q,Y)])):(T.replaceWith(S(q,g.toExpression(V.node))),T.parentPath.requeue(T.get("expression.left")))}else T.replaceWith(S(g.identifier("default"),V.node)),T.parentPath.requeue(T.get("expression.left"))}else if(T.isExportNamedDeclaration()){var K=T.get("declaration");if(K.node){if(K.isFunctionDeclaration()){var H=K.node.id;n(m,H.name,H),v.push(S(H,H)),T.replaceWith(K.node)}else if(K.isClassDeclaration()){var J=K.node.id;n(m,J.name,J),T.replaceWithMultiple([K.node,S(J,J)]),y[J.name]=!0}else if(K.isVariableDeclaration()){for(var X=K.get("declarations"),z=X,$=Array.isArray(z),Q=0,z=$?z:(0,l.default)(z);;){var Z;if($){if(Q>=z.length)break;Z=z[Q++]}else{if(Q=z.next(),Q.done)break;Z=Q.value}var ee=Z,te=ee.get("id"),re=ee.get("init"),ne=[];if(re.node||re.replaceWith(g.identifier("undefined")),te.isIdentifier())n(m,te.node.name,te.node),re.replaceWith(S(te.node,re.node).expression),y[te.node.name]=!0;else if(te.isObjectPattern())for(var ie=0;ie=he.length)break;ve=he[ye++]}else{if(ye=he.next(),ye.done)break;ve=ye.value}var ge=ve;ge.isExportNamespaceSpecifier()||ge.isExportDefaultSpecifier()||ge.isExportSpecifier()&&(a||"default"!==ge.node.local.name?v.push(x(g.stringLiteral(ge.node.exported.name),g.memberExpression(de,ge.node.local))):v.push(x(g.stringLiteral(ge.node.exported.name),g.memberExpression(g.callExpression(this.addHelper("interopRequireDefault"),[de]),ge.node.local))),y[ge.node.exported.name]=!0)}else for(var be=ce,Ee=Array.isArray(be),xe=0,be=Ee?be:(0,l.default)(be);;){var Ae;if(Ee){if(xe>=be.length)break;Ae=be[xe++]}else{if(xe=be.next(),xe.done)break;Ae=xe.value}var Se=Ae;Se.isExportSpecifier()&&(n(m,Se.node.local.name,Se.node.exported),y[Se.node.exported.name]=!0,fe.push(S(Se.node.exported,Se.node.local)))}T.replaceWithMultiple(fe)}else if(T.isExportAllDeclaration()){var _e=_({OBJECT:r(T.node.source.value,T.node._blockHoist)});_e.loc=T.node.loc,v.push(_e),T.remove()}}for(var De in h){var Ce=h[De],O=Ce.specifiers,we=Ce.maxBlockHoist;if(O.length){for(var Pe=r(De,we),ke=void 0,Fe=0;Fe0&&(Oe._blockHoist=we),v.push(Oe)}ke=Te.local}else g.isImportDefaultSpecifier(Te)&&(O[Fe]=g.importSpecifier(Te.local,g.identifier("default")))}for(var Be=O,Re=Array.isArray(Be),Ie=0,Be=Re?Be:(0,l.default)(Be);;){var Me;if(Re){if(Ie>=Be.length)break;Me=Be[Ie++]}else{if(Ie=Be.next(),Ie.done)break;Me=Ie.value}var Ne=Me;if(g.isImportSpecifier(Ne)){var Le=Pe;if("default"===Ne.imported.name)if(ke)Le=ke;else if(!a){Le=ke=e.scope.generateUidIdentifier(Pe.name);var je=g.variableDeclaration("var",[g.variableDeclarator(Le,g.callExpression(this.addHelper("interopRequireDefault"),[Pe]))]);we>0&&(je._blockHoist=we),v.push(je)}D[Ne.local.name]=g.memberExpression(Le,g.cloneWithoutLoc(Ne.imported))}}}else{var Ue=b(g.stringLiteral(De));Ue.loc=h[De].loc,v.push(Ue)}}if(f&&(0,s.default)(y).length)for(var Ve=(0,s.default)(y),Ge=0;Ge=l.length)break;p=l[f++]}else{if(f=l.next(),f.done)break;p=f.value}var d=p;d.isObjectProperty()&&(d=d.get("value")),t(d,d.node,e.scope,o,i)}a&&(e.scope.push({id:a}),e.replaceWith(r.assignmentExpression("=",a,e.node)))}}}}}};var u=r(193),l=n(u);e.exports=t.default},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}t.__esModule=!0;var i=r(2),s=function(e){return e&&e.__esModule?e:{default:e}}(i);t.default=function(){return{visitor:a.visitors.merge([{ArrowFunctionExpression:function(e){for(var t=e.get("params"),r=t,n=Array.isArray(r),i=0,r=n?r:(0,s.default)(r);;){var a;if(n){if(i>=r.length)break;a=r[i++]}else{if(i=r.next(),i.done)break;a=i.value}var o=a;if(o.isRestElement()||o.isAssignmentPattern()){e.arrowFunctionToShadowed();break}}}},u.visitor,p.visitor,c.visitor])}};var a=r(7),o=r(334),u=n(o),l=r(333),c=n(l),f=r(335),p=n(f);e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0,t.default=function(){return{visitor:{ObjectMethod:function(e){var t=e.node;if("method"===t.kind){var r=i.functionExpression(null,t.params,t.body,t.generator,t.async);r.returnType=t.returnType,e.replaceWith(i.objectProperty(t.key,r,t.computed))}},ObjectProperty:function(e){var t=e.node;t.shorthand&&(t.shorthand=!1)}}}};var n=r(1),i=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(n);e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0;var n=r(2),i=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=function(e){function t(e,t,r){return r.opts.loose&&!s.isIdentifier(e.argument,{name:"arguments"})?e.argument:t.toArray(e.argument,!0)}function r(e){for(var t=0;t=l.length)break;p=l[f++]}else{if(f=l.next(),f.done)break;p=f.value}var d=p;s.isSpreadElement(d)?(a(),o.push(t(d,r,n))):u.push(d)}return a(),o}var s=e.types;return{visitor:{ArrayExpression:function(e,t){var i=e.node,a=e.scope,o=i.elements;if(r(o)){var u=n(o,a,t),l=u.shift();s.isArrayExpression(l)||(u.unshift(l),l=s.arrayExpression([])),e.replaceWith(s.callExpression(s.memberExpression(l,s.identifier("concat")),u))}},CallExpression:function(e,t){var i=e.node,a=e.scope,o=i.arguments;if(r(o)){var u=e.get("callee");if(!u.isSuper()){var l=s.identifier("undefined");i.arguments=[];var c=void 0;c=1===o.length&&"arguments"===o[0].argument.name?[o[0].argument]:n(o,a,t);var f=c.shift();c.length?i.arguments.push(s.callExpression(s.memberExpression(f,s.identifier("concat")),c)):i.arguments.push(f);var p=i.callee;if(u.isMemberExpression()){var d=a.maybeGenerateMemoised(p.object);d?(p.object=s.assignmentExpression("=",d,p.object),l=d):l=p.object,s.appendToMemberExpression(p,s.identifier("apply"))}else i.callee=s.memberExpression(i.callee,s.identifier("apply"));s.isSuper(l)&&(l=s.thisExpression()),i.arguments.unshift(l)}}},NewExpression:function(e,t){var i=e.node,a=e.scope,o=i.arguments;if(r(o)){var u=n(o,a,t),l=s.arrayExpression([s.nullLiteral()]);o=s.callExpression(s.memberExpression(l,s.identifier("concat")),u),e.replaceWith(s.newExpression(s.callExpression(s.memberExpression(s.memberExpression(s.memberExpression(s.identifier("Function"),s.identifier("prototype")),s.identifier("bind")),s.identifier("apply")),[i.callee,o]),[]))}}}}},e.exports=t.default},function(e,t,r){"use strict";function n(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}t.__esModule=!0,t.default=function(){return{visitor:{RegExpLiteral:function(e){var t=e.node;s.is(t,"y")&&e.replaceWith(o.newExpression(o.identifier("RegExp"),[o.stringLiteral(t.pattern),o.stringLiteral(t.flags)]))}}}};var i=r(192),s=n(i),a=r(1),o=n(a);e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0;var n=r(2),i=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=function(e){function t(e){return n.isLiteral(e)&&"string"==typeof e.value}function r(e,t){return n.binaryExpression("+",e,t)}var n=e.types;return{visitor:{TaggedTemplateExpression:function(e,t){for(var r=e.node,s=r.quasi,a=[],o=[],u=[],l=s.quasis,c=Array.isArray(l),f=0,l=c?l:(0,i.default)(l);;){var p;if(c){if(f>=l.length)break;p=l[f++]}else{if(f=l.next(),f.done)break;p=f.value}var d=p;o.push(n.stringLiteral(d.value.cooked)),u.push(n.stringLiteral(d.value.raw))}o=n.arrayExpression(o),u=n.arrayExpression(u);var h="taggedTemplateLiteral";t.opts.loose&&(h+="Loose");var m=t.file.addTemplateObject(h,o,u);a.push(m),a=a.concat(s.expressions),e.replaceWith(n.callExpression(r.tag,a))},TemplateLiteral:function(e,s){for(var a=[],o=e.get("expressions"),u=e.node.quasis,l=Array.isArray(u),c=0,u=l?u:(0,i.default)(u);;){var f;if(l){if(c>=u.length)break;f=u[c++]}else{if(c=u.next(),c.done)break;f=c.value}var p=f;a.push(n.stringLiteral(p.value.cooked));var d=o.shift();d&&(!s.opts.spec||d.isBaseType("string")||d.isBaseType("number")?a.push(d.node):a.push(n.callExpression(n.identifier("String"),[d.node])))}if(a=a.filter(function(e){return!n.isLiteral(e,{value:""})}),t(a[0])||t(a[1])||a.unshift(n.stringLiteral("")),a.length>1){for(var h=r(a.shift(),a.shift()),m=a,y=Array.isArray(m),v=0,m=y?m:(0,i.default)(m);;){var g;if(y){if(v>=m.length)break;g=m[v++]}else{if(v=m.next(),v.done)break;g=v.value}h=r(h,g)}e.replaceWith(h)}else e.replaceWith(a[0])}}}},e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0;var n=r(10),i=function(e){return e&&e.__esModule?e:{default:e}}(n);t.default=function(e){var t=e.types,r=(0,i.default)();return{visitor:{Scope:function(e){var t=e.scope;t.getBinding("Symbol")&&t.rename("Symbol")},UnaryExpression:function(e){var n=e.node,i=e.parent;if(!n[r]&&!e.find(function(e){return e.node&&!!e.node._generated})){if(e.parentPath.isBinaryExpression()&&t.EQUALITY_BINARY_OPERATORS.indexOf(i.operator)>=0){var s=e.getOpposite();if(s.isLiteral()&&"symbol"!==s.node.value&&"object"!==s.node.value)return}if("typeof"===n.operator){var a=t.callExpression(this.addHelper("typeof"),[n.argument]);if(e.get("argument").isIdentifier()){var o=t.stringLiteral("undefined"),u=t.unaryExpression("typeof",n.argument);u[r]=!0,e.replaceWith(t.conditionalExpression(t.binaryExpression("===",u,o),o,a))}else e.replaceWith(a)}}}}}},e.exports=t.default},function(e,t,r){"use strict";t.__esModule=!0,t.default=function(){return{visitor:{RegExpLiteral:function(e){var t=e.node;a.is(t,"u")&&(t.pattern=(0,i.default)(t.pattern,t.flags),a.pullFlag(t,"u"))}}}};var n=r(612),i=function(e){return e&&e.__esModule?e:{default:e}}(n),s=r(192),a=function(e){if(e&&e.__esModule)return e;var t={};if(null!=e)for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&(t[r]=e[r]);return t.default=e,t}(s);e.exports=t.default},function(e,t,r){"use strict";e.exports=r(606)},function(e,t,r){"use strict";e.exports={default:r(408),__esModule:!0}},function(e,t,r){"use strict";function n(){i(),s()}function i(){t.path=u=new o.default}function s(){t.scope=l=new o.default}t.__esModule=!0,t.scope=t.path=void 0;var a=r(364),o=function(e){return e&&e.__esModule?e:{default:e}}(a);t.clear=n,t.clearPath=i,t.clearScope=s;var u=t.path=new o.default,l=t.scope=new o.default},function(e,t){"use strict";function r(e){return e=e.split(" "),function(t){return e.indexOf(t)>=0}}function n(e,t){for(var r=65536,n=0;ne)return!1;if((r+=t[n+1])>=e)return!0}}function i(e){return e<65?36===e:e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&x.test(String.fromCharCode(e)):n(e,S)))}function s(e){return e<48?36===e:e<58||!(e<65)&&(e<91||(e<97?95===e:e<123||(e<=65535?e>=170&&A.test(String.fromCharCode(e)):n(e,S)||n(e,_))))}function a(e){var t={};for(var r in D)t[r]=e&&r in e?e[r]:D[r];return t}function o(e){return 10===e||13===e||8232===e||8233===e}function u(e,t){for(var r=1,n=0;;){N.lastIndex=n;var i=N.exec(e);if(!(i&&i.index>10),56320+(e-65536&1023))}function c(e,t,r,n){return e.type=t,e.end=r,e.loc.end=n,this.processComment(e),e}function f(e){return e[e.length-1]}function p(e){return e&&"Property"===e.type&&"init"===e.kind&&!1===e.method}function d(e){return"JSXIdentifier"===e.type?e.name:"JSXNamespacedName"===e.type?e.namespace.name+":"+e.name.name:"JSXMemberExpression"===e.type?d(e.object)+"."+d(e.property):void 0}function h(e,t){return new J(t,e).parse()}function m(e,t){var r=new J(t,e);return r.options.strictMode&&(r.state.strict=!0),r.getExpression()}var y="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(e){return typeof e}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":typeof e};Object.defineProperty(t,"__esModule",{value:!0});var v={6:r("enum await"),strict:r("implements interface let package private protected public static yield"),strictBind:r("eval arguments")
-},g=r("break case catch continue debugger default do else finally for function if return switch throw try var while with null true false instanceof typeof void delete new in this let const class extends export import yield super"),b="ªµºÀ-ÖØ-öø-ˁˆ-ˑˠ-ˤˬˮͰ-ʹͶͷͺ-ͽͿΆΈ-ΊΌΎ-ΡΣ-ϵϷ-ҁҊ-ԯԱ-Ֆՙա-ևא-תװ-ײؠ-يٮٯٱ-ۓەۥۦۮۯۺ-ۼۿܐܒ-ܯݍ-ޥޱߊ-ߪߴߵߺࠀ-ࠕࠚࠤࠨࡀ-ࡘࢠ-ࢴࢶ-ࢽऄ-हऽॐक़-ॡॱ-ঀঅ-ঌএঐও-নপ-রলশ-হঽৎড়ঢ়য়-ৡৰৱਅ-ਊਏਐਓ-ਨਪ-ਰਲਲ਼ਵਸ਼ਸਹਖ਼-ੜਫ਼ੲ-ੴઅ-ઍએ-ઑઓ-નપ-રલળવ-હઽૐૠૡૹଅ-ଌଏଐଓ-ନପ-ରଲଳଵ-ହଽଡ଼ଢ଼ୟ-ୡୱஃஅ-ஊஎ-ஐஒ-கஙசஜஞடணதந-பம-ஹௐఅ-ఌఎ-ఐఒ-నప-హఽౘ-ౚౠౡಀಅ-ಌಎ-ಐಒ-ನಪ-ಳವ-ಹಽೞೠೡೱೲഅ-ഌഎ-ഐഒ-ഺഽൎൔ-ൖൟ-ൡൺ-ൿඅ-ඖක-නඳ-රලව-ෆก-ะาำเ-ๆກຂຄງຈຊຍດ-ທນ-ຟມ-ຣລວສຫອ-ະາຳຽເ-ໄໆໜ-ໟༀཀ-ཇཉ-ཬྈ-ྌက-ဪဿၐ-ၕၚ-ၝၡၥၦၮ-ၰၵ-ႁႎႠ-ჅჇჍა-ჺჼ-ቈቊ-ቍቐ-ቖቘቚ-ቝበ-ኈኊ-ኍነ-ኰኲ-ኵኸ-ኾዀዂ-ዅወ-ዖዘ-ጐጒ-ጕጘ-ፚᎀ-ᎏᎠ-Ᏽᏸ-ᏽᐁ-ᙬᙯ-ᙿᚁ-ᚚᚠ-ᛪᛮ-ᛸᜀ-ᜌᜎ-ᜑᜠ-ᜱᝀ-ᝑᝠ-ᝬᝮ-ᝰក-ឳៗៜᠠ-ᡷᢀ-ᢨᢪᢰ-ᣵᤀ-ᤞᥐ-ᥭᥰ-ᥴᦀ-ᦫᦰ-ᧉᨀ-ᨖᨠ-ᩔᪧᬅ-ᬳᭅ-ᭋᮃ-ᮠᮮᮯᮺ-ᯥᰀ-ᰣᱍ-ᱏᱚ-ᱽᲀ-ᲈᳩ-ᳬᳮ-ᳱᳵᳶᴀ-ᶿḀ-ἕἘ-Ἕἠ-ὅὈ-Ὅὐ-ὗὙὛὝὟ-ώᾀ-ᾴᾶ-ᾼιῂ-ῄῆ-ῌῐ-ΐῖ-Ίῠ-Ῥῲ-ῴῶ-ῼⁱⁿₐ-ₜℂℇℊ-ℓℕ℘-ℝℤΩℨK-ℹℼ-ℿⅅ-ⅉⅎⅠ-ↈⰀ-Ⱞⰰ-ⱞⱠ-ⳤⳫ-ⳮⳲⳳⴀ-ⴥⴧⴭⴰ-ⵧⵯⶀ-ⶖⶠ-ⶦⶨ-ⶮⶰ-ⶶⶸ-ⶾⷀ-ⷆⷈ-ⷎⷐ-ⷖⷘ-ⷞ々-〇〡-〩〱-〵〸-〼ぁ-ゖ゛-ゟァ-ヺー-ヿㄅ-ㄭㄱ-ㆎㆠ-ㆺㇰ-ㇿ㐀-䶵一-鿕ꀀ-ꒌꓐ-ꓽꔀ-ꘌꘐ-ꘟꘪꘫꙀ-ꙮꙿ-ꚝꚠ-ꛯꜗ-ꜟꜢ-ꞈꞋ-ꞮꞰ-ꞷꟷ-ꠁꠃ-ꠅꠇ-ꠊꠌ-ꠢꡀ-ꡳꢂ-ꢳꣲ-ꣷꣻꣽꤊ-ꤥꤰ-ꥆꥠ-ꥼꦄ-ꦲꧏꧠ-ꧤꧦ-ꧯꧺ-ꧾꨀ-ꨨꩀ-ꩂꩄ-ꩋꩠ-ꩶꩺꩾ-ꪯꪱꪵꪶꪹ-ꪽꫀꫂꫛ-ꫝꫠ-ꫪꫲ-ꫴꬁ-ꬆꬉ-ꬎꬑ-ꬖꬠ-ꬦꬨ-ꬮꬰ-ꭚꭜ-ꭥꭰ-ꯢ가-힣ힰ-ퟆퟋ-ퟻ豈-舘並-龎ff-stﬓ-ﬗיִײַ-ﬨשׁ-זּטּ-לּמּנּסּףּפּצּ-ﮱﯓ-ﴽﵐ-ﶏﶒ-ﷇﷰ-ﷻﹰ-ﹴﹶ-ﻼA-Za-zヲ-하-ᅦᅧ-ᅬᅭ-ᅲᅳ-ᅵ",E="·̀-ͯ·҃-֑҇-ׇֽֿׁׂׅׄؐ-ًؚ-٩ٰۖ-ۜ۟-۪ۤۧۨ-ۭ۰-۹ܑܰ-݊ަ-ް߀-߉߫-߳ࠖ-࠙ࠛ-ࠣࠥ-ࠧࠩ-࡙࠭-࡛ࣔ-ࣣ࣡-ःऺ-़ा-ॏ॑-ॗॢॣ०-९ঁ-ঃ়া-ৄেৈো-্ৗৢৣ০-৯ਁ-ਃ਼ਾ-ੂੇੈੋ-੍ੑ੦-ੱੵઁ-ઃ઼ા-ૅે-ૉો-્ૢૣ૦-૯ଁ-ଃ଼ା-ୄେୈୋ-୍ୖୗୢୣ୦-୯ஂா-ூெ-ைொ-்ௗ௦-௯ఀ-ఃా-ౄె-ైొ-్ౕౖౢౣ౦-౯ಁ-ಃ಼ಾ-ೄೆ-ೈೊ-್ೕೖೢೣ೦-೯ഁ-ഃാ-ൄെ-ൈൊ-്ൗൢൣ൦-൯ංඃ්ා-ුූෘ-ෟ෦-෯ෲෳัิ-ฺ็-๎๐-๙ັິ-ູົຼ່-ໍ໐-໙༘༙༠-༩༹༵༷༾༿ཱ-྄྆྇ྍ-ྗྙ-ྼ࿆ါ-ှ၀-၉ၖ-ၙၞ-ၠၢ-ၤၧ-ၭၱ-ၴႂ-ႍႏ-ႝ፝-፟፩-፱ᜒ-᜔ᜲ-᜴ᝒᝓᝲᝳ឴-៓៝០-៩᠋-᠍᠐-᠙ᢩᤠ-ᤫᤰ-᤻᥆-᥏᧐-᧚ᨗ-ᨛᩕ-ᩞ᩠-᩿᩼-᪉᪐-᪙᪰-᪽ᬀ-ᬄ᬴-᭄᭐-᭙᭫-᭳ᮀ-ᮂᮡ-ᮭ᮰-᮹᯦-᯳ᰤ-᰷᱀-᱉᱐-᱙᳐-᳔᳒-᳨᳭ᳲ-᳴᳸᳹᷀-᷵᷻-᷿‿⁀⁔⃐-⃥⃜⃡-⃰⳯-⵿⳱ⷠ-〪ⷿ-゙゚〯꘠-꘩꙯ꙴ-꙽ꚞꚟ꛰꛱ꠂ꠆ꠋꠣ-ꠧꢀꢁꢴ-ꣅ꣐-꣙꣠-꣱꤀-꤉ꤦ-꤭ꥇ-꥓ꦀ-ꦃ꦳-꧀꧐-꧙ꧥ꧰-꧹ꨩ-ꨶꩃꩌꩍ꩐-꩙ꩻ-ꩽꪰꪲ-ꪴꪷꪸꪾ꪿꫁ꫫ-ꫯꫵ꫶ꯣ-ꯪ꯬꯭꯰-꯹ﬞ︀-️︠-︯︳︴﹍-﹏0-9_",x=new RegExp("["+b+"]"),A=new RegExp("["+b+E+"]");b=E=null;var S=[0,11,2,25,2,18,2,1,2,14,3,13,35,122,70,52,268,28,4,48,48,31,17,26,6,37,11,29,3,35,5,7,2,4,43,157,19,35,5,35,5,39,9,51,157,310,10,21,11,7,153,5,3,0,2,43,2,1,4,0,3,22,11,22,10,30,66,18,2,1,11,21,11,25,71,55,7,1,65,0,16,3,2,2,2,26,45,28,4,28,36,7,2,27,28,53,11,21,11,18,14,17,111,72,56,50,14,50,785,52,76,44,33,24,27,35,42,34,4,0,13,47,15,3,22,0,2,0,36,17,2,24,85,6,2,0,2,3,2,14,2,9,8,46,39,7,3,1,3,21,2,6,2,1,2,4,4,0,19,0,13,4,159,52,19,3,54,47,21,1,2,0,185,46,42,3,37,47,21,0,60,42,86,25,391,63,32,0,449,56,264,8,2,36,18,0,50,29,881,921,103,110,18,195,2749,1070,4050,582,8634,568,8,30,114,29,19,47,17,3,32,20,6,18,881,68,12,0,67,12,65,0,32,6124,20,754,9486,1,3071,106,6,12,4,8,8,9,5991,84,2,70,2,1,3,0,3,1,3,3,2,11,2,0,2,6,2,64,2,3,3,7,2,6,2,27,2,3,2,4,2,0,4,6,2,339,3,24,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,30,2,24,2,7,4149,196,60,67,1213,3,2,26,2,1,2,0,3,0,2,9,2,3,2,0,2,0,7,0,5,0,2,0,2,0,2,2,2,1,2,0,3,0,2,0,2,0,2,0,2,0,2,1,2,0,3,3,2,6,2,3,2,3,2,0,2,9,2,16,6,2,2,4,2,16,4421,42710,42,4148,12,221,3,5761,10591,541],_=[509,0,227,0,150,4,294,9,1368,2,2,1,6,3,41,2,5,0,166,1,1306,2,54,14,32,9,16,3,46,10,54,9,7,2,37,13,2,9,52,0,13,2,49,13,10,2,4,9,83,11,7,0,161,11,6,9,7,3,57,0,2,6,3,1,3,2,10,0,11,1,3,6,4,4,193,17,10,9,87,19,13,9,214,6,3,8,28,1,83,16,16,9,82,12,9,9,84,14,5,9,423,9,838,7,2,7,17,9,57,21,2,13,19882,9,135,4,60,6,26,9,1016,45,17,3,19723,1,5319,4,4,5,9,7,3,6,31,3,149,2,1418,49,513,54,5,49,9,0,15,0,23,4,2,14,1361,6,2,16,3,6,2,1,2,4,2214,6,110,6,6,9,792487,239],D={sourceType:"script",sourceFilename:void 0,startLine:1,allowReturnOutsideFunction:!1,allowImportExportEverywhere:!1,allowSuperOutsideMethod:!1,plugins:[],strictMode:null},C="function"==typeof Symbol&&"symbol"===y(Symbol.iterator)?function(e){return void 0===e?"undefined":y(e)}:function(e){return e&&"function"==typeof Symbol&&e.constructor===Symbol&&e!==Symbol.prototype?"symbol":void 0===e?"undefined":y(e)},w=function(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")},P=function(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+(void 0===t?"undefined":y(t)));e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)},k=function(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!==(void 0===t?"undefined":y(t))&&"function"!=typeof t?e:t},F=!0,T=function e(t){var r=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};w(this,e),this.label=t,this.keyword=r.keyword,this.beforeExpr=!!r.beforeExpr,this.startsExpr=!!r.startsExpr,this.rightAssociative=!!r.rightAssociative,this.isLoop=!!r.isLoop,this.isAssign=!!r.isAssign,this.prefix=!!r.prefix,this.postfix=!!r.postfix,this.binop=r.binop||null,this.updateContext=null},O=function(e){function t(r){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};return w(this,t),n.keyword=r,k(this,e.call(this,r,n))}return P(t,e),t}(T),B=function(e){function t(r,n){return w(this,t),k(this,e.call(this,r,{beforeExpr:F,binop:n}))}return P(t,e),t}(T),R={num:new T("num",{startsExpr:!0}),regexp:new T("regexp",{startsExpr:!0}),string:new T("string",{startsExpr:!0}),name:new T("name",{startsExpr:!0}),eof:new T("eof"),bracketL:new T("[",{beforeExpr:F,startsExpr:!0}),bracketR:new T("]"),braceL:new T("{",{beforeExpr:F,startsExpr:!0}),braceBarL:new T("{|",{beforeExpr:F,startsExpr:!0}),braceR:new T("}"),braceBarR:new T("|}"),parenL:new T("(",{beforeExpr:F,startsExpr:!0}),parenR:new T(")"),comma:new T(",",{beforeExpr:F}),semi:new T(";",{beforeExpr:F}),colon:new T(":",{beforeExpr:F}),doubleColon:new T("::",{beforeExpr:F}),dot:new T("."),question:new T("?",{beforeExpr:F}),arrow:new T("=>",{beforeExpr:F}),template:new T("template"),ellipsis:new T("...",{beforeExpr:F}),backQuote:new T("`",{startsExpr:!0}),dollarBraceL:new T("${",{beforeExpr:F,startsExpr:!0}),at:new T("@"),eq:new T("=",{beforeExpr:F,isAssign:!0}),assign:new T("_=",{beforeExpr:F,isAssign:!0}),incDec:new T("++/--",{prefix:!0,postfix:!0,startsExpr:!0}),prefix:new T("prefix",{beforeExpr:F,prefix:!0,startsExpr:!0}),logicalOR:new B("||",1),logicalAND:new B("&&",2),bitwiseOR:new B("|",3),bitwiseXOR:new B("^",4),bitwiseAND:new B("&",5),equality:new B("==/!=",6),relational:new B(">",7),bitShift:new B("<>>",8),plusMin:new T("+/-",{beforeExpr:F,binop:9,prefix:!0,startsExpr:!0}),modulo:new B("%",10),star:new B("*",10),slash:new B("/",10),exponent:new T("**",{beforeExpr:F,binop:11,rightAssociative:!0})},I={break:new O("break"),case:new O("case",{beforeExpr:F}),catch:new O("catch"),continue:new O("continue"),debugger:new O("debugger"),default:new O("default",{beforeExpr:F}),do:new O("do",{isLoop:!0,beforeExpr:F}),else:new O("else",{beforeExpr:F}),finally:new O("finally"),for:new O("for",{isLoop:!0}),function:new O("function",{startsExpr:!0}),if:new O("if"),return:new O("return",{beforeExpr:F}),switch:new O("switch"),throw:new O("throw",{beforeExpr:F}),try:new O("try"),var:new O("var"),let:new O("let"),const:new O("const"),while:new O("while",{isLoop:!0}),with:new O("with"),new:new O("new",{beforeExpr:F,startsExpr:!0}),this:new O("this",{startsExpr:!0}),super:new O("super",{startsExpr:!0}),class:new O("class"),extends:new O("extends",{beforeExpr:F}),export:new O("export"),import:new O("import",{startsExpr:!0}),yield:new O("yield",{beforeExpr:F,startsExpr:!0}),null:new O("null",{startsExpr:!0}),true:new O("true",{startsExpr:!0}),false:new O("false",{startsExpr:!0}),in:new O("in",{beforeExpr:F,binop:7}),instanceof:new O("instanceof",{beforeExpr:F,binop:7}),typeof:new O("typeof",{beforeExpr:F,prefix:!0,startsExpr:!0}),void:new O("void",{beforeExpr:F,prefix:!0,startsExpr:!0}),delete:new O("delete",{beforeExpr:F,prefix:!0,startsExpr:!0})};Object.keys(I).forEach(function(e){R["_"+e]=I[e]});var M=/\r\n?|\n|\u2028|\u2029/,N=new RegExp(M.source,"g"),L=/[\u1680\u180e\u2000-\u200a\u202f\u205f\u3000\ufeff]/,j=function e(t,r,n,i){w(this,e),this.token=t,this.isExpr=!!r,this.preserveSpace=!!n,this.override=i},U={braceStatement:new j("{",!1),braceExpression:new j("{",!0),templateQuasi:new j("${",!0),parenStatement:new j("(",!1),parenExpression:new j("(",!0),template:new j("`",!0,!0,function(e){return e.readTmplToken()}),functionExpression:new j("function",!0)};R.parenR.updateContext=R.braceR.updateContext=function(){if(1===this.state.context.length)return void(this.state.exprAllowed=!0);var e=this.state.context.pop();e===U.braceStatement&&this.curContext()===U.functionExpression?(this.state.context.pop(),this.state.exprAllowed=!1):e===U.templateQuasi?this.state.exprAllowed=!0:this.state.exprAllowed=!e.isExpr},R.name.updateContext=function(e){this.state.exprAllowed=!1,e!==R._let&&e!==R._const&&e!==R._var||M.test(this.input.slice(this.state.end))&&(this.state.exprAllowed=!0)},R.braceL.updateContext=function(e){this.state.context.push(this.braceIsBlock(e)?U.braceStatement:U.braceExpression),this.state.exprAllowed=!0},R.dollarBraceL.updateContext=function(){this.state.context.push(U.templateQuasi),this.state.exprAllowed=!0},R.parenL.updateContext=function(e){var t=e===R._if||e===R._for||e===R._with||e===R._while;this.state.context.push(t?U.parenStatement:U.parenExpression),this.state.exprAllowed=!0},R.incDec.updateContext=function(){},R._function.updateContext=function(){this.curContext()!==U.braceStatement&&this.state.context.push(U.functionExpression),this.state.exprAllowed=!1},R.backQuote.updateContext=function(){this.curContext()===U.template?this.state.context.pop():this.state.context.push(U.template),this.state.exprAllowed=!1};var V=function e(t,r){w(this,e),this.line=t,this.column=r},G=function e(t,r){w(this,e),this.start=t,this.end=r},W=function(){function e(){w(this,e)}return e.prototype.init=function(e,t){return this.strict=!1!==e.strictMode&&"module"===e.sourceType,this.input=t,this.potentialArrowAt=-1,this.inMethod=this.inFunction=this.inGenerator=this.inAsync=this.inPropertyName=this.inType=this.inClassProperty=this.noAnonFunctionType=!1,this.labels=[],this.decorators=[],this.tokens=[],this.comments=[],this.trailingComments=[],this.leadingComments=[],this.commentStack=[],this.pos=this.lineStart=0,this.curLine=e.startLine,this.type=R.eof,this.value=null,this.start=this.end=this.pos,this.startLoc=this.endLoc=this.curPosition(),this.lastTokEndLoc=this.lastTokStartLoc=null,this.lastTokStart=this.lastTokEnd=this.pos,this.context=[U.braceStatement],this.exprAllowed=!0,this.containsEsc=this.containsOctal=!1,this.octalPosition=null,this.invalidTemplateEscapePosition=null,this.exportedIdentifiers=[],this},e.prototype.curPosition=function(){return new V(this.curLine,this.pos-this.lineStart)},e.prototype.clone=function(t){var r=new e;for(var n in this){var i=this[n];t&&"context"!==n||!Array.isArray(i)||(i=i.slice()),r[n]=i}return r},e}(),Y=function e(t){w(this,e),this.type=t.type,this.value=t.value,this.start=t.start,this.end=t.end,this.loc=new G(t.startLoc,t.endLoc)},q=function(){function e(t,r){w(this,e),this.state=new W,this.state.init(t,r)}return e.prototype.next=function(){this.isLookahead||this.state.tokens.push(new Y(this.state)),this.state.lastTokEnd=this.state.end,this.state.lastTokStart=this.state.start,this.state.lastTokEndLoc=this.state.endLoc,this.state.lastTokStartLoc=this.state.startLoc,this.nextToken()},e.prototype.eat=function(e){return!!this.match(e)&&(this.next(),!0)},e.prototype.match=function(e){return this.state.type===e},e.prototype.isKeyword=function(e){return g(e)},e.prototype.lookahead=function(){var e=this.state;this.state=e.clone(!0),this.isLookahead=!0,this.next(),this.isLookahead=!1;var t=this.state.clone(!0);return this.state=e,t},e.prototype.setStrict=function(e){if(this.state.strict=e,this.match(R.num)||this.match(R.string)){for(this.state.pos=this.state.start;this.state.pos=this.input.length?this.finishToken(R.eof):e.override?e.override(this):this.readToken(this.fullCharCodeAtPos())},e.prototype.readToken=function(e){return i(e)||92===e?this.readWord():this.getTokenFromCode(e)},e.prototype.fullCharCodeAtPos=function(){var e=this.input.charCodeAt(this.state.pos);return e<=55295||e>=57344?e:(e<<10)+this.input.charCodeAt(this.state.pos+1)-56613888},e.prototype.pushComment=function(e,t,r,n,i,s){var a={type:e?"CommentBlock":"CommentLine",value:t,start:r,end:n,loc:new G(i,s)};this.isLookahead||(this.state.tokens.push(a),this.state.comments.push(a),this.addComment(a))},e.prototype.skipBlockComment=function(){var e=this.state.curPosition(),t=this.state.pos,r=this.input.indexOf("*/",this.state.pos+=2);-1===r&&this.raise(this.state.pos-2,"Unterminated comment"),this.state.pos=r+2,N.lastIndex=t;for(var n=void 0;(n=N.exec(this.input))&&n.index8&&e<14||e>=5760&&L.test(String.fromCharCode(e))))break e;++this.state.pos}}},e.prototype.finishToken=function(e,t){this.state.end=this.state.pos,this.state.endLoc=this.state.curPosition();var r=this.state.type;this.state.type=e,this.state.value=t,this.updateContext(r)},e.prototype.readToken_dot=function(){var e=this.input.charCodeAt(this.state.pos+1);if(e>=48&&e<=57)return this.readNumber(!0);var t=this.input.charCodeAt(this.state.pos+2);return 46===e&&46===t?(this.state.pos+=3,this.finishToken(R.ellipsis)):(++this.state.pos,this.finishToken(R.dot))},e.prototype.readToken_slash=function(){return this.state.exprAllowed?(++this.state.pos,this.readRegexp()):61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(R.assign,2):this.finishOp(R.slash,1)},e.prototype.readToken_mult_modulo=function(e){var t=42===e?R.star:R.modulo,r=1,n=this.input.charCodeAt(this.state.pos+1);return 42===n&&(r++,n=this.input.charCodeAt(this.state.pos+2),t=R.exponent),61===n&&(r++,t=R.assign),this.finishOp(t,r)},e.prototype.readToken_pipe_amp=function(e){var t=this.input.charCodeAt(this.state.pos+1);return t===e?this.finishOp(124===e?R.logicalOR:R.logicalAND,2):61===t?this.finishOp(R.assign,2):124===e&&125===t&&this.hasPlugin("flow")?this.finishOp(R.braceBarR,2):this.finishOp(124===e?R.bitwiseOR:R.bitwiseAND,1)},e.prototype.readToken_caret=function(){return 61===this.input.charCodeAt(this.state.pos+1)?this.finishOp(R.assign,2):this.finishOp(R.bitwiseXOR,1)},e.prototype.readToken_plus_min=function(e){var t=this.input.charCodeAt(this.state.pos+1);return t===e?45===t&&62===this.input.charCodeAt(this.state.pos+2)&&M.test(this.input.slice(this.state.lastTokEnd,this.state.pos))?(this.skipLineComment(3),this.skipSpace(),this.nextToken()):this.finishOp(R.incDec,2):61===t?this.finishOp(R.assign,2):this.finishOp(R.plusMin,1)},e.prototype.readToken_lt_gt=function(e){var t=this.input.charCodeAt(this.state.pos+1),r=1;return t===e?(r=62===e&&62===this.input.charCodeAt(this.state.pos+2)?3:2,61===this.input.charCodeAt(this.state.pos+r)?this.finishOp(R.assign,r+1):this.finishOp(R.bitShift,r)):33===t&&60===e&&45===this.input.charCodeAt(this.state.pos+2)&&45===this.input.charCodeAt(this.state.pos+3)?(this.inModule&&this.unexpected(),this.skipLineComment(4),this.skipSpace(),this.nextToken()):(61===t&&(r=2),this.finishOp(R.relational,r))},e.prototype.readToken_eq_excl=function(e){var t=this.input.charCodeAt(this.state.pos+1);return 61===t?this.finishOp(R.equality,61===this.input.charCodeAt(this.state.pos+2)?3:2):61===e&&62===t?(this.state.pos+=2,this.finishToken(R.arrow)):this.finishOp(61===e?R.eq:R.prefix,1)},e.prototype.getTokenFromCode=function(e){switch(e){case 46:return this.readToken_dot();case 40:return++this.state.pos,this.finishToken(R.parenL);case 41:return++this.state.pos,this.finishToken(R.parenR);case 59:return++this.state.pos,this.finishToken(R.semi);case 44:return++this.state.pos,this.finishToken(R.comma);case 91:return++this.state.pos,this.finishToken(R.bracketL);case 93:return++this.state.pos,this.finishToken(R.bracketR);case 123:return this.hasPlugin("flow")&&124===this.input.charCodeAt(this.state.pos+1)?this.finishOp(R.braceBarL,2):(++this.state.pos,this.finishToken(R.braceL));case 125:return++this.state.pos,this.finishToken(R.braceR);case 58:return this.hasPlugin("functionBind")&&58===this.input.charCodeAt(this.state.pos+1)?this.finishOp(R.doubleColon,2):(++this.state.pos,this.finishToken(R.colon));case 63:return++this.state.pos,this.finishToken(R.question);case 64:return++this.state.pos,this.finishToken(R.at);case 96:return++this.state.pos,this.finishToken(R.backQuote);case 48:var t=this.input.charCodeAt(this.state.pos+1);if(120===t||88===t)return this.readRadixNumber(16);if(111===t||79===t)return this.readRadixNumber(8);if(98===t||66===t)return this.readRadixNumber(2);case 49:case 50:case 51:case 52:case 53:case 54:case 55:case 56:case 57:return this.readNumber(!1);case 34:case 39:return this.readString(e);case 47:return this.readToken_slash();case 37:case 42:return this.readToken_mult_modulo(e);case 124:case 38:return this.readToken_pipe_amp(e);case 94:return this.readToken_caret();case 43:case 45:return this.readToken_plus_min(e);case 60:case 62:return this.readToken_lt_gt(e);case 61:case 33:return this.readToken_eq_excl(e);case 126:return this.finishOp(R.prefix,1)}this.raise(this.state.pos,"Unexpected character '"+l(e)+"'")},e.prototype.finishOp=function(e,t){var r=this.input.slice(this.state.pos,this.state.pos+t);return this.state.pos+=t,this.finishToken(e,r)},e.prototype.readRegexp=function(){for(var e=this.state.pos,t=void 0,r=void 0;;){this.state.pos>=this.input.length&&this.raise(e,"Unterminated regular expression");var n=this.input.charAt(this.state.pos);if(M.test(n)&&this.raise(e,"Unterminated regular expression"),t)t=!1;else{if("["===n)r=!0;else if("]"===n&&r)r=!1;else if("/"===n&&!r)break;t="\\"===n}++this.state.pos}var i=this.input.slice(e,this.state.pos);++this.state.pos;var s=this.readWord1();if(s){/^[gmsiyu]*$/.test(s)||this.raise(e,"Invalid regular expression flag")}return this.finishToken(R.regexp,{pattern:i,flags:s})},e.prototype.readInt=function(e,t){for(var r=this.state.pos,n=0,i=0,s=null==t?1/0:t;i=97?a-97+10:a>=65?a-65+10:a>=48&&a<=57?a-48:1/0)>=e)break;++this.state.pos,n=n*e+o}return this.state.pos===r||null!=t&&this.state.pos-r!==t?null:n},e.prototype.readRadixNumber=function(e){this.state.pos+=2;var t=this.readInt(e);return null==t&&this.raise(this.state.start+2,"Expected number in radix "+e),i(this.fullCharCodeAtPos())&&this.raise(this.state.pos,"Identifier directly after number"),this.finishToken(R.num,t)},e.prototype.readNumber=function(e){var t=this.state.pos,r=48===this.input.charCodeAt(t),n=!1;e||null!==this.readInt(10)||this.raise(t,"Invalid number"),r&&this.state.pos==t+1&&(r=!1);var s=this.input.charCodeAt(this.state.pos);46!==s||r||(++this.state.pos,this.readInt(10),n=!0,s=this.input.charCodeAt(this.state.pos)),69!==s&&101!==s||r||(s=this.input.charCodeAt(++this.state.pos),43!==s&&45!==s||++this.state.pos,null===this.readInt(10)&&this.raise(t,"Invalid number"),n=!0),i(this.fullCharCodeAtPos())&&this.raise(this.state.pos,"Identifier directly after number");var a=this.input.slice(t,this.state.pos),o=void 0;return n?o=parseFloat(a):r&&1!==a.length?this.state.strict?this.raise(t,"Invalid number"):o=/[89]/.test(a)?parseInt(a,10):parseInt(a,8):o=parseInt(a,10),this.finishToken(R.num,o)},e.prototype.readCodePoint=function(e){var t=this.input.charCodeAt(this.state.pos),r=void 0;if(123===t){var n=++this.state.pos;if(r=this.readHexChar(this.input.indexOf("}",this.state.pos)-this.state.pos,e),++this.state.pos,null===r)--this.state.invalidTemplateEscapePosition;else if(r>1114111){if(!e)return this.state.invalidTemplateEscapePosition=n-2,null;this.raise(n,"Code point out of bounds")}}else r=this.readHexChar(4,e);return r},e.prototype.readString=function(e){for(var t="",r=++this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated string constant");var n=this.input.charCodeAt(this.state.pos);if(n===e)break;92===n?(t+=this.input.slice(r,this.state.pos),t+=this.readEscapedChar(!1),r=this.state.pos):(o(n)&&this.raise(this.state.start,"Unterminated string constant"),++this.state.pos)}return t+=this.input.slice(r,this.state.pos++),this.finishToken(R.string,t)},e.prototype.readTmplToken=function(){for(var e="",t=this.state.pos,r=!1;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated template");var n=this.input.charCodeAt(this.state.pos);if(96===n||36===n&&123===this.input.charCodeAt(this.state.pos+1))return this.state.pos===this.state.start&&this.match(R.template)?36===n?(this.state.pos+=2,this.finishToken(R.dollarBraceL)):(++this.state.pos,this.finishToken(R.backQuote)):(e+=this.input.slice(t,this.state.pos),this.finishToken(R.template,r?null:e));if(92===n){e+=this.input.slice(t,this.state.pos);var i=this.readEscapedChar(!0);null===i?r=!0:e+=i,t=this.state.pos}else if(o(n)){switch(e+=this.input.slice(t,this.state.pos),++this.state.pos,n){case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:e+="\n";break;default:e+=String.fromCharCode(n)}++this.state.curLine,this.state.lineStart=this.state.pos,t=this.state.pos}else++this.state.pos}},e.prototype.readEscapedChar=function(e){var t=!e,r=this.input.charCodeAt(++this.state.pos);switch(++this.state.pos,r){case 110:return"\n";case 114:return"\r";case 120:var n=this.readHexChar(2,t);return null===n?null:String.fromCharCode(n);case 117:var i=this.readCodePoint(t);return null===i?null:l(i);case 116:return"\t";case 98:return"\b";case 118:return"\v";case 102:return"\f";case 13:10===this.input.charCodeAt(this.state.pos)&&++this.state.pos;case 10:return this.state.lineStart=this.state.pos,++this.state.curLine,"";default:if(r>=48&&r<=55){var s=this.state.pos-1,a=this.input.substr(this.state.pos-1,3).match(/^[0-7]+/)[0],o=parseInt(a,8);if(o>255&&(a=a.slice(0,-1),o=parseInt(a,8)),o>0){if(e)return this.state.invalidTemplateEscapePosition=s,null;this.state.strict?this.raise(s,"Octal literal in strict mode"):this.state.containsOctal||(this.state.containsOctal=!0,this.state.octalPosition=s)}return this.state.pos+=a.length-1,String.fromCharCode(o)}return String.fromCharCode(r)}},e.prototype.readHexChar=function(e,t){var r=this.state.pos,n=this.readInt(16,e);return null===n&&(t?this.raise(r,"Bad character escape sequence"):(this.state.pos=r-1,this.state.invalidTemplateEscapePosition=r-1)),n},e.prototype.readWord1=function(){this.state.containsEsc=!1;for(var e="",t=!0,r=this.state.pos;this.state.pos-1)||!!this.plugins[e]},t.prototype.extend=function(e,t){this[e]=t(this[e])},t.prototype.loadAllPlugins=function(){var e=this,t=Object.keys(K).filter(function(e){return"flow"!==e&&"estree"!==e});t.push("flow"),t.forEach(function(t){var r=K[t];r&&r(e)})},t.prototype.loadPlugins=function(e){if(e.indexOf("*")>=0)return this.loadAllPlugins(),{"*":!0};var t={};e.indexOf("flow")>=0&&(e=e.filter(function(e){return"flow"!==e}),e.push("flow")),e.indexOf("estree")>=0&&(e=e.filter(function(e){return"estree"!==e}),e.unshift("estree"));for(var r=e,n=Array.isArray(r),i=0,r=n?r:r[Symbol.iterator]();;){var s;if(n){if(i>=r.length)break;s=r[i++]}else{if(i=r.next(),i.done)break;s=i.value}var a=s;if(!t[a]){t[a]=!0;var o=K[a];o&&o(this)}}return t},t.prototype.parse=function(){var e=this.startNode(),t=this.startNode();return this.nextToken(),this.parseTopLevel(e,t)},t}(q),X=J.prototype;X.addExtra=function(e,t,r){if(e){(e.extra=e.extra||{})[t]=r}},X.isRelational=function(e){return this.match(R.relational)&&this.state.value===e},X.expectRelational=function(e){this.isRelational(e)?this.next():this.unexpected(null,R.relational)},X.isContextual=function(e){return this.match(R.name)&&this.state.value===e},X.eatContextual=function(e){return this.state.value===e&&this.eat(R.name)},X.expectContextual=function(e,t){this.eatContextual(e)||this.unexpected(null,t)},X.canInsertSemicolon=function(){return this.match(R.eof)||this.match(R.braceR)||M.test(this.input.slice(this.state.lastTokEnd,this.state.start))},X.isLineTerminator=function(){return this.eat(R.semi)||this.canInsertSemicolon()},X.semicolon=function(){this.isLineTerminator()||this.unexpected(null,R.semi)},X.expect=function(e,t){return this.eat(e)||this.unexpected(t,e)},X.unexpected=function(e){var t=arguments.length>1&&void 0!==arguments[1]?arguments[1]:"Unexpected token";t&&"object"===(void 0===t?"undefined":C(t))&&t.label&&(t="Unexpected token, expected "+t.label),this.raise(null!=e?e:this.state.start,t)};var z=J.prototype;z.parseTopLevel=function(e,t){return t.sourceType=this.options.sourceType,this.parseBlockBody(t,!0,!0,R.eof),e.program=this.finishNode(t,"Program"),e.comments=this.state.comments,e.tokens=this.state.tokens,this.finishNode(e,"File")};var $={kind:"loop"},Q={kind:"switch"};z.stmtToDirective=function(e){var t=e.expression,r=this.startNodeAt(t.start,t.loc.start),n=this.startNodeAt(e.start,e.loc.start),i=this.input.slice(t.start,t.end),s=r.value=i.slice(1,-1);return this.addExtra(r,"raw",i),this.addExtra(r,"rawValue",s),n.value=this.finishNodeAt(r,"DirectiveLiteral",t.end,t.loc.end),this.finishNodeAt(n,"Directive",e.end,e.loc.end)},z.parseStatement=function(e,t){this.match(R.at)&&this.parseDecorators(!0);var r=this.state.type,n=this.startNode();switch(r){case R._break:case R._continue:return this.parseBreakContinueStatement(n,r.keyword);case R._debugger:return this.parseDebuggerStatement(n);case R._do:return this.parseDoStatement(n);case R._for:return this.parseForStatement(n);case R._function:return e||this.unexpected(),this.parseFunctionStatement(n);case R._class:return e||this.unexpected(),this.parseClass(n,!0);case R._if:return this.parseIfStatement(n);case R._return:return this.parseReturnStatement(n);case R._switch:return this.parseSwitchStatement(n);case R._throw:return this.parseThrowStatement(n);case R._try:return this.parseTryStatement(n);case R._let:case R._const:e||this.unexpected();case R._var:return this.parseVarStatement(n,r);case R._while:return this.parseWhileStatement(n);case R._with:return this.parseWithStatement(n);case R.braceL:return this.parseBlock();case R.semi:return this.parseEmptyStatement(n);case R._export:case R._import:if(this.hasPlugin("dynamicImport")&&this.lookahead().type===R.parenL)break;return this.options.allowImportExportEverywhere||(t||this.raise(this.state.start,"'import' and 'export' may only appear at the top level"),this.inModule||this.raise(this.state.start,"'import' and 'export' may appear only with 'sourceType: \"module\"'")),r===R._import?this.parseImport(n):this.parseExport(n);case R.name:if("async"===this.state.value){var i=this.state.clone();if(this.next(),this.match(R._function)&&!this.canInsertSemicolon())return this.expect(R._function),this.parseFunction(n,!0,!1,!0);this.state=i}}var s=this.state.value,a=this.parseExpression();return r===R.name&&"Identifier"===a.type&&this.eat(R.colon)?this.parseLabeledStatement(n,s,a):this.parseExpressionStatement(n,a)},z.takeDecorators=function(e){this.state.decorators.length&&(e.decorators=this.state.decorators,this.state.decorators=[])},z.parseDecorators=function(e){for(;this.match(R.at);){var t=this.parseDecorator();this.state.decorators.push(t)}e&&this.match(R._export)||this.match(R._class)||this.raise(this.state.start,"Leading decorators must be attached to a class declaration")},z.parseDecorator=function(){this.hasPlugin("decorators")||this.unexpected();var e=this.startNode();return this.next(),e.expression=this.parseMaybeAssign(),this.finishNode(e,"Decorator")},z.parseBreakContinueStatement=function(e,t){var r="break"===t;this.next(),this.isLineTerminator()?e.label=null:this.match(R.name)?(e.label=this.parseIdentifier(),this.semicolon()):this.unexpected();var n=void 0;for(n=0;n=n.length)break;a=n[s++]}else{if(s=n.next(),s.done)break;a=s.value}a.name===t&&this.raise(r.start,"Label '"+t+"' is already declared")}for(var o=this.state.type.isLoop?"loop":this.match(R._switch)?"switch":null,u=this.state.labels.length-1;u>=0;u--){var l=this.state.labels[u];if(l.statementStart!==e.start)break;l.statementStart=this.state.start,l.kind=o}return this.state.labels.push({name:t,kind:o,statementStart:this.state.start}),e.body=this.parseStatement(!0),this.state.labels.pop(),e.label=r,this.finishNode(e,"LabeledStatement")},z.parseExpressionStatement=function(e,t){return e.expression=t,this.semicolon(),this.finishNode(e,"ExpressionStatement")},z.parseBlock=function(e){var t=this.startNode();return this.expect(R.braceL),this.parseBlockBody(t,e,!1,R.braceR),this.finishNode(t,"BlockStatement")},z.isValidDirective=function(e){return"ExpressionStatement"===e.type&&"StringLiteral"===e.expression.type&&!e.expression.extra.parenthesized},z.parseBlockBody=function(e,t,r,n){e.body=[],e.directives=[];for(var i=!1,s=void 0,a=void 0;!this.eat(n);){i||!this.state.containsOctal||a||(a=this.state.octalPosition);var o=this.parseStatement(!0,r);if(t&&!i&&this.isValidDirective(o)){var u=this.stmtToDirective(o);e.directives.push(u),void 0===s&&"use strict"===u.value.value&&(s=this.state.strict,this.setStrict(!0),a&&this.raise(a,"Octal literal in strict mode"))}else i=!0,e.body.push(o)}!1===s&&this.setStrict(!1)},z.parseFor=function(e,t){return e.init=t,this.expect(R.semi),e.test=this.match(R.semi)?null:this.parseExpression(),this.expect(R.semi),e.update=this.match(R.parenR)?null:this.parseExpression(),this.expect(R.parenR),e.body=this.parseStatement(!1),this.state.labels.pop(),this.finishNode(e,"ForStatement")},z.parseForIn=function(e,t,r){var n=void 0;return r?(this.eatContextual("of"),n="ForAwaitStatement"):(n=this.match(R._in)?"ForInStatement":"ForOfStatement",this.next()),e.left=t,e.right=this.parseExpression(),this.expect(R.parenR),e.body=this.parseStatement(!1),this.state.labels.pop(),this.finishNode(e,n)},z.parseVar=function(e,t,r){for(e.declarations=[],e.kind=r.keyword;;){var n=this.startNode();if(this.parseVarHead(n),this.eat(R.eq)?n.init=this.parseMaybeAssign(t):r!==R._const||this.match(R._in)||this.isContextual("of")?"Identifier"===n.id.type||t&&(this.match(R._in)||this.isContextual("of"))?n.init=null:this.raise(this.state.lastTokEnd,"Complex binding patterns require an initialization value"):this.unexpected(),e.declarations.push(this.finishNode(n,"VariableDeclarator")),!this.eat(R.comma))break}return e},z.parseVarHead=function(e){e.id=this.parseBindingAtom(),this.checkLVal(e.id,!0,void 0,"variable declaration")},z.parseFunction=function(e,t,r,n,i){var s=this.state.inMethod;return this.state.inMethod=!1,this.initFunction(e,n),this.match(R.star)&&(e.async&&!this.hasPlugin("asyncGenerators")?this.unexpected():(e.generator=!0,this.next())),!t||i||this.match(R.name)||this.match(R._yield)||this.unexpected(),(this.match(R.name)||this.match(R._yield))&&(e.id=this.parseBindingIdentifier()),this.parseFunctionParams(e),this.parseFunctionBody(e,r),this.state.inMethod=s,this.finishNode(e,t?"FunctionDeclaration":"FunctionExpression")},z.parseFunctionParams=function(e){this.expect(R.parenL),e.params=this.parseBindingList(R.parenR)},z.parseClass=function(e,t,r){return this.next(),this.takeDecorators(e),this.parseClassId(e,t,r),this.parseClassSuper(e),this.parseClassBody(e),this.finishNode(e,t?"ClassDeclaration":"ClassExpression")},z.isClassProperty=function(){return this.match(R.eq)||this.match(R.semi)||this.match(R.braceR)},z.isClassMethod=function(){return this.match(R.parenL)},z.isNonstaticConstructor=function(e){return!(e.computed||e.static||"constructor"!==e.key.name&&"constructor"!==e.key.value)},z.parseClassBody=function(e){var t=this.state.strict;this.state.strict=!0;var r=!1,n=!1,i=[],s=this.startNode();for(s.body=[],this.expect(R.braceL);!this.eat(R.braceR);)if(this.eat(R.semi))i.length>0&&this.raise(this.state.lastTokEnd,"Decorators must not be followed by a semicolon");else if(this.match(R.at))i.push(this.parseDecorator());else{var a=this.startNode();if(i.length&&(a.decorators=i,i=[]),a.static=!1,this.match(R.name)&&"static"===this.state.value){var o=this.parseIdentifier(!0);if(this.isClassMethod()){a.kind="method",a.computed=!1,a.key=o,this.parseClassMethod(s,a,!1,!1);continue}if(this.isClassProperty()){a.computed=!1,a.key=o,s.body.push(this.parseClassProperty(a));continue}a.static=!0}if(this.eat(R.star))a.kind="method",this.parsePropertyName(a),this.isNonstaticConstructor(a)&&this.raise(a.key.start,"Constructor can't be a generator"),a.computed||!a.static||"prototype"!==a.key.name&&"prototype"!==a.key.value||this.raise(a.key.start,"Classes may not have static property named prototype"),this.parseClassMethod(s,a,!0,!1);else{var u=this.match(R.name),l=this.parsePropertyName(a);if(a.computed||!a.static||"prototype"!==a.key.name&&"prototype"!==a.key.value||this.raise(a.key.start,"Classes may not have static property named prototype"),this.isClassMethod())this.isNonstaticConstructor(a)?(n?this.raise(l.start,"Duplicate constructor in the same class"):a.decorators&&this.raise(a.start,"You can't attach decorators to a class constructor"),n=!0,a.kind="constructor"):a.kind="method",this.parseClassMethod(s,a,!1,!1);else if(this.isClassProperty())this.isNonstaticConstructor(a)&&this.raise(a.key.start,"Classes may not have a non-static field named 'constructor'"),s.body.push(this.parseClassProperty(a));else if(u&&"async"===l.name&&!this.isLineTerminator()){var c=this.hasPlugin("asyncGenerators")&&this.eat(R.star);a.kind="method",this.parsePropertyName(a),this.isNonstaticConstructor(a)&&this.raise(a.key.start,"Constructor can't be an async function"),this.parseClassMethod(s,a,c,!0)}else!u||"get"!==l.name&&"set"!==l.name||this.isLineTerminator()&&this.match(R.star)?this.hasPlugin("classConstructorCall")&&u&&"call"===l.name&&this.match(R.name)&&"constructor"===this.state.value?(r?this.raise(a.start,"Duplicate constructor call in the same class"):a.decorators&&this.raise(a.start,"You can't attach decorators to a class constructor"),r=!0,a.kind="constructorCall",this.parsePropertyName(a),this.parseClassMethod(s,a,!1,!1)):this.isLineTerminator()?(this.isNonstaticConstructor(a)&&this.raise(a.key.start,"Classes may not have a non-static field named 'constructor'"),s.body.push(this.parseClassProperty(a))):this.unexpected():(a.kind=l.name,this.parsePropertyName(a),this.isNonstaticConstructor(a)&&this.raise(a.key.start,"Constructor can't have get/set modifier"),this.parseClassMethod(s,a,!1,!1),this.checkGetterSetterParamCount(a))}}i.length&&this.raise(this.state.start,"You have trailing decorators with no method"),e.body=this.finishNode(s,"ClassBody"),this.state.strict=t},z.parseClassProperty=function(e){return this.state.inClassProperty=!0,this.match(R.eq)?(this.hasPlugin("classProperties")||this.unexpected(),this.next(),e.value=this.parseMaybeAssign()):e.value=null,this.semicolon(),this.state.inClassProperty=!1,this.finishNode(e,"ClassProperty")},z.parseClassMethod=function(e,t,r,n){this.parseMethod(t,r,n),e.body.push(this.finishNode(t,"ClassMethod"))},z.parseClassId=function(e,t,r){this.match(R.name)?e.id=this.parseIdentifier():r||!t?e.id=null:this.unexpected()},z.parseClassSuper=function(e){e.superClass=this.eat(R._extends)?this.parseExprSubscripts():null},z.parseExport=function(e){if(this.next(),this.match(R.star)){var t=this.startNode();if(this.next(),!this.hasPlugin("exportExtensions")||!this.eatContextual("as"))return this.parseExportFrom(e,!0),this.finishNode(e,"ExportAllDeclaration");t.exported=this.parseIdentifier(),e.specifiers=[this.finishNode(t,"ExportNamespaceSpecifier")],this.parseExportSpecifiersMaybe(e),this.parseExportFrom(e,!0)}else if(this.hasPlugin("exportExtensions")&&this.isExportDefaultSpecifier()){var r=this.startNode();if(r.exported=this.parseIdentifier(!0),e.specifiers=[this.finishNode(r,"ExportDefaultSpecifier")],this.match(R.comma)&&this.lookahead().type===R.star){this.expect(R.comma);var n=this.startNode();this.expect(R.star),this.expectContextual("as"),n.exported=this.parseIdentifier(),e.specifiers.push(this.finishNode(n,"ExportNamespaceSpecifier"))}else this.parseExportSpecifiersMaybe(e);this.parseExportFrom(e,!0)}else{if(this.eat(R._default)){var i=this.startNode(),s=!1;return this.eat(R._function)?i=this.parseFunction(i,!0,!1,!1,!0):this.match(R._class)?i=this.parseClass(i,!0,!0):(s=!0,i=this.parseMaybeAssign()),e.declaration=i,s&&this.semicolon(),this.checkExport(e,!0,!0),this.finishNode(e,"ExportDefaultDeclaration")}this.shouldParseExportDeclaration()?(e.specifiers=[],e.source=null,e.declaration=this.parseExportDeclaration(e)):(e.declaration=null,e.specifiers=this.parseExportSpecifiers(),this.parseExportFrom(e))}return this.checkExport(e,!0),this.finishNode(e,"ExportNamedDeclaration")},z.parseExportDeclaration=function(){return this.parseStatement(!0)},z.isExportDefaultSpecifier=function(){if(this.match(R.name))return"async"!==this.state.value;if(!this.match(R._default))return!1;var e=this.lookahead();return e.type===R.comma||e.type===R.name&&"from"===e.value},z.parseExportSpecifiersMaybe=function(e){this.eat(R.comma)&&(e.specifiers=e.specifiers.concat(this.parseExportSpecifiers()))},z.parseExportFrom=function(e,t){this.eatContextual("from")?(e.source=this.match(R.string)?this.parseExprAtom():this.unexpected(),this.checkExport(e)):t?this.unexpected():e.source=null,this.semicolon()},z.shouldParseExportDeclaration=function(){return"var"===this.state.type.keyword||"const"===this.state.type.keyword||"let"===this.state.type.keyword||"function"===this.state.type.keyword||"class"===this.state.type.keyword||this.isContextual("async")},z.checkExport=function(e,t,r){if(t)if(r)this.checkDuplicateExports(e,"default");else if(e.specifiers&&e.specifiers.length)for(var n=e.specifiers,i=Array.isArray(n),s=0,n=i?n:n[Symbol.iterator]();;){var a;if(i){if(s>=n.length)break;a=n[s++]}else{if(s=n.next(),s.done)break;a=s.value}var o=a;this.checkDuplicateExports(o,o.exported.name)}else if(e.declaration)if("FunctionDeclaration"===e.declaration.type||"ClassDeclaration"===e.declaration.type)this.checkDuplicateExports(e,e.declaration.id.name);else if("VariableDeclaration"===e.declaration.type)for(var u=e.declaration.declarations,l=Array.isArray(u),c=0,u=l?u:u[Symbol.iterator]();;){var f;if(l){if(c>=u.length)break;f=u[c++]}else{if(c=u.next(),c.done)break;f=c.value}var p=f;this.checkDeclaration(p.id)}if(this.state.decorators.length){var d=e.declaration&&("ClassDeclaration"===e.declaration.type||"ClassExpression"===e.declaration.type);e.declaration&&d||this.raise(e.start,"You can only use decorators on an export when exporting a class"),this.takeDecorators(e.declaration)}},z.checkDeclaration=function(e){if("ObjectPattern"===e.type)for(var t=e.properties,r=Array.isArray(t),n=0,t=r?t:t[Symbol.iterator]();;){var i;if(r){if(n>=t.length)break;i=t[n++]}else{if(n=t.next(),n.done)break;i=n.value}var s=i;this.checkDeclaration(s)}else if("ArrayPattern"===e.type)for(var a=e.elements,o=Array.isArray(a),u=0,a=o?a:a[Symbol.iterator]();;){var l;if(o){if(u>=a.length)break;l=a[u++]}else{if(u=a.next(),u.done)break;l=u.value}var c=l;c&&this.checkDeclaration(c)}else"ObjectProperty"===e.type?this.checkDeclaration(e.value):"RestElement"===e.type||"RestProperty"===e.type?this.checkDeclaration(e.argument):"Identifier"===e.type&&this.checkDuplicateExports(e,e.name)},z.checkDuplicateExports=function(e,t){this.state.exportedIdentifiers.indexOf(t)>-1&&this.raiseDuplicateExportError(e,t),this.state.exportedIdentifiers.push(t)},z.raiseDuplicateExportError=function(e,t){this.raise(e.start,"default"===t?"Only one default export allowed per module.":"`"+t+"` has already been exported. Exported identifiers must be unique.")},z.parseExportSpecifiers=function(){var e=[],t=!0,r=void 0;for(this.expect(R.braceL);!this.eat(R.braceR);){if(t)t=!1;else if(this.expect(R.comma),this.eat(R.braceR))break;var n=this.match(R._default);n&&!r&&(r=!0);var i=this.startNode();i.local=this.parseIdentifier(n),i.exported=this.eatContextual("as")?this.parseIdentifier(!0):i.local.__clone(),e.push(this.finishNode(i,"ExportSpecifier"))}return r&&!this.isContextual("from")&&this.unexpected(),e},z.parseImport=function(e){return this.eat(R._import),this.match(R.string)?(e.specifiers=[],e.source=this.parseExprAtom()):(e.specifiers=[],this.parseImportSpecifiers(e),this.expectContextual("from"),e.source=this.match(R.string)?this.parseExprAtom():this.unexpected()),this.semicolon(),this.finishNode(e,"ImportDeclaration")},z.parseImportSpecifiers=function(e){var t=!0;if(this.match(R.name)){var r=this.state.start,n=this.state.startLoc;if(e.specifiers.push(this.parseImportSpecifierDefault(this.parseIdentifier(),r,n)),!this.eat(R.comma))return}if(this.match(R.star)){var i=this.startNode();return this.next(),this.expectContextual("as"),i.local=this.parseIdentifier(),this.checkLVal(i.local,!0,void 0,"import namespace specifier"),void e.specifiers.push(this.finishNode(i,"ImportNamespaceSpecifier"))}for(this.expect(R.braceL);!this.eat(R.braceR);){if(t)t=!1;else if(this.eat(R.colon)&&this.unexpected(null,"ES2015 named imports do not destructure. Use another statement for destructuring after the import."),this.expect(R.comma),this.eat(R.braceR))break;this.parseImportSpecifier(e)}},z.parseImportSpecifier=function(e){var t=this.startNode();t.imported=this.parseIdentifier(!0),this.eatContextual("as")?t.local=this.parseIdentifier():(this.checkReservedWord(t.imported.name,t.start,!0,!0),t.local=t.imported.__clone()),this.checkLVal(t.local,!0,void 0,"import specifier"),e.specifiers.push(this.finishNode(t,"ImportSpecifier"))},z.parseImportSpecifierDefault=function(e,t,r){var n=this.startNodeAt(t,r);return n.local=e,this.checkLVal(n.local,!0,void 0,"default import specifier"),this.finishNode(n,"ImportDefaultSpecifier")};var ee=J.prototype;ee.toAssignable=function(e,t,r){if(e)switch(e.type){case"Identifier":case"ObjectPattern":case"ArrayPattern":case"AssignmentPattern":break;case"ObjectExpression":e.type="ObjectPattern";for(var n=e.properties,i=Array.isArray(n),s=0,n=i?n:n[Symbol.iterator]();;){var a;if(i){if(s>=n.length)break;a=n[s++]}else{if(s=n.next(),s.done)break;a=s.value}var o=a;"ObjectMethod"===o.type?"get"===o.kind||"set"===o.kind?this.raise(o.key.start,"Object pattern can't contain getter or setter"):this.raise(o.key.start,"Object pattern can't contain methods"):this.toAssignable(o,t,"object destructuring pattern")}break;case"ObjectProperty":this.toAssignable(e.value,t,r);break;case"SpreadProperty":e.type="RestProperty";var u=e.argument;this.toAssignable(u,t,r);break;case"ArrayExpression":e.type="ArrayPattern",this.toAssignableList(e.elements,t,r);break;case"AssignmentExpression":"="===e.operator?(e.type="AssignmentPattern",delete e.operator):this.raise(e.left.end,"Only '=' operator can be used for specifying default value.");break;case"MemberExpression":if(!t)break;default:var l="Invalid left-hand side"+(r?" in "+r:"expression");this.raise(e.start,l)}return e},ee.toAssignableList=function(e,t,r){var n=e.length;if(n){var i=e[n-1];if(i&&"RestElement"===i.type)--n;else if(i&&"SpreadElement"===i.type){i.type="RestElement";var s=i.argument;this.toAssignable(s,t,r),"Identifier"!==s.type&&"MemberExpression"!==s.type&&"ArrayPattern"!==s.type&&this.unexpected(s.start),--n}}for(var a=0;a=s.length)break;u=s[o++]}else{if(o=s.next(),o.done)break;u=o.value}var l=u;"ObjectProperty"===l.type&&(l=l.value),this.checkLVal(l,t,r,"object destructuring pattern")}break;case"ArrayPattern":for(var c=e.elements,f=Array.isArray(c),p=0,c=f?c:c[Symbol.iterator]();;){var d;if(f){if(p>=c.length)break;d=c[p++]}else{if(p=c.next(),p.done)break;d=p.value}var h=d;h&&this.checkLVal(h,t,r,"array destructuring pattern")}break;case"AssignmentPattern":this.checkLVal(e.left,t,r,"assignment pattern");break;case"RestProperty":this.checkLVal(e.argument,t,r,"rest property");break;case"RestElement":this.checkLVal(e.argument,t,r,"rest element");break;default:var m=(t?"Binding invalid":"Invalid")+" left-hand side"+(n?" in "+n:"expression");this.raise(e.start,m)}};var te=J.prototype;te.checkPropClash=function(e,t){if(!e.computed&&!e.kind){var r=e.key;"__proto__"===("Identifier"===r.type?r.name:String(r.value))&&(t.proto&&this.raise(r.start,"Redefinition of __proto__ property"),t.proto=!0)}},te.getExpression=function(){this.nextToken();var e=this.parseExpression();return this.match(R.eof)||this.unexpected(),e},te.parseExpression=function(e,t){var r=this.state.start,n=this.state.startLoc,i=this.parseMaybeAssign(e,t);if(this.match(R.comma)){var s=this.startNodeAt(r,n);for(s.expressions=[i];this.eat(R.comma);)s.expressions.push(this.parseMaybeAssign(e,t));return this.toReferencedList(s.expressions),this.finishNode(s,"SequenceExpression")}return i},te.parseMaybeAssign=function(e,t,r,n){var i=this.state.start,s=this.state.startLoc;if(this.match(R._yield)&&this.state.inGenerator){var a=this.parseYield();return r&&(a=r.call(this,a,i,s)),a}var o=void 0;t?o=!1:(t={start:0},o=!0),(this.match(R.parenL)||this.match(R.name))&&(this.state.potentialArrowAt=this.state.start);var u=this.parseMaybeConditional(e,t,n);if(r&&(u=r.call(this,u,i,s)),this.state.type.isAssign){var l=this.startNodeAt(i,s);if(l.operator=this.state.value,l.left=this.match(R.eq)?this.toAssignable(u,void 0,"assignment expression"):u,t.start=0,this.checkLVal(u,void 0,void 0,"assignment expression"),u.extra&&u.extra.parenthesized){var c=void 0;"ObjectPattern"===u.type?c="`({a}) = 0` use `({a} = 0)`":"ArrayPattern"===u.type&&(c="`([a]) = 0` use `([a] = 0)`"),c&&this.raise(u.start,"You're trying to assign to a parenthesized expression, eg. instead of "+c)}return this.next(),l.right=this.parseMaybeAssign(e),this.finishNode(l,"AssignmentExpression")}return o&&t.start&&this.unexpected(t.start),u},te.parseMaybeConditional=function(e,t,r){var n=this.state.start,i=this.state.startLoc,s=this.parseExprOps(e,t);return t&&t.start?s:this.parseConditional(s,e,n,i,r)},te.parseConditional=function(e,t,r,n){if(this.eat(R.question)){var i=this.startNodeAt(r,n);return i.test=e,i.consequent=this.parseMaybeAssign(),this.expect(R.colon),i.alternate=this.parseMaybeAssign(t),this.finishNode(i,"ConditionalExpression")}return e},te.parseExprOps=function(e,t){var r=this.state.start,n=this.state.startLoc,i=this.parseMaybeUnary(t);return t&&t.start?i:this.parseExprOp(i,r,n,-1,e)},te.parseExprOp=function(e,t,r,n,i){var s=this.state.type.binop;if(!(null==s||i&&this.match(R._in))&&s>n){var a=this.startNodeAt(t,r);a.left=e,a.operator=this.state.value,"**"!==a.operator||"UnaryExpression"!==e.type||!e.extra||e.extra.parenthesizedArgument||e.extra.parenthesized||this.raise(e.argument.start,"Illegal expression. Wrap left hand side or entire exponentiation in parentheses.");var o=this.state.type;this.next();var u=this.state.start,l=this.state.startLoc;return a.right=this.parseExprOp(this.parseMaybeUnary(),u,l,o.rightAssociative?s-1:s,i),this.finishNode(a,o===R.logicalOR||o===R.logicalAND?"LogicalExpression":"BinaryExpression"),this.parseExprOp(a,t,r,n,i)}return e},te.parseMaybeUnary=function(e){if(this.state.type.prefix){var t=this.startNode(),r=this.match(R.incDec);t.operator=this.state.value,t.prefix=!0,this.next();var n=this.state.type;return t.argument=this.parseMaybeUnary(),this.addExtra(t,"parenthesizedArgument",!(n!==R.parenL||t.argument.extra&&t.argument.extra.parenthesized)),e&&e.start&&this.unexpected(e.start),r?this.checkLVal(t.argument,void 0,void 0,"prefix operation"):this.state.strict&&"delete"===t.operator&&"Identifier"===t.argument.type&&this.raise(t.start,"Deleting local variable in strict mode"),this.finishNode(t,r?"UpdateExpression":"UnaryExpression")}var i=this.state.start,s=this.state.startLoc,a=this.parseExprSubscripts(e);if(e&&e.start)return a;for(;this.state.type.postfix&&!this.canInsertSemicolon();){var o=this.startNodeAt(i,s);o.operator=this.state.value,o.prefix=!1,o.argument=a,this.checkLVal(a,void 0,void 0,"postfix operation"),this.next(),a=this.finishNode(o,"UpdateExpression")}return a},te.parseExprSubscripts=function(e){var t=this.state.start,r=this.state.startLoc,n=this.state.potentialArrowAt,i=this.parseExprAtom(e);return"ArrowFunctionExpression"===i.type&&i.start===n?i:e&&e.start?i:this.parseSubscripts(i,t,r)},te.parseSubscripts=function(e,t,r,n){for(;;){if(!n&&this.eat(R.doubleColon)){var i=this.startNodeAt(t,r);return i.object=e,i.callee=this.parseNoCallExpr(),this.parseSubscripts(this.finishNode(i,"BindExpression"),t,r,n)}if(this.eat(R.dot)){var s=this.startNodeAt(t,r);s.object=e,s.property=this.parseIdentifier(!0),s.computed=!1,e=this.finishNode(s,"MemberExpression")}else if(this.eat(R.bracketL)){var a=this.startNodeAt(t,r);a.object=e,a.property=this.parseExpression(),a.computed=!0,this.expect(R.bracketR),e=this.finishNode(a,"MemberExpression")}else if(!n&&this.match(R.parenL)){var o=this.state.potentialArrowAt===e.start&&"Identifier"===e.type&&"async"===e.name&&!this.canInsertSemicolon();this.next();var u=this.startNodeAt(t,r);if(u.callee=e,u.arguments=this.parseCallExpressionArguments(R.parenR,o),"Import"===u.callee.type&&1!==u.arguments.length&&this.raise(u.start,"import() requires exactly one argument"),e=this.finishNode(u,"CallExpression"),o&&this.shouldParseAsyncArrow())return this.parseAsyncArrowFromCallExpression(this.startNodeAt(t,r),u);this.toReferencedList(u.arguments)}else{if(!this.match(R.backQuote))return e;var l=this.startNodeAt(t,r);l.tag=e,l.quasi=this.parseTemplate(!0),e=this.finishNode(l,"TaggedTemplateExpression")}}},te.parseCallExpressionArguments=function(e,t){for(var r=[],n=void 0,i=!0;!this.eat(e);){if(i)i=!1;else if(this.expect(R.comma),this.eat(e))break;this.match(R.parenL)&&!n&&(n=this.state.start),r.push(this.parseExprListItem(!1,t?{start:0}:void 0,t?{start:0}:void 0))}return t&&n&&this.shouldParseAsyncArrow()&&this.unexpected(),r},te.shouldParseAsyncArrow=function(){return this.match(R.arrow)},te.parseAsyncArrowFromCallExpression=function(e,t){return this.expect(R.arrow),this.parseArrowExpression(e,t.arguments,!0)},te.parseNoCallExpr=function(){var e=this.state.start,t=this.state.startLoc;return this.parseSubscripts(this.parseExprAtom(),e,t,!0)},te.parseExprAtom=function(e){var t=this.state.potentialArrowAt===this.state.start,r=void 0;switch(this.state.type){case R._super:return this.state.inMethod||this.state.inClassProperty||this.options.allowSuperOutsideMethod||this.raise(this.state.start,"'super' outside of function or class"),r=this.startNode(),this.next(),this.match(R.parenL)||this.match(R.bracketL)||this.match(R.dot)||this.unexpected(),this.match(R.parenL)&&"constructor"!==this.state.inMethod&&!this.options.allowSuperOutsideMethod&&this.raise(r.start,"super() outside of class constructor"),this.finishNode(r,"Super");case R._import:return this.hasPlugin("dynamicImport")||this.unexpected(),r=this.startNode(),this.next(),this.match(R.parenL)||this.unexpected(null,R.parenL),this.finishNode(r,"Import");case R._this:return r=this.startNode(),this.next(),this.finishNode(r,"ThisExpression");case R._yield:this.state.inGenerator&&this.unexpected();case R.name:r=this.startNode();var n="await"===this.state.value&&this.state.inAsync,i=this.shouldAllowYieldIdentifier(),s=this.parseIdentifier(n||i);if("await"===s.name){if(this.state.inAsync||this.inModule)return this.parseAwait(r)}else{if("async"===s.name&&this.match(R._function)&&!this.canInsertSemicolon())return this.next(),this.parseFunction(r,!1,!1,!0);if(t&&"async"===s.name&&this.match(R.name)){var a=[this.parseIdentifier()];return this.expect(R.arrow),this.parseArrowExpression(r,a,!0)}}return t&&!this.canInsertSemicolon()&&this.eat(R.arrow)?this.parseArrowExpression(r,[s]):s;case R._do:if(this.hasPlugin("doExpressions")){var o=this.startNode();this.next();var u=this.state.inFunction,l=this.state.labels;return this.state.labels=[],this.state.inFunction=!1,o.body=this.parseBlock(!1,!0),this.state.inFunction=u,this.state.labels=l,this.finishNode(o,"DoExpression")}case R.regexp:var c=this.state.value;return r=this.parseLiteral(c.value,"RegExpLiteral"),r.pattern=c.pattern,r.flags=c.flags,r;case R.num:return this.parseLiteral(this.state.value,"NumericLiteral");case R.string:return this.parseLiteral(this.state.value,"StringLiteral");case R._null:return r=this.startNode(),this.next(),this.finishNode(r,"NullLiteral");case R._true:case R._false:return r=this.startNode(),r.value=this.match(R._true),this.next(),this.finishNode(r,"BooleanLiteral");case R.parenL:return this.parseParenAndDistinguishExpression(null,null,t);case R.bracketL:return r=this.startNode(),this.next(),r.elements=this.parseExprList(R.bracketR,!0,e),this.toReferencedList(r.elements),this.finishNode(r,"ArrayExpression");case R.braceL:return this.parseObj(!1,e);case R._function:return this.parseFunctionExpression();case R.at:this.parseDecorators();case R._class:return r=this.startNode(),this.takeDecorators(r),this.parseClass(r,!1);case R._new:return this.parseNew();case R.backQuote:return this.parseTemplate(!1);case R.doubleColon:r=this.startNode(),this.next(),r.object=null;var f=r.callee=this.parseNoCallExpr();if("MemberExpression"===f.type)return this.finishNode(r,"BindExpression");this.raise(f.start,"Binding should be performed on object property.");default:this.unexpected()}},te.parseFunctionExpression=function(){var e=this.startNode(),t=this.parseIdentifier(!0);return this.state.inGenerator&&this.eat(R.dot)&&this.hasPlugin("functionSent")?this.parseMetaProperty(e,t,"sent"):this.parseFunction(e,!1)},te.parseMetaProperty=function(e,t,r){return e.meta=t,e.property=this.parseIdentifier(!0),e.property.name!==r&&this.raise(e.property.start,"The only valid meta property for new is "+t.name+"."+r),this.finishNode(e,"MetaProperty")},te.parseLiteral=function(e,t,r,n){r=r||this.state.start,n=n||this.state.startLoc;var i=this.startNodeAt(r,n);return this.addExtra(i,"rawValue",e),this.addExtra(i,"raw",this.input.slice(r,this.state.end)),i.value=e,this.next(),this.finishNode(i,t)},te.parseParenExpression=function(){this.expect(R.parenL);var e=this.parseExpression();return this.expect(R.parenR),e},te.parseParenAndDistinguishExpression=function(e,t,r){e=e||this.state.start,t=t||this.state.startLoc;var n=void 0;this.expect(R.parenL);for(var i=this.state.start,s=this.state.startLoc,a=[],o={start:0},u={start:0},l=!0,c=void 0,f=void 0;!this.match(R.parenR);){if(l)l=!1;else if(this.expect(R.comma,u.start||null),this.match(R.parenR)){f=this.state.start;break}
-if(this.match(R.ellipsis)){var p=this.state.start,d=this.state.startLoc;c=this.state.start,a.push(this.parseParenItem(this.parseRest(),p,d));break}a.push(this.parseMaybeAssign(!1,o,this.parseParenItem,u))}var h=this.state.start,m=this.state.startLoc;this.expect(R.parenR);var y=this.startNodeAt(e,t);if(r&&this.shouldParseArrow()&&(y=this.parseArrow(y))){for(var v=a,g=Array.isArray(v),b=0,v=g?v:v[Symbol.iterator]();;){var E;if(g){if(b>=v.length)break;E=v[b++]}else{if(b=v.next(),b.done)break;E=b.value}var x=E;x.extra&&x.extra.parenthesized&&this.unexpected(x.extra.parenStart)}return this.parseArrowExpression(y,a)}return a.length||this.unexpected(this.state.lastTokStart),f&&this.unexpected(f),c&&this.unexpected(c),o.start&&this.unexpected(o.start),u.start&&this.unexpected(u.start),a.length>1?(n=this.startNodeAt(i,s),n.expressions=a,this.toReferencedList(n.expressions),this.finishNodeAt(n,"SequenceExpression",h,m)):n=a[0],this.addExtra(n,"parenthesized",!0),this.addExtra(n,"parenStart",e),n},te.shouldParseArrow=function(){return!this.canInsertSemicolon()},te.parseArrow=function(e){if(this.eat(R.arrow))return e},te.parseParenItem=function(e){return e},te.parseNew=function(){var e=this.startNode(),t=this.parseIdentifier(!0);if(this.eat(R.dot)){var r=this.parseMetaProperty(e,t,"target");return this.state.inFunction||this.raise(r.property.start,"new.target can only be used in functions"),r}return e.callee=this.parseNoCallExpr(),this.eat(R.parenL)?(e.arguments=this.parseExprList(R.parenR),this.toReferencedList(e.arguments)):e.arguments=[],this.finishNode(e,"NewExpression")},te.parseTemplateElement=function(e){var t=this.startNode();return null===this.state.value&&(e&&this.hasPlugin("templateInvalidEscapes")?this.state.invalidTemplateEscapePosition=null:this.raise(this.state.invalidTemplateEscapePosition,"Invalid escape sequence in template")),t.value={raw:this.input.slice(this.state.start,this.state.end).replace(/\r\n?/g,"\n"),cooked:this.state.value},this.next(),t.tail=this.match(R.backQuote),this.finishNode(t,"TemplateElement")},te.parseTemplate=function(e){var t=this.startNode();this.next(),t.expressions=[];var r=this.parseTemplateElement(e);for(t.quasis=[r];!r.tail;)this.expect(R.dollarBraceL),t.expressions.push(this.parseExpression()),this.expect(R.braceR),t.quasis.push(r=this.parseTemplateElement(e));return this.next(),this.finishNode(t,"TemplateLiteral")},te.parseObj=function(e,t){var r=[],n=Object.create(null),i=!0,s=this.startNode();s.properties=[],this.next();for(var a=null;!this.eat(R.braceR);){if(i)i=!1;else if(this.expect(R.comma),this.eat(R.braceR))break;for(;this.match(R.at);)r.push(this.parseDecorator());var o=this.startNode(),u=!1,l=!1,c=void 0,f=void 0;if(r.length&&(o.decorators=r,r=[]),this.hasPlugin("objectRestSpread")&&this.match(R.ellipsis)){if(o=this.parseSpread(e?{start:0}:void 0),o.type=e?"RestProperty":"SpreadProperty",e&&this.toAssignable(o.argument,!0,"object pattern"),s.properties.push(o),!e)continue;var p=this.state.start;if(null===a){if(this.eat(R.braceR))break;if(this.match(R.comma)&&this.lookahead().type===R.braceR)continue;a=p;continue}this.unexpected(a,"Cannot have multiple rest elements when destructuring")}if(o.method=!1,o.shorthand=!1,(e||t)&&(c=this.state.start,f=this.state.startLoc),e||(u=this.eat(R.star)),!e&&this.isContextual("async")){u&&this.unexpected();var d=this.parseIdentifier();this.match(R.colon)||this.match(R.parenL)||this.match(R.braceR)||this.match(R.eq)||this.match(R.comma)?(o.key=d,o.computed=!1):(l=!0,this.hasPlugin("asyncGenerators")&&(u=this.eat(R.star)),this.parsePropertyName(o))}else this.parsePropertyName(o);this.parseObjPropValue(o,c,f,u,l,e,t),this.checkPropClash(o,n),o.shorthand&&this.addExtra(o,"shorthand",!0),s.properties.push(o)}return null!==a&&this.unexpected(a,"The rest element has to be the last element when destructuring"),r.length&&this.raise(this.state.start,"You have trailing decorators with no property"),this.finishNode(s,e?"ObjectPattern":"ObjectExpression")},te.isGetterOrSetterMethod=function(e,t){return!t&&!e.computed&&"Identifier"===e.key.type&&("get"===e.key.name||"set"===e.key.name)&&(this.match(R.string)||this.match(R.num)||this.match(R.bracketL)||this.match(R.name)||this.state.type.keyword)},te.checkGetterSetterParamCount=function(e){var t="get"===e.kind?0:1;if(e.params.length!==t){var r=e.start;"get"===e.kind?this.raise(r,"getter should have no params"):this.raise(r,"setter should have exactly one param")}},te.parseObjectMethod=function(e,t,r,n){return r||t||this.match(R.parenL)?(n&&this.unexpected(),e.kind="method",e.method=!0,this.parseMethod(e,t,r),this.finishNode(e,"ObjectMethod")):this.isGetterOrSetterMethod(e,n)?((t||r)&&this.unexpected(),e.kind=e.key.name,this.parsePropertyName(e),this.parseMethod(e),this.checkGetterSetterParamCount(e),this.finishNode(e,"ObjectMethod")):void 0},te.parseObjectProperty=function(e,t,r,n,i){return this.eat(R.colon)?(e.value=n?this.parseMaybeDefault(this.state.start,this.state.startLoc):this.parseMaybeAssign(!1,i),this.finishNode(e,"ObjectProperty")):e.computed||"Identifier"!==e.key.type?void 0:(this.checkReservedWord(e.key.name,e.key.start,!0,!0),n?e.value=this.parseMaybeDefault(t,r,e.key.__clone()):this.match(R.eq)&&i?(i.start||(i.start=this.state.start),e.value=this.parseMaybeDefault(t,r,e.key.__clone())):e.value=e.key.__clone(),e.shorthand=!0,this.finishNode(e,"ObjectProperty"))},te.parseObjPropValue=function(e,t,r,n,i,s,a){var o=this.parseObjectMethod(e,n,i,s)||this.parseObjectProperty(e,t,r,s,a);return o||this.unexpected(),o},te.parsePropertyName=function(e){if(this.eat(R.bracketL))e.computed=!0,e.key=this.parseMaybeAssign(),this.expect(R.bracketR);else{e.computed=!1;var t=this.state.inPropertyName;this.state.inPropertyName=!0,e.key=this.match(R.num)||this.match(R.string)?this.parseExprAtom():this.parseIdentifier(!0),this.state.inPropertyName=t}return e.key},te.initFunction=function(e,t){e.id=null,e.generator=!1,e.expression=!1,e.async=!!t},te.parseMethod=function(e,t,r){var n=this.state.inMethod;return this.state.inMethod=e.kind||!0,this.initFunction(e,r),this.expect(R.parenL),e.params=this.parseBindingList(R.parenR),e.generator=!!t,this.parseFunctionBody(e),this.state.inMethod=n,e},te.parseArrowExpression=function(e,t,r){return this.initFunction(e,r),e.params=this.toAssignableList(t,!0,"arrow function parameters"),this.parseFunctionBody(e,!0),this.finishNode(e,"ArrowFunctionExpression")},te.isStrictBody=function(e,t){if(!t&&e.body.directives.length)for(var r=e.body.directives,n=Array.isArray(r),i=0,r=n?r:r[Symbol.iterator]();;){var s;if(n){if(i>=r.length)break;s=r[i++]}else{if(i=r.next(),i.done)break;s=i.value}var a=s;if("use strict"===a.value.value)return!0}return!1},te.parseFunctionBody=function(e,t){var r=t&&!this.match(R.braceL),n=this.state.inAsync;if(this.state.inAsync=e.async,r)e.body=this.parseMaybeAssign(),e.expression=!0;else{var i=this.state.inFunction,s=this.state.inGenerator,a=this.state.labels;this.state.inFunction=!0,this.state.inGenerator=e.generator,this.state.labels=[],e.body=this.parseBlock(!0),e.expression=!1,this.state.inFunction=i,this.state.inGenerator=s,this.state.labels=a}this.state.inAsync=n;var o=this.isStrictBody(e,r),u=this.state.strict||t||o;if(o&&e.id&&"Identifier"===e.id.type&&"yield"===e.id.name&&this.raise(e.id.start,"Binding yield in strict mode"),u){var l=Object.create(null),c=this.state.strict;o&&(this.state.strict=!0),e.id&&this.checkLVal(e.id,!0,void 0,"function name");for(var f=e.params,p=Array.isArray(f),d=0,f=p?f:f[Symbol.iterator]();;){var h;if(p){if(d>=f.length)break;h=f[d++]}else{if(d=f.next(),d.done)break;h=d.value}var m=h;o&&"Identifier"!==m.type&&this.raise(m.start,"Non-simple parameter in strict mode"),this.checkLVal(m,!0,l,"function parameter list")}this.state.strict=c}},te.parseExprList=function(e,t,r){for(var n=[],i=!0;!this.eat(e);){if(i)i=!1;else if(this.expect(R.comma),this.eat(e))break;n.push(this.parseExprListItem(t,r))}return n},te.parseExprListItem=function(e,t,r){return e&&this.match(R.comma)?null:this.match(R.ellipsis)?this.parseSpread(t):this.parseMaybeAssign(!1,t,this.parseParenItem,r)},te.parseIdentifier=function(e){var t=this.startNode();return e||this.checkReservedWord(this.state.value,this.state.start,!!this.state.type.keyword,!1),this.match(R.name)?t.name=this.state.value:this.state.type.keyword?t.name=this.state.type.keyword:this.unexpected(),!e&&"await"===t.name&&this.state.inAsync&&this.raise(t.start,"invalid use of await inside of an async function"),t.loc.identifierName=t.name,this.next(),this.finishNode(t,"Identifier")},te.checkReservedWord=function(e,t,r,n){(this.isReservedWord(e)||r&&this.isKeyword(e))&&this.raise(t,e+" is a reserved word"),this.state.strict&&(v.strict(e)||n&&v.strictBind(e))&&this.raise(t,e+" is a reserved word in strict mode")},te.parseAwait=function(e){return this.state.inAsync||this.unexpected(),this.match(R.star)&&this.raise(e.start,"await* has been removed from the async functions proposal. Use Promise.all() instead."),e.argument=this.parseMaybeUnary(),this.finishNode(e,"AwaitExpression")},te.parseYield=function(){var e=this.startNode();return this.next(),this.match(R.semi)||this.canInsertSemicolon()||!this.match(R.star)&&!this.state.type.startsExpr?(e.delegate=!1,e.argument=null):(e.delegate=this.eat(R.star),e.argument=this.parseMaybeAssign()),this.finishNode(e,"YieldExpression")};var re=J.prototype,ne=["leadingComments","trailingComments","innerComments"],ie=function(){function e(t,r,n){w(this,e),this.type="",this.start=t,this.end=0,this.loc=new G(r),n&&(this.loc.filename=n)}return e.prototype.__clone=function(){var t=new e;for(var r in this)ne.indexOf(r)<0&&(t[r]=this[r]);return t},e}();re.startNode=function(){return new ie(this.state.start,this.state.startLoc,this.filename)},re.startNodeAt=function(e,t){return new ie(e,t,this.filename)},re.finishNode=function(e,t){return c.call(this,e,t,this.state.lastTokEnd,this.state.lastTokEndLoc)},re.finishNodeAt=function(e,t,r,n){return c.call(this,e,t,r,n)},J.prototype.raise=function(e,t){var r=u(this.input,e);t+=" ("+r.line+":"+r.column+")";var n=new SyntaxError(t);throw n.pos=e,n.loc=r,n};var se=J.prototype;se.addComment=function(e){this.filename&&(e.loc.filename=this.filename),this.state.trailingComments.push(e),this.state.leadingComments.push(e)},se.processComment=function(e){if(!("Program"===e.type&&e.body.length>0)){var t=this.state.commentStack,r=void 0,n=void 0,i=void 0,s=void 0,a=void 0;if(this.state.trailingComments.length>0)this.state.trailingComments[0].start>=e.end?(i=this.state.trailingComments,this.state.trailingComments=[]):this.state.trailingComments.length=0;else{var o=f(t);t.length>0&&o.trailingComments&&o.trailingComments[0].start>=e.end&&(i=o.trailingComments,o.trailingComments=null)}for(t.length>0&&f(t).start>=e.start&&(r=t.pop());t.length>0&&f(t).start>=e.start;)n=t.pop();if(!n&&r&&(n=r),r&&this.state.leadingComments.length>0){var u=f(this.state.leadingComments);if("ObjectProperty"===r.type){if(u.start>=e.start&&this.state.commentPreviousNode){for(a=0;a0&&(r.trailingComments=this.state.leadingComments,this.state.leadingComments=[])}}else if("CallExpression"===e.type&&e.arguments&&e.arguments.length){var l=f(e.arguments);l&&u.start>=l.start&&u.end<=e.end&&this.state.commentPreviousNode&&this.state.leadingComments.length>0&&(l.trailingComments=this.state.leadingComments,this.state.leadingComments=[])}}if(n){if(n.leadingComments)if(n!==e&&f(n.leadingComments).end<=e.start)e.leadingComments=n.leadingComments,n.leadingComments=null;else for(s=n.leadingComments.length-2;s>=0;--s)if(n.leadingComments[s].end<=e.start){e.leadingComments=n.leadingComments.splice(0,s+1);break}}else if(this.state.leadingComments.length>0)if(f(this.state.leadingComments).end<=e.start){if(this.state.commentPreviousNode)for(a=0;a0&&(e.leadingComments=this.state.leadingComments,this.state.leadingComments=[])}else{for(s=0;se.start);s++);e.leadingComments=this.state.leadingComments.slice(0,s),0===e.leadingComments.length&&(e.leadingComments=null),i=this.state.leadingComments.slice(s),0===i.length&&(i=null)}this.state.commentPreviousNode=e,i&&(i.length&&i[0].start>=e.start&&f(i).end<=e.end?e.innerComments=i:e.trailingComments=i),t.push(e)}};var ae=J.prototype;ae.estreeParseRegExpLiteral=function(e){var t=e.pattern,r=e.flags,n=null;try{n=new RegExp(t,r)}catch(e){}var i=this.estreeParseLiteral(n);return i.regex={pattern:t,flags:r},i},ae.estreeParseLiteral=function(e){return this.parseLiteral(e,"Literal")},ae.directiveToStmt=function(e){var t=e.value,r=this.startNodeAt(e.start,e.loc.start),n=this.startNodeAt(t.start,t.loc.start);return n.value=t.value,n.raw=t.extra.raw,r.expression=this.finishNodeAt(n,"Literal",t.end,t.loc.end),r.directive=t.extra.raw.slice(1,-1),this.finishNodeAt(r,"ExpressionStatement",e.end,e.loc.end)};var oe=function(e){e.extend("checkDeclaration",function(e){return function(t){p(t)?this.checkDeclaration(t.value):e.call(this,t)}}),e.extend("checkGetterSetterParamCount",function(){return function(e){var t="get"===e.kind?0:1;if(e.value.params.length!==t){var r=e.start;"get"===e.kind?this.raise(r,"getter should have no params"):this.raise(r,"setter should have exactly one param")}}}),e.extend("checkLVal",function(e){return function(t,r,n){var i=this;switch(t.type){case"ObjectPattern":t.properties.forEach(function(e){i.checkLVal("Property"===e.type?e.value:e,r,n,"object destructuring pattern")});break;default:for(var s=arguments.length,a=Array(s>3?s-3:0),o=3;o0)for(var r=e.body.body,n=Array.isArray(r),i=0,r=n?r:r[Symbol.iterator]();;){var s;if(n){if(i>=r.length)break;s=r[i++]}else{if(i=r.next(),i.done)break;s=i.value}var a=s;if("ExpressionStatement"!==a.type||"Literal"!==a.expression.type)break;if("use strict"===a.expression.value)return!0}return!1}}),e.extend("isValidDirective",function(){return function(e){return!("ExpressionStatement"!==e.type||"Literal"!==e.expression.type||"string"!=typeof e.expression.value||e.expression.extra&&e.expression.extra.parenthesized)}}),e.extend("stmtToDirective",function(e){return function(t){var r=e.call(this,t),n=t.expression.value;return r.value.value=n,r}}),e.extend("parseBlockBody",function(e){return function(t){for(var r=this,n=arguments.length,i=Array(n>1?n-1:0),s=1;s1?n-1:0),s=1;s2?n-2:0),s=2;s=a.length)break;l=a[u++]}else{if(u=a.next(),u.done)break;l=u.value}var c=l;"get"===c.kind||"set"===c.kind?this.raise(c.key.start,"Object pattern can't contain getter or setter"):c.method?this.raise(c.key.start,"Object pattern can't contain methods"):this.toAssignable(c,r,"object destructuring pattern")}return t}return e.call.apply(e,[this,t,r].concat(i))}})},ue=["any","mixed","empty","bool","boolean","number","string","void","null"],le=J.prototype;le.flowParseTypeInitialiser=function(e){var t=this.state.inType;this.state.inType=!0,this.expect(e||R.colon);var r=this.flowParseType();return this.state.inType=t,r},le.flowParsePredicate=function(){var e=this.startNode(),t=this.state.startLoc,r=this.state.start;this.expect(R.modulo);var n=this.state.startLoc;return this.expectContextual("checks"),t.line===n.line&&t.column===n.column-1||this.raise(r,"Spaces between ´%´ and ´checks´ are not allowed here."),this.eat(R.parenL)?(e.expression=this.parseExpression(),this.expect(R.parenR),this.finishNode(e,"DeclaredPredicate")):this.finishNode(e,"InferredPredicate")},le.flowParseTypeAndPredicateInitialiser=function(){var e=this.state.inType;this.state.inType=!0,this.expect(R.colon);var t=null,r=null;return this.match(R.modulo)?(this.state.inType=e,r=this.flowParsePredicate()):(t=this.flowParseType(),this.state.inType=e,this.match(R.modulo)&&(r=this.flowParsePredicate())),[t,r]},le.flowParseDeclareClass=function(e){return this.next(),this.flowParseInterfaceish(e,!0),this.finishNode(e,"DeclareClass")},le.flowParseDeclareFunction=function(e){this.next();var t=e.id=this.parseIdentifier(),r=this.startNode(),n=this.startNode();this.isRelational("<")?r.typeParameters=this.flowParseTypeParameterDeclaration():r.typeParameters=null,this.expect(R.parenL);var i=this.flowParseFunctionTypeParams();r.params=i.params,r.rest=i.rest,this.expect(R.parenR);var s=null,a=this.flowParseTypeAndPredicateInitialiser();return r.returnType=a[0],s=a[1],n.typeAnnotation=this.finishNode(r,"FunctionTypeAnnotation"),n.predicate=s,t.typeAnnotation=this.finishNode(n,"TypeAnnotation"),this.finishNode(t,t.type),this.semicolon(),this.finishNode(e,"DeclareFunction")},le.flowParseDeclare=function(e){return this.match(R._class)?this.flowParseDeclareClass(e):this.match(R._function)?this.flowParseDeclareFunction(e):this.match(R._var)?this.flowParseDeclareVariable(e):this.isContextual("module")?this.lookahead().type===R.dot?this.flowParseDeclareModuleExports(e):this.flowParseDeclareModule(e):this.isContextual("type")?this.flowParseDeclareTypeAlias(e):this.isContextual("opaque")?this.flowParseDeclareOpaqueType(e):this.isContextual("interface")?this.flowParseDeclareInterface(e):this.match(R._export)?this.flowParseDeclareExportDeclaration(e):void this.unexpected()},le.flowParseDeclareExportDeclaration=function(e){if(this.expect(R._export),this.isContextual("opaque"))return e.declaration=this.flowParseDeclare(this.startNode()),e.default=!1,this.finishNode(e,"DeclareExportDeclaration");throw this.unexpected()},le.flowParseDeclareVariable=function(e){return this.next(),e.id=this.flowParseTypeAnnotatableIdentifier(),this.semicolon(),this.finishNode(e,"DeclareVariable")},le.flowParseDeclareModule=function(e){this.next(),this.match(R.string)?e.id=this.parseExprAtom():e.id=this.parseIdentifier();var t=e.body=this.startNode(),r=t.body=[];for(this.expect(R.braceL);!this.match(R.braceR);){var n=this.startNode();if(this.match(R._import)){var i=this.lookahead();"type"!==i.value&&"typeof"!==i.value&&this.unexpected(null,"Imports within a `declare module` body must always be `import type` or `import typeof`"),this.parseImport(n)}else this.expectContextual("declare","Only declares and type imports are allowed inside declare module"),n=this.flowParseDeclare(n,!0);r.push(n)}return this.expect(R.braceR),this.finishNode(t,"BlockStatement"),this.finishNode(e,"DeclareModule")},le.flowParseDeclareModuleExports=function(e){return this.expectContextual("module"),this.expect(R.dot),this.expectContextual("exports"),e.typeAnnotation=this.flowParseTypeAnnotation(),this.semicolon(),this.finishNode(e,"DeclareModuleExports")},le.flowParseDeclareTypeAlias=function(e){return this.next(),this.flowParseTypeAlias(e),this.finishNode(e,"DeclareTypeAlias")},le.flowParseDeclareOpaqueType=function(e){return this.next(),this.flowParseOpaqueType(e,!0),this.finishNode(e,"DeclareOpaqueType")},le.flowParseDeclareInterface=function(e){return this.next(),this.flowParseInterfaceish(e),this.finishNode(e,"DeclareInterface")},le.flowParseInterfaceish=function(e){if(e.id=this.parseIdentifier(),this.isRelational("<")?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.extends=[],e.mixins=[],this.eat(R._extends))do{e.extends.push(this.flowParseInterfaceExtends())}while(this.eat(R.comma));if(this.isContextual("mixins")){this.next();do{e.mixins.push(this.flowParseInterfaceExtends())}while(this.eat(R.comma))}e.body=this.flowParseObjectType(!0,!1,!1)},le.flowParseInterfaceExtends=function(){var e=this.startNode();return e.id=this.flowParseQualifiedTypeIdentifier(),this.isRelational("<")?e.typeParameters=this.flowParseTypeParameterInstantiation():e.typeParameters=null,this.finishNode(e,"InterfaceExtends")},le.flowParseInterface=function(e){return this.flowParseInterfaceish(e,!1),this.finishNode(e,"InterfaceDeclaration")},le.flowParseRestrictedIdentifier=function(e){return ue.indexOf(this.state.value)>-1&&this.raise(this.state.start,"Cannot overwrite primitive type "+this.state.value),this.parseIdentifier(e)},le.flowParseTypeAlias=function(e){return e.id=this.flowParseRestrictedIdentifier(),this.isRelational("<")?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.right=this.flowParseTypeInitialiser(R.eq),this.semicolon(),this.finishNode(e,"TypeAlias")},le.flowParseOpaqueType=function(e,t){return this.expectContextual("type"),e.id=this.flowParseRestrictedIdentifier(),this.isRelational("<")?e.typeParameters=this.flowParseTypeParameterDeclaration():e.typeParameters=null,e.supertype=null,this.match(R.colon)&&(e.supertype=this.flowParseTypeInitialiser(R.colon)),e.impltype=null,t||(e.impltype=this.flowParseTypeInitialiser(R.eq)),this.semicolon(),this.finishNode(e,"OpaqueType")},le.flowParseTypeParameter=function(){var e=this.startNode(),t=this.flowParseVariance(),r=this.flowParseTypeAnnotatableIdentifier();return e.name=r.name,e.variance=t,e.bound=r.typeAnnotation,this.match(R.eq)&&(this.eat(R.eq),e.default=this.flowParseType()),this.finishNode(e,"TypeParameter")},le.flowParseTypeParameterDeclaration=function(){var e=this.state.inType,t=this.startNode();t.params=[],this.state.inType=!0,this.isRelational("<")||this.match(R.jsxTagStart)?this.next():this.unexpected();do{t.params.push(this.flowParseTypeParameter()),this.isRelational(">")||this.expect(R.comma)}while(!this.isRelational(">"));return this.expectRelational(">"),this.state.inType=e,this.finishNode(t,"TypeParameterDeclaration")},le.flowParseTypeParameterInstantiation=function(){var e=this.startNode(),t=this.state.inType;for(e.params=[],this.state.inType=!0,this.expectRelational("<");!this.isRelational(">");)e.params.push(this.flowParseType()),this.isRelational(">")||this.expect(R.comma);return this.expectRelational(">"),this.state.inType=t,this.finishNode(e,"TypeParameterInstantiation")},le.flowParseObjectPropertyKey=function(){return this.match(R.num)||this.match(R.string)?this.parseExprAtom():this.parseIdentifier(!0)},le.flowParseObjectTypeIndexer=function(e,t,r){return e.static=t,this.expect(R.bracketL),this.lookahead().type===R.colon?(e.id=this.flowParseObjectPropertyKey(),e.key=this.flowParseTypeInitialiser()):(e.id=null,e.key=this.flowParseType()),this.expect(R.bracketR),e.value=this.flowParseTypeInitialiser(),e.variance=r,this.flowObjectTypeSemicolon(),this.finishNode(e,"ObjectTypeIndexer")},le.flowParseObjectTypeMethodish=function(e){for(e.params=[],e.rest=null,e.typeParameters=null,this.isRelational("<")&&(e.typeParameters=this.flowParseTypeParameterDeclaration()),this.expect(R.parenL);!this.match(R.parenR)&&!this.match(R.ellipsis);)e.params.push(this.flowParseFunctionTypeParam()),this.match(R.parenR)||this.expect(R.comma);return this.eat(R.ellipsis)&&(e.rest=this.flowParseFunctionTypeParam()),this.expect(R.parenR),e.returnType=this.flowParseTypeInitialiser(),this.finishNode(e,"FunctionTypeAnnotation")},le.flowParseObjectTypeMethod=function(e,t,r,n){var i=this.startNodeAt(e,t);return i.value=this.flowParseObjectTypeMethodish(this.startNodeAt(e,t)),i.static=r,i.key=n,i.optional=!1,this.flowObjectTypeSemicolon(),this.finishNode(i,"ObjectTypeProperty")},le.flowParseObjectTypeCallProperty=function(e,t){var r=this.startNode();return e.static=t,e.value=this.flowParseObjectTypeMethodish(r),this.flowObjectTypeSemicolon(),this.finishNode(e,"ObjectTypeCallProperty")},le.flowParseObjectType=function(e,t,r){var n=this.state.inType;this.state.inType=!0;var i=this.startNode(),s=void 0,a=void 0,o=!1;i.callProperties=[],i.properties=[],i.indexers=[];var u=void 0,l=void 0;for(t&&this.match(R.braceBarL)?(this.expect(R.braceBarL),u=R.braceBarR,l=!0):(this.expect(R.braceL),u=R.braceR,l=!1),i.exact=l;!this.match(u);){var c=!1,f=this.state.start,p=this.state.startLoc;s=this.startNode(),e&&this.isContextual("static")&&this.lookahead().type!==R.colon&&(this.next(),o=!0);var d=this.state.start,h=this.flowParseVariance();this.match(R.bracketL)?i.indexers.push(this.flowParseObjectTypeIndexer(s,o,h)):this.match(R.parenL)||this.isRelational("<")?(h&&this.unexpected(d),i.callProperties.push(this.flowParseObjectTypeCallProperty(s,o))):this.match(R.ellipsis)?(r||this.unexpected(null,"Spread operator cannot appear in class or interface definitions"),h&&this.unexpected(h.start,"Spread properties cannot have variance"),this.expect(R.ellipsis),s.argument=this.flowParseType(),this.flowObjectTypeSemicolon(),i.properties.push(this.finishNode(s,"ObjectTypeSpreadProperty"))):(a=this.flowParseObjectPropertyKey(),this.isRelational("<")||this.match(R.parenL)?(h&&this.unexpected(h.start),i.properties.push(this.flowParseObjectTypeMethod(f,p,o,a))):(this.eat(R.question)&&(c=!0),s.key=a,s.value=this.flowParseTypeInitialiser(),s.optional=c,s.static=o,s.variance=h,this.flowObjectTypeSemicolon(),i.properties.push(this.finishNode(s,"ObjectTypeProperty")))),o=!1}this.expect(u);var m=this.finishNode(i,"ObjectTypeAnnotation");return this.state.inType=n,m},le.flowObjectTypeSemicolon=function(){this.eat(R.semi)||this.eat(R.comma)||this.match(R.braceR)||this.match(R.braceBarR)||this.unexpected()},le.flowParseQualifiedTypeIdentifier=function(e,t,r){e=e||this.state.start,t=t||this.state.startLoc;for(var n=r||this.parseIdentifier();this.eat(R.dot);){var i=this.startNodeAt(e,t);i.qualification=n,i.id=this.parseIdentifier(),n=this.finishNode(i,"QualifiedTypeIdentifier")}return n},le.flowParseGenericType=function(e,t,r){var n=this.startNodeAt(e,t);return n.typeParameters=null,n.id=this.flowParseQualifiedTypeIdentifier(e,t,r),this.isRelational("<")&&(n.typeParameters=this.flowParseTypeParameterInstantiation()),this.finishNode(n,"GenericTypeAnnotation")},le.flowParseTypeofType=function(){var e=this.startNode();return this.expect(R._typeof),e.argument=this.flowParsePrimaryType(),this.finishNode(e,"TypeofTypeAnnotation")},le.flowParseTupleType=function(){var e=this.startNode();for(e.types=[],this.expect(R.bracketL);this.state.pos0&&void 0!==arguments[0]?arguments[0]:[],t={params:e,rest:null};!this.match(R.parenR)&&!this.match(R.ellipsis);)t.params.push(this.flowParseFunctionTypeParam()),this.match(R.parenR)||this.expect(R.comma);return this.eat(R.ellipsis)&&(t.rest=this.flowParseFunctionTypeParam()),t},le.flowIdentToTypeAnnotation=function(e,t,r,n){switch(n.name){case"any":return this.finishNode(r,"AnyTypeAnnotation");case"void":return this.finishNode(r,"VoidTypeAnnotation");case"bool":case"boolean":return this.finishNode(r,"BooleanTypeAnnotation");case"mixed":return this.finishNode(r,"MixedTypeAnnotation");case"empty":return this.finishNode(r,"EmptyTypeAnnotation");case"number":return this.finishNode(r,"NumberTypeAnnotation");case"string":return this.finishNode(r,"StringTypeAnnotation");default:return this.flowParseGenericType(e,t,n)}},le.flowParsePrimaryType=function(){var e=this.state.start,t=this.state.startLoc,r=this.startNode(),n=void 0,i=void 0,s=!1,a=this.state.noAnonFunctionType;switch(this.state.type){case R.name:return this.flowIdentToTypeAnnotation(e,t,r,this.parseIdentifier());case R.braceL:return this.flowParseObjectType(!1,!1,!0);case R.braceBarL:return this.flowParseObjectType(!1,!0,!0);case R.bracketL:return this.flowParseTupleType();case R.relational:if("<"===this.state.value)return r.typeParameters=this.flowParseTypeParameterDeclaration(),this.expect(R.parenL),n=this.flowParseFunctionTypeParams(),r.params=n.params,r.rest=n.rest,this.expect(R.parenR),this.expect(R.arrow),r.returnType=this.flowParseType(),this.finishNode(r,"FunctionTypeAnnotation");break;case R.parenL:if(this.next(),!this.match(R.parenR)&&!this.match(R.ellipsis))if(this.match(R.name)){var o=this.lookahead().type;s=o!==R.question&&o!==R.colon}else s=!0;if(s){if(this.state.noAnonFunctionType=!1,i=this.flowParseType(),this.state.noAnonFunctionType=a,this.state.noAnonFunctionType||!(this.match(R.comma)||this.match(R.parenR)&&this.lookahead().type===R.arrow))return this.expect(R.parenR),i;this.eat(R.comma)}return n=i?this.flowParseFunctionTypeParams([this.reinterpretTypeAsFunctionTypeParam(i)]):this.flowParseFunctionTypeParams(),r.params=n.params,r.rest=n.rest,this.expect(R.parenR),this.expect(R.arrow),r.returnType=this.flowParseType(),r.typeParameters=null,this.finishNode(r,"FunctionTypeAnnotation");case R.string:return this.parseLiteral(this.state.value,"StringLiteralTypeAnnotation");case R._true:case R._false:return r.value=this.match(R._true),this.next(),this.finishNode(r,"BooleanLiteralTypeAnnotation");case R.plusMin:if("-"===this.state.value)return this.next(),
-this.match(R.num)||this.unexpected(null,"Unexpected token, expected number"),this.parseLiteral(-this.state.value,"NumericLiteralTypeAnnotation",r.start,r.loc.start);this.unexpected();case R.num:return this.parseLiteral(this.state.value,"NumericLiteralTypeAnnotation");case R._null:return r.value=this.match(R._null),this.next(),this.finishNode(r,"NullLiteralTypeAnnotation");case R._this:return r.value=this.match(R._this),this.next(),this.finishNode(r,"ThisTypeAnnotation");case R.star:return this.next(),this.finishNode(r,"ExistentialTypeParam");default:if("typeof"===this.state.type.keyword)return this.flowParseTypeofType()}this.unexpected()},le.flowParsePostfixType=function(){for(var e=this.state.start,t=this.state.startLoc,r=this.flowParsePrimaryType();!this.canInsertSemicolon()&&this.match(R.bracketL);){var n=this.startNodeAt(e,t);n.elementType=r,this.expect(R.bracketL),this.expect(R.bracketR),r=this.finishNode(n,"ArrayTypeAnnotation")}return r},le.flowParsePrefixType=function(){var e=this.startNode();return this.eat(R.question)?(e.typeAnnotation=this.flowParsePrefixType(),this.finishNode(e,"NullableTypeAnnotation")):this.flowParsePostfixType()},le.flowParseAnonFunctionWithoutParens=function(){var e=this.flowParsePrefixType();if(!this.state.noAnonFunctionType&&this.eat(R.arrow)){var t=this.startNodeAt(e.start,e.loc.start);return t.params=[this.reinterpretTypeAsFunctionTypeParam(e)],t.rest=null,t.returnType=this.flowParseType(),t.typeParameters=null,this.finishNode(t,"FunctionTypeAnnotation")}return e},le.flowParseIntersectionType=function(){var e=this.startNode();this.eat(R.bitwiseAND);var t=this.flowParseAnonFunctionWithoutParens();for(e.types=[t];this.eat(R.bitwiseAND);)e.types.push(this.flowParseAnonFunctionWithoutParens());return 1===e.types.length?t:this.finishNode(e,"IntersectionTypeAnnotation")},le.flowParseUnionType=function(){var e=this.startNode();this.eat(R.bitwiseOR);var t=this.flowParseIntersectionType();for(e.types=[t];this.eat(R.bitwiseOR);)e.types.push(this.flowParseIntersectionType());return 1===e.types.length?t:this.finishNode(e,"UnionTypeAnnotation")},le.flowParseType=function(){var e=this.state.inType;this.state.inType=!0;var t=this.flowParseUnionType();return this.state.inType=e,t},le.flowParseTypeAnnotation=function(){var e=this.startNode();return e.typeAnnotation=this.flowParseTypeInitialiser(),this.finishNode(e,"TypeAnnotation")},le.flowParseTypeAndPredicateAnnotation=function(){var e=this.startNode(),t=this.flowParseTypeAndPredicateInitialiser();return e.typeAnnotation=t[0],e.predicate=t[1],this.finishNode(e,"TypeAnnotation")},le.flowParseTypeAnnotatableIdentifier=function(){var e=this.flowParseRestrictedIdentifier();return this.match(R.colon)&&(e.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(e,e.type)),e},le.typeCastToParameter=function(e){return e.expression.typeAnnotation=e.typeAnnotation,this.finishNodeAt(e.expression,e.expression.type,e.typeAnnotation.end,e.typeAnnotation.loc.end)},le.flowParseVariance=function(){var e=null;return this.match(R.plusMin)&&("+"===this.state.value?e="plus":"-"===this.state.value&&(e="minus"),this.next()),e};var ce=function(e){e.extend("parseFunctionBody",function(e){return function(t,r){return this.match(R.colon)&&!r&&(t.returnType=this.flowParseTypeAndPredicateAnnotation()),e.call(this,t,r)}}),e.extend("parseStatement",function(e){return function(t,r){if(this.state.strict&&this.match(R.name)&&"interface"===this.state.value){var n=this.startNode();return this.next(),this.flowParseInterface(n)}return e.call(this,t,r)}}),e.extend("parseExpressionStatement",function(e){return function(t,r){if("Identifier"===r.type)if("declare"===r.name){if(this.match(R._class)||this.match(R.name)||this.match(R._function)||this.match(R._var)||this.match(R._export))return this.flowParseDeclare(t)}else if(this.match(R.name)){if("interface"===r.name)return this.flowParseInterface(t);if("type"===r.name)return this.flowParseTypeAlias(t);if("opaque"===r.name)return this.flowParseOpaqueType(t,!1)}return e.call(this,t,r)}}),e.extend("shouldParseExportDeclaration",function(e){return function(){return this.isContextual("type")||this.isContextual("interface")||this.isContextual("opaque")||e.call(this)}}),e.extend("isExportDefaultSpecifier",function(e){return function(){return(!this.match(R.name)||"type"!==this.state.value&&"interface"!==this.state.value&&"opaque"!==this.state.value)&&e.call(this)}}),e.extend("parseConditional",function(e){return function(t,r,n,i,s){if(s&&this.match(R.question)){var a=this.state.clone();try{return e.call(this,t,r,n,i)}catch(e){if(e instanceof SyntaxError)return this.state=a,s.start=e.pos||this.state.start,t;throw e}}return e.call(this,t,r,n,i)}}),e.extend("parseParenItem",function(e){return function(t,r,n){if(t=e.call(this,t,r,n),this.eat(R.question)&&(t.optional=!0),this.match(R.colon)){var i=this.startNodeAt(r,n);return i.expression=t,i.typeAnnotation=this.flowParseTypeAnnotation(),this.finishNode(i,"TypeCastExpression")}return t}}),e.extend("parseExport",function(e){return function(t){return t=e.call(this,t),"ExportNamedDeclaration"===t.type&&(t.exportKind=t.exportKind||"value"),t}}),e.extend("parseExportDeclaration",function(e){return function(t){if(this.isContextual("type")){t.exportKind="type";var r=this.startNode();return this.next(),this.match(R.braceL)?(t.specifiers=this.parseExportSpecifiers(),this.parseExportFrom(t),null):this.flowParseTypeAlias(r)}if(this.isContextual("opaque")){t.exportKind="type";var n=this.startNode();return this.next(),this.flowParseOpaqueType(n,!1)}if(this.isContextual("interface")){t.exportKind="type";var i=this.startNode();return this.next(),this.flowParseInterface(i)}return e.call(this,t)}}),e.extend("parseClassId",function(e){return function(t){e.apply(this,arguments),this.isRelational("<")&&(t.typeParameters=this.flowParseTypeParameterDeclaration())}}),e.extend("isKeyword",function(e){return function(t){return(!this.state.inType||"void"!==t)&&e.call(this,t)}}),e.extend("readToken",function(e){return function(t){return!this.state.inType||62!==t&&60!==t?e.call(this,t):this.finishOp(R.relational,1)}}),e.extend("jsx_readToken",function(e){return function(){if(!this.state.inType)return e.call(this)}}),e.extend("toAssignable",function(e){return function(t,r,n){return"TypeCastExpression"===t.type?e.call(this,this.typeCastToParameter(t),r,n):e.call(this,t,r,n)}}),e.extend("toAssignableList",function(e){return function(t,r,n){for(var i=0;i2?n-2:0),s=2;s1114111||de(a)!=a)throw RangeError("Invalid code point: "+a);a<=65535?e.push(a):(a-=65536,t=55296+(a>>10),r=a%1024+56320,e.push(t,r)),(n+1==i||e.length>16384)&&(s+=pe.apply(null,e),e.length=0)}return s}}var he=fe,me={quot:'"',amp:"&",apos:"'",lt:"<",gt:">",nbsp:" ",iexcl:"¡",cent:"¢",pound:"£",curren:"¤",yen:"¥",brvbar:"¦",sect:"§",uml:"¨",copy:"©",ordf:"ª",laquo:"«",not:"¬",shy:"",reg:"®",macr:"¯",deg:"°",plusmn:"±",sup2:"²",sup3:"³",acute:"´",micro:"µ",para:"¶",middot:"·",cedil:"¸",sup1:"¹",ordm:"º",raquo:"»",frac14:"¼",frac12:"½",frac34:"¾",iquest:"¿",Agrave:"À",Aacute:"Á",Acirc:"Â",Atilde:"Ã",Auml:"Ä",Aring:"Å",AElig:"Æ",Ccedil:"Ç",Egrave:"È",Eacute:"É",Ecirc:"Ê",Euml:"Ë",Igrave:"Ì",Iacute:"Í",Icirc:"Î",Iuml:"Ï",ETH:"Ð",Ntilde:"Ñ",Ograve:"Ò",Oacute:"Ó",Ocirc:"Ô",Otilde:"Õ",Ouml:"Ö",times:"×",Oslash:"Ø",Ugrave:"Ù",Uacute:"Ú",Ucirc:"Û",Uuml:"Ü",Yacute:"Ý",THORN:"Þ",szlig:"ß",agrave:"à",aacute:"á",acirc:"â",atilde:"ã",auml:"ä",aring:"å",aelig:"æ",ccedil:"ç",egrave:"è",eacute:"é",ecirc:"ê",euml:"ë",igrave:"ì",iacute:"í",icirc:"î",iuml:"ï",eth:"ð",ntilde:"ñ",ograve:"ò",oacute:"ó",ocirc:"ô",otilde:"õ",ouml:"ö",divide:"÷",oslash:"ø",ugrave:"ù",uacute:"ú",ucirc:"û",uuml:"ü",yacute:"ý",thorn:"þ",yuml:"ÿ",OElig:"Œ",oelig:"œ",Scaron:"Š",scaron:"š",Yuml:"Ÿ",fnof:"ƒ",circ:"ˆ",tilde:"˜",Alpha:"Α",Beta:"Β",Gamma:"Γ",Delta:"Δ",Epsilon:"Ε",Zeta:"Ζ",Eta:"Η",Theta:"Θ",Iota:"Ι",Kappa:"Κ",Lambda:"Λ",Mu:"Μ",Nu:"Ν",Xi:"Ξ",Omicron:"Ο",Pi:"Π",Rho:"Ρ",Sigma:"Σ",Tau:"Τ",Upsilon:"Υ",Phi:"Φ",Chi:"Χ",Psi:"Ψ",Omega:"Ω",alpha:"α",beta:"β",gamma:"γ",delta:"δ",epsilon:"ε",zeta:"ζ",eta:"η",theta:"θ",iota:"ι",kappa:"κ",lambda:"λ",mu:"μ",nu:"ν",xi:"ξ",omicron:"ο",pi:"π",rho:"ρ",sigmaf:"ς",sigma:"σ",tau:"τ",upsilon:"υ",phi:"φ",chi:"χ",psi:"ψ",omega:"ω",thetasym:"ϑ",upsih:"ϒ",piv:"ϖ",ensp:" ",emsp:" ",thinsp:" ",zwnj:"",zwj:"",lrm:"",rlm:"",ndash:"–",mdash:"—",lsquo:"‘",rsquo:"’",sbquo:"‚",ldquo:"“",rdquo:"”",bdquo:"„",dagger:"†",Dagger:"‡",bull:"•",hellip:"…",permil:"‰",prime:"′",Prime:"″",lsaquo:"‹",rsaquo:"›",oline:"‾",frasl:"⁄",euro:"€",image:"ℑ",weierp:"℘",real:"ℜ",trade:"™",alefsym:"ℵ",larr:"←",uarr:"↑",rarr:"→",darr:"↓",harr:"↔",crarr:"↵",lArr:"⇐",uArr:"⇑",rArr:"⇒",dArr:"⇓",hArr:"⇔",forall:"∀",part:"∂",exist:"∃",empty:"∅",nabla:"∇",isin:"∈",notin:"∉",ni:"∋",prod:"∏",sum:"∑",minus:"−",lowast:"∗",radic:"√",prop:"∝",infin:"∞",ang:"∠",and:"∧",or:"∨",cap:"∩",cup:"∪",int:"∫",there4:"∴",sim:"∼",cong:"≅",asymp:"≈",ne:"≠",equiv:"≡",le:"≤",ge:"≥",sub:"⊂",sup:"⊃",nsub:"⊄",sube:"⊆",supe:"⊇",oplus:"⊕",otimes:"⊗",perp:"⊥",sdot:"⋅",lceil:"⌈",rceil:"⌉",lfloor:"⌊",rfloor:"⌋",lang:"〈",rang:"〉",loz:"◊",spades:"♠",clubs:"♣",hearts:"♥",diams:"♦"},ye=/^[\da-fA-F]+$/,ve=/^\d+$/;U.j_oTag=new j("...",!0,!0),R.jsxName=new T("jsxName"),R.jsxText=new T("jsxText",{beforeExpr:!0}),R.jsxTagStart=new T("jsxTagStart",{startsExpr:!0}),R.jsxTagEnd=new T("jsxTagEnd"),R.jsxTagStart.updateContext=function(){this.state.context.push(U.j_expr),this.state.context.push(U.j_oTag),this.state.exprAllowed=!1},R.jsxTagEnd.updateContext=function(e){var t=this.state.context.pop();t===U.j_oTag&&e===R.slash||t===U.j_cTag?(this.state.context.pop(),this.state.exprAllowed=this.curContext()===U.j_expr):this.state.exprAllowed=!0};var ge=J.prototype;ge.jsxReadToken=function(){for(var e="",t=this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated JSX contents");var r=this.input.charCodeAt(this.state.pos);switch(r){case 60:case 123:return this.state.pos===this.state.start?60===r&&this.state.exprAllowed?(++this.state.pos,this.finishToken(R.jsxTagStart)):this.getTokenFromCode(r):(e+=this.input.slice(t,this.state.pos),this.finishToken(R.jsxText,e));case 38:e+=this.input.slice(t,this.state.pos),e+=this.jsxReadEntity(),t=this.state.pos;break;default:o(r)?(e+=this.input.slice(t,this.state.pos),e+=this.jsxReadNewLine(!0),t=this.state.pos):++this.state.pos}}},ge.jsxReadNewLine=function(e){var t=this.input.charCodeAt(this.state.pos),r=void 0;return++this.state.pos,13===t&&10===this.input.charCodeAt(this.state.pos)?(++this.state.pos,r=e?"\n":"\r\n"):r=String.fromCharCode(t),++this.state.curLine,this.state.lineStart=this.state.pos,r},ge.jsxReadString=function(e){for(var t="",r=++this.state.pos;;){this.state.pos>=this.input.length&&this.raise(this.state.start,"Unterminated string constant");var n=this.input.charCodeAt(this.state.pos);if(n===e)break;38===n?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadEntity(),r=this.state.pos):o(n)?(t+=this.input.slice(r,this.state.pos),t+=this.jsxReadNewLine(!1),r=this.state.pos):++this.state.pos}return t+=this.input.slice(r,this.state.pos++),this.finishToken(R.string,t)},ge.jsxReadEntity=function(){for(var e="",t=0,r=void 0,n=this.input[this.state.pos],i=++this.state.pos;this.state.pos")}return r.openingElement=i,r.closingElement=s,r.children=n,this.match(R.relational)&&"<"===this.state.value&&this.raise(this.state.start,"Adjacent JSX elements must be wrapped in an enclosing tag"),this.finishNode(r,"JSXElement")},ge.jsxParseElement=function(){var e=this.state.start,t=this.state.startLoc;return this.next(),this.jsxParseElementAt(e,t)};var be=function(e){e.extend("parseExprAtom",function(e){return function(t){if(this.match(R.jsxText)){var r=this.parseLiteral(this.state.value,"JSXText");return r.extra=null,r}return this.match(R.jsxTagStart)?this.jsxParseElement():e.call(this,t)}}),e.extend("readToken",function(e){return function(t){if(this.state.inPropertyName)return e.call(this,t);var r=this.curContext();if(r===U.j_expr)return this.jsxReadToken();if(r===U.j_oTag||r===U.j_cTag){if(i(t))return this.jsxReadWord();if(62===t)return++this.state.pos,this.finishToken(R.jsxTagEnd);if((34===t||39===t)&&r===U.j_oTag)return this.jsxReadString(t)}return 60===t&&this.state.exprAllowed?(++this.state.pos,this.finishToken(R.jsxTagStart)):e.call(this,t)}}),e.extend("updateContext",function(e){return function(t){if(this.match(R.braceL)){var r=this.curContext();r===U.j_oTag?this.state.context.push(U.braceExpression):r===U.j_expr?this.state.context.push(U.templateQuasi):e.call(this,t),this.state.exprAllowed=!0}else{if(!this.match(R.slash)||t!==R.jsxTagStart)return e.call(this,t);this.state.context.length-=2,this.state.context.push(U.j_cTag),this.state.exprAllowed=!1}}})};K.estree=oe,K.flow=ce,K.jsx=be,t.parse=h,t.parseExpression=m,t.tokTypes=R},function(e,t,r){"use strict";var n=r(21),i=r(431),s=r(141),a=r(150)("IE_PROTO"),o=function(){},u=function(){var e,t=r(230)("iframe"),n=s.length;for(t.style.display="none",r(426).appendChild(t),t.src="javascript:",e=t.contentWindow.document,e.open(),e.write("