Commit 7dfe8b8b by 无尘

fix: 修改日报导出

parent 85d1e52c
<!DOCTYPE html><html><head><meta charset=utf-8><link rel="shortcut icon" href=./favicon.ico><title>好办管理平台</title><link href=./static/css/app.272e2514cdd80c63e00f1a9314587ead.css rel=stylesheet></head><body style="min-width: 1400px;"><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.6.6/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js></script><script>// Raven.config('https://3715a345910d4c768e7a1ec14619c2d5@sentry.io/1413672').install();</script><script type=text/javascript src=./static/js/manifest.b2d925534a8367dc1e7e.js></script><script type=text/javascript src=./static/js/vendor.ccdd3a2984b37616bc62.js></script><script type=text/javascript src=./static/js/app.51b246f4aa30c58591d0.js></script></body></html>
\ No newline at end of file
<!DOCTYPE html><html><head><meta charset=utf-8><link rel="shortcut icon" href=./favicon.ico><title>好办管理平台</title><link href=./static/css/app.9cba13834018247ffdb75878d57db4ef.css rel=stylesheet></head><body style="min-width: 1400px;"><div id=app></div><script src=//web-1251519181.file.myqcloud.com/lib/vue/2.6.6/vue.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vue-router/3.0.2/vue-router.min.js></script><script src=//web-1251519181.file.myqcloud.com/lib/vuex/3.1.0/vuex.min.js></script><script src=//web-1251519181.file.myqcloud.com/components/img-preview.2.0.00.js></script><script>// Raven.config('https://3715a345910d4c768e7a1ec14619c2d5@sentry.io/1413672').install();</script><script type=text/javascript src=./static/js/manifest.221d0be6ff96da9fca9b.js></script><script type=text/javascript src=./static/js/vendor.ccdd3a2984b37616bc62.js></script><script type=text/javascript src=./static/js/app.51b246f4aa30c58591d0.js></script></body></html>
\ No newline at end of file
This source diff could not be displayed because it is too large. You can view the blob instead.
This source diff could not be displayed because it is too large. You can view the blob instead.
!function(e){var c=window.webpackJsonp;window.webpackJsonp=function(a,b,n){for(var r,t,o,i=0,u=[];i<a.length;i++)t=a[i],d[t]&&u.push(d[t][0]),d[t]=0;for(r in b)Object.prototype.hasOwnProperty.call(b,r)&&(e[r]=b[r]);for(c&&c(a,b,n);u.length;)u.shift()();if(n)for(i=0;i<n.length;i++)o=f(f.s=n[i]);return o};var a={},d={81:0};function f(c){if(a[c])return a[c].exports;var d=a[c]={i:c,l:!1,exports:{}};return e[c].call(d.exports,d,d.exports,f),d.l=!0,d.exports}f.e=function(e){var c=d[e];if(0===c)return new Promise(function(e){e()});if(c)return c[2];var a=new Promise(function(a,f){c=d[e]=[a,f]});c[2]=a;var b=document.getElementsByTagName("head")[0],n=document.createElement("script");n.type="text/javascript",n.charset="utf-8",n.async=!0,n.timeout=12e4,f.nc&&n.setAttribute("nonce",f.nc),n.src=f.p+"static/js/"+e+"."+{0:"3c6a72763ba8dd753c2b",1:"0ebe3ead93207dc78a78",2:"949e969ff9243354980e",3:"3282d88c1532d0ca9c9e",4:"01be0f85b0acd6f1d6df",5:"59a02095c1fc2882827e",6:"e9eb2044640fb2e362d3",7:"57af0bc90206c6098149",8:"9bd56928cea92db3c119",9:"860dbe8cf83334f9e3c0",10:"956d97940afe04265b88",11:"2d0a192288361dd95250",12:"3d3797e96dc9e8cc5bd4",13:"02c1f318efb8ad51c2f2",14:"d9f8f7e5598d599d6b6a",15:"360a92075d219ac84088",16:"bdc37aea4c14db4484c6",17:"ba5230cee7ac3ae9c6e2",18:"0970ea79c17262cffb18",19:"0e7d5bb6c1dc4b40bc33",20:"6be27d5ec89f8a1c293b",21:"b0e7348ff74371924c3b",22:"dec9447a8c45f2a2c7bb",23:"7ecce59b275ffaebbc57",24:"4637a4566383d6e864cf",25:"35717a163e696b2f50e2",26:"8f0bb144b5e757399727",27:"4767fb6457468f0647c1",28:"140ad99228544036c969",29:"6c23e5ce31762cfce3c9",30:"c6439b279653a45ce256",31:"8baa6bca929d1c9a38f6",32:"ec0bbd85e6d55909453d",33:"1a9ac0c12df7a396447f",34:"f9d53c31059aaff9b360",35:"80267d39d723d4d02341",36:"706cf2b1fed575cc2e7b",37:"8016d3ac07df8acaf73d",38:"401ecfbced781ca109ff",39:"45d0c177c91108351c01",40:"18605687ea6ee1539453",41:"78d64ae1581e8ea232cc",42:"56b8d3d551364d7fcf73",43:"9d05f4d2f06b9c6bba0e",44:"96d0b6e88fc87f60bac7",45:"bca08e89843b50550d0d",46:"98fb716c1e5a99ebdcf8",47:"de0e290ed4c878d0c8c3",48:"6d564387f233c08c800d",49:"197cde68ad771fae4c5c",50:"331006123edd2049b7d9",51:"244dc6f576a64b7c174b",52:"3ee35b29a67a32a31d1d",53:"9dce74b07cc47cdf56db",54:"1503b643475934e2b5e1",55:"8d3253cd2f581e7ce20b",56:"bf6ca3213cca34608387",57:"38ec53bb17e31c729773",58:"396c075bf2e02574d826",59:"8669556909924307dc86",60:"0ec53183da96964b8e4c",61:"39a85469e87be40566f6",62:"44d1241f8d57451d0c10",63:"02272fe3caa4b8c63c2a",64:"ebc341a9017c4b2c1112",65:"afcb60484e7a9ec39f28",66:"0c2656f4decfecb59972",67:"57f329b5a1c3658845e9",68:"ba49712f562eff6edbc3",69:"6262c1a9179f86d6e8cc",70:"d5759f121e5783b4c558",71:"95b66215f468ac6aa391",72:"b9aea07ebd1f712eee71",73:"820fe71d89d973ff8cf7",74:"317ccff353170ac7c01f",75:"44714b271d06e1e87012",76:"7eaab216a287b1ffca0e",77:"01b9dbf75e1040e81146",80:"c4a24f0beb29dbd2892a"}[e]+".js";var r=setTimeout(t,12e4);function t(){n.onerror=n.onload=null,clearTimeout(r);var c=d[e];0!==c&&(c&&c[1](new Error("Loading chunk "+e+" failed.")),d[e]=void 0)}return n.onerror=n.onload=t,b.appendChild(n),a},f.m=e,f.c=a,f.d=function(e,c,a){f.o(e,c)||Object.defineProperty(e,c,{configurable:!1,enumerable:!0,get:a})},f.n=function(e){var c=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(c,"a",c),c},f.o=function(e,c){return Object.prototype.hasOwnProperty.call(e,c)},f.p="./",f.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
!function(e){var c=window.webpackJsonp;window.webpackJsonp=function(a,b,n){for(var r,t,o,i=0,u=[];i<a.length;i++)t=a[i],d[t]&&u.push(d[t][0]),d[t]=0;for(r in b)Object.prototype.hasOwnProperty.call(b,r)&&(e[r]=b[r]);for(c&&c(a,b,n);u.length;)u.shift()();if(n)for(i=0;i<n.length;i++)o=f(f.s=n[i]);return o};var a={},d={81:0};function f(c){if(a[c])return a[c].exports;var d=a[c]={i:c,l:!1,exports:{}};return e[c].call(d.exports,d,d.exports,f),d.l=!0,d.exports}f.e=function(e){var c=d[e];if(0===c)return new Promise(function(e){e()});if(c)return c[2];var a=new Promise(function(a,f){c=d[e]=[a,f]});c[2]=a;var b=document.getElementsByTagName("head")[0],n=document.createElement("script");n.type="text/javascript",n.charset="utf-8",n.async=!0,n.timeout=12e4,f.nc&&n.setAttribute("nonce",f.nc),n.src=f.p+"static/js/"+e+"."+{0:"3c6a72763ba8dd753c2b",1:"0ebe3ead93207dc78a78",2:"949e969ff9243354980e",3:"3282d88c1532d0ca9c9e",4:"01be0f85b0acd6f1d6df",5:"59a02095c1fc2882827e",6:"e9eb2044640fb2e362d3",7:"30389cf24ed1f6f0031a",8:"9bd56928cea92db3c119",9:"860dbe8cf83334f9e3c0",10:"956d97940afe04265b88",11:"2d0a192288361dd95250",12:"3d3797e96dc9e8cc5bd4",13:"02c1f318efb8ad51c2f2",14:"d9f8f7e5598d599d6b6a",15:"360a92075d219ac84088",16:"bdc37aea4c14db4484c6",17:"ba5230cee7ac3ae9c6e2",18:"0970ea79c17262cffb18",19:"0e7d5bb6c1dc4b40bc33",20:"6be27d5ec89f8a1c293b",21:"b0e7348ff74371924c3b",22:"dec9447a8c45f2a2c7bb",23:"7ecce59b275ffaebbc57",24:"4637a4566383d6e864cf",25:"211a48999311513a0aed",26:"8f0bb144b5e757399727",27:"4767fb6457468f0647c1",28:"140ad99228544036c969",29:"6c23e5ce31762cfce3c9",30:"c6439b279653a45ce256",31:"8baa6bca929d1c9a38f6",32:"ec0bbd85e6d55909453d",33:"1a9ac0c12df7a396447f",34:"f9d53c31059aaff9b360",35:"80267d39d723d4d02341",36:"706cf2b1fed575cc2e7b",37:"8016d3ac07df8acaf73d",38:"401ecfbced781ca109ff",39:"45d0c177c91108351c01",40:"18605687ea6ee1539453",41:"78d64ae1581e8ea232cc",42:"56b8d3d551364d7fcf73",43:"9d05f4d2f06b9c6bba0e",44:"96d0b6e88fc87f60bac7",45:"bca08e89843b50550d0d",46:"98fb716c1e5a99ebdcf8",47:"de0e290ed4c878d0c8c3",48:"6d564387f233c08c800d",49:"197cde68ad771fae4c5c",50:"331006123edd2049b7d9",51:"244dc6f576a64b7c174b",52:"3ee35b29a67a32a31d1d",53:"9dce74b07cc47cdf56db",54:"1503b643475934e2b5e1",55:"8d3253cd2f581e7ce20b",56:"bf6ca3213cca34608387",57:"38ec53bb17e31c729773",58:"396c075bf2e02574d826",59:"8669556909924307dc86",60:"0ec53183da96964b8e4c",61:"39a85469e87be40566f6",62:"44d1241f8d57451d0c10",63:"02272fe3caa4b8c63c2a",64:"ebc341a9017c4b2c1112",65:"afcb60484e7a9ec39f28",66:"0c2656f4decfecb59972",67:"57f329b5a1c3658845e9",68:"ba49712f562eff6edbc3",69:"6262c1a9179f86d6e8cc",70:"d5759f121e5783b4c558",71:"95b66215f468ac6aa391",72:"b9aea07ebd1f712eee71",73:"820fe71d89d973ff8cf7",74:"317ccff353170ac7c01f",75:"44714b271d06e1e87012",76:"7eaab216a287b1ffca0e",77:"01b9dbf75e1040e81146",80:"c4a24f0beb29dbd2892a"}[e]+".js";var r=setTimeout(t,12e4);function t(){n.onerror=n.onload=null,clearTimeout(r);var c=d[e];0!==c&&(c&&c[1](new Error("Loading chunk "+e+" failed.")),d[e]=void 0)}return n.onerror=n.onload=t,b.appendChild(n),a},f.m=e,f.c=a,f.d=function(e,c,a){f.o(e,c)||Object.defineProperty(e,c,{configurable:!1,enumerable:!0,get:a})},f.n=function(e){var c=e&&e.__esModule?function(){return e.default}:function(){return e};return f.d(c,"a",c),c},f.o=function(e,c){return Object.prototype.hasOwnProperty.call(e,c)},f.p="./",f.oe=function(e){throw console.error(e),e}}([]);
\ No newline at end of file
......@@ -21,12 +21,34 @@
</el-form-item>
<el-form-item label="" prop="stores">
<p class="daily-form-label">选择门店</p>
<div class="daily-store-select">
<el-select class="w-350" v-model="dailyRuleForm.stores" multiple collapse-tags placeholder="请选择">
<el-option v-for="item in stores" :key="item.value" :label="item.storeName" :value="item.storeId"> </el-option>
</el-select>
<div class="show-select-num">已经选择{{ dailyRuleForm.stores.length }}家门店</div>
</div>
<el-popover placement="bottom" title="" width="350" trigger="click" v-model="storeVisible">
<div class="daily-store-select">
<div class="select-search">
<el-input placeholder="请输入门店名称" v-model="searchSelect" style="width: 100%;" @keyup.native="value => toInput(value, searchSelect)" @clear="clearSearch"> <i slot="prefix" class="el-input__icon el-icon-search"></i> </el-input>
</div>
<!-- <el-select class="w-350" v-model="dailyRuleForm.stores" multiple collapse-tags placeholder="请选择">
<el-option v-for="item in stores" :key="item.storeId" :label="item.storeName" :value="item.storeId"> </el-option>
</el-select> -->
<div class="el-scrollbar define-search-select">
<div class="el-select-dropdown__wrap el-scrollbar__wrap" style="margin-bottom: -5px; margin-right: -5px;">
<ul class="el-scrollbar__view el-select-dropdown__list">
<li :class="['el-select-dropdown__item', item.select ? 'selected hover' : '']" v-for="item in stores" :key="item.storeId" @click="checkStore(item)">
<span>{{ item.storeName }}</span>
</li>
<li v-if="!stores.length" class="text-center"><span>暂无数据</span></li>
</ul>
</div>
<div class="el-scrollbar__bar is-horizontal"><div class="el-scrollbar__thumb" style="transform: translateX(0%);"></div></div>
<div class="el-scrollbar__bar is-vertical"><div class="el-scrollbar__thumb" style="transform: translateY(0%);"></div></div>
</div>
</div>
<div class="show-select-num w-350" slot="reference" @click="changeVisible">
已经选择{{ dailyRuleForm.stores.length }}家门店
<span class="el-input__suffix"
><span class="el-input__suffix-inner"><i :class="['el-select__caret el-input__icon el-icon-arrow-up', storeVisible ? 'is-reverse' : '']"></i></span
></span>
</div>
</el-popover>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="exportForm('dailyRuleForm')">导出日报</el-button>
......@@ -67,6 +89,8 @@ export default {
// 模板数据
templates: [],
// 门店数据
searchSelect: '',
storeVisible: false,
stores: [],
choiceDateCopy: [],
pickerOptions: {
......@@ -112,6 +136,7 @@ export default {
changeTemplate() {
const that = this;
that.dailyRuleForm.stores = [];
that.searchSelect = '';
that.$nextTick(() => {
that.getStoreData();
});
......@@ -121,32 +146,36 @@ export default {
const that = this;
that.$refs[formName].validate(valid => {
if (valid) {
that.postDailyExcel();
let templateId = '';
that.templates.forEach(ele => {
if (ele.storeType == that.dailyRuleForm.storeType) {
templateId = ele.dailyReportTemplateId;
}
});
that.postDailyExcel(templateId);
} else {
return false;
}
});
}, 500),
postDailyExcel() {
postDailyExcel(templateId) {
const that = this;
let para = {
filterStoreIds: that.dailyRuleForm.stores.join(',') || '', // 门店分组, 门店
storeIds: that.dailyRuleForm.stores.join(',') || '', // 门店分组, 门店
templateId: templateId,
startDate: that.dailyRuleForm.dateRange[0] || '',
endDate: that.dailyRuleForm.dateRange[1] || '',
brandId: that.activeBrand // 品牌 id
};
/* let urlSource = `search=${para.search}&filterStoreIds=${para.filterStoreIds}&storeGroupIds=${para.storeGroupIds}&storeType=${para.storeType}&startDate=${para.startDate}&endDate=${para.endDate}&brandId=${para.brandId}&currentPage=${para.currentPage}&pageSize=${para.pageSize}`;
window.open(`${window.location.origin}/haoban-app-daily-web/daily/batch-export-brand-task?${urlSource}`); */
postExcel('/haoban-app-daily-web/daily/batch-export-brand-task', para)
postExcel('/haoban-app-daily-web/daily/batch-export', para)
.then(res => {
if (!res.data) {
errMsg.errorMsg('暂无数据');
return false;
}
// let resData = res.data;
const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' });
const fileName = `云日报记录.csv`;
const fileName = `云日报记录.xls`;
const elink = document.createElement('a');
elink.download = fileName;
elink.style.display = 'none';
......@@ -155,7 +184,6 @@ export default {
elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink);
// errMsg.errorMsg(resData);
})
.catch(function(error) {
that.$message.error({
......@@ -166,10 +194,64 @@ export default {
},
/**
* 输入
*/
toInput: _debounce(function(e, value) {
const that = this;
if (!that.stores.length) {
return false;
}
if (value == '') {
that.stores = JSON.parse(JSON.stringify(that.storesCopy));
}
let filterData = JSON.parse(JSON.stringify(that.storesCopy)).filter(ele => {
return ele.storeName.includes(value);
});
that.stores = filterData;
}, 500),
/**
* 显示或隐藏门店列表
*/
/* eslint-disable */
changeVisible() {
// const that = this;
// that.storeVisible = !that.storeVisible;
},
/**
* 选择门店
*/
checkStore(item) {
const that = this;
if (item.select) {
item.select = false;
const index = that.dailyRuleForm.stores.indexOf(item.storeId);
that.dailyRuleForm.stores.splice(index, 1);
} else {
item.select = true;
that.dailyRuleForm.stores.push(item.storeId);
}
that.storesCopy.forEach(ele => {
if (that.dailyRuleForm.stores.includes(ele.storeId)) {
ele.select = true;
}
});
},
/**
* 清空
*/
clearSearch() {
const that = this;
that.stores = JSON.parse(JSON.stringify(that.storesCopy));
},
/**
* 获取自定义模板
*/
getTemplateData() {
let that = this;
const that = this;
let para = {
brandId: that.brandId
};
......@@ -211,7 +293,13 @@ export default {
.then(res => {
let resData = res.data;
if (resData.errorCode == 1) {
that.stores = resData.result.list || [];
if (resData.result.list) {
resData.result.list.forEach(ele => {
ele.select = false;
});
}
that.stores = JSON.parse(JSON.stringify(resData.result.list)) || [];
that.storesCopy = JSON.parse(JSON.stringify(resData.result.list)) || [];
return;
}
errMsg.errorMsg(resData);
......@@ -229,6 +317,8 @@ export default {
const that = this;
if (!!newData) {
that.dailyRuleForm.storeType = '';
that.storesCopy = [];
that.searchSelect = '';
that.activeBrand = newData;
that.getTemplateData();
}
......@@ -251,6 +341,29 @@ export default {
};
</script>
<style lang="less" scoped>
.select-search {
width: 100%;
// padding: 0 10px;
-webkit-box-sizing: border-box;
box-sizing: border-box;
}
.define-search-select {
ul {
li {
&.selected:after {
position: absolute;
right: 20px;
font-family: element-icons;
content: '\E611';
font-size: 12px;
font-weight: 700;
-webkit-font-smoothing: antialiased;
-moz-osx-font-smoothing: grayscale;
}
}
}
}
.daily-export-content {
width: 500px;
-webkit-box-sizing: border-box;
......@@ -265,20 +378,35 @@ export default {
color: #909399;
}
.daily-store-select {
.show-select-num {
position: relative;
.show-select-num {
position: absolute;
left: 2px;
top: 3px;
width: 318px;
height: 28px;
color: #606266;
display: inline-block;
font-size: inherit;
height: 32px;
line-height: 32px;
padding-left: 10px;
-webkit-appearance: none;
background-color: #fff;
background-image: none;
border-radius: 4px;
border: 1px solid #dcdfe6;
-webkit-box-sizing: border-box;
box-sizing: border-box;
color: #606266;
.el-select__caret {
color: #c0c4cc;
font-size: 14px;
background: #fff;
pointer-events: none;
z-index: 2;
transition: transform 0.3s;
transform: rotate(180deg);
cursor: pointer;
&.is-reverse {
transform: rotate(0deg);
}
}
}
.daily-store-select {
position: relative;
}
}
</style>
......@@ -433,7 +433,10 @@ export default {
.then(res => {
let resData = res.data;
if (resData.errorCode == 1) {
that.handleAllFields(resData.result);
let timeAll = setTimeout(() => {
that.handleAllFields(resData.result);
clearTimeout(timeAll);
}, 200);
return false;
}
errMsg.errorMsg(resData);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment