举手免责页面逻辑调整

dev-scheduling
zhangdi 1 month ago
parent 899352e8e5
commit 5550fbd16b
  1. 19
      src/views/exemption/components/addDialog.vue
  2. 157
      src/views/exemption/components/detailsDialog.vue
  3. 99
      src/views/exemption/index.vue

@ -47,7 +47,7 @@ export default {
{
label: '原因',
prop: 'input2',
type: 'textarea',
// type: 'textarea',
rows: 3,
span: 24,
rules: [{ required: true, message: '请输入', trigger: 'blur' }],
@ -55,7 +55,7 @@ export default {
{
label: '措施',
prop: 'input2',
type: 'textarea',
// type: 'textarea',
span: 24,
rows: 3,
rules: [{ required: true, message: '请输入', trigger: 'blur' }],
@ -63,7 +63,7 @@ export default {
{
label: '免责理由',
prop: 'input2',
type: 'textarea',
// type: 'textarea',
span: 24,
rows: 3,
rules: [{ required: true, message: '请输入', trigger: 'blur' }],
@ -75,6 +75,19 @@ export default {
span: 24,
rules: [{ required: true, message: '请输入', trigger: 'blur' }],
},
{
label: '审核工艺员',
prop: 'input2',
type: 'select',
span: 24,
rules: [{ required: true, message: '请选择', trigger: 'blur' }],
dicData: [
{
label: '张三',
value: '1',
},
],
},
{
label: '固化文件',
prop: 'imgUrl',

@ -0,0 +1,157 @@
<template>
<el-dialog title="详情" append-to-body :modelValue="openShow" width="60%" @close="closeDialog">
<!-- <avue-form :option="option"></avue-form> -->
<el-descriptions
class="margin-top"
title="免责信息"
:column="2"
:size="size"
border
label-width="100px"
>
<el-descriptions-item label="提出人"> </el-descriptions-item>
<el-descriptions-item label="岗位"> </el-descriptions-item>
<el-descriptions-item label="免责问题描述"> </el-descriptions-item>
<el-descriptions-item label="原因"> </el-descriptions-item>
<el-descriptions-item label="措施"> </el-descriptions-item>
<el-descriptions-item label="免责理由"> </el-descriptions-item>
<el-descriptions-item label="免责金额"> </el-descriptions-item>
</el-descriptions>
<el-descriptions
class="margin-top"
title="审批信息"
:column="3"
:size="size"
border
style="margin-top: 15px"
>
</el-descriptions>
<el-steps :active="active" finish-status="success" class="center-steps">
<el-step title="提交">
<template #description>
<div>提交人</div>
<div>2025-09-09</div>
</template>
</el-step>
<el-step title="工艺员">
<template #description>
<div>工艺员</div>
<div>2025-09-09</div>
<div>驳回原因</div>
</template>
</el-step>
<el-step title="质量工程师">
<template #description>
<div>质量工程师名字</div>
<div>2025-09-09</div>
<div>驳回原因</div>
</template>
</el-step>
<el-step title="业务主管">
<template #description>
<div>厂长名字</div>
<div>2025-09-09</div>
<div>驳回原因</div>
</template>
</el-step>
</el-steps>
<!-- <template #footer>
<span class="dialog-footer">
<el-button @click="closeDialog"> </el-button>
<el-button type="primary" @click="submit"> </el-button>
</span>
</template> -->
</el-dialog>
</template>
<script>
// import {
// updateProcess,
// } from '../../api/flowManagement/index';
export default {
props: {
showDialog: {
type: Boolean,
default: false,
},
rowItem: {
type: Object,
default: () => {},
},
},
data() {
return {
openShow: false,
active:1,
// option: {
// submitBtn: false,
// emptyBtn: false,
// column: [
// {
// label: '',
// prop: 'input',
// span: 24,
// type: 'radio',
// dicData: [
// { label: '', value: 0 },
// { label: '', value: 1 },
// ],
// rules: [{ required: true, message: '', trigger: 'blur' }],
// },
// {
// label: '',
// prop: 'input2',
// // type: 'select',
// type: 'textarea',
// span: 24,
// // dicData: [
// // {
// // label: '',
// // value: '1',
// // },
// // {
// // label: '',
// // value: '2',
// // }
// // ]
// },
// ],
// },
};
},
mounted() {
this.openShow = this.showDialog;
},
methods: {
closeDialog() {
this.openShow = false;
this.$emit('closeDialog');
},
submit() {
this.$refs.form.validate(async valid => {
if (valid) {
let params = {
id: this.$route.query.id,
approvalStatus: '',
// status: this.option.column[0].value,
// reason: this.option.column[1].value,
};
// updateProcess(params).then((res) => {
// if (res.code == 200) {
// this.$message.success('');
// this.closeDialog();
// }
// });
}
});
},
},
};
</script>
<style lang="scss" scoped>
::v-deep(.el-step__title) {
font-size: 14px;
}
</style>

@ -21,8 +21,19 @@
</template>
<template #menu-right> </template>
<template #menu="{ row }">
<el-button type="text" @click="updateDialog(row)">修改</el-button>
<el-button type="text" @click="review(row)">审核</el-button>
<el-button type="text" @click="detailsDialog(row)">详情</el-button>
<el-button
type="text"
@click="updateDialog(row)"
v-if="row.arr10 == '3' || row.arr10 == '4' || row.arr10 == '5'"
>修改</el-button
>
<el-button
type="text"
@click="review(row)"
v-if="row.arr10 == '1' || row.arr10 == '2' || row.arr10 == '0'"
>审核</el-button
>
</template>
</avue-crud>
@ -35,21 +46,37 @@
></addDialog>
<!-- 审核 -->
<checkDialog v-if="checkResultOpen" @closeDialog="closeDialog" :show-dialog="checkResultOpen" :rowItem="rowItem"></checkDialog>
<checkDialog
v-if="checkResultOpen"
@closeDialog="closeDialog"
:show-dialog="checkResultOpen"
:rowItem="rowItem"
></checkDialog>
<!-- 详情 -->
<detailsDialog
v-if="detailsOpen"
:showDialog="detailsOpen"
@closeDialog="closeDialog"
:rowItem="rowItem"
></detailsDialog>
</basic-container>
</template>
<script>
import addDialog from './components/addDialog.vue';
import checkDialog from './components/checkDialog.vue';
import detailsDialog from './components/detailsDialog.vue';
export default {
components: {
addDialog,
checkDialog
checkDialog,
detailsDialog,
},
data() {
return {
checkResultOpen: false,
detailsOpen: false,
infoShow: false,
infoTitle: '新增',
form: {},
@ -204,10 +231,15 @@ export default {
},
data: [],
rowItem:{}
rowItem: {},
};
},
methods: {
//
detailsDialog(row) {
this.detailsOpen = true;
this.rowItem = row;
},
//
review(row) {
this.checkResultOpen = true;
@ -226,6 +258,7 @@ export default {
//
closeDialog() {
this.infoShow = false;
this.detailsOpen = false;
this.onLoad(this.page, this.query);
},
rowSave(row, done, loading) {
@ -326,9 +359,63 @@ export default {
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
// arr9: '',
arr10: 0,
},
{
arr1: '张三',
arr2: '热表分厂',
arr3: '2026-01-09',
arr4: '问题描述1',
arr5: '正常操作',
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
arr10: '1',
},
{
arr1: '张三',
arr2: '热表分厂',
arr3: '2026-01-09',
arr4: '问题描述1',
arr5: '正常操作',
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
arr10: '2',
},
{
arr1: '张三',
arr2: '热表分厂',
arr3: '2026-01-09',
arr4: '问题描述1',
arr5: '正常操作',
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
arr10: '3',
},
{
arr1: '张三',
arr2: '热表分厂',
arr3: '2026-01-09',
arr4: '问题描述1',
arr5: '正常操作',
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
arr10: '4',
},
{
arr1: '张三',
arr2: '热表分厂',
arr3: '2026-01-09',
arr4: '问题描述1',
arr5: '正常操作',
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
arr10: '5',
},
];
// this.loading = true;
// getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {

Loading…
Cancel
Save