问题清单修复

This commit is contained in:
BianLzhaoMin 2025-01-09 15:36:06 +08:00
parent 5f3b7da5b4
commit de74bcd662
11 changed files with 126 additions and 441 deletions

3
components.d.ts vendored
View File

@ -29,7 +29,6 @@ declare module 'vue' {
ElEmpty: typeof import('element-plus/es')['ElEmpty']
ElForm: typeof import('element-plus/es')['ElForm']
ElFormItem: typeof import('element-plus/es')['ElFormItem']
ElHeader: typeof import('element-plus/es')['ElHeader']
ElIcon: typeof import('element-plus/es')['ElIcon']
ElImage: typeof import('element-plus/es')['ElImage']
ElInput: typeof import('element-plus/es')['ElInput']
@ -37,7 +36,6 @@ declare module 'vue' {
ElMenu: typeof import('element-plus/es')['ElMenu']
ElMenuItem: typeof import('element-plus/es')['ElMenuItem']
ElOption: typeof import('element-plus/es')['ElOption']
ElPageHeader: typeof import('element-plus/es')['ElPageHeader']
ElPagination: typeof import('element-plus/es')['ElPagination']
ElPopconfirm: typeof import('element-plus/es')['ElPopconfirm']
ElProgress: typeof import('element-plus/es')['ElProgress']
@ -47,7 +45,6 @@ declare module 'vue' {
ElSelect: typeof import('element-plus/es')['ElSelect']
ElStep: typeof import('element-plus/es')['ElStep']
ElSteps: typeof import('element-plus/es')['ElSteps']
ElSwitch: typeof import('element-plus/es')['ElSwitch']
ElTable: typeof import('element-plus/es')['ElTable']
ElTableColumn: typeof import('element-plus/es')['ElTableColumn']
ElTag: typeof import('element-plus/es')['ElTag']

View File

@ -22,11 +22,11 @@ const navMenuList = computed(() => {
{ name: '首页', routerName: 'home' },
{ name: '装备共享大厅', routerName: 'equipList' },
{ name: '租赁需求大厅', routerName: 'parity' },
{ name: '装备管理', routerName: 'goodsManagement' },
{ name: '订单管理', routerName: 'orderManagementCz' },
{ name: '接单管理', routerName: 'accept-orders' },
{ name: '通知公告', routerName: 'enterpriseZone' },
{ name: '数据大屏', routerName: 'big-screen' },
// { name: '', routerName: 'goodsManagement' },
// { name: '', routerName: 'orderManagementCz' },
// { name: '', routerName: 'accept-orders' },
{ name: '公告', routerName: 'enterpriseZone' },
// { name: '', routerName: 'big-screen' },
]
if (isType == 2)
return [

View File

@ -194,6 +194,14 @@ const onJumpMessage = () => {
<div class="line"></div>
</div>
<div class="header-item">
<a @click="onJumpMessage"> 消息 </a>
<div class="line"></div>
</div>
<div class="header-item">
<a @click="onClickMyUser"> 个人中心 </a>
<div class="line"></div>
</div>
<div class="header-item">
<a
v-if="!isShowLogout"
@ -209,58 +217,6 @@ const onJumpMessage = () => {
>注册</a
>
<a v-else @click="handlerLogout">退出登录</a>
<div class="line"></div>
</div>
<div class="header-item roles-check" @click="onRolesCheck" v-if="isShowLogout">
<!-- <img src="../assets/img/home/star.png" alt="" /> -->
<!-- <a style="display: flex; justify-content: center; padding-right: 10px">
{{ rolesName == 1 ? '出租方' : '承租方' }}
<el-icon style="margin-left: 10px"><ArrowDownBold /></el-icon>
</a> -->
<a style="display: flex; justify-content: center">
<i
style="
background-color: #c9e7e5;
color: #47c4ad;
padding: 4px 6px;
font-weight: bold;
font-size: 13px;
border-radius: 4px;
"
>
{{ rolesName == 1 ? '出租方' : '承租方' }}
</i>
<!-- <el-icon style="margin-left: 10px"><ArrowDownBold /></el-icon> -->
</a>
<div class="line"></div>
<div class="select-list" v-if="isRolesSelect">
<div
style="border-top-left-radius: 6px; border-top-right-radius: 6px"
@click.stop="onSelectRoles(1)"
>
出租方
</div>
<div
style="
border-bottom-left-radius: 6px;
border-bottom-right-radius: 6px;
"
@click.stop="onSelectRoles(2)"
>
承租方
</div>
</div>
</div>
<div class="header-item">
<a @click="onJumpMessage"> 消息 </a>
<div class="line"></div>
</div>
<div class="header-item">
<a @click="onClickMyUser"> 个人中心 </a>
<div class="line"></div>
</div>
</div>
</div>

View File

@ -271,12 +271,20 @@ const onJumpMessage = () => {
<div class="header-user-info">
<div class="header-box">
<div class="header-item" v-if="isShowLogout">
<!-- <img src="../assets/img/home/star.png" alt="" /> -->
<a class="user-name"
>{{ activeLoginCompanyName }} / {{ store.userInfo.nickName }}</a
>
<div class="line"></div>
</div>
<div class="header-item">
<a @click="onJumpMessage">消息</a>
<div class="line"></div>
</div>
<div class="header-item">
<a @click="onJumpUser">个人中心</a>
<div class="line"></div>
</div>
<div class="header-item">
<a v-if="!isShowLogout" class="a-border-none" @click="$router.push('/login')"
>登录</a
@ -289,56 +297,7 @@ const onJumpMessage = () => {
>注册</a
>
<a v-else @click="handlerLogout">退出登录</a>
<div class="line"></div>
</div>
<div class="header-item roles-check" @click="onRolesCheck" v-if="isShowLogout">
<!-- <img src="../assets/img/home/star.png" alt="" /> -->
<a style="display: flex; justify-content: center">
<i class="lease-name">
{{ isAdmin ? '管理方' : rolesName == 1 ? '出租方' : '承租方' }}
</i>
<!-- <el-icon style="margin-left: 10px"><ArrowDownBold /></el-icon> -->
</a>
<div class="line"></div>
<div class="select-list" v-show="isRolesSelect">
<div
style="border-top-left-radius: 6px; border-top-right-radius: 6px"
@click.stop="onSelectRoles(1)"
>
出租方
</div>
<div
style="border-bottom-left-radius: 6px; border-bottom-right-radius: 6px"
@click.stop="onSelectRoles(2)"
>
承租方
</div>
</div>
</div>
<div class="header-item">
<a @click="onJumpMessage">消息</a>
<div class="line"></div>
</div>
<div class="header-item">
<a @click="onJumpUser">个人中心</a>
<div class="line"></div>
</div>
<!-- <div class="header-item last-item">
<img src="../assets/img/home/phone.png" alt="" />
<a class="a-border-none">手机版</a>
<div class="qr-code">
<el-image
src="https://img.xjishu.com/img/zl/2017/10/212257159687020.gif"
fit="cover"
/>
扫二维码查看xxx
</div>
</div> -->
</div>
</div>
@ -404,7 +363,7 @@ const onJumpMessage = () => {
</div>
</div>
<div class="cart-container">
<div class="cart-icon" @click="onCarts" v-if="isType == 2">
<div class="cart-icon" @click="onCarts">
<el-badge :value="cartNum">
<svg class="icon" aria-hidden="true" style="width: 30px; height: 30px">
<use xlink:href="#icon-gouwuche2"></use>

View File

@ -81,21 +81,10 @@
<div class="options">
<div>
<!-- <el-button
class="item_btn"
type="primary"
:disabled="pageData.isBookCar == 0 || isType == 1"
@click="onAddCart"
>加入预约车</el-button
> -->
<el-button
class="primary-lease"
type="primary"
:disabled="
pageData.isBookCar == 0 ||
isType == 1 ||
companyIdNew == pageData.companyId
"
:disabled="companyIdNew == pageData.companyId"
@click="onAddCart"
>加入预约车</el-button
>
@ -105,11 +94,7 @@
<el-button
class="primary-lease"
type="primary"
:disabled="
pageData.isBookCar == 0 ||
isType == 1 ||
companyIdNew == pageData.companyId
"
:disabled="companyIdNew == pageData.companyId"
@click="onHandelLessee"
>
立即承租

View File

@ -175,12 +175,7 @@
>
需求详情
</div>
<!-- <div
style="background-color: #00ae9c"
@click="onAcceptOrders(item.id, item.publishUser)"
>
接单
</div> -->
<div>
<el-button
v-if="rolesType != '2'"

View File

@ -28,8 +28,8 @@ const allList = [
// { title: '退', name: 'rent-termination', permission: ['1'] },
// { title: '', name: 'settlement-manage', permission: ['1'] },
{ title: '质检管理', name: 'quality-manage', permission: ['1'] },
{ title: '安全证书管理', name: 'security-certificate', permission: ['1'] },
{ title: '标签管理', name: 'tag-manage', permission: ['1'] },
// { title: '', name: 'security-certificate', permission: ['1'] },
// { title: '', name: 'tag-manage', permission: ['1'] },
// { title: '', name: 'repair-manage', permission: ['1'] },
{ title: '需求管理', name: 'sourcingNeed', permission: ['2'] },
{ title: '订单管理', name: 'orderManagement', permission: ['2'] },
@ -39,16 +39,31 @@ const allList = [
{ title: '个人中心', name: 'personalCenter', permission: ['1'] },
{ title: '个人中心', name: 'personalCenter', permission: ['2'] },
]
const rolesType = ref('承租方')
const menuList: any = computed(() => {
return allList.filter((e) => e.permission.includes(isType.value))
if (rolesType.value == '承租方') return allList.filter((e) => e.permission.includes('2'))
if (rolesType.value == '出租方') return allList.filter((e) => e.permission.includes('1'))
})
const activeItem = computed(() => {
return store.currentMenuItem
return 'sourcingNeed'
})
router.push({
name: activeItem.value,
})
const onChange = (val: any) => {
if (val == '承租方') {
router.push({
name: 'sourcingNeed',
})
} else {
router.push({
name: 'goodsManagement',
})
}
}
</script>
<template>
@ -66,6 +81,12 @@ router.push({
fit="contain"
/>
</div>
<div style="margin-top: 10px; width: 100%">
<el-radio-group v-model="rolesType" @change="onChange">
<el-radio-button label="承租方" value="承租方" />
<el-radio-button label="出租方" value="出租方" />
</el-radio-group>
</div>
<el-menu
class="el-menu-vertical-demo"
@select="handleSelect"
@ -146,4 +167,16 @@ router.push({
font-weight: bold;
}
}
.el-radio-group {
width: 100%;
}
.el-radio-button {
width: 50%;
box-sizing: border-box;
}
.el-radio-button__inner {
width: 100%;
box-sizing: border-box;
border-radius: 0 !important;
}
</style>

View File

@ -86,14 +86,14 @@ const stepList = ref([
title: '租赁中',
description: '',
},
{
title: '已退租待检修',
description: '',
},
{
title: '已检修待结算',
description: '',
},
// {
// title: '退',
// description: '',
// },
// {
// title: '',
// description: '',
// },
{
title: '订单完成',
@ -125,31 +125,31 @@ if (props.orderStatus == 5) {
stepList.value[2].title = '已收货'
currentActive.value = 4
}
if (props.orderStatus == 10) {
stepList.value[0].title = '已接单'
stepList.value[1].title = '已出库'
stepList.value[2].title = '已收货'
stepList.value[3].title = '租赁结束'
stepList.value[4].title = '退租已检修'
currentActive.value = 5
}
if (props.orderStatus == 15) {
stepList.value[0].title = '已接单'
stepList.value[1].title = '已出库'
stepList.value[2].title = '已收货'
stepList.value[3].title = '租赁结束'
stepList.value[4].title = '退租已检修'
stepList.value[5].title = '已结算待确认'
currentActive.value = 5
}
// if (props.orderStatus == 10) {
// stepList.value[0].title = ''
// stepList.value[1].title = ''
// stepList.value[2].title = ''
// stepList.value[3].title = ''
// stepList.value[4].title = '退'
// currentActive.value = 5
// }
// if (props.orderStatus == 15) {
// stepList.value[0].title = ''
// stepList.value[1].title = ''
// stepList.value[2].title = ''
// stepList.value[3].title = ''
// stepList.value[4].title = '退'
// stepList.value[5].title = ''
// currentActive.value = 5
// }
if (props.orderStatus == 20) {
stepList.value[0].title = '已接单'
stepList.value[1].title = '已出库'
stepList.value[2].title = '已收货'
stepList.value[3].title = '租赁结束'
stepList.value[4].title = '退租已检修'
stepList.value[5].title = '结算完成'
currentActive.value = 7
// stepList.value[4].title = '退'
// stepList.value[5].title = ''
currentActive.value = 5
}
if (props.orderStatus == 99) {
@ -380,126 +380,6 @@ const isOrderComplete = computed(() => {
</div>
</el-col>
</el-row>
<TitleTip :titleText="`退租检测/费用结算信息`" v-if="props.orderStatus == 20" />
<div style="padding: 0 15px" v-if="props.orderStatus == 20">
<div style="padding: 6px 0 0 0; font-size: 18px; color: #eb190a; font-weight: bold">
总费用() <span>{{ overhaulDetails.totalCost }}</span>
</div>
<TitleTip :titleText="`租赁费用明细`" />
<el-table
border
:data="orderDetailDtoList"
show-overflow-tooltip
:header-cell-style="{
color: '#fff',
background: '#00a288',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="num" align="center" label="数量" />
<el-table-column align="center" label="租赁单价(元/天)">
<template #default="{ row }">
<span style="color: #eb190a">
{{ row.dayLeasePrice }}
</span>
</template>
</el-table-column>
<el-table-column prop="days" align="center" label="租赁天数" />
<el-table-column prop="days" align="center" label="租期">
<template #default="{ row }">
{{ `${row.preOutboundTime}${row.rentOverTime} ` }}
</template>
</el-table-column>
<el-table-column prop="costs" align="center" label="租赁费用(元)" width="160">
</el-table-column>
<el-table-column prop="changeCost" align="center" label="改价后实际费用(元)" />
</el-table>
<TitleTip :titleText="`维修费用明细`" />
<el-table
:data="repairRecordList"
border
show-overflow-tooltip
:header-cell-style="{
background: '#00a288',
color: '#fff',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="repairNum" align="center" label="维修数量" />
<el-table-column align="center" prop="repairPrice" label="维修费用(元)">
</el-table-column>
<el-table-column
prop="repairChangePrice"
align="center"
label="改价后实际费用(元)"
/>
<el-table-column align="center" label="附件" width="160">
<template #default="{ row }">
<el-button type="primary" size="small" @click="onViewFileImg(row, 0)"
>查看</el-button
>
</template>
</el-table-column>
</el-table>
<TitleTip :titleText="`报废费用明细`" />
<el-table
:data="scrapRecordList"
border
show-overflow-tooltip
:header-cell-style="{
background: '#00a288',
color: '#fff',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="scrapNum" align="center" label="报废数量" />
<el-table-column prop="scrapReason" align="center" label="报废原因" />
<el-table-column prop="scrapPrice" align="center" label="报废费用(元)">
</el-table-column>
<el-table-column
prop="scrapChangePrice"
align="center"
label="改价后费用(元)"
/>
<el-table-column align="center" label="附件" width="160">
<template #default="{ row }">
<el-button type="primary" size="small" @click="onViewFileImg(row, 1)"
>查看</el-button
>
</template>
</el-table-column>
</el-table>
<TitleTip :titleText="`丢失费用明细`" />
<el-table
:data="lossRecordList"
border
show-overflow-tooltip
:header-cell-style="{
background: '#00a288',
color: '#fff',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="lossNum" align="center" label="丢失数量" />
<el-table-column prop="lossPrice" align="center" label="丢失费用(元)">
</el-table-column>
<el-table-column prop="lossChangePrice" align="center" label="改价后费用(元)" />
<el-table-column align="center" label="附件" width="160">
<template #default="{ row }">
<el-button type="primary" size="small" @click="onViewFileImg(row, 2)">
查看
</el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>

View File

@ -821,7 +821,7 @@ const costSubmit = () => {
租赁协议
</el-button>
<el-button
<!-- <el-button
v-if="item.orderStatus == 10"
@click="onViewOverhaulDetails(item.orderId)"
type="primary"
@ -844,7 +844,7 @@ const costSubmit = () => {
size="small"
>
费用确认
</el-button>
</el-button> -->
<el-button
v-if="item.orderStatus == 4"

View File

@ -86,14 +86,14 @@ const stepList = ref([
title: '租赁中',
description: '',
},
{
title: '已退租待检修',
description: '',
},
{
title: '已检修待结算',
description: '',
},
// {
// title: '退',
// description: '',
// },
// {
// title: '',
// description: '',
// },
{
title: '订单完成',
@ -125,31 +125,31 @@ if (props.orderStatus == 5) {
stepList.value[2].title = '已收货'
currentActive.value = 4
}
if (props.orderStatus == 10) {
stepList.value[0].title = '已接单'
stepList.value[1].title = '已出库'
stepList.value[2].title = '已收货'
stepList.value[3].title = '租赁结束'
stepList.value[4].title = '退租已检修'
currentActive.value = 5
}
if (props.orderStatus == 15) {
stepList.value[0].title = '已接单'
stepList.value[1].title = '已出库'
stepList.value[2].title = '已收货'
stepList.value[3].title = '租赁结束'
stepList.value[4].title = '退租已检修'
stepList.value[5].title = '已结算待确认'
currentActive.value = 5
}
// if (props.orderStatus == 10) {
// stepList.value[0].title = ''
// stepList.value[1].title = ''
// stepList.value[2].title = ''
// stepList.value[3].title = ''
// stepList.value[4].title = '退'
// currentActive.value = 5
// }
// if (props.orderStatus == 15) {
// stepList.value[0].title = ''
// stepList.value[1].title = ''
// stepList.value[2].title = ''
// stepList.value[3].title = ''
// stepList.value[4].title = '退'
// stepList.value[5].title = ''
// currentActive.value = 5
// }
if (props.orderStatus == 20) {
stepList.value[0].title = '已接单'
stepList.value[1].title = '已出库'
stepList.value[2].title = '已收货'
stepList.value[3].title = '租赁结束'
stepList.value[4].title = '退租已检修'
stepList.value[5].title = '结算完成'
currentActive.value = 7
// stepList.value[4].title = '退'
// stepList.value[5].title = ''
currentActive.value = 5
}
if (props.orderStatus == 99) {
@ -380,126 +380,6 @@ const isOrderComplete = computed(() => {
</div>
</el-col>
</el-row>
<TitleTip :titleText="`退租检测/费用结算信息`" v-if="props.orderStatus == 20" />
<div style="padding: 0 15px" v-if="props.orderStatus == 20">
<div style="padding: 6px 0 0 0; font-size: 18px; color: #eb190a; font-weight: bold">
总费用() <span>{{ overhaulDetails.totalCost }}</span>
</div>
<TitleTip :titleText="`租赁费用明细`" />
<el-table
border
:data="orderDetailDtoList"
show-overflow-tooltip
:header-cell-style="{
color: '#fff',
background: '#00a288',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="num" align="center" label="数量" />
<el-table-column align="center" label="租赁单价(元/天)">
<template #default="{ row }">
<span style="color: #eb190a">
{{ row.dayLeasePrice }}
</span>
</template>
</el-table-column>
<el-table-column prop="days" align="center" label="租赁天数" />
<el-table-column prop="days" align="center" label="租期">
<template #default="{ row }">
{{ `${row.preOutboundTime}${row.rentOverTime} ` }}
</template>
</el-table-column>
<el-table-column prop="costs" align="center" label="租赁费用(元)" width="160">
</el-table-column>
<el-table-column prop="changeCost" align="center" label="改价后实际费用(元)" />
</el-table>
<TitleTip :titleText="`维修费用明细`" />
<el-table
:data="repairRecordList"
border
show-overflow-tooltip
:header-cell-style="{
background: '#00a288',
color: '#fff',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="repairNum" align="center" label="维修数量" />
<el-table-column align="center" prop="repairPrice" label="维修费用(元)">
</el-table-column>
<el-table-column
prop="repairChangePrice"
align="center"
label="改价后实际费用(元)"
/>
<el-table-column align="center" label="附件" width="160">
<template #default="{ row }">
<el-button type="primary" size="small" @click="onViewFileImg(row, 0)"
>查看</el-button
>
</template>
</el-table-column>
</el-table>
<TitleTip :titleText="`报废费用明细`" />
<el-table
:data="scrapRecordList"
border
show-overflow-tooltip
:header-cell-style="{
background: '#00a288',
color: '#fff',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="scrapNum" align="center" label="报废数量" />
<el-table-column prop="scrapReason" align="center" label="报废原因" />
<el-table-column prop="scrapPrice" align="center" label="报废费用(元)">
</el-table-column>
<el-table-column
prop="scrapChangePrice"
align="center"
label="改价后费用(元)"
/>
<el-table-column align="center" label="附件" width="160">
<template #default="{ row }">
<el-button type="primary" size="small" @click="onViewFileImg(row, 1)"
>查看</el-button
>
</template>
</el-table-column>
</el-table>
<TitleTip :titleText="`丢失费用明细`" />
<el-table
:data="lossRecordList"
border
show-overflow-tooltip
:header-cell-style="{
background: '#00a288',
color: '#fff',
}"
>
<el-table-column prop="deviceName" align="center" label="装备名称" />
<el-table-column prop="typeName" align="center" label="型号" />
<el-table-column prop="lossNum" align="center" label="丢失数量" />
<el-table-column prop="lossPrice" align="center" label="丢失费用(元)">
</el-table-column>
<el-table-column prop="lossChangePrice" align="center" label="改价后费用(元)" />
<el-table-column align="center" label="附件" width="160">
<template #default="{ row }">
<el-button type="primary" size="small" @click="onViewFileImg(row, 2)">
查看
</el-button>
</template>
</el-table-column>
</el-table>
</div>
</div>
</div>

View File

@ -775,7 +775,7 @@ const wordUrl = ref('')
/>
</el-form-item>
</el-col>
<el-col :span="6" >
<el-col :span="6">
<el-input
v-model.trim="queryParams.lowerBound"
placeholder="租金/元"
@ -1063,7 +1063,7 @@ const wordUrl = ref('')
<el-col :span="6" style="display: flex; align-items: center">
<div class="handle-btn">
<el-button
<!-- <el-button
v-if="item.orderStatus == 5 || item.partBacked"
@click="handleViewBack(item)"
type="primary"
@ -1079,7 +1079,7 @@ const wordUrl = ref('')
v-if="item.orderStatus == 5"
>
检修完结
</el-button>
</el-button> -->
<el-button
v-if="item.orderStatus == '1'"
type="primary"
@ -1101,7 +1101,7 @@ const wordUrl = ref('')
<el-button @click="handleViewWord(j, item)" type="primary" size="small">
租赁协议
</el-button>
<el-button
<!-- <el-button
v-if="item.orderStatus == 10"
@click="handleViewRepair(item)"
type="primary"
@ -1124,7 +1124,7 @@ const wordUrl = ref('')
size="small"
>
费用清单
</el-button>
</el-button> -->
<el-button
size="small"
type="primary"