接单上传图片
This commit is contained in:
parent
b1e6a559b9
commit
8cc46e3a28
@ -82,9 +82,9 @@ export function getUserRole(){
|
|||||||
}
|
}
|
||||||
|
|
||||||
// 接单
|
// 接单
|
||||||
export function updateTake(id){
|
export function updateTake(id, image){
|
||||||
return request({
|
return request({
|
||||||
url: preUrl + "/take?id=" + id,
|
url: preUrl + "/take?id=" + id + "&image=" + image,
|
||||||
method: "get",
|
method: "get",
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
@ -44,16 +44,20 @@
|
|||||||
<el-button size="mini" type="text" icon="el-icon-view" @click="handleShow(scope.row)"
|
<el-button size="mini" type="text" icon="el-icon-view" @click="handleShow(scope.row)"
|
||||||
>查看
|
>查看
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-hasPermi="['repair:tkm:edit']" size="mini" type="text" icon="el-icon-setting" @click="handleEditTicket(scope.row)">
|
<el-button v-hasPermi="['repair:tkm:edit']" size="mini" type="text" icon="el-icon-setting"
|
||||||
|
@click="handleEditTicket(scope.row)">
|
||||||
编辑工单
|
编辑工单
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-hasPermi="['repair:tkm:remove']" size="mini" type="text" icon="el-icon-remove" @click="handleRemove(scope.row)">
|
<el-button v-hasPermi="['repair:tkm:remove']" size="mini" type="text" icon="el-icon-remove"
|
||||||
|
@click="handleRemove(scope.row)">
|
||||||
删除
|
删除
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-hasPermi="['repair:tkm:void']" size="mini" type="text" icon="el-icon-delete" @click="handleVoid(scope.row)">
|
<el-button v-hasPermi="['repair:tkm:void']" size="mini" type="text" icon="el-icon-delete"
|
||||||
|
@click="handleVoid(scope.row)">
|
||||||
作废
|
作废
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-if="userRole === 'service_advisor' && isFinish" size="mini" type="text" icon="el-icon-refresh" @click="handleEditRecord(scope.row)">
|
<el-button v-if="userRole === 'service_advisor' && isFinish" size="mini" type="text" icon="el-icon-refresh"
|
||||||
|
@click="handleEditRecord(scope.row)">
|
||||||
维修记录设置
|
维修记录设置
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button
|
<el-button
|
||||||
@ -61,7 +65,8 @@
|
|||||||
size="mini" type="text" icon="el-icon-check" @click="handleTake(scope.row)">
|
size="mini" type="text" icon="el-icon-check" @click="handleTake(scope.row)">
|
||||||
接单
|
接单
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-if="userRole === 'service_advisor' && scope.row.ticketsWorkStatus === '01'" size="mini" type="text" icon="el-icon-check" @click="handleNotify(scope.row)">
|
<el-button v-if="userRole === 'service_advisor' && scope.row.ticketsWorkStatus === '01'" size="mini"
|
||||||
|
type="text" icon="el-icon-check" @click="handleNotify(scope.row)">
|
||||||
通知施工
|
通知施工
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button size="mini"
|
<el-button size="mini"
|
||||||
@ -79,14 +84,16 @@
|
|||||||
type="text" icon="el-icon-monitor" @click="handleRecord(scope.row, 'sgwczj')">
|
type="text" icon="el-icon-monitor" @click="handleRecord(scope.row, 'sgwczj')">
|
||||||
施工完成
|
施工完成
|
||||||
</el-button>
|
</el-button>
|
||||||
<!-- <el-button @click="handleRecord(scope.row, 'zj')" size="mini" type="text" icon="el-icon-monitor" v-if="userRole === 'general_inspection' && scope.row.ticketsWorkStatus === '05'">-->
|
<!-- <el-button @click="handleRecord(scope.row, 'zj')" size="mini" type="text" icon="el-icon-monitor" v-if="userRole === 'general_inspection' && scope.row.ticketsWorkStatus === '05'">-->
|
||||||
<!-- 终检-->
|
<!-- 终检-->
|
||||||
<!-- </el-button>-->
|
<!-- </el-button>-->
|
||||||
<el-button @click="handleReTake(scope.row)" size="mini" type="text" icon="el-icon-refresh"
|
<el-button @click="handleReTake(scope.row)" size="mini" type="text" icon="el-icon-refresh"
|
||||||
v-if="(userRole === 'repair_staff' ? (leader ? !isFinish : false) : false) && !(scope.row.ticketsWorkStatus !== '01' && userRole === 'repair_staff' && !isFinish)">
|
v-if="(userRole === 'repair_staff' ? (leader ? !isFinish : false) : false) && !(scope.row.ticketsWorkStatus !== '01' && userRole === 'repair_staff' && !isFinish)">
|
||||||
重新指派
|
重新指派
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-button v-if="userRole === 'repair_staff' && !isFinish && scope.row.ticketsWorkStatus === '01' && !(nowUser.id === scope.row.nowRepairId)" @click="handleGet(scope.row)" size="mini" type="text" icon="el-icon-document-add">
|
<el-button
|
||||||
|
v-if="userRole === 'repair_staff' && !isFinish && scope.row.ticketsWorkStatus === '01' && !(nowUser.id === scope.row.nowRepairId)"
|
||||||
|
@click="handleGet(scope.row)" size="mini" type="text" icon="el-icon-document-add">
|
||||||
申请配件
|
申请配件
|
||||||
</el-button>
|
</el-button>
|
||||||
<el-dropdown
|
<el-dropdown
|
||||||
@ -94,12 +101,13 @@
|
|||||||
@command="(command) => handleCommand(command, scope.$index, scope.row)">
|
@command="(command) => handleCommand(command, scope.$index, scope.row)">
|
||||||
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">更多</el-button>
|
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">更多</el-button>
|
||||||
<el-dropdown-menu slot="dropdown">
|
<el-dropdown-menu slot="dropdown">
|
||||||
<el-dropdown-item v-if="!isFinish && scope.row.ticketsWorkStatus !== '01' && userRole === 'repair_staff'" command="handleGet" size="mini" type="text" icon="el-icon-document-add"
|
<el-dropdown-item v-if="!isFinish && scope.row.ticketsWorkStatus !== '01' && userRole === 'repair_staff'"
|
||||||
|
command="handleGet" size="mini" type="text" icon="el-icon-document-add"
|
||||||
>申请配件
|
>申请配件
|
||||||
</el-dropdown-item>
|
</el-dropdown-item>
|
||||||
<!-- <el-dropdown-item v-if="scope.row.ticketsWorkStatus !== '01' && userRole === 'repair_staff'" command="handleBack" size="mini" type="text" icon="el-icon-document-delete"-->
|
<!-- <el-dropdown-item v-if="scope.row.ticketsWorkStatus !== '01' && userRole === 'repair_staff'" command="handleBack" size="mini" type="text" icon="el-icon-document-delete"-->
|
||||||
<!-- >申请退料-->
|
<!-- >申请退料-->
|
||||||
<!-- </el-dropdown-item>-->
|
<!-- </el-dropdown-item>-->
|
||||||
<!-- 还要判断是不是员工 -->
|
<!-- 还要判断是不是员工 -->
|
||||||
<el-dropdown-item
|
<el-dropdown-item
|
||||||
v-if="userRole !== 'repair_staff' && !isFinish && scope.row.ticketsWorkStatus !== '01'"
|
v-if="userRole !== 'repair_staff' && !isFinish && scope.row.ticketsWorkStatus !== '01'"
|
||||||
@ -123,7 +131,7 @@
|
|||||||
<TicketsShow ref="ticketsShow" :user-role="userRole"/>
|
<TicketsShow ref="ticketsShow" :user-role="userRole"/>
|
||||||
<UpdateRepair ref="updateRepair" @success="listTickets"/>
|
<UpdateRepair ref="updateRepair" @success="listTickets"/>
|
||||||
<TWOperate ref="twOperate" @success="listTickets"/>
|
<TWOperate ref="twOperate" @success="listTickets"/>
|
||||||
<UpdateRecord ref="updateRecord" @success="listTickets" />
|
<UpdateRecord ref="updateRecord" @success="listTickets"/>
|
||||||
|
|
||||||
<el-dialog title="退料申请" :visible.sync="backVisible" width="60%" v-dialogDrag append-to-body>
|
<el-dialog title="退料申请" :visible.sync="backVisible" width="60%" v-dialogDrag append-to-body>
|
||||||
<el-table v-loading="backLoading" :data="partList" :stripe="true" :show-overflow-tooltip="true"
|
<el-table v-loading="backLoading" :data="partList" :stripe="true" :show-overflow-tooltip="true"
|
||||||
@ -132,7 +140,7 @@
|
|||||||
@cell-click="handleCellClick"
|
@cell-click="handleCellClick"
|
||||||
@selection-change="rowSelect"
|
@selection-change="rowSelect"
|
||||||
>
|
>
|
||||||
<el-table-column type="selection" align="center" />
|
<el-table-column type="selection" align="center"/>
|
||||||
<el-table-column label="商品名称" prop="itemName" align="center"/>
|
<el-table-column label="商品名称" prop="itemName" align="center"/>
|
||||||
<el-table-column label="规格" prop="ware.model" align="center"/>
|
<el-table-column label="规格" prop="ware.model" align="center"/>
|
||||||
<el-table-column label="数量" prop="itemCount" align="center">
|
<el-table-column label="数量" prop="itemCount" align="center">
|
||||||
@ -150,7 +158,7 @@
|
|||||||
</el-table>
|
</el-table>
|
||||||
<el-row :gutter="1" style="margin-top: 1rem">
|
<el-row :gutter="1" style="margin-top: 1rem">
|
||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<el-input v-model="remark" placeholder="备注" />
|
<el-input v-model="remark" placeholder="备注"/>
|
||||||
</el-col>
|
</el-col>
|
||||||
</el-row>
|
</el-row>
|
||||||
<div slot="footer" class="dialog-footer">
|
<div slot="footer" class="dialog-footer">
|
||||||
@ -159,8 +167,28 @@
|
|||||||
</div>
|
</div>
|
||||||
</el-dialog>
|
</el-dialog>
|
||||||
|
|
||||||
<RecordSetting ref="recordSet" />
|
<RecordSetting ref="recordSet"/>
|
||||||
<EditTickets ref="editTickets" @success="listTickets"/>
|
<EditTickets ref="editTickets" @success="listTickets"/>
|
||||||
|
|
||||||
|
<el-dialog title="诊断维修单和车辆维修前照片" :visible.sync="beginDialog" width="60%" v-dialogDrag append-to-body>
|
||||||
|
<el-form v-model="beginData" :inline="true" label-width="15rem">
|
||||||
|
<el-row :gutter="1">
|
||||||
|
<el-col :span="24">
|
||||||
|
<el-form-item label="附件" prop="image">
|
||||||
|
<ImageUpload v-model="beginData.image"/>
|
||||||
|
</el-form-item>
|
||||||
|
</el-col>
|
||||||
|
</el-row>
|
||||||
|
</el-form>
|
||||||
|
<div slot="footer" class="dialog-footer">
|
||||||
|
<el-button type="primary" @click="doTake">
|
||||||
|
确定
|
||||||
|
</el-button>
|
||||||
|
<el-button @click="beginDialog = false">
|
||||||
|
取消
|
||||||
|
</el-button>
|
||||||
|
</div>
|
||||||
|
</el-dialog>
|
||||||
</div>
|
</div>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -189,7 +217,7 @@ export default {
|
|||||||
default: '',
|
default: '',
|
||||||
required: true
|
required: true
|
||||||
},
|
},
|
||||||
isType:{
|
isType: {
|
||||||
type: String,
|
type: String,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
@ -218,6 +246,11 @@ export default {
|
|||||||
remark: null,
|
remark: null,
|
||||||
leader: false,
|
leader: false,
|
||||||
nowUser: null,
|
nowUser: null,
|
||||||
|
beginDialog: false,
|
||||||
|
beginData: {
|
||||||
|
id: null,
|
||||||
|
image: null,
|
||||||
|
},
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
mounted() {
|
mounted() {
|
||||||
@ -226,13 +259,13 @@ export default {
|
|||||||
this.getNowUser()
|
this.getNowUser()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
async getNowUser(){
|
async getNowUser() {
|
||||||
const res = await getUserProfile()
|
const res = await getUserProfile()
|
||||||
this.nowUser = res.data
|
this.nowUser = res.data
|
||||||
},
|
},
|
||||||
async isLeader(){
|
async isLeader() {
|
||||||
const res = await getIfLeader()
|
const res = await getIfLeader()
|
||||||
this.leader = res.data
|
this.leader = res.data
|
||||||
},
|
},
|
||||||
async listTickets() {
|
async listTickets() {
|
||||||
try {
|
try {
|
||||||
@ -270,18 +303,36 @@ export default {
|
|||||||
},
|
},
|
||||||
// 接单
|
// 接单
|
||||||
async handleTake(row) {
|
async handleTake(row) {
|
||||||
|
this.beginData.id = row.id
|
||||||
|
this.beginDialog = true
|
||||||
|
},
|
||||||
|
async doTake(){
|
||||||
try {
|
try {
|
||||||
|
if (!this.beginData.image){
|
||||||
|
this.$modal.msgError("附件不能为空")
|
||||||
|
return
|
||||||
|
}
|
||||||
this.loading = true
|
this.loading = true
|
||||||
await this.$modal.confirm("确认接单吗?")
|
if (this.beginData.image){
|
||||||
await updateTake(row.id)
|
const data = this.beginData.image.split(",")
|
||||||
|
this.beginData.image = data.map(item => {
|
||||||
|
return item.replace(process.env.VUE_APP_FILE_API, "")
|
||||||
|
}).join(",")
|
||||||
|
}
|
||||||
|
await updateTake(this.beginData.id, this.beginData.image)
|
||||||
|
this.beginDialog = false
|
||||||
this.$modal.msgSuccess("接单成功")
|
this.$modal.msgSuccess("接单成功")
|
||||||
|
this.beginData = {
|
||||||
|
id: null,
|
||||||
|
image: null
|
||||||
|
}
|
||||||
await this.listTickets()
|
await this.listTickets()
|
||||||
}finally {
|
} finally {
|
||||||
this.loading = false
|
this.loading = false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 退料
|
// 退料
|
||||||
async handleBack(row){
|
async handleBack(row) {
|
||||||
this.formData = {}
|
this.formData = {}
|
||||||
this.formData = row
|
this.formData = row
|
||||||
this.remark = null
|
this.remark = null
|
||||||
@ -290,12 +341,12 @@ export default {
|
|||||||
this.backLoading = true
|
this.backLoading = true
|
||||||
const res = await getTicketsById(row.id)
|
const res = await getTicketsById(row.id)
|
||||||
this.partList = res.data.wares
|
this.partList = res.data.wares
|
||||||
}finally {
|
} finally {
|
||||||
this.backLoading = false
|
this.backLoading = false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
// 重新指派
|
// 重新指派
|
||||||
handleReTake(row){
|
handleReTake(row) {
|
||||||
row = {
|
row = {
|
||||||
...row,
|
...row,
|
||||||
// 还要判断是不是班组长
|
// 还要判断是不是班组长
|
||||||
@ -304,12 +355,12 @@ export default {
|
|||||||
this.$refs.updateRepair.open(row)
|
this.$refs.updateRepair.open(row)
|
||||||
},
|
},
|
||||||
// 指派员工,通知施工
|
// 指派员工,通知施工
|
||||||
handleNotify(row){
|
handleNotify(row) {
|
||||||
this.$refs.updateRepair.open(row)
|
this.$refs.updateRepair.open(row)
|
||||||
},
|
},
|
||||||
// 更多操作
|
// 更多操作
|
||||||
handleCommand(command, index, row){
|
handleCommand(command, index, row) {
|
||||||
switch (command){
|
switch (command) {
|
||||||
case 'handleReTake':
|
case 'handleReTake':
|
||||||
this.handleReTake(row)
|
this.handleReTake(row)
|
||||||
break
|
break
|
||||||
@ -378,10 +429,10 @@ export default {
|
|||||||
})
|
})
|
||||||
this.clickCellMap[id] = []
|
this.clickCellMap[id] = []
|
||||||
},
|
},
|
||||||
rowSelect(val){
|
rowSelect(val) {
|
||||||
this.selections = val
|
this.selections = val
|
||||||
},
|
},
|
||||||
async doBack(flag){
|
async doBack(flag) {
|
||||||
const data = {
|
const data = {
|
||||||
no: createUniqueCodeByHead("TLSQ"),
|
no: createUniqueCodeByHead("TLSQ"),
|
||||||
ticketId: this.formData.id,
|
ticketId: this.formData.id,
|
||||||
@ -391,9 +442,9 @@ export default {
|
|||||||
adviserId: this.formData.adviserId,
|
adviserId: this.formData.adviserId,
|
||||||
adviserName: this.formData.adviserName
|
adviserName: this.formData.adviserName
|
||||||
}
|
}
|
||||||
if (flag){
|
if (flag) {
|
||||||
data.items = this.partList
|
data.items = this.partList
|
||||||
}else {
|
} else {
|
||||||
data.items = this.selections
|
data.items = this.selections
|
||||||
}
|
}
|
||||||
await updateTicketWares(data)
|
await updateTicketWares(data)
|
||||||
@ -401,7 +452,7 @@ export default {
|
|||||||
this.$modal.msgSuccess("申请成功");
|
this.$modal.msgSuccess("申请成功");
|
||||||
await this.listTickets()
|
await this.listTickets()
|
||||||
},
|
},
|
||||||
handleRecord(row, type){
|
handleRecord(row, type) {
|
||||||
row = {
|
row = {
|
||||||
...row,
|
...row,
|
||||||
clickType: type
|
clickType: type
|
||||||
@ -409,22 +460,23 @@ export default {
|
|||||||
this.$refs.updateRecord.open(row)
|
this.$refs.updateRecord.open(row)
|
||||||
},
|
},
|
||||||
// 设置维修图片可不可见
|
// 设置维修图片可不可见
|
||||||
handleEditRecord(row){
|
handleEditRecord(row) {
|
||||||
this.$refs.recordSet.open(row.id)
|
this.$refs.recordSet.open(row.id)
|
||||||
},
|
},
|
||||||
handleEditTicket(row){
|
handleEditTicket(row) {
|
||||||
this.$refs.editTickets.open(row)
|
this.$refs.editTickets.open(row)
|
||||||
},
|
},
|
||||||
async handleRemove(row){
|
async handleRemove(row) {
|
||||||
try {
|
try {
|
||||||
const id = row.id
|
const id = row.id
|
||||||
if (id){
|
if (id) {
|
||||||
await this.$modal.confirm("确认删除工单" + row.ticketNo + "吗?")
|
await this.$modal.confirm("确认删除工单" + row.ticketNo + "吗?")
|
||||||
await removeTicketById(id)
|
await removeTicketById(id)
|
||||||
await this.listTickets()
|
await this.listTickets()
|
||||||
this.$modal.msgSuccess("删除成功")
|
this.$modal.msgSuccess("删除成功")
|
||||||
}
|
}
|
||||||
}catch{}
|
} catch {
|
||||||
|
}
|
||||||
},
|
},
|
||||||
async handleVoid(row) {
|
async handleVoid(row) {
|
||||||
this.$prompt('作废备注', '提示', {
|
this.$prompt('作废备注', '提示', {
|
||||||
|
Loading…
Reference in New Issue
Block a user