Browse Source

public/index.html添加全局变量,正常打印格式化

FoShanPG
刘云峰 2 days ago
parent
commit
33fe2f5eb0
  1. 5
      vue/public/index.html
  2. 5
      vue/src/App.vue
  3. 10
      vue/src/views/newJit/baseData/excludePartCfgs/index.vue
  4. 278
      vue/src/views/pg-fis/basedate/m100Online/RepetitionMB.vue
  5. 275
      vue/src/views/pg-fis/basedate/m100Online/RepetitionZHB.vue
  6. 318
      vue/src/views/pg-fis/basedate/m100Online/ScrapMB.vue
  7. 289
      vue/src/views/pg-fis/basedate/m100Online/ScrapZHB.vue
  8. 217
      vue/src/views/pg-fis/basedate/m100Online/budaMB.vue
  9. 226
      vue/src/views/pg-fis/basedate/m100Online/budaZHB.vue
  10. 135
      vue/src/views/pg-fis/basedate/m100Online/detail.vue
  11. 292
      vue/src/views/pg-fis/basedate/m100Online/detailMB.vue
  12. 270
      vue/src/views/pg-fis/basedate/m100Online/detailZHB.vue
  13. 2
      vue/src/views/pg-fis/basedate/m100Online/index.vue
  14. 614
      vue/src/views/pg-fis/basedate/m100Online/normalPritIndex.vue
  15. 2
      vue/src/views/pg-fis/basedate/partSwitch/index.vue
  16. 2
      vue/src/views/pg-fis/basedate/productLine/index.vue
  17. 2
      vue/src/views/pg-fis/basedate/repeatR100/index.vue
  18. 36
      vue/static/config.js

5
vue/public/index.html

@ -7,6 +7,11 @@
<meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no"> <meta name="viewport" content="width=device-width, initial-scale=1, maximum-scale=1, user-scalable=no">
<link rel="icon" href="<%= BASE_URL %>favicon.ico"> <link rel="icon" href="<%= BASE_URL %>favicon.ico">
<title><%= webpackConfig.name %></title> <title><%= webpackConfig.name %></title>
<script>
// 初始化
window.SITE_CONFIG = {};
</script>
<script src="./config.js"></script>
<!-- <link rel="stylesheet" href="./css/style.css" type="text/css" />--> <!-- <link rel="stylesheet" href="./css/style.css" type="text/css" />-->
<!-- <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"> --> <!-- <link rel="stylesheet" href="https://unpkg.com/element-ui/lib/theme-chalk/index.css"> -->

5
vue/src/App.vue

@ -42,5 +42,10 @@
}, },
} }
localStorage.setItem('config_ip',window.SITE_CONFIG['config_ip'])
localStorage.setItem('config_auth_port',window.SITE_CONFIG['config_auth_port'])
localStorage.setItem('config_public_port',window.SITE_CONFIG['config_public_port'])
localStorage.setItem('config_backend_port',window.SITE_CONFIG['config_backend_port'])
</script> </script>

10
vue/src/views/newJit/baseData/excludePartCfgs/index.vue

@ -151,7 +151,7 @@ export default {
}; };
}, },
created() { created() {
debugger //debugger
console.log("进入excludePartCfgs模块"); console.log("进入excludePartCfgs模块");
this.getList(); this.getList();
@ -193,7 +193,7 @@ export default {
//debugger //debugger
this.isLoading = true; this.isLoading = true;
console.log(JSON.stringify(this.inputParam)) console.log(JSON.stringify(this.inputParam))
debugger //debugger
this.$axios this.$axios
.gets("/api/newjit/exclude-part-cfg/getlist", this.inputParam) .gets("/api/newjit/exclude-part-cfg/getlist", this.inputParam)
//.posts("/api/newjit/exclude-part-cfg/get-list", this.inputParam) //.posts("/api/newjit/exclude-part-cfg/get-list", this.inputParam)
@ -301,12 +301,12 @@ export default {
type: "warning", type: "warning",
}) })
.then(() => { .then(() => {
debugger //debugger
var arrStr = params.join(); var arrStr = params.join();
this.$axios this.$axios
.deletes("/api/newjit/exclude-part-cfg/delete/" + arrStr) .deletes("/api/newjit/exclude-part-cfg/delete/" + arrStr)
.then((response) => { .then((response) => {
debugger //debugger
if (response.status) if (response.status)
{ {
this.$notify({ this.$notify({
@ -336,7 +336,7 @@ export default {
*/ */
async handleExport() { async handleExport() {
this.isLoading = true; this.isLoading = true;
debugger //debugger
this.$axios this.$axios
.BolbGets("/api/newjit/exclude-part-cfg/export", this.inputParam) .BolbGets("/api/newjit/exclude-part-cfg/export", this.inputParam)
.then((res) => { .then((res) => {

278
vue/src/views/pg-fis/basedate/m100Online/RepetitionMB.vue

@ -3,33 +3,16 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item> <el-form-item>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="billNum" label="装箱单号"> <el-form-item prop="billNum" label="装箱单号">
<el-input <el-input v-model="listQuery.billNum" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.billNum"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="partType" label="零件类型"> <el-form-item prop="partType" label="零件类型">
<el-input <el-input v-model="listQuery.partType" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.partType"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -37,14 +20,8 @@
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="HostSN"> <el-form-item prop="HostSN">
<el-input <el-input v-model="listQuery.HostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.HostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<!-- <el-col class="line" :span="2">-</el-col> <!-- <el-col class="line" :span="2">-</el-col>
@ -93,117 +70,40 @@
<!-- </el-form-item> --> <!-- </el-form-item> -->
<el-form-item label="打印日期"> <el-form-item label="打印日期">
<el-date-picker <el-date-picker v-model="PrintTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="PrintTimeValue" type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']"></el-date-picker>
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleUpdate()">重打</el-button>
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleUpdate()"
>重打</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px"></el-table-column> <el-table-column type="selection" width="44px"></el-table-column>
<el-table-column type="expand" prop="details" label="详表"> <el-table-column type="expand" prop="details" label="详表">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column prop="knr" label="KNR订单号"></el-table-column> <el-table-column prop="knr" label="KNR订单号"></el-table-column>
<el-table-column prop="vin" label="底盘号"></el-table-column> <el-table-column prop="vin" label="底盘号"></el-table-column>
<el-table-column <el-table-column prop="hostSN" label="大众顺序号"></el-table-column>
prop="hostSN" <el-table-column prop="vehicleModel_DoorPlankCode" label="车型门板代码"></el-table-column>
label="大众顺序号" <el-table-column prop="topBoxPositionNum" label="上箱位号"></el-table-column>
></el-table-column> <el-table-column prop="topSAPMaterialNum" label="上箱位 SAP物料号"></el-table-column>
<el-table-column <el-table-column prop="topMaterialDescription" label="上箱位 物料描述"></el-table-column>
prop="vehicleModel_DoorPlankCode" <el-table-column prop="belowBoxPositionNum" label="下箱位号"></el-table-column>
label="车型门板代码" <el-table-column prop="belowSAPMaterialNum" label="下箱位 SAP物料号"></el-table-column>
></el-table-column> <el-table-column prop="belowMaterialDescription " label="下箱位 物料描述"></el-table-column>
<el-table-column
prop="topBoxPositionNum"
label="上箱位号"
></el-table-column>
<el-table-column
prop="topSAPMaterialNum"
label="上箱位 SAP物料号"
></el-table-column>
<el-table-column
prop="topMaterialDescription"
label="上箱位 物料描述"
></el-table-column>
<el-table-column
prop="belowBoxPositionNum"
label="下箱位号"
></el-table-column>
<el-table-column
prop="belowSAPMaterialNum"
label="下箱位 SAP物料号"
></el-table-column>
<el-table-column
prop="belowMaterialDescription "
label="下箱位 物料描述"
></el-table-column>
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -211,14 +111,8 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</div> </div>
@ -230,16 +124,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-MB", name: "M100Online-MB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -385,10 +290,26 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "装箱单号", prop: "billNum", width: 140 }); tempsTabs.push({
tempsTabs.push({ label: "单据顺号", prop: "billSerialNum", width: 120 }); label: "装箱单号",
tempsTabs.push({ label: "起始顺序号", prop: "beginHostSN", width: 120 }); prop: "billNum",
tempsTabs.push({ label: "结束顺序号", prop: "endHostSN", width: 120 }); width: 140
});
tempsTabs.push({
label: "单据顺号",
prop: "billSerialNum",
width: 120
});
tempsTabs.push({
label: "起始顺序号",
prop: "beginHostSN",
width: 120
});
tempsTabs.push({
label: "结束顺序号",
prop: "endHostSN",
width: 120
});
tempsTabs.push({ tempsTabs.push({
label: "左或右", label: "左或右",
prop: "billLocation", prop: "billLocation",
@ -448,7 +369,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -511,12 +434,12 @@ export default {
this.listQuery.partType = this.listQuery.partType; this.listQuery.partType = this.listQuery.partType;
var getdate5 = JSON.stringify(this.PrintTimeValue); var getdate5 = JSON.stringify(this.PrintTimeValue);
if (getdate5 != "[]") { if (getdate5 != "[]") {
this.listQuery.beginPrintDate = this.PrintTimeValue this.listQuery.beginPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[0] || undefined this.PrintTimeValue[0] || undefined :
: undefined; undefined;
this.listQuery.endPrintDate = this.PrintTimeValue this.listQuery.endPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[1] || undefined this.PrintTimeValue[1] || undefined :
: undefined; undefined;
} else { } else {
this.listQuery.beginPrintDate = undefined; this.listQuery.beginPrintDate = undefined;
this.listQuery.endPrintDate = undefined; this.listQuery.endPrintDate = undefined;
@ -533,16 +456,11 @@ export default {
.then((response) => { .then((response) => {
response.items.forEach((item) => { response.items.forEach((item) => {
if(item.printType == 0) if (item.printType == 0) {
{
item.printType = "正常打印"; item.printType = "正常打印";
} } else if (item.printType == 1) {
else if(item.printType == 1)
{
item.printType = "重打"; item.printType = "重打";
} } else {
else
{
item.printType = "补打"; item.printType = "补打";
} }
@ -614,7 +532,7 @@ export default {
// }) // })
// .catch(() => {}); // .catch(() => {});
debugger // //debugger //
var params = MBVin1; //ID var params = MBVin1; //ID
console.log("门板打印-主界面传过来的值:" + JSON.stringify(params)); console.log("门板打印-主界面传过来的值:" + JSON.stringify(params));
this.$axios this.$axios
@ -734,7 +652,11 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -755,7 +677,10 @@ export default {
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -767,19 +692,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -796,18 +741,19 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

275
vue/src/views/pg-fis/basedate/m100Online/RepetitionZHB.vue

@ -3,33 +3,16 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item> <el-form-item>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="billNum" label="装箱单号"> <el-form-item prop="billNum" label="装箱单号">
<el-input <el-input v-model="listQuery.billNum" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.billNum"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="partType" label="零件类型"> <el-form-item prop="partType" label="零件类型">
<el-input <el-input v-model="listQuery.partType" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.partType"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -37,14 +20,8 @@
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="HostSN"> <el-form-item prop="HostSN">
<el-input <el-input v-model="listQuery.HostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.HostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -66,106 +43,36 @@
</el-form-item> --> </el-form-item> -->
<el-form-item label="打印日期"> <el-form-item label="打印日期">
<el-date-picker <el-date-picker v-model="PrintTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="PrintTimeValue" type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']"></el-date-picker>
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item style="margin-top: -20px"> <el-form-item style="margin-top: -20px">
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleUpdate()" style="visibility: collapse;">打印当前页</el-button>
size="mini" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleUpdateall()">打印全部</el-button>
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleUpdate()"
style="visibility: collapse;"
>打印当前页</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleUpdateall()"
>打印全部</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px"></el-table-column> <el-table-column type="selection" width="44px"></el-table-column>
<el-table-column type="expand" prop="details" label="详表"> <el-table-column type="expand" prop="details" label="详表">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column prop="knr" label="KNR订单号"></el-table-column> <el-table-column prop="knr" label="KNR订单号"></el-table-column>
<el-table-column prop="vin" label="底牌号"></el-table-column> <el-table-column prop="vin" label="底牌号"></el-table-column>
<el-table-column <el-table-column prop="hostSN" label="大众顺序号"></el-table-column>
prop="hostSN" <el-table-column prop="partCode" label="柱护板零件号"></el-table-column>
label="大众顺序号" <el-table-column prop="partCode2" label="柱护板零件号2"></el-table-column>
></el-table-column>
<el-table-column
prop="partCode"
label="柱护板零件号"
></el-table-column>
<el-table-column
prop="partCode2"
label="柱护板零件号2"
></el-table-column>
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -173,14 +80,8 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</div> </div>
@ -192,16 +93,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-MB", name: "M100Online-MB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -353,10 +265,26 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "装箱单号", prop: "billNum", width: 140 }); tempsTabs.push({
tempsTabs.push({ label: "单据顺号", prop: "billSerialNum", width: 120 }); label: "装箱单号",
tempsTabs.push({ label: "起始顺序号", prop: "beginHostSN", width: 120 }); prop: "billNum",
tempsTabs.push({ label: "结束顺序号", prop: "endHostSN", width: 120 }); width: 140
});
tempsTabs.push({
label: "单据顺号",
prop: "billSerialNum",
width: 120
});
tempsTabs.push({
label: "起始顺序号",
prop: "beginHostSN",
width: 120
});
tempsTabs.push({
label: "结束顺序号",
prop: "endHostSN",
width: 120
});
tempsTabs.push({ tempsTabs.push({
label: "零件类型", label: "零件类型",
prop: "partType", prop: "partType",
@ -415,7 +343,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -478,12 +408,12 @@ export default {
//this.listQuery.partType = this.listQuery.partType; //this.listQuery.partType = this.listQuery.partType;
var getdate5 = JSON.stringify(this.PrintTimeValue); var getdate5 = JSON.stringify(this.PrintTimeValue);
if (getdate5 != "[]") { if (getdate5 != "[]") {
this.listQuery.beginPrintDate = this.PrintTimeValue this.listQuery.beginPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[0] || undefined this.PrintTimeValue[0] || undefined :
: undefined; undefined;
this.listQuery.endPrintDate = this.PrintTimeValue this.listQuery.endPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[1] || undefined this.PrintTimeValue[1] || undefined :
: undefined; undefined;
} else { } else {
this.listQuery.beginPrintDate = undefined; this.listQuery.beginPrintDate = undefined;
this.listQuery.endPrintDate = undefined; this.listQuery.endPrintDate = undefined;
@ -565,30 +495,19 @@ export default {
JSON.stringify(this.fileQuery.dataname) JSON.stringify(this.fileQuery.dataname)
); );
debugger //debugger
let partNum = 0; let partNum = 0;
if(params.partType == "A上C上") if (params.partType == "A上C上") {
{
partNum = 1; partNum = 1;
} } else if (params.partType == "B柱下") {
else if(params.partType == "B柱下")
{
partNum = 2; partNum = 2;
} } else if (params.partType == "A柱下A中") {
else if(params.partType == "A柱下A中")
{
partNum = 3; partNum = 3;
} } else if (params.partType == "B柱上") {
else if(params.partType == "B柱上")
{
partNum = 4; partNum = 4;
} } else if (params.partType == "D柱") {
else if(params.partType == "D柱")
{
partNum = 5; partNum = 5;
} } else if (params.partType == "后轮上装饰板") {
else if(params.partType == "后轮上装饰板")
{
partNum = 6; partNum = 6;
} }
this.$axios this.$axios
@ -746,7 +665,11 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -767,7 +690,10 @@ export default {
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -779,19 +705,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -808,18 +754,19 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

318
vue/src/views/pg-fis/basedate/m100Online/ScrapMB.vue

@ -3,33 +3,16 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item> <el-form-item>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="billNum" label="装箱单号"> <el-form-item prop="billNum" label="装箱单号">
<el-input <el-input v-model="listQuery.billNum" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.billNum"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="partType" label="零件类型"> <el-form-item prop="partType" label="零件类型">
<el-input <el-input v-model="listQuery.partType" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.partType"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -37,14 +20,8 @@
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="HostSN"> <el-form-item prop="HostSN">
<el-input <el-input v-model="listQuery.HostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.HostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -66,118 +43,41 @@
</el-form-item> --> </el-form-item> -->
<el-form-item label="打印日期"> <el-form-item label="打印日期">
<el-date-picker <el-date-picker v-model="PrintTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="PrintTimeValue" type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']"></el-date-picker>
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search"
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button <el-button class="filter-item" type="danger" icon="el-icon-delete" size="mini" @click="print()">作废(支持批量)</el-button>
class="filter-item"
type="danger"
icon="el-icon-delete"
size="mini"
@click="print()"
>作废(支持批量)</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px"></el-table-column> <el-table-column type="selection" width="44px"></el-table-column>
<el-table-column type="expand" prop="details" label="详表"> <el-table-column type="expand" prop="details" label="详表">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column prop="knr" label="KNR订单号"></el-table-column> <el-table-column prop="knr" label="KNR订单号"></el-table-column>
<el-table-column prop="vin" label="底盘号"></el-table-column> <el-table-column prop="vin" label="底盘号"></el-table-column>
<el-table-column <el-table-column prop="hostSN" label="大众顺序号"></el-table-column>
prop="hostSN" <el-table-column prop="vehicleModel_DoorPlankCode" label="车型门板代码"></el-table-column>
label="大众顺序号" <el-table-column prop="topBoxPositionNum" label="上箱位号"></el-table-column>
></el-table-column> <el-table-column prop="topSAPMaterialNum" label="上箱位 SAP物料号"></el-table-column>
<el-table-column <el-table-column prop="topMaterialDescription" label="上箱位 物料描述"></el-table-column>
prop="vehicleModel_DoorPlankCode" <el-table-column prop="belowBoxPositionNum" label="下箱位号"></el-table-column>
label="车型门板代码" <el-table-column prop="belowSAPMaterialNum" label="下箱位 SAP物料号"></el-table-column>
></el-table-column> <el-table-column prop="belowMaterialDescription " label="下箱位 物料描述"></el-table-column>
<el-table-column
prop="topBoxPositionNum"
label="上箱位号"
></el-table-column>
<el-table-column
prop="topSAPMaterialNum"
label="上箱位 SAP物料号"
></el-table-column>
<el-table-column
prop="topMaterialDescription"
label="上箱位 物料描述"
></el-table-column>
<el-table-column
prop="belowBoxPositionNum"
label="下箱位号"
></el-table-column>
<el-table-column
prop="belowSAPMaterialNum"
label="下箱位 SAP物料号"
></el-table-column>
<el-table-column
prop="belowMaterialDescription "
label="下箱位 物料描述"
></el-table-column>
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -185,64 +85,24 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
<div> <div>
<el-dialog <el-dialog title="作废信息" append-to-body="true" :visible.sync="dialogTableVisible">
title="作废信息"
append-to-body="true"
:visible.sync="dialogTableVisible"
>
<el-table :data="zflist" class="dialogDiv"> <el-table :data="zflist" class="dialogDiv">
<el-table-column <el-table-column property="billNum" label="装箱单号" width="105"></el-table-column>
property="billNum" <el-table-column property="billSerialNum" label="单据顺号" width="95"></el-table-column>
label="装箱单号" <el-table-column property="billLocation" label="左或右" width="100"></el-table-column>
width="105" <el-table-column property="providerCode" label="供应商厂家代码" width="100"></el-table-column>
></el-table-column> <el-table-column property="partType" label="零件类型" width="100"></el-table-column>
<el-table-column <el-table-column property="capacity" label="器具容量" width="110"></el-table-column>
property="billSerialNum" <el-table-column property="printDate" label="打印日期" width="90"></el-table-column>
label="单据顺号"
width="95"
></el-table-column>
<el-table-column
property="billLocation"
label="左或右"
width="100"
></el-table-column>
<el-table-column
property="providerCode"
label="供应商厂家代码"
width="100"
></el-table-column>
<el-table-column
property="partType"
label="零件类型"
width="100"
></el-table-column>
<el-table-column
property="capacity"
label="器具容量"
width="110"
></el-table-column>
<el-table-column
property="printDate"
label="打印日期"
width="90"
></el-table-column>
</el-table> </el-table>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="dialogTableVisible = false" <el-button type="text" @click="dialogTableVisible = false">取消</el-button>
>取消</el-button
>
<el-button type="primary" @click="handleDelete"> </el-button> <el-button type="primary" @click="handleDelete"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
@ -256,16 +116,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-MB", name: "M100Online-MB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -417,10 +288,26 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "装箱单号", prop: "billNum", width: 150 }); tempsTabs.push({
tempsTabs.push({ label: "单据顺号", prop: "billSerialNum", width: 115 }); label: "装箱单号",
tempsTabs.push({ label: "起始顺序号", prop: "beginHostSN", width: 115 }); prop: "billNum",
tempsTabs.push({ label: "结束顺序号", prop: "endHostSN", width: 120 }); width: 150
});
tempsTabs.push({
label: "单据顺号",
prop: "billSerialNum",
width: 115
});
tempsTabs.push({
label: "起始顺序号",
prop: "beginHostSN",
width: 115
});
tempsTabs.push({
label: "结束顺序号",
prop: "endHostSN",
width: 120
});
tempsTabs.push({ tempsTabs.push({
label: "左或右", label: "左或右",
prop: "billLocation", prop: "billLocation",
@ -480,7 +367,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -543,12 +432,12 @@ export default {
this.listQuery.partType = this.listQuery.partType; this.listQuery.partType = this.listQuery.partType;
var getdate5 = JSON.stringify(this.PrintTimeValue); var getdate5 = JSON.stringify(this.PrintTimeValue);
if (getdate5 != "[]") { if (getdate5 != "[]") {
this.listQuery.beginPrintDate = this.PrintTimeValue this.listQuery.beginPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[0] || undefined this.PrintTimeValue[0] || undefined :
: undefined; undefined;
this.listQuery.endPrintDate = this.PrintTimeValue this.listQuery.endPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[1] || undefined this.PrintTimeValue[1] || undefined :
: undefined; undefined;
} else { } else {
this.listQuery.beginPrintDate = undefined; this.listQuery.beginPrintDate = undefined;
this.listQuery.endPrintDate = undefined; this.listQuery.endPrintDate = undefined;
@ -808,7 +697,11 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -829,7 +722,10 @@ export default {
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -841,19 +737,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -870,22 +786,24 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
.dialogDiv { .dialogDiv {
max-height: 300px; max-height: 300px;
overflow: auto; overflow: auto;
} }
</style> </style>

289
vue/src/views/pg-fis/basedate/m100Online/ScrapZHB.vue

@ -3,33 +3,16 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item> <el-form-item>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="billNum" label="装箱单号"> <el-form-item prop="billNum" label="装箱单号">
<el-input <el-input v-model="listQuery.billNum" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.billNum"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="partType" label="零件类型"> <el-form-item prop="partType" label="零件类型">
<el-input <el-input v-model="listQuery.partType" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.partType"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -37,14 +20,8 @@
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="HostSN"> <el-form-item prop="HostSN">
<el-input <el-input v-model="listQuery.HostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.HostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -78,98 +55,36 @@
</el-form-item> --> </el-form-item> -->
<el-form-item label="打印日期"> <el-form-item label="打印日期">
<el-date-picker <el-date-picker v-model="PrintTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="PrintTimeValue" type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']"></el-date-picker>
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search"
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button <el-button class="filter-item" type="danger" icon="el-icon-delete" size="mini" @click=" print()">作废(支持批量)</el-button>
class="filter-item"
type="danger"
icon="el-icon-delete"
size="mini"
@click=" print()"
>作废(支持批量)</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px"></el-table-column> <el-table-column type="selection" width="44px"></el-table-column>
<el-table-column type="expand" prop="details" label="详表"> <el-table-column type="expand" prop="details" label="详表">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column prop="knr" label="KNR订单号"></el-table-column> <el-table-column prop="knr" label="KNR订单号"></el-table-column>
<el-table-column prop="vin" label="底牌号"></el-table-column> <el-table-column prop="vin" label="底牌号"></el-table-column>
<el-table-column <el-table-column prop="hostSN" label="大众顺序号"></el-table-column>
prop="hostSN" <el-table-column prop="partCode" label="柱护板零件号"></el-table-column>
label="大众顺序号" <el-table-column prop="partCode2" label="柱护板零件号2"></el-table-column>
></el-table-column>
<el-table-column
prop="partCode"
label="柱护板零件号"
></el-table-column>
<el-table-column
prop="partCode2"
label="柱护板零件号2"
></el-table-column>
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -177,65 +92,23 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
<div> <div>
<el-dialog <el-dialog title="作废信息" append-to-body="true" :visible.sync="dialogTableVisible">
title="作废信息"
append-to-body="true"
:visible.sync="dialogTableVisible"
>
<el-table :data="zflist" class="dialogDiv"> <el-table :data="zflist" class="dialogDiv">
<el-table-column <el-table-column property="billNum" label="装箱单号" width="100"></el-table-column>
property="billNum" <el-table-column property="billSerialNum" label="单据顺号" width="100"></el-table-column>
label="装箱单号" <el-table-column property="billLocation" label="左或右" width="100"></el-table-column>
width="100" <el-table-column property="providerCode" label="供应商厂家代码" width="100"></el-table-column>
></el-table-column> <el-table-column property="partType" label="零件类型" width="100"></el-table-column>
<el-table-column <el-table-column property="capacity" label="器具容量" width="100"></el-table-column>
property="billSerialNum" <el-table-column property="printDate" label="打印日期" width="100"></el-table-column>
label="单据顺号"
width="100"
></el-table-column>
<el-table-column
property="billLocation"
label="左或右"
width="100"
></el-table-column>
<el-table-column
property="providerCode"
label="供应商厂家代码"
width="100"
></el-table-column>
<el-table-column
property="partType"
label="零件类型"
width="100"
></el-table-column>
<el-table-column
property="capacity"
label="器具容量"
width="100"
></el-table-column>
<el-table-column
property="printDate"
label="打印日期"
width="100"
></el-table-column>
</el-table> </el-table>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="dialogTableVisible = false" <el-button type="text" @click="dialogTableVisible = false">取消</el-button>
>取消</el-button
>
<el-button type="primary" @click="handleDelete"> </el-button> <el-button type="primary" @click="handleDelete"> </el-button>
</div> </div>
</el-dialog> </el-dialog>
@ -249,16 +122,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-MB", name: "M100Online-MB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -416,10 +300,22 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "装箱单号", prop: "billNum", width: 140 }); tempsTabs.push({
label: "装箱单号",
prop: "billNum",
width: 140
});
//tempsTabs.push({ label: "", prop: "billSerialNum", width: 120 }); //tempsTabs.push({ label: "", prop: "billSerialNum", width: 120 });
tempsTabs.push({ label: "起始顺序号", prop: "beginHostSN", width: 120 }); tempsTabs.push({
tempsTabs.push({ label: "结束顺序号", prop: "endHostSN", width: 120 }); label: "起始顺序号",
prop: "beginHostSN",
width: 120
});
tempsTabs.push({
label: "结束顺序号",
prop: "endHostSN",
width: 120
});
tempsTabs.push({ tempsTabs.push({
label: "左或右", label: "左或右",
prop: "billLocation", prop: "billLocation",
@ -479,7 +375,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -541,12 +439,12 @@ export default {
this.listQuery.endHostSN = this.listQuery.endHostSN; this.listQuery.endHostSN = this.listQuery.endHostSN;
var getdate5 = JSON.stringify(this.PrintTimeValue); var getdate5 = JSON.stringify(this.PrintTimeValue);
if (getdate5 != "[]") { if (getdate5 != "[]") {
this.listQuery.beginPrintDate = this.PrintTimeValue this.listQuery.beginPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[0] || undefined this.PrintTimeValue[0] || undefined :
: undefined; undefined;
this.listQuery.endPrintDate = this.PrintTimeValue this.listQuery.endPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[1] || undefined this.PrintTimeValue[1] || undefined :
: undefined; undefined;
} else { } else {
this.listQuery.beginPrintDate = undefined; this.listQuery.beginPrintDate = undefined;
this.listQuery.endPrintDate = undefined; this.listQuery.endPrintDate = undefined;
@ -813,7 +711,11 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -834,7 +736,10 @@ export default {
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -846,19 +751,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -875,22 +800,24 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
.dialogDiv { .dialogDiv {
max-height: 300px; max-height: 300px;
overflow: auto; overflow: auto;
} }
</style> </style>

217
vue/src/views/pg-fis/basedate/m100Online/budaMB.vue

@ -3,36 +3,19 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginHostSN"> <el-form-item prop="beginHostSN">
<el-input <el-input v-model="listQuery.beginHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.beginHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col> <el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endHostSN"> <el-form-item prop="endHostSN">
<el-input <el-input v-model="listQuery.endHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.endHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -40,104 +23,40 @@
<el-form-item label="底盘号码"> <el-form-item label="底盘号码">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginVin"> <el-form-item prop="beginVin">
<el-input <el-input v-model="listQuery.beginVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.beginVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col> <el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endVin"> <el-form-item prop="endVin">
<el-input <el-input v-model="listQuery.endVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.endVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="上线日期"> <el-form-item label="上线日期">
<el-date-picker <el-date-picker v-model="listQuery.onlineTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="listQuery.onlineTimeValue" type="datetimerange" :default-time="['00:00:00', '23:59:59']" range-separator="-" start-placeholder="开始日期"
size="small" end-placeholder="结束日期"></el-date-picker>
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
:default-time="['00:00:00', '23:59:59']"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleReplenishPrint()">补打(支持多选)</el-button>
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleReplenishPrint()"
>补打(支持多选)</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px" sortable="false"></el-table-column> <el-table-column type="selection" width="44px" sortable="false"></el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -145,14 +64,8 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</div> </div>
@ -164,16 +77,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-budaMB", name: "M100Online-budaMB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -318,7 +242,11 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "大众顺序号", prop: "hostSN", width: 80 }); tempsTabs.push({
label: "大众顺序号",
prop: "hostSN",
width: 80
});
tempsTabs.push({ tempsTabs.push({
label: "底盘号", label: "底盘号",
prop: "vin", prop: "vin",
@ -402,7 +330,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -519,7 +449,7 @@ export default {
}); });
console.log("门板补打输入参数:" + JSON.stringify(params)); console.log("门板补打输入参数:" + JSON.stringify(params));
debugger // //debugger //
// this.$axios // this.$axios
// .posts("/api/newjit/bill-m100/print-menban-packing-list", params) // .posts("/api/newjit/bill-m100/print-menban-packing-list", params)
// .then((response) => { // .then((response) => {
@ -555,9 +485,8 @@ export default {
/** /**
* 保存加载打印门板 * 保存加载打印门板
*/ */
private_printMenBan(input) private_printMenBan(input) {
{ //debugger
debugger
this.$axios this.$axios
.posts( .posts(
"/api/newjit/bill-m100/save-menban-report", "/api/newjit/bill-m100/save-menban-report",
@ -639,7 +568,11 @@ export default {
/** DataGrid格式化显示字段 */ /** DataGrid格式化显示字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -664,7 +597,10 @@ export default {
* @param {Object} data * @param {Object} data
*/ */
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -683,19 +619,39 @@ export default {
/** /**
* DataGrid通过回调控制style * DataGrid通过回调控制style
*/ */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** DataGrid通过回调控制表头style */ /** DataGrid通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
@ -719,18 +675,19 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

226
vue/src/views/pg-fis/basedate/m100Online/budaZHB.vue

@ -3,36 +3,19 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginHostSN"> <el-form-item prop="beginHostSN">
<el-input <el-input v-model="listQuery.beginHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.beginHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col> <el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endHostSN"> <el-form-item prop="endHostSN">
<el-input <el-input v-model="listQuery.endHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.endHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -40,104 +23,40 @@
<el-form-item label="底盘号码"> <el-form-item label="底盘号码">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginVin"> <el-form-item prop="beginVin">
<el-input <el-input v-model="listQuery.beginVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.beginVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col> <el-col class="line" :span="2" style="width: 12px; text-align: center">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endVin"> <el-form-item prop="endVin">
<el-input <el-input v-model="listQuery.endVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.endVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="上线日期"> <el-form-item label="上线日期">
<el-date-picker <el-date-picker v-model="listQuery.onlineTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="listQuery.onlineTimeValue" type="datetimerange" :default-time="['00:00:00', '23:59:59']" range-separator="-" start-placeholder="开始日期"
size="small" end-placeholder="结束日期"></el-date-picker>
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
:default-time="['00:00:00', '23:59:59']"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleReplenishPrint()">补打(支持多选)</el-button>
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleReplenishPrint()"
>补打(支持多选)</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightZHB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightZHB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px" sortable="false"></el-table-column> <el-table-column type="selection" width="44px" sortable="false"></el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -145,14 +64,8 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</div> </div>
@ -164,16 +77,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-budaZHB", name: "M100Online-budaZHB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -299,7 +223,7 @@ export default {
watch: { watch: {
customerInfosZHB: { customerInfosZHB: {
handler(newVal) { handler(newVal) {
debugger //debugger
console.log("柱护板-接收的父组件的值:" + JSON.stringify(newVal)); console.log("柱护板-接收的父组件的值:" + JSON.stringify(newVal));
if (newVal == "" || newVal == "undefined") { if (newVal == "" || newVal == "undefined") {
//TODO //TODO
@ -320,7 +244,11 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "大众顺序号", prop: "hostSN", width: 80 }); tempsTabs.push({
label: "大众顺序号",
prop: "hostSN",
width: 80
});
tempsTabs.push({ tempsTabs.push({
label: "底盘号", label: "底盘号",
prop: "vin", prop: "vin",
@ -404,7 +332,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -500,7 +430,7 @@ export default {
}, },
//- //-
handleReplenishPrint() { handleReplenishPrint() {
debugger //debugger
this.isEdit = true; this.isEdit = true;
if (this.multipleSelection == null || this.multipleSelection.length == 0) { if (this.multipleSelection == null || this.multipleSelection.length == 0) {
this.$message({ this.$message({
@ -562,9 +492,8 @@ export default {
/** /**
* 保存加载打印柱护板 * 保存加载打印柱护板
*/ */
private_printZhuHuBan(input) private_printZhuHuBan(input) {
{ //debugger
debugger
// //
// //
let _this = this; let _this = this;
@ -656,16 +585,17 @@ export default {
/** DataGrid格式化显示字段 */ /** DataGrid格式化显示字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property === "printBillNum") { if (column.property === "printBillNum") {
if (row[column.property] != null && row[column.property].length > 0) if (row[column.property] != null && row[column.property].length > 0) {
{
return "柱护板已打印" return "柱护板已打印"
} } else {
else
{
return "柱护板未打印" return "柱护板未打印"
} }
} }
@ -693,7 +623,10 @@ export default {
* @param {Object} data * @param {Object} data
*/ */
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -712,19 +645,39 @@ export default {
/** /**
* DataGrid通过回调控制style * DataGrid通过回调控制style
*/ */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** DataGrid通过回调控制表头style */ /** DataGrid通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
@ -748,18 +701,19 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

135
vue/src/views/pg-fis/basedate/m100Online/detail.vue

@ -2,28 +2,10 @@
<template> <template>
<div class="cr-body-content"> <div class="cr-body-content">
<!--表格渲染--> <!--表格渲染-->
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeight" :cell-style="cellStyle" :header-cell-style="headerRowStyle" size="small"
v-loading="listLoading" stripe border highlight-current-row style="width: 100%" @sort-change="sortChange" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeight"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%"
@sort-change="sortChange"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<!-- <el-table-column type="selection" width="44px"></el-table-column> --> <!-- <el-table-column type="selection" width="44px"></el-table-column> -->
<!-- <el-table-column <!-- <el-table-column
prop="总成名称" prop="总成名称"
@ -45,14 +27,8 @@
<el-table-column type="expand" prop="details"> <el-table-column type="expand" prop="details">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column <el-table-column prop="partCode" label="客户零件代码"></el-table-column>
prop="partCode" <el-table-column prop="partNum" label="客户零件数量"></el-table-column>
label="客户零件代码"
></el-table-column>
<el-table-column
prop="partNum"
label="客户零件数量"
></el-table-column>
<el-table-column prop="description" label="描述"></el-table-column> <el-table-column prop="description" label="描述"></el-table-column>
<el-table-column prop="isKey" label="是否Key件"> <el-table-column prop="isKey" label="是否Key件">
<template slot-scope="scope"> <template slot-scope="scope">
@ -67,38 +43,19 @@
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column prop="erpAssemblyVersion" label="总成版本号" sortable width="360">
prop="erpAssemblyVersion"
label="总成版本号"
sortable
width="360"
>
</el-table-column> </el-table-column>
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" :page.sync="page" :limit.sync="listQuery.MaxResultCount"
v-show="totalCount > 0" @pagination="getList" />
:total="totalCount"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</template> </template>
@ -107,13 +64,21 @@
import Pagination from "@/components/Pagination"; // secondary package based on el-pagination import Pagination from "@/components/Pagination"; // secondary package based on el-pagination
import permission from "@/directive/permission/index.js"; import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import Detail from "./detail"; import Detail from "./detail";
export default { export default {
name: "sendUnsettledDiffReport", name: "sendUnsettledDiffReport",
components: { Pagination, CRMTableHead, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -137,9 +102,11 @@ export default {
crmType: "stockFisDiffReport", crmType: "stockFisDiffReport",
rules: { rules: {
// //
erpMaterialCode: [ erpMaterialCode: [{
{ required: true, message: "必须输入!", trigger: "blur" }, required: true,
], message: "必须输入!",
trigger: "blur"
}, ],
}, },
expands: [], //id expands: [], //id
getRowKeys: (row) => { getRowKeys: (row) => {
@ -167,8 +134,7 @@ export default {
}, },
}, },
listQuery: { listQuery: {
Filters: [ Filters: [{
{
logic: 0, logic: 0,
column: "Enabled", column: "Enabled",
action: 0, action: 0,
@ -202,7 +168,7 @@ export default {
watch: { watch: {
customerInfos: { customerInfos: {
handler(newVal) { handler(newVal) {
debugger //debugger
if (newVal == "" || newVal == "undefined") { if (newVal == "" || newVal == "undefined") {
//TODO //TODO
} else { } else {
@ -273,7 +239,10 @@ export default {
this.listLoading = true; this.listLoading = true;
console.log("详表条件:" + JSON.stringify(this.customerInfo.parentId)); console.log("详表条件:" + JSON.stringify(this.customerInfo.parentId));
//alert("" + JSON.stringify(this.customerInfo.parentId)); //alert("" + JSON.stringify(this.customerInfo.parentId));
let vehicleAssemblyId = { vehicleAssemblyId: this.customerInfo.parentId, billId: this.customerInfo.billId }; let vehicleAssemblyId = {
vehicleAssemblyId: this.customerInfo.parentId,
billId: this.customerInfo.billId
};
this.$axios this.$axios
.gets("/api/newjit/assembly-cfg-vehicle/list", vehicleAssemblyId) .gets("/api/newjit/assembly-cfg-vehicle/list", vehicleAssemblyId)
.then((response) => { .then((response) => {
@ -307,7 +276,10 @@ export default {
resetQuery() {}, resetQuery() {},
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -319,27 +291,47 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if ( if (
column.property === "fisQty" || column.property === "fisQty" ||
column.property === "diffQty" || column.property === "diffQty" ||
column.property === "stockQty" column.property === "stockQty"
) { ) {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if ( if (
column.property === "fisQty" || column.property === "fisQty" ||
column.property === "diffQty" || column.property === "diffQty" ||
column.property === "stockQty" column.property === "stockQty"
) { ) {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -354,4 +346,3 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
</style> </style>

292
vue/src/views/pg-fis/basedate/m100Online/detailMB.vue

@ -3,33 +3,16 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item> <el-form-item>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="billNum" label="装箱单号"> <el-form-item prop="billNum" label="装箱单号">
<el-input <el-input v-model="listQuery.billNum" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.billNum"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="partType" label="零件类型"> <el-form-item prop="partType" label="零件类型">
<el-input <el-input v-model="listQuery.partType" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.partType"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -37,27 +20,15 @@
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginHostSN"> <el-form-item prop="beginHostSN">
<el-input <el-input v-model="listQuery.beginHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.beginHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2">-</el-col> <el-col class="line" :span="2">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endHostSN"> <el-form-item prop="endHostSN">
<el-input <el-input v-model="listQuery.endHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.endHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -65,151 +36,55 @@
<el-form-item label="底盘号码"> <el-form-item label="底盘号码">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginVin"> <el-form-item prop="beginVin">
<el-input <el-input v-model="listQuery.beginVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.beginVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2">-</el-col> <el-col class="line" :span="2">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endVin"> <el-form-item prop="endVin">
<el-input <el-input v-model="listQuery.endVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.endVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="打印日期"> <el-form-item label="打印日期">
<el-date-picker <el-date-picker v-model="PrintTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="PrintTimeValue" type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']"></el-date-picker>
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item style="margin-top: -20px"> <el-form-item style="margin-top: -20px">
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleUpdate()">重打(只支持单选)</el-button>
size="mini" <el-button class="filter-item" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete()">作废(支持批量)</el-button>
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleUpdate()"
>重打(只支持单选)</el-button
>
<el-button
class="filter-item"
type="danger"
icon="el-icon-delete"
size="mini"
@click="handleDelete()"
>作废(支持批量)</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px"></el-table-column> <el-table-column type="selection" width="44px"></el-table-column>
<el-table-column type="expand" prop="details" label="详表"> <el-table-column type="expand" prop="details" label="详表">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column prop="knr" label="KNR订单号"></el-table-column> <el-table-column prop="knr" label="KNR订单号"></el-table-column>
<el-table-column prop="vin" label="底牌号"></el-table-column> <el-table-column prop="vin" label="底牌号"></el-table-column>
<el-table-column <el-table-column prop="hostSN" label="大众顺序号"></el-table-column>
prop="hostSN" <el-table-column prop="vehicleModel_DoorPlankCode" label="车型门板代码"></el-table-column>
label="大众顺序号" <el-table-column prop="topBoxPositionNum" label="上箱位号"></el-table-column>
></el-table-column> <el-table-column prop="topSAPMaterialNum" label="上箱位 SAP物料号"></el-table-column>
<el-table-column <el-table-column prop="topMaterialDescription" label="上箱位 物料描述"></el-table-column>
prop="vehicleModel_DoorPlankCode" <el-table-column prop="belowBoxPositionNum" label="下箱位号"></el-table-column>
label="车型门板代码" <el-table-column prop="belowSAPMaterialNum" label="下箱位 SAP物料号"></el-table-column>
></el-table-column> <el-table-column prop="belowMaterialDescription " label="下箱位 物料描述"></el-table-column>
<el-table-column
prop="topBoxPositionNum"
label="上箱位号"
></el-table-column>
<el-table-column
prop="topSAPMaterialNum"
label="上箱位 SAP物料号"
></el-table-column>
<el-table-column
prop="topMaterialDescription"
label="上箱位 物料描述"
></el-table-column>
<el-table-column
prop="belowBoxPositionNum"
label="下箱位号"
></el-table-column>
<el-table-column
prop="belowSAPMaterialNum"
label="下箱位 SAP物料号"
></el-table-column>
<el-table-column
prop="belowMaterialDescription "
label="下箱位 物料描述"
></el-table-column>
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -217,14 +92,8 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</div> </div>
@ -236,16 +105,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-MB", name: "M100Online-MB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -397,8 +277,16 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "装箱单号", prop: "billNum", width: 140 }); tempsTabs.push({
tempsTabs.push({ label: "单据顺号", prop: "billSerialNum", width: 120 }); label: "装箱单号",
prop: "billNum",
width: 140
});
tempsTabs.push({
label: "单据顺号",
prop: "billSerialNum",
width: 120
});
tempsTabs.push({ tempsTabs.push({
label: "左或右", label: "左或右",
prop: "billLocation", prop: "billLocation",
@ -458,7 +346,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -519,12 +409,12 @@ export default {
this.listQuery.endHostSN = this.listQuery.endHostSN; this.listQuery.endHostSN = this.listQuery.endHostSN;
var getdate5 = JSON.stringify(this.PrintTimeValue); var getdate5 = JSON.stringify(this.PrintTimeValue);
if (getdate5 != "[]") { if (getdate5 != "[]") {
this.listQuery.beginPrintDate = this.PrintTimeValue this.listQuery.beginPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[0] || undefined this.PrintTimeValue[0] || undefined :
: undefined; undefined;
this.listQuery.endPrintDate = this.PrintTimeValue this.listQuery.endPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[1] || undefined this.PrintTimeValue[1] || undefined :
: undefined; undefined;
} else { } else {
this.listQuery.beginPrintDate = undefined; this.listQuery.beginPrintDate = undefined;
this.listQuery.endPrintDate = undefined; this.listQuery.endPrintDate = undefined;
@ -686,7 +576,11 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -707,7 +601,10 @@ export default {
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -719,19 +616,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -748,18 +665,19 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

270
vue/src/views/pg-fis/basedate/m100Online/detailZHB.vue

@ -3,33 +3,16 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<el-form-item> <el-form-item>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="billNum" label="装箱单号"> <el-form-item prop="billNum" label="装箱单号">
<el-input <el-input v-model="listQuery.billNum" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.billNum"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="12"> <el-col :span="12">
<el-form-item prop="partType" label="零件类型"> <el-form-item prop="partType" label="零件类型">
<el-input <el-input v-model="listQuery.partType" placeholder="" clearable size="small" style="width: 140px" />
v-model="listQuery.partType"
placeholder=""
clearable
size="small"
style="width: 140px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -37,27 +20,15 @@
<el-form-item label="大众顺序号"> <el-form-item label="大众顺序号">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginHostSN"> <el-form-item prop="beginHostSN">
<el-input <el-input v-model="listQuery.beginHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.beginHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2">-</el-col> <el-col class="line" :span="2">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endHostSN"> <el-form-item prop="endHostSN">
<el-input <el-input v-model="listQuery.endHostSN" placeholder="" clearable size="small" style="width: 170px"
v-model="listQuery.endHostSN" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 170px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
@ -65,131 +36,50 @@
<el-form-item label="底盘号码"> <el-form-item label="底盘号码">
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="beginVin"> <el-form-item prop="beginVin">
<el-input <el-input v-model="listQuery.beginVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.beginVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col class="line" :span="2">-</el-col> <el-col class="line" :span="2">-</el-col>
<el-col :span="11"> <el-col :span="11">
<el-form-item prop="endVin"> <el-form-item prop="endVin">
<el-input <el-input v-model="listQuery.endVin" placeholder="" clearable size="small" style="width: 140px"
v-model="listQuery.endVin" @keyup.enter.native="handleQuery" />
placeholder=""
clearable
size="small"
style="width: 140px"
@keyup.enter.native="handleQuery"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-form-item> </el-form-item>
<el-form-item label="打印日期"> <el-form-item label="打印日期">
<el-date-picker <el-date-picker v-model="PrintTimeValue" size="small" style="width: 380px" value-format="yyyy-MM-dd HH:mm:ss"
v-model="PrintTimeValue" type="datetimerange" range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期" :default-time="['00:00:00', '23:59:59']"></el-date-picker>
size="small"
style="width: 380px"
value-format="yyyy-MM-dd HH:mm:ss"
type="datetimerange"
range-separator="-"
start-placeholder="开始日期"
end-placeholder="结束日期"
:default-time="['00:00:00', '23:59:59']"
></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item style="margin-top: -20px"> <el-form-item style="margin-top: -20px">
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button class="filter-item" size="mini" type="success" icon="el-icon-s-shop" @click="handleUpdate()">重打(只支持单选)</el-button>
size="mini" <el-button class="filter-item" type="danger" icon="el-icon-delete" size="mini" @click="handleDelete()">作废(支持批量)</el-button>
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
class="filter-item"
size="mini"
type="success"
icon="el-icon-s-shop"
@click="handleUpdate()"
>重打(只支持单选)</el-button
>
<el-button
class="filter-item"
type="danger"
icon="el-icon-delete"
size="mini"
@click="handleDelete()"
>作废(支持批量)</el-button
>
</el-form-item> </el-form-item>
</el-form> </el-form>
</flexbox> </flexbox>
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeightMB" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%; margin-top: -25px" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick" :row-key="getRowKeys" :expand-row-keys="expands" @expand-change="exChange">
element-loading-spinner="el-icon-loading"
class="cr-table"
:data="list"
:height="tableHeightMB"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%; margin-top: -25px"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
:row-key="getRowKeys"
:expand-row-keys="expands"
@expand-change="exChange"
>
<el-table-column type="selection" width="44px"></el-table-column> <el-table-column type="selection" width="44px"></el-table-column>
<el-table-column type="expand" prop="details" label="详表"> <el-table-column type="expand" prop="details" label="详表">
<template slot-scope="scope"> <template slot-scope="scope">
<el-table :data="scope.row.details"> <el-table :data="scope.row.details">
<el-table-column prop="knr" label="KNR订单号"></el-table-column> <el-table-column prop="knr" label="KNR订单号"></el-table-column>
<el-table-column prop="vin" label="底牌号"></el-table-column> <el-table-column prop="vin" label="底牌号"></el-table-column>
<el-table-column <el-table-column prop="hostSN" label="大众顺序号"></el-table-column>
prop="hostSN" <el-table-column prop="partCode" label="柱护板零件号"></el-table-column>
label="大众顺序号" <el-table-column prop="partCode2" label="柱护板零件号2"></el-table-column>
></el-table-column>
<el-table-column
prop="partCode"
label="柱护板零件号"
></el-table-column>
<el-table-column
prop="partCode2"
label="柱护板零件号2"
></el-table-column>
</el-table> </el-table>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -197,14 +87,8 @@
</el-table> </el-table>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="margin-bottom: -5px; float: right" :page.sync="page"
v-show="totalCount > 0" :limit.sync="listQuery.MaxResultCount" @pagination="getList" />
:total="totalCount"
style="margin-bottom: -5px; float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
</div> </div>
</div> </div>
</div> </div>
@ -216,16 +100,27 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
export default { export default {
name: "M100Online-MB", name: "M100Online-MB",
components: { Pagination, CRMTableHead, importExcel, Detail }, components: {
directives: { permission }, Pagination,
CRMTableHead,
importExcel,
Detail
},
directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -378,8 +273,16 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "装箱单号", prop: "billNum", width: 140 }); tempsTabs.push({
tempsTabs.push({ label: "单据顺号", prop: "billSerialNum", width: 120 }); label: "装箱单号",
prop: "billNum",
width: 140
});
tempsTabs.push({
label: "单据顺号",
prop: "billSerialNum",
width: 120
});
tempsTabs.push({ tempsTabs.push({
label: "左或右", label: "左或右",
prop: "billLocation", prop: "billLocation",
@ -439,7 +342,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -461,7 +366,8 @@ export default {
ifr.setAttribute("name", "printPdf" + date); ifr.setAttribute("name", "printPdf" + date);
ifr.src = window.URL.createObjectURL(blob); ifr.src = window.URL.createObjectURL(blob);
document.body.appendChild(ifr); document.body.appendChild(ifr);
this.doPrint("printPdf" + date);alert("ifr.src:"+JSON.stringify(ifr.src)) this.doPrint("printPdf" + date);
alert("ifr.src:" + JSON.stringify(ifr.src))
window.URL.revokeObjectURL(ifr.src); // URL window.URL.revokeObjectURL(ifr.src); // URL
this.dialogFormVisible = false; this.dialogFormVisible = false;
}, },
@ -500,12 +406,12 @@ export default {
this.listQuery.endHostSN = this.listQuery.endHostSN; this.listQuery.endHostSN = this.listQuery.endHostSN;
var getdate5 = JSON.stringify(this.PrintTimeValue); var getdate5 = JSON.stringify(this.PrintTimeValue);
if (getdate5 != "[]") { if (getdate5 != "[]") {
this.listQuery.beginPrintDate = this.PrintTimeValue this.listQuery.beginPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[0] || undefined this.PrintTimeValue[0] || undefined :
: undefined; undefined;
this.listQuery.endPrintDate = this.PrintTimeValue this.listQuery.endPrintDate = this.PrintTimeValue ?
? this.PrintTimeValue[1] || undefined this.PrintTimeValue[1] || undefined :
: undefined; undefined;
} else { } else {
this.listQuery.beginPrintDate = undefined; this.listQuery.beginPrintDate = undefined;
this.listQuery.endPrintDate = undefined; this.listQuery.endPrintDate = undefined;
@ -668,7 +574,11 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "printDate" || column.property == "receiveTime") { if (column.property == "printDate" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -689,7 +599,10 @@ export default {
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -701,19 +614,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -730,18 +663,19 @@ export default {
<style lang="scss" scoped> <style lang="scss" scoped>
@import "../../../pg-fis/styles/crmtable.scss"; @import "../../../pg-fis/styles/crmtable.scss";
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

2
vue/src/views/pg-fis/basedate/m100Online/index.vue

@ -898,7 +898,7 @@ export default {
setTimeout(() => { setTimeout(() => {
// //
this.listLoading = false; this.listLoading = false;
debugger //debugger
}, 500); }, 500);
}) })
.catch(() => { .catch(() => {

614
vue/src/views/pg-fis/basedate/m100Online/normalPritIndex.vue

@ -4,155 +4,54 @@
<div class="cr-body-content"> <div class="cr-body-content">
<div ref="box"> <div ref="box">
<flexbox class="content-header"> <flexbox class="content-header">
<el-form <el-form :model="listQuery" ref="queryForm" v-show="showSearch" :inline="true">
:model="listQuery"
ref="queryForm"
v-show="showSearch"
:inline="true"
>
<!-- <el-row> --> <!-- <el-row> -->
<el-form-item label="生产线:" prop="productType"> <el-form-item label="生产线:" prop="productType">
<el-select <el-select v-model="listQuery.productType" clearable placeholder="请选择" size="medium" style="margin-right: 15px"
v-model="listQuery.productType" @change="ptypeselectChange">
clearable <el-option v-for="item in productTypeList" :key="item.id" :label="item.name" :value="item.id" />
placeholder="请选择"
size="medium"
style="margin-right: 15px"
@change="ptypeselectChange"
>
<el-option
v-for="item in productTypeList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="" prop="productLine"> <el-form-item label="" prop="productLine">
<el-select <el-select v-model="listQuery.productLine" clearable placeholder="请选择" size="medium" style="margin-right: 15px"
v-model="listQuery.productLine" @change="valueselectChange">
clearable <el-option v-for="item in PLChildList" :key="item.id" :label="item.productLineName" :value="item.productLineCode" />
placeholder="请选择"
size="medium"
style="margin-right: 15px"
@change="valueselectChange"
>
<el-option
v-for="item in PLChildList"
:key="item.id"
:label="item.productLineName"
:value="item.productLineCode"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="大众工位" prop="fwStation" v-show="this.listQuery.productType === 2"> <el-form-item label="大众工位" prop="fwStation" v-show="this.listQuery.productType === 2">
<el-select <el-select v-model="listQuery.fwStation" clearable placeholder="请选择" size="medium" style="margin-right: 15px"
v-model="listQuery.fwStation" @change="fwStation_selectChange">
clearable <el-option v-for="item in fwStationList" :key="item.id" :label="item.name" :value="item.id" />
placeholder="请选择"
size="medium"
style="margin-right: 15px"
@change="fwStation_selectChange"
>
<el-option
v-for="item in fwStationList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button <el-button type="primary" icon="el-icon-search" size="mini" @click="handleFilter">搜索</el-button>
type="primary" <el-button icon="el-icon-refresh" size="mini" @click="resetQuery('queryForm')">重置</el-button>
icon="el-icon-search" <el-button type="warning" plain icon="el-icon-download" size="mini" style="margin-left: 15px" @click="handleDownload()">导出(Excel)
size="mini"
@click="handleFilter"
>搜索</el-button
>
<el-button
icon="el-icon-refresh"
size="mini"
@click="resetQuery('queryForm')"
>重置</el-button
>
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
style="margin-left: 15px"
@click="handleDownload()"
>导出(Excel)
</el-button> </el-button>
<el-button <el-button ref="btn1" type="primary" size="mini" style="margin-left: 15px" @click="print()">打印门板发货排序单
ref="btn1"
type="primary"
size="mini"
style="margin-left: 15px"
@click="print()"
>打印门板发货排序单
</el-button> </el-button>
<el-button <el-button v-show="false" @click="drawerMBPrint = true" size="mini" type="warning" plain>
v-show="false" <strong>重新打印门板</strong></el-button>
@click="drawerMBPrint = true" <el-button v-show="false" @click="drawerbudaMBPrint = true" size="mini" type="warning" plain>
size="mini" <strong>门板补打</strong></el-button>
type="warning" <el-button v-show="false" @click="drawerMBDelete = true" size="mini" type="danger" plain><strong>门板作废</strong></el-button>
plain
> <el-button v-show="this.listQuery.productType === 2" @click="drawerZHBPrint = true" size="mini" type="warning"
<strong>重新打印门板</strong></el-button plain>
> <strong>重新打印柱护板</strong></el-button>
<el-button
v-show="false"
@click="drawerbudaMBPrint = true" <el-button v-show="this.listQuery.productType === 2" @click="drawerbudaZHBPrint = true" size="mini" type="warning"
size="mini" plain>
type="warning" <strong>柱护板补打</strong></el-button>
plain
>
<strong>门板补打</strong></el-button <el-button v-show="this.listQuery.productType === 2" @click="drawerZHBDelete = true" size="mini" type="danger"
> plain><strong>柱护板作废</strong></el-button>
<el-button
v-show="false"
@click="drawerMBDelete = true"
size="mini"
type="danger"
plain
><strong>门板作废</strong></el-button
>
<el-button
v-show="this.listQuery.productType === 2"
@click="drawerZHBPrint = true"
size="mini"
type="warning"
plain
>
<strong>重新打印柱护板</strong></el-button
>
<el-button
v-show="this.listQuery.productType === 2"
@click="drawerbudaZHBPrint = true"
size="mini"
type="warning"
plain
>
<strong>柱护板补打</strong></el-button
>
<el-button
v-show="this.listQuery.productType === 2"
@click="drawerZHBDelete = true"
size="mini"
type="danger"
plain
><strong>柱护板作废</strong></el-button
>
<!-- <el-button icon="el-icon-refresh" size="mini" @click="open()" <!-- <el-button icon="el-icon-refresh" size="mini" @click="open()"
>测试</el-button >测试</el-button
>2Z >2Z
@ -160,14 +59,12 @@
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<div id="app"> <div id="app">
<div <div style="
style="
border: solid 1px darkgray; border: solid 1px darkgray;
border-radius: 5px; border-radius: 5px;
margin: 5px; margin: 5px;
padding: 5px; padding: 5px;
" ">
>
<span ref="sp01">{{ content01 }}</span> <span ref="sp01">{{ content01 }}</span>
&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
<span ref="sp05">{{ content05 }}</span> <span ref="sp05">{{ content05 }}</span>
@ -184,111 +81,50 @@
</flexbox> </flexbox>
</div> </div>
<!--门板重打--> <!--门板重打-->
<el-drawer <el-drawer title="门板重新打印" :visible.sync="drawerMBPrint" direction="rtl" size="65%">
title="门板重新打印"
:visible.sync="drawerMBPrint"
direction="rtl"
size="65%"
>
<RepetitionMB v-bind:customerInfosMB="customerInfosMB"></RepetitionMB> <RepetitionMB v-bind:customerInfosMB="customerInfosMB"></RepetitionMB>
</el-drawer> </el-drawer>
<!--门板补打--> <!--门板补打-->
<el-drawer <el-drawer title="门板补打" :visible.sync="drawerbudaMBPrint" direction="rtl" size="65%">
title="门板补打"
:visible.sync="drawerbudaMBPrint"
direction="rtl"
size="65%"
>
<budaMB v-bind:customerInfosMB="customerInfosMB"></budaMB> <budaMB v-bind:customerInfosMB="customerInfosMB"></budaMB>
</el-drawer> </el-drawer>
<!--门板作废--> <!--门板作废-->
<el-drawer <el-drawer title="门板作废" :visible.sync="drawerMBDelete" direction="rtl" @open="opens()" size="65%">
title="门板作废"
:visible.sync="drawerMBDelete"
direction="rtl"
@open="opens()"
size="65%"
>
<ScrapMB v-bind:customerInfosMB="customerInfosMB"></ScrapMB> <ScrapMB v-bind:customerInfosMB="customerInfosMB"></ScrapMB>
</el-drawer> </el-drawer>
<!--柱护板重打--> <!--柱护板重打-->
<el-drawer <el-drawer title="柱护板重新打印" :visible.sync="drawerZHBPrint" direction="rtl" size="65%">
title="柱护板重新打印"
:visible.sync="drawerZHBPrint"
direction="rtl"
size="65%"
>
<RepetitionZHB v-bind:customerInfosZHB="customerInfosZHB"></RepetitionZHB> <RepetitionZHB v-bind:customerInfosZHB="customerInfosZHB"></RepetitionZHB>
</el-drawer> </el-drawer>
<!--柱护板补打--> <!--柱护板补打-->
<el-drawer <el-drawer title="柱护板补打" :visible.sync="drawerbudaZHBPrint" direction="rtl" size="65%">
title="柱护板补打"
:visible.sync="drawerbudaZHBPrint"
direction="rtl"
size="65%"
>
<budaZHB v-bind:customerInfosZHB="customerInfosZHB"></budaZHB> <budaZHB v-bind:customerInfosZHB="customerInfosZHB"></budaZHB>
</el-drawer> </el-drawer>
<!--柱护板重打和作废--> <!--柱护板重打和作废-->
<el-drawer <el-drawer title="柱护板作废" :visible.sync="drawerZHBDelete" direction="rtl" size="65%">
title="柱护板作废"
:visible.sync="drawerZHBDelete"
direction="rtl"
size="65%"
>
<ScrapZHB v-bind:customerInfosZHB="customerInfosZHB"></ScrapZHB> <ScrapZHB v-bind:customerInfosZHB="customerInfosZHB"></ScrapZHB>
</el-drawer> </el-drawer>
<div class="l-table" style="margin-top: -15px"> <div class="l-table" style="margin-top: -15px">
<!--表格渲染--> <!--表格渲染-->
<el-table <el-table ref="multipleTable" v-loading="listLoading" element-loading-text="拼命加载中..." element-loading-spinner="el-icon-loading"
ref="multipleTable" class="cr-table" :data="list" :height="tableHeight" :cell-style="cellStyle" :header-cell-style="headerRowStyle"
v-loading="listLoading" size="small" stripe border highlight-current-row style="width: 100%" @sort-change="sortChange" @selection-change="handleSelectionChange"
element-loading-text="拼命加载中..." @row-click="handleRowClick">
element-loading-spinner="el-icon-loading" <el-table-column label="底盘号" prop="vin " sortable="custom" align="center" width="180px">
class="cr-table"
:data="list"
:height="tableHeight"
:cell-style="cellStyle"
:header-cell-style="headerRowStyle"
size="small"
stripe
border
highlight-current-row
style="width: 100%"
@sort-change="sortChange"
@selection-change="handleSelectionChange"
@row-click="handleRowClick"
>
<el-table-column
label="底盘号"
prop="vin "
sortable="custom"
align="center"
width="180px"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span class="link-type" @click="handleDrawerOpen(scope.row)">{{ <span class="link-type" @click="handleDrawerOpen(scope.row)">{{
scope.row.vin scope.row.vin
}}</span> }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column <el-table-column v-for="(item, index) in getDefaultField" :key="index" :prop="item.prop" :label="item.label"
v-for="(item, index) in getDefaultField" :min-width="item.width" :formatter="fieldFormatter" sortable="custom" show-overflow-tooltip :gutter="0">
:key="index"
:prop="item.prop"
:label="item.label"
:min-width="item.width"
:formatter="fieldFormatter"
sortable="custom"
show-overflow-tooltip
:gutter="0"
>
<template slot="header" slot-scope="scope"> <template slot="header" slot-scope="scope">
{{ scope.column.label }} {{ scope.column.label }}
</template> </template>
@ -296,44 +132,18 @@
</el-table> </el-table>
</div> </div>
<div> <div>
<el-dialog <el-dialog :visible.sync="dialogFormVisible" :close-on-click-modal="false" :title="formTitle" width="700px" @close="closeDialog">
:visible.sync="dialogFormVisible" <el-form ref="form" :inline="true" :model="form" :rules="rules" size="small" label-width="120px">
:close-on-click-modal="false"
:title="formTitle"
width="700px"
@close="closeDialog"
>
<el-form
ref="form"
:inline="true"
:model="form"
:rules="rules"
size="small"
label-width="120px"
>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-row> <el-row>
<el-col :md="10" :xs="24"> <el-col :md="10" :xs="24">
<el-form-item <el-form-item label="要打印数量:" prop="printNum" v-show="this.listQuery.productType === 1">
label="要打印数量:" <el-input-number v-model="printNum" :min="1" :step="1" @change="valueNumChange"></el-input-number>
prop="printNum"
v-show="this.listQuery.productType === 1"
>
<el-input-number
v-model="printNum"
:min="1"
:step="1"
@change="valueNumChange"
></el-input-number>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :md="10" :xs="24"> <el-col :md="10" :xs="24">
<el-form-item <el-form-item label="产线:" prop="printNum" v-show="this.listQuery.productType === 1">
label="产线:"
prop="printNum"
v-show="this.listQuery.productType === 1"
>
{{ this.productName }} {{ this.productName }}
</el-form-item> </el-form-item>
</el-col> </el-col>
@ -341,117 +151,51 @@
<el-row> <el-row>
<el-row> <el-row>
<el-col :md="10" :xs="24"> <el-col :md="10" :xs="24">
<el-form-item <el-form-item label="要打印数量:" prop="printNumZHB" v-show="this.listQuery.productType === 2">
label="要打印数量:" <el-input-number v-model="printNumZHB" :min="1" :step="1" @change="valueNumChangeZHB"></el-input-number>
prop="printNumZHB"
v-show="this.listQuery.productType === 2"
>
<el-input-number
v-model="printNumZHB"
:min="1"
:step="1"
@change="valueNumChangeZHB"
></el-input-number>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :md="10" :xs="24"> <el-col :md="10" :xs="24">
<el-form-item <el-form-item label="产线:" v-show="this.listQuery.productType === 2">
label="产线:"
v-show="this.listQuery.productType === 2"
>
{{ this.productName }} {{ this.productName }}
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-row> </el-row>
<el-form-item <el-form-item label="大众顺序号:" prop="beginHostSN" v-show="isShowHostSN">
label="大众顺序号:" <el-input v-model.number="form.beginHostSN" placeholder="" clearable type="number" size="small" style="width: 240px"
prop="beginHostSN" @change="beginHostSNChange" />
v-show="isShowHostSN"
>
<el-input
v-model.number="form.beginHostSN"
placeholder=""
clearable
type="number"
size="small"
style="width: 240px"
@change="beginHostSNChange"
/>
<label class="label1">-</label> <label class="label1">-</label>
<el-input <el-input v-model="form.endHostSN" placeholder="" clearable :disabled="true" size="small" style="width: 240px;" />
v-model="form.endHostSN"
placeholder=""
clearable
:disabled="true"
size="small"
style="width: 240px;"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row> <el-row>
<el-col :span="24"> <el-col :span="24">
<el-form-item label="底盘号:" prop="VIN" v-show="isShowVin"> <el-form-item label="底盘号:" prop="VIN" v-show="isShowVin">
<el-input <el-input v-model="form.beginVin" placeholder="" clearable size="small" style="width: 240px" />
v-model="form.beginVin"
placeholder=""
clearable
size="small"
style="width: 240px"
/>
<label class="label1">-</label> <label class="label1">-</label>
<el-input <el-input v-model="form.endVin" placeholder="" clearable size="small" style="width: 240px" />
v-model="form.endVin"
placeholder=""
clearable
size="small"
style="width: 240px"
/>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
<div slot="footer" class="dialog-footer"> <div slot="footer" class="dialog-footer">
<el-button type="text" @click="dialogFormVisible = false" <el-button type="text" @click="dialogFormVisible = false">取消</el-button>
>取消</el-button <el-button v-loading="formLoading" type="primary" :disabled="isDisable" @click="save" v-debounce="debounceClick">确认</el-button>
>
<el-button
v-loading="formLoading"
type="primary"
:disabled="isDisable"
@click="save"
v-debounce="debounceClick"
>确认</el-button
>
</div> </div>
</el-dialog> </el-dialog>
</div> </div>
<div class="table-footer"> <div class="table-footer">
<!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"--> <!-- 分页控件 style="margin-top: -25px;margin-bottom:-25px;float:right;"-->
<pagination <pagination v-show="totalCount > 0" :total="totalCount" style="float: right" :page.sync="page" :limit.sync="listQuery.MaxResultCount"
v-show="totalCount > 0" @pagination="getList" />
:total="totalCount"
style="float: right"
:page.sync="page"
:limit.sync="listQuery.MaxResultCount"
@pagination="getList"
/>
<!-- 抽屉控件 --> <!-- 抽屉控件 -->
<el-drawer <el-drawer title="信息详细页" size="75%" direction="rtl" :visible.sync="drawer" :before-close="handleDrawerClose">
title="信息详细页"
size="75%"
direction="rtl"
:visible.sync="drawer"
:before-close="handleDrawerClose"
>
<div> <div>
<Detail <Detail v-bind:customerInfos="customerInfos" style="margin-top: -35px"></Detail>
v-bind:customerInfos="customerInfos"
style="margin-top: -35px"
></Detail>
</div> </div>
</el-drawer> </el-drawer>
</div> </div>
@ -464,12 +208,16 @@ import permission from "@/directive/permission/index.js";
import CRMTableHead from "../../components/CRMTableHead"; import CRMTableHead from "../../components/CRMTableHead";
import importExcel from "@/components/ImportExcel-vw"; import importExcel from "@/components/ImportExcel-vw";
import Lockr from "lockr"; import Lockr from "lockr";
import { mapGetters } from "vuex"; import {
mapGetters
} from "vuex";
import moment from "moment"; import moment from "moment";
import Detail from "./detail.vue"; import Detail from "./detail.vue";
import MBDetail from "./detailMB.vue"; import MBDetail from "./detailMB.vue";
import ZHBDetail from "./detailZHB.vue"; import ZHBDetail from "./detailZHB.vue";
import { downloadFile } from "@/utils/crmindex.js"; import {
downloadFile
} from "@/utils/crmindex.js";
import qs from "qs"; import qs from "qs";
import RepetitionMB from "./RepetitionMB.vue"; import RepetitionMB from "./RepetitionMB.vue";
import budaMB from "./budaMB.vue"; import budaMB from "./budaMB.vue";
@ -477,7 +225,9 @@ import budaZHB from "./budaZHB.vue";
import RepetitionZHB from "./RepetitionZHB.vue"; import RepetitionZHB from "./RepetitionZHB.vue";
import ScrapMB from "./ScrapMB.vue"; import ScrapMB from "./ScrapMB.vue";
import ScrapZHB from "./ScrapZHB.vue"; import ScrapZHB from "./ScrapZHB.vue";
import { forEach } from "jszip/lib/object"; import {
forEach
} from "jszip/lib/object";
export default { export default {
name: "M100Online", name: "M100Online",
@ -495,7 +245,9 @@ export default {
budaMB, budaMB,
budaZHB budaZHB
}, },
directives: { permission }, directives: {
permission
},
filters: { filters: {
IsCustomerSignFilter(status) { IsCustomerSignFilter(status) {
// //
@ -537,16 +289,25 @@ export default {
printNum: "12", printNum: "12",
printNumZHB: "24", printNumZHB: "24",
rules: { rules: {
erpAssemblyName: [ erpAssemblyName: [{
{ required: true, message: "必须输入!", trigger: "blur" }, required: true,
], message: "必须输入!",
beginHostSN: [ trigger: "blur"
{ required: true, message: "必须输入数字!", trigger: "number" }, }, ],
], beginHostSN: [{
required: true,
message: "必须输入数字!",
trigger: "number"
}, ],
},
billState: [{
id: 2,
name: "未打印"
},
{
id: 3,
name: "已打印"
}, },
billState: [
{ id: 2, name: "未打印" },
{ id: 3, name: "已打印" },
], ],
valueSelect: "", valueSelect: "",
productName: "", productName: "",
@ -660,13 +421,23 @@ export default {
details: [], // details: [], //
PLList: [], //线 PLList: [], //线
PLChildList: [], //线 PLChildList: [], //线
productTypeList: [ productTypeList: [{
{ id: 1, name: "门板" }, id: 1,
{ id: 2, name: "柱护板" }, name: "门板"
},
{
id: 2,
name: "柱护板"
},
], ],
fwStationList: [ fwStationList: [{
{ id: "BA2", name: "BA2" }, id: "BA2",
{ id: "BA5", name: "BA5" } name: "BA2"
},
{
id: "BA5",
name: "BA5"
}
], ],
isShowHostSN: false, isShowHostSN: false,
isShowVin: false, isShowVin: false,
@ -691,8 +462,16 @@ export default {
computed: { computed: {
getDefaultField() { getDefaultField() {
var tempsTabs = []; var tempsTabs = [];
tempsTabs.push({ label: "流水号", prop: "serialNum", width: 100 }); tempsTabs.push({
tempsTabs.push({ label: "大众顺序号", prop: "hostSN", width: 120 }); label: "流水号",
prop: "serialNum",
width: 100
});
tempsTabs.push({
label: "大众顺序号",
prop: "hostSN",
width: 120
});
// tempsTabs.push({ // tempsTabs.push({
// label: "", // label: "",
// prop: "vin", // prop: "vin",
@ -781,20 +560,25 @@ export default {
// }); // });
//let productLineList = { productLineList: [this.listQuery.productLine] }; //let productLineList = { productLineList: [this.listQuery.productLine] };
if (this.$refs && this.$refs.sp01) {
this.$refs.sp01.Visible = false; this.$refs.sp01.Visible = false;
this.$refs.sp05.Visible = false; this.$refs.sp05.Visible = false;
this.$refs.sp07.Visible = false; this.$refs.sp07.Visible = false;
this.$refs.sp08.Visible = false; this.$refs.sp08.Visible = false;
}
let productLineListMain = { productLineList: [] };
let productLineListMain = {
productLineList: []
};
this.PLChildList.forEach((itm) => { this.PLChildList.forEach((itm) => {
productLineListMain.productLineList.push(itm.productLineCode); productLineListMain.productLineList.push(itm.productLineCode);
}); });
console.log( // console.log(
"门版-主界面传过来的值:" + JSON.stringify(productLineListMain) // "-" + JSON.stringify(productLineListMain)
); // );
this.$axios this.$axios
.posts( .posts(
"/api/newjit/bill-m100/product-line-timeout-remind", "/api/newjit/bill-m100/product-line-timeout-remind",
@ -808,9 +592,9 @@ export default {
}); });
return; return;
} else { } else {
console.log( // console.log(
"超时提醒-接口传过来的值:" + JSON.stringify(response.item) // "-" + JSON.stringify(response.item)
); // );
if (response.item !== null) { if (response.item !== null) {
response.item.forEach((JKITEM) => { response.item.forEach((JKITEM) => {
@ -822,9 +606,9 @@ export default {
"分钟没收到报文\xa0\xa0\xa0\xa0"; "分钟没收到报文\xa0\xa0\xa0\xa0";
if (JKITEM.timeoutMinutes >= JKITEM.configMinutes) { if (JKITEM.timeoutMinutes >= JKITEM.configMinutes) {
// //
console.log( // console.log(
"222222222222222222222222222222222222222222222222-1" // "222222222222222222222222222222222222222222222222-1"
); // );
this.$refs.sp01.style.color = "red"; this.$refs.sp01.style.color = "red";
this.$refs.sp01.style.fontWeight = "bold"; this.$refs.sp01.style.fontWeight = "bold";
} else { } else {
@ -839,9 +623,9 @@ export default {
"分钟没收到报文\xa0\xa0\xa0\xa0"; "分钟没收到报文\xa0\xa0\xa0\xa0";
if (JKITEM.timeoutMinutes >= JKITEM.configMinutes) { if (JKITEM.timeoutMinutes >= JKITEM.configMinutes) {
// //
console.log( // console.log(
"222222222222222222222222222222222222222222222222-2" // "222222222222222222222222222222222222222222222222-2"
); // );
this.setTableHeight() this.setTableHeight()
this.$refs.sp05.style.color = "red"; this.$refs.sp05.style.color = "red";
this.$refs.sp05.style.fontWeight = "bold"; this.$refs.sp05.style.fontWeight = "bold";
@ -1030,12 +814,10 @@ export default {
//console.log(510) //console.log(510)
//console.log(param) //console.log(param)
var parentId = param.assemblyID; //id var parentId = param.assemblyID; //id
this.customerInfos = [ this.customerInfos = [{
{
ParentId: parentId, ParentId: parentId,
BillId: param.id BillId: param.id
}, }, ];
];
}, },
handleDrawerClose(done) { handleDrawerClose(done) {
@ -1150,10 +932,18 @@ export default {
/** 格式化字段 */ /** 格式化字段 */
fieldFormatter(row, column) { fieldFormatter(row, column) {
if (column.property === "billStatus") { if (column.property === "billStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property === "zHBBillStatus") { if (column.property === "zHBBillStatus") {
return { 1: "未匹配", 2: "未打印", 3: "已打印" }[row[column.property]]; return {
1: "未匹配",
2: "未打印",
3: "已打印"
} [row[column.property]];
} }
if (column.property == "onlineTime" || column.property == "receiveTime") { if (column.property == "onlineTime" || column.property == "receiveTime") {
var date = row[column.property]; var date = row[column.property];
@ -1241,46 +1031,38 @@ export default {
this.customerInfosZHB = []; this.customerInfosZHB = [];
if (this.listQuery.productType === 1) { if (this.listQuery.productType === 1) {
//线 //线
this.customerInfosMB = [ this.customerInfosMB = [{
{
PrintType: 1, PrintType: 1,
ProductLine: val, ProductLine: val,
fwStation: this.listQuery.fwStation fwStation: this.listQuery.fwStation
}, }, ];
];
} }
if (this.listQuery.productType === 2) { if (this.listQuery.productType === 2) {
//线 //线
this.customerInfosZHB = [ this.customerInfosZHB = [{
{
PrintType: 1, PrintType: 1,
ProductLine: val, ProductLine: val,
fwStation: this.listQuery.fwStation fwStation: this.listQuery.fwStation
}, }, ];
];
} }
}, },
fwStation_selectChange(val) { fwStation_selectChange(val) {
this.$forceUpdate(); this.$forceUpdate();
if (this.listQuery.productType === 1) { if (this.listQuery.productType === 1) {
//线 //线
this.customerInfosMB = [ this.customerInfosMB = [{
{
PrintType: 1, PrintType: 1,
ProductLine: this.listQuery.productLine, ProductLine: this.listQuery.productLine,
fwStation: val fwStation: val
}, }, ];
];
} }
if (this.listQuery.productType === 2) { if (this.listQuery.productType === 2) {
//线 //线
this.customerInfosZHB = [ this.customerInfosZHB = [{
{
PrintType: 1, PrintType: 1,
ProductLine: this.listQuery.productLine, ProductLine: this.listQuery.productLine,
fwStation: val fwStation: val
} }];
];
} }
}, },
@ -1292,7 +1074,10 @@ export default {
this.getList(); this.getList();
}, },
sortChange(data) { sortChange(data) {
const { prop, order } = data; const {
prop,
order
} = data;
if (!prop || !order) { if (!prop || !order) {
this.handleFilter(); this.handleFilter();
return; return;
@ -1304,19 +1089,39 @@ export default {
this.multipleSelection = val; this.multipleSelection = val;
}, },
/** 通过回调控制style */ /** 通过回调控制style */
cellStyle({ row, column, rowIndex, columnIndex }) { cellStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right" }; return {
textAlign: "right"
};
} else { } else {
return { textAlign: "left" }; return {
textAlign: "left"
};
} }
}, },
/** 通过回调控制表头style */ /** 通过回调控制表头style */
headerRowStyle({ row, column, rowIndex, columnIndex }) { headerRowStyle({
row,
column,
rowIndex,
columnIndex
}) {
if (column.property === "qty") { if (column.property === "qty") {
return { textAlign: "right", background: "#FAFAFA" }; return {
textAlign: "right",
background: "#FAFAFA"
};
} else { } else {
return { textAlign: "left", background: "#FAFAFA" }; return {
textAlign: "left",
background: "#FAFAFA"
};
} }
}, },
handleRowClick(row, column, event) { handleRowClick(row, column, event) {
@ -1628,8 +1433,7 @@ export default {
// //
this.$confirm( this.$confirm(
"本次打印存在断号是否继续?" + response.item, "本次打印存在断号是否继续?" + response.item,
"提示", "提示", {
{
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning", type: "warning",
@ -1672,8 +1476,7 @@ export default {
// //
this.$confirm( this.$confirm(
"本次打印存在断号是否继续?" + response.item, "本次打印存在断号是否继续?" + response.item,
"提示", "提示", {
{
confirmButtonText: "确定", confirmButtonText: "确定",
cancelButtonText: "取消", cancelButtonText: "取消",
type: "warning", type: "warning",
@ -1720,8 +1523,7 @@ export default {
/** /**
* 保存加载打印门板 * 保存加载打印门板
*/ */
private_printMenBan() private_printMenBan() {
{
this.$axios this.$axios
.posts( .posts(
"/api/newjit/bill-m100/save-menban-report", "/api/newjit/bill-m100/save-menban-report",
@ -1790,8 +1592,7 @@ export default {
/** /**
* 保存加载打印柱护板 * 保存加载打印柱护板
*/ */
private_printZhuHuBan(isSelAll = true) private_printZhuHuBan(isSelAll = true) {
{
// //
// //
this.$axios this.$axios
@ -1842,7 +1643,8 @@ export default {
console.log("打印json"); console.log("打印json");
console.log(this.fileQuery.dataname); console.log(this.fileQuery.dataname);
let reporturl = "/Handlers/Handler1.ashx?report=zhuhuban_" + this.hostPrintQuery.productLine + '-' + this.hostPrintQuery.fwStation; //zhuhuban_01-BA2 let reporturl = "/Handlers/Handler1.ashx?report=zhuhuban_" + this.hostPrintQuery.productLine + '-' + this.hostPrintQuery
.fwStation; //zhuhuban_01-BA2
this.$axios this.$axios
.posts( .posts(
@ -1873,9 +1675,7 @@ export default {
if (this.userInfo == null || this.userInfo.userId == null) //使 if (this.userInfo == null || this.userInfo.userId == null) //使
{ {
this.listPLQuery.UserId = 'AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA'; this.listPLQuery.UserId = 'AAAAAAAA-AAAA-AAAA-AAAA-AAAAAAAAAAAA';
} } else {
else
{
this.listPLQuery.UserId = this.userInfo.userId; this.listPLQuery.UserId = this.userInfo.userId;
} }
@ -1895,12 +1695,10 @@ export default {
this.listQuery.productLine = this.PLChildList[0].productLineCode; this.listQuery.productLine = this.PLChildList[0].productLineCode;
if (this.listQuery.productLine != "") { if (this.listQuery.productLine != "") {
//线 //线
this.customerInfosMB = [ this.customerInfosMB = [{
{
PrintType: 1, PrintType: 1,
ProductLine: this.PLChildList[0].productLineCode, ProductLine: this.PLChildList[0].productLineCode,
}, }, ];
];
} }
this.getList(); this.getList();
//console.log(this.PLList) //console.log(this.PLList)
@ -1955,7 +1753,9 @@ export default {
getUrl() { getUrl() {
//dataResult.data //dataResult.data
let pdfUrl = window.URL.createObjectURL( let pdfUrl = window.URL.createObjectURL(
new Blob([dataResult.data], { type: `application/pdf` }) new Blob([dataResult.data], {
type: `application/pdf`
})
); );
const fname = item.name + str + "_" + lists[1] + lists[2]; // const fname = item.name + str + "_" + lists[1] + lists[2]; //
const link = document.createElement("a"); const link = document.createElement("a");
@ -1973,7 +1773,9 @@ export default {
while (n--) { while (n--) {
u8arr[n] = bstr.charCodeAt(n); u8arr[n] = bstr.charCodeAt(n);
} }
return new Blob([u8arr], { type: "application/pdf" }); return new Blob([u8arr], {
type: "application/pdf"
});
}, },
doPrint(val) { doPrint(val) {
var ordonnance = document.getElementById(val).contentWindow; var ordonnance = document.getElementById(val).contentWindow;
@ -2041,15 +1843,15 @@ export default {
.divider1 { .divider1 {
margin: 0; margin: 0;
} }
.divider2 { .divider2 {
margin: 10px; margin: 10px;
margin-bottom: 20px; margin-bottom: 20px;
width: 95%; width: 95%;
} }
.label1 { .label1 {
margin-left: 5px; margin-left: 5px;
margin-right: 5px; margin-right: 5px;
} }
</style> </style>

2
vue/src/views/pg-fis/basedate/partSwitch/index.vue

@ -186,7 +186,7 @@
}); });
}, },
created() { created() {
debugger //debugger
this.getList(); this.getList();
}, },

2
vue/src/views/pg-fis/basedate/productLine/index.vue

@ -936,7 +936,7 @@ export default {
"/api/newjit/product-line-authority/do-authority",this.saveQuery "/api/newjit/product-line-authority/do-authority",this.saveQuery
) )
.then((response) => { .then((response) => {
debugger //debugger
console.log(response); console.log(response);
this.dialogFormVisible = false; this.dialogFormVisible = false;
this.getList(); this.getList();

2
vue/src/views/pg-fis/basedate/repeatR100/index.vue

@ -811,7 +811,7 @@ this.$axios
}, },
//线 //线
ptypeselectChange() { ptypeselectChange() {
debugger //debugger
this.$forceUpdate(); this.$forceUpdate();
//console.log("222222222222222222222222222222222222222222"+this.listQuery.productType); //console.log("222222222222222222222222222222222222222222"+this.listQuery.productType);
this.listQuery.productLine = ""; this.listQuery.productLine = "";

36
vue/static/config.js

@ -2,11 +2,17 @@ let configJSON
if (process.env.NODE_ENV === 'development') { if (process.env.NODE_ENV === 'development') {
configJSON = { configJSON = {
base: { base: {
ip: 'http://127.0.0.1', //?? two // ip: 'http://127.0.0.1', //?? two
auth_port: '8066', // auth_port: '8066',
public_port: '8092', // public_port: '8092',
// backend_port: '8092', // // backend_port: '8092',
backend_port: '44344', //?? three // backend_port: '44344', //?? three
ip: localStorage.getItem('config_ip'),
auth_port: localStorage.getItem('config_auth_port'),
public_port: localStorage.getItem('config_public_port'),
backend_port: localStorage.getItem('config_backend_port'),
}, },
basic: {}, basic: {},
upload: { upload: {
@ -36,17 +42,21 @@ if (process.env.NODE_ENV === 'development') {
configJSON = { configJSON = {
base: { base: {
ip: 'http://192.168.7.21', // ip: 'http://192.168.7.21',
//ip: "http://222.169.228.163", // //ip: "http://222.169.228.163",
auth_port: '8066', // auth_port: '8066',
public_port: '8092', // public_port: '8092',
backend_port: '8092', // backend_port: '8092',
// auth_port: "7696", // // auth_port: "7696",
// public_port: "7692", // // public_port: "7692",
// backend_port: "7692", // // backend_port: "7692",
ip: localStorage.getItem('config_ip'),
auth_port: localStorage.getItem('config_auth_port'),
public_port: localStorage.getItem('config_public_port'),
backend_port: localStorage.getItem('config_backend_port'),
}, },
basic: {}, basic: {},
upload: { upload: {

Loading…
Cancel
Save