|
@@ -21,28 +21,141 @@
|
|
|
></uploadAllData>
|
|
|
</div>
|
|
|
<p class="normal-margin" style="font-size: 13px !important;color:red;font-weight: normal" v-if="data.status === '新建'">{{checkFreefreightamount}}</p>
|
|
|
- <!-- <tableLayout :layout="tablecols" :data="tableData" :custom="true" :checkbox="true" fixedName="rowno itemname itemno erpitemno model" redirect="left">
|
|
|
+ <Table
|
|
|
+ height="calc(100vh - 500px)"
|
|
|
+ ref="multipleTable"
|
|
|
+ :layout="tablecols"
|
|
|
+ :data="tableData"
|
|
|
+ @selectionChange="selectionChange"
|
|
|
+ :custom="true" :checkbox="true" fixedName="rowno itemname itemno erpitemno model" redirect="left" :headerOptions="['needdate','deliverydate']">
|
|
|
+ <template v-slot:header="scope">
|
|
|
+ <div v-if="scope.column.columnname == 'needdate'">
|
|
|
+ <el-date-picker
|
|
|
+ style="width:150px"
|
|
|
+ v-if="data.status === '新建'"
|
|
|
+ v-model="value2"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ slot="reference"
|
|
|
+ align="right"
|
|
|
+ type="date"
|
|
|
+ size="mini"
|
|
|
+ placeholder="一键填写需求日期"
|
|
|
+ @change="dateChangeNeed">
|
|
|
+ </el-date-picker>
|
|
|
+ <span v-else>需求日期</span>
|
|
|
+ </div>
|
|
|
+ <div v-if="scope.column.columnname == 'deliverydate'">
|
|
|
+ <el-date-picker
|
|
|
+ style="width:180px"
|
|
|
+ v-if="type === 'confirmdate'"
|
|
|
+ v-model="value2"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ slot="reference"
|
|
|
+ align="right"
|
|
|
+ type="date"
|
|
|
+ size="mini"
|
|
|
+ placeholder="一键回复交期"
|
|
|
+ @change="dateChange">
|
|
|
+ </el-date-picker>
|
|
|
+ <span v-else>回复交期</span>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
<template v-slot:customcol="scope">
|
|
|
-
|
|
|
- <p v-if="scope.column.columnname === 'status'">
|
|
|
- <span :style="scope.column.data.status === '启用'?'color:#52C41A':'color:#FF3B30'">{{scope.column.data.status}}</span>
|
|
|
- </p>
|
|
|
- <p v-else-if="scope.column.columnname === 'province'">
|
|
|
- <span>{{scope.column.data.province}} - {{scope.column.data.city}} - {{scope.column.data.county}}</span>
|
|
|
- </p>
|
|
|
+ <div v-if="scope.column.columnname === 'qty'">
|
|
|
+ <el-input-number :controls="true" controls-position='right' :step-strictly="true" v-if="data.status === '新建' && data.type !=='特殊订单'" size="mini" v-model="scope.column.data.qty" :min="scope.column.data.orderminqty" :step="scope.column.data.orderaddqty" label="输入数量" @change="rowChange(scope.column.data,scope.$index)"></el-input-number>
|
|
|
+ <el-input-number :controls="true" controls-position='right' :step-strictly="true" v-else-if="data.status === '新建' && data.type ==='特殊订单'" size="mini" v-model="scope.column.data.qty" label="输入数量" @change="rowChange(scope.column.data,scope.$index)"></el-input-number>
|
|
|
+ <span v-else>{{scope.column.data.qty}}</span>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'needdate'">
|
|
|
+ <el-date-picker
|
|
|
+ v-if="scope.column.data.delivery > 0 && data.status === '新建'"
|
|
|
+ v-model="scope.column.data.needdate"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ size="mini"
|
|
|
+ style="width:150px"
|
|
|
+ :picker-options="pickerOptions1"
|
|
|
+ @change="rowChange(scope.column.data)">
|
|
|
+ </el-date-picker>
|
|
|
+ <div v-else>
|
|
|
+ <p v-if="scope.column.data.delivery === 0 ">不管控交期</p>
|
|
|
+ <p v-else>{{scope.column.data.needdate}}</p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'deliverydate'">
|
|
|
+ <el-date-picker
|
|
|
+ v-if="scope.column.data.delivery > 0 && type === 'confirmdate'"
|
|
|
+ v-model="scope.column.data.deliverydate"
|
|
|
+ type="date"
|
|
|
+ placeholder="选择日期"
|
|
|
+ value-format="yyyy-MM-dd"
|
|
|
+ size="mini"
|
|
|
+ style="width:150px"
|
|
|
+ :picker-options="pickerOptions"
|
|
|
+ @change="onDateChange(scope.column.data)"
|
|
|
+ @focus="setPickerOptions(scope.column.data)">
|
|
|
+ </el-date-picker>
|
|
|
+ <div v-else>
|
|
|
+ <p v-if="scope.column.data.delivery === 0 ">不管控交期</p>
|
|
|
+ <p v-else>{{scope.column.data.deliverydate}}</p>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'unit'">
|
|
|
+ <el-tag size="mini" type="info" effect="plain">{{scope.column.data.unit}}</el-tag>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'marketprice'">
|
|
|
+ <p>¥ {{tool.formatAmount(scope.column.data.marketprice,2)}}</p>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'defaultprice'">
|
|
|
+ <el-input v-if="data.status === '新建' && data.type === '特殊订单'" v-model="scope.column.data.defaultprice" placeholder="输入订单备注" size="mini" @change="rowChange(scope.column.data,scope.$index)"></el-input>
|
|
|
+ <p v-else>¥ {{tool.formatAmount(scope.column.data.defaultprice,2)}}</p>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'defaultamount'">
|
|
|
+ <p>¥ {{tool.formatAmount(scope.column.data.defaultamount,2)}}</p>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'price'">
|
|
|
+ <p>¥ {{tool.formatAmount(scope.column.data.price,2)}}</p>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'amount'">
|
|
|
+ <p style="color:red;font-weight:500">¥ {{tool.formatAmount(scope.column.data.amount,2)}}</p>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'stockname'">
|
|
|
+ <el-select v-model="scope.column.data.stockno" size="mini" @visible-change="queryStock(scope.column.data)" placeholder="请选择">
|
|
|
+ <el-option
|
|
|
+ v-for="item in stockOptions"
|
|
|
+ :key="item.WAREHOUSE"
|
|
|
+ :label="item.WAREHOUSE"
|
|
|
+ :value="item.WAREHOUSE"
|
|
|
+ @click.native="stockChange(item,scope.column.data,scope.$index)">
|
|
|
+ <span>{{ item.WAREHOUSE }}</span>
|
|
|
+ <div style="float: right; color: #8492a6; font-size: 13px">数量:{{item.qty}}仓位:{{ item.LOCATION }}/批号:{{ item.LOT }}</div>
|
|
|
+ </el-option>
|
|
|
+ </el-select>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'position'">
|
|
|
+ <el-input size="mini" readonly v-model="scope.column.data.position" @input="rowChange(scope.column.data,scope.$index)" placeholder="输入仓位"></el-input>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'batchno'">
|
|
|
+ <el-input size="mini" readonly v-model="scope.column.data.batchno" @input="rowChange(scope.column.data,scope.$index)" placeholder="输入批号"></el-input>
|
|
|
+ </div>
|
|
|
+ <div v-else-if="scope.column.columnname === 'remarks'">
|
|
|
+ <el-input type="textarea" v-model="scope.column.data.remarks" placeholder="输入订单备注" size="mini" @change="rowChange(scope.column.data,scope.$index)"></el-input>
|
|
|
+ </div>
|
|
|
<p v-else>{{scope.column.data[scope.column.columnname]}}</p>
|
|
|
</template>
|
|
|
<template v-slot:opreation="scope">
|
|
|
- <slot name="detail" :data="scope.data"></slot>
|
|
|
+ <el-button v-if="data.status == '新建'" type="text" size="mini" @click="deleteOrderProduct(scope.data)">删 除</el-button>
|
|
|
</template>
|
|
|
- </tableLayout> -->
|
|
|
- <el-table
|
|
|
+ </Table>
|
|
|
+ <!-- <el-table
|
|
|
ref="multipleTable"
|
|
|
:data="tableData"
|
|
|
size="small"
|
|
|
max-height="500px"
|
|
|
stripe
|
|
|
border
|
|
|
+ lazy
|
|
|
@selection-change ="selectionChange">
|
|
|
<el-table-column
|
|
|
type="selection"
|
|
@@ -214,13 +327,6 @@
|
|
|
<p>¥ {{tool.formatAmount(scope.row.price,2)}}</p>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- <!-- <el-table-column
|
|
|
- label="折后价格"
|
|
|
- prop="totalprice">
|
|
|
- <template slot-scope="scope">
|
|
|
- <p style="color:red;font-weight:500">¥ {{scope.row.price}}</p>
|
|
|
- </template>
|
|
|
- </el-table-column> -->
|
|
|
<el-table-column
|
|
|
label="折后金额"
|
|
|
prop="amount">
|
|
@@ -316,7 +422,6 @@
|
|
|
prop="remarks">
|
|
|
<template slot-scope="scope">
|
|
|
<el-input v-model="scope.row.remarks" placeholder="输入订单备注" size="mini" @change="rowChange(scope.row,scope.$index)"></el-input>
|
|
|
- <!-- <p v-else>{{scope.row.remarks}}</p> -->
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column v-if="data.status === '新建'" width="90" fixed="right">
|
|
@@ -324,7 +429,7 @@
|
|
|
<el-button type="text" size="mini" @click="deleteOrderProduct(scope.row)">删 除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
- </el-table>
|
|
|
+ </el-table> -->
|
|
|
<div style="margin-top:16px;text-align:right">
|
|
|
<el-pagination
|
|
|
background
|
|
@@ -368,9 +473,11 @@
|
|
|
import addProduct from '@/template/addProduct/index'
|
|
|
import excel from '../export_excel.vue'
|
|
|
import uploadAllData from '@/components/uploadAllData/index'
|
|
|
+import Table from './table'
|
|
|
export default {
|
|
|
props:['data','type'],
|
|
|
components:{
|
|
|
+ Table,
|
|
|
excel,
|
|
|
addProduct,
|
|
|
uploadAllData,
|
|
@@ -734,18 +841,27 @@ export default {
|
|
|
this.listData()
|
|
|
// this.queryStock()
|
|
|
this.columnTitle = []
|
|
|
- this.$refs.multipleTable.$children.forEach(obj => {
|
|
|
-
|
|
|
+ setTimeout(() => {
|
|
|
+ this.$refs.multipleTable.$refs.table.$children.forEach(obj => {
|
|
|
let columnChild = {'columnname':obj.prop,'filter':0,'rowindex':'','sequence':'','title':obj.label,'width':obj.width}
|
|
|
// 存到columnTitle数组中
|
|
|
this.columnTitle.push(columnChild)
|
|
|
-
|
|
|
})
|
|
|
- // console.log(this.columnTitle)
|
|
|
+ },1000)
|
|
|
+ /* 处理宁波站点 */
|
|
|
+ let siteid = JSON.parse(sessionStorage.getItem('active_account')).siteid
|
|
|
+ if (siteid === 'NB' && this.data.type === '特殊订单' && this.data.typemx === '样品') {
|
|
|
+ console.log('宁波');
|
|
|
+ this.tablecols = this.tool.tabelCol(this.$route.name).OrderListTable.tablecols
|
|
|
+ } else {
|
|
|
+ console.log('不宁波');
|
|
|
+ this.tablecols = this.tool.tabelCol(this.$route.name).OrderListTable.tablecols.filter(item => {
|
|
|
+ if (item.columnname != 'stockname' && item.columnname != 'position' && item.columnname != 'batchno') return item
|
|
|
+ })
|
|
|
+ }
|
|
|
},
|
|
|
created() {
|
|
|
this.tablecolsAdd = this.tool.tabelCol(this.$route.name).addProductTable.tablecols
|
|
|
- this.tablecols = this.tool.tabelCol(this.$route.name).OrderListTable.tablecols
|
|
|
}
|
|
|
}
|
|
|
|