This commit is contained in:
itcast 2025-11-24 18:11:54 +08:00
parent b185bbb123
commit 7e88459809
17 changed files with 169 additions and 41 deletions

View File

@ -391,6 +391,9 @@ export default {
count: [{ required: true, message: '请输入装备数量', trigger: 'blur' }], count: [{ required: true, message: '请输入装备数量', trigger: 'blur' }],
unit: [{ required: true, message: '请输入计数单位', trigger: 'blur' }], unit: [{ required: true, message: '请输入计数单位', trigger: 'blur' }],
purchaseDate: [{ required: true, message: '请选择采购日期', trigger: 'change' }], purchaseDate: [{ required: true, message: '请选择采购日期', trigger: 'change' }],
certificateList: [{ required: true, message: '请上传合格证', trigger: 'change' }],
inspectionList: [{ required: true, message: '请上传检测证书', trigger: 'change' }],
mainFileList: [{ required: true, message: '请上传图片', trigger: 'change' }]
}, },
propertyVoList: [], // propertyVoList: [], //
} }

View File

@ -64,14 +64,15 @@
<el-table-column align="center" prop="scrapQuantity" label="申请报废数量" width="120" /> <el-table-column align="center" prop="scrapQuantity" label="申请报废数量" width="120" />
<el-table-column align="center" prop="retireReason" label="退役原因" width="180"> <el-table-column align="center" prop="retireReason" label="退役原因" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input <el-select
v-model="scope.row.retireReason" v-model="scope.row.retireReason"
placeholder="请输入退役原因" placeholder="请选择退役原因"
size="small" size="small"
maxlength="20"
show-word-limit
:disabled="!canEdit" :disabled="!canEdit"
/> >
<el-option label="人为" value="人为"></el-option>
<el-option label="自然" value="自然"></el-option>
</el-select>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column align="center" label="报废附件" width="140"> <el-table-column align="center" label="报废附件" width="140">
@ -148,11 +149,12 @@ export default {
computed: { computed: {
// //
canEdit() { canEdit() {
if (this.isNew) { //
return true if (this.isNew) return true;
} // mode
const status = this.getStatusLabel() const mode = this.$route.query.mode;
return status === '待审批' // mode 'edit' 'view'
return mode === 'edit';
} }
}, },
methods: { methods: {

View File

@ -142,12 +142,15 @@ export default {
this.$router.push('/equipment/retire-apply/detail/new') this.$router.push('/equipment/retire-apply/detail/new')
}, },
// / //
onHandleView(row) { onHandleView(row) {
this.$router.push({ this.$router.push({
name: 'RetireApplyDetail', name: 'RetireApplyDetail',
params: { id: row.id }, params: { id: row.id },
query: { taskInfo: JSON.stringify(row) } query: {
taskInfo: JSON.stringify(row),
mode: 'view' // mode
}
}) })
}, },
@ -156,10 +159,15 @@ export default {
this.$router.push({ this.$router.push({
name: 'RetireApplyDetail', name: 'RetireApplyDetail',
params: { id: row.id }, params: { id: row.id },
query: { taskInfo: JSON.stringify(row) } query: {
taskInfo: JSON.stringify(row),
mode: 'edit' // mode
}
}) })
}, },
// //
async onHandleDelete(row) { async onHandleDelete(row) {
this.$confirm('确定删除该退役申请吗?', '提示', { this.$confirm('确定删除该退役申请吗?', '提示', {

View File

@ -41,7 +41,8 @@
<template slot-scope="{ row }"> <template slot-scope="{ row }">
<el-button <el-button
size="small" size="small"
type="primary" type="text"
icon="el-icon-edit"
class="primary-lease" class="primary-lease"
@click="onRepublish(row)" @click="onRepublish(row)"
> >

View File

@ -313,7 +313,8 @@ export default {
proCity: [{ required: true, message: '请选择项目所在市', trigger: 'change' }], proCity: [{ required: true, message: '请选择项目所在市', trigger: 'change' }],
proCounty: [{ required: true, message: '请选择项目所在区/县', trigger: 'change' }], proCounty: [{ required: true, message: '请选择项目所在区/县', trigger: 'change' }],
proLocation: [{ required: true, message: '请输入详细地址', trigger: 'blur' }], proLocation: [{ required: true, message: '请输入详细地址', trigger: 'blur' }],
useUnit: [{ required: true, message: '请输入需求单位', trigger: 'blur' }] useUnit: [{ required: true, message: '请输入需求单位', trigger: 'blur' }],
}, },
typeList: [ typeList: [

View File

@ -100,10 +100,11 @@
<el-table-column align="center" prop="updateTime" label="更新时间"/> <el-table-column align="center" prop="updateTime" label="更新时间"/>
<el-table-column align="center" label="操作" :width="220"> <el-table-column align="center" label="操作" :width="220">
<template scope="scope"> <template scope="scope">
<el-button size="mini" type="primary" @click="onContract(scope.row)">编辑</el-button> <el-button size="mini" type="text" icon="el-icon-edit" @click="onContract(scope.row)">编辑</el-button>
<el-button <el-button
size="mini" size="mini"
type="danger" type="text"
icon="el-icon-delete"
@click="onDelete(scope.row.id)" @click="onDelete(scope.row.id)"
v-if="scope.row.status == 0" v-if="scope.row.status == 0"
>删除</el-button> >删除</el-button>

View File

@ -8,7 +8,7 @@
</el-col> </el-col>
<el-col v-if="!routerParams.isView" :span="20" style="display: flex; justify-content: flex-end"> <el-col v-if="!routerParams.isView" :span="20" style="display: flex; justify-content: flex-end">
<el-button type="primary" @click="handleApprove">通过</el-button> <el-button type="primary" @click="handleApprove">通过</el-button>
<el-button type="danger" @click="handleReject">驳回</el-button> <el-button type="primary" @click="handleReject">驳回</el-button>
</el-col> </el-col>
</el-row> </el-row>

View File

@ -89,7 +89,7 @@
/> />
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>

View File

@ -13,7 +13,7 @@
maxlength="20" maxlength="20"
/> />
</el-form-item> </el-form-item>
<el-form-item prop="code" label="装备编码" style="margin-left: 25px;"> <el-form-item prop="code" label="装备编码" style="margin-left: 20px;">
<el-input <el-input
v-model="queryParams.code" v-model="queryParams.code"
placeholder="装备编码" placeholder="装备编码"
@ -23,7 +23,7 @@
/> />
</el-form-item> </el-form-item>
<el-form-item prop="maStatus" label="装备状态" style="margin-left: 25px;"> <el-form-item prop="maStatus" label="装备状态" style="margin-left: 20px;">
<el-select <el-select
style="width: 100% " style="width: 100% "
@ -39,7 +39,7 @@
</el-form-item> </el-form-item>
<el-form-item prop="rentNum" label="共享次数" style="margin-left: 25px;"> <el-form-item prop="rentNum" label="共享次数" style="margin-left: 20px;">
<el-input <el-input
v-model="queryParams.rentNum" v-model="queryParams.rentNum"
placeholder="共享次数" placeholder="共享次数"
@ -50,8 +50,7 @@
/> />
</el-form-item> </el-form-item>
<el-form-item prop="dateRange" label="更新时间" style="margin-left: 20px;">
<el-form-item prop="dateRange" label="更新时间" style="margin-left: 25px;">
<el-date-picker <el-date-picker
v-model="dateRange" v-model="dateRange"
@ -60,7 +59,7 @@
range-separator="至" range-separator="至"
start-placeholder="更新开始日期" start-placeholder="更新开始日期"
end-placeholder="更新结束日期" end-placeholder="更新结束日期"
style="width: 250px " style="width: 260px "
> >
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>

View File

@ -40,13 +40,14 @@
end-placeholder="结束日期" end-placeholder="结束日期"
></el-date-picker> ></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<div class="action-bar">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -100,6 +101,7 @@
>刷新缓存</el-button> >刷新缓存</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</div>
</el-row> </el-row>
<el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="configList" @selection-change="handleSelectionChange">
@ -346,3 +348,15 @@ export default {
} }
}; };
</script> </script>
<style lang="scss" scoped>
/* 新增:统一的操作栏容器样式,用于将所有按钮和工具栏放在右侧 */
.action-bar {
display: flex;
align-items: center;
justify-content: flex-end; /* 关键:整体内容靠右对齐 */
gap: 10px; /* 统一设置内部元素的间距 */
width: 100%;
}
</style>

View File

@ -29,7 +29,7 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float: right">
<el-button <el-button
type="primary" type="primary"
icon="el-icon-search" icon="el-icon-search"
@ -38,7 +38,7 @@
>搜索</el-button >搜索</el-button
> >
<el-button <el-button
type="primary"
icon="el-icon-refresh" icon="el-icon-refresh"
size="mini" size="mini"
@click="resetQuery" @click="resetQuery"
@ -48,6 +48,7 @@
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<div class="action-bar">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -73,6 +74,7 @@
:showSearch.sync="showSearch" :showSearch.sync="showSearch"
@queryTable="getList" @queryTable="getList"
></right-toolbar> ></right-toolbar>
</div>
</el-row> </el-row>
<el-table <el-table
@ -485,3 +487,14 @@ export default {
}, },
} }
</script> </script>
<style lang="scss" scoped>
/* 新增:统一的操作栏容器样式,用于将所有按钮和工具栏放在右侧 */
.action-bar {
display: flex;
align-items: center;
justify-content: flex-end; /* 关键:整体内容靠右对齐 */
gap: 10px; /* 统一设置内部元素的间距 */
width: 100%;
}
</style>

View File

@ -45,13 +45,14 @@
end-placeholder="结束日期" end-placeholder="结束日期"
></el-date-picker> ></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8" >
<div class="action-bar">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -105,6 +106,7 @@
>刷新缓存</el-button> >刷新缓存</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</div>
</el-row> </el-row>
<el-table v-loading="loading" :data="typeList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="typeList" @selection-change="handleSelectionChange">
@ -345,3 +347,17 @@ export default {
} }
}; };
</script> </script>
<style lang="scss" scoped>
/* 新增:统一的操作栏容器样式,用于将所有按钮和工具栏放在右侧 */
.action-bar {
display: flex;
align-items: center;
justify-content: flex-end; /* 关键:整体内容靠右对齐 */
gap: 10px; /* 统一设置内部元素的间距 */
width: 100%;
}
</style>

View File

@ -19,13 +19,14 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<div class="action-bar">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -46,6 +47,7 @@
>展开/折叠</el-button> >展开/折叠</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</div>
</el-row> </el-row>
<el-table <el-table
@ -487,3 +489,14 @@ export default {
} }
}; };
</script> </script>
<style lang="scss" scoped>
/* 新增:统一的操作栏容器样式,用于将所有按钮和工具栏放在右侧 */
.action-bar {
display: flex;
align-items: center;
justify-content: flex-end; /* 关键:整体内容靠右对齐 */
gap: 10px; /* 统一设置内部元素的间距 */
width: 100%;
}
</style>

View File

@ -27,13 +27,14 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float:right">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<div class="action-bar">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -70,6 +71,7 @@
> >
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</div>
</el-row> </el-row>
<el-table v-loading="loading" :data="noticeList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="noticeList" @selection-change="handleSelectionChange">
@ -483,3 +485,14 @@ export default {
}, },
} }
</script> </script>
<style lang="scss" scoped>
/* 新增:统一的操作栏容器样式,用于将所有按钮和工具栏放在右侧 */
.action-bar {
display: flex;
align-items: center;
justify-content: flex-end; /* 关键:整体内容靠右对齐 */
gap: 10px; /* 统一设置内部元素的间距 */
width: 100%;
}
</style>

View File

@ -27,13 +27,14 @@
/> />
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item style="float: right">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<div class="action-bar">
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="primary" type="primary"
@ -77,6 +78,7 @@
>导出</el-button> >导出</el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</div>
</el-row> </el-row>
<el-table v-loading="loading" :data="postList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="postList" @selection-change="handleSelectionChange">
@ -307,3 +309,14 @@ export default {
} }
}; };
</script> </script>
<style lang="scss" scoped>
/* 新增:统一的操作栏容器样式,用于将所有按钮和工具栏放在右侧 */
.action-bar {
display: flex;
align-items: center;
justify-content: flex-end; /* 关键:整体内容靠右对齐 */
gap: 10px; /* 统一设置内部元素的间距 */
width: 100%;
}
</style>

View File

@ -46,9 +46,9 @@
end-placeholder="结束日期" end-placeholder="结束日期"
></el-date-picker> ></el-date-picker>
</el-form-item> </el-form-item>
<el-form-item class="query-buttons"> <el-form-item class="query-buttons" style="margin-left: 120px">
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">查询</el-button>
<el-button type="primary" icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</div> </div>

View File

@ -325,6 +325,37 @@ export default {
{ label: '规格型号', prop: 'typeName' }, { label: '规格型号', prop: 'typeName' },
{ label: '计量单位', prop: 'unitName' }, { label: '计量单位', prop: 'unitName' },
{ label: '工具编码', prop: 'toolCode' }, { label: '工具编码', prop: 'toolCode' },
{
label: "工具状态",
prop: "status",
width: 120,
render: (h, { row }) => {
// el-tag
// switch/case
const statusOptions = {
0: { text: "在库", type: "success" },
1: { text: "在用", type: "info" },
2: { text: "在修", type: "warning" },
3: { text: "已报废", type: "danger" },
};
//
const option = statusOptions[row.status] || {
text: "未知状态",
type: "",
};
return h(
"el-tag", // 1. el-tag
{
props: {
type: option.type,
size: "mini",
},
},
option.text
);
},
},
{ label: '下次检验时间', prop: 'nextCheckDate' }, { label: '下次检验时间', prop: 'nextCheckDate' },
{ label: '生产厂家', prop: 'supplierName', width: 200 }, { label: '生产厂家', prop: 'supplierName', width: 200 },
{ label: '出厂日期', prop: 'productionDate' }, { label: '出厂日期', prop: 'productionDate' },