|
@@ -1,69 +1,61 @@
|
|
|
<template>
|
|
|
<div>
|
|
|
- <basic-container
|
|
|
- v-show="isShow">
|
|
|
- <avue-crud :option="option"
|
|
|
- :data="dataList"
|
|
|
- ref="crud"
|
|
|
- v-model="form"
|
|
|
- :page.sync="page"
|
|
|
- @row-del="rowDel"
|
|
|
- @row-update="rowUpdate"
|
|
|
- :before-open="beforeOpen"
|
|
|
- :before-close="beforeClose"
|
|
|
- :search.sync="search"
|
|
|
- @row-save="rowSave"
|
|
|
- @saveColumn="saveColumn"
|
|
|
- @search-change="searchChange"
|
|
|
- @search-reset="searchReset"
|
|
|
- @selection-change="selectionChange"
|
|
|
- @current-change="currentChange"
|
|
|
- @size-change="sizeChange"
|
|
|
- @refresh-change="refreshChange"
|
|
|
- @on-load="onLoad"
|
|
|
- @tree-load="treeLoad"
|
|
|
- :cell-style="tableRowClassName"
|
|
|
- :table-loading="loading"
|
|
|
- @expand-change="expandChange"
|
|
|
- @resetColumn="resetColumn"
|
|
|
- @search-criteria-switch="searchCriteriaSwitch"
|
|
|
- >
|
|
|
+ <basic-container v-show="isShow">
|
|
|
+ <avue-crud :option="option" :data="dataList" ref="crud" v-model="form" :page.sync="page" @row-del="rowDel"
|
|
|
+ @row-update="rowUpdate" :before-open="beforeOpen" :before-close="beforeClose" :search.sync="search"
|
|
|
+ @row-save="rowSave" @saveColumn="saveColumn" @search-change="searchChange" @search-reset="searchReset"
|
|
|
+ @selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
|
|
|
+ @refresh-change="refreshChange" @on-load="onLoad" @tree-load="treeLoad" :cell-style="tableRowClassName"
|
|
|
+ :table-loading="loading" @expand-change="expandChange" @resetColumn="resetColumn"
|
|
|
+ @search-criteria-switch="searchCriteriaSwitch">
|
|
|
<template slot-scope="scope" slot="expand">
|
|
|
<el-table :data="scope.row.insideList" v-loading="scope.row.loading" :cell-style="tableRowClassName">
|
|
|
- <el-table-column label="产品分类" prop="priceCategory" align="center" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column label="价格类别" prop="priceType" align="center" show-overflow-tooltip width="180"></el-table-column>
|
|
|
- <el-table-column label="商品名称" prop="cname" align="center" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column label="编码" prop="code" align="center" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column label="规格型号" prop="typeno" align="center" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column label="供应商" prop="corpName" align="center" show-overflow-tooltip width="120"></el-table-column>
|
|
|
- <el-table-column label="订货数量" prop="orderQuantity" align="center" show-overflow-tooltip width="180"></el-table-column>
|
|
|
- <el-table-column label="发货数量" prop="actualQuantity" align="center" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column label="库存" prop="storageQuantity" align="center" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column label="采购价格" prop="purchaseAmount" align="center" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column label="最新单价" prop="price" align="center" show-overflow-tooltip width="200"></el-table-column>
|
|
|
- <el-table-column label="金额" prop="amount" align="center" show-overflow-tooltip width="200"></el-table-column>
|
|
|
+ <el-table-column label="产品分类" prop="priceCategory" align="center" show-overflow-tooltip width="200">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="价格类别" prop="priceType" align="center" show-overflow-tooltip width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="商品名称" prop="cname" align="center" show-overflow-tooltip width="120">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="编码" prop="code" align="center" show-overflow-tooltip width="120"></el-table-column>
|
|
|
+ <el-table-column label="规格型号" prop="typeno" align="center" show-overflow-tooltip width="120">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="供应商" prop="corpName" align="center" show-overflow-tooltip width="120">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="订货数量" prop="orderQuantity" align="center" show-overflow-tooltip width="180">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="发货数量" prop="actualQuantity" align="center" show-overflow-tooltip width="200">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="库存" prop="storageQuantity" align="center" show-overflow-tooltip width="200">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="采购价格" prop="purchaseAmount" align="center" show-overflow-tooltip width="200">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="最新单价" prop="price" align="center" show-overflow-tooltip width="200">
|
|
|
+ </el-table-column>
|
|
|
+ <el-table-column label="金额" prop="amount" align="center" show-overflow-tooltip width="200">
|
|
|
+ </el-table-column>
|
|
|
</el-table>
|
|
|
</template>
|
|
|
<template slot-scope="scope" slot="orderNo">
|
|
|
- <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row,scope.index)">{{ scope.row.orgOrderNo }}</span>
|
|
|
+ <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row, scope.index)">{{
|
|
|
+ scope.row.orgOrderNo
|
|
|
+ }}</span>
|
|
|
</template>
|
|
|
<template slot="corpIdSearch">
|
|
|
- <crop-select
|
|
|
- v-model="search.corpId"
|
|
|
- corpType="KH"
|
|
|
- ></crop-select>
|
|
|
+ <crop-select v-model="search.corpId" corpType="KH"></crop-select>
|
|
|
</template>
|
|
|
<template slot-scope="scope" slot="corpId">
|
|
|
- <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row,scope.index)">{{ scope.row.corpsName }}</span>
|
|
|
+ <span style="color: #409EFF;cursor: pointer" @click.stop="beforeOpenPage(scope.row, scope.index)">{{
|
|
|
+ scope.row.corpsName
|
|
|
+ }}</span>
|
|
|
</template>
|
|
|
<template slot-scope="scope" slot="createUser">
|
|
|
{{ scope.row.createUserName }}
|
|
|
</template>
|
|
|
<template slot-scope="scope" slot="createPurchase">
|
|
|
- {{ scope.row.createPurchase == 1? '是': '否' }}
|
|
|
+ {{ scope.row.createPurchase == 1 ? "是" : "否" }}
|
|
|
</template>
|
|
|
<template slot-scope="scope" slot="createFreight">
|
|
|
- {{ scope.row.createFreight == 1? '是': '否' }}
|
|
|
+ {{ scope.row.createFreight == 1 ? "是" : "否" }}
|
|
|
</template>
|
|
|
<template slot="status" slot-scope="scope">
|
|
|
<span v-if="scope.row.status == 0">暂存</span>
|
|
@@ -81,55 +73,40 @@
|
|
|
<span v-if="scope.row.specialCheckStatus == 2">审批中</span>
|
|
|
<span v-if="scope.row.specialCheckStatus == 3">审批通过</span>
|
|
|
</template>
|
|
|
- <template slot="menuLeft" slot-scope="{size}">
|
|
|
+ <template slot="menuLeft" slot-scope="{ size }">
|
|
|
<el-button type="success" :size="size" @click="copyOrder" :disabled="single">复制单据</el-button>
|
|
|
<el-button type="info" :size="size" icon="el-icon-printer">报表打印</el-button>
|
|
|
- <el-button
|
|
|
- type="info"
|
|
|
- size="small"
|
|
|
- icon="el-icon-download"
|
|
|
- @click="exportHandle"
|
|
|
- >库 存</el-button>
|
|
|
+ <el-button type="info" size="small" icon="el-icon-download" @click="exportHandle">库 存</el-button>
|
|
|
</template>
|
|
|
<template slot-scope="scope" slot="menu">
|
|
|
- <el-button
|
|
|
- type="text"
|
|
|
- size="small"
|
|
|
- @click="saveSell(scope.row)"
|
|
|
- :disabled="scope.row.status < 3 || scope.row.createPurchase == 1"
|
|
|
- >生成采购</el-button>
|
|
|
- <el-button
|
|
|
- type="text"
|
|
|
- size="small"
|
|
|
- @click="customerReceipt(scope.row)"
|
|
|
- :disabled="!scope.row.status || scope.row.status < 3 || scope.row.createFreight == 1"
|
|
|
- >客户收货</el-button>
|
|
|
- <el-button
|
|
|
- type="text"
|
|
|
- icon="el-icon-delete"
|
|
|
- size="small"
|
|
|
- @click.stop="rowDel(scope.row,scope.index)"
|
|
|
- :disabled="scope.row.status > 0"
|
|
|
- >删除
|
|
|
+ <el-button type="text" size="small" @click="saveSell(scope.row)"
|
|
|
+ :disabled="scope.row.status < 3 || scope.row.createPurchase == 1">生成采购</el-button>
|
|
|
+ <el-button type="text" size="small" @click="customerReceipt(scope.row)" :disabled="
|
|
|
+ !scope.row.status ||
|
|
|
+ scope.row.status < 3 ||
|
|
|
+ scope.row.createFreight == 1
|
|
|
+ ">客户收货</el-button>
|
|
|
+ <el-button type="text" icon="el-icon-delete" size="small" @click.stop="rowDel(scope.row, scope.index)"
|
|
|
+ :disabled="scope.row.status > 0">删除
|
|
|
</el-button>
|
|
|
</template>
|
|
|
</avue-crud>
|
|
|
</basic-container>
|
|
|
|
|
|
- <detail-page
|
|
|
- ref="detail"
|
|
|
- @goBack="goBack"
|
|
|
- :detailData="detailData"
|
|
|
- v-if="!isShow"
|
|
|
- ></detail-page>
|
|
|
+ <detail-page ref="detail" @goBack="goBack" :detailData="detailData" v-if="!isShow"></detail-page>
|
|
|
</div>
|
|
|
</template>
|
|
|
|
|
|
<script>
|
|
|
import option from "./configuration/mainList.json";
|
|
|
-import {customerList,
|
|
|
- typeSave, deleteDetails,
|
|
|
- saveSell,detail, generateShipment} from "@/api/basicData/configuration"
|
|
|
+import {
|
|
|
+ customerList,
|
|
|
+ typeSave,
|
|
|
+ deleteDetails,
|
|
|
+ saveSell,
|
|
|
+ detail,
|
|
|
+ generateShipment
|
|
|
+} from "@/api/basicData/configuration";
|
|
|
import detailPage from "./detailsPageEdit";
|
|
|
import search from "../../../page/index/search";
|
|
|
import { defaultDate } from "@/util/date";
|
|
@@ -156,13 +133,13 @@ export default {
|
|
|
form: {},
|
|
|
option: {},
|
|
|
parentId: 0,
|
|
|
- search:{},
|
|
|
+ search: {},
|
|
|
dataList: [],
|
|
|
page: {
|
|
|
pageSize: 10,
|
|
|
currentPage: 1,
|
|
|
total: 0,
|
|
|
- pageSizes: [10,50,100,200,300]
|
|
|
+ pageSizes: [10, 50, 100, 200, 300]
|
|
|
},
|
|
|
// 非单个禁用
|
|
|
single: true,
|
|
@@ -170,11 +147,11 @@ export default {
|
|
|
multiple: true,
|
|
|
selection: [],
|
|
|
isShow: true,
|
|
|
- detailData: {},
|
|
|
- }
|
|
|
+ detailData: {}
|
|
|
+ };
|
|
|
},
|
|
|
async created() {
|
|
|
- this.search.businesDate = defaultDate(1)
|
|
|
+ this.search.businesDate = defaultDate(1);
|
|
|
// this.option = option
|
|
|
this.option = await this.getColumnData(this.getColumnName(14), option);
|
|
|
this.getWorkDicts("payment_term").then(res => {
|
|
@@ -187,90 +164,94 @@ export default {
|
|
|
});
|
|
|
gainUser().then(res => {
|
|
|
this.findObject(this.option.column, "createUser").dicData = res.data.data;
|
|
|
- })
|
|
|
+ });
|
|
|
let i = 0;
|
|
|
this.option.column.forEach(item => {
|
|
|
- if (item.search) i++
|
|
|
- })
|
|
|
- if (i % 3 !== 0){
|
|
|
- const num = 3 - Number(i % 3)
|
|
|
+ if (item.search) i++;
|
|
|
+ });
|
|
|
+ if (i % 3 !== 0) {
|
|
|
+ const num = 3 - Number(i % 3);
|
|
|
this.option.searchMenuSpan = num * 8;
|
|
|
this.option.searchMenuPosition = "right";
|
|
|
}
|
|
|
this.option.column.forEach(item => {
|
|
|
if (item.pickerOptions) {
|
|
|
item.pickerOptions = {
|
|
|
- shortcuts: [{
|
|
|
- text: '最近一周',
|
|
|
- onClick(picker) {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
|
|
- picker.$emit('pick', [start, end]);
|
|
|
- }
|
|
|
- }, {
|
|
|
- text: '最近一个月',
|
|
|
- onClick(picker) {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
|
|
|
- picker.$emit('pick', [start, end]);
|
|
|
- }
|
|
|
- }, {
|
|
|
- text: '最近三个月',
|
|
|
- onClick(picker) {
|
|
|
- const end = new Date();
|
|
|
- const start = new Date();
|
|
|
- start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
|
|
|
- picker.$emit('pick', [start, end]);
|
|
|
+ shortcuts: [
|
|
|
+ {
|
|
|
+ text: "最近一周",
|
|
|
+ onClick(picker) {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
|
|
|
+ picker.$emit("pick", [start, end]);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: "最近一个月",
|
|
|
+ onClick(picker) {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
|
|
|
+ picker.$emit("pick", [start, end]);
|
|
|
+ }
|
|
|
+ },
|
|
|
+ {
|
|
|
+ text: "最近三个月",
|
|
|
+ onClick(picker) {
|
|
|
+ const end = new Date();
|
|
|
+ const start = new Date();
|
|
|
+ start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
|
|
|
+ picker.$emit("pick", [start, end]);
|
|
|
+ }
|
|
|
}
|
|
|
- }]
|
|
|
- }
|
|
|
+ ]
|
|
|
+ };
|
|
|
}
|
|
|
- })
|
|
|
+ });
|
|
|
},
|
|
|
activated() {
|
|
|
setTimeout(() => {
|
|
|
if (this.$route.query.id) {
|
|
|
- this.isShow = true
|
|
|
- this.beforeOpenPage({id: this.$route.query.id})
|
|
|
+ this.isShow = true;
|
|
|
+ this.beforeOpenPage({ id: this.$route.query.id });
|
|
|
}
|
|
|
if (this.$route.query.check) {
|
|
|
- this.isShow = true
|
|
|
+ this.isShow = true;
|
|
|
// this.beforeOpenPage({id: this.$route.query.check.billId})
|
|
|
this.detailData = {
|
|
|
id: this.$route.query.check.billId,
|
|
|
check: this.$route.query.check,
|
|
|
- auditId: this.$route.query.check.id,
|
|
|
+ auditId: this.$route.query.check.id
|
|
|
};
|
|
|
this.isShow = false;
|
|
|
this.$store.commit("DOMXS_IN_DETAIL");
|
|
|
}
|
|
|
if (this.$route.query.params) {
|
|
|
- this.beforeOpenPage({id: this.$route.query.params})
|
|
|
+ this.beforeOpenPage({ id: this.$route.query.params });
|
|
|
}
|
|
|
- }, 100)
|
|
|
+ }, 100);
|
|
|
},
|
|
|
methods: {
|
|
|
- searchCriteriaSwitch(type){
|
|
|
- if (type){
|
|
|
- this.option.height = this.option.height - 190
|
|
|
- }else {
|
|
|
- this.option.height = this.option.height + 190
|
|
|
+ searchCriteriaSwitch(type) {
|
|
|
+ if (type) {
|
|
|
+ this.option.height = this.option.height - 190;
|
|
|
+ } else {
|
|
|
+ this.option.height = this.option.height + 190;
|
|
|
}
|
|
|
- this.$refs.crud.getTableHeight()
|
|
|
+ this.$refs.crud.getTableHeight();
|
|
|
},
|
|
|
- tableRowClassName({row, column, rowIndex, columnIndex}) {
|
|
|
- if (row.orderStatus == '录入' && columnIndex == 19){
|
|
|
+ tableRowClassName({ row, column, rowIndex, columnIndex }) {
|
|
|
+ if (row.orderStatus == "录入" && columnIndex == 19) {
|
|
|
return {
|
|
|
- background: '#eceb3c',
|
|
|
- }
|
|
|
- } else if (row.orderStatus == '成交') {
|
|
|
- return 'success-row'
|
|
|
- } else if (row.orderStatus == '已报价') {
|
|
|
- return 'quote-row'
|
|
|
- } else if (row.orderStatus == '未成交') {
|
|
|
- return 'warning-row'
|
|
|
+ background: "#eceb3c"
|
|
|
+ };
|
|
|
+ } else if (row.orderStatus == "成交") {
|
|
|
+ return "success-row";
|
|
|
+ } else if (row.orderStatus == "已报价") {
|
|
|
+ return "quote-row";
|
|
|
+ } else if (row.orderStatus == "未成交") {
|
|
|
+ return "warning-row";
|
|
|
}
|
|
|
return "padding:0;height:40px;";
|
|
|
},
|
|
@@ -280,37 +261,42 @@ export default {
|
|
|
confirmButtonText: "确定",
|
|
|
cancelButtonText: "取消",
|
|
|
type: "warning"
|
|
|
- }).then(() => {
|
|
|
- return deleteDetails(row.id);
|
|
|
- }).then(() => {
|
|
|
- this.$message({
|
|
|
- type: "success",
|
|
|
- message: "操作成功!"
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ return deleteDetails(row.id);
|
|
|
+ })
|
|
|
+ .then(() => {
|
|
|
+ this.$message({
|
|
|
+ type: "success",
|
|
|
+ message: "操作成功!"
|
|
|
+ });
|
|
|
+ this.page.currentPage = 1;
|
|
|
+ this.onLoad(this.page, { parentId: 0 });
|
|
|
});
|
|
|
- this.page.currentPage = 1;
|
|
|
- this.onLoad(this.page, {parentId: 0});
|
|
|
- });
|
|
|
},
|
|
|
//修改时的修改按钮点击触发
|
|
|
rowUpdate(row, index, done, loading) {
|
|
|
- typeSave(row).then(() => {
|
|
|
- this.$message({
|
|
|
- type: "success",
|
|
|
- message: "操作成功!"
|
|
|
- });
|
|
|
- // 数据回调进行刷新
|
|
|
- done(row);
|
|
|
- }, error => {
|
|
|
- window.console.log(error);
|
|
|
- loading();
|
|
|
- });
|
|
|
+ typeSave(row).then(
|
|
|
+ () => {
|
|
|
+ this.$message({
|
|
|
+ type: "success",
|
|
|
+ message: "操作成功!"
|
|
|
+ });
|
|
|
+ // 数据回调进行刷新
|
|
|
+ done(row);
|
|
|
+ },
|
|
|
+ error => {
|
|
|
+ window.console.log(error);
|
|
|
+ loading();
|
|
|
+ }
|
|
|
+ );
|
|
|
},
|
|
|
//新增修改时保存触发
|
|
|
rowSave(row, done, loading) {
|
|
|
typeSave(row).then(res => {
|
|
|
- console.log(res)
|
|
|
- done()
|
|
|
- })
|
|
|
+ console.log(res);
|
|
|
+ done();
|
|
|
+ });
|
|
|
},
|
|
|
//查询全部
|
|
|
initData() {
|
|
@@ -329,46 +315,48 @@ export default {
|
|
|
this.$refs.crud.rowAdd();
|
|
|
},
|
|
|
closeDetailPage() {
|
|
|
- this.isShow = true
|
|
|
+ this.isShow = true;
|
|
|
},
|
|
|
//查看跳转页面
|
|
|
beforeOpenPage(row, index) {
|
|
|
const data = {
|
|
|
- moduleName: 'xs',
|
|
|
- tableName: 'business_order',
|
|
|
+ moduleName: "xs",
|
|
|
+ tableName: "business_order",
|
|
|
billId: row.id,
|
|
|
- no: localStorage.getItem('browserID')
|
|
|
- }
|
|
|
- this.checkLock(data).then(res => {
|
|
|
- if (res.data.code == 200) {
|
|
|
+ no: localStorage.getItem("browserID")
|
|
|
+ };
|
|
|
+ this.checkLock(data)
|
|
|
+ .then(res => {
|
|
|
+ if (res.data.code == 200) {
|
|
|
+ this.detailData = {
|
|
|
+ seeDisabled: true,
|
|
|
+ id: row.id
|
|
|
+ };
|
|
|
+ this.isShow = false;
|
|
|
+ this.$store.commit("DOMXS_IN_DETAIL");
|
|
|
+ }
|
|
|
+ })
|
|
|
+ .catch(err => {
|
|
|
this.detailData = {
|
|
|
- seeDisabled: true,
|
|
|
id: row.id,
|
|
|
+ seeDisabled: true,
|
|
|
+ opDisabled: true
|
|
|
};
|
|
|
this.isShow = false;
|
|
|
this.$store.commit("DOMXS_IN_DETAIL");
|
|
|
- }
|
|
|
- }).catch(err => {
|
|
|
- this.detailData = {
|
|
|
- id: row.id,
|
|
|
- seeDisabled: true,
|
|
|
- opDisabled: true
|
|
|
- };
|
|
|
- this.isShow = false;
|
|
|
- this.$store.commit("DOMXS_IN_DETAIL");
|
|
|
- })
|
|
|
+ });
|
|
|
},
|
|
|
//新增跳转页面
|
|
|
beforeOpen(row, index) {
|
|
|
this.detailData = {
|
|
|
- id: row.id,
|
|
|
+ id: row.id
|
|
|
};
|
|
|
this.isShow = false;
|
|
|
this.$store.commit("DOMXS_IN_DETAIL");
|
|
|
},
|
|
|
editOpen(row, index) {
|
|
|
this.detailData = {
|
|
|
- id: row.id,
|
|
|
+ id: row.id
|
|
|
};
|
|
|
this.isShow = false;
|
|
|
this.$store.commit("DOMXS_IN_DETAIL");
|
|
@@ -377,7 +365,7 @@ export default {
|
|
|
copyOrder() {
|
|
|
const id = this.selection[0].id;
|
|
|
this.detailData = {
|
|
|
- copyId: id,
|
|
|
+ copyId: id
|
|
|
};
|
|
|
this.isShow = false;
|
|
|
this.$store.commit("DOMXS_IN_DETAIL");
|
|
@@ -393,36 +381,42 @@ export default {
|
|
|
//点击搜索按钮触发
|
|
|
searchChange(params, done) {
|
|
|
if (params.businesDate) {
|
|
|
- params.orderStartDate = params.businesDate[0]+ " " + "00:00:00"
|
|
|
- params.orderEndDate = params.businesDate[1]+ " " + "23:59:59"
|
|
|
+ params.orderStartDate = params.businesDate[0] + " " + "00:00:00";
|
|
|
+ params.orderEndDate = params.businesDate[1] + " " + "23:59:59";
|
|
|
delete params.businesDate;
|
|
|
}
|
|
|
if (params.requiredDeliveryDate) {
|
|
|
- params.deliveryStartDate = params.requiredDeliveryDate[0]+ " " + "00:00:00"
|
|
|
- params.deliveryEndDate = params.requiredDeliveryDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'requiredDeliveryDate')
|
|
|
+ params.deliveryStartDate =
|
|
|
+ params.requiredDeliveryDate[0] + " " + "00:00:00";
|
|
|
+ params.deliveryEndDate =
|
|
|
+ params.requiredDeliveryDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "requiredDeliveryDate");
|
|
|
}
|
|
|
if (params.requiredArrivalDate) {
|
|
|
- params.arrivalDateStart = params.requiredArrivalDate[0]+ " " + "00:00:00"
|
|
|
- params.arrivalDateEnd = params.requiredArrivalDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'requiredArrivalDate')
|
|
|
+ params.arrivalDateStart =
|
|
|
+ params.requiredArrivalDate[0] + " " + "00:00:00";
|
|
|
+ params.arrivalDateEnd =
|
|
|
+ params.requiredArrivalDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "requiredArrivalDate");
|
|
|
}
|
|
|
if (params.actualDeliveryDate) {
|
|
|
- params.actualDeliveryDateStart = params.actualDeliveryDate[0]+ " " + "00:00:00"
|
|
|
- params.actualDeliveryDateEnd = params.actualDeliveryDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'actualDeliveryDate')
|
|
|
+ params.actualDeliveryDateStart =
|
|
|
+ params.actualDeliveryDate[0] + " " + "00:00:00";
|
|
|
+ params.actualDeliveryDateEnd =
|
|
|
+ params.actualDeliveryDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "actualDeliveryDate");
|
|
|
}
|
|
|
if (params.createTime) {
|
|
|
- params.createTimeStart = params.createTime[0]+ " " + "00:00:00"
|
|
|
- params.createTimeEnd = params.createTime[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'createTime')
|
|
|
+ params.createTimeStart = params.createTime[0] + " " + "00:00:00";
|
|
|
+ params.createTimeEnd = params.createTime[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "createTime");
|
|
|
}
|
|
|
this.page.currentPage = 1;
|
|
|
this.onLoad(this.page, params);
|
|
|
- done()
|
|
|
+ done();
|
|
|
},
|
|
|
searchReset() {
|
|
|
- this.configuration.dicData = []
|
|
|
+ this.configuration.dicData = [];
|
|
|
},
|
|
|
// 选择框
|
|
|
selectionChange(list) {
|
|
@@ -438,55 +432,57 @@ export default {
|
|
|
//列表刷新触发
|
|
|
refreshChange() {
|
|
|
this.dataList.forEach(item => {
|
|
|
- this.$refs.crud.toggleRowExpansion(item, false)
|
|
|
- })
|
|
|
+ this.$refs.crud.toggleRowExpansion(item, false);
|
|
|
+ });
|
|
|
this.page.currentPage = 1;
|
|
|
- this.onLoad(this.page,this.search);
|
|
|
+ this.onLoad(this.page, this.search);
|
|
|
},
|
|
|
// 表格展开触发
|
|
|
expandChange(row, index) {
|
|
|
if (row.loading) {
|
|
|
detail(row.id).then(res => {
|
|
|
- row.insideList = res.data.data.orderItemsList
|
|
|
- row.loading = false
|
|
|
- })
|
|
|
+ row.insideList = res.data.data.orderItemsList;
|
|
|
+ row.loading = false;
|
|
|
+ });
|
|
|
}
|
|
|
},
|
|
|
onLoad(page, params) {
|
|
|
// 重置掉展开
|
|
|
this.dataList.forEach(item => {
|
|
|
- this.$refs.crud.toggleRowExpansion(item, false)
|
|
|
- })
|
|
|
- let data = this.gobackSearch(params)
|
|
|
+ this.$refs.crud.toggleRowExpansion(item, false);
|
|
|
+ });
|
|
|
+ let data = this.gobackSearch(params);
|
|
|
|
|
|
let queryParams = Object.assign({}, data, {
|
|
|
size: page.pageSize,
|
|
|
current: page.currentPage,
|
|
|
- billType:'XS',
|
|
|
+ billType: "XS",
|
|
|
corpsTypeId: this.treeDeptId
|
|
|
- })
|
|
|
+ });
|
|
|
this.loading = true;
|
|
|
- customerList(queryParams).then(res => {
|
|
|
- this.dataList = res.data.data.records
|
|
|
- this.dataList.forEach(item => {
|
|
|
- this.$set(item,'insideList',[])
|
|
|
- this.$set(item,'loading', true)
|
|
|
+ customerList(queryParams)
|
|
|
+ .then(res => {
|
|
|
+ this.dataList = res.data.data.records;
|
|
|
+ this.dataList.forEach(item => {
|
|
|
+ this.$set(item, "insideList", []);
|
|
|
+ this.$set(item, "loading", true);
|
|
|
+ });
|
|
|
+ this.page.total = res.data.data.total;
|
|
|
+ this.option.height = window.innerHeight - 240;
|
|
|
})
|
|
|
- this.page.total = res.data.data.total
|
|
|
- this.option.height = window.innerHeight - 240;
|
|
|
- }).finally(() => {
|
|
|
- this.loading = false;
|
|
|
- })
|
|
|
+ .finally(() => {
|
|
|
+ this.loading = false;
|
|
|
+ });
|
|
|
},
|
|
|
//树桩列点击展开触发
|
|
|
treeLoad(tree, treeNode, resolve) {
|
|
|
const parentId = tree.id;
|
|
|
- customerList({parentId: parentId}).then(res => {
|
|
|
+ customerList({ parentId: parentId }).then(res => {
|
|
|
resolve(res.data.data.records);
|
|
|
});
|
|
|
},
|
|
|
goBack() {
|
|
|
- this.detailData=this.$options.data().detailData
|
|
|
+ this.detailData = this.$options.data().detailData;
|
|
|
if (JSON.stringify(this.$route.query) != "{}") {
|
|
|
this.$router.$avueRouter.closeTag();
|
|
|
this.$router.push({
|
|
@@ -494,39 +490,45 @@ export default {
|
|
|
});
|
|
|
}
|
|
|
this.dataList.forEach(item => {
|
|
|
- this.$refs.crud.toggleRowExpansion(item, false)
|
|
|
- })
|
|
|
+ this.$refs.crud.toggleRowExpansion(item, false);
|
|
|
+ });
|
|
|
this.isShow = true;
|
|
|
this.onLoad(this.page, this.search);
|
|
|
},
|
|
|
gobackSearch(params) {
|
|
|
- params = Object.assign({}, this.search)
|
|
|
- if (params.businesDate && params.businesDate != '') {
|
|
|
- params.orderStartDate = params.businesDate[0]+ " " + "00:00:00"
|
|
|
- params.orderEndDate = params.businesDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'businesDate')
|
|
|
+ params = Object.assign({}, this.search);
|
|
|
+ if (params.businesDate && params.businesDate != "") {
|
|
|
+ params.orderStartDate = params.businesDate[0] + " " + "00:00:00";
|
|
|
+ params.orderEndDate = params.businesDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "businesDate");
|
|
|
}
|
|
|
- if (params.requiredDeliveryDate && params.requiredDeliveryDate != '') {
|
|
|
- params.deliveryStartDate = params.requiredDeliveryDate[0]+ " " + "00:00:00"
|
|
|
- params.deliveryEndDate = params.requiredDeliveryDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'requiredDeliveryDate')
|
|
|
+ if (params.requiredDeliveryDate && params.requiredDeliveryDate != "") {
|
|
|
+ params.deliveryStartDate =
|
|
|
+ params.requiredDeliveryDate[0] + " " + "00:00:00";
|
|
|
+ params.deliveryEndDate =
|
|
|
+ params.requiredDeliveryDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "requiredDeliveryDate");
|
|
|
}
|
|
|
- if (params.requiredArrivalDate && params.requiredArrivalDate != '') {
|
|
|
- params.arrivalDateStart = params.requiredArrivalDate[0]+ " " + "00:00:00"
|
|
|
- params.arrivalDateEnd = params.requiredArrivalDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'requiredArrivalDate')
|
|
|
+ if (params.requiredArrivalDate && params.requiredArrivalDate != "") {
|
|
|
+ params.arrivalDateStart =
|
|
|
+ params.requiredArrivalDate[0] + " " + "00:00:00";
|
|
|
+ params.arrivalDateEnd =
|
|
|
+ params.requiredArrivalDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "requiredArrivalDate");
|
|
|
}
|
|
|
- if (params.actualDeliveryDate && params.actualDeliveryDate != '') {
|
|
|
- params.actualDeliveryDateStart = params.actualDeliveryDate[0]+ " " + "00:00:00"
|
|
|
- params.actualDeliveryDateEnd = params.actualDeliveryDate[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'actualDeliveryDate')
|
|
|
+ if (params.actualDeliveryDate && params.actualDeliveryDate != "") {
|
|
|
+ params.actualDeliveryDateStart =
|
|
|
+ params.actualDeliveryDate[0] + " " + "00:00:00";
|
|
|
+ params.actualDeliveryDateEnd =
|
|
|
+ params.actualDeliveryDate[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "actualDeliveryDate");
|
|
|
}
|
|
|
- if (params.createTime && params.createTime != '') {
|
|
|
- params.createTimeStart = params.createTime[0]+ " " + "00:00:00"
|
|
|
- params.createTimeEnd = params.createTime[1]+ " " + "23:59:59"
|
|
|
- this.$delete(params,'createTime')
|
|
|
+ if (params.createTime && params.createTime != "") {
|
|
|
+ params.createTimeStart = params.createTime[0] + " " + "00:00:00";
|
|
|
+ params.createTimeEnd = params.createTime[1] + " " + "23:59:59";
|
|
|
+ this.$delete(params, "createTime");
|
|
|
}
|
|
|
- return params
|
|
|
+ return params;
|
|
|
},
|
|
|
//列保存触发
|
|
|
async saveColumn() {
|
|
@@ -544,18 +546,17 @@ export default {
|
|
|
//关闭窗口
|
|
|
this.$refs.crud.$refs.dialogColumn.columnBox = false;
|
|
|
this.$nextTick(() => {
|
|
|
- this.$refs.crud.doLayout()
|
|
|
- })
|
|
|
-
|
|
|
+ this.$refs.crud.doLayout();
|
|
|
+ });
|
|
|
}
|
|
|
},
|
|
|
async resetColumn() {
|
|
|
this.option = option;
|
|
|
- const inSave = await this.delColumnData(this.getColumnName(14),option);
|
|
|
+ const inSave = await this.delColumnData(this.getColumnName(14), option);
|
|
|
if (inSave) {
|
|
|
this.$nextTick(() => {
|
|
|
- this.$refs.crud.doLayout()
|
|
|
- })
|
|
|
+ this.$refs.crud.doLayout();
|
|
|
+ });
|
|
|
this.$message.success("重置成功");
|
|
|
//关闭窗口
|
|
|
this.$refs.crud.$refs.dialogColumn.columnBox = false;
|
|
@@ -563,26 +564,31 @@ export default {
|
|
|
},
|
|
|
// 导出
|
|
|
exportHandle() {
|
|
|
- this.$confirm('是否导出产品信息?', '提示', {
|
|
|
- confirmButtonText: '确定',
|
|
|
- cancelButtonText: '取消',
|
|
|
- type: 'warning'
|
|
|
- }).then(() => {
|
|
|
- window.open(
|
|
|
- `/api/blade-client/goodsdesc/export-out-info?${
|
|
|
- this.website.tokenHeader
|
|
|
- }=${getToken()}`
|
|
|
- );
|
|
|
- }).catch(() => {
|
|
|
- this.$message({
|
|
|
- type: 'info',
|
|
|
- message: '已取消' //
|
|
|
- });
|
|
|
+ this.$confirm("是否导出产品信息?", "提示", {
|
|
|
+ confirmButtonText: "确定",
|
|
|
+ cancelButtonText: "取消",
|
|
|
+ type: "warning"
|
|
|
})
|
|
|
+ .then(() => {
|
|
|
+ window.open(
|
|
|
+ `/api/blade-client/goodsdesc/export-out-info?${this.website.tokenHeader
|
|
|
+ }=${getToken()}`
|
|
|
+ );
|
|
|
+ })
|
|
|
+ .catch(() => {
|
|
|
+ this.$message({
|
|
|
+ type: "info",
|
|
|
+ message: "已取消" //
|
|
|
+ });
|
|
|
+ });
|
|
|
},
|
|
|
// 生成采购
|
|
|
saveSell(row) {
|
|
|
- if ((Number(row.settlmentAmount) < Number(row.debitAmount)) && row.specialCheckStatus != 3) return this.$message.error('收款未收齐,禁止生成采购单');
|
|
|
+ if (
|
|
|
+ Number(row.settlmentAmount) < Number(row.debitAmount) &&
|
|
|
+ row.specialCheckStatus != 3
|
|
|
+ )
|
|
|
+ return this.$message.error("收款未收齐,禁止生成采购单");
|
|
|
this.$confirm("是否生成采购单?", {
|
|
|
confirmButtonText: "确定",
|
|
|
cancelButtonText: "取消",
|
|
@@ -591,40 +597,49 @@ export default {
|
|
|
saveSell(row.id).then(res => {
|
|
|
if (res.data.code == 200) {
|
|
|
this.$message.success("生成成功");
|
|
|
- this.onLoad(this.page, this.search)
|
|
|
+ this.onLoad(this.page, this.search);
|
|
|
}
|
|
|
- })
|
|
|
- })
|
|
|
+ });
|
|
|
+ });
|
|
|
},
|
|
|
customerReceipt(row) {
|
|
|
if (this.$store.getters.inStatus) {
|
|
|
this.$alert("客户收货存在,请保存客户收货再进行操作", "温馨提示", {
|
|
|
confirmButtonText: "确定",
|
|
|
type: "warning",
|
|
|
- callback: action => {
|
|
|
- }
|
|
|
+ callback: action => { }
|
|
|
});
|
|
|
} else {
|
|
|
- let arr = []
|
|
|
- this.openFullScreen(false, '正在生成客户收货...');
|
|
|
- detail(row.id).then(res => {
|
|
|
- arr = res.data.data.orderItemsList? res.data.data.orderItemsList: [];
|
|
|
- if (arr.length === 0) return this.$message.error('该单子明细为空,不能生成客户收货')
|
|
|
- let ids = [];
|
|
|
- arr.forEach(item => ids.push(item.id));
|
|
|
- generateShipment({id: row.id, orderItemIds: ids}).then(res => {
|
|
|
- this.$router.$avueRouter.closeTag("/businessManagement/deliveryNotice/index");
|
|
|
- this.$router.push({
|
|
|
- path: "/businessManagement/deliveryNotice/index",
|
|
|
- query: {
|
|
|
- form: JSON.stringify(res.data.data),
|
|
|
- pageType: "Generate",
|
|
|
- },
|
|
|
+ let arr = [];
|
|
|
+ this.openFullScreen(false, "正在生成客户收货...");
|
|
|
+ detail(row.id)
|
|
|
+ .then(res => {
|
|
|
+ arr = res.data.data.orderItemsList
|
|
|
+ ? res.data.data.orderItemsList
|
|
|
+ : [];
|
|
|
+ if (arr.length === 0)
|
|
|
+ return this.$message.error("该单子明细为空,不能生成客户收货");
|
|
|
+ let ids = [];
|
|
|
+ arr.forEach(item => ids.push(item.id));
|
|
|
+ generateShipment({ id: row.id, orderItemIds: ids }).then(res => {
|
|
|
+ this.$router.$avueRouter.closeTag(
|
|
|
+ "/businessManagement/salesOrder/index"
|
|
|
+ );
|
|
|
+ this.$router.$avueRouter.closeTag(
|
|
|
+ "/businessManagement/deliveryNotice/index"
|
|
|
+ );
|
|
|
+ this.$router.push({
|
|
|
+ path: "/businessManagement/deliveryNotice/index",
|
|
|
+ query: {
|
|
|
+ form: JSON.stringify(res.data.data),
|
|
|
+ pageType: "Generate"
|
|
|
+ }
|
|
|
+ });
|
|
|
});
|
|
|
- }).finally(() => {
|
|
|
- this.openFullScreen(true);
|
|
|
})
|
|
|
- })
|
|
|
+ .finally(() => {
|
|
|
+ this.openFullScreen(true);
|
|
|
+ });
|
|
|
}
|
|
|
},
|
|
|
//遮罩层
|
|
@@ -632,22 +647,24 @@ export default {
|
|
|
const loading = this.$loading({
|
|
|
lock: true,
|
|
|
text: text,
|
|
|
- spinner: 'el-icon-loading',
|
|
|
- background: 'rgba(0, 0, 0, 0.7)'
|
|
|
+ spinner: "el-icon-loading",
|
|
|
+ background: "rgba(0, 0, 0, 0.7)"
|
|
|
});
|
|
|
if (res === true) loading.close();
|
|
|
- },
|
|
|
+ }
|
|
|
}
|
|
|
-}
|
|
|
+};
|
|
|
</script>
|
|
|
|
|
|
<style scoped>
|
|
|
/deep/ .el-table__expanded-cell .el-table__header-wrapper .cell {
|
|
|
font-size: 8px !important;
|
|
|
}
|
|
|
+
|
|
|
/deep/ .el-table__body-wrapper .cell {
|
|
|
font-size: 8px;
|
|
|
}
|
|
|
+
|
|
|
/*/deep/ .el-table__expanded-cell {*/
|
|
|
/* padding-left: 90px;*/
|
|
|
/*}*/
|