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> <!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 \ 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}}([]); !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 \ No newline at end of file
...@@ -21,12 +21,34 @@ ...@@ -21,12 +21,34 @@
</el-form-item> </el-form-item>
<el-form-item label="" prop="stores"> <el-form-item label="" prop="stores">
<p class="daily-form-label">选择门店</p> <p class="daily-form-label">选择门店</p>
<div class="daily-store-select"> <el-popover placement="bottom" title="" width="350" trigger="click" v-model="storeVisible">
<el-select class="w-350" v-model="dailyRuleForm.stores" multiple collapse-tags placeholder="请选择"> <div class="daily-store-select">
<el-option v-for="item in stores" :key="item.value" :label="item.storeName" :value="item.storeId"> </el-option> <div class="select-search">
</el-select> <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 class="show-select-num">已经选择{{ dailyRuleForm.stores.length }}家门店</div> </div>
</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-form-item> <el-form-item>
<el-button type="primary" @click="exportForm('dailyRuleForm')">导出日报</el-button> <el-button type="primary" @click="exportForm('dailyRuleForm')">导出日报</el-button>
...@@ -67,6 +89,8 @@ export default { ...@@ -67,6 +89,8 @@ export default {
// 模板数据 // 模板数据
templates: [], templates: [],
// 门店数据 // 门店数据
searchSelect: '',
storeVisible: false,
stores: [], stores: [],
choiceDateCopy: [], choiceDateCopy: [],
pickerOptions: { pickerOptions: {
...@@ -112,6 +136,7 @@ export default { ...@@ -112,6 +136,7 @@ export default {
changeTemplate() { changeTemplate() {
const that = this; const that = this;
that.dailyRuleForm.stores = []; that.dailyRuleForm.stores = [];
that.searchSelect = '';
that.$nextTick(() => { that.$nextTick(() => {
that.getStoreData(); that.getStoreData();
}); });
...@@ -121,32 +146,36 @@ export default { ...@@ -121,32 +146,36 @@ export default {
const that = this; const that = this;
that.$refs[formName].validate(valid => { that.$refs[formName].validate(valid => {
if (valid) { if (valid) {
that.postDailyExcel(); let templateId = '';
that.templates.forEach(ele => {
if (ele.storeType == that.dailyRuleForm.storeType) {
templateId = ele.dailyReportTemplateId;
}
});
that.postDailyExcel(templateId);
} else { } else {
return false; return false;
} }
}); });
}, 500), }, 500),
postDailyExcel() { postDailyExcel(templateId) {
const that = this; const that = this;
let para = { let para = {
filterStoreIds: that.dailyRuleForm.stores.join(',') || '', // 门店分组, 门店 storeIds: that.dailyRuleForm.stores.join(',') || '', // 门店分组, 门店
templateId: templateId,
startDate: that.dailyRuleForm.dateRange[0] || '', startDate: that.dailyRuleForm.dateRange[0] || '',
endDate: that.dailyRuleForm.dateRange[1] || '', endDate: that.dailyRuleForm.dateRange[1] || '',
brandId: that.activeBrand // 品牌 id 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}`; postExcel('/haoban-app-daily-web/daily/batch-export', para)
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)
.then(res => { .then(res => {
if (!res.data) { if (!res.data) {
errMsg.errorMsg('暂无数据'); errMsg.errorMsg('暂无数据');
return false; return false;
} }
// let resData = res.data;
const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' }); const blob = new Blob([res.data], { type: 'application/vnd.ms-excel' });
const fileName = `云日报记录.csv`; const fileName = `云日报记录.xls`;
const elink = document.createElement('a'); const elink = document.createElement('a');
elink.download = fileName; elink.download = fileName;
elink.style.display = 'none'; elink.style.display = 'none';
...@@ -155,7 +184,6 @@ export default { ...@@ -155,7 +184,6 @@ export default {
elink.click(); elink.click();
URL.revokeObjectURL(elink.href); // 释放URL 对象 URL.revokeObjectURL(elink.href); // 释放URL 对象
document.body.removeChild(elink); document.body.removeChild(elink);
// errMsg.errorMsg(resData);
}) })
.catch(function(error) { .catch(function(error) {
that.$message.error({ that.$message.error({
...@@ -166,10 +194,64 @@ export default { ...@@ -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() { getTemplateData() {
let that = this; const that = this;
let para = { let para = {
brandId: that.brandId brandId: that.brandId
}; };
...@@ -211,7 +293,13 @@ export default { ...@@ -211,7 +293,13 @@ export default {
.then(res => { .then(res => {
let resData = res.data; let resData = res.data;
if (resData.errorCode == 1) { 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; return;
} }
errMsg.errorMsg(resData); errMsg.errorMsg(resData);
...@@ -229,6 +317,8 @@ export default { ...@@ -229,6 +317,8 @@ export default {
const that = this; const that = this;
if (!!newData) { if (!!newData) {
that.dailyRuleForm.storeType = ''; that.dailyRuleForm.storeType = '';
that.storesCopy = [];
that.searchSelect = '';
that.activeBrand = newData; that.activeBrand = newData;
that.getTemplateData(); that.getTemplateData();
} }
...@@ -251,6 +341,29 @@ export default { ...@@ -251,6 +341,29 @@ export default {
}; };
</script> </script>
<style lang="less" scoped> <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 { .daily-export-content {
width: 500px; width: 500px;
-webkit-box-sizing: border-box; -webkit-box-sizing: border-box;
...@@ -265,20 +378,35 @@ export default { ...@@ -265,20 +378,35 @@ export default {
color: #909399; color: #909399;
} }
.daily-store-select { .show-select-num {
position: relative; position: relative;
.show-select-num { display: inline-block;
position: absolute; font-size: inherit;
left: 2px; height: 32px;
top: 3px; line-height: 32px;
width: 318px; padding-left: 10px;
height: 28px; -webkit-appearance: none;
color: #606266; 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; font-size: 14px;
background: #fff; transition: transform 0.3s;
pointer-events: none; transform: rotate(180deg);
z-index: 2; cursor: pointer;
&.is-reverse {
transform: rotate(0deg);
}
} }
} }
.daily-store-select {
position: relative;
}
} }
</style> </style>
...@@ -433,7 +433,10 @@ export default { ...@@ -433,7 +433,10 @@ export default {
.then(res => { .then(res => {
let resData = res.data; let resData = res.data;
if (resData.errorCode == 1) { if (resData.errorCode == 1) {
that.handleAllFields(resData.result); let timeAll = setTimeout(() => {
that.handleAllFields(resData.result);
clearTimeout(timeAll);
}, 200);
return false; return false;
} }
errMsg.errorMsg(resData); 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