diff --git a/package.json b/package.json
index de4f3eb8..0633c850 100644
--- a/package.json
+++ b/package.json
@@ -49,6 +49,7 @@
"dayjs": "^1.11.10",
"default-passive-events": "^2.0.0",
"echarts": "4.9.0",
+ "el-bigdata-table": "^1.0.32",
"el-table-virtual-scroll": "^1.4.4",
"element-china-area-data": "^6.1.0",
"element-ui": "2.15.6",
diff --git a/src/components/XdTable/index.vue b/src/components/XdTable/index.vue
index 4d9f1124..111702e6 100644
--- a/src/components/XdTable/index.vue
+++ b/src/components/XdTable/index.vue
@@ -204,7 +204,11 @@ import clip from '@/utils/clipboard'
import Sortable from 'sortablejs'
import draggable from 'vuedraggable'
import origTable from './table.jsx'
-const components = { origTable, draggable }
+
+import VirtualScroll from "el-table-virtual-scroll";
+import { VirtualColumn } from "el-table-virtual-scroll";
+
+const components = { origTable, draggable,VirtualScroll }
export default {
name: 'XdTable',
@@ -262,42 +266,35 @@ export default {
inserted: function (el, binding, vnode) {
var oDiv = el;
var tbBodyDiv=oDiv.getElementsByClassName("el-table__body-wrapper")[0];
- //监听用户鼠标事件
+
+ // 鼠标按下事件
tbBodyDiv.onmousedown = function (ev) {
var evt = window.event || arguments[0];
var flag = true;
// 鼠标右键菜单,并且记录当前位置
if(evt.button == 2){
flag=false;
- if(vnode.context.multipleSelection&&vnode.context.multipleSelection.length>0){
- vnode.context.currentOdiv=oDiv;
- // vnode.context.currentOdiv=tbBodyDiv;
- vnode.context.currentCell=evt.target;
- showContextMenu(evt);
+ if(vnode.context.multipleSelection&&vnode.context.multipleSelection.length>0)
+ {
- const currentCellInfo=getCellPosition(evt.target);
- vnode.context.currentCellInfo=currentCellInfo;
+ // 记住当前单元格位置
+ vnode.context.currentOdiv=oDiv;
+ vnode.context.currentCell=evt.target;
+
+ const currentCellInfo=getCellPosition(evt.target);
+ vnode.context.currentCellInfo=currentCellInfo;
+
+ // 显示右键菜单
+ showContextMenu(evt);
}
return;
}
- // 只有鼠标左键按下时有效
- if(evt.button != 0){
- return;
- }
- // addCtrlCKeyDown(oDiv,evt)
-
- vnode.context.multipleSelection=[];
- //初始化不显示
vnode.context.contextVisible=false;
-
- const refTableObj=vnode.context.getInstance();
-
// 增加图层
var xdTableObj = document.getElementById(vnode.context.tableId);
-
var tbBody1=xdTableObj.getElementsByClassName("el-table__body-wrapper")[0];
var selDiv = document.createElement("div");
selDiv.style.cssText = "position:absolute;width:0px;height:0px;font-size:0px;margin:0px;padding:0px;border:2px solid #409eff;background-color:#d9ecff;z-index:1000;filter:alpha(opacity:60);opacity:0.6;display:none;";
@@ -305,41 +302,22 @@ export default {
tbBody1.appendChild(selDiv);
// 表格对象
- const tableDom=vnode.context.$refs.table.$refs.elTable.$el;
+ const refTableObj=vnode.context.getInstance();
+ const tableDom=vnode.context.$refs.table.$refs.elTable.$el;
//用来存储列表 单元格和行
var selList = [];
var selRowList = [];
//获得指令下的dom对应的表格
var fileNodes = oDiv.getElementsByTagName("td");
- var countI = 0;
+ var fileRowNodes = oDiv.getElementsByTagName("tr");
+
// 获得鼠标 X,Y
var startX = (evt.x || evt.clientX);
var startY = (evt.y || evt.clientY);
- //重置选中单元格css
- console.log("===fileNodes.length==>",fileNodes.length);
- for (var i = 0; i < fileNodes.length; i++) {
- console.log("===fileNodes==>",i);
- if (fileNodes[i].className.indexOf("el-table__cell") != -1) {
- fileNodes[i].classList.remove("seled");
- selList.push(fileNodes[i]);
- }
- }
-
- var fileRowNodes = oDiv.getElementsByTagName("tr");
- // refTableObj.clearSelection()
- for (var i = 0; i < fileRowNodes.length; i++) {
-
- if (fileRowNodes[i].className.indexOf("el-table__row") != -1) {
- fileRowNodes[i].classList.remove("rowSeled");
- selRowList.push(fileRowNodes[i]);
- }
- }
-
- setMouseCellSelect(evt.target,selRowList);
-
- // setMouseRowSelect(evt.target);
+ // 优先选中当前单元格
+ setMouseCellSelect(evt.target);
var _x = null;
var _y = null;
@@ -352,10 +330,32 @@ export default {
_x = (evt.x || evt.clientX);
_y = (evt.y || evt.clientY);
//为了确定是点击事件还是移动事件
- // if(Math.abs(_x - startX)<5 && Math.abs(_y - startY)<5){
- // return;
- // }
+
+ if(Math.abs(_x - startX)<5 && Math.abs(_y - startY)<5){
+ // setMouseCellSelect(evt.target);
+ // setMouseRowSelect(evt.target);
+ return;
+ }
if(flag){
+
+ // console.log("===fileNodes.length==>",fileNodes.length);
+ // 只选取范围内的数据
+ for (var i = 0; i < fileNodes.length; i++) {
+ // console.log("===fileNodes==>",i);
+ if (fileNodes[i].className.indexOf("el-table__cell") != -1) {
+ fileNodes[i].classList.remove("seled");
+ selList.push(fileNodes[i]);
+ }
+ }
+
+
+ for (var i = 0; i < fileRowNodes.length; i++) {
+ if (fileRowNodes[i].className.indexOf("el-table__row") != -1) {
+ fileRowNodes[i].classList.remove("rowSeled");
+ selRowList.push(fileRowNodes[i]);
+ }
+ }
+
flag = false;
}
@@ -381,7 +381,6 @@ export default {
var _l = selDiv.offsetLeft, _t = selDiv.offsetTop;
var _w = selDiv.offsetWidth, _h = selDiv.offsetHeight;
-
if(_y>(tbPosRect2.y+tbPosRect2.height)){
tbBody2.scrollBy(0, 60);
}
@@ -667,7 +666,6 @@ export default {
this.initDefaultTplList();
this.initStorage()
this.updateTable()
- this.initSort();
// this.initKeyDown();
this.tableDom=this.getTableDom();
@@ -687,8 +685,6 @@ export default {
},
methods: {
getInstance() {
- // const ref = this.$children.find(i => i.$options._componentTag === 'el-table')
- // return ref
return this.$refs.table.$refs?.elTable
},
getUUID() {
@@ -1054,7 +1050,6 @@ export default {
this.storeTplToLocal(that.storageList)
this.initStorage()
this.updateTable()
- this.initSort();
// that.updateTable();
// this.refreshKeyId=Math.random().toString(36).substring(3,10);
@@ -1101,15 +1096,11 @@ export default {
this.storeTplToLocal(list)
this.initStorage()
this.updateTable()
- this.initSort();
},
download(){
this.$emit("download");
},
- initSort() {
-
- },
// 查询
queryTable(){
this.$emit("queryTable");
@@ -1163,6 +1154,7 @@ export default {
})
return
}
+
this.updateTable()
},
setFixed(value, clo) {
@@ -1277,6 +1269,11 @@ export default {
// 清除本地缓存
// window.localStorage.removeItem('tableStorage')
}
+
+ // const storage = window.localStorage.getItem('tableStorage') ? JSON.parse(window.localStorage.getItem('tableStorage')) : {}
+ // storage[this.saveStorageName] = this.storageList
+ // window.localStorage.setItem('tableStorage', JSON.stringify(storage))
+
},
storeTplToLocal(tplColList){
const storage = window.localStorage.getItem('tableStorage') ? JSON.parse(window.localStorage.getItem('tableStorage')) : {}
diff --git a/src/views/emis/emisCustomerUser/monthUserList.vue b/src/views/emis/emisCustomerUser/monthUserList.vue
index 28c9d8f2..2412a9ef 100644
--- a/src/views/emis/emisCustomerUser/monthUserList.vue
+++ b/src/views/emis/emisCustomerUser/monthUserList.vue
@@ -91,9 +91,12 @@
:height="(slotProps.contentHeight)+'px'"
v-loading="loading"
border
- size="small"
+ size="mini"
+
:data="emisCustomerUserList"
+ ref="refTable"
+
storageName="emisCustomerUserList_month"
:showSearch.sync="showSearch"
@@ -599,53 +602,53 @@ export default {
/** 导出按钮操作 */
handleExport() {
- // this.download('emis/emisCustomerUser/export', {
- // ...this.queryParams
- // }, `emisCustomerUser_${new Date().getTime()}.xlsx`)
- const loadingInstance = this.$loading({
+ const loadingInstance = this.$loading({
text: '正在导出...'
+ })
+
+
+ if(this.selectionList&&this.selectionList.length>0){
+ this.exportData(this.selectionList,loadingInstance);
+ }
+ else{
+ let qExportParam={...this.queryParams};
+ qExportParam.pageNum=1;
+ qExportParam.pageSize=20000;
+
+ listEmisWaybill(qExportParam).then(response => {
+ if (response.code === 200) {
+ this.exportData(response.rows,loadingInstance);
+ }
+ });
+ }
+ },
+ exportData(selData,loadingInstance){
+ const curList =selData
+ import('@/vendor/Export2Excel').then(excel => {
+ const exportParam=this.$refs.refTable.getExportParam();
+ const tHeader = exportParam.header;
+ const filterVal = exportParam.filter;
+ const data = this.formatJson(filterVal, curList, selData)
+ excel.export_json_to_excel({
+ header: tHeader,
+ data,
+ filename: '月结客户列表',
+ autoWidth: true
})
- var qParam = {...this.queryParams};
- qParam.pageNum=1;
- qParam.pageSize=5000;
-
- listMonthUser(this.addDateRange(this.queryParams, this.dateTimeRange)).then(response => {
- this.downloadLoading = false
- if (response.code === 200) {
- const curList = response.rows
- import('@/vendor/Export2Excel').then(excel => {
- // 客户名称 英文简称 月结编号 联系人 手机号码 主归属网点 回款联系人 销售联系人 结算类型 国家 省份 城市 区县 联系地址 E-Mail 是否启用 是否开启OMS账号 首次签约时间 备注
-
- const tHeader = ['客户名称','英文简称','月结编号','联系人','手机号码','主归属网点','回款联系人','销售联系人','结算类型','国家','省份','城市','区县','联系地址','E-Mail','是否启用','是否开启OMS账号','首次签约时间','备注'];
- const filterVal = ['customerName','customerNameEn','monthlyPayCode','contact','phone','ownerSite','payee','salesmen','settedType','country','province','city','county','address','email','status','blOpenOms','firstSigningDay','remark'];
- const data = this.formatJson(filterVal, curList, response.rows)
- excel.export_json_to_excel({
- header: tHeader,
- data,
- filename: '月结客户',
- autoWidth: true
- })
- loadingInstance.close()
- })
- }
- });
+ loadingInstance.close()
+ })
},
formatJson(filterVal, jsonData, resData) {
let index = 0
return jsonData.map(v => filterVal.map(j => {
+
if (j === 'index') {
return ++index
}
- if (j === 'status') {
- var statusStr='停用'
- if(v[j] == 1){
- statusStr='启用'
- }
- return statusStr;
- }
return v[j]
}))
},
+
/** 列索引函数 */
getIndex($index) {
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1
diff --git a/src/views/emis/emisSettleInvoiceRecord/panel/InvoiceRecordApplyListPanel.vue b/src/views/emis/emisSettleInvoiceRecord/panel/InvoiceRecordApplyListPanel.vue
index 4d023211..56a15efa 100644
--- a/src/views/emis/emisSettleInvoiceRecord/panel/InvoiceRecordApplyListPanel.vue
+++ b/src/views/emis/emisSettleInvoiceRecord/panel/InvoiceRecordApplyListPanel.vue
@@ -47,8 +47,8 @@
-
-
+
+
@@ -178,8 +178,8 @@
增值税电子普通发票
- 增值税普通发票
- 增值税专用发票
+ 增值税普通发票(纸质发票)
+ 增值税专用发票(纸质发票)
其它手工开票
@@ -610,10 +610,10 @@ export default {
return '增值税电子普通发票';
}
else if(v['invoiceType'] == 2){
- return '增值税普通发票';
+ return '增值税普通发票(纸质发票)';
}
else if(v['invoiceType'] == 3){
- return '增值税专用发票';
+ return '增值税专用发票(纸质发票)';
}
else if(v['invoiceType'] == 9){
return '其它手工发票';
diff --git a/src/views/emis/emisWaybill/centerWaybillList.vue b/src/views/emis/emisWaybill/centerWaybillList.vue
index 8cee225e..65bd055c 100644
--- a/src/views/emis/emisWaybill/centerWaybillList.vue
+++ b/src/views/emis/emisWaybill/centerWaybillList.vue
@@ -19,7 +19,7 @@
clearable
:rows="4"
/>
-
+
@@ -35,7 +35,7 @@
-
+
@@ -51,10 +51,10 @@
-
+
-
+
@@ -89,7 +89,7 @@
v-model="queryParams.sendName"
:placeholder="$t('寄件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -97,7 +97,7 @@
v-model="queryParams.sendMobile"
:placeholder="$t('寄件人电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -105,18 +105,18 @@
v-model="queryParams.sendCompany"
:placeholder="$t('寄件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -124,7 +124,7 @@
v-model="queryParams.feeRemark"
:placeholder="$t('费用备注')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -138,7 +138,7 @@
v-model="queryParams.receiveName"
:placeholder="$t('收件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -146,7 +146,7 @@
v-model="queryParams.receiveMobile"
:placeholder="$t('收件电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -156,12 +156,12 @@
v-model="queryParams.receiveCompany"
:placeholder="$t('收件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -289,7 +289,7 @@
v-model="queryParams.problemCause"
:placeholder="$t('问题件原因')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-->
diff --git a/src/views/emis/emisWaybill/dispatchWaybillList.vue b/src/views/emis/emisWaybill/dispatchWaybillList.vue
index 16d95262..e918f1b3 100644
--- a/src/views/emis/emisWaybill/dispatchWaybillList.vue
+++ b/src/views/emis/emisWaybill/dispatchWaybillList.vue
@@ -40,7 +40,7 @@
-
+
@@ -48,7 +48,7 @@
-
+
@@ -64,10 +64,10 @@
-
+
-
+
@@ -82,7 +82,7 @@
v-model="queryParams.sendName"
:placeholder="$t('寄件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -90,7 +90,7 @@
v-model="queryParams.sendMobile"
:placeholder="$t('寄件人电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -98,18 +98,18 @@
v-model="queryParams.sendCompany"
:placeholder="$t('寄件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -117,7 +117,7 @@
v-model="queryParams.feeRemark"
:placeholder="$t('费用备注')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -131,7 +131,7 @@
v-model="queryParams.receiveName"
:placeholder="$t('收件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -139,7 +139,7 @@
v-model="queryParams.receiveMobile"
:placeholder="$t('收件电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -149,12 +149,12 @@
v-model="queryParams.receiveCompany"
:placeholder="$t('收件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -281,7 +281,7 @@
v-model="queryParams.problemCause"
:placeholder="$t('问题件原因')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-->
diff --git a/src/views/emis/emisWaybill/sendWaybillList.vue b/src/views/emis/emisWaybill/sendWaybillList.vue
index c27b1370..0c000bd8 100644
--- a/src/views/emis/emisWaybill/sendWaybillList.vue
+++ b/src/views/emis/emisWaybill/sendWaybillList.vue
@@ -21,7 +21,7 @@
clearable
:rows="4"
/>
-
+
@@ -43,7 +43,7 @@
-
+
@@ -67,10 +67,10 @@
-
+
-
+
@@ -82,7 +82,7 @@
v-model="queryParams.sendName"
:placeholder="$t('寄件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -90,7 +90,7 @@
v-model="queryParams.sendMobile"
:placeholder="$t('寄件人电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -98,18 +98,18 @@
v-model="queryParams.sendCompany"
:placeholder="$t('寄件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -117,7 +117,7 @@
v-model="queryParams.feeRemark"
:placeholder="$t('费用备注')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -129,7 +129,7 @@
v-model="queryParams.receiveName"
:placeholder="$t('收件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -137,7 +137,7 @@
v-model="queryParams.receiveMobile"
:placeholder="$t('收件电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -147,12 +147,12 @@
v-model="queryParams.receiveCompany"
:placeholder="$t('收件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -262,7 +262,7 @@
-
-
+
-
+
@@ -572,6 +572,8 @@ import WaybillDetailReadOnly from '@/views/emis/emisWaybill/waybillDetailReadOnl
import TraceWaybillDetailView from '@/views/emis/customerService/traceWaybillDetailView.vue';
+import XdTable2 from '@/components/XdTable/index2.vue';
+
import { queryLastRecord } from "@/api/emis/emisTmsScanRecord";
import {timeDiffTime,timeFormat} from '@/utils/dateUtils'
@@ -583,6 +585,7 @@ export default {
// name: "DispatchWaybillList",
components: {
+ XdTable2,
VirtualScroll,
VirtualColumn,
TraceWaybillDetailView,
@@ -889,7 +892,7 @@ export default {
}
}else{
- if(this.$store.getters.ownerSiteCode!='88888'&&(this.queryParams.salesmen==null||this.queryParams.salesmen=='') ){
+ if(this.$store.getters.ownerSiteCode!='88888'&&(this.queryParams.salesmen==null||this.queryParams.salesmen=='')&&(this.queryParams.custNo==null||this.queryParams.salesmen=='') ){
this.queryParams.sendSiteCode=this.$store.getters.ownerSiteCode;
}
diff --git a/src/views/emis/emisWaybill/sendWaybillListNew.vue b/src/views/emis/emisWaybill/sendWaybillListNew.vue
index 8b26f13a..1898d2e1 100644
--- a/src/views/emis/emisWaybill/sendWaybillListNew.vue
+++ b/src/views/emis/emisWaybill/sendWaybillListNew.vue
@@ -22,7 +22,7 @@
clearable
:rows="4"
/>
-
+
@@ -43,7 +43,7 @@
-
+
@@ -53,7 +53,7 @@
-
+
@@ -69,10 +69,10 @@
-
+
-
+
@@ -84,7 +84,7 @@
v-model="queryParams.sendName"
:placeholder="$t('寄件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -92,7 +92,7 @@
v-model="queryParams.sendMobile"
:placeholder="$t('寄件人电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -100,18 +100,18 @@
v-model="queryParams.sendCompany"
:placeholder="$t('寄件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -119,7 +119,7 @@
v-model="queryParams.feeRemark"
:placeholder="$t('费用备注')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -133,7 +133,7 @@
v-model="queryParams.receiveName"
:placeholder="$t('收件人')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -141,7 +141,7 @@
v-model="queryParams.receiveMobile"
:placeholder="$t('收件电话')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
@@ -151,12 +151,12 @@
v-model="queryParams.receiveCompany"
:placeholder="$t('收件公司')"
clearable
- @keyup.enter.native="handleQuery"
+
/>
-
+
@@ -878,6 +878,9 @@ export default {
this.openView=true;
},
+ onCustNoChange(){
+ this.queryParams.sendSiteCode=null;
+ },
initQueryParams(){
this.queryParams=this.addDateRange(this.queryParams, this.dateRange,"sendDate");
@@ -890,7 +893,7 @@ export default {
}
}else{
- if(this.$store.getters.ownerSiteCode!='88888'&&(this.queryParams.salesmen==null||this.queryParams.salesmen=='') ){
+ if(this.$store.getters.ownerSiteCode!='88888'&&(this.queryParams.salesmen==null||this.queryParams.salesmen=='')&&(this.queryParams.custNo==null||this.queryParams.custNo=='') ){
this.queryParams.sendSiteCode=this.$store.getters.ownerSiteCode;
}