商品上下架

This commit is contained in:
songyang 2023-12-09 21:54:44 +08:00
parent 1ac52e029e
commit df7a0a03ab
4 changed files with 251 additions and 93 deletions

View File

@ -216,6 +216,10 @@
}
//
const preview = (data: any) => {
console.log(data, '****预览文件')
window.open(data.response.msg)
return
const { url, response = {} } = data || {}
let name = data.name
const downLoadTypeList = props.downLoadTypeList

View File

@ -9,7 +9,7 @@ export const equipmentDeploymentApi = (data: any) => {
// 获取商品入驻列表
export const getEquipmentListApi = (data: any) => {
return post('/zlpt-equip/dev/list', data)
return post('/zlpt-equip/dev/devList', data)
}
// 商品删除接口

View File

@ -57,6 +57,12 @@
return store.deviceTypeSunList
})
/* 查看 */
const disabledForm = ref(false)
/* 编辑 */
const isEditDisabled = ref(false)
//
const changeProvince = (val: any) => {
// console.log(val, '**')
@ -77,17 +83,17 @@
//
const changeDeviceType = (val: any) => {
store.getDeviceTypeSonList(val.split(',')[0])
deviceType[0] = val.split(',')[1]
store.getDeviceTypeSonList(val)
// deviceType[0] = val.split(',')[1]
}
//
const changeDeviceTypeSon = (val: any) => {
store.getDeviceTypeSunList(val.split(',')[0])
deviceType[1] = val.split(',')[1]
store.getDeviceTypeSunList(val)
// deviceType[1] = val.split(',')[1]
}
//
const changeDeviceTypeSun = (val: any) => {
deviceType[2] = val.split(',')[1]
// deviceType[2] = val.split(',')[1]
}
/*
@ -98,7 +104,6 @@
leaseScope: '',
/* 设备所在地 */
location: '',
/* 省 */
provinceId: '',
/* 市 */
@ -144,23 +149,7 @@
/* 设备主图片 */
picUrl: '',
/* 检测信息 ,保险信息*/
fileList: [
/* 检测信息 */
{
id: '28',
url: 'https://zlpt-1259760603.cos.ap-nanjing.myqcloud.com/488bab245180ebf9f1f3d7db5301be4.png'
},
/* 保险信息 */
{
id: '29',
utr: 'https://zlpt-1259760603.cos.ap-nanjing.myqcloud.com/488bab245180ebf9f1f3d7db5301be4.png'
},
/* 设备图片 */
{
id: '20',
utr: 'https://zlpt-1259760603.cos.ap-nanjing.myqcloud.com/488bab245180ebf9f1f3d7db5301be4.png'
}
],
fileList: [],
/* 设备状态 */
maStatus: 15
})
@ -188,10 +177,9 @@
//
const editRowInfo = (row: any) => {
console.log(row, '编辑当前数据')
equipmentDeploymentParams.value = row
dialogFormVisibleSettlein.value = true
getRowList(row)
isEditDisabled.value = true
disabledForm.value = false
}
//
const deleteRowInfo = async (row: any) => {
@ -205,13 +193,60 @@
}
}
/* 查看按钮 */
const previewRowInfo = (row: any) => {
row.devPicList = []
row.fileList.map((item) => {
if (item.dicId == 28) {
row.jcUrl = item.fileUrl
}
if (item.dicId == 29) {
row.bsUrl = item.fileUrl
}
if (item.dicId == 20) {
row.devPicList.push(item.fileUrl)
}
})
getRowList(row)
disabledForm.value = true
isEditDisabled.value = false
}
const getRowList = (row: any) => {
equipmentDeploymentParams.value = row
equipmentDeploymentParams.value.cityId = equipmentDeploymentParams.value.cityId + ''
equipmentDeploymentParams.value.areaId = equipmentDeploymentParams.value.areaId + ''
equipmentDeploymentParams.value.provinceId = equipmentDeploymentParams.value.provinceId + ''
equipmentDeploymentParams.value.leaseScope = equipmentDeploymentParams.value.leaseScope + ''
equipmentDeploymentParams.value.companyId = equipmentDeploymentParams.value.companyId * 1
equipmentDeploymentParams.value.groupId = equipmentDeploymentParams.value.groupId * 1
equipmentDeploymentParams.value.typeId = equipmentDeploymentParams.value.typeId * 1
dialogFormVisibleSettlein.value = true
store.getprovinceList()
store.getmarketList(row.provinceId)
store.getareaList(row.cityId)
store.getDeviceTypeList()
store.getDeviceTypeSonList(row.companyId)
store.getDeviceTypeSunList(row.groupId)
}
//
const equipmentDeployment = () => {
isEditDisabled.value = true
equipmentDeploymentParams.value = {
/* 租赁范围 */
leaseScope: '',
/* 设备所在地 */
location: '',
/* 省 */
provinceId: '',
/* 市 */
cityId: '',
/* 区 */
areaId: '',
/* 设备所在地 省 */
addressEconomize: '',
/* 设备所在地 市 */
@ -248,29 +283,12 @@
jsDayPrice: '',
/* 详细说明 */
description: '',
/* 设备图片 */
/* 设备图片 */
picUrl: '',
/* 检测信息 ,保险信息*/
fileList: [
/* 检测信息 */
{
id: '28',
url: ''
},
/* 保险信息 */
{
id: '29',
utr: ''
},
/* 设备图片 */
{
id: '20',
utr: ''
}
],
fileList: [],
/* 设备状态 */
maStatus: 15
/* 设备型号 */
}
//
dialogFormVisibleSettlein.value = true
@ -341,23 +359,26 @@
/* 检测信息图片地址 */
const successResultCallBackFnjc = (val: any) => {
equipmentDeploymentParams.fileList.push({
id: '28',
url: val.msg
equipmentDeploymentParams.value.fileList.push({
dicId: '28',
fileUrl: val.msg
})
}
/* 保险信息图片地址 */
const successResultCallBackFnbs = (val: any) => {
equipmentDeploymentParams.fileList.push({
id: '29',
url: val.msg
equipmentDeploymentParams.value.fileList.push({
dicId: '29',
fileUrl: val.msg
})
}
/* 设备图片信息地址 */
const successResultCallBackFnDevicePic = (val: any) => {
equipmentDeploymentParams.fileList.push({
id: '20',
url: val.msg
if (!equipmentDeploymentParams.value.picUrl) {
equipmentDeploymentParams.value.picUrl = val.msg
}
equipmentDeploymentParams.value.fileList.push({
dicId: '20',
fileUrl: val.msg
})
}
</script>
@ -371,18 +392,57 @@
</FormComponent>
<!-- 表格 -->
<TableComponent :tableProps="tableProps" :tableData="tableData" @getRowId="getRowId">
<template v-slot:v_type="{ row }">
<el-tag v-if="row.maStatus === '15'" size="small" type="info">待上架审批</el-tag>
<el-tag v-if="row.maStatus === '16'" size="small" type="warning">待租</el-tag>
<el-tag v-if="row.maStatus === '17'" size="small" type="success">在租</el-tag>
<el-tag v-if="row.maStatus === '18'" size="small" type="danger">下架</el-tag>
</template>
<template v-slot:operate="{ row }">
<el-button size="small" type="primary" @click="editRowInfo(row)">编辑</el-button>
<el-button size="small" type="danger" @click="deleteRowInfo(row)">删除</el-button>
</template>
</TableComponent>
<!-- 表格 -->
<el-table
:data="tableData"
style="width: 100%"
show-overflow-tooltip
:header-cell-style="{
background: '#3E98FF',
color: '#fff'
}">
<el-table-column align="center" prop="code" label="编码" />
<el-table-column align="center" prop="leaseScope" label="租赁范围">
<template #default="{ row }">
{{ row.leaseScope == 329 ? '全平台' : '专区' }}
</template>
</el-table-column>
<el-table-column align="center" prop="typeName" label="装备类型" />
<el-table-column align="center" prop="deviceName" label="装备名称" />
<el-table-column align="center" prop="monthLeasePrice" label="租金" />
<el-table-column align="center" label="状态">
<template #default="{ row }">
<el-tag v-if="row.maStatus == 15" size="small" type="info">待上架</el-tag>
<el-tag v-if="row.maStatus == 16" size="small" type="warning">待租</el-tag>
<el-tag v-if="row.maStatus == 17" size="small" type="success">在租</el-tag>
<el-tag v-if="row.maStatus == 18" size="small" type="danger">下架</el-tag>
<el-tag v-if="row.maStatus == 43" size="small" type="primary">自有</el-tag>
<el-tag v-if="row.maStatus == 331" size="small" type="warning">待审批</el-tag>
<el-tag v-if="row.maStatus == 332" size="small" type="danger">上架驳回</el-tag>
</template>
</el-table-column>
<el-table-column prop="name" label="操作" width="200px" align="center">
<template #default="{ row }">
<!-- <el-button
v-if="row.maStatus == 15 || row.maStatus == 1"
size="small"
type="primary"
@click="editRowInfo(row)">
编辑
</el-button> -->
<el-button size="small" type="primary" @click="editRowInfo(row)">编辑</el-button>
<el-button
v-if="row.maStatus == 15 || row.maStatus == 1"
size="small"
type="danger"
@click="deleteRowInfo(row)">
删除
</el-button>
<el-button size="small" type="primary" @click="previewRowInfo(row)">查看</el-button>
</template>
</el-table-column>
</el-table>
<!-- 分页 -->
<PagingComponent
@ -397,7 +457,8 @@
label-width="160"
ref="ruleFormRef"
:model="equipmentDeploymentParams"
:rules="rules">
:rules="rules"
:disabled="disabledForm">
<el-form-item label="租赁范围" prop="easeScope">
<el-select
v-model="equipmentDeploymentParams.leaseScope"
@ -405,7 +466,7 @@
style="width: 220px; margin: 0 5px"
clearable>
<el-option label="全平台" value="329"></el-option>
<el-option label="专区" value="3330"></el-option>
<el-option label="专区" value="330"></el-option>
</el-select>
</el-form-item>
<el-form-item label="设备所在地">
@ -419,7 +480,7 @@
v-for="item in selProvinceList"
:key="item.id"
:label="item.name"
:value="item.code"></el-option>
:value="item.code + ''"></el-option>
</el-select>
<el-select
v-model="equipmentDeploymentParams.cityId"
@ -431,7 +492,7 @@
v-for="item in selMarketList"
:key="item.id"
:label="item.name"
:value="item.code"></el-option>
:value="item.code + ''"></el-option>
</el-select>
<el-select
v-model="equipmentDeploymentParams.areaId"
@ -443,12 +504,12 @@
v-for="item in selAreaList"
:key="item.id"
:label="item.name"
:value="item.code"></el-option>
:value="item.code + ''"></el-option>
</el-select>
</el-form-item>
<el-form-item label="设备类型">
<el-select
v-model="equipmentDeploymentParams.deviceType"
v-model="equipmentDeploymentParams.companyId"
placeholder="选择设备类型"
style="width: 220px; margin: 0 5px"
clearable
@ -457,19 +518,19 @@
v-for="item in selDeviceTypeList"
:key="item.typeId"
:label="item.typeName"
:value="item.typeId + ',' + item.typeName"></el-option>
:value="item.typeId"></el-option>
</el-select>
<el-select
placeholder="选择组别"
style="width: 220px; margin: 0 5px"
clearable
@change="changeDeviceTypeSon"
v-model="equipmentDeploymentParams.deviceTypeSon">
v-model="equipmentDeploymentParams.groupId">
<el-option
v-for="item in selDeviceTypeSonList"
:key="item.typeId"
:label="item.typeName"
:value="item.typeId + ',' + item.typeName"></el-option>
:value="item.typeId"></el-option>
</el-select>
<el-select
placeholder="选择产品名称"
@ -499,11 +560,14 @@
clearable />
</el-form-item>
<el-form-item label="出厂日期">
<el-input
<el-date-picker
v-model="equipmentDeploymentParams.productionDate"
autocomplete="off"
type="date"
placeholder="选择出厂日期"
style="width: 360px"
clearable />
clearable
value-format="YYYY-MM-DD"
format="YYYY-MM-DD" />
</el-form-item>
<el-form-item label="工作小时数">
<el-input
@ -538,7 +602,8 @@
</el-form-item>
<el-form-item label="检测信息">
<uploadComponent
:maxLimit="3"
v-if="!disabledForm || isEditDisabled"
:maxLimit="1"
listType="text"
:acceptTypeList="['.pdf']"
width="120px"
@ -546,13 +611,23 @@
:autoUpload="true"
:successResultCallBack="successResultCallBackFnjc">
<template v-slot:default>
<el-icon size="48" color="#aaa"><Plus /></el-icon>
<el-icon size="20" color="#aaa"><Plus /></el-icon>
</template>
</uploadComponent>
<template v-else>
<a
style="color: rgb(97, 226, 153); cursor: pointer"
target="_blank"
:href="equipmentDeploymentParams.jcUrl">
</a>
</template>
</el-form-item>
<el-form-item label="保险信息">
<uploadComponent
:maxLimit="3"
v-if="!disabledForm || isEditDisabled"
:maxLimit="1"
listType="text"
:acceptTypeList="['.pdf']"
width="120px"
@ -560,9 +635,18 @@
:autoUpload="true"
:successResultCallBack="successResultCallBackFnbs">
<template v-slot:default>
<el-icon size="48" color="#aaa"><Plus /></el-icon>
<el-icon size="20" color="#aaa"><Plus /></el-icon>
</template>
</uploadComponent>
<template v-else>
<a
style="color: rgb(97, 226, 153); cursor: pointer"
target="_blank"
:href="equipmentDeploymentParams.bsUrl">
</a>
</template>
</el-form-item>
<el-form-item label="是否提供机手">
<el-select
@ -600,22 +684,43 @@
clearable
type="textarea"
:rows="5" />
/
</el-form-item>
<el-form-item label="设备图片">
<uploadComponent
v-if="!disabledForm && isEditDisabled"
:maxLimit="8"
listType="picture-card"
:acceptTypeList="['.jpg', '.jpeg', '.png']"
width="120px"
height="120px"
:successResultCallBack="successResultCallBackFnDevicePic">
:successResultCallBack="successResultCallBackFnDevicePic"
:autoUpload="true"
:multiple="true">
<template v-slot:default>
<el-icon size="48" color="#aaa"><Plus /></el-icon>
</template>
</uploadComponent>
至少一张最多八张
设备图片格式为jpgpng和gif文件不得超过5M否则将无法上传请从前后左右四个方向以及从主要工作部件内部结构等方面展示设备
<span v-if="!disabledForm">
至少一张最多八张
设备图片格式为jpgpng和gif文件不得超过5M否则将无法上传请从前后左右四个方向以及从主要工作部件内部结构等方面展示设备
</span>
<template v-if="disabledForm && !isEditDisabled">
<el-image
v-for="item in equipmentDeploymentParams.devPicList"
:key="item"
style="width: 120px; height: 120px; margin-right: 8px"
:src="item"
fit="cover" />
</template>
<!-- <el-image
style="width: 120px; height: 120px; margin-right: 8px"
src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
fit="cover" />
<el-image
style="width: 120px; height: 120px; margin-right: 8px"
src="https://fuss10.elemecdn.com/e/5d/4a731a90594a4af544c0c25941171jpeg.jpeg"
fit="cover" /> -->
</el-form-item>
</el-form>
<template #footer>

View File

@ -165,14 +165,63 @@
<FormComponent :formItemList="formItemList">
<el-form-item>
<el-button type="primary" @click="handleGrounding">批量上架</el-button>
<el-button type="warning" @click="handleOffshelf">批量下架</el-button>
<!-- <el-button type="primary" @click="handleGrounding">批量上架</el-button>
<el-button type="warning" @click="handleOffshelf">批量下架</el-button> -->
</el-form-item>
</FormComponent>
<!-- 表格 -->
<TableComponent :tableProps="tableProps" :tableData="tableData" @getRowId="getRowId">
<el-table
:data="tableData"
style="width: 100%"
show-overflow-tooltip
:header-cell-style="{
background: '#3E98FF',
color: '#fff'
}">
<el-table-column align="center" prop="code" label="编码" />
<el-table-column align="center" prop="leaseScope" label="租赁范围">
<template #default="{ row }">
{{ row.leaseScope == 329 ? '全平台' : '专区' }}
</template>
</el-table-column>
<el-table-column align="center" prop="typeName" label="装备类型" />
<el-table-column align="center" prop="deviceName" label="装备名称" />
<el-table-column align="center" prop="monthLeasePrice" label="租金" />
<el-table-column align="center" label="状态">
<template #default="{ row }">
<el-tag v-if="row.maStatus == 15" size="small" type="info">待上架</el-tag>
<el-tag v-if="row.maStatus == 16" size="small" type="warning">待租</el-tag>
<el-tag v-if="row.maStatus == 17" size="small" type="success">在租</el-tag>
<el-tag v-if="row.maStatus == 18" size="small" type="danger">下架</el-tag>
<el-tag v-if="row.maStatus == 43" size="small" type="primary">自有</el-tag>
<el-tag v-if="row.maStatus == 331" size="small" type="warning">待审批</el-tag>
<el-tag v-if="row.maStatus == 332" size="small" type="danger">上架驳回</el-tag>
</template>
</el-table-column>
<el-table-column prop="name" label="操作" width="160px" align="center">
<template #default="{ row }">
<el-button
v-if="row.maStatus != 16 && row.maStatus != 17 && row.maStatus != 331"
size="small"
type="success"
@click="groundingBtn(row)">
上架
</el-button>
<el-button
size="small"
type="warning"
@click="offShelfBtn(row)"
v-if="row.maStatus == 16 || row.maStatus == 17">
下架
</el-button>
<!-- <el-button size="small" type="primary" @click="editRowInfo(row)">编辑</el-button> -->
</template>
</el-table-column>
</el-table>
<!-- <TableComponent :tableProps="tableProps" :tableData="tableData" @getRowId="getRowId">
<template v-slot:v_type="{ row }">
<el-tag v-if="row.maStatus === '15'" size="small" type="info">待上架审批</el-tag>
<el-tag v-if="row.maStatus === '16'" size="small" type="warning">待租</el-tag>
@ -183,9 +232,9 @@
<el-button size="small" type="success" @click="groundingBtn(row)">上架</el-button>
<el-button size="small" type="warning" @click="offShelfBtn(row)">下架</el-button>
<el-button size="small" type="primary" @click="editRowInfo(row)">编辑</el-button>
<!-- <el-button size="small" type="danger" @click="deleteRowInfo(row)">删除</el-button> -->
</template>
</TableComponent>
</TableComponent> -->
<PagingComponent
@getList="getList"