feature_0521
zhenghuang 5 years ago
parent f50ff73b31
commit dd7291e641

@ -12,20 +12,34 @@
<div class="companyTable"> <div class="companyTable">
<div class="companyListClass"> <div class="companyListClass">
<Row :gutter="10"> <Row :gutter="10">
<div v-if="loading" style="padding: 50px 0" class="loading"> <div v-if="loading"
style="padding: 50px 0"
class="loading">
<Spin fix>加载中...</Spin> <Spin fix>加载中...</Spin>
</div> </div>
<CheckboxGroup size="large" @on-change="onChange" v-model="isSelect"> <CheckboxGroup size="large"
<i-col span="8" v-if="!item.hide && index < block" :key="index" v-for="(item, index) in shopList"> @on-change="onChange"
<Checkbox size="large" :label="item.value" border> v-model="isSelect">
<i-col span="8"
v-if="!item.hide && index < block"
:key="index"
v-for="(item, index) in shopList">
<Checkbox size="large"
:label="item.value"
border>
<span :title="item.label">{{ item.label.substr(0, 18) }}</span> <span :title="item.label">{{ item.label.substr(0, 18) }}</span>
</Checkbox> </Checkbox>
</i-col> </i-col>
</CheckboxGroup> </CheckboxGroup>
</Row> </Row>
</div> </div>
<Spin size="large" fix v-if="loading"></Spin> <Spin size="large"
<Button type="info" long v-if="block < orginShopList.length" @click="loadMore"></Button> fix
v-if="loading"></Spin>
<Button type="info"
long
v-if="block < orginShopList.length"
@click="loadMore">加载更多</Button>
</div> </div>
</div> </div>
</template> </template>
@ -49,6 +63,9 @@ export default {
orginShopList: [], orginShopList: [],
}; };
}, },
props: {
isModify: Boolean
},
mounted () { mounted () {
this.getShopInfo(); this.getShopInfo();
let _this = this; let _this = this;
@ -134,7 +151,7 @@ export default {
} }
}); });
}, },
loadMore() { loadMore () {
this.block += 50; this.block += 50;
}, },
getShopInfo () { getShopInfo () {
@ -148,6 +165,9 @@ export default {
customerIds: companyIds.join(","), customerIds: companyIds.join(","),
scheduleId: store.getters.useData.scheduleId scheduleId: store.getters.useData.scheduleId
}; };
if (this.isModify) {
data.scheduleId = null;
}
that.loading = true; that.loading = true;
ActivityManager.getShop(data, function (data) { ActivityManager.getShop(data, function (data) {
that.shopList = []; that.shopList = [];

@ -1,4 +1,3 @@
import axios from 'axios' import axios from 'axios'
import qs from 'qs' import qs from 'qs'
// import store from '../store' // import store from '../store'
@ -7,112 +6,122 @@ import commonUtils from '../utils/Common'
// http://mf.kiisoo.com:58080/ // http://mf.kiisoo.com:58080/
// axios.defaults.baseURL = 'https://wxtk.bsdits.com/kiisoo-ic/'; // axios.defaults.baseURL = 'https://wxtk.bsdits.com/kiisoo-ic/';
axios.defaults.baseURL = '/kiisoo-ic'; axios.defaults.baseURL = '/kiisoo-ic'
//响应时间 //响应时间
axios.defaults.timeout = 120000; axios.defaults.timeout = 120000
axios.defaults.withCredentials=true; axios.defaults.withCredentials = true
//配置请求头 //配置请求头
axios.defaults.headers.post['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'; axios.defaults.headers.post['Content-Type'] =
'application/x-www-form-urlencoded;charset=UTF-8'
/** /**
* POST传参序列化(添加请求拦截器) * POST传参序列化(添加请求拦截器)
*/ */
axios.interceptors.request.use((config) => { axios.interceptors.request.use(
config.headers['X-Requested-With'] = 'XMLHttpRequest'; (config) => {
config.headers['Content-Type'] = 'application/json;charset=UTF-8;'; config.headers['X-Requested-With'] = 'XMLHttpRequest'
config.headers['Content-Type'] = 'application/json;charset=UTF-8;'
// config.headers['Authorization'] = sessionStorage.getItem("sessionId"); // config.headers['Authorization'] = sessionStorage.getItem("sessionId");
//在发送请求之前做某件事 //在发送请求之前做某件事
if(config.method === 'post'){ if (config.method === 'post') {
if(config.data.isGetActivityInfo === true) { if (config.data.isGetActivityInfo === true) {
config.headers['Content-Type'] = 'application/json;charset=UTF-8;'; config.headers['Content-Type'] = 'application/json;charset=UTF-8;'
} else if (Object.prototype.toString.call(config.data) === '[object FormData]') { } else if (
config.headers['Content-Type'] = 'multipart/form-data'; Object.prototype.toString.call(config.data) === '[object FormData]'
} else { ) {
config.headers['Content-Type'] = 'application/x-www-form-urlencoded;charset=UTF-8'; config.headers['Content-Type'] = 'multipart/form-data'
var str = qs.stringify(config.data); } else {
config.data = str; config.headers['Content-Type'] =
} 'application/x-www-form-urlencoded;charset=UTF-8'
var str = qs.stringify(config.data)
config.data = str
}
} }
return config; return config
},(error) =>{ },
(error) => {
// console.log('错误的传参') // console.log('错误的传参')
return Promise.reject(error); return Promise.reject(error)
}); }
)
/** /**
* 返回状态判断(添加响应拦截器) * 返回状态判断(添加响应拦截器)
*/ */
axios.interceptors.response.use((res) =>{ axios.interceptors.response.use(
let data = res.data.results; (res) => {
let data = res.data.results
if(res.data.code === '9999' || sessionStorage.getItem("logout")){ if (res.data.code === '9999' || sessionStorage.getItem('logout')) {
// iView.Message.error('会话超时,请重新登录'); // iView.Message.error('会话超时,请重新登录');
// store.commit('LOGOUT'); // store.commit('LOGOUT');
commonUtils.goToLogin(); commonUtils.goToLogin()
return Promise.resolve(res); return Promise.resolve(res)
} }
//对响应数据做些事 //对响应数据做些事
if(!data){ if (!data) {
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1001"){ if (data.code === '1001') {
// iView.Message.error("账号不存在"); // iView.Message.error("账号不存在");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1002"){ if (data.code === '1002') {
// iView.Message.error("账号已停用"); // iView.Message.error("账号已停用");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1003"){ if (data.code === '1003') {
// iView.Message.error("密码错误"); // iView.Message.error("密码错误");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1004"){ if (data.code === '1004') {
// iView.Message.error("账号已注销"); // iView.Message.error("账号已注销");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1005"){ if (data.code === '1005') {
// iView.Message.error("账号未绑定品牌"); // iView.Message.error("账号未绑定品牌");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1006"){ if (data.code === '1006') {
// iView.Message.error("账号未绑定店铺"); // iView.Message.error("账号未绑定店铺");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1007"){ if (data.code === '1007') {
// iView.Message.error("账号无权限"); // iView.Message.error("账号无权限");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "1009"){ if (data.code === '1009') {
// iView.Message.error("账号已过时"); // iView.Message.error("账号已过时");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code === "0001"){ if (data.code === '0001') {
// this.$Message.error("系统繁忙,请重试"); // this.$Message.error("系统繁忙,请重试");
return Promise.resolve(res); return Promise.resolve(res)
} }
if(data.code !== "0000") { if (data.code !== '0000') {
// this.$Message.error(data.errorMsg); // this.$Message.error(data.errorMsg);
return Promise.resolve(res); return Promise.resolve(res)
} }
return res; return res
}, (error) => { },
(error) => {
// iView.Message.error('网络异常'); // iView.Message.error('网络异常');
return Promise.reject(error); return Promise.reject(error)
}); }
)
/** /**
* 返回一个Promise(发送get请求) * 返回一个Promise(发送get请求)
@ -121,24 +130,27 @@ axios.interceptors.response.use((res) =>{
* @returns {Promise<any>} * @returns {Promise<any>}
*/ */
export function get(url, param) { export function get(url, param) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
// iView.LoadingBar.start(); // iView.LoadingBar.start();
axios.get(url, {params: param}) axios
.then(response => { .get(url, { params: param })
// iView.LoadingBar.finish(); .then(
resolve(response) (response) => {
}, err => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); resolve(response)
reject(err) },
}) (err) => {
.catch((error) => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); reject(err)
reject(error) }
}) )
}) .catch((error) => {
// iView.LoadingBar.finish();
reject(error)
})
})
} }
/** /**
* 返回一个Promise(发送post请求) * 返回一个Promise(发送post请求)
* @param url * @param url
@ -146,217 +158,229 @@ export function get(url, param) {
* @returns {Promise<any>} * @returns {Promise<any>}
*/ */
export function post(url, params) { export function post(url, params) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
// iView.LoadingBar.start(); // iView.LoadingBar.start();
axios.post(url, params) axios
.then(response => { .post(url, params)
// iView.LoadingBar.finish(); .then(
resolve(response); (response) => {
}, err => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); resolve(response)
reject(err); },
}) (err) => {
.catch((error) => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); reject(err)
reject(error) }
}) )
}) .catch((error) => {
// iView.LoadingBar.finish();
reject(error)
})
})
} }
export function put(url, params) { export function put(url, params) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
// iView.LoadingBar.start(); // iView.LoadingBar.start();
axios.put(url, params) axios
.then(response => { .put(url, params)
// iView.LoadingBar.finish(); .then(
resolve(response); (response) => {
}, err => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); resolve(response)
reject(err); },
}) (err) => {
.catch((error) => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); reject(err)
reject(error) }
}) )
}) .catch((error) => {
// iView.LoadingBar.finish();
reject(error)
})
})
} }
export function fetchDelete(url, params) { export function fetchDelete(url, params) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
// iView.LoadingBar.start(); // iView.LoadingBar.start();
axios.delete(url, params) axios
.then(response => { .delete(url, params)
// iView.LoadingBar.finish(); .then(
resolve(response); (response) => {
}, err => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); resolve(response)
reject(err); },
}) (err) => {
.catch((error) => { // iView.LoadingBar.finish();
// iView.LoadingBar.finish(); reject(err)
reject(error) }
}) )
}) .catch((error) => {
// iView.LoadingBar.finish();
reject(error)
})
})
} }
export function downloadZip(url,filename, options = {}) { export function downloadZip(url, filename, options = {}) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
axios.defaults.headers['content-type'] = 'application/json;charset=UTF-8' axios.defaults.headers['content-type'] = 'application/json;charset=UTF-8'
axios({ axios({
method: 'post', method: 'post',
url: url, // 请求地址 url: url, // 请求地址
data: options, // 参数 data: options, // 参数
responseType: 'blob' // 表明返回服务器返回的数据类型 responseType: 'blob', // 表明返回服务器返回的数据类型
}).then( }).then(
response => { (response) => {
resolve(response.data) resolve(response.data)
let blob = new Blob([response.data], { let blob = new Blob([response.data], {
type: 'application/zip' type: 'application/zip',
}) })
console.log(blob) console.log(blob)
let fileName = filename + '.zip' let fileName = filename + '.zip'
if (window.navigator.msSaveOrOpenBlob) { if (window.navigator.msSaveOrOpenBlob) {
// console.log(2) // console.log(2)
navigator.msSaveBlob(blob, fileName) navigator.msSaveBlob(blob, fileName)
} else { } else {
// console.log(3) // console.log(3)
var link = document.createElement('a') var link = document.createElement('a')
link.href = window.URL.createObjectURL(blob) link.href = window.URL.createObjectURL(blob)
link.download = fileName link.download = fileName
link.click() link.click()
//释放内存 //释放内存
window.URL.revokeObjectURL(link.href) window.URL.revokeObjectURL(link.href)
} }
}, },
err => { (err) => {
reject(err) reject(err)
} }
) )
}) })
} }
export function downloadExcel(url,filename, options = {}) { export function downloadExcel(url, filename, options = {}) {
let split = filename.split(","); let split = filename.split(',')
if (split.length != 1){ if (split.length != 1) {
filename = "店铺发起申请数报表"; filename = '店铺发起申请数报表'
}else{ } else {
filename = "零售公司拓客报表"; filename = '零售公司拓客报表'
} }
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
axios.defaults.headers['content-type'] = 'application/x-www-form-urlencoded;charset=UTF-8' axios.defaults.headers['content-type'] =
axios({ 'application/x-www-form-urlencoded;charset=UTF-8'
method: 'post', axios({
url: url, // 请求地址 method: 'post',
data: options, // 参数 url: url, // 请求地址
responseType: 'blob' // 表明返回服务器返回的数据类型 data: options, // 参数
}).then( responseType: 'blob', // 表明返回服务器返回的数据类型
response => { }).then(
resolve(response.data) (response) => {
let blob = new Blob([response.data], { resolve(response.data)
type: 'application/vnd.ms-excel' let blob = new Blob([response.data], {
}) type: 'application/vnd.ms-excel',
console.log(blob) })
let fileName = filename + '.xls' console.log(blob)
if (window.navigator.msSaveOrOpenBlob) { let fileName = filename + '.xls'
// console.log(2) if (window.navigator.msSaveOrOpenBlob) {
navigator.msSaveBlob(blob, fileName) // console.log(2)
} else { navigator.msSaveBlob(blob, fileName)
// console.log(3) } else {
var link = document.createElement('a') // console.log(3)
link.href = window.URL.createObjectURL(blob) var link = document.createElement('a')
link.download = fileName link.href = window.URL.createObjectURL(blob)
link.click() link.download = fileName
//释放内存 link.click()
window.URL.revokeObjectURL(link.href) //释放内存
} window.URL.revokeObjectURL(link.href)
}, }
err => { },
reject(err) (err) => {
} reject(err)
) }
}) )
})
} }
export function downloadImg(url, filename, options = {}) {
export function downloadImg(url,filename, options = {}) { return new Promise((resolve, reject) => {
return new Promise((resolve, reject) => { axios.defaults.headers['content-type'] =
axios.defaults.headers['content-type'] = 'application/x-www-form-urlencoded;charset=UTF-8' 'application/x-www-form-urlencoded;charset=UTF-8'
axios({ axios({
method: 'post', method: 'post',
url: url, // 请求地址 url: url, // 请求地址
data: options, // 参数 data: options, // 参数
responseType: 'blob' // 表明返回服务器返回的数据类型 responseType: 'blob', // 表明返回服务器返回的数据类型
}).then( }).then(
response => { (response) => {
resolve(response.data) resolve(response.data)
let blob = new Blob([response.data], { let blob = new Blob([response.data], {
type: 'application/png' type: 'application/png',
}) })
console.log(blob) console.log(blob)
let fileName = filename + '.png' let fileName = filename + '.png'
if (window.navigator.msSaveOrOpenBlob) { if (window.navigator.msSaveOrOpenBlob) {
// console.log(2) // console.log(2)
navigator.msSaveBlob(blob, fileName) navigator.msSaveBlob(blob, fileName)
} else { } else {
// console.log(3) // console.log(3)
var link = document.createElement('a') var link = document.createElement('a')
link.href = window.URL.createObjectURL(blob) link.href = window.URL.createObjectURL(blob)
link.download = fileName link.download = fileName
link.click() link.click()
//释放内存 //释放内存
window.URL.revokeObjectURL(link.href) window.URL.revokeObjectURL(link.href)
} }
}, },
err => { (err) => {
reject(err) reject(err)
} }
) )
}) })
} }
export function downloadFileToExcel(url,filename, options) { export function downloadFileToExcel(url, filename, options) {
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
axios.defaults.headers['content-type'] = 'application/json' axios.defaults.headers['content-type'] = 'application/json'
axios.get(url, {params: options, responseType: 'blob'}).then( axios.get(url, { params: options, responseType: 'blob' }).then(
response => { (response) => {
resolve({success: true}); resolve({ success: true })
let blob = new Blob([response.data], { let blob = new Blob([response.data], {
type: 'application/vnd.ms-excel' type: 'application/vnd.ms-excel',
}) })
console.log(blob) console.log(blob)
let fileName = filename + '.xls'; let fileName = filename + '.xls'
if (window.navigator.msSaveOrOpenBlob) { if (window.navigator.msSaveOrOpenBlob) {
// console.log(2) // console.log(2)
navigator.msSaveBlob(blob, fileName) navigator.msSaveBlob(blob, fileName)
} else { } else {
// console.log(3) // console.log(3)
var link = document.createElement('a') var link = document.createElement('a')
link.href = window.URL.createObjectURL(blob) link.href = window.URL.createObjectURL(blob)
link.download = fileName link.download = fileName
link.click() link.click()
//释放内存 //释放内存
window.URL.revokeObjectURL(link.href) window.URL.revokeObjectURL(link.href)
} }
},
}, (err) => {
err => { reject(err)
reject(err) }
} )
) })
})
} }
export function getBaseUrl() { export function getBaseUrl() {
return axios.defaults.baseURL; return axios.defaults.baseURL
} }
export default { export default {
get, get,
post, post,
downloadZip, downloadZip,
downloadExcel, downloadExcel,
downloadImg, downloadImg,
put, put,
fetchDelete, fetchDelete,
getBaseUrl, getBaseUrl,
downloadFileToExcel downloadFileToExcel,
} }

Loading…
Cancel
Save