This commit is contained in:
linfso 2024-07-02 10:25:06 +08:00
parent 09deb12707
commit 9fb33bd017
13 changed files with 738 additions and 575 deletions

View File

@ -51,7 +51,7 @@ export function auditPass(id) {
}) })
} }
// 审核通过 // 审核不通过
export function auditNoPass(id,auditDesc) { export function auditNoPass(id,auditDesc) {
return request({ return request({
url: '/emis/emisSitePrepaidRecharge/auditNoPass/' + id, url: '/emis/emisSitePrepaidRecharge/auditNoPass/' + id,

View File

@ -17,6 +17,15 @@ export function listSimpleEmisWaybill(query) {
}) })
} }
export function queryPrintListSimple(query) {
return request({
url: '/emis/emisWaybill/queryPrintListSimple',
method: 'get',
params: query
})
}
export function selectEmisWaybillByMutiBillCode(query) { export function selectEmisWaybillByMutiBillCode(query) {
return request({ return request({
url: '/emis/emisWaybill/selectEmisWaybillByMutiBillCode', url: '/emis/emisWaybill/selectEmisWaybillByMutiBillCode',

View File

@ -42,3 +42,42 @@ export function delEmisWaybillAjustApply(id) {
method: 'delete' method: 'delete'
}) })
} }
// 目的网点审核通过
export function auditDestPass(id) {
return request({
url: '/emis/emisWaybillAjustApply/auditDestPass/' + id,
method: 'post'
})
}
// 目的网点审核不通过
export function auditDestNoPass(id,note) {
return request({
url: '/emis/emisWaybillAjustApply/auditDestNoPass/' + id,
method: 'post',
data: {destConfirmNote: note}
})
}
// 中心审核通过
export function auditCenterPass(id) {
return request({
url: '/emis/emisWaybillAjustApply/auditCenterPass/' + id,
method: 'post'
})
}
// 中心审核不通过
export function auditCenterNoPass(id,note) {
return request({
url: '/emis/emisWaybillAjustApply/auditCenterNoPass/' + id,
method: 'post',
data: {centerConfirmNote: note}
})
}

View File

@ -65,10 +65,11 @@
</div> --> </div> -->
<div style="text-align: right;width: 45%;line-height: 30px;display:inline-flex"> <div style="text-align: right;width: 45%;line-height: 30px;display:inline-flex">
<el-button type="text" size="mini" style="padding: 7px 5px;" @click="savaTbShowTpl" :disabled="!isNeedDbSaveTpl">保存</el-button> <el-button type="text" size="mini" style="padding: 7px 5px;" @click="savaTbShowTpl" :disabled="!isNeedDbSaveTpl">保存</el-button>
<el-button type="text" size="mini" style="padding: 7px 5px;" icon="el-icon-refresh" @click="delStorage" :disabled="!isNeedDbSaveTpl"></el-button> <el-button type="text" size="mini" style="padding: 7px 5px;" icon="el-icon-refresh" @click="delStorage" ></el-button>
<el-button type="text" size="mini" style="padding: 7px 5px;" icon="el-icon-setting" @click="setTbShowTpl" :disabled="!isNeedDbSaveTpl"></el-button> <el-button type="text" size="mini" style="padding: 7px 5px;" icon="el-icon-setting" @click="setTbShowTpl" :disabled="!isNeedDbSaveTpl"></el-button>
</div> </div>
</div> </div>
<div style="">
<el-scrollbar style="height: calc(100vh - 200px);box-sizing: border-box;" > <el-scrollbar style="height: calc(100vh - 200px);box-sizing: border-box;" >
<draggable v-model="storageList" <draggable v-model="storageList"
ghostClass="drag-ghost" ghostClass="drag-ghost"
@ -97,6 +98,7 @@
</draggable> </draggable>
</el-scrollbar> </el-scrollbar>
</div> </div>
</div>
<el-button style="margin-left: 10px;" slot="reference" size="mini" circle icon="el-icon-menu" /> <el-button style="margin-left: 10px;" slot="reference" size="mini" circle icon="el-icon-menu" />
</el-popover> </el-popover>
</el-tooltip> </el-tooltip>
@ -262,22 +264,17 @@ export default {
// console.log("currentCellInfo",currentCellInfo); // console.log("currentCellInfo",currentCellInfo);
return; return;
} }
// 只有鼠标左键按下时有效 // 只有鼠标左键按下时有效
if(evt.button != 0){ if(evt.button != 0){
return; return;
} }
vnode.context.multipleSelection=[]; vnode.context.multipleSelection=[];
//初始化不显示 //初始化不显示
vnode.context.contextVisible=false; vnode.context.contextVisible=false;
//确保用户在移动鼠标的时候只初始化一次选中
// 增加图层 // 增加图层
var xdTableObj = document.getElementById(vnode.context.tableId); var xdTableObj = document.getElementById(vnode.context.tableId);
// console.log("tableId===>",vnode.context.tableId);
// console.log("xdTableObj===>",xdTableObj);
var tbBody1=xdTableObj.getElementsByClassName("el-table__body-wrapper")[0]; var tbBody1=xdTableObj.getElementsByClassName("el-table__body-wrapper")[0];
var selDiv = document.createElement("div"); var selDiv = document.createElement("div");
@ -306,7 +303,10 @@ export default {
// left=getX(oDiv); // left=getX(oDiv);
// 获得单元格坐标 // 获得单元格坐标
let startCellPos=getCellXY(evt.target) // let startCellPos=getCellXY(evt.target)
// 设置单元格为选中
setMouseCellSelect(evt.target);
// console.log("table pos:",left,top) // console.log("table pos:",left,top)
// console.log("cellPos pos:",startCellPos) // console.log("cellPos pos:",startCellPos)
@ -319,6 +319,10 @@ export default {
// selDiv.style.left = (startX+tbBody1.scrollLeft - tbPosRect1.left) + "px"; // selDiv.style.left = (startX+tbBody1.scrollLeft - tbPosRect1.left) + "px";
// selDiv.style.top = (startY+tbBody1.scrollTop - tbPosRect1.top) + "px"; // selDiv.style.top = (startY+tbBody1.scrollTop - tbPosRect1.top) + "px";
// 当前单元格选中
var _x = null; var _x = null;
var _y = null; var _y = null;
vnode.context.clearEventBubble(evt); vnode.context.clearEventBubble(evt);
@ -330,9 +334,9 @@ export default {
_x = (evt.x || evt.clientX); _x = (evt.x || evt.clientX);
_y = (evt.y || evt.clientY); _y = (evt.y || evt.clientY);
//为了确定是点击事件还是移动事件 //为了确定是点击事件还是移动事件
// if(Math.abs(_x - startX)<5 && Math.abs(_y - startY)<5){ if(Math.abs(_x - startX)<5 && Math.abs(_y - startY)<5){
// return; return;
// } }
//为了确保只有一次的渲染每次框选都把默认选中为空 //为了确保只有一次的渲染每次框选都把默认选中为空
if(flag){ if(flag){
//重置选中css //重置选中css
@ -369,15 +373,11 @@ export default {
selDiv.style.width = Math.abs(_x - startX) + "px"; selDiv.style.width = Math.abs(_x - startX) + "px";
selDiv.style.height = Math.abs(_y - startY) + "px"; selDiv.style.height = Math.abs(_y - startY) + "px";
var _l = selDiv.offsetLeft, _t = selDiv.offsetTop; var _l = selDiv.offsetLeft, _t = selDiv.offsetTop;
var _w = selDiv.offsetWidth, _h = selDiv.offsetHeight; var _w = selDiv.offsetWidth, _h = selDiv.offsetHeight;
// console.log("===>selDiv==>",selDiv.style.left,selDiv.style.top,selDiv.style.width,selDiv.style.height);
for (var i = 0; i < selList.length; i++) { for (var i = 0; i < selList.length; i++) {
var sl = selList[i].offsetWidth + selList[i].offsetLeft; var sl = selList[i].offsetWidth + selList[i].offsetLeft;
var st = selList[i].offsetHeight + selList[i].offsetTop; var st = selList[i].offsetHeight + selList[i].offsetTop;
@ -454,6 +454,22 @@ export default {
} }
} }
function setMouseCellSelect(cell) {
try{
while(cell.tagName !== 'TD'){
cell = cell.parentElement;
}
cell.className = cell.className + " seled";
const cellInfo=getCellPosition(cell);
vnode.context.multipleSelection=[];
vnode.context.multipleSelection.push(cellInfo);
}catch(e){
}
}
// 获取鼠标位置的单元格 // 获取鼠标位置的单元格
function getCellPosition(cell) { function getCellPosition(cell) {
try{ try{
@ -462,6 +478,8 @@ export default {
cell = cell.parentElement; cell = cell.parentElement;
} }
const rowIndex = cell.parentElement.rowIndex; const rowIndex = cell.parentElement.rowIndex;
const cellIndex = cell.cellIndex; const cellIndex = cell.cellIndex;
const text = cell.innerText; const text = cell.innerText;
@ -588,6 +606,8 @@ export default {
this.fullUrl=window.location.origin + window.location.pathname + window.location.search + window.location.hash; this.fullUrl=window.location.origin + window.location.pathname + window.location.search + window.location.hash;
this.pageId=this.MD5(this.fullUrl); this.pageId=this.MD5(this.fullUrl);
this.saveStorageName=this.pageId; this.saveStorageName=this.pageId;
// console.log("===> this.fullUrl==>", this.fullUrl,this.saveStorageName)
this.isNeedDbSaveTpl=true;
} }
this.getTbShowlList(); this.getTbShowlList();
this.initStorage() this.initStorage()
@ -825,8 +845,8 @@ export default {
// console.log(rows) // console.log(rows)
}, },
handleCopySelect(data,event) { handleCopySelect(data,event) {
this.contextVisible=false;
handleClipboard(this.currentSelectStr, event) handleClipboard(this.currentSelectStr, event)
this.contextVisible=false;
}, },
handleCopyRow(){ handleCopyRow(){
@ -876,13 +896,13 @@ export default {
}, },
delStorage() { delStorage() {
this.$confirm('恢复当前表格设置将清除当前表格设置并刷新页面是否继续?', '提示', { this.$confirm('是否恢复默认设置?', '提示', {
confirmButtonText: '确定', confirmButtonText: '确定',
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning' type: 'warning'
}).then(() => { }).then(() => {
const storage = window.localStorage.getItem('tableStorage') ? JSON.parse(window.localStorage.getItem('tableStorage')) : {} const storage = window.localStorage.getItem('tableStorage') ? JSON.parse(window.localStorage.getItem('tableStorage')) : {}
storage[this.storageName] = [] storage[this.saveStorageName] = []
window.localStorage.setItem('tableStorage', JSON.stringify(storage)) window.localStorage.setItem('tableStorage', JSON.stringify(storage))
location.reload() location.reload()
}) })
@ -1006,8 +1026,8 @@ export default {
.table-cloumn-setting-popper{ .table-cloumn-setting-popper{
.setting-row-content{ .setting-row-content{
max-height: 600px; max-height: 600px;
// overflow-y: auto; overflow-y: auto;
overflow-y: hidden; //overflow-y: hidden;
.setting-row{ .setting-row{
height: 30px; height: 30px;
line-height: 30px; line-height: 30px;

View File

@ -84,7 +84,9 @@ export default {
// 获取当前登陆人信息 // 获取当前登陆人信息
let dateStr = this.parseTime(new Date()); let dateStr = this.parseTime(new Date());
const username = this.$store.state.user.name; const username = this.$store.state.user.name;
options.w_texts = [username, "注意安全,敏感信息不可外传", dateStr]; // options.w_texts = [username, "注意安全,敏感信息不可外传", dateStr];
options.w_texts = [username];
// 设置水印 // 设置水印
watermark.load({ watermark.load({

View File

@ -90,7 +90,7 @@
}, },
onChange() { onChange() {
this.$emit("input", this.svalue); this.$emit("input", this.svalue);
let itemData = this.optionItems.find(item => item.siteCode == this.svalue); let itemData = this.optionItems.find(item => item.typeCode == this.svalue);
this.$emit("onChange",itemData); this.$emit("onChange",itemData);
}, },
onClear(){ onClear(){

View File

@ -87,16 +87,7 @@
<el-col :span="1.5"> <el-col :span="1.5">
<TanexPrinterPanel ref="tanexPrinter" :isShowPinters="true" :isShowTpl="true" :isShowSubBillRange="true" @onPrint="handleBatchPrint"></TanexPrinterPanel> <TanexPrinterPanel ref="tanexPrinter" :isShowPinters="true" :isShowTpl="true" :isShowSubBillRange="true" @onPrint="handleBatchPrint"></TanexPrinterPanel>
</el-col> </el-col>
<!-- <el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
v-hasPermi="['emis:emisWaybill:export']"
>导出</el-button>
</el-col> -->
</el-row> </el-row>
</div> </div>
@ -192,7 +183,7 @@
</template> </template>
<script> <script>
import { listEmisWaybill, getEmisWaybill, delEmisWaybill, addEmisWaybill, updateEmisWaybill } from "@/api/emis/emisWaybill"; import { listEmisWaybill, getEmisWaybill, delEmisWaybill, addEmisWaybill, updateEmisWaybill,queryPrintListSimple } from "@/api/emis/emisWaybill";
import emisWaybillForm from '@/views/emis/emisWaybill/emisWaybillForm'; import emisWaybillForm from '@/views/emis/emisWaybill/emisWaybillForm';
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker'; import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker';
import CountryPicker0 from '@/views/emis/EmisBaseTools/CountryPicker.vue'; import CountryPicker0 from '@/views/emis/EmisBaseTools/CountryPicker.vue';
@ -247,7 +238,7 @@ export default {
return { return {
tableHeight: 200, tableHeight: 200,
// 遮罩层 // 遮罩层
loading: true, loading: false,
// 选中数组 // 选中数组
ids: [], ids: [],
// 非单个禁用 // 非单个禁用
@ -451,7 +442,7 @@ export default {
}; };
}, },
created() { created() {
this.getList(); // this.getList();
this.queryOrderType="1"; this.queryOrderType="1";
}, },
@ -517,9 +508,10 @@ export default {
} }
} }
this.queryParams=this.addDateRange(this.queryParams, this.dateTimeRange,"sendDate"); // this.queryParams=this.addDateRange(this.queryParams, this.dateTimeRange,"sendDate");
this.queryParams=this.addDateRange(this.queryParams, this.dateTimeRange,"Date");
listEmisWaybill(this.queryParams).then(response => { queryPrintListSimple(this.queryParams).then(response => {
this.emisWaybillList = response.rows; this.emisWaybillList = response.rows;
this.total = response.total; this.total = response.total;
this.loading = false; this.loading = false;
@ -592,53 +584,7 @@ export default {
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {});
}, },
/** 导出按钮操作 */
handleExport() {
// this.download('emis/emisWaybill/export', {
// ...this.queryParams
// }, `emisWaybill_${new Date().getTime()}.xlsx`)
const loadingInstance = this.$loading({
text: '正在导出...'
})
var qParam = {...this.queryParams};
qParam.pageNum=1;
qParam.pageSize=5000;
listEmisWaybill(this.addDateRange(qParam, this.dateTimeRange)).then(response => {
this.downloadLoading = false
if (response.code === 200) {
const curList = response.rows
import('@/vendor/Export2Excel').then(excel => {
const tHeader = ['id','订单号','客户单号,合同号','运单号','子单号,逗号隔开','订单状态','运单状态','订单类型','下单时间','客户ID','客户编号2502021','客户名称','收件客户编号2502021','收件客户客户名称','第三方客户客户编号','第三方客户客户名称','wx','收货人名','收货公司','收货人手机号','收货人电话','收货人国家','省','市','区','县','收货地址','邮编','寄件人省市区名称,逗号分隔','寄件人名','寄件公司','寄件人手机号','寄件人电话','寄件人国家','寄件省','寄件市','寄件区','寄件县','寄件地址','寄件邮编','发件人省市区名称,逗号分隔','支付方式','计费方式','支付月结编号','快递线路','快递产品类型','时效','计泡比例','清关方式','报关方式','预计到达时间','包装类型','派件方式:1-送货上门','取件方式:1-上门取件','预计上门取件开始时间','预计上门取件结束时间','取货失败原因','入仓代码','入仓名称','入仓地址','入仓联系人','入仓联系人电话','入仓单号','实际进仓单关联','客户发货开始时间','客户发货截止时间','货物大类','货物描述','货物图片,逗号隔开','预入仓代垫运费','预入仓代垫运费','预入仓实际运费','预入仓快递公司','预入仓快递单号','预入仓自定义标识','预入仓供应商','总重量','总体积','件数','实际重量','体积重量','费用币种','结算重量','计费重量','运费','是否超长','是否出账','账单备注','是否超重','超重重量','费用备注','三段码','实际货值','是否投保','投保货值','投保货值币种','保费币种','保费','保险备注','保险站点代码','投保日期','是否打印','打印人编号','打印站点','打印时间','打印次数','是否同行转单','转单代码','转单单号','转单时间','转单原因','当前网点编号','下一网点编号','上一网点点号','寄件站点代码','寄件日期','寄件人编号','取件员代码','发件网点代码','发货时间','派件人代码','派件时间','派件网点代码','生成账单时间','生成账单站点代码','生成账单人代码','目的地编号','目的省','目的城市','目的国家','目的地网点代码','目的地财务中心代码','业务人代码','销售回款人','销售联系人','操作员代码','是否问题件','问题件类型','问题件原因','问题件延期天数','是否备注消息','是否发送收件人短信','是否生成子单','签收人','签收人代码','签收站点代码','签收时间','揽收图片备注','签收底单图片','时区偏差','删除标志(0代表存在','创建者','创建时间','更新者','更新时间','备注','创建网点','更新网点',];
const filterVal = ['id','orderSn','custOrderId','billCode','billCodeSub','orderStatus','waybillStatus','orderType','orderDate','userId','customerCode','customerName','receiveCustomerCode','receiveCustomerName','thirdCustomerCode','thirdCustomerName','openId','receiveName','receiveCompany','receiveMobile','receiveTel','receiveCountry','receiveProvince','receiveCity','receiveCounty','receiveTown','receiveAddress','receivePostcode','receivePcd','sendName','sendCompany','sendMobile','sendTel','sendCountry','sendProvince','sendCity','sendCounty','sendTown','sendAddress','sendPostcode','sendPcd','paymentType','calcFeeType','custNo','transLineType','productType','timeType','meterType','customsClear','customsEclaration','estimateDate','packType','dispatchMethod','pickupMethod','pickStartDate','pickFinishDate','pickFailReason','intoWarehouseCode','intoWarehouseName','intoWarehouseAddress','intoWarehouseContact','intoWarehousePhone','intoWarehouseBillCode','warehouseInNo','customerDeliveryBeginTime','customerDeliveryEndTime','goodsType','goodsInfo','goodsPics','blPrepareInFreight','prepareInEstFee','prepareInRealFee','prepareInExpress','prepareInBillCode','prepareInRemark','prepareInSupplier','totalWeight','totalVolume','parcelQty','billWeight','volumeWeight','currency','settlementWeight','feeWeight','freight','blOverLong','blBill','blBillText','blOverWeight','overWeightNumber','feeRemark','thirdCode','realValue','blInsure','insureValue','insureValueCurrency','insureFeeCurrency','insureFee','insureRemark','insureSiteCode','insureDate','blPrint','printManCode','printSite','printDate','printCount','blDispFd','transferCode','transferBillcode','dispFdDate','dispFdReason','currentSiteCode','nextSiteCode','lastSiteCode','registerSiteCode','registerDate','registerManCode','takePieceEmployeeCode','sendSiteCode','sendDate','dispatchManCode','dispatchDate','dispatchSiteCode','produceBillDate','produceBillSiteCode','produceBillManCode','destinationCode','destinationProvince','destinationCity','destinationCounty','dispatchUnderlingSiteCode','destinationCenterCode','marketManCode','payee','salesmen','operateEmployeeCode','blIsQuestion','problemType','problemCause','problemDelayDays','blMessage','blAcceptMessage','blGenSubbill','signMan','signManCode','signSiteCode','signDate','billPicSendRmk','billPicDispatchRmk','timezoneOffset','delFlag','createBy','createTime','updateBy','updateTime','remark','createSite','updateSite',];
const data = this.formatJson(filterVal, curList, response.rows)
excel.export_json_to_excel({
header: tHeader,
data,
filename: '运单列表',
autoWidth: true
})
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='xxx'
if(v[j] == 10){
statusStr='xxx'
}
return statusStr;
}
return v[j]
}))
},
/** 列索引函数 */ /** 列索引函数 */
getIndex($index) { getIndex($index) {
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1 return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1

View File

@ -16,7 +16,7 @@
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;"> <el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="登记时间" prop="dateTimeRange" label-position="top" > <el-form-item label="登记时间" prop="dateTimeRange" label-position="top" >
<elDateAdvPicker v-model="dateTimeRange" ></elDateAdvPicker> <elDateSimplePicker v-model="dateTimeRange" ></elDateSimplePicker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -29,17 +29,16 @@
<el-option label="中心驳回" :value="2"></el-option> <el-option label="中心驳回" :value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="修改项目" prop="applyType"> <!-- <el-form-item label="修改项目" prop="applyType">
<el-select clearable="" v-model="queryParams.applyType" placeholder="请选择"> <el-select clearable="" v-model="queryParams.applyType" placeholder="请选择">
<el-option label="运费" value="001"></el-option> <el-option label="运费" value="001"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-row> </el-row>
</el-col> </el-col>
</el-row> </el-row>
</SearchForm> </SearchForm>
<XdTable v-loading="loading" <XdTable v-loading="loading"
border stripe border stripe
size="mini" size="mini"
@ -91,29 +90,93 @@
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="100" /> <el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="150" />
<el-table-column :label="$t('调整类型')" align="center" prop="applyType" min-width="100" /> <el-table-column :label="$t('登记网点')" align="center" prop="applySiteName" min-width="100" />
<el-table-column :label="$t('申请人编码')" align="center" prop="applyManCode" min-width="100" /> <el-table-column :label="$t('登记说明')" align="center" prop="applyMemo" min-width="200" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('申请站点代码')" align="center" prop="applySiteCode" min-width="100" /> <el-table-column :label="$t('登记时间')" align="center" prop="applyDate" min-width="170" />
<el-table-column :label="$t('申请财务中心编码')" align="center" prop="applyFinanceCenterCode" min-width="100" /> <el-table-column :label="$t('修改项目')" align="center" prop="applyTypeName" min-width="100" />
<el-table-column :label="$t('申请时间')" align="center" prop="applyDate" min-width="100" /> <el-table-column :label="$t('登记人')" align="center" prop="applyManName" min-width="100" />
<el-table-column :label="$t('目的网点是否审核')" align="center" prop="blDestConfirmed" min-width="100" /> <el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="150" >
<el-table-column :label="$t('目的站点代码')" align="center" prop="destConfirmSiteCode" min-width="100" /> <template slot-scope="scope">
<el-table-column :label="$t('目的网点确认时间')" align="center" prop="destConfirmDate" min-width="100" /> <div v-if="scope.row.applyType=='20'" >
<el-table-column :label="$t('目的网点审核备注')" align="center" prop="destConfirmNote" min-width="100" /> <dict-tag :options="dict.type.emis_payment_type" :value="scope.row.oldValue"/>
<el-table-column :label="$t('目的站点确认人代码')" align="center" prop="destConfirmManCode" min-width="100" /> </div>
<el-table-column :label="$t('目的财务中心编码')" align="center" prop="destFinanceCenterCode" min-width="100" /> </template>
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="100" /> </el-table-column>
<el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="100" />
<el-table-column :label="$t('修改值是否json')" align="center" prop="blValueJson" min-width="100" /> <el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="150" >
<el-table-column :label="$t('申请备注')" align="center" prop="applyMemo" min-width="100" /> <template slot-scope="scope">
<el-table-column :label="$t('中心是否审核')" align="center" prop="blCenterConfirmed" min-width="100" /> <div v-if="scope.row.applyType=='20'" >
<el-table-column :label="$t('中心确认编码')" align="center" prop="centerConfirmSiteCode" min-width="100" /> <dict-tag :options="dict.type.emis_payment_type" :value="scope.row.newValue"/>
<el-table-column :label="$t('中心确认人')" align="center" prop="centerConfirmManCode" min-width="100" /> </div>
<el-table-column :label="$t('中心确认时间')" align="center" prop="centerConfirmDate" min-width="100" />
<el-table-column :label="$t('中心审核备注')" align="center" prop="centerConfirmNote" min-width="100" /> </template>
<el-table-column :label="$t('备注')" align="center" prop="remark" min-width="100" /> </el-table-column>
<el-table-column :label="$t('删除标志(0代表存在')" align="center" prop="delFlag" min-width="100" />
<el-table-column :label="$t('结算重量')" align="center" prop="waybillDetail.settlementWeight" min-width="80" />
<el-table-column :label="$t('确认网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blCenterConfirmed==1" >{{ scope.row.destConfirmSiteName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('状态')" align="center" prop="processStatus" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==0" >未确认</div>
<div v-if="scope.row.blDestConfirmed==1" >网点确认</div>
<div v-if="scope.row.blDestConfirmed==2" >网点驳回</div>
<div v-if="scope.row.blCenterConfirmed==1" >中心审核通过</div>
<div v-if="scope.row.blCenterConfirmed==2" >中心驳回</div>
</template>
</el-table-column>
<el-table-column :label="$t('确认时间')" align="center" prop="destConfirmDate" min-width="170" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmDate }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('确认人')" align="center" prop="destConfirmManName" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmSiteName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('网点驳回时间')" align="center" prop="destConfirmDate" min-width="170" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmDate }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回人')" align="center" prop="destConfirmManName" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回原因')" align="center" prop="destConfirmNote" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmNote }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('中心审核时间')" align="center" prop="centerConfirmDate" min-width="170" />
<el-table-column :label="$t('中心审核人')" align="center" prop="centerConfirmManName" min-width="100" />
<el-table-column :label="$t('中心审核网点')" align="center" prop="centerConfirmSiteName" min-width="120" :show-overflow-tooltip="true" />
<el-table-column :label="$t('寄件时间')" align="center" prop="waybillDetail.sendDate" min-width="170" />
<el-table-column :label="$t('录入网点')" align="center" prop="waybillDetail.registerSiteName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('录入人')" align="center" prop="waybillDetail.registerManName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('目的网点')" align="center" prop="waybillDetail.dispatchUnderlingSiteName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('件数')" align="center" prop="waybillDetail.parcelQty" min-width="80" />
<el-table-column :label="$t('目的地')" align="center" prop="waybillDetail.destinationName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('运费')" align="center" prop="waybillDetail.freight" min-width="80" />
<el-table-column :label="$t('付款方式')" align="center" prop="waybillDetail.paymentType" min-width="80" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.waybillDetail.paymentType"/>
</template>
</el-table-column>
</XdTable> </XdTable>
@ -127,13 +190,13 @@
<script> <script>
import { listEmisWaybillAjustApply, getEmisWaybillAjustApply, delEmisWaybillAjustApply, addEmisWaybillAjustApply, updateEmisWaybillAjustApply } from "@/api/emis/emisWaybillAjustApply"; import { listEmisWaybillAjustApply, getEmisWaybillAjustApply, delEmisWaybillAjustApply, addEmisWaybillAjustApply, updateEmisWaybillAjustApply } from "@/api/emis/emisWaybillAjustApply";
import emisWaybillAjustApplyForm from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyForm'; import emisWaybillAjustApplyForm from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyForm';
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker'; import elDateSimplePicker from '@/components/DatePickerAdv/elDateSimplePicker';
export default { export default {
name: "EmisWaybillAjustApply", name: "EmisWaybillAjustApply",
components: { elDateAdvPicker,emisWaybillAjustApplyForm }, components: { elDateSimplePicker,emisWaybillAjustApplyForm },
dicts: [ dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
], 'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',
'emis_calc_fee_type','emis_print_type'],
data() { data() {
return { return {
// 遮罩层 // 遮罩层
@ -262,7 +325,7 @@ export default {
handleAdd(row) { handleAdd(row) {
this.currentId=null; this.currentId=null;
this.openForm= true; this.openForm= true;
this.titleForm = "新增"; this.titleForm = "新增运单调整申请";
}, },
handleShowMoreInput(){ handleShowMoreInput(){
this.moreInputVisible = !this.moreInputVisible; this.moreInputVisible = !this.moreInputVisible;
@ -296,53 +359,7 @@ export default {
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {});
}, },
/** 导出按钮操作 */
handleExport() {
// this.download('emis/emisWaybillAjustApply/export', {
// ...this.queryParams
// }, `emisWaybillAjustApply_${new Date().getTime()}.xlsx`)
const loadingInstance = this.$loading({
text: '正在导出...'
})
var qParam = {...this.queryParams};
qParam.pageNum=1;
qParam.pageSize=5000;
listEmisWaybillAjustApply(this.addDateRange(qParam, this.dateTimeRange)).then(response => {
this.downloadLoading = false
if (response.code === 200) {
const curList = response.rows
import('@/vendor/Export2Excel').then(excel => {
const tHeader = ['id','运单号','调整类型','申请人编码','申请站点代码','申请财务中心编码','申请时间','目的网点是否审核','目的站点代码','目的网点确认时间','目的网点审核备注','目的站点确认人代码','目的财务中心编码','改前值','改后值','修改值是否json','申请备注','中心是否审核','中心确认编码','中心确认人','中心确认时间','中心审核备注','备注','租户ID','删除标志(0代表存在','创建者','创建时间','更新者','更新时间','创建网点','更新网点',];
const filterVal = ['id','billCode','applyType','applyManCode','applySiteCode','applyFinanceCenterCode','applyDate','blDestConfirmed','destConfirmSiteCode','destConfirmDate','destConfirmNote','destConfirmManCode','destFinanceCenterCode','oldValue','newValue','blValueJson','applyMemo','blCenterConfirmed','centerConfirmSiteCode','centerConfirmManCode','centerConfirmDate','centerConfirmNote','remark','tenantId','delFlag','createBy','createTime','updateBy','updateTime','createSite','updateSite',];
const data = this.formatJson(filterVal, curList, response.rows)
excel.export_json_to_excel({
header: tHeader,
data,
filename: '运单调整申请',
autoWidth: true
})
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='xxx'
if(v[j] == 10){
statusStr='xxx'
}
return statusStr;
}
return v[j]
}))
},
/** 列索引函数 */ /** 列索引函数 */
getIndex($index) { getIndex($index) {
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1 return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1

View File

@ -8,7 +8,7 @@
v-model="queryParams.billCode" v-model="queryParams.billCode"
:placeholder="$t('多个流水号逗号或换行隔开')" :placeholder="$t('多个流水号逗号或换行隔开')"
clearable clearable
:rows="6" :rows="4"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -16,7 +16,7 @@
<el-row :gutter="0" style="display: flex;flex-wrap: wrap;"> <el-row :gutter="0" style="display: flex;flex-wrap: wrap;">
<el-col :span="24"> <el-col :span="24">
<el-form-item label="登记时间" prop="dateTimeRange" label-position="top" > <el-form-item label="登记时间" prop="dateTimeRange" label-position="top" >
<elDateAdvPicker v-model="dateTimeRange" ></elDateAdvPicker> <elDateSimplePicker v-model="dateTimeRange" ></elDateSimplePicker>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -39,11 +39,9 @@
</el-row> </el-row>
</SearchForm> </SearchForm>
<XdTable v-loading="loading" <XdTable v-loading="loading"
border stripe border stripe
size="small" size="mini"
:data="emisWaybillAjustApplyList" :data="emisWaybillAjustApplyList"
:showSearch.sync="showSearch" :showSearch.sync="showSearch"
:queryParams="queryParams" :queryParams="queryParams"
@ -55,7 +53,7 @@
<div slot="toolbar"> <div slot="toolbar">
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
plain plain
@ -63,21 +61,32 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['emis:emisWaybillAjustApply:add']" v-hasPermi="['emis:emisWaybillAjustApply:add']"
>新增</el-button> >新增申请</el-button>
</el-col> </el-col> -->
<!--
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="success" type="success"
plain plain
icon="el-icon-edit" icon="el-icon-edit"
size="mini" size="mini"
:disabled="single" :disabled="multiple"
@click="handleUpdate" @click="handleCenterPass"
v-hasPermi="['emis:emisWaybillAjustApply:edit']" v-hasPermi="['emis:emisWaybillAjustApply:centerPass']"
>修改</el-button> >审核通过</el-button>
</el-col> --> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-edit"
size="mini"
:disabled="multiple"
@click="handleCenterNoPass"
v-hasPermi="['emis:emisWaybillAjustApply:centerNoPass']"
>中心驳回</el-button>
</el-col>
<!-- <el-col :span="1.5">
<el-button <el-button
type="danger" type="danger"
plain plain
@ -87,7 +96,7 @@
@click="handleDelete" @click="handleDelete"
v-hasPermi="['emis:emisWaybillAjustApply:remove']" v-hasPermi="['emis:emisWaybillAjustApply:remove']"
>删除</el-button> >删除</el-button>
</el-col> </el-col> -->
<!-- <el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button <el-button
type="warning" type="warning"
@ -102,112 +111,115 @@
</div> </div>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<!--
<el-table-column label="序号" align="center" min-width="60"> <el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="150" />
<el-table-column :label="$t('登记网点')" align="center" prop="applySiteName" min-width="100" />
<el-table-column :label="$t('登记说明')" align="center" prop="applyMemo" min-width="200" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('登记时间')" align="center" prop="applyDate" min-width="170" />
<el-table-column :label="$t('修改项目')" align="center" prop="applyTypeName" min-width="100" />
<el-table-column :label="$t('登记人')" align="center" prop="applyManName" min-width="100" />
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<span v-text="getIndex(scope.$index)"> </span> <div v-if="scope.row.applyType=='20'" >
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.oldValue"/>
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="xxx" align="left" prop="xxx" min-width="180"> <el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<div class="link-type" @click="handleView(scope.row)">{{scope.row.orderSn}}</div> <div v-if="scope.row.applyType=='20'" >
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.newValue"/>
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="结算状态" align="center" prop="settleStatus" :sort-orders="['descending','ascending']" sortable="custom" min-width="80"> <el-table-column :label="$t('结算重量')" align="center" prop="waybillDetail.settlementWeight" min-width="80" />
<el-table-column :label="$t('确认网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.settleStatus == 0" style="color:red;"> <div v-if="scope.row.blCenterConfirmed==1" >{{ scope.row.destConfirmSiteName }}</div>
<span class="el-tag el-tag--info">未结算</span>
</div>
<div v-if="scope.row.settleStatus == 10" style="color:red;">
<span class="el-tag">待确认</span>
</div>
<div v-if="scope.row.settleStatus == 11" style="color:green;">
<span class="el-tag el-tag--success el-tag--light">已确认</span>
</div>
<div v-if="scope.row.settleStatus == 20" >
<span class="el-tag el-tag--warning el-tag--light">待打款</span>
</div>
<div v-if="scope.row.settleStatus == 21" style="color:green;">
<span class="el-tag el-tag--success el-tag--light">已打款</span>
</div>
<div v-if="scope.row.settleStatus == 40" style="color:red;">
<span class="el-tag el-tag--danger">已拒绝</span>
</div>
</template> </template>
</el-table-column> </el-table-column>
-->
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="100" /> <el-table-column :label="$t('状态')" align="center" prop="processStatus" min-width="100" >
<el-table-column :label="$t('调整类型')" align="center" prop="applyType" min-width="100" />
<el-table-column :label="$t('申请人编码')" align="center" prop="applyManCode" min-width="100" />
<el-table-column :label="$t('申请站点代码')" align="center" prop="applySiteCode" min-width="100" />
<el-table-column :label="$t('申请财务中心编码')" align="center" prop="applyFinanceCenterCode" min-width="100" />
<el-table-column :label="$t('申请时间')" align="center" prop="applyDate" min-width="100" />
<el-table-column :label="$t('目的网点是否审核')" align="center" prop="blDestConfirmed" min-width="100" />
<el-table-column :label="$t('目的站点代码')" align="center" prop="destConfirmSiteCode" min-width="100" />
<el-table-column :label="$t('目的网点确认时间')" align="center" prop="destConfirmDate" min-width="100" />
<el-table-column :label="$t('目的网点审核备注')" align="center" prop="destConfirmNote" min-width="100" />
<el-table-column :label="$t('目的站点确认人代码')" align="center" prop="destConfirmManCode" min-width="100" />
<el-table-column :label="$t('目的财务中心编码')" align="center" prop="destFinanceCenterCode" min-width="100" />
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="100" />
<el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="100" />
<el-table-column :label="$t('修改值是否json')" align="center" prop="blValueJson" min-width="100" />
<el-table-column :label="$t('申请备注')" align="center" prop="applyMemo" min-width="100" />
<el-table-column :label="$t('中心是否审核')" align="center" prop="blCenterConfirmed" min-width="100" />
<el-table-column :label="$t('中心确认编码')" align="center" prop="centerConfirmSiteCode" min-width="100" />
<el-table-column :label="$t('中心确认人')" align="center" prop="centerConfirmManCode" min-width="100" />
<el-table-column :label="$t('中心确认时间')" align="center" prop="centerConfirmDate" min-width="100" />
<el-table-column :label="$t('中心审核备注')" align="center" prop="centerConfirmNote" min-width="100" />
<el-table-column :label="$t('备注')" align="center" prop="remark" min-width="100" />
<el-table-column :label="$t('删除标志(0代表存在')" align="center" prop="delFlag" min-width="100" />
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <div v-if="scope.row.blDestConfirmed==0" >未确认</div>
size="mini" <div v-if="scope.row.blDestConfirmed==1" >网点确认</div>
type="text" <div v-if="scope.row.blDestConfirmed==2" >网点驳回</div>
icon="el-icon-edit" <div v-if="scope.row.blCenterConfirmed==1" >中心审核通过</div>
@click="handleUpdate(scope.row)" <div v-if="scope.row.blCenterConfirmed==2" >中心驳回</div>
v-hasPermi="['emis:emisWaybillAjustApply:edit']" </template>
>修改</el-button> </el-table-column>
<!-- <el-table-column :label="$t('确认时间')" align="center" prop="destConfirmDate" min-width="170" >
<el-button <template slot-scope="scope">
size="mini" <div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmDate }}</div>
type="text" </template>
icon="el-icon-delete" </el-table-column>
@click="handleDelete(scope.row)"
v-hasPermi="['emis:emisWaybillAjustApply:remove']" <el-table-column :label="$t('确认人')" align="center" prop="destConfirmManName" min-width="100" >
>删除</el-button> --> <template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmSiteName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('网点驳回时间')" align="center" prop="destConfirmDate" min-width="170" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmDate }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回人')" align="center" prop="destConfirmManName" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回原因')" align="center" prop="destConfirmNote" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmNote }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('中心审核时间')" align="center" prop="centerConfirmDate" min-width="170" />
<el-table-column :label="$t('中心审核人')" align="center" prop="centerConfirmManName" min-width="100" />
<el-table-column :label="$t('中心审核网点')" align="center" prop="centerConfirmSiteName" min-width="120" :show-overflow-tooltip="true" />
<el-table-column :label="$t('寄件时间')" align="center" prop="waybillDetail.sendDate" min-width="170" />
<el-table-column :label="$t('录入网点')" align="center" prop="waybillDetail.registerSiteName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('录入人')" align="center" prop="waybillDetail.registerManName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('目的网点')" align="center" prop="waybillDetail.dispatchUnderlingSiteName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('件数')" align="center" prop="waybillDetail.parcelQty" min-width="80" />
<el-table-column :label="$t('目的地')" align="center" prop="waybillDetail.destinationName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('运费')" align="center" prop="waybillDetail.freight" min-width="80" />
<el-table-column :label="$t('付款方式')" align="center" prop="waybillDetail.paymentType" min-width="80" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.waybillDetail.paymentType"/>
</template> </template>
</el-table-column> </el-table-column>
</XdTable> </XdTable>
<el-dialog :title="titleForm" :visible.sync="openForm" width="50%" :destroy-on-close="true" v-dialogDrag append-to-body> <el-dialog :title="titleForm" :visible.sync="openForm" width="60%" :destroy-on-close="true" v-dialogDrag append-to-body>
<emisWaybillAjustApplyForm :id="currentId" @on-changed="handleFormChanged" @on-cancel="cancelForm"></EmisWaybillAjustApplyForm> <emisWaybillAjustApplyForm :id="currentId" @on-changed="handleFormChanged" @on-cancel="cancelForm"></EmisWaybillAjustApplyForm>
</el-dialog> </el-dialog>
<!--
<el-dialog :title="titleView" :visible.sync="openView" width="60%" :close-on-click-modal="false" v-dialogDrag append-to-body>
<emisWaybillAjustApplyView :id="id" ></EmisWaybillAjustApplyView>
</el-dialog>
-->
</div> </div>
</template> </template>
<script> <script>
import { listEmisWaybillAjustApply, getEmisWaybillAjustApply, delEmisWaybillAjustApply, addEmisWaybillAjustApply, updateEmisWaybillAjustApply } from "@/api/emis/emisWaybillAjustApply"; import { listEmisWaybillAjustApply, auditCenterPass,auditCenterNoPass} from "@/api/emis/emisWaybillAjustApply";
// import emisWaybillAjustApplyView from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyView';
import emisWaybillAjustApplyForm from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyForm'; import emisWaybillAjustApplyForm from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyForm';
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker'; import elDateSimplePicker from '@/components/DatePickerAdv/elDateSimplePicker';
export default { export default {
name: "EmisWaybillAjustApply", name: "EmisWaybillAjustApply",
components: { elDateAdvPicker,emisWaybillAjustApplyForm }, components: { elDateSimplePicker,emisWaybillAjustApplyForm },
dicts: [ dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
], 'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',
'emis_calc_fee_type','emis_print_type'],
data() { data() {
return { return {
// 遮罩层 // 遮罩层
@ -332,12 +344,31 @@ export default {
this.queryParams.isAsc = column.order; this.queryParams.isAsc = column.order;
this.getList(); this.getList();
}, },
/** 新增按钮操作 */ handleCenterPass(row) {
handleAdd(row) { const ids = row.id || this.ids;
this.currentId=null; this.$modal.confirm('是否审核通过').then(function() {
this.openForm= true; return auditCenterPass(ids);
this.titleForm = "新增"; }).then(() => {
this.getList();
this.$modal.msgSuccess("操作成功");
}).catch(() => {});
}, },
handleCenterNoPass(row) {
const ids = row.id || this.ids;
this.$prompt('请输入驳回原因', "操作确认", {
confirmButtonText: "确定",
cancelButtonText: "取消",
closeOnClickModal: false,
inputPattern: /^.{5,30}$/,
inputErrorMessage: "驳回原因长度必须介于 5 和 30 之间"
}).then(({ value }) => {
auditCenterNoPass(ids,value).then(response => {
this.$modal.msgSuccess("操作成功" );
this.getList();
});
}).catch(() => {});
},
handleShowMoreInput(){ handleShowMoreInput(){
this.moreInputVisible = !this.moreInputVisible; this.moreInputVisible = !this.moreInputVisible;
}, },
@ -370,53 +401,7 @@ export default {
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {});
}, },
/** 导出按钮操作 */
handleExport() {
// this.download('emis/emisWaybillAjustApply/export', {
// ...this.queryParams
// }, `emisWaybillAjustApply_${new Date().getTime()}.xlsx`)
const loadingInstance = this.$loading({
text: '正在导出...'
})
var qParam = {...this.queryParams};
qParam.pageNum=1;
qParam.pageSize=5000;
listEmisWaybillAjustApply(this.addDateRange(qParam, this.dateTimeRange)).then(response => {
this.downloadLoading = false
if (response.code === 200) {
const curList = response.rows
import('@/vendor/Export2Excel').then(excel => {
const tHeader = ['id','运单号','调整类型','申请人编码','申请站点代码','申请财务中心编码','申请时间','目的网点是否审核','目的站点代码','目的网点确认时间','目的网点审核备注','目的站点确认人代码','目的财务中心编码','改前值','改后值','修改值是否json','申请备注','中心是否审核','中心确认编码','中心确认人','中心确认时间','中心审核备注','备注','租户ID','删除标志(0代表存在','创建者','创建时间','更新者','更新时间','创建网点','更新网点',];
const filterVal = ['id','billCode','applyType','applyManCode','applySiteCode','applyFinanceCenterCode','applyDate','blDestConfirmed','destConfirmSiteCode','destConfirmDate','destConfirmNote','destConfirmManCode','destFinanceCenterCode','oldValue','newValue','blValueJson','applyMemo','blCenterConfirmed','centerConfirmSiteCode','centerConfirmManCode','centerConfirmDate','centerConfirmNote','remark','tenantId','delFlag','createBy','createTime','updateBy','updateTime','createSite','updateSite',];
const data = this.formatJson(filterVal, curList, response.rows)
excel.export_json_to_excel({
header: tHeader,
data,
filename: '运单调整申请',
autoWidth: true
})
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='xxx'
if(v[j] == 10){
statusStr='xxx'
}
return statusStr;
}
return v[j]
}))
},
/** 列索引函数 */ /** 列索引函数 */
getIndex($index) { getIndex($index) {
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1 return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1

View File

@ -8,7 +8,7 @@
v-model="queryParams.billCode" v-model="queryParams.billCode"
:placeholder="$t('多个流水号逗号或换行隔开')" :placeholder="$t('多个流水号逗号或换行隔开')"
clearable clearable
:rows="6" :rows="4"
/> />
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -29,20 +29,19 @@
<el-option label="中心驳回" :value="2"></el-option> <el-option label="中心驳回" :value="2"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="修改项目" prop="applyType"> <!-- <el-form-item label="修改项目" prop="applyType">
<el-select clearable="" v-model="queryParams.applyType" placeholder="请选择"> <el-select clearable="" v-model="queryParams.applyType" placeholder="请选择">
<el-option label="运费" value="001"></el-option> <el-option label="运费" value="001"></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item> -->
</el-row> </el-row>
</el-col> </el-col>
</el-row> </el-row>
</SearchForm> </SearchForm>
<XdTable v-loading="loading" <XdTable v-loading="loading"
border stripe border stripe
size="small" size="mini"
:data="emisWaybillAjustApplyList" :data="emisWaybillAjustApplyList"
:showSearch.sync="showSearch" :showSearch.sync="showSearch"
:queryParams="queryParams" :queryParams="queryParams"
@ -54,7 +53,7 @@
<div slot="toolbar"> <div slot="toolbar">
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
plain plain
@ -62,21 +61,32 @@
size="mini" size="mini"
@click="handleAdd" @click="handleAdd"
v-hasPermi="['emis:emisWaybillAjustApply:add']" v-hasPermi="['emis:emisWaybillAjustApply:add']"
>新增</el-button> >新增申请</el-button>
</el-col> </el-col> -->
<!--
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="success" type="success"
plain plain
icon="el-icon-edit" icon="el-icon-edit"
size="mini" size="mini"
:disabled="single" :disabled="multiple"
@click="handleUpdate" @click="handleDestPass"
v-hasPermi="['emis:emisWaybillAjustApply:edit']" v-hasPermi="['emis:emisWaybillAjustApply:pass']"
>修改</el-button> >确认通过</el-button>
</el-col> --> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button
type="danger"
plain
icon="el-icon-edit"
size="mini"
:disabled="multiple"
@click="handleDestNoPass"
v-hasPermi="['emis:emisWaybillAjustApply:nopass']"
>网点驳回</el-button>
</el-col>
<!-- <el-col :span="1.5">
<el-button <el-button
type="danger" type="danger"
plain plain
@ -86,7 +96,7 @@
@click="handleDelete" @click="handleDelete"
v-hasPermi="['emis:emisWaybillAjustApply:remove']" v-hasPermi="['emis:emisWaybillAjustApply:remove']"
>删除</el-button> >删除</el-button>
</el-col> </el-col> -->
<!-- <el-col :span="1.5"> <!-- <el-col :span="1.5">
<el-button <el-button
type="warning" type="warning"
@ -101,112 +111,115 @@
</div> </div>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<!--
<el-table-column label="序号" align="center" min-width="60"> <el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="150" />
<el-table-column :label="$t('登记网点')" align="center" prop="applySiteName" min-width="100" />
<el-table-column :label="$t('登记说明')" align="center" prop="applyMemo" min-width="200" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('登记时间')" align="center" prop="applyDate" min-width="170" />
<el-table-column :label="$t('修改项目')" align="center" prop="applyTypeName" min-width="100" />
<el-table-column :label="$t('登记人')" align="center" prop="applyManName" min-width="100" />
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<span v-text="getIndex(scope.$index)"> </span> <div v-if="scope.row.applyType=='20'" >
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.oldValue"/>
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="xxx" align="left" prop="xxx" min-width="180"> <el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<div class="link-type" @click="handleView(scope.row)">{{scope.row.orderSn}}</div> <div v-if="scope.row.applyType=='20'" >
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.newValue"/>
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="结算状态" align="center" prop="settleStatus" :sort-orders="['descending','ascending']" sortable="custom" min-width="80"> <el-table-column :label="$t('结算重量')" align="center" prop="waybillDetail.settlementWeight" min-width="80" />
<el-table-column :label="$t('确认网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.settleStatus == 0" style="color:red;"> <div v-if="scope.row.blCenterConfirmed==1" >{{ scope.row.destConfirmSiteName }}</div>
<span class="el-tag el-tag--info">未结算</span>
</div>
<div v-if="scope.row.settleStatus == 10" style="color:red;">
<span class="el-tag">待确认</span>
</div>
<div v-if="scope.row.settleStatus == 11" style="color:green;">
<span class="el-tag el-tag--success el-tag--light">已确认</span>
</div>
<div v-if="scope.row.settleStatus == 20" >
<span class="el-tag el-tag--warning el-tag--light">待打款</span>
</div>
<div v-if="scope.row.settleStatus == 21" style="color:green;">
<span class="el-tag el-tag--success el-tag--light">已打款</span>
</div>
<div v-if="scope.row.settleStatus == 40" style="color:red;">
<span class="el-tag el-tag--danger">已拒绝</span>
</div>
</template> </template>
</el-table-column> </el-table-column>
-->
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="100" /> <el-table-column :label="$t('状态')" align="center" prop="processStatus" min-width="100" >
<el-table-column :label="$t('调整类型')" align="center" prop="applyType" min-width="100" />
<el-table-column :label="$t('申请人编码')" align="center" prop="applyManCode" min-width="100" />
<el-table-column :label="$t('申请站点代码')" align="center" prop="applySiteCode" min-width="100" />
<el-table-column :label="$t('申请财务中心编码')" align="center" prop="applyFinanceCenterCode" min-width="100" />
<el-table-column :label="$t('申请时间')" align="center" prop="applyDate" min-width="100" />
<el-table-column :label="$t('目的网点是否审核')" align="center" prop="blDestConfirmed" min-width="100" />
<el-table-column :label="$t('目的站点代码')" align="center" prop="destConfirmSiteCode" min-width="100" />
<el-table-column :label="$t('目的网点确认时间')" align="center" prop="destConfirmDate" min-width="100" />
<el-table-column :label="$t('目的网点审核备注')" align="center" prop="destConfirmNote" min-width="100" />
<el-table-column :label="$t('目的站点确认人代码')" align="center" prop="destConfirmManCode" min-width="100" />
<el-table-column :label="$t('目的财务中心编码')" align="center" prop="destFinanceCenterCode" min-width="100" />
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="100" />
<el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="100" />
<el-table-column :label="$t('修改值是否json')" align="center" prop="blValueJson" min-width="100" />
<el-table-column :label="$t('申请备注')" align="center" prop="applyMemo" min-width="100" />
<el-table-column :label="$t('中心是否审核')" align="center" prop="blCenterConfirmed" min-width="100" />
<el-table-column :label="$t('中心确认编码')" align="center" prop="centerConfirmSiteCode" min-width="100" />
<el-table-column :label="$t('中心确认人')" align="center" prop="centerConfirmManCode" min-width="100" />
<el-table-column :label="$t('中心确认时间')" align="center" prop="centerConfirmDate" min-width="100" />
<el-table-column :label="$t('中心审核备注')" align="center" prop="centerConfirmNote" min-width="100" />
<el-table-column :label="$t('备注')" align="center" prop="remark" min-width="100" />
<el-table-column :label="$t('删除标志(0代表存在')" align="center" prop="delFlag" min-width="100" />
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <div v-if="scope.row.blDestConfirmed==0" >未确认</div>
size="mini" <div v-if="scope.row.blDestConfirmed==1" >网点确认</div>
type="text" <div v-if="scope.row.blDestConfirmed==2" >网点驳回</div>
icon="el-icon-edit" <div v-if="scope.row.blCenterConfirmed==1" >中心审核通过</div>
@click="handleUpdate(scope.row)" <div v-if="scope.row.blCenterConfirmed==2" >中心驳回</div>
v-hasPermi="['emis:emisWaybillAjustApply:edit']"
>修改</el-button>
<!--
<el-button
size="mini"
type="text"
icon="el-icon-delete"
@click="handleDelete(scope.row)"
v-hasPermi="['emis:emisWaybillAjustApply:remove']"
>删除</el-button> -->
</template> </template>
</el-table-column> </el-table-column>
<el-table-column :label="$t('确认时间')" align="center" prop="destConfirmDate" min-width="170" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmDate }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('确认人')" align="center" prop="destConfirmManName" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmSiteName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('网点驳回时间')" align="center" prop="destConfirmDate" min-width="170" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmDate }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回人')" align="center" prop="destConfirmManName" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回原因')" align="center" prop="destConfirmNote" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmNote }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('中心审核时间')" align="center" prop="centerConfirmDate" min-width="170" />
<el-table-column :label="$t('中心审核人')" align="center" prop="centerConfirmManName" min-width="100" />
<el-table-column :label="$t('中心审核网点')" align="center" prop="centerConfirmSiteName" min-width="120" :show-overflow-tooltip="true" />
<el-table-column :label="$t('寄件时间')" align="center" prop="waybillDetail.sendDate" min-width="170" />
<el-table-column :label="$t('录入网点')" align="center" prop="waybillDetail.registerSiteName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('录入人')" align="center" prop="waybillDetail.registerManName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('目的网点')" align="center" prop="waybillDetail.dispatchUnderlingSiteName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('件数')" align="center" prop="waybillDetail.parcelQty" min-width="80" />
<el-table-column :label="$t('目的地')" align="center" prop="waybillDetail.destinationName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('运费')" align="center" prop="waybillDetail.freight" min-width="80" />
<el-table-column :label="$t('付款方式')" align="center" prop="waybillDetail.paymentType" min-width="80" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.waybillDetail.paymentType"/>
</template>
</el-table-column>
</XdTable> </XdTable>
<el-dialog :title="titleForm" :visible.sync="openForm" width="50%" :destroy-on-close="true" v-dialogDrag append-to-body> <el-dialog :title="titleForm" :visible.sync="openForm" width="60%" :destroy-on-close="true" v-dialogDrag append-to-body>
<emisWaybillAjustApplyForm :id="currentId" @on-changed="handleFormChanged" @on-cancel="cancelForm"></EmisWaybillAjustApplyForm> <emisWaybillAjustApplyForm :id="currentId" @on-changed="handleFormChanged" @on-cancel="cancelForm"></EmisWaybillAjustApplyForm>
</el-dialog> </el-dialog>
<!--
<el-dialog :title="titleView" :visible.sync="openView" width="60%" :close-on-click-modal="false" v-dialogDrag append-to-body>
<emisWaybillAjustApplyView :id="id" ></EmisWaybillAjustApplyView>
</el-dialog>
-->
</div> </div>
</template> </template>
<script> <script>
import { listEmisWaybillAjustApply, getEmisWaybillAjustApply, delEmisWaybillAjustApply, addEmisWaybillAjustApply, updateEmisWaybillAjustApply } from "@/api/emis/emisWaybillAjustApply"; import { listEmisWaybillAjustApply, auditDestPass,auditDestNoPass} from "@/api/emis/emisWaybillAjustApply";
// import emisWaybillAjustApplyView from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyView';
import emisWaybillAjustApplyForm from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyForm'; import emisWaybillAjustApplyForm from '@/views/emis/emisWaybillAjustApply/emisWaybillAjustApplyForm';
import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker'; import elDateAdvPicker from '@/components/DatePickerAdv/elDateAdvPicker';
export default { export default {
name: "EmisWaybillAjustApply", name: "EmisWaybillAjustApply",
components: { elDateAdvPicker,emisWaybillAjustApplyForm }, components: { elDateAdvPicker,emisWaybillAjustApplyForm },
dicts: [ dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
], 'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',
'emis_calc_fee_type','emis_print_type'],
data() { data() {
return { return {
// 遮罩层 // 遮罩层
@ -331,12 +344,32 @@ export default {
this.queryParams.isAsc = column.order; this.queryParams.isAsc = column.order;
this.getList(); this.getList();
}, },
/** 新增按钮操作 */
handleAdd(row) { handleDestPass(row) {
this.currentId=null; const ids = row.id || this.ids;
this.openForm= true; this.$modal.confirm('是否审核通过').then(function() {
this.titleForm = "新增"; return auditDestPass(ids);
}).then(() => {
this.getList();
this.$modal.msgSuccess("操作成功");
}).catch(() => {});
}, },
handleDestNoPass(row) {
const ids = row.id || this.ids;
this.$prompt('请输入驳回原因', "操作确认", {
confirmButtonText: "确定",
cancelButtonText: "取消",
closeOnClickModal: false,
inputPattern: /^.{5,30}$/,
inputErrorMessage: "驳回原因长度必须介于 5 和 30 之间"
}).then(({ value }) => {
auditDestNoPass(ids,value).then(response => {
this.$modal.msgSuccess("操作成功" );
this.getList();
});
}).catch(() => {});
},
handleShowMoreInput(){ handleShowMoreInput(){
this.moreInputVisible = !this.moreInputVisible; this.moreInputVisible = !this.moreInputVisible;
}, },
@ -369,53 +402,7 @@ export default {
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");
}).catch(() => {}); }).catch(() => {});
}, },
/** 导出按钮操作 */
handleExport() {
// this.download('emis/emisWaybillAjustApply/export', {
// ...this.queryParams
// }, `emisWaybillAjustApply_${new Date().getTime()}.xlsx`)
const loadingInstance = this.$loading({
text: '正在导出...'
})
var qParam = {...this.queryParams};
qParam.pageNum=1;
qParam.pageSize=5000;
listEmisWaybillAjustApply(this.addDateRange(qParam, this.dateTimeRange)).then(response => {
this.downloadLoading = false
if (response.code === 200) {
const curList = response.rows
import('@/vendor/Export2Excel').then(excel => {
const tHeader = ['id','运单号','调整类型','申请人编码','申请站点代码','申请财务中心编码','申请时间','目的网点是否审核','目的站点代码','目的网点确认时间','目的网点审核备注','目的站点确认人代码','目的财务中心编码','改前值','改后值','修改值是否json','申请备注','中心是否审核','中心确认编码','中心确认人','中心确认时间','中心审核备注','备注','租户ID','删除标志(0代表存在','创建者','创建时间','更新者','更新时间','创建网点','更新网点',];
const filterVal = ['id','billCode','applyType','applyManCode','applySiteCode','applyFinanceCenterCode','applyDate','blDestConfirmed','destConfirmSiteCode','destConfirmDate','destConfirmNote','destConfirmManCode','destFinanceCenterCode','oldValue','newValue','blValueJson','applyMemo','blCenterConfirmed','centerConfirmSiteCode','centerConfirmManCode','centerConfirmDate','centerConfirmNote','remark','tenantId','delFlag','createBy','createTime','updateBy','updateTime','createSite','updateSite',];
const data = this.formatJson(filterVal, curList, response.rows)
excel.export_json_to_excel({
header: tHeader,
data,
filename: '运单调整申请',
autoWidth: true
})
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='xxx'
if(v[j] == 10){
statusStr='xxx'
}
return statusStr;
}
return v[j]
}))
},
/** 列索引函数 */ /** 列索引函数 */
getIndex($index) { getIndex($index) {
return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1 return (this.queryParams.pageNum - 1) * this.queryParams.pageSize + $index + 1

View File

@ -102,83 +102,92 @@
</div> </div>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<!--
<el-table-column label="序号" align="center" min-width="60"> <el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="150" />
<el-table-column :label="$t('登记网点')" align="center" prop="applySiteName" min-width="100" />
<el-table-column :label="$t('登记说明')" align="center" prop="applyMemo" min-width="200" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('登记时间')" align="center" prop="applyDate" min-width="170" />
<el-table-column :label="$t('修改项目')" align="center" prop="applyTypeName" min-width="100" />
<el-table-column :label="$t('登记人')" align="center" prop="applyManName" min-width="100" />
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<span v-text="getIndex(scope.$index)"> </span> <div v-if="scope.row.applyType=='20'" >
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.oldValue"/>
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="xxx" align="left" prop="xxx" min-width="180"> <el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="150" >
<template slot-scope="scope"> <template slot-scope="scope">
<div class="link-type" @click="handleView(scope.row)">{{scope.row.orderSn}}</div> <div v-if="scope.row.applyType=='20'" >
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.newValue"/>
</div>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="结算状态" align="center" prop="settleStatus" :sort-orders="['descending','ascending']" sortable="custom" min-width="80"> <el-table-column :label="$t('结算重量')" align="center" prop="waybillDetail.settlementWeight" min-width="80" />
<el-table-column :label="$t('确认网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.settleStatus == 0" style="color:red;"> <div v-if="scope.row.blCenterConfirmed==1" >{{ scope.row.destConfirmSiteName }}</div>
<span class="el-tag el-tag--info">未结算</span>
</div>
<div v-if="scope.row.settleStatus == 10" style="color:red;">
<span class="el-tag">待确认</span>
</div>
<div v-if="scope.row.settleStatus == 11" style="color:green;">
<span class="el-tag el-tag--success el-tag--light">已确认</span>
</div>
<div v-if="scope.row.settleStatus == 20" >
<span class="el-tag el-tag--warning el-tag--light">待打款</span>
</div>
<div v-if="scope.row.settleStatus == 21" style="color:green;">
<span class="el-tag el-tag--success el-tag--light">已打款</span>
</div>
<div v-if="scope.row.settleStatus == 40" style="color:red;">
<span class="el-tag el-tag--danger">已拒绝</span>
</div>
</template> </template>
</el-table-column> </el-table-column>
-->
<el-table-column :label="$t('运单号')" align="center" prop="billCode" min-width="100" /> <el-table-column :label="$t('状态')" align="center" prop="processStatus" min-width="100" >
<el-table-column :label="$t('调整类型')" align="center" prop="applyType" min-width="100" />
<el-table-column :label="$t('申请人编码')" align="center" prop="applyManCode" min-width="100" />
<el-table-column :label="$t('申请站点代码')" align="center" prop="applySiteCode" min-width="100" />
<el-table-column :label="$t('申请财务中心编码')" align="center" prop="applyFinanceCenterCode" min-width="100" />
<el-table-column :label="$t('申请时间')" align="center" prop="applyDate" min-width="100" />
<el-table-column :label="$t('目的网点是否审核')" align="center" prop="blDestConfirmed" min-width="100" />
<el-table-column :label="$t('目的站点代码')" align="center" prop="destConfirmSiteCode" min-width="100" />
<el-table-column :label="$t('目的网点确认时间')" align="center" prop="destConfirmDate" min-width="100" />
<el-table-column :label="$t('目的网点审核备注')" align="center" prop="destConfirmNote" min-width="100" />
<el-table-column :label="$t('目的站点确认人代码')" align="center" prop="destConfirmManCode" min-width="100" />
<el-table-column :label="$t('目的财务中心编码')" align="center" prop="destFinanceCenterCode" min-width="100" />
<el-table-column :label="$t('改前值')" align="center" prop="oldValue" min-width="100" />
<el-table-column :label="$t('改后值')" align="center" prop="newValue" min-width="100" />
<el-table-column :label="$t('修改值是否json')" align="center" prop="blValueJson" min-width="100" />
<el-table-column :label="$t('申请备注')" align="center" prop="applyMemo" min-width="100" />
<el-table-column :label="$t('中心是否审核')" align="center" prop="blCenterConfirmed" min-width="100" />
<el-table-column :label="$t('中心确认编码')" align="center" prop="centerConfirmSiteCode" min-width="100" />
<el-table-column :label="$t('中心确认人')" align="center" prop="centerConfirmManCode" min-width="100" />
<el-table-column :label="$t('中心确认时间')" align="center" prop="centerConfirmDate" min-width="100" />
<el-table-column :label="$t('中心审核备注')" align="center" prop="centerConfirmNote" min-width="100" />
<el-table-column :label="$t('备注')" align="center" prop="remark" min-width="100" />
<el-table-column :label="$t('删除标志(0代表存在')" align="center" prop="delFlag" min-width="100" />
<el-table-column :label="$t('操作')" align="center" class-name="small-padding fixed-width">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <div v-if="scope.row.blDestConfirmed==0" >未确认</div>
size="mini" <div v-if="scope.row.blDestConfirmed==1" >网点确认</div>
type="text" <div v-if="scope.row.blDestConfirmed==2" >网点驳回</div>
icon="el-icon-edit" <div v-if="scope.row.blCenterConfirmed==1" >中心审核通过</div>
@click="handleUpdate(scope.row)" <div v-if="scope.row.blCenterConfirmed==2" >中心驳回</div>
v-hasPermi="['emis:emisWaybillAjustApply:edit']" </template>
>修改</el-button> </el-table-column>
<!-- <el-table-column :label="$t('确认时间')" align="center" prop="destConfirmDate" min-width="170" >
<el-button <template slot-scope="scope">
size="mini" <div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmDate }}</div>
type="text" </template>
icon="el-icon-delete" </el-table-column>
@click="handleDelete(scope.row)"
v-hasPermi="['emis:emisWaybillAjustApply:remove']" <el-table-column :label="$t('确认人')" align="center" prop="destConfirmManName" min-width="100" >
>删除</el-button> --> <template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==1" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回网点')" align="center" prop="destConfirmSiteName" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmSiteName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('网点驳回时间')" align="center" prop="destConfirmDate" min-width="170" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmDate }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回人')" align="center" prop="destConfirmManName" min-width="100" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmManName }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('驳回原因')" align="center" prop="destConfirmNote" min-width="100" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<div v-if="scope.row.blDestConfirmed==2" >{{ scope.row.destConfirmNote }}</div>
</template>
</el-table-column>
<el-table-column :label="$t('中心审核时间')" align="center" prop="centerConfirmDate" min-width="170" />
<el-table-column :label="$t('中心审核人')" align="center" prop="centerConfirmManName" min-width="100" />
<el-table-column :label="$t('中心审核网点')" align="center" prop="centerConfirmSiteName" min-width="120" :show-overflow-tooltip="true" />
<el-table-column :label="$t('寄件时间')" align="center" prop="waybillDetail.sendDate" min-width="170" />
<el-table-column :label="$t('录入网点')" align="center" prop="waybillDetail.registerSiteName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('录入人')" align="center" prop="waybillDetail.registerManName" min-width="80" :show-overflow-tooltip="true" />
<el-table-column :label="$t('目的网点')" align="center" prop="waybillDetail.dispatchUnderlingSiteName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('件数')" align="center" prop="waybillDetail.parcelQty" min-width="80" />
<el-table-column :label="$t('目的地')" align="center" prop="waybillDetail.destinationName" min-width="80" :show-overflow-tooltip="true"/>
<el-table-column :label="$t('运费')" align="center" prop="waybillDetail.freight" min-width="80" />
<el-table-column :label="$t('付款方式')" align="center" prop="waybillDetail.paymentType" min-width="80" :show-overflow-tooltip="true" >
<template slot-scope="scope">
<dict-tag :options="dict.type.emis_payment_type" :value="scope.row.waybillDetail.paymentType"/>
</template> </template>
</el-table-column> </el-table-column>
</XdTable> </XdTable>

View File

@ -8,33 +8,141 @@
<i slot="suffix" class="iconfont">&#xe656;</i> <i slot="suffix" class="iconfont">&#xe656;</i>
</el-input> </el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="修改项目" prop="applyType"> <el-form-item label="发往站点" prop="destConfirmSiteCode">
<AjustApplyTypePicker v-model="form.applyType" :disabled="isEditDisabled"></AjustApplyTypePicker> <EmisSiteSimplePicker :placeholder="$t('发往站点')" v-model="form.destConfirmSiteCode" :isInitiated="true" ></EmisSiteSimplePicker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
</el-col>
<!-- <el-col :span="24">
<el-table
class="cargoList"
:cell-style="{
'padding': '0px!important',
'padding-left': '0px!important',
'padding-right': '0px!important',
'font-size':'11px'
}"
:header-cell-style="{
'font-size':'11px'
}"
border
stripe
:data="ajustTypeItems"
size="small"
style="width: 100%"
max-height="300px"
>
<el-table-column :label="$t('序号')" align="center" width="60">
<template slot-scope="scope">
<span > {{scope.$index+1}}</span>
</template>
</el-table-column>
<el-table-column prop="length" :label="$t('修改项')" align="center" width="150">
<template slot-scope="scope">
<span>{{ scope.row.typeName }}</span>
</template>
</el-table-column>
<el-table-column prop="width" :label="$t('改前值')" align="center" width="120">
<template slot-scope="scope">
<span>{{ scope.row.oldValue }}</span>
</template>
</el-table-column>
<el-table-column prop="height" :label="$t('改后值')" align="center" width="120">
<template slot-scope="scope">
<el-input v-model="scope.row.newValue" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column prop="goodsName" :label="$t('描述')" align="center" width="60">
<template slot-scope="scope">
<el-input v-model="scope.row.goodsName" size="mini" placeholder=""></el-input>
</template>
</el-table-column>
<el-table-column :label="$t('操作')" align="left" min-width="50">
<template slot-scope="scope">
<span class="icon iconfont"
style="cursor: pointer;font-size: 21px;color: #6e6e6e;"
@click="()=>deleteGoodsItem(scope.row,scope.$index)">&#xe7ae;</span>
<span class="icon iconfont"
style="cursor: pointer;font-size: 21px;color: #6e6e6e;"
@click="()=>copyGoodsItem(scope.row,scope.$index)">&#xe620;</span>
</template>
</el-table-column>
</el-table>
</el-col> -->
<el-col :span="8"> <el-col :span="8">
<el-form-item label="发送站点" prop="destConfirmSiteCode"> <el-form-item label="修改项目" prop="applyType">
<EmisSiteSimplePicker :placeholder="$t('发送站点')" v-model="form.destConfirmSiteCode" :isInitiated="true" ></EmisSiteSimplePicker> <AjustApplyTypePicker v-model="form.applyType" :disabled="isEditDisabled" @onChange="onApplyTypeChange"></AjustApplyTypePicker>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="改前值" prop="oldValue"> <el-form-item label="改前值" prop="oldValue">
<el-input v-model="form.oldValue" placeholder="请输入改前值" disabled /> <el-input v-model="form.oldValue" placeholder="请输入改前值" disabled
v-if="form.applyType=='17'"
/>
<el-select v-if="form.applyType=='20'" v-model="form.oldValue" placeholder="" disabled >
<el-option
v-for="dict in dict.type.emis_payment_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
<el-select v-if="form.applyType=='15'" v-model="form.oldValue" placeholder="" disabled >
<el-option
v-for="dict in dict.type.emis_declare_mode"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8"> <el-col :span="8">
<el-form-item label="改后值" prop="newValue"> <el-form-item label="改后值" prop="newValue">
<el-input v-model="form.newValue" placeholder="请输入改后值" :disabled="isEditDisabled" /> <el-input
v-if="form.applyType=='17'"
v-model="form.newValue" placeholder="请输入改后值"
:disabled="isEditDisabled" />
<el-select v-if="form.applyType=='20'" v-model="form.newValue" placeholder="" :disabled="isEditDisabled">
<el-option
v-for="dict in dict.type.emis_payment_type"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
<el-select v-if="form.applyType=='15'" v-model="form.newValue" placeholder="" :disabled="isEditDisabled">
<el-option
v-for="dict in dict.type.emis_declare_mode"
:key="dict.value"
:label="dict.label"
:value="dict.value"
></el-option>
</el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="问题说明" prop="applyMemo"> <el-form-item label="调整说明" prop="applyMemo">
<el-input v-model="form.applyMemo" type="textarea" placeholder="" :disabled="isEditDisabled"/> <el-input v-model="form.applyMemo" type="textarea" placeholder="" :disabled="isEditDisabled"/>
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -53,6 +161,7 @@ import { addEmisWaybillAjustApply } from "@/api/emis/emisWaybillAjustApply";
import AjustApplyTypePicker from '@/views/emis/EmisBaseTools/AjustApplyTypePicker.vue'; import AjustApplyTypePicker from '@/views/emis/EmisBaseTools/AjustApplyTypePicker.vue';
import EmisSiteSimplePicker from '@/views/emis/EmisBaseTools/EmisSiteSimplePicker.vue'; import EmisSiteSimplePicker from '@/views/emis/EmisBaseTools/EmisSiteSimplePicker.vue';
import { getWaybillDetail} from "@/api/emis/emisWaybill"; import { getWaybillDetail} from "@/api/emis/emisWaybill";
import { listEmisWaybillAjustType } from "@/api/emis/emisWaybillAjustType";
export default { export default {
name: "emisWaybillAjustApplyForm", name: "emisWaybillAjustApplyForm",
@ -62,12 +171,15 @@ export default {
} }
}, },
components: { AjustApplyTypePicker,EmisSiteSimplePicker }, components: { AjustApplyTypePicker,EmisSiteSimplePicker },
dicts: [ dicts: ['emis_qujian_fangshi','emis_declare_mode','emis_customs_clear',
], 'emis_tab_packing_type','emis_tab_dispatch_mode','emis_payment_type',
'emis_calc_fee_type','emis_print_type'],
data() { data() {
return { return {
emisWaybillAjustApplyOptions: [], emisWaybillAjustApplyOptions: [],
ajustTypeItems:[],
isEditDisabled:true, isEditDisabled:true,
// 遮罩层 // 遮罩层
loading: true, loading: true,
@ -104,9 +216,34 @@ export default {
} }
}, },
created() { created() {
this.initAjustParam();
}, },
methods: { methods: {
onApplyTypeChange(item){
console.log("===>item==>",item.typeCode);
if(item.typeCode=='20'){
this.form.oldValue=this.billDetail.paymentType;
this.form.newValue="3";
}
else if(item.typeCode=='15'){
this.form.oldValue=this.billDetail.customsEclaration;
// this.form.newValue="3";
}
else if(item.typeCode=='17'){
this.form.oldValue=this.billDetail.remark;
// this.form.newValue="3";
}
},
initAjustParam(){
// let qParams={
// pageNum:1,
// pageSize:100
// }
// listEmisWaybillAjustType(qParams).then(response => {
// this.ajustTypeItems=response.rows;
// });
},
async handleScanInput(){ async handleScanInput(){
if(this.form.billCode==null || this.form.billCode==''){ if(this.form.billCode==null || this.form.billCode==''){
this.$message.error("输入单号后回车"); this.$message.error("输入单号后回车");
@ -120,6 +257,18 @@ export default {
} }
this.billDetail=res.data; this.billDetail=res.data;
// this.ajustTypeItems=[];
// var item={
// typeCode:"paymentType",
// typeName:"支付方式调整",
// oldValue:this.billDetail.paymentType,
// newValue:null,
// applyMemo:null
// }
// this.ajustTypeItems.push(item);
// console.log("====>", this.billDetail); // console.log("====>", this.billDetail);
this.isEditDisabled=false; this.isEditDisabled=false;