Compare commits
7 Commits
9b668e8310
...
278847d927
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
278847d927 | ||
|
|
a9d6c01cbb | ||
|
|
af4e392e0b | ||
|
|
e8b7e1620c | ||
|
|
2daf0c8745 | ||
|
|
0d6bca2256 | ||
|
|
0b1acbe7b1 |
@ -109,6 +109,9 @@
|
||||
<el-button size="mini" type="text" icon="el-icon-view" @click="handleShow(scope.row)"
|
||||
>查看
|
||||
</el-button>
|
||||
<el-button size="mini" type="text" icon="el-icon-view" @click="handleShowIn(scope.row)"
|
||||
>查看入库单
|
||||
</el-button>
|
||||
<el-button @click="handleInWares(scope.row)" v-if="scope.row.soStatus === '02'" size="mini" type="text"
|
||||
icon="el-icon-edit-outline"
|
||||
>入库
|
||||
@ -230,6 +233,40 @@
|
||||
<el-button @click="dialogVisible = false">取消</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
|
||||
<el-dialog title="入库单" :visible.sync="inDialog" width="80%" v-dialogDrag append-to-body>
|
||||
<el-table :data="inData" v-loading="inLoading2" :row-key="getRowKey" :expand-row-keys="expands" @expand-change="handleExpand" :stripe="true" :show-overflow-tooltip="true">
|
||||
<el-table-column type="expand">
|
||||
<template slot-scope="scope">
|
||||
<el-table :data="inSoiList" v-loading="inLoading3" :stripe="true" :show-overflow-tooltip="true">
|
||||
<el-table-column label="序号" align="center" width="55">
|
||||
<template scope="scope">
|
||||
<span>{{ scope.$index + 1 }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="名称" align="center" prop="repairWares.name" />
|
||||
<el-table-column label="单价" align="center" prop="goodsPrice" />
|
||||
<el-table-column label="入库数量" align="center" prop="goodsCount" />
|
||||
</el-table>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="序号" align="center" width="55">
|
||||
<template scope="scope">
|
||||
<span>{{ scope.$index + 1 }}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="单号" align="center" prop="soNo" />
|
||||
<el-table-column label="入库时间" align="center" prop="createTime">
|
||||
<template slot-scope="scope">
|
||||
{{parseTime(scope.row.createTime)}}
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column label="入库人" align="center" prop="userName" />
|
||||
</el-table>
|
||||
<div slot="footer" class="dialog-footer">
|
||||
<el-button @click="inDialog = false">关闭</el-button>
|
||||
</div>
|
||||
</el-dialog>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
@ -245,6 +282,8 @@ import {getRepairSoiByIds, getMapBySoIdAndQuery} from "@/api/repair/stockOperate
|
||||
import {createUniqueCodeByHead} from "@/utils/createUniqueCode";
|
||||
import WarehouseChoose from "@/views/repair/Components/WarehouseChoose.vue";
|
||||
import {getBaseTypeList} from "@/api/base/type";
|
||||
import {getUserProfile} from "@/api/system/user";
|
||||
import {parseTime} from "../../../../utils/ruoyi";
|
||||
|
||||
export default {
|
||||
name: "SoIndex",
|
||||
@ -342,12 +381,61 @@ export default {
|
||||
isRefresh: false,
|
||||
// 导出遮罩层
|
||||
exportLoading: false,
|
||||
inQueryParams:{
|
||||
pageNo: 1,
|
||||
pageSize: 10,
|
||||
userId: null,
|
||||
mainId: null,
|
||||
},
|
||||
inDialog: false,
|
||||
inData: [],
|
||||
inTotal: 0,
|
||||
inLoading2: false,
|
||||
expands: [],
|
||||
getRowKey:(row) => {
|
||||
return row.id
|
||||
},
|
||||
inSoiList: [],
|
||||
inLoading3: false
|
||||
}
|
||||
},
|
||||
mounted() {
|
||||
this.pageSo();
|
||||
},
|
||||
methods: {
|
||||
parseTime,
|
||||
async handleExpand(row, expandedRows){
|
||||
let that = this
|
||||
if (expandedRows.length){
|
||||
that.expands = []
|
||||
if (row){
|
||||
that.expands.push(row.id)
|
||||
try {
|
||||
that.inLoading3 = true
|
||||
const resSo = await getRepairSoById(row.id)
|
||||
const ids = resSo.data.goodsList.map(item => item.id)
|
||||
const resSoi = await getRepairSoiByIds(ids)
|
||||
this.inSoiList = resSoi.data
|
||||
that.inLoading3 = false
|
||||
}catch{}
|
||||
}
|
||||
}else {
|
||||
that.expands = []
|
||||
}
|
||||
},
|
||||
async handleShowIn(row){
|
||||
try {
|
||||
this.inDialog = true
|
||||
this.inLoading2 = true
|
||||
this.inQueryParams.mainId = row.id
|
||||
const user = await getUserProfile();
|
||||
this.inQueryParams.userId = user.data.id
|
||||
const res = await getRepairSoPage(this.inQueryParams)
|
||||
this.inData = res.data.records
|
||||
this.inTotal = res.data.total
|
||||
this.inLoading2 = false
|
||||
}catch{}
|
||||
},
|
||||
setSelectedRows() {
|
||||
this.$nextTick(() => {
|
||||
Object.keys(this.$refs).forEach(key => {
|
||||
|
||||
@ -230,11 +230,11 @@ export default {
|
||||
getLabelName() {
|
||||
switch (this.itemType) {
|
||||
case "project":
|
||||
return "维修项目";
|
||||
return "名称";
|
||||
case "part":
|
||||
return "维修配件";
|
||||
return "名称";
|
||||
case "other":
|
||||
return "附加费用";
|
||||
return "名称";
|
||||
default:
|
||||
return '';
|
||||
}
|
||||
|
||||
@ -148,11 +148,11 @@ export default {
|
||||
getLabelName() {
|
||||
switch (this.listType) {
|
||||
case "project":
|
||||
return "维修项目";
|
||||
return "名称";
|
||||
case "ware":
|
||||
return "维修配件";
|
||||
return "名称";
|
||||
case "other":
|
||||
return "附加费用";
|
||||
return "名称";
|
||||
default:
|
||||
return '';
|
||||
}
|
||||
|
||||
@ -53,20 +53,20 @@
|
||||
</el-button>
|
||||
<!-- 维修工才有 -->
|
||||
<el-button
|
||||
v-if="(scope.row.ticketsWorkStatus === '01' && userRole === 'repair_staff') && nowUser.id === scope.row.nowRepairId"
|
||||
v-if="scope.row.isFinish !== '1' && (scope.row.ticketsWorkStatus === '01' && userRole === 'repair_staff') && nowUser.id === scope.row.nowRepairId"
|
||||
size="mini" type="text" icon="el-icon-check" @click="handleTake(scope.row)">
|
||||
接单
|
||||
</el-button>
|
||||
<!-- 服务顾问才有 -->
|
||||
<el-button v-if="userRole === 'service_advisor' && scope.row.ticketsWorkStatus === '01'" size="mini"
|
||||
<el-button v-if=" scope.row.isFinish !== '1' && userRole === 'service_advisor' && scope.row.ticketsWorkStatus === '01'" size="mini"
|
||||
type="text" icon="el-icon-check" @click="handleNotify(scope.row)">
|
||||
通知施工
|
||||
</el-button>
|
||||
<!-- 服务顾问、总检、班组长才有 -->
|
||||
<el-button v-if="(userRole !== 'repair_staff' && scope.row.ticketsWorkStatus !== '01') || (userRole === 'repair_staff' && leader && nowUser.id === scope.row.nowRepairId && scope.row.ticketsWorkStatus !== '04')" @click="handleReTake(scope.row)" size="mini" type="text" icon="el-icon-refresh"
|
||||
<el-button v-if="scope.row.isFinish !== '1' && (userRole !== 'repair_staff' && scope.row.ticketsWorkStatus !== '01') || (userRole === 'repair_staff' && leader && nowUser.id === scope.row.nowRepairId && scope.row.ticketsWorkStatus !== '04')" @click="handleReTake(scope.row)" size="mini" type="text" icon="el-icon-refresh"
|
||||
>{{ userRole === 'general_inspection' ? "内返派工" : "修改派工" }}
|
||||
</el-button>
|
||||
<el-dropdown
|
||||
<el-dropdown v-if="scope.row.isFinish !== '1'"
|
||||
@command="(command) => handleCommand(command, scope.$index, scope.row)">
|
||||
<el-button size="mini" type="text" icon="el-icon-d-arrow-right">更多</el-button>
|
||||
<el-dropdown-menu slot="dropdown">
|
||||
@ -115,7 +115,7 @@
|
||||
<el-button size="mini" type="text" icon="el-icon-view" @click="handleShow(scope.row)"
|
||||
>查看
|
||||
</el-button>
|
||||
<el-button v-hasPermi="['repair:tkm:edit']" size="mini" type="text" icon="el-icon-setting" @click="handleEditTicket(scope.row)">
|
||||
<el-button v-if="scope.row.isFinish !== '1'" v-hasPermi="['repair:tkm:edit']" size="mini" type="text" icon="el-icon-setting" @click="handleEditTicket(scope.row)">
|
||||
编辑工单
|
||||
</el-button>
|
||||
</template>
|
||||
|
||||
@ -123,9 +123,9 @@
|
||||
@click="handlePrint(scope.row)"
|
||||
>下载打印
|
||||
</el-button>
|
||||
<el-button size="mini" v-hasPermi="['repair:tk:edit']" type="text" icon="el-icon-setting" @click="handleEditTicket(scope.row)">
|
||||
编辑工单
|
||||
</el-button>
|
||||
<!-- <el-button size="mini" v-hasPermi="['repair:tk:edit']" type="text" icon="el-icon-setting" @click="handleEditTicket(scope.row)">-->
|
||||
<!-- 编辑工单-->
|
||||
<!-- </el-button>-->
|
||||
<el-button size="mini" v-hasPermi="['repair:tk:remove']" type="text" icon="el-icon-remove" @click="handleRemove(scope.row)">
|
||||
删除
|
||||
</el-button>
|
||||
|
||||
@ -139,6 +139,21 @@
|
||||
</template>
|
||||
<StaffChoose v-model="selectStaff" :is-get="'true'"/>
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label">
|
||||
经办人姓名
|
||||
</template>
|
||||
<el-input v-model="formData.handleName" />
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label">
|
||||
经办人电话
|
||||
</template>
|
||||
<el-input v-model="formData.handleMobile" />
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<!-- 占位 -->
|
||||
</el-descriptions-item>
|
||||
<el-descriptions-item>
|
||||
<template slot="label">
|
||||
接车图片
|
||||
@ -225,10 +240,10 @@
|
||||
<el-button size="small" v-if="formData.ticketType === '02'" @click="formData.ticketType = '01'">B单</el-button>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<span style="font-size: 16px">维修项目</span>
|
||||
<span style="font-size: 16px">维修工时项目</span>
|
||||
<TicketItem item-type="project" :in-list-data="projectList" @tableData="projectData" ref="projectTable"
|
||||
:coupon-list="couponList" @changeCoupon="changeCoupon"/>
|
||||
<span style="font-size: 16px; margin:1rem 0" v-if="createTicketType">维修配件</span>
|
||||
<span style="font-size: 16px; margin:1rem 0" v-if="createTicketType">更换配件清单</span>
|
||||
<TicketItem v-if="createTicketType" :in-list-data="partList" item-type="part" @tableData="partData"
|
||||
:coupon-list="couponList" @changeCoupon="changeCoupon"
|
||||
ref="partTable"/>
|
||||
@ -337,6 +352,8 @@ export default {
|
||||
watch: {
|
||||
selectUser(val) {
|
||||
if (val) {
|
||||
this.formData.handleName = val.cusName
|
||||
this.formData.handleMobile = val.phoneNumber
|
||||
if (!val.isRes) {
|
||||
this.selectCar = {}
|
||||
this.bookingList = []
|
||||
@ -349,6 +366,8 @@ export default {
|
||||
}
|
||||
}
|
||||
} else {
|
||||
this.formData.handleName = null
|
||||
this.formData.handleMobile = null
|
||||
this.selectCar = {}
|
||||
this.bookingList = []
|
||||
this.couponList = []
|
||||
@ -407,7 +426,9 @@ export default {
|
||||
rescueMoney: 0,
|
||||
threePackMoney: 0,
|
||||
confirmFaultMoney: 0,
|
||||
image: null
|
||||
image: null,
|
||||
handleName: null,
|
||||
handleMobile: null,
|
||||
},
|
||||
selectUser: {},
|
||||
selectCar: {},
|
||||
@ -556,7 +577,9 @@ export default {
|
||||
rescueMoney: 0,
|
||||
threePackMoney: 0,
|
||||
confirmFaultMoney: 0,
|
||||
image: null
|
||||
image: null,
|
||||
handleName: null,
|
||||
handleMobile: null,
|
||||
}
|
||||
this.selectUser = {}
|
||||
this.selectCar = {}
|
||||
|
||||
@ -10,7 +10,7 @@
|
||||
<el-tab-pane label="待处理工单" name="unInspection" v-if="userRole !== 'repair_staff'">
|
||||
<TicketFinishManager :user-role="userRole" />
|
||||
</el-tab-pane>
|
||||
<el-tab-pane label="配件申请单" name="getApply" v-if="userRole !== 'repair_staff'">
|
||||
<el-tab-pane label="配件申请单" name="getApply">
|
||||
<TicketWares :type="true" :user-role="userRole"/>
|
||||
</el-tab-pane>
|
||||
<el-tab-pane name="finishGetWares" label="领料确认" v-if="userRole === 'repair_staff'">
|
||||
|
||||
@ -146,18 +146,18 @@
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="12">
|
||||
<el-form-item label="岗位">
|
||||
<el-select v-model="form.postIds" multiple placeholder="请选择">
|
||||
<el-option
|
||||
v-for="item in postOptions"
|
||||
:key="item.id"
|
||||
:label="item.name"
|
||||
:value="item.id"
|
||||
></el-option>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<!-- <el-col :span="12">-->
|
||||
<!-- <el-form-item label="岗位">-->
|
||||
<!-- <el-select v-model="form.postIds" multiple placeholder="请选择">-->
|
||||
<!-- <el-option-->
|
||||
<!-- v-for="item in postOptions"-->
|
||||
<!-- :key="item.id"-->
|
||||
<!-- :label="item.name"-->
|
||||
<!-- :value="item.id"-->
|
||||
<!-- ></el-option>-->
|
||||
<!-- </el-select>-->
|
||||
<!-- </el-form-item>-->
|
||||
<!-- </el-col>-->
|
||||
</el-row>
|
||||
<el-row>
|
||||
<el-col :span="24">
|
||||
|
||||
@ -27,10 +27,10 @@
|
||||
<svg-icon icon-class="tree" />所属部门
|
||||
<div class="pull-right" v-if="user.dept">{{ user.dept.name }}</div>
|
||||
</li>
|
||||
<li class="list-group-item">
|
||||
<svg-icon icon-class="tree" />所属岗位
|
||||
<div class="pull-right" v-if="user.posts">{{ user.posts.map(post => post.name).join(',') }}</div>
|
||||
</li>
|
||||
<!-- <li class="list-group-item">-->
|
||||
<!-- <svg-icon icon-class="tree" />所属岗位-->
|
||||
<!-- <div class="pull-right" v-if="user.posts">{{ user.posts.map(post => post.name).join(',') }}</div>-->
|
||||
<!-- </li>-->
|
||||
<li class="list-group-item">
|
||||
<svg-icon icon-class="peoples" />所属角色
|
||||
<div class="pull-right" v-if="user.roles">{{ user.roles.map(role => role.name).join(',') }}</div>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user