This commit is contained in:
linfso 2024-07-07 21:31:15 +08:00
parent af961cd1ad
commit 3ca90c7603
17 changed files with 221 additions and 112 deletions

View File

@ -9,6 +9,14 @@ export function listEmisWaybill(query) {
})
}
export function getQueryStatInfoMap(query) {
return request({
url: '/emis/emisWaybill/getQueryStatInfoMap',
method: 'get',
params: query
})
}
export function listSimpleEmisWaybill(query) {
return request({
url: '/emis/emisWaybill/listSimple',

View File

@ -54,6 +54,18 @@
<div class="content unicode" style="display: block;">
<ul class="icon_lists dib-box">
<li class="dib">
<span class="icon iconfont">&#xe657;</span>
<div class="name">固定左侧</div>
<div class="code-name">&amp;#xe657;</div>
</li>
<li class="dib">
<span class="icon iconfont">&#xe658;</span>
<div class="name">固定右侧</div>
<div class="code-name">&amp;#xe658;</div>
</li>
<li class="dib">
<span class="icon iconfont">&#xe819;</span>
<div class="name">签收</div>
@ -168,12 +180,6 @@
<div class="code-name">&amp;#xe64c;</div>
</li>
<li class="dib">
<span class="icon iconfont">&#xe84c;</span>
<div class="name">固定左侧</div>
<div class="code-name">&amp;#xe84c;</div>
</li>
<li class="dib">
<span class="icon iconfont">&#xe647;</span>
<div class="name">缩放</div>
@ -2304,9 +2310,9 @@
<pre><code class="language-css"
>@font-face {
font-family: 'iconfont';
src: url('iconfont.woff2?t=1717919125801') format('woff2'),
url('iconfont.woff?t=1717919125801') format('woff'),
url('iconfont.ttf?t=1717919125801') format('truetype');
src: url('iconfont.woff2?t=1720352729656') format('woff2'),
url('iconfont.woff?t=1720352729656') format('woff'),
url('iconfont.ttf?t=1720352729656') format('truetype');
}
</code></pre>
<h3 id="-iconfont-">第二步:定义使用 iconfont 的样式</h3>
@ -2332,6 +2338,24 @@
<div class="content font-class">
<ul class="icon_lists dib-box">
<li class="dib">
<span class="icon iconfont icon-fixed-left"></span>
<div class="name">
固定左侧
</div>
<div class="code-name">.icon-fixed-left
</div>
</li>
<li class="dib">
<span class="icon iconfont icon-fixed-right"></span>
<div class="name">
固定右侧
</div>
<div class="code-name">.icon-fixed-right
</div>
</li>
<li class="dib">
<span class="icon iconfont icon-shouhuo"></span>
<div class="name">
@ -2503,15 +2527,6 @@
</div>
</li>
<li class="dib">
<span class="icon iconfont icon-gudingzuoce"></span>
<div class="name">
固定左侧
</div>
<div class="code-name">.icon-gudingzuoce
</div>
</li>
<li class="dib">
<span class="icon iconfont icon-suofang"></span>
<div class="name">
@ -5707,6 +5722,22 @@
<div class="content symbol">
<ul class="icon_lists dib-box">
<li class="dib">
<svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-fixed-left"></use>
</svg>
<div class="name">固定左侧</div>
<div class="code-name">#icon-fixed-left</div>
</li>
<li class="dib">
<svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-fixed-right"></use>
</svg>
<div class="name">固定右侧</div>
<div class="code-name">#icon-fixed-right</div>
</li>
<li class="dib">
<svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-shouhuo"></use>
@ -5859,14 +5890,6 @@
<div class="code-name">#icon-juzhongduiqi</div>
</li>
<li class="dib">
<svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-gudingzuoce"></use>
</svg>
<div class="name">固定左侧</div>
<div class="code-name">#icon-gudingzuoce</div>
</li>
<li class="dib">
<svg class="icon svg-icon" aria-hidden="true">
<use xlink:href="#icon-suofang"></use>

View File

@ -1,8 +1,8 @@
@font-face {
font-family: "iconfont"; /* Project id 1592989 */
src: url('iconfont.woff2?t=1717919125801') format('woff2'),
url('iconfont.woff?t=1717919125801') format('woff'),
url('iconfont.ttf?t=1717919125801') format('truetype');
src: url('iconfont.woff2?t=1720352729656') format('woff2'),
url('iconfont.woff?t=1720352729656') format('woff'),
url('iconfont.ttf?t=1720352729656') format('truetype');
}
.iconfont {
@ -13,6 +13,14 @@
-moz-osx-font-smoothing: grayscale;
}
.icon-fixed-left:before {
content: "\e657";
}
.icon-fixed-right:before {
content: "\e658";
}
.icon-shouhuo:before {
content: "\e819";
}
@ -89,10 +97,6 @@
content: "\e64c";
}
.icon-gudingzuoce:before {
content: "\e84c";
}
.icon-suofang:before {
content: "\e647";
}

File diff suppressed because one or more lines are too long

View File

@ -5,6 +5,20 @@
"css_prefix_text": "icon-",
"description": "",
"glyphs": [
{
"icon_id": "39873520",
"name": "固定左侧",
"font_class": "fixed-left",
"unicode": "e657",
"unicode_decimal": 58967
},
{
"icon_id": "39874009",
"name": "固定右侧",
"font_class": "fixed-right",
"unicode": "e658",
"unicode_decimal": 58968
},
{
"icon_id": "2146564",
"name": "签收",
@ -138,13 +152,6 @@
"unicode": "e64c",
"unicode_decimal": 58956
},
{
"icon_id": "8328144",
"name": "固定左侧",
"font_class": "gudingzuoce",
"unicode": "e84c",
"unicode_decimal": 59468
},
{
"icon_id": "553250",
"name": "缩放",

View File

@ -45,7 +45,7 @@
filterable
allow-create
default-first-option
placeholder="选择模版"
placeholder="模版名称"
@blur="onTplSelectInputBlur($event)"
:style="{width: '100%'}"
@change="changeTbShowTpl"
@ -83,17 +83,17 @@
<i class="el-icon-s-operation icon iconfont icon-ui_drag_horizontally" />
<el-checkbox v-model="col.show" class="label" @change="showOrHidden($event,col)">{{ col.label }}</el-checkbox>
<!-- <el-button
class="btn"
size="mini"
:type="clo.fixed === 'left' ? 'primary' : 'default'"
@click="setFixed('left',clo)"
>K</el-button> -->
<!-- <el-button
class="btn"
class="btn icon iconfont icon-fixed-left"
:type="col.fixed === 'left' ? 'primary' : 'default'"
@click="setFixed('left',col)"
></el-button>
<el-button
class="btn icon iconfont icon-fixed-right"
size="mini"
:type="clo.fixed === 'right' ? 'primary' : 'default'"
@click="setFixed('right',clo)"
>固定在右侧</el-button> -->
:type="col.fixed === 'right' ? 'primary' : 'default'"
@click="setFixed('right',col)"
></el-button> -->
</div>
</draggable>
</el-scrollbar>
@ -102,9 +102,6 @@
<el-button style="margin-left: 10px;" slot="reference" size="mini" circle icon="el-icon-menu" />
</el-popover>
</el-tooltip>
<!-- <el-tooltip style="margin-left: 10px;" class="item" effect="dark" content="导出" placement="top" v-if="download!=null">
<el-button size="mini" circle icon="el-icon-download" @click="download()" />
</el-tooltip> -->
</el-row>
</div>
</div>
@ -112,15 +109,27 @@
</div>
<div>
<orig-table ref="table" :key="refreshKeyId" :config="config" v-dragSelect v-dragColumn class="xd-tb-wrapper" />
<pagination
<!-- 统计数据 -->
<div style="display: inline-flex; width: 100%;">
<div style="width:50%">
<div class="pagination-container"><slot name="statInfo" /></div>
</div>
<div style="width:50%">
<pagination
v-show="total>0 && showPagination"
:total="total"
:pagerCount="3"
:page-sizes="[10,20,50,100,300,500,1000,2000,5000]"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
:page-size="queryParams.pageSize"
@pagination="queryTable"
/>
</div>
</div>
</div>
<!-- 数据框选复制 -->
@ -287,43 +296,16 @@ export default {
// 表格对象
const tableDom=vnode.context.$refs.table.$refs.elTable.$el;
// let tbPosRect1=getTablePosition(tableDom);
// console.log("tbPosRect1",tbPosRect1);
//用来存储列表
var selList = [];
//获得指令下的dom对应的表格
// var fileNodes = oDiv.getElementsByTagName("tr");
var fileNodes = oDiv.getElementsByTagName("td");
var countI = 0;
// 获得鼠标 X,Y
var startX = (evt.x || evt.clientX);
var startY = (evt.y || evt.clientY);
// var top,left;
// //获得表格X,Y
// top=getY(oDiv);
// left=getX(oDiv);
// 获得单元格坐标
// let startCellPos=getCellXY(evt.target)
// 设置单元格为选中
// setMouseCellSelect(evt.target);
// console.log("table pos:",left,top)
// console.log("cellPos pos:",startCellPos)
// console.log("mouse start pos:",startX,startY)
// 记录选择操作起始位置
// vnode.context.selectionStart = getCellPosition(evt.target);
// vnode.context.isSelecting = true;
// selDiv.style.left = (startX+tbBody1.scrollLeft - tbPosRect1.left) + "px";
// selDiv.style.top = (startY+tbBody1.scrollTop - tbPosRect1.top) + "px";
// 当前单元格选中
var _x = null;
var _y = null;
@ -353,10 +335,6 @@ export default {
flag = false;
}
// console.log("===>selList==>",selList);
if (vnode.context.mouseflag) {
if (selDiv.style.display == "none") {
selDiv.style.display = "";
@ -413,24 +391,18 @@ export default {
};
function showContextMenu(event){
// const tableDom=vnode.context.$refs.table.$refs.elTable.$el;
// document.oncontextmenu = new Function("event.returnValue=false");
var xdTableObj = document.getElementById(vnode.context.tableId);
// tableDom
xdTableObj.addEventListener("contextmenu", function(event) {
var menu = document.querySelector("#contextMenu");
let tbPosRect=getTablePosition(xdTableObj);
menu.style.left = (event.clientX-tbPosRect.left+10) + "px";
menu.style.top = (event.clientY-tbPosRect.top) + "px";
menu.style.left = (event.clientX-tbPosRect.left+5) + "px";
menu.style.top = (event.clientY-tbPosRect.top-35) + "px";
menu.style.display = "block";
menu.style.zIndex = 3000;
vnode.context.contextVisible=true;
event.preventDefault();
});
// tableDom.oncontextmenu = new Function("event.returnValue=false");
// event.preventDefault();
}
@ -705,9 +677,8 @@ export default {
// 获取默认模版
const selTplItem=this.storeTplList.find(item=>item.blDefault == '1' );
if(selTplItem){
// console.log("selTplItem==>",selTplItem);
// this.form.tplCode=selTplItem.tplCode;
// this.changeTbShowTpl(selTplItem.tplCode);
this.form=selTplItem;
this.curentTbShowTpl=selTplItem.tplCode;
}
}
@ -721,7 +692,6 @@ export default {
// 判断模版是否存在,若存在则覆盖
const tmpTplItem=this.storeTplList.find(item=>item.tplName == this.form.tplName );
// console.log("tmpTplItem==>",tmpTplItem);
if(tmpTplItem){
this.form=tmpTplItem;
}

View File

@ -341,6 +341,16 @@
</el-row>
</div>
<div slot="statInfo" style="font-size: 13px;">
总票数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalNum:0}}</span>,
总件数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalParcelQty:0}}</span>,
实际重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalBillWeight:0}}</span>,
体积:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolume:0}}</span>,
体积重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolumeWeight:0}}</span>,
结算重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalSettlementWeight:0}}</span>,
总运费:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalFreight:0}}</span>
</div>
<el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="120" :show-overflow-tooltip="true" />
@ -581,7 +591,7 @@
</template>
<script>
import { listEmisWaybill, getEmisWaybill, delEmisWaybill, addEmisWaybill, updateEmisWaybill } from "@/api/emis/emisWaybill";
import { listEmisWaybill,getQueryStatInfoMap } from "@/api/emis/emisWaybill";
import elDateSimplePicker from '@/components/DatePickerAdv/elDateSimplePicker';
// import emisWaybillView from '@/views/emis/emisWaybill/emisWaybillView';
import emisWaybillForm from '@/views/emis/emisWaybill/emisWaybillForm';
@ -677,6 +687,9 @@ export default {
queryOrderDateType:null,
queryExpireNotSign:null,
queryStatInfoMap:null,
// 弹出展示层
id:null,
titleView:"",
@ -939,6 +952,11 @@ export default {
this.total = response.total;
this.loading = false;
});
// 查询统计
getQueryStatInfoMap(this.queryParams).then(response => {
this.queryStatInfoMap = response.data;
});
},
onDateSelect(value){
@ -1150,4 +1168,10 @@ export default {
color: #f51f1f !important;
}
.statInfoValue{
color: red;
font-size: 13px;
font-weight: 500;
}
</style>

View File

@ -337,6 +337,16 @@
</el-row>
</div>
<div slot="statInfo" style="font-size: 13px;">
总票数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalNum:0}}</span>,
总件数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalParcelQty:0}}</span>,
实际重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalBillWeight:0}}</span>,
体积:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolume:0}}</span>,
体积重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolumeWeight:0}}</span>,
结算重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalSettlementWeight:0}}</span>,
总运费:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalFreight:0}}</span>
</div>
<el-table-column type="selection" width="55" align="center" />
<!-- <el-table-column :label="$t('快件当前最新状态')" align="center" prop="lastTraceInfo" min-width="350" :show-overflow-tooltip="true" /> -->
@ -581,7 +591,7 @@
</template>
<script>
import { listEmisWaybill, getEmisWaybill, delEmisWaybill, addEmisWaybill, updateEmisWaybill } from "@/api/emis/emisWaybill";
import { listEmisWaybill,getQueryStatInfoMap } from "@/api/emis/emisWaybill";
import emisWaybillForm from '@/views/emis/emisWaybill/emisWaybillForm';
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker';
@ -677,6 +687,9 @@ export default {
queryOrderDateType:null,
queryExpireNotSign:null,
queryStatInfoMap:null,
// 弹出展示层
id:null,
titleView:"",
@ -925,6 +938,11 @@ export default {
this.total = response.total;
this.loading = false;
});
// 查询统计
getQueryStatInfoMap(this.queryParams).then(response => {
this.queryStatInfoMap = response.data;
});
},
onDateSelect(value){
@ -1142,4 +1160,9 @@ export default {
text-align: left;
}
.statInfoValue{
color: red;
font-size: 13px;
font-weight: 500;
}
</style>

View File

@ -330,6 +330,16 @@
</el-row>
</div>
<div slot="statInfo" style="font-size: 13px;">
总票数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalNum:0}}</span>,
总件数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalParcelQty:0}}</span>,
实际重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalBillWeight:0}}</span>,
体积:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolume:0}}</span>,
体积重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolumeWeight:0}}</span>,
结算重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalSettlementWeight:0}}</span>,
总运费:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalFreight:0}}</span>
</div>
<el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="120" :show-overflow-tooltip="true" >
<template slot-scope="scope">
@ -554,7 +564,7 @@
<script>
import 'element-ui/lib/theme-chalk/display.css';
import { listEmisWaybill, getEmisWaybill, delEmisWaybill, addEmisWaybill, updateEmisWaybill } from "@/api/emis/emisWaybill";
import { listEmisWaybill,getQueryStatInfoMap } from "@/api/emis/emisWaybill";
import elDateSimplePicker from '@/components/DatePickerAdv/elDateSimplePicker';
// import emisWaybillView from '@/views/emis/emisWaybill/emisWaybillView';
import emisWaybillForm from '@/views/emis/emisWaybill/emisWaybillForm';
@ -658,6 +668,8 @@ export default {
queryOrderDateType:null,
queryExpireNotSign:null,
queryStatInfoMap:null,
// 弹出展示层
id:null,
titleView:"",
@ -906,6 +918,12 @@ export default {
this.total = response.total;
this.loading = false;
});
// 查询统计
getQueryStatInfoMap(this.queryParams).then(response => {
this.queryStatInfoMap = response.data;
});
},
onDateSelect(value){
@ -945,16 +963,6 @@ export default {
cancelForm(){
this.openForm = false;
},
/** 删除按钮操作 */
handleDelete(row) {
const ids = row.id || this.ids;
this.$modal.confirm('是否确认删除').then(function() {
return delEmisWaybill(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("删除成功");
}).catch(() => {});
},
/** 导出按钮操作 */
handleExport() {
@ -1118,4 +1126,10 @@ export default {
:deep .el-form-item__label {
text-align: left;
}
.statInfoValue{
color: red;
font-size: 13px;
font-weight: 500;
}
</style>

View File

@ -331,6 +331,16 @@
</el-row>
</div>
<div slot="statInfo" style="font-size: 13px;">
总票数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalNum:0}}</span>,
总件数:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalParcelQty:0}}</span>,
实际重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalBillWeight:0}}</span>,
体积:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolume:0}}</span>,
体积重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalVolumeWeight:0}}</span>,
结算重量:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalSettlementWeight:0}}</span>,
总运费:<span class="statInfoValue">{{queryStatInfoMap?queryStatInfoMap.totalFreight:0}}</span>
</div>
<el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="120" :show-overflow-tooltip="true" >
<template slot-scope="scope">
@ -585,7 +595,7 @@
<script>
// import 'element-ui/lib/theme-chalk/display.css';
import { listEmisWaybill, getEmisWaybill, delEmisWaybill, addEmisWaybill, updateEmisWaybill } from "@/api/emis/emisWaybill";
import { listEmisWaybill,getQueryStatInfoMap } from "@/api/emis/emisWaybill";
import elDate7DayPicker from '@/components/DatePickerAdv/elDate7DayPicker';
// import emisWaybillView from '@/views/emis/emisWaybill/emisWaybillView';
@ -697,6 +707,9 @@ export default {
queryOrderDateType:null,
queryExpireNotSign:null,
queryStatInfoMap:null,
// 弹出展示层
id:null,
titleView:"",
@ -951,6 +964,11 @@ export default {
this.total = response.total;
this.loading = false;
});
// 查询统计
getQueryStatInfoMap(this.queryParams).then(response => {
this.queryStatInfoMap = response.data;
});
},
onDateSelect(value){
@ -1162,4 +1180,10 @@ export default {
:deep .el-form-item__label {
text-align: left;
}
.statInfoValue{
color: red;
font-size: 13px;
font-weight: 500;
}
</style>

View File

@ -41,6 +41,9 @@
<XdTable v-loading="loading"
border stripe
size="mini"
storageName="emisWaybillAjustApplyList_main"
:data="emisWaybillAjustApplyList"
:showSearch.sync="showSearch"
:queryParams="queryParams"

View File

@ -48,6 +48,9 @@
<XdTable v-loading="loading"
border stripe
size="mini"
storageName="WaybillAjustCenterConfirm_main"
:data="emisWaybillAjustApplyList"
:showSearch.sync="showSearch"
:queryParams="queryParams"

View File

@ -40,6 +40,9 @@
<XdTable v-loading="loading"
border stripe
size="mini"
storageName="WaybillAjustDestConfirm_main"
:data="emisWaybillAjustApplyList"
:showSearch.sync="showSearch"
:queryParams="queryParams"

View File

@ -46,6 +46,9 @@
<XdTable v-loading="loading"
border stripe
size="small"
storageName="WaybillAjustStatList_main"
:data="emisWaybillAjustApplyList"
:showSearch.sync="showSearch"
:queryParams="queryParams"