举手免责页面逻辑调整

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: '原因', label: '原因',
prop: 'input2', prop: 'input2',
type: 'textarea', // type: 'textarea',
rows: 3, rows: 3,
span: 24, span: 24,
rules: [{ required: true, message: '请输入', trigger: 'blur' }], rules: [{ required: true, message: '请输入', trigger: 'blur' }],
@ -55,7 +55,7 @@ export default {
{ {
label: '措施', label: '措施',
prop: 'input2', prop: 'input2',
type: 'textarea', // type: 'textarea',
span: 24, span: 24,
rows: 3, rows: 3,
rules: [{ required: true, message: '请输入', trigger: 'blur' }], rules: [{ required: true, message: '请输入', trigger: 'blur' }],
@ -63,7 +63,7 @@ export default {
{ {
label: '免责理由', label: '免责理由',
prop: 'input2', prop: 'input2',
type: 'textarea', // type: 'textarea',
span: 24, span: 24,
rows: 3, rows: 3,
rules: [{ required: true, message: '请输入', trigger: 'blur' }], rules: [{ required: true, message: '请输入', trigger: 'blur' }],
@ -75,6 +75,19 @@ export default {
span: 24, span: 24,
rules: [{ required: true, message: '请输入', trigger: 'blur' }], rules: [{ required: true, message: '请输入', trigger: 'blur' }],
}, },
{
label: '审核工艺员',
prop: 'input2',
type: 'select',
span: 24,
rules: [{ required: true, message: '请选择', trigger: 'blur' }],
dicData: [
{
label: '张三',
value: '1',
},
],
},
{ {
label: '固化文件', label: '固化文件',
prop: 'imgUrl', 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>
<template #menu-right> </template> <template #menu-right> </template>
<template #menu="{ row }"> <template #menu="{ row }">
<el-button type="text" @click="updateDialog(row)">修改</el-button> <el-button type="text" @click="detailsDialog(row)">详情</el-button>
<el-button type="text" @click="review(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> </template>
</avue-crud> </avue-crud>
@ -35,21 +46,37 @@
></addDialog> ></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> </basic-container>
</template> </template>
<script> <script>
import addDialog from './components/addDialog.vue'; import addDialog from './components/addDialog.vue';
import checkDialog from './components/checkDialog.vue'; import checkDialog from './components/checkDialog.vue';
import detailsDialog from './components/detailsDialog.vue';
export default { export default {
components: { components: {
addDialog, addDialog,
checkDialog checkDialog,
detailsDialog,
}, },
data() { data() {
return { return {
checkResultOpen: false, checkResultOpen: false,
detailsOpen: false,
infoShow: false, infoShow: false,
infoTitle: '新增', infoTitle: '新增',
form: {}, form: {},
@ -204,10 +231,15 @@ export default {
}, },
data: [], data: [],
rowItem:{} rowItem: {},
}; };
}, },
methods: { methods: {
//
detailsDialog(row) {
this.detailsOpen = true;
this.rowItem = row;
},
// //
review(row) { review(row) {
this.checkResultOpen = true; this.checkResultOpen = true;
@ -226,6 +258,7 @@ export default {
// //
closeDialog() { closeDialog() {
this.infoShow = false; this.infoShow = false;
this.detailsOpen = false;
this.onLoad(this.page, this.query); this.onLoad(this.page, this.query);
}, },
rowSave(row, done, loading) { rowSave(row, done, loading) {
@ -326,9 +359,63 @@ export default {
arr6: '下次注意', arr6: '下次注意',
arr7: '正常损耗', arr7: '正常损耗',
arr8: '55', 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', arr10: '4',
}, },
{
arr1: '张三',
arr2: '热表分厂',
arr3: '2026-01-09',
arr4: '问题描述1',
arr5: '正常操作',
arr6: '下次注意',
arr7: '正常损耗',
arr8: '55',
arr10: '5',
},
]; ];
// this.loading = true; // this.loading = true;
// getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => { // getList(page.currentPage, page.pageSize, Object.assign(params, this.query)).then(res => {

Loading…
Cancel
Save