|
@@ -35,25 +35,26 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="padding-left: 20px">
|
|
|
<el-form-item label="合同号" prop="contractNumber">
|
|
|
- <el-input v-model="dataForm.contractNumber" :disabled="display" placeholder="合同号"></el-input>
|
|
|
+ <el-input v-model="dataForm.contractNumber" :disabled="display || addType === 2" placeholder="合同号"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="padding-left: 20px">
|
|
|
<el-form-item label="客户名称" prop="customerId">
|
|
|
- <cus-component v-model="dataForm.customerId" :cus-id="dataForm.customerId"></cus-component>
|
|
|
+ <el-input v-if="display || addType === 2" v-model="dataForm.customerName" disabled></el-input>
|
|
|
+ <cus-component v-else v-model="dataForm.customerId" :disabled="display || addType === 2" :cus-id="dataForm.customerId"></cus-component>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
|
<el-row class="my-row">
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="业务员" prop="salesmanId">
|
|
|
- <el-input v-if="display" v-model="dataForm.salesmanName" disabled></el-input>
|
|
|
+ <el-input v-if="display || addType === 2" v-model="dataForm.salesmanName" disabled></el-input>
|
|
|
<user-component v-else v-model="dataForm.salesmanId" :user-id="dataForm.salesmanId" @userSelected="salesmanChanged"></user-component>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
<el-col :span="8" style="padding-left: 20px">
|
|
|
<el-form-item label="合同交期" prop="deliveryDate">
|
|
|
- <el-input v-if="display" v-model="dataForm.deliveryDate" disabled></el-input>
|
|
|
+ <el-input v-if="display || addType === 2" v-model="dataForm.deliveryDate" disabled></el-input>
|
|
|
<el-date-picker v-else
|
|
|
v-model="dataForm.deliveryDate"
|
|
|
value-format="yyyy-MM-dd"
|
|
@@ -63,7 +64,7 @@
|
|
|
</el-col>
|
|
|
<el-col :span="8">
|
|
|
<el-form-item label="批次号" prop="batchNumber">
|
|
|
- <el-input v-model="dataForm.batchNumber" placeholder="批次号"></el-input>
|
|
|
+ <el-input v-model="dataForm.batchNumber" placeholder="批次号" :disabled="display || addType === 2"></el-input>
|
|
|
</el-form-item>
|
|
|
</el-col>
|
|
|
</el-row>
|
|
@@ -72,7 +73,7 @@
|
|
|
<!-- </el-row>-->
|
|
|
<el-row class="my-row">
|
|
|
<el-form-item label="备注说明" prop="notes">
|
|
|
- <el-input type="textarea" v-model="dataForm.notes" :disabled="display" placeholder="备注说明"></el-input>
|
|
|
+ <el-input type="textarea" v-model="dataForm.notes" :disabled="display || addType === 2" placeholder="备注说明" ></el-input>
|
|
|
</el-form-item>
|
|
|
</el-row>
|
|
|
<el-row class="my-row">
|
|
@@ -107,31 +108,23 @@
|
|
|
prop="cnt"
|
|
|
header-align="center"
|
|
|
align="center"
|
|
|
- min-width="160"
|
|
|
+ min-width="100"
|
|
|
label="数量">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-input-number v-model="scope.row.cnt" :disabled="display" :min="1" style="width: 140px;"/>
|
|
|
- </template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
prop="productNumber"
|
|
|
header-align="center"
|
|
|
align="center"
|
|
|
- min-width="125"
|
|
|
+ min-width="160"
|
|
|
+ :show-tooltip-when-overflow="true"
|
|
|
label="订单编号">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-input v-model="scope.row.productNumber" :disabled="display" :min="1" style="width: 100px;"/>
|
|
|
- </template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
prop="price"
|
|
|
header-align="center"
|
|
|
align="center"
|
|
|
- min-width="160"
|
|
|
+ min-width="100"
|
|
|
label="含税单价">
|
|
|
- <template slot-scope="scope">
|
|
|
- <el-input-number v-model="scope.row.price" :disabled="display" :precision="1" :step="0.1" :min="0" style="width: 140px;"/>
|
|
|
- </template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
|
prop="amount"
|
|
@@ -147,12 +140,10 @@
|
|
|
prop="rate"
|
|
|
header-align="center"
|
|
|
align="center"
|
|
|
- min-width="130"
|
|
|
+ min-width="100"
|
|
|
label="税率">
|
|
|
<template slot-scope="scope">
|
|
|
- <el-input type="number" v-model="scope.row.rate" :disabled="display">
|
|
|
- <template slot="append">%</template>
|
|
|
- </el-input>
|
|
|
+ {{scope.row.rate}}%
|
|
|
</template>
|
|
|
</el-table-column>
|
|
|
<el-table-column
|
|
@@ -175,9 +166,10 @@
|
|
|
fixed="right"
|
|
|
header-align="center"
|
|
|
align="center"
|
|
|
- width="80"
|
|
|
+ width="150"
|
|
|
label="操作">
|
|
|
<template slot-scope="scope">
|
|
|
+ <el-button type="text" size="small" @click="updateProductHandle(scope.row)">编辑</el-button>
|
|
|
<el-button style="color: red" type="text" size="small" @click="deleteProductHandle(scope.row.recordId)">删除</el-button>
|
|
|
</template>
|
|
|
</el-table-column>
|
|
@@ -219,6 +211,7 @@
|
|
|
productListVisible: false,
|
|
|
visible: false,
|
|
|
display: false,
|
|
|
+ addType: 0,
|
|
|
fileList: [],
|
|
|
dataList: [],
|
|
|
id: 0,
|
|
@@ -238,7 +231,11 @@
|
|
|
onChose () {
|
|
|
this.$emit('onChose')
|
|
|
},
|
|
|
- async init (id, display) {
|
|
|
+ // 初始化:addType 新增类型: 0新增,1修改 2技术确认 (目前只有2才会赋值)
|
|
|
+ async init (id, display, addType) {
|
|
|
+ if (addType) {
|
|
|
+ this.addType = addType
|
|
|
+ }
|
|
|
this.fileList = []
|
|
|
this.stepList = []
|
|
|
this.logList = []
|
|
@@ -278,20 +275,15 @@
|
|
|
uploadSuccess (fileList) {
|
|
|
this.fileList = fileList
|
|
|
},
|
|
|
- // 添加订单产品明细
|
|
|
- addProduct () {
|
|
|
- this.productListVisible = true
|
|
|
- this.$nextTick(() => {
|
|
|
- this.$refs.productList.init(2)
|
|
|
- })
|
|
|
- },
|
|
|
addItem (item) {
|
|
|
if (!item.recordId) {
|
|
|
item.recordId = Math.round(Math.random() * 1000000)
|
|
|
}
|
|
|
- this.productDetails.push({
|
|
|
- ...item
|
|
|
- })
|
|
|
+ if (this.productDetails.findIndex(item1 => item1.recordId === item.recordId) === -1) {
|
|
|
+ this.productDetails.push({
|
|
|
+ ...item
|
|
|
+ })
|
|
|
+ }
|
|
|
},
|
|
|
validateField (type) {
|
|
|
this.$refs.dataForm.validateField(type)
|
|
@@ -349,6 +341,20 @@
|
|
|
salesmanChanged (val) {
|
|
|
this.dataForm.salesmanId = val
|
|
|
},
|
|
|
+ // 添加订单产品明细
|
|
|
+ addProduct () {
|
|
|
+ this.productListVisible = true
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.productList.init(2)
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 编辑产品项
|
|
|
+ updateProductHandle (row) {
|
|
|
+ this.productListVisible = true
|
|
|
+ this.$nextTick(() => {
|
|
|
+ this.$refs.productList.init(2, row, this.addType)
|
|
|
+ })
|
|
|
+ },
|
|
|
// 删除产品项
|
|
|
deleteProductHandle (recordId) {
|
|
|
this.productDetails.splice(this.productDetails.findIndex((item) => item.recordId === recordId))
|