diff --git a/.env.development b/.env.development
index e460683..2b116cb 100644
--- a/.env.development
+++ b/.env.development
@@ -1,10 +1,10 @@
VITE_MODE = 'development'
- VITE_APP_BASE_API = 'http://d1-api.erp.xtkj99.com:88'
+ VITE_APP_BASE_API = 'https://122.228.26.226:12025'
# VITE_APP_BASE_API = 'https://pre-api.aiguoerp.com'
# VITE_APP_BASE_API = 'http://localhost:80'
VITE_APP_BASE_SITE = 'http://localhost:80'
-VITE_APP_BASE_URL = 'http://192.168.2.5:9986'
\ No newline at end of file
+VITE_APP_BASE_URL = 'http://d1-api.erp.xtkj99.com:88'
\ No newline at end of file
diff --git a/src/App.vue b/src/App.vue
index 33f6f6e..1f664dd 100644
--- a/src/App.vue
+++ b/src/App.vue
@@ -88,7 +88,7 @@ onMounted(() => {
overflow: hidden;
}
.routeview {
- height: calc(100vh - 38px);
+ height: calc(100vh - 40px);
overflow-y: auto;
&::-webkit-scrollbar {
display: none;
diff --git a/src/api/newlybuiltgoods.js b/src/api/newlybuiltgoods.js
new file mode 100644
index 0000000..524c568
--- /dev/null
+++ b/src/api/newlybuiltgoods.js
@@ -0,0 +1,41 @@
+import request from '@axioshooks'
+// 获取商品分类
+export function getGoodsType(data) {
+ return request({
+ url: 'xy_openapi/publish/getGoodsType',
+ method: 'post',
+ data
+ })
+}
+//获取商品属性
+export function getGoodsInfo(data) {
+ return request({
+ url: 'xy_openapi/publish/getGoodsInfo',
+ method: 'get',
+ data
+ })
+}
+//获取闲鱼店铺
+export function getshopInfo(data) {
+ return request({
+ url: 'xy_openapi/publish/shop/info',
+ method: 'get',
+ data
+ })
+}
+//上传图片
+export function uploadImage(data) {
+ return request({
+ url: 'xy_openapi/publish/uploadImage',
+ method: 'file',
+ data
+ })
+}
+//获取发货地
+export function region(data) {
+ return request({
+ url: 'xy_openapi/region',
+ method: 'get',
+ data
+ })
+}
\ No newline at end of file
diff --git a/src/api/user.js b/src/api/user.js
index 4b9f0fb..902f662 100644
--- a/src/api/user.js
+++ b/src/api/user.js
@@ -16,10 +16,10 @@ export function login(data) {
})
}
/*获取阿里云签名*/
-export function get_oss_sign_aliyun(data){
+export function get_oss_sign_aliyun(data) {
return request({
- url:'base_config/get_oss_sign_aliyun',
- method:'post',
+ url: 'base_config/get_oss_sign_aliyun',
+ method: 'post',
data
})
}
@@ -32,11 +32,11 @@ export function get_user_menu(token) {
})
}
/*获取用户信息*/
-export function getInfo(token) {
+export function getInfo(data) {
return request({
- url: 'menu/get_userinfo',
- method: 'post',
- params: { token }
+ url: 'auth/getUserInfo',
+ method: 'get',
+ data
})
}
/*判断是否绑定拍机堂账号*/
@@ -44,7 +44,7 @@ export function account_config_list(data) {
return request({
url: 'base_config/account_config_list',
method: 'post',
- data
+ data
})
}
export function logout() {
@@ -112,7 +112,7 @@ export function web_bid(data) {
//注册页面发送短信
export function register_sendsms(data) {
return request({
- url: 'login/register_sendsms',
+ url: 'login/register_sendsms',
method: 'post',
data
})
@@ -152,7 +152,7 @@ export function open_record(data) {
//注册公司账号
export function register(data) {
return request({
- url: 'login/register',
+ url: 'login/register',
method: 'post',
data
})
@@ -160,7 +160,7 @@ export function register(data) {
//获取具体价格套餐
export function get_unopened_module(data) {
return request({
- url: 'module_permission/get_unopened_module',
+ url: 'module_permission/get_unopened_module',
method: 'post',
data
})
@@ -168,7 +168,7 @@ export function get_unopened_module(data) {
//获取系统版本号
export function get_erp_version(data) {
return request({
- url: 'base_config/get_erp_version',
+ url: 'base_config/get_erp_version',
method: 'post',
data
})
@@ -176,7 +176,7 @@ export function get_erp_version(data) {
export function check_nav_version(data) {
return request({
- url: 'user/check_nav_version',
+ url: 'user/check_nav_version',
method: 'post',
data
})
@@ -185,7 +185,7 @@ export function check_nav_version(data) {
// 新获取系统版本号
export function is_update_pc_erp(data) {
return request({
- url: 'version/is_update_pc_erp',
+ url: 'version/is_update_pc_erp',
method: 'post',
data
})
@@ -193,7 +193,7 @@ export function is_update_pc_erp(data) {
//编辑物流公司
export function logistics_platform_edit(data) {
return request({
- url: 'base_config/logistics_platform_edit',
+ url: 'base_config/logistics_platform_edit',
method: 'post',
data
})
@@ -201,7 +201,7 @@ export function logistics_platform_edit(data) {
//快递公司列表
export function express_company_list(data) {
return request({
- url: 'base_config/express_company_list',
+ url: 'base_config/express_company_list',
method: 'post',
data
})
@@ -209,7 +209,7 @@ export function express_company_list(data) {
//物流公司列表
export function logistics_platform_list(data) {
return request({
- url: 'base_config/logistics_platform_list',
+ url: 'base_config/logistics_platform_list',
method: 'post',
data
})
@@ -217,7 +217,7 @@ export function logistics_platform_list(data) {
//删除物流公司
export function logistics_platform_del(data) {
return request({
- url: 'base_config/logistics_platform_del',
+ url: 'base_config/logistics_platform_del',
method: 'post',
data
})
@@ -225,7 +225,7 @@ export function logistics_platform_del(data) {
//编辑寄件人
export function logistics_address_edit(data) {
return request({
- url: 'base_config/logistics_address_edit',
+ url: 'base_config/logistics_address_edit',
method: 'post',
data
})
@@ -233,7 +233,7 @@ export function logistics_address_edit(data) {
//寄件人列表
export function logistics_address_list(data) {
return request({
- url: 'base_config/logistics_address_list',
+ url: 'base_config/logistics_address_list',
method: 'post',
data
})
@@ -241,7 +241,7 @@ export function logistics_address_list(data) {
//删除寄件人
export function logistics_address_del(data) {
return request({
- url: 'base_config/logistics_address_del',
+ url: 'base_config/logistics_address_del',
method: 'post',
data
})
@@ -249,7 +249,7 @@ export function logistics_address_del(data) {
//删除寄件人
export function get_keywords_order_model(data) {
return request({
- url: 'idle_fish/get_keywords_order_model',
+ url: 'idle_fish/get_keywords_order_model',
method: 'post',
data
})
@@ -258,7 +258,7 @@ export function get_keywords_order_model(data) {
// 新-物流公司列表
export function new_logistics_platform_list(data) {
return request({
- url: 'base_config/new_logistics_platform_list',
+ url: 'base_config/new_logistics_platform_list',
method: 'post',
data
})
@@ -267,7 +267,7 @@ export function new_logistics_platform_list(data) {
// 新-物流公司-编辑-新增
export function new_logistics_platform_edit(data) {
return request({
- url: 'base_config/new_logistics_platform_edit',
+ url: 'base_config/new_logistics_platform_edit',
method: 'post',
data
})
@@ -276,7 +276,7 @@ export function new_logistics_platform_edit(data) {
// 默认物流设置列表
export function logistics_default_set_list(data) {
return request({
- url: 'base_config/logistics_default_set_list',
+ url: 'base_config/logistics_default_set_list',
method: 'post',
data
})
@@ -285,7 +285,7 @@ export function logistics_default_set_list(data) {
// 默认物流设置
export function logistics_default_set(data) {
return request({
- url: 'base_config/logistics_default_set',
+ url: 'base_config/logistics_default_set',
method: 'post',
data
})
diff --git a/src/api/xianyuShop.js b/src/api/xianyuShop.js
deleted file mode 100644
index e6eb7a1..0000000
--- a/src/api/xianyuShop.js
+++ /dev/null
@@ -1,74 +0,0 @@
-import request from '@axioshooks';
-/* 店铺列表*/
-export function xy_shop_list(data) {
- return request({
- url: 'xy_shop/xy_shop_list',
- method: 'post',
- data
- })
-}
-//获取授权地址
-export function get_auth_address(data) {
- return request({
- url: 'xy_shop/get_auth_address',
- method: 'post',
- data
- })
-}
-//授权完的确认是否授权成功
-export function affirm_auth_success(data) {
- return request({
- url: 'xy_shop/affirm_auth_success',
- method: 'post',
- data
- })
-}
-//创建账号
-export function account_config_create(data) {
- return request({
- url: 'base_config/account_config_create',
- method: 'post',
- data
- })
-}
-//创建账号新
-export function xy_account_config_create(data) {
- return request({
- url: 'base_config/xy_account_config_create',
- method: 'post',
- data
- })
-}
-//删除店铺
-export function account_config_delete(data) {
- return request({
- url: 'base_config/account_config_delete',
- method: 'post',
- data
- })
-}
-// 第三方账号配置编辑||店铺修改
-export function account_config_edit(data) {
- return request({
- url: 'base_config/account_config_edit',
- method: 'post',
- data
- })
-}
-//获取行政区id
-export function get_division_id(data) {
- return request({
- url: 'xy_shop/get_division_id',
- method: 'post',
- data
- })
-}
-//获取站点拥有的闲鱼商品业务模式
-export function site_business_model(data) {
- return request({
- url: 'xy_shop/site_business_model',
- method: 'post',
- data
- })
-}
-
diff --git a/src/api/xyshop.js b/src/api/xyshop.js
new file mode 100644
index 0000000..8e0aaaf
--- /dev/null
+++ b/src/api/xyshop.js
@@ -0,0 +1,40 @@
+import request from '@axioshooks';
+//创建闲鱼店铺
+export function save_shop(data) {
+ return request({
+ url: 'xy_openapi/auth/save_shop',
+ method: 'post',
+ data
+ })
+}
+//编辑闲鱼店铺
+export function update_shop(data) {
+ return request({
+ url: 'xy_openapi/auth/update_shop',
+ method: 'post',
+ data
+ })
+}
+//删除闲鱼店铺
+export function delById(data) {
+ return request({
+ url: `xy_openapi/auth/delById/${data}`,
+ method: 'delete',
+ })
+}
+//查询店铺列表
+export function list_shop(data) {
+ return request({
+ url: 'xy_openapi/auth/list_shop',
+ method: 'get',
+ data
+ })
+}
+//上传图片
+export function upload(data) {
+ return request({
+ url: 'xy_openapi/upload',
+ method: 'file',
+ data
+ })
+}
diff --git a/src/components/Layout/Breadcrumb.vue b/src/components/Layout/Breadcrumb.vue
index aad001d..d84ae27 100644
--- a/src/components/Layout/Breadcrumb.vue
+++ b/src/components/Layout/Breadcrumb.vue
@@ -97,7 +97,7 @@ const onNavTo=(path)=>{
.breadcrumbbox{
color: #000;
flex:1;
- height:100%;
+ height:40px;
width:100%;
&::-webkit-scrollbar{
display: none;
diff --git a/src/components/Layout/Header.vue b/src/components/Layout/Header.vue
index d4a5a1c..280fe0e 100644
--- a/src/components/Layout/Header.vue
+++ b/src/components/Layout/Header.vue
@@ -1,207 +1,231 @@
-
-
+
+ 退出登录
+
+
+
+
+
+const logout = () => {
+ location.href = "/";
+ delAllStorage();
+ setTimeout(() => {
+ location.reload();
+ }, 500);
+};
+
diff --git a/src/components/Upload/newfileupload copy.vue b/src/components/Upload/newfileupload copy.vue
new file mode 100644
index 0000000..5f655cf
--- /dev/null
+++ b/src/components/Upload/newfileupload copy.vue
@@ -0,0 +1,247 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/components/Upload/newfileupload.vue b/src/components/Upload/newfileupload.vue
index 05f3023..cfee57f 100644
--- a/src/components/Upload/newfileupload.vue
+++ b/src/components/Upload/newfileupload.vue
@@ -1,24 +1,23 @@
-
@@ -27,12 +26,11 @@
@@ -41,7 +39,6 @@
- {{ props.tips }}
@@ -57,54 +54,61 @@
\ No newline at end of file
diff --git a/src/services/axioshooks.js b/src/services/axioshooks.js
index 0f3bb52..d954802 100644
--- a/src/services/axioshooks.js
+++ b/src/services/axioshooks.js
@@ -1,6 +1,6 @@
import axios, * as defaultAxios from 'axios';
-import { getStorage, deloneStorage } from "./commont";
+import { getStorage, deloneStorage, jsonurldata } from "./commont";
import { ElMessage } from 'element-plus';
@@ -37,6 +37,7 @@ let _window = window;
let cancelTokenSource = null;
let lasturl = [];
+
export default ({
url,
method = 'post',
@@ -66,31 +67,48 @@ export default ({
};
let axioshooks = axios.create();
- let config = {
- headers: Object.assign({}, headers)
- };
+
+ var axiosfn = {
+ "delete": (url, paramdata, config) => {
+ let newurl = url
+ let str = data && Object.keys(data).length > 0 ? "/" + jsonurldata(data) : ""
+ newurl = url + str
+ return axios.delete(newurl, config)
+ }, "post": axios.post, "get": (url, paramdata, config) => {
+ let newurl = url
+ let str = data && Object.keys(data).length > 0 ? "/" + jsonurldata(data) : ""
+ newurl = url + str
+ return axios.get(newurl, config)
+ }, "put": axios.put
+ }
const token = getStorage('token');
const virtoken = getStorage('virtoken');
+ const baseApi = import.meta.env.VITE_APP_BASE_API;
let newurl = '';
if (/http/.test(url)) {
newurl = url;
} else {
- const baseApi = import.meta.env.VITE_APP_BASE_API;
newurl = baseApi + '/api/' + url;
}
+ let newtoken = newurl.indexOf(baseApi) > -1 ? "Bearer " + virtoken : token;
+ let config = {
+ headers: Object.assign({}, headers, {
+ token: newtoken
+ })
+ };
cancelTokenSource = CancelToken.source();
-
+
if (token) {
config = {
headers: Object.assign({}, {
- token: token,
+ token: newtoken,
'Content-Type': 'application/json;'
}, headers),
cancelToken: cancelTokenSource.token,
- };
+ };
if (!virtoken) {
deloneStorage("token");
deloneStorage("virtoken");
@@ -101,22 +119,17 @@ export default ({
}//添加请求头
}
if (method && method == 'get') {
- config.headers = Object.assign({}, {
- token: token,
- cancelToken: cancelTokenSource.token,
- }, headers);
- axioshooks = axios.get;
+ config.headers = Object.assign({}, config.headers || {}, headers);
} else if (method && method == 'file') {
- config.headers = Object.assign({}, {
- token: token,
+
+ config.headers = Object.assign({}, config.headers || {}, {
+ token: newtoken,
'Content-Type': 'multipart/form-data',
Accept: '*/*',
}, headers);
- axioshooks = axios.post;
- } else {
- axioshooks = axios.post;
}
-console.log(config,"config")
+ axioshooks = axiosfn[method] ? axiosfn[method] : axios.post
+ // console.log(config,"config")
if (!url || !dispatchEffect()) return;
// ONLY trigger by query
@@ -131,9 +144,12 @@ console.log(config,"config")
_Object.values(data).map((d, index) => {
if ((d && d != '') || typeof d == 'number') {
if (Object.keys(data)[index] == 'file') {
- params.append('file', d, d.name);
+ d.map((h)=>{
+ params.append('file', h, h.name);
+ })
+
} else if (Object.keys(data)[index] == 'filekey') {
- params.append(d, data[d], data[d].name);
+ params.append(d, data[d]);
} else {
params.append(Object.keys(data)[index], d);
}
@@ -165,10 +181,8 @@ console.log(config,"config")
paramsdata = params;
}
}
-
axioshooks(newurl, paramsdata, config)
.then(response => {
- console.log(response,"response")
if (response.data && response.data.errcode && response.data.errcode == 1002) {
deloneStorage("token");
location.href = "/";
@@ -187,7 +201,7 @@ console.log(config,"config")
}
})
.catch(error => {
- console.log(error,"error")
+ // console.log(error,"error")
if (!isCancel(error.message)) {
handler(error.message, error, null);
reject(error.message);
diff --git a/src/services/commont.js b/src/services/commont.js
index e24fa5a..0eb2ee4 100644
--- a/src/services/commont.js
+++ b/src/services/commont.js
@@ -2,23 +2,21 @@ import { ElMessage } from 'element-plus';
import axioshooks from './axioshooks.js';
export async function getFileMenu() {
- var filemoduleMap=import.meta.glob(["./../views/**/*.vue","./../views/*.vue"]);
-
- let results=[];
- Object.keys(filemoduleMap).map((k,i)=>{
- let defaultmenu=filemoduleMap[k];
- const matches=k.match(/[^\.\/]+/g).slice(1,-1);
- let path="";
- console.log(matches,'matches');
- matches.map((h)=>{
- path+=h+'/';
- });
- path=path.slice(0,path.length-1);
- console.log(path,'path')
- let data={path:'/'+path,module:defaultmenu,url:k}
- results.push(data);
+ var filemoduleMap = import.meta.glob(["./../views/**/*.vue", "./../views/*.vue"]);
+
+ let results = [];
+ Object.keys(filemoduleMap).map((k, i) => {
+ let defaultmenu = filemoduleMap[k];
+ const matches = k.match(/[^\.\/]+/g).slice(1, -1);
+ let path = "";
+ matches.map((h) => {
+ path += h + '/';
});
- return results;
+ path = path.slice(0, path.length - 1);
+ let data = { path: '/' + path, module: defaultmenu, url: k }
+ results.push(data);
+ });
+ return results;
}
/**
* 脱敏处理函数
@@ -27,451 +25,449 @@ export async function getFileMenu() {
* @return {string} 脱敏后的数据
*/
export function maskData(input, type = 'phone') {
- if (typeof input !== 'string') return input
- // const { securityEncryption } = session.get('THEME_CONFIG') || {}
- // 与服务端商定加解密方式
- // input = decrypt(input)
- // 只解密不脱敏
- if (type === 'custom') return input
- // 地址脱敏 中间的数字进行脱敏 明月小区*单元**号楼101
- if (type === 'address') return input.replace(/(\d+)(?=\D)/g, match => '*'.repeat(match.length))
- let start, end
- switch (type) {
- case 'email': {
- // 邮箱,保留前两位和 "@" 后的所有字符
- const [localPart, domain] = input.split('@')
- if (localPart.length > 2) {
- start = 2
- end = domain.length + 1 }
- break
- }
- case 'bankCard': {
- // 身份证号或银行卡号,保留前三位和后四位
- start = 3
- end = 4
- break
- }
- case 'birthdate': {
- // 出生日期,隐藏中间四位
+ if (typeof input !== 'string') return input
+ // const { securityEncryption } = session.get('THEME_CONFIG') || {}
+ // 与服务端商定加解密方式
+ // input = decrypt(input)
+ // 只解密不脱敏
+ if (type === 'custom') return input
+ // 地址脱敏 中间的数字进行脱敏 明月小区*单元**号楼101
+ if (type === 'address') return input.replace(/(\d+)(?=\D)/g, match => '*'.repeat(match.length))
+ let start, end
+ switch (type) {
+ case 'email': {
+ // 邮箱,保留前两位和 "@" 后的所有字符
+ const [localPart, domain] = input.split('@')
+ if (localPart.length > 2) {
start = 2
+ end = domain.length + 1
+ }
+ break
+ }
+ case 'bankCard': {
+ // 身份证号或银行卡号,保留前三位和后四位
+ start = 3
+ end = 4
+ break
+ }
+ case 'birthdate': {
+ // 出生日期,隐藏中间四位
+ start = 2
+ end = 2
+ break
+ }
+ case 'name': {
+ // 姓名,3个字以内隐藏第1个字,4-6个字隐藏前2个字,大于6个字隐藏第3-6个字
+ const length = input.length
+ if (length <= 3) {
+ start = 0
+ end = length - 1
+ } else if (length <= 6) {
+ start = 0
+ end = length - 2
+ } else {
+ start = 2
+ end = length - 6
+ }
+ break
+ }
+ default: // phone 包含手机号和固定电话
+ // 手机号,保留前三位和后两位,电话号码保留区号和后三位
+ // telRegExp-固定电话正则 phoneRegExp-手机号正则
+ let telRegExp = /^(?:(?:\+|00)86)?1\d{10}$/;
+ if (telRegExp.test(input)) {
+ let matchRes = input.match(telRegExp);
+ if (matchRes) {
+ if (matchRes[1] && matchRes[1].length) {
+ start = matchRes[1].length
+ } else {
+ start = 3
+ }
+ if (matchRes[2] && matchRes[2].length) {
+ end = matchRes[2].length
+ } else {
+ end = 2
+ }
+ }
+ } else {
+ start = 3
end = 2
- break
}
- case 'name': {
- // 姓名,3个字以内隐藏第1个字,4-6个字隐藏前2个字,大于6个字隐藏第3-6个字
- const length = input.length
- if (length <= 3) {
- start = 0
- end = length - 1
- } else if (length <= 6) {
- start = 0
- end = length - 2
- } else {
- start = 2
- end = length - 6
- }
- break
- }
- default: // phone 包含手机号和固定电话
- // 手机号,保留前三位和后两位,电话号码保留区号和后三位
- // telRegExp-固定电话正则 phoneRegExp-手机号正则
- let telRegExp=/^(?:(?:\+|00)86)?1\d{10}$/;
- if (telRegExp.test(input)) {
- let matchRes = input.match(telRegExp);
- if(matchRes){
- console.log(matchRes,"matchRes")
- if(matchRes[1]&&matchRes[1].length){
- start = matchRes[1].length
- }else{
- start = 3
- }
- if(matchRes[2]&&matchRes[2].length){
- end = matchRes[2].length
- }else{
- end = 2
- }
- }
- } else {
- start = 3
- end = 2
- }
- }
- // 计算被脱敏处理后的字符的长度
- let maskLength = input.length - start - end
- // 使用正则表达式进行脱敏处理
- const reg = new RegExp(`^(.{${start}}).*(.{${end}})$`)
- return input.replace(reg, `$1${'*'.repeat(maskLength)}$2`)
}
-
+ // 计算被脱敏处理后的字符的长度
+ let maskLength = input.length - start - end
+ // 使用正则表达式进行脱敏处理
+ const reg = new RegExp(`^(.{${start}}).*(.{${end}})$`)
+ return input.replace(reg, `$1${'*'.repeat(maskLength)}$2`)
+}
+
//获取近几天
-export function getDay (number,bool = false) {
- let today = new Date();
- let day = today.getTime() + 24 * 60 * 60 * 1000 * number;
- today.setTime(day);
- let val = formatDate(parseInt(today.getTime() / 1000), 'Y-m-d')
- if(bool){
- val = parseInt(today.getTime() / 1000)
- }
-
- return val
+export function getDay(number, bool = false) {
+ let today = new Date();
+ let day = today.getTime() + 24 * 60 * 60 * 1000 * number;
+ today.setTime(day);
+ let val = formatDate(parseInt(today.getTime() / 1000), 'Y-m-d')
+ if (bool) {
+ val = parseInt(today.getTime() / 1000)
+ }
+
+ return val
}
-export function getMonthFirst (data) {
- let date = new Date(data);
- date.setDate(1);
- let month = parseInt(date.getMonth() + 1);
- let day = date.getDate();
- if( month < 10) {
- month = '0' + month
- }
- if(day < 10 ) {
- day = '0' + day
- }
- let val = date.getFullYear() + '-' + month +'-' + day
+export function getMonthFirst(data) {
+ let date = new Date(data);
+ date.setDate(1);
+ let month = parseInt(date.getMonth() + 1);
+ let day = date.getDate();
+ if (month < 10) {
+ month = '0' + month
+ }
+ if (day < 10) {
+ day = '0' + day
+ }
+ let val = date.getFullYear() + '-' + month + '-' + day
- return val
+ return val
}
-export function getMonthLast (data) {
- let date = new Date(data);
- let currentMonth = date.getMonth();
- let nextMonth = ++currentMonth;
- let nextMonthFirstDay = new Date(date.getFullYear(), nextMonth, 1);
- let oneDay = 24 * 60 * 60 * 1000
- let lastTime = new Date(nextMonthFirstDay - oneDay);
- let month = parseInt(lastTime.getMonth() + 1);
- let day = lastTime.getDate();
- if( month < 10) {
- month = '0' + month
- }
- if(day < 10 ) {
- day = '0' + day
- }
- let val = date.getFullYear() + '-' + month +'-' + day
-
+export function getMonthLast(data) {
+ let date = new Date(data);
+ let currentMonth = date.getMonth();
+ let nextMonth = ++currentMonth;
+ let nextMonthFirstDay = new Date(date.getFullYear(), nextMonth, 1);
+ let oneDay = 24 * 60 * 60 * 1000
+ let lastTime = new Date(nextMonthFirstDay - oneDay);
+ let month = parseInt(lastTime.getMonth() + 1);
+ let day = lastTime.getDate();
+ if (month < 10) {
+ month = '0' + month
+ }
+ if (day < 10) {
+ day = '0' + day
+ }
+ let val = date.getFullYear() + '-' + month + '-' + day
- return val
-}
+ return val
+
+}
//格式化时间
-export function uuid(){
- var s = [];
- var hexDigits = "0123456789abcdef";
- for (var i = 0; i < 36; i++) {
- s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);
- }
- s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010
- s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01
- s[8] = s[13] = s[18] = s[23] = "-";
- var uuid = s.join("");
- return uuid;
+export function uuid() {
+ var s = [];
+ var hexDigits = "0123456789abcdef";
+ for (var i = 0; i < 36; i++) {
+ s[i] = hexDigits.substr(Math.floor(Math.random() * 0x10), 1);
+ }
+ s[14] = "4"; // bits 12-15 of the time_hi_and_version field to 0010
+ s[19] = hexDigits.substr((s[19] & 0x3) | 0x8, 1); // bits 6-7 of the clock_seq_hi_and_reserved to 01
+ s[8] = s[13] = s[18] = s[23] = "-";
+ var uuid = s.join("");
+ return uuid;
}
-
+
//获取url上的参数值 e为参数名称
export function getQueryString(e) {
- var t = new RegExp("(/\?|&)" + e + "=([^&]*)(&|$)");
- var a = window.location.href.substr(1).match(t);
- if (a != null) return a[2];
- return ""
+ var t = new RegExp("(/\?|&)" + e + "=([^&]*)(&|$)");
+ var a = window.location.href.substr(1).match(t);
+ if (a != null) return a[2];
+ return ""
}
-
+
// 添加本地存储
-export function addSessionStorage(key,value) {
- console.log(key,value,"9888978787");
- try{
- sessionStorage.setItem(key,JSON.stringify(value));
- }catch(err){
+export function addSessionStorage(key, value) {
+ try {
+ sessionStorage.setItem(key, JSON.stringify(value));
+ } catch (err) {
- }
- }
- export function getSessionStorage(key) {
- let result=sessionStorage.getItem(key);
- try{
- result= JSON.parse(result);
- }catch(err){
- }
- return result;
- }
+ }
+}
+export function getSessionStorage(key) {
+ let result = sessionStorage.getItem(key);
+ try {
+ result = JSON.parse(result);
+ } catch (err) {
+ }
+ return result;
+}
- export function delSessionStorage(key) {
+export function delSessionStorage(key) {
sessionStorage.removeItem(key);
}
// 添加本地存储
-export function addStorage(key,value) {
- localStorage.setItem(key,JSON.stringify(value));
+export function addStorage(key, value) {
+ localStorage.setItem(key, JSON.stringify(value));
}
// 获取本地存储
export function getStorage(key) {
- let result=localStorage.getItem(key);
- try{
- result= JSON.parse(result);
- }catch(err){
- }
- return result;
+ let result = localStorage.getItem(key);
+ try {
+ result = JSON.parse(result);
+ } catch (err) {
+ }
+ return result;
}
//