样式等问题优化

This commit is contained in:
BianLzhaoMin 2024-11-28 08:59:34 +08:00
parent 0c70fbdac4
commit d44bb19d90
3 changed files with 625 additions and 441 deletions

7
components.d.ts vendored
View File

@ -8,15 +8,10 @@ export {}
declare module 'vue' {
export interface GlobalComponents {
Breadcrumb: typeof import('./src/components/Breadcrumb/index.vue')['default']
ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb']
ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem']
ElButton: typeof import('element-plus/es')['ElButton']
ElCarousel: typeof import('element-plus/es')['ElCarousel']
ElCarouselItem: typeof import('element-plus/es')['ElCarouselItem']
ElCascader: typeof import('element-plus/es')['ElCascader']
ElCheckbox: typeof import('element-plus/es')['ElCheckbox']
ElCol: typeof import('element-plus/es')['ElCol']
ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider']
ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
ElDialog: typeof import('element-plus/es')['ElDialog']
ElForm: typeof import('element-plus/es')['ElForm']
@ -31,8 +26,6 @@ declare module 'vue' {
ElPagination: typeof import('element-plus/es')['ElPagination']
ElPopconfirm: typeof import('element-plus/es')['ElPopconfirm']
ElProgress: typeof import('element-plus/es')['ElProgress']
ElRadioButton: typeof import('element-plus/es')['ElRadioButton']
ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
ElRow: typeof import('element-plus/es')['ElRow']
ElSelect: typeof import('element-plus/es')['ElSelect']
ElTable: typeof import('element-plus/es')['ElTable']

4
env/.env.dev vendored
View File

@ -7,8 +7,8 @@ VITE_API_URL = '/proxyApi'
# 开发环境接口地址
# VITE_proxyTarget = 'http://10.40.92.74:8080' #盛旭
VITE_proxyTarget = 'http://192.168.2.246:28080' # 马帅
# VITE_proxyTarget = 'http://192.168.0.244:28580' # 马帅
# VITE_proxyTarget = 'http://192.168.2.246:28080' # 马帅
VITE_proxyTarget = 'http://192.168.0.244:28580' # 马帅
# VITE_proxyTarget = 'http://192.168.2.129:18080' # 马帅
# VITE_proxyTarget = 'http://10.40.92.185:9206' # 赵福海 ( 设备类型)

View File

@ -30,7 +30,15 @@ const pageNumber = 1
const total: any = ref(0)
const cardList = ref<any>([])
const status = 0
const statusList = [{id:'0',name:'未下单'},{id:'1',name:'已下单'},{id:'2',name:'待出库'},{id:'3',name:'已出库'},{id:'4',name:'租赁中'},{id:'5',name:'已退租'},{id:'5',name:'已完成'}]
const statusList = [
{ id: '0', name: '未下单' },
{ id: '1', name: '已下单' },
{ id: '2', name: '待出库' },
{ id: '3', name: '已出库' },
{ id: '4', name: '租赁中' },
{ id: '5', name: '已退租' },
{ id: '5', name: '已完成' },
]
//
// const getList = async () => {
// const res: any = await getOrderListApi()
@ -57,7 +65,7 @@ const getList = async () => {
const handleViewOrder = (index: Number, row: any) => {
router.push({
name: 'orderManagementInfo',
query: { orderStatusTemp:Number(row.orderStatus),idTemp:row.id }
query: { orderStatusTemp: Number(row.orderStatus), idTemp: row.id },
})
}
@ -70,7 +78,6 @@ const queryTableList = () => {
getList()
}
/* 退租按钮 */
const clickRentingTermination = () => {
router.push({ name: 'rentinTermination' })
@ -111,7 +118,6 @@ const clickConfirmReceipt = (row: any) => {
})
}
const settleinTitle = ref('')
/* 编辑 */
const isEditDisabled = ref(false)
@ -142,26 +148,26 @@ const equipmentDeploymentParams: any = ref({
//
const upload: any = ref({
//
headers: { Authorization: "Bearer " + store2.token },
headers: { Authorization: 'Bearer ' + store2.token },
//
url: import.meta.env.VITE_API_URL + "/file/upload",
url: import.meta.env.VITE_API_URL + '/file/upload',
})
// -
const beforeUpload = (file: any) => {
if (file.size / 1024 / 1024 > 2) {
ElMessage({
type: 'error',
message: '上传文件大小不能超过2M!'
message: '上传文件大小不能超过2M!',
})
// this.$message.error({ message: `2M!`,});
return false;
return false
}
}
//
const uploadError = () => {
ElMessage({
type: 'error',
message: '上传文件失败!'
message: '上传文件失败!',
})
// this.$message.error({message: `!`});
}
@ -170,14 +176,14 @@ const equipmentDeploymentParams: any = ref({
if (response.code == 200) {
let obj = {
// modelId:this.maId,
fileName: response.data.name.split("/")[4],
fileUrl: response.data.url
};
console.log(obj);
fileName: response.data.name.split('/')[4],
fileUrl: response.data.url,
}
console.log(obj)
mainFileList.value.push(obj)
ElMessage({
type: 'success',
message: '上传成功!'
message: '上传成功!',
})
console.log(mainFileList.value)
}
@ -188,14 +194,14 @@ const equipmentDeploymentParams: any = ref({
if (response.code == 200) {
let obj = {
// modelId:this.maId,
fileName: response.data.name.split("/")[4],
fileUrl: response.data.url
};
console.log(obj);
fileName: response.data.name.split('/')[4],
fileUrl: response.data.url,
}
console.log(obj)
detailsFileList.value.push(obj)
ElMessage({
type: 'success',
message: '上传成功!'
message: '上传成功!',
})
console.log(detailsFileList.value)
}
@ -261,20 +267,108 @@ const equipmentDeploymentParams: any = ref({
maStatus: 15,
detectionList: [],
insureList: [],
picList: []
picList: [],
}
//
dialogFormVisibleSettlein.value = true
}
</script>
<template>
<!-- 订单管理 -->
<div class="container">
<el-form :model="queryParams" :inline="true" size="small">
<el-form-item label="装备名称:" prop="deviceName">
<el-form :model="queryParams" :inline="true" size="default" label-width="0">
<el-row>
<el-col :span="6">
<el-form-item prop="deviceName">
<el-input
style="width: 100%"
v-model.trim="queryParams.deviceName"
clearable
placeholder="请输入装备名称"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item prop="orderStatus">
<el-select
v-model="queryParams.orderStatus"
placeholder="请选择订单状态"
style="width: 100%"
clearable
>
<el-option
v-for="item in statusList"
:key="item.id"
:label="item.name"
:value="item.id"
/>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item prop="dateRange">
<el-date-picker
v-model="time"
type="daterange"
unlink-panels
range-separator="-"
start-placeholder="开始时间"
end-placeholder="结束时间"
style="width: 100%"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item prop="czcompanyName">
<el-input
v-model.trim="queryParams.czcompanyName"
clearable
maxlength="20"
placeholder="出租单位"
style="width: 100%"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="6">
<el-form-item prop="companyName">
<el-input
v-model.trim="queryParams.companyName"
clearable
maxlength="20"
placeholder="承租单位"
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-input
v-model.trim="queryParams.lowerBound"
placeholder="租金/元"
clearable
maxlength="20"
style="width: 45%"
/>
<span style="display: inline-block; width: 5%; text-align: center"> - </span>
<el-input
v-model.trim="queryParams.upperBound"
placeholder="租金/元"
clearable
maxlength="20"
style="width: 45%"
/>
</el-col>
<el-col :span="12">
<el-form-item>
<el-button type="primary" @click="queryTableList">查询</el-button>
<el-button @click="resetQuery">重置</el-button>
</el-form-item>
</el-col>
</el-row>
<!-- <el-form-item label="装备名称:" prop="deviceName">
<el-input v-model.trim="queryParams.deviceName" style="width: 160px" clearable />
</el-form-item>
<el-form-item prop="dateRange">
@ -289,7 +383,12 @@ const equipmentDeploymentParams: any = ref({
/>
</el-form-item>
<el-form-item label="订单状态" prop="orderStatus">
<el-select v-model="queryParams.orderStatus" placeholder="请选择订单状态" style="width:120px" clearable>
<el-select
v-model="queryParams.orderStatus"
placeholder="请选择订单状态"
style="width: 120px"
clearable
>
<el-option
v-for="item in statusList"
:key="item.id"
@ -315,29 +414,18 @@ const equipmentDeploymentParams: any = ref({
/>
</el-form-item>
<el-form-item prop="lowerBound">
<el-input
v-model.trim="queryParams.lowerBound"
placeholder="租金/元"
clearable
maxlength="20"
style="width:60px"
/>
<span style="display: flex;
justify-content: center;width:20px;text-align:center;margin-left:25px"></span>
</el-form-item>
<el-form-item prop="upperBound">
<el-input
v-model.trim="queryParams.upperBound"
placeholder="租金/元"
clearable
maxlength="20"
style="width:60px;"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" @click="queryTableList">查询</el-button>
<el-button @click="resetQuery">重置</el-button>
<span
style="
display: flex;
justify-content: center;
width: 20px;
text-align: center;
margin-left: 25px;
"
></span
>
</el-form-item>
<el-form-item prop="upperBound"> </el-form-item> -->
</el-form>
<div class="cart-tbody" v-for="(item, index) in cardList" :key="index">
@ -465,13 +553,48 @@ const equipmentDeploymentParams: any = ref({
<div style="color: black; font-weight: bold">{{ goods.rentEndTime }}</div>
</el-col>
<el-col :span="2">
<div v-if="goods.orderStatus=='0'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"未下单"}}</div>
<div v-if="goods.orderStatus=='1'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"已下单"}}</div>
<div v-if="goods.orderStatus=='2'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"待出库"}}</div>
<div v-if="goods.orderStatus=='3'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"待收货"}}</div>
<div v-if="goods.orderStatus=='4'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"租赁中"}}</div>
<div v-if="goods.orderStatus=='5'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"已退租"}}</div>
<div v-if="goods.orderStatus=='6'" style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color:blue">{{"已完成"}}</div>
<div
v-if="goods.orderStatus == '0'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '未下单' }}
</div>
<div
v-if="goods.orderStatus == '1'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '已下单' }}
</div>
<div
v-if="goods.orderStatus == '2'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '待出库' }}
</div>
<div
v-if="goods.orderStatus == '3'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '待收货' }}
</div>
<div
v-if="goods.orderStatus == '4'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '租赁中' }}
</div>
<div
v-if="goods.orderStatus == '5'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '已退租' }}
</div>
<div
v-if="goods.orderStatus == '6'"
style="font-size: 14px; font-weight: bold; margin-bottom: 10px; color: blue"
>
{{ '已完成' }}
</div>
</el-col>
<el-col :span="3">
<div>
@ -519,42 +642,82 @@ const equipmentDeploymentParams: any = ref({
/>
<!-- 退租检修弹框 -->
<el-dialog v-model="dialogFormVisibleSettlein" :title="settleinTitle"
width="60%" align-center :close-on-click-modal="false" >
<div style="height: 80px;">
<el-dialog
v-model="dialogFormVisibleSettlein"
:title="settleinTitle"
width="60%"
align-center
:close-on-click-modal="false"
>
<div style="height: 80px">
<div
class="info"
style="margin-top: 5px;margin-bottom: 8px; display: flex; flex-wrap: wrap;"
style="margin-top: 5px; margin-bottom: 8px; display: flex; flex-wrap: wrap"
>
<div
class="item"
style="
width: 30%;
flex-shrink: 0;
margin-bottom: 5px;
font-size: 16px;
margin-left: 40px;
"
>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 5px;font-size: 16px;margin-left: 40px;">
<span>订单编号10000212135656</span>
</div>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 5px;font-size: 16px;">
<div
class="item"
style="width: 30%; flex-shrink: 0; margin-bottom: 5px; font-size: 16px"
>
<span>装备套数2</span>
</div>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 5px;font-size: 16px;">
<div
class="item"
style="width: 30%; flex-shrink: 0; margin-bottom: 5px; font-size: 16px"
>
<span>退租时间2024-10-10 10:00:00</span>
</div>
</div>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 12px;font-size: 16px;margin-left: 80px;">
<div
class="item"
style="
width: 30%;
flex-shrink: 0;
margin-bottom: 12px;
font-size: 16px;
margin-left: 80px;
"
>
<span>装备名称挖掘机</span>
</div>
<div class="info" style="margin-top: 5px; display: flex; flex-wrap: wrap">
<div
class="info"
style="margin-top: 5px; display: flex; flex-wrap: wrap;"
class="item"
style="
width: 30%;
flex-shrink: 0;
margin-bottom: 5px;
font-size: 16px;
margin-left: 80px;
"
>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 5px;font-size: 16px;margin-left: 80px;">
<span>装备编码10000212135656</span>
</div>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 5px;font-size: 16px;">
<div
class="item"
style="width: 30%; flex-shrink: 0; margin-bottom: 5px; font-size: 16px"
>
<span>型号ZJO9777466</span>
</div>
<div class="item" style="width: 30%;flex-shrink: 0;margin-bottom: 5px;font-size: 16px;">
<div
class="item"
style="width: 30%; flex-shrink: 0; margin-bottom: 5px; font-size: 16px"
>
<span>数量3</span>
</div>
</div>
@ -563,14 +726,15 @@ const equipmentDeploymentParams: any = ref({
<span class="title-sign"></span>
<span class="title-text">外观检测</span>
</div>
<el-form label-width="160" ref="ruleFormRef" :model="equipmentDeploymentParams"
>
<el-form label-width="160" ref="ruleFormRef" :model="equipmentDeploymentParams">
<el-row>
<el-form-item label="是否合格:" prop="pass">
<el-select
v-model="equipmentDeploymentParams.pass"
placeholder="请选择是否合格"
clearable style="width: 350px">
clearable
style="width: 350px"
>
<el-option label="是" value="0"></el-option>
<el-option label="否" value="1"></el-option>
</el-select>
@ -579,8 +743,9 @@ const equipmentDeploymentParams: any = ref({
<el-input
v-model="equipmentDeploymentParams.fy"
placeholder="请输入设备数量"
clearable maxlength="20"
style="width: 350px;"
clearable
maxlength="20"
style="width: 350px"
/>
</el-form-item>
</el-row>
@ -589,31 +754,42 @@ const equipmentDeploymentParams: any = ref({
<el-input
placeholder="请输入"
autocomplete="off"
style="width: 860px" maxlength="50"
style="width: 860px"
maxlength="50"
v-model="equipmentDeploymentParams.remark1"
clearable />
clearable
/>
</el-form-item>
</el-row>
</el-form>
<div class="uploadBox">
<div class="labelBox">
<div style="margin-left: 40px;">
<span style="font-size: 14px;">检验文件: </span>
<div style="margin-left: 40px">
<span style="font-size: 14px">检验文件: </span>
</div>
<div style="margin-left: 20px;">
<el-upload ref="upload" :limit="6" :headers="upload.headers"
:action="upload.url" :show-file-list="false" accept=".png, .jpg, .jpeg"
:on-success="handleFileSuccess" :auto-upload="true"
:before-upload="beforeUpload" :on-error="uploadError"
<div style="margin-left: 20px">
<el-upload
ref="upload"
:limit="6"
:headers="upload.headers"
:action="upload.url"
:show-file-list="false"
accept=".png, .jpg, .jpeg"
:on-success="handleFileSuccess"
:auto-upload="true"
:before-upload="beforeUpload"
:on-error="uploadError"
>
<el-button icon="el-icon-folder-add">上传文件</el-button>
</el-upload>
</div>
<div style="color: #999;font-size: 12px;margin-left: 20px;">支持格式.jpg .png单个文件大小不能超过2M</div>
<div style="color: #999; font-size: 12px; margin-left: 20px">
支持格式.jpg .png单个文件大小不能超过2M
</div>
</div>
<div class="imgsBox">
<div class="imgItem" v-for="(item, index) in mainFileList" :key="index">
<img class="picture-card" :src="item.fileUrl" alt="">
<img class="picture-card" :src="item.fileUrl" alt="" />
<div class="icon-list">
<span class="imgItem__icon hide" @click="handleDownload(item)">
<i class="el-icon-download" />
@ -621,29 +797,31 @@ const equipmentDeploymentParams: any = ref({
<span class="imgItem__icon hide" @click="picturePreview(item)">
<i class="el-icon-zoom-in" />
</span>
<span class="imgItem__icon hide" @click="handleRemove(mainFileList,index)">
<span
class="imgItem__icon hide"
@click="handleRemove(mainFileList, index)"
>
<i class="el-icon-delete" />
</span>
</div>
<p class="file-name">{{ item.fileName }}</p>
</div>
</div>
<div class="tipBox">
*:图片排序为平台展示顺序不得少于1张不得多于6张
</div>
<div class="tipBox">*:图片排序为平台展示顺序不得少于1张不得多于6张</div>
</div>
<div class="title">
<span class="title-sign"></span>
<span class="title-text">维修内容</span>
</div>
<el-form label-width="160" ref="ruleFormRef" :model="equipmentDeploymentParams"
>
<el-form label-width="160" ref="ruleFormRef" :model="equipmentDeploymentParams">
<el-row>
<el-form-item label="是否合格:" prop="pass2">
<el-select
v-model="equipmentDeploymentParams.pass2"
placeholder="请选择是否合格"
clearable style="width: 350px">
clearable
style="width: 350px"
>
<el-option label="是" value="0"></el-option>
<el-option label="否" value="1"></el-option>
</el-select>
@ -652,8 +830,9 @@ const equipmentDeploymentParams: any = ref({
<el-input
v-model="equipmentDeploymentParams.fy2"
placeholder="请输入设备数量"
clearable maxlength="20"
style="width: 350px;"
clearable
maxlength="20"
style="width: 350px"
/>
</el-form-item>
</el-row>
@ -662,31 +841,42 @@ const equipmentDeploymentParams: any = ref({
<el-input
placeholder="请输入"
autocomplete="off"
style="width: 860px" maxlength="50"
style="width: 860px"
maxlength="50"
v-model="equipmentDeploymentParams.remark2"
clearable />
clearable
/>
</el-form-item>
</el-row>
</el-form>
<div class="uploadBox">
<div class="labelBox">
<div style="margin-left: 40px;">
<span style="font-size: 14px;">检验文件: </span>
<div style="margin-left: 40px">
<span style="font-size: 14px">检验文件: </span>
</div>
<div style="margin-left: 20px;">
<el-upload ref="upload2" :limit="6" :headers="upload.headers"
:action="upload.url" :show-file-list="false" accept=".png, .jpg, .jpeg"
:on-success="handleFileSuccess2" :auto-upload="true"
:before-upload="beforeUpload" :on-error="uploadError"
<div style="margin-left: 20px">
<el-upload
ref="upload2"
:limit="6"
:headers="upload.headers"
:action="upload.url"
:show-file-list="false"
accept=".png, .jpg, .jpeg"
:on-success="handleFileSuccess2"
:auto-upload="true"
:before-upload="beforeUpload"
:on-error="uploadError"
>
<el-button icon="el-icon-folder-add">上传文件</el-button>
</el-upload>
</div>
<div style="color: #999;font-size: 12px;margin-left: 20px;">支持格式.jpg .png单个文件大小不能超过2M</div>
<div style="color: #999; font-size: 12px; margin-left: 20px">
支持格式.jpg .png单个文件大小不能超过2M
</div>
</div>
<div class="imgsBox">
<div class="imgItem" v-for="(item, index) in detailsFileList" :key="index">
<img class="picture-card" :src="item.fileUrl" alt="">
<img class="picture-card" :src="item.fileUrl" alt="" />
<div class="icon-list">
<span class="imgItem__icon hide" @click="handleDownload(item)">
<i class="el-icon-download" />
@ -694,32 +884,28 @@ const equipmentDeploymentParams: any = ref({
<span class="imgItem__icon hide" @click="picturePreview(item)">
<i class="el-icon-zoom-in" />
</span>
<span class="imgItem__icon hide" @click="handleRemove(detailsFileList,index)">
<span
class="imgItem__icon hide"
@click="handleRemove(detailsFileList, index)"
>
<i class="el-icon-delete" />
</span>
</div>
<p class="file-name">{{ item.fileName }}</p>
</div>
</div>
<div class="tipBox">
*:图片排序为平台展示顺序不得少于1张不得多于6张
</div>
<div class="tipBox">*:图片排序为平台展示顺序不得少于1张不得多于6张</div>
</div>
<template #footer>
<span class="dialog-footer">
<el-button type="primary" @click="closeDialogBtn"> </el-button>
<el-button @click="submitBtn" type="success">
保存
</el-button>
<el-button @click="submitBtn" type="success"> 保存 </el-button>
</span>
</template>
</el-dialog>
</div>
</template>
<style lang="scss" scoped>
.logo {
padding: 15px 0;
@ -736,7 +922,7 @@ const equipmentDeploymentParams: any = ref({
display: inline-block;
width: 4px;
height: 16px;
background: #409EFF;
background: #409eff;
margin-left: 45px;
}
.title-text {
@ -772,7 +958,8 @@ const equipmentDeploymentParams: any = ref({
height: 160px;
}
.icon-list {
width: 60px;height: 20px;
width: 60px;
height: 20px;
position: absolute;
top: 70px;
left: 40px;
@ -793,7 +980,6 @@ const equipmentDeploymentParams: any = ref({
.imgItem:hover .hide {
display: block;
}
}
.tipBox {
color: red;
@ -801,9 +987,9 @@ const equipmentDeploymentParams: any = ref({
margin-left: 20px;
}
.container {
width: 800px;
margin: 0 auto;
padding: 10px;
// width: 800px;
// margin: 0 auto;
// padding: 10px;
background: #eeeff6;
font-size: 14px;
@ -909,4 +1095,9 @@ const equipmentDeploymentParams: any = ref({
}
}
}
:deep .el-form--inline .el-form-item {
margin-right: 6px;
width: 95%;
}
</style>