代码提交

This commit is contained in:
jiang 2025-11-16 19:41:15 +08:00
parent 5513490025
commit 7dd27e57eb
11 changed files with 318 additions and 308 deletions

View File

@ -27,6 +27,8 @@ export const getApplyListApi = (data = {}) => {
})
}
// 新增申请-列表
export const addApplyApi = (data) => {
return request({

View File

@ -2,17 +2,19 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" :rules="outFormRules" size="small" inline label-width="auto" >
<el-form :model="queryParams" ref="queryForm" :rules="outFormRules" inline label-width="110px">
<el-form-item label="需求单位" prop="useUnit">
<el-input v-model="queryParams.useUnit" placeholder="请输入需求单位" :disabled="queryParams.status=='0'" clearable/>
<el-input style="width: 200px" v-model="queryParams.useUnit" placeholder="请输入需求单位"
:disabled="queryParams.status=='0'" clearable
/>
</el-form-item>
<el-form-item label="使用项目" prop="proCode">
<el-select
clearable
:disabled="!routerParams.isEdit"
style="width: 100%"
style="width: 200px"
placeholder="请选择使用项目"
v-model="queryParams.proCode"
@change="onChangeProCode"
@ -27,19 +29,19 @@
</el-form-item>
<el-form-item label="项目类型" prop="proType">
<el-input disabled v-model="queryParams.proType"/>
<el-input style="width: 200px" disabled v-model="queryParams.proType"/>
</el-form-item>
<el-form-item label="电压等级" prop="voltageLevel">
<el-input disabled v-model="queryParams.voltageLevel"/>
<el-input style="width: 200px" disabled v-model="queryParams.voltageLevel"/>
</el-form-item>
<el-form-item label="项目所在省" prop="proProvince">
<el-input disabled v-model="queryParams.proProvince"/>
<el-input style="width: 200px" disabled v-model="queryParams.proProvince"/>
</el-form-item>
<el-form-item label="项目所在市" prop="proCity">
<el-input disabled v-model="queryParams.proCity"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCity"/>
</el-form-item>
<el-form-item label="项目所在区/县" prop="proCounty">
<el-input disabled v-model="queryParams.proCounty"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCounty"/>
</el-form-item>
<el-form-item label="使用日期" prop="useTime">
@ -50,7 +52,7 @@
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
placeholder="选择日期"
style="width: 210px"
style="width: 200px"
@change="useTimeChange"
>
</el-date-picker>
@ -89,8 +91,8 @@
/>
<el-table-column label="分类" align="center" prop="devType" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.devType==1">{{ "装备" }}</span>
<span v-if="scope.row.devType==2">{{ "工具" }}</span>
<span v-if="scope.row.devType==1">{{ '装备' }}</span>
<span v-if="scope.row.devType==2">{{ '工具' }}</span>
</template>
</el-table-column>
<el-table-column label="类目" align="center" prop="category" :show-overflow-tooltip="true"/>
@ -98,8 +100,8 @@
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true"/>
<el-table-column label="管理模式" align="center" prop="manageType" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.manageType==0">{{ "编码设备" }}</span>
<span v-if="scope.row.manageType==1">{{ "数量设备" }}</span>
<span v-if="scope.row.manageType==0">{{ '编码设备' }}</span>
<span v-if="scope.row.manageType==1">{{ '数量设备' }}</span>
</template>
</el-table-column>
<el-table-column label="设备编码" align="center" prop="devCode" :show-overflow-tooltip="true" width="140px"/>
@ -121,7 +123,8 @@
<el-table-column label="操作" align="center" v-if="!routerParams.isView">
<template slot-scope="{ row }">
<el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(row)" style="color: red"
>删除</el-button
>删除
</el-button
>
</template>
</el-table-column>
@ -161,8 +164,8 @@
</el-table-column>
<el-table-column label="分类" align="center" prop="devType" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.devType==1">{{ "装备" }}</span>
<span v-if="scope.row.devType==2">{{ "工具" }}</span>
<span v-if="scope.row.devType==1">{{ '装备' }}</span>
<span v-if="scope.row.devType==2">{{ '工具' }}</span>
</template>
</el-table-column>
<el-table-column label="类目" align="center" prop="category" :show-overflow-tooltip="true"/>
@ -170,8 +173,8 @@
<el-table-column label="规格型号" align="center" prop="typeModelName" :show-overflow-tooltip="true"/>
<el-table-column label="管理模式" align="center" prop="manageType" :show-overflow-tooltip="true">
<template slot-scope="scope">
<span v-if="scope.row.manageType==0">{{ "编码设备" }}</span>
<span v-if="scope.row.manageType==1">{{ "数量设备" }}</span>
<span v-if="scope.row.manageType==0">{{ '编码设备' }}</span>
<span v-if="scope.row.manageType==1">{{ '数量设备' }}</span>
</template>
</el-table-column>
<el-table-column label="设备编码" align="center" prop="devCode" :show-overflow-tooltip="true" width="140px"/>
@ -179,7 +182,10 @@
<el-table-column label="申请数量" align="center" prop="num">
<template slot-scope="scope">
<span v-if="scope.row.manageType==0">{{ 1 }}</span>
<el-input-number v-if="scope.row.manageType==1" :disabled="isRowSelected(scope.row)" v-model="scope.row.num" :min="0" :max="scope.row.storageNum" :default-value="0" style="width: 120px" @change="applyNumChange(scope.row)"/>
<el-input-number v-if="scope.row.manageType==1" :disabled="isRowSelected(scope.row)" v-model="scope.row.num"
:min="0" :max="scope.row.storageNum" :default-value="0" style="width: 120px"
@change="applyNumChange(scope.row)"
/>
</template>
</el-table-column>
</el-table>
@ -229,7 +235,7 @@ export default {
useUnit: '', //
useTime: null,
pageNum: 1, //
pageSize: 10, //
pageSize: 10 //
},
useProjectList: [], // 使
voltageList: [], //
@ -246,12 +252,12 @@ export default {
proCity: [{ required: true, message: '请选择项目所在市', trigger: 'change' }],
proCounty: [{ required: true, message: '请选择项目所在区/县', trigger: 'change' }],
proLocation: [{ required: true, message: '请输入详细地址', trigger: 'blur' }],
useUnit: [{ required: true, message: '请输入需求单位', trigger: 'blur' }],
useUnit: [{ required: true, message: '请输入需求单位', trigger: 'blur' }]
},
typeList: [
{ label: '数量管理', value: '1' },
{ label: '编码管理', value: '0' },
{ label: '编码管理', value: '0' }
],
total: 0, //
//
@ -262,14 +268,14 @@ export default {
typeModelName: '', //
devCode: '', //
pageNum: 1, //
pageSize: 10, //
pageSize: 10 //
},
addTotal: 0, //
addList: [], //
addTempList: [], //
ids: [], // id
single: false, //
multiple: false, //
multiple: false //
}
},
created() {
@ -395,7 +401,7 @@ export default {
typeModelName: '', //
devCode: '', //
pageNum: 1, //
pageSize: 10, //
pageSize: 10 //
}
this.getApplyList()
},
@ -446,8 +452,7 @@ export default {
return false
} else if (this.tableList.some(item => item.id == row.id && item.typeId == row.typeId)) { //
return false
}
else{
} else {
return true
}
},
@ -462,7 +467,7 @@ export default {
if (row.num > row.storageNum) { //
this.$message({
type: 'error',
message: '申请数量不能大于当前库存',
message: '申请数量不能大于当前库存'
})
row.num = 0
}
@ -474,7 +479,7 @@ export default {
if (!this.ids.length) { //
this.$message({
type: 'error',
message: '请勾选数据',
message: '请勾选数据'
})
return
}
@ -496,12 +501,12 @@ export default {
this.$confirm('是否确定提交申请?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
type: 'warning'
}).then(async() => {
this.isLoading = true
try {
//
if(!this.routerParams.isEdit && !this.routerParams.id) {
if (!this.routerParams.id) {
this.queryParams.type = 2
this.queryParams.leaseType = 0
const tempTableList = this.tableList.map(item => ({
@ -510,13 +515,13 @@ export default {
}))
const params = {
devInfo: this.queryParams,
devDetailsList: tempTableList,
devDetailsList: tempTableList
}
const res = await addApplyApi(params)
if (res.code == 200) {
this.$message({
type: 'success',
message: '添加成功!',
message: '添加成功!'
})
this.$router.go(-1)
// this.$tab.closeOpenPage({ path: '/business/applyList' })
@ -531,13 +536,13 @@ export default {
}))
const params = {
devInfo: this.queryParams,
devDetailsList: tempTableList,
devDetailsList: tempTableList
}
const res = await editApplyApi(params)
if (res.code == 200) {
this.$message({
type: 'success',
message: '修改成功!',
message: '修改成功!'
})
this.$router.go(-1)
// this.$tab.closeOpenPage({ path: '/business/applyList' })
@ -552,8 +557,8 @@ export default {
})
}
})
},
},
}
}
}
</script>

View File

@ -2,12 +2,13 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="auto">
<el-form :model="queryParams" ref="queryForm" inline label-width="100px">
<el-form-item label="项目名称:" prop="proCode">
<el-select
clearable
placeholder="请选择项目名称"
v-model="queryParams.proCode"
style="width: 200px"
>
<el-option
:key="item.proCode"
@ -24,7 +25,7 @@
placeholder="请选择任务状态"
clearable
filterable
style="width: 240px"
style="width: 200px"
>
<el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
@ -43,7 +44,7 @@
unlink-panels
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
style="width: 240px"
style="width: 200px"
/>
</el-form-item>
@ -198,7 +199,7 @@ export default {
},
//
handleAdd() {
this.$router.push({ path: '/business/addApply' })
this.$router.push({ path: '/business/addApply',query: {isEdit: true } })
},
//
handleView(row) {

View File

@ -2,30 +2,30 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="auto" >
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="100px" >
<el-form-item label="需求单位" prop="useUnit">
<el-input v-model="queryParams.useUnit" placeholder="请输入需求单位" :disabled="queryParams.status=='0'" clearable/>
<el-input v-model="queryParams.useUnit" style="width: 200px" placeholder="请输入需求单位" :disabled="queryParams.status=='0'" clearable/>
</el-form-item>
<el-form-item label="使用项目" prop="proName">
<el-input disabled v-model="queryParams.proName"/>
<el-input style="width: 200px" disabled v-model="queryParams.proName"/>
</el-form-item>
<el-form-item label="项目类型" prop="proType">
<el-input disabled v-model="queryParams.proType"/>
<el-input style="width: 200px" disabled v-model="queryParams.proType"/>
</el-form-item>
<el-form-item label="电压等级" prop="voltageLevel">
<el-input disabled v-model="queryParams.voltageLevel"/>
<el-input style="width: 200px" disabled v-model="queryParams.voltageLevel"/>
</el-form-item>
<el-form-item label="项目所在省" prop="proProvince">
<el-input disabled v-model="queryParams.proProvince"/>
<el-input style="width: 200px" disabled v-model="queryParams.proProvince"/>
</el-form-item>
<el-form-item label="项目所在市" prop="proCity">
<el-input disabled v-model="queryParams.proCity"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCity"/>
</el-form-item>
<el-form-item label="项目所在区/县" prop="proCounty">
<el-input disabled v-model="queryParams.proCounty"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCounty"/>
</el-form-item>
</el-form>

View File

@ -2,12 +2,13 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline @submit.native.prevent>
<el-form :model="queryParams" ref="queryForm" label-width="100px" inline @submit.native.prevent>
<el-form-item label="项目名称:" prop="proCode">
<el-select
clearable
placeholder="请选择项目名称"
v-model="queryParams.proCode"
style="width: 200px"
>
<el-option
:key="item.proCode"
@ -24,7 +25,7 @@
placeholder="请选择任务状态"
clearable
filterable
style="width: 240px"
style="width: 200px"
>
<el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value" />
</el-select>
@ -43,7 +44,7 @@
unlink-panels
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
style="width: 240px"
style="width: 200px"
/>
</el-form-item>

View File

@ -2,10 +2,10 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="auto">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="100px">
<el-form-item label="需求单位" prop="useUnit">
<el-input v-model="queryParams.useUnit" placeholder="请输入需求单位" :disabled="queryParams.status=='0'"
<el-input v-model="queryParams.useUnit" style="width: 200px" placeholder="请输入需求单位" :disabled="queryParams.status=='0'"
clearable
/>
</el-form-item>
@ -13,7 +13,7 @@
<el-form-item label="使用项目" prop="proCode">
<el-select
clearable
style="width: 100%"
style="width: 200px"
disabled
placeholder="请选择使用项目"
v-model="queryParams.proCode"
@ -29,7 +29,7 @@
</el-form-item>
<el-form-item label="项目类型" prop="proType">
<el-select clearable disabled style="width: 100%" placeholder="请选择项目类型" v-model="queryParams.proType">
<el-select clearable disabled style="width: 200px" placeholder="请选择项目类型" v-model="queryParams.proType">
<el-option value="0" label="线路"/>
<el-option value="1" label="电缆"/>
<el-option value="2" label="变电"/>
@ -39,7 +39,7 @@
<el-form-item label="电压等级" prop="voltageLevel">
<el-select
clearable
style="width: 100%"
style="width: 200px"
disabled
placeholder="请选择电压等级"
v-model="queryParams.voltageLevel"
@ -56,7 +56,7 @@
<el-form-item label="项目所在省" prop="proProvince">
<el-select
clearable
style="width: 100%"
style="width: 200px"
disabled
placeholder="请选择项目所在省"
v-model="queryParams.proProvince"
@ -74,7 +74,7 @@
<el-form-item label="项目所在市" prop="proCity">
<el-select
clearable
style="width: 100%"
style="width: 200px"
disabled
placeholder="请选择项目所在市"
v-model="queryParams.proCity"
@ -93,7 +93,7 @@
<el-select
clearable
disabled
style="width: 100%"
style="width: 200px"
placeholder="请选择项目所在区/县"
v-model="queryParams.proCounty"
>

View File

@ -2,14 +2,14 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline @submit.native.prevent>
<el-form :model="queryParams" ref="queryForm" label-width="100px" inline @submit.native.prevent>
<el-form-item label="工程名称" prop="proName">
<el-input
v-model="queryParams.proName"
placeholder="请输入工程名称"
clearable
@keyup.enter.native="handleQuery"
style="width: 240px"
style="width: 200px"
/>
</el-form-item>
<!-- 日期范围 -->
@ -24,7 +24,7 @@
unlink-panels
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
style="width: 240px"
style="width: 200px"
/>
</el-form-item>
<el-form-item label="任务状态" prop="taskStatus">
@ -33,7 +33,7 @@
placeholder="请选择任务状态"
clearable
filterable
style="width: 240px"
style="width: 200px"
>
<el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"/>
</el-select>

View File

@ -2,32 +2,32 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="auto">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="100px">
<el-form-item label="需求单位" prop="useUnit">
<el-input v-model="queryParams.useUnit" placeholder="请输入需求单位" :disabled="queryParams.status=='0'"
<el-input v-model="queryParams.useUnit" style="width: 200px" placeholder="请输入需求单位" :disabled="queryParams.status=='0'"
clearable
/>
</el-form-item>
<el-form-item label="使用项目" prop="proName">
<el-input disabled v-model="queryParams.proName"/>
<el-input style="width: 200px" disabled v-model="queryParams.proName"/>
</el-form-item>
<el-form-item label="项目类型" prop="proType">
<el-input disabled v-model="queryParams.proType"/>
<el-input style="width: 200px" disabled v-model="queryParams.proType"/>
</el-form-item>
<el-form-item label="电压等级" prop="voltageLevel">
<el-input disabled v-model="queryParams.voltageLevel"/>
<el-input style="width: 200px" disabled v-model="queryParams.voltageLevel"/>
</el-form-item>
<el-form-item label="项目所在省" prop="proProvince">
<el-input disabled v-model="queryParams.proProvince"/>
<el-input style="width: 200px" disabled v-model="queryParams.proProvince"/>
</el-form-item>
<el-form-item label="项目所在市" prop="proCity">
<el-input disabled v-model="queryParams.proCity"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCity"/>
</el-form-item>
<el-form-item label="项目所在区/县" prop="proCounty">
<el-input disabled v-model="queryParams.proCounty"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCounty"/>
</el-form-item>

View File

@ -2,14 +2,14 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline @submit.native.prevent>
<el-form :model="queryParams" ref="queryForm" label-width="100px" inline @submit.native.prevent>
<el-form-item label="需求单位" prop="useUnit">
<el-select
v-model="queryParams.useUnit"
placeholder="请选择需求单位"
clearable
filterable
style="width: 100%"
style="width: 200px"
>
<el-option
v-for="item in propertyUnitList"
@ -21,6 +21,7 @@
</el-form-item>
<el-form-item label="项目名称" prop="proCode">
<el-select
style="width: 200px"
clearable
placeholder="请选择项目名称"
v-model="queryParams.proCode"
@ -40,7 +41,7 @@
placeholder="请选择任务状态"
clearable
filterable
style="width: 240px"
style="width: 200px"
>
<el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"/>
</el-select>
@ -59,7 +60,7 @@
unlink-panels
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
style="width: 240px"
style="width: 200px"
/>
</el-form-item>

View File

@ -2,16 +2,14 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" :rules="outFormRules" inline label-width="auto">
<el-form :model="queryParams" ref="queryForm" :rules="outFormRules" inline label-width="100px">
<el-form-item label="需求单位" prop="useUnit">
<el-select
v-model="queryParams.useUnit"
placeholder="请选择需求单位"
clearable
filterable
style="width: 200px"
:disabled="!routerParams.isEdit"
style="width: 100%"
>
<el-option
v-for="item in propertyUnitList"
@ -25,7 +23,7 @@
<el-form-item label="使用项目" prop="proCode">
<el-select
clearable
style="width: 100%"
style="width: 200px"
placeholder="请选择使用项目"
:disabled="!routerParams.isEdit"
v-model="queryParams.proCode"
@ -41,30 +39,30 @@
</el-form-item>
<el-form-item label="项目类型" prop="proType">
<el-input disabled v-model="queryParams.proType"/>
<el-input style="width: 200px" disabled v-model="queryParams.proType"/>
</el-form-item>
<el-form-item label="电压等级" prop="voltageLevel">
<el-input disabled v-model="queryParams.voltageLevel"/>
<el-input style="width: 200px" disabled v-model="queryParams.voltageLevel"/>
</el-form-item>
<el-form-item label="项目所在省" prop="proProvince">
<el-input disabled v-model="queryParams.proProvince"/>
<el-input style="width: 200px" disabled v-model="queryParams.proProvince"/>
</el-form-item>
<el-form-item label="项目所在市" prop="proCity">
<el-input disabled v-model="queryParams.proCity"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCity"/>
</el-form-item>
<el-form-item label="项目所在区/县" prop="proCounty">
<el-input disabled v-model="queryParams.proCounty"/>
<el-input style="width: 200px" disabled v-model="queryParams.proCounty"/>
</el-form-item>
<el-form-item label="使用日期" prop="useTime">
<el-date-picker
v-model="queryParams.useTime"
:disabled="!routerParams.isEdit"
style="width: 200px"
type="date"
format="yyyy-MM-dd"
value-format="yyyy-MM-dd"
placeholder="选择日期"
style="width: 210px"
@change="useTimeChange"
>
</el-date-picker>
@ -573,7 +571,7 @@ export default {
this.isLoading = true
try {
//
if (!this.routerParams.isEdit && !this.routerParams.id) {
if (!this.routerParams.id) {
this.queryParams.type = 1
this.queryParams.leaseType = 0
const tempTableList = this.tableList.map(item => ({

View File

@ -2,14 +2,14 @@
<!-- 基础页面 -->
<div class="app-container">
<el-card v-show="showSearch" style="margin-bottom: 20px">
<el-form :model="queryParams" ref="queryForm" size="small" inline label-width="auto">
<el-form :model="queryParams" ref="queryForm" inline label-width="100px">
<el-form-item label="需求单位" prop="useUnit">
<el-select
v-model="queryParams.useUnit"
placeholder="请选择需求单位"
clearable
filterable
style="width: 100%"
style="width: 200px"
>
<el-option
v-for="item in propertyUnitList"
@ -21,6 +21,7 @@
</el-form-item>
<el-form-item label="项目名称" prop="proCode">
<el-select
style="width: 200px"
clearable
placeholder="请选择项目名称"
v-model="queryParams.proCode"
@ -40,7 +41,7 @@
placeholder="请选择任务状态"
clearable
filterable
style="width: 240px"
style="width: 200px"
>
<el-option v-for="item in statusList" :key="item.value" :label="item.label" :value="item.value"/>
</el-select>
@ -59,7 +60,7 @@
unlink-panels
value-format="yyyy-MM-dd"
format="yyyy-MM-dd"
style="width: 240px"
style="width: 200px"
/>
</el-form-item>
@ -146,6 +147,7 @@ import {
getUseProjectListAPI
} from '@/api/EquipmentLedger/equ-out'
import { deptTreeSelect } from '@/api/system/user'
import { deleteApplyApi } from '@/api/business'
export default {
name: 'ApplyList',
@ -239,7 +241,7 @@ export default {
},
//
handleAdd() {
this.$router.push({ path: '/business/warehouse/details' })
this.$router.push({ path: '/business/warehouse/details',query: {isEdit: true } })
},
//
handleView(row) {