改配件申请100%
This commit is contained in:
parent
b8636a1728
commit
1870f2f898
@ -21,17 +21,24 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="单据号" align="center" prop="no" width="200"/>
|
<el-table-column label="单据号" align="center" prop="no" width="200"/>
|
||||||
<el-table-column label="客户车牌" align="center" prop="licenseNumber"/>
|
<el-table-column label="客户信息" align="center">
|
||||||
<el-table-column label="服务顾问" align="center" prop="adviserName"/>
|
<el-table-column label="姓名" align="center" prop="userName" width="180"/>
|
||||||
<el-table-column label="申请人" align="center" prop="repairName"/>
|
<el-table-column label="联系电话" align="center" prop="userMobile" width="180"/>
|
||||||
<el-table-column label="状态" align="center" prop="status">
|
<el-table-column label="车牌号" align="center" prop="licenseNumber" width="180"/>
|
||||||
|
</el-table-column>
|
||||||
|
<el-table-column label="申请人" align="center" prop="repairName" width="180"/>
|
||||||
|
<el-table-column label="岗位" align="center" prop="repairWork" width="180">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
<dict-tag :type="DICT_TYPE.TICKET_WARES_STATUS" v-model="scope.row.status"/>
|
<dict-tag :type="DICT_TYPE.REPAIR_WORK_TYPE" :value="scope.row.repairWork" />
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="备注" align="center" prop="remark"/>
|
<el-table-column label="服务顾问" align="center" prop="adviserName" width="180"/>
|
||||||
<el-table-column label="操作" align="center">
|
<el-table-column label="备注" align="center" prop="remark" width="180" :show-overflow-tooltip="true"/>
|
||||||
|
<el-table-column label="操作" align="center" fixed="right" width="180">
|
||||||
<template slot-scope="scope">
|
<template slot-scope="scope">
|
||||||
|
<el-button type="text" size="mini" icon="el-icon-view" @click="handleView(scope.row)">
|
||||||
|
查看
|
||||||
|
</el-button>
|
||||||
<el-button type="text" size="mini" @click="handleDispose(scope.row)" icon="el-icon-edit">
|
<el-button type="text" size="mini" @click="handleDispose(scope.row)" icon="el-icon-edit">
|
||||||
处理
|
处理
|
||||||
</el-button>
|
</el-button>
|
||||||
@ -39,7 +46,7 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
</el-table>
|
</el-table>
|
||||||
<!-- 分页组件 -->
|
<!-- 分页组件 -->
|
||||||
<pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
<pagination style="margin-bottom: 2rem" v-show="total > 0" :total="total" :page.sync="queryParams.pageNo" :limit.sync="queryParams.pageSize"
|
||||||
@pagination="getList"
|
@pagination="getList"
|
||||||
/>
|
/>
|
||||||
|
|
||||||
@ -57,7 +64,7 @@
|
|||||||
>
|
>
|
||||||
<el-table-column type="selection" width="80" align="center"/>
|
<el-table-column type="selection" width="80" align="center"/>
|
||||||
<el-table-column label="名称" align="center" prop="waresName" :show-overflow-tooltip="true"/>
|
<el-table-column label="名称" align="center" prop="waresName" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="规格" align="center" prop="wares.model" width="180"/>
|
<!-- <el-table-column label="规格" align="center" prop="wares.model" width="180"/>-->
|
||||||
<el-table-column label="领料数量" v-if="type" align="center" prop="waresCount" width="180">
|
<el-table-column label="领料数量" v-if="type" align="center" prop="waresCount" width="180">
|
||||||
<div class="item" slot-scope="scope">
|
<div class="item" slot-scope="scope">
|
||||||
<el-input @blur="save(scope.row)" class="item__input" v-model="scope.row.waresCount"
|
<el-input @blur="save(scope.row)" class="item__input" v-model="scope.row.waresCount"
|
||||||
@ -130,9 +137,14 @@
|
|||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="库存" align="center" width="150" prop="stock"/>
|
<el-table-column label="库存" align="center" width="150" prop="stock"/>
|
||||||
<el-table-column label="单位" align="center" width="150" prop="unit">
|
<el-table-column label="单位" align="center" width="150" prop="unit">
|
||||||
<template slot-scope="scope">
|
<div class="item" slot-scope="scope">
|
||||||
<dict-tag :type="DICT_TYPE.REPAIR_UNIT" v-model="scope.row.unit"/>
|
<el-select class="item__input" v-model="scope.row.unit" @blur="save(scope.row)">
|
||||||
</template>
|
<el-option v-for="dict in getDictDatasToType(DICT_TYPE.REPAIR_UNIT)" :key="dict.value" :label="dict.label" :value="dict.value" />
|
||||||
|
</el-select>
|
||||||
|
<span class="item__txt">
|
||||||
|
<dict-tag :type="DICT_TYPE.REPAIR_UNIT" v-model="scope.row.unit"/>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="数量" align="center" width="150" prop="count">
|
<el-table-column label="数量" align="center" width="150" prop="count">
|
||||||
<div class="item" slot-scope="scope">
|
<div class="item" slot-scope="scope">
|
||||||
@ -174,6 +186,8 @@
|
|||||||
<el-button type="primary" @click="handleSubmit">确定</el-button>
|
<el-button type="primary" @click="handleSubmit">确定</el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
|
<TicketWaresShow ref="ticketWaresShow" :user-role="'repair_warehouse'" @success="getList" :type="false"/>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -186,10 +200,11 @@ import SoTable from "@/views/repair/stockOperate/Components/SoTable.vue";
|
|||||||
import WarehouseChoose from "@/views/repair/Components/WarehouseChoose.vue";
|
import WarehouseChoose from "@/views/repair/Components/WarehouseChoose.vue";
|
||||||
import {createRepairSo} from "@/api/repair/stockOperate/stockOperate";
|
import {createRepairSo} from "@/api/repair/stockOperate/stockOperate";
|
||||||
import {getUserProfile} from "@/api/system/user";
|
import {getUserProfile} from "@/api/system/user";
|
||||||
|
import TicketWaresShow from "@/views/repair/tickets/Components/TicketWaresShow.vue";
|
||||||
|
|
||||||
export default {
|
export default {
|
||||||
name: "WaresItem",
|
name: "WaresItem",
|
||||||
components: {WarehouseChoose, SoTable},
|
components: {TicketWaresShow, WarehouseChoose, SoTable},
|
||||||
props: {
|
props: {
|
||||||
type: Boolean,
|
type: Boolean,
|
||||||
},
|
},
|
||||||
@ -199,8 +214,7 @@ export default {
|
|||||||
pageNo: 1,
|
pageNo: 1,
|
||||||
pageSize: 10,
|
pageSize: 10,
|
||||||
query: null,
|
query: null,
|
||||||
type: "01",
|
isBack: !this.type,
|
||||||
isBack: this.type ? null : true
|
|
||||||
},
|
},
|
||||||
showSearch: true,
|
showSearch: true,
|
||||||
loading: false,
|
loading: false,
|
||||||
@ -217,7 +231,7 @@ export default {
|
|||||||
// 保存进入编辑的cell
|
// 保存进入编辑的cell
|
||||||
clickCellMap: {},
|
clickCellMap: {},
|
||||||
// 需要编辑的属性
|
// 需要编辑的属性
|
||||||
editProp: ['warehouse', 'count', 'newPrice', 'remark', 'code', 'waresCount', 'model'],
|
editProp: ['warehouse', 'count', 'newPrice', 'remark', 'code', 'waresCount', 'model', 'unit'],
|
||||||
remark: null,
|
remark: null,
|
||||||
tableKey: 0,
|
tableKey: 0,
|
||||||
}
|
}
|
||||||
@ -226,6 +240,9 @@ export default {
|
|||||||
this.getList()
|
this.getList()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
|
getDictDatasToType(type){
|
||||||
|
return this.getDictDatas(type)
|
||||||
|
},
|
||||||
// 通过 true是全部、false是选择
|
// 通过 true是全部、false是选择
|
||||||
async handlePass() {
|
async handlePass() {
|
||||||
// 生成领料单、退料单
|
// 生成领料单、退料单
|
||||||
@ -304,15 +321,13 @@ export default {
|
|||||||
const data = {twId: row.id}
|
const data = {twId: row.id}
|
||||||
const res = await listTwItem(data)
|
const res = await listTwItem(data)
|
||||||
this.items = res.data
|
this.items = res.data
|
||||||
|
this.items = this.items.filter(item => item.waresStatus === '1')
|
||||||
this.items.forEach(item => {
|
this.items.forEach(item => {
|
||||||
const count = item.waresAlreadyCount ? parseInt(item.waresCount) - parseInt(item.waresAlreadyCount) : item.waresCount
|
const count = item.waresAlreadyCount ? parseInt(item.waresCount) - parseInt(item.waresAlreadyCount) : item.waresCount
|
||||||
item.waresCount = this.type ? count : item.waresAlreadyCount
|
item.waresCount = this.type ? count : item.waresAlreadyCount
|
||||||
item.isStock = this.type ? count <= item.wares.stock : true
|
item.isStock = this.type ? count <= item.wares.stock : true
|
||||||
})
|
})
|
||||||
this.items = this.items.filter(item => this.type ? item.waresStatus === '02' : item.waresAlreadyCount)
|
this.items = this.items.filter(item => this.type ? (item.waresCount > item.waresAlreadyCount) : (item.waresAlreadyCount > 0))
|
||||||
if (!this.type) {
|
|
||||||
this.items = this.items.filter(item => item.waresAlreadyCount !== item.waresBackCount)
|
|
||||||
}
|
|
||||||
} finally {
|
} finally {
|
||||||
this.dialogLoading = false
|
this.dialogLoading = false
|
||||||
}
|
}
|
||||||
@ -497,6 +512,9 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
return flag.filter(item => item !== "").join(",")
|
return flag.filter(item => item !== "").join(",")
|
||||||
|
},
|
||||||
|
handleView(row){
|
||||||
|
this.$refs.ticketWaresShow.open(row)
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -95,12 +95,12 @@
|
|||||||
<!-- </el-table-column>-->
|
<!-- </el-table-column>-->
|
||||||
<el-table-column label="状态" align="center" width="180">
|
<el-table-column label="状态" align="center" width="180">
|
||||||
<el-table-column label="×" prop="wareStatus" align="center">
|
<el-table-column label="×" prop="wareStatus" align="center">
|
||||||
<template slot-scope="scope" v-if="scope.row.wareStatus === '0'">
|
<template slot-scope="scope" v-if="scope.row.waresStatus === '0'">
|
||||||
<span style="color: #ffd51c">°</span>
|
<span style="color: #ffd51c">°</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="√" prop="wareStatus" align="center">
|
<el-table-column label="√" prop="wareStatus" align="center">
|
||||||
<template slot-scope="scope" v-if="scope.row.wareStatus === '1'">
|
<template slot-scope="scope" v-if="scope.row.waresStatus === '1'">
|
||||||
<span style="color: #3aff70">°</span>
|
<span style="color: #3aff70">°</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -113,13 +113,13 @@
|
|||||||
<el-table-column label="名称" align="center" prop="waresName" :show-overflow-tooltip="true"/>
|
<el-table-column label="名称" align="center" prop="waresName" :show-overflow-tooltip="true"/>
|
||||||
<el-table-column label="数量" align="center" prop="waresCount" width="180"/>
|
<el-table-column label="数量" align="center" prop="waresCount" width="180"/>
|
||||||
<el-table-column label="状态" align="center" width="180">
|
<el-table-column label="状态" align="center" width="180">
|
||||||
<el-table-column label="×" prop="wareStatus" align="center">
|
<el-table-column label="×" prop="waresStatus" align="center">
|
||||||
<template slot-scope="scope" v-if="scope.row.wareStatus === '0'">
|
<template slot-scope="scope" v-if="scope.row.waresStatus === '0'">
|
||||||
<span style="color: #ffd51c">°</span>
|
<span style="color: #ffd51c">°</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="√" prop="wareStatus" align="center">
|
<el-table-column label="√" prop="wareStatus" align="center">
|
||||||
<template slot-scope="scope" v-if="scope.row.wareStatus === '1'">
|
<template slot-scope="scope" v-if="scope.row.waresStatus === '1'">
|
||||||
<span style="color: #3aff70">°</span>
|
<span style="color: #3aff70">°</span>
|
||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
@ -201,6 +201,9 @@ export default {
|
|||||||
itemDiscount: 1,
|
itemDiscount: 1,
|
||||||
}
|
}
|
||||||
})]
|
})]
|
||||||
|
if (this.type){
|
||||||
|
this.items = [...this.items.filter(item => item.waresStatus === "")]
|
||||||
|
}
|
||||||
} finally {
|
} finally {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}
|
}
|
||||||
@ -221,40 +224,21 @@ export default {
|
|||||||
// if (names) {
|
// if (names) {
|
||||||
// await this.$modal.confirm("确认配件:" + names + "的销售价格为0吗?")
|
// await this.$modal.confirm("确认配件:" + names + "的销售价格为0吗?")
|
||||||
// }
|
// }
|
||||||
this.formData['status'] = flag ? "02" : '03'
|
this.dialogLoading = this.$loading({
|
||||||
|
target: this.$refs.dialogRef.$el
|
||||||
|
})
|
||||||
|
this.formData['status'] = flag ? "01" : '02'
|
||||||
// 处理配件信息
|
// 处理配件信息
|
||||||
if (this.selectRow && this.selectRow.length > 0){
|
if (this.selectRow && this.selectRow.length > 0){
|
||||||
this.formData.wares = [...this.selectRow.map(item => {
|
this.formData.items = [...this.selectRow.map(item => {
|
||||||
return {
|
return {
|
||||||
itemName: item.waresName,
|
id: item.id
|
||||||
itemCount: item.waresCount,
|
|
||||||
itemUnit: item.wares.unit,
|
|
||||||
itemPrice: item.wares.price,
|
|
||||||
repairIds: this.formData.repairId,
|
|
||||||
repairNames: this.formData.repairName,
|
|
||||||
saleId: this.formData.adviserId,
|
|
||||||
saleName: this.formData.adviserName,
|
|
||||||
itemDiscount: item.itemDiscount,
|
|
||||||
itemMoney: item.wares.price * item.waresCount * (item.itemDiscount / 10),
|
|
||||||
partId: item.waresId,
|
|
||||||
remark: item.remark
|
|
||||||
}
|
}
|
||||||
})]
|
})]
|
||||||
}else {
|
}else {
|
||||||
this.formData.wares = [...this.items.map(item => {
|
this.formData.items = [...this.items.map(item => {
|
||||||
return {
|
return {
|
||||||
itemName: item.waresName,
|
id: item.id
|
||||||
itemCount: item.waresCount,
|
|
||||||
itemUnit: item.wares.unit,
|
|
||||||
itemPrice: item.wares.price,
|
|
||||||
repairIds: this.formData.repairId,
|
|
||||||
repairNames: this.formData.repairName,
|
|
||||||
saleId: this.formData.adviserId,
|
|
||||||
saleName: this.formData.adviserName,
|
|
||||||
itemDiscount: item.itemDiscount,
|
|
||||||
itemMoney: item.wares.price * item.waresCount * (item.itemDiscount / 10),
|
|
||||||
partId: item.waresId,
|
|
||||||
remark: item.remark
|
|
||||||
}
|
}
|
||||||
})]
|
})]
|
||||||
}
|
}
|
||||||
@ -262,10 +246,9 @@ export default {
|
|||||||
this.dialogVisible = false
|
this.dialogVisible = false
|
||||||
this.$modal.msgSuccess("审核成功")
|
this.$modal.msgSuccess("审核成功")
|
||||||
this.$emit('success')
|
this.$emit('success')
|
||||||
} catch {
|
} finally {
|
||||||
|
this.dialogLoading.close()
|
||||||
}
|
}
|
||||||
|
|
||||||
},
|
},
|
||||||
/** 鼠标移入cell */
|
/** 鼠标移入cell */
|
||||||
handleCellEnter(row, column, cell, event) {
|
handleCellEnter(row, column, cell, event) {
|
||||||
|
@ -45,8 +45,8 @@
|
|||||||
</template>
|
</template>
|
||||||
</el-table-column>
|
</el-table-column>
|
||||||
<el-table-column label="商品名称" align="center" prop="repairWares.name" />
|
<el-table-column label="商品名称" align="center" prop="repairWares.name" />
|
||||||
<el-table-column label="商品编码" align="center" prop="repairWares.code" />
|
<!-- <el-table-column label="商品编码" align="center" prop="repairWares.code" />-->
|
||||||
<el-table-column label="规格" align="center" prop="repairWares.model" />
|
<!-- <el-table-column label="规格" align="center" prop="repairWares.model" />-->
|
||||||
<el-table-column label="数量" align="center" prop="goodsCount" />
|
<el-table-column label="数量" align="center" prop="goodsCount" />
|
||||||
</el-table>
|
</el-table>
|
||||||
<el-form style="margin-top: 1rem" :inline="true">
|
<el-form style="margin-top: 1rem" :inline="true">
|
||||||
@ -132,6 +132,7 @@ export default {
|
|||||||
this.formData['id'] = row.id
|
this.formData['id'] = row.id
|
||||||
try{
|
try{
|
||||||
this.items = []
|
this.items = []
|
||||||
|
this.image = null
|
||||||
this.dialogVisible = true
|
this.dialogVisible = true
|
||||||
this.dialogLoading = true
|
this.dialogLoading = true
|
||||||
const res = await getRepairSoiBySoId(row.id)
|
const res = await getRepairSoiBySoId(row.id)
|
||||||
|
Loading…
Reference in New Issue
Block a user