|
|
@@ -1,8 +1,366 @@
|
|
|
<template>
|
|
|
-</template>
|
|
|
+ <div>
|
|
|
+ <layout>
|
|
|
+ <!-- <layout-header>
|
|
|
+ <div class="gva-table-box" style="margin-left: 20px;width: 97%;">
|
|
|
+ <el-form-item>
|
|
|
+ <el-button type="primary" icon="plus" @click="addonclick" >新增问题分类</el-button>
|
|
|
+ </el-form-item>
|
|
|
+ </div>
|
|
|
+ </layout-header> -->
|
|
|
+
|
|
|
+ <layout>
|
|
|
+
|
|
|
+ <!-- 右侧区域 -->
|
|
|
+ <layout-content >
|
|
|
+ <el-main>
|
|
|
+ <div class="gva-table-box">
|
|
|
+ <!-- 表格数据 -->
|
|
|
+ <el-table ref="multipleTable" style="width: 100%;height: 76vh" tooltip-effect="dark"
|
|
|
+ :row-style="{ height: '30px' }" :header-cell-style="{ padding: '0px' }"
|
|
|
+ :cell-style="{ padding: '0px' }" :header-row-style="{ height: '20px' }"
|
|
|
+ :data="tableData" border row-key="ID"
|
|
|
+ size="small"
|
|
|
+ highlight-current-row="true" @row-dblclick="updateCompanyFunc"
|
|
|
+ @row-click="tableRowClick" :show-overflow-tooltip="true"
|
|
|
+ @selection-change="handleSelectionChange">
|
|
|
+ <el-table-column align="center" label="工单编号" prop="BOM_工单编号" width="100" />
|
|
|
+ <el-table-column align="center" label="物料编码" prop="BOM_物料编码" width="100" />
|
|
|
+ <el-table-column align="center" label="物料分类" prop="物料分类" width="110" />
|
|
|
+ <el-table-column align="center" label="物料名称" prop="BOM_物料名称" width="160" />
|
|
|
+ <el-table-column align="center" label="计划用料" prop="BOM_计划用量" width="100" />
|
|
|
+ <el-table-column align="center" label="计划门幅" prop="BOM_计划门幅" width="100" />
|
|
|
+ <el-table-column align="center" label="定额用料" prop="BOM_标准用量" width="100" />
|
|
|
+ <el-table-column align="center" label="定额门幅" prop="BOM_定额门幅" width="100" />
|
|
|
+ <!-- <el-table-column align="center" label="实际门幅" prop="BOM_实际门幅" width="110" /> -->
|
|
|
+ <el-table-column align="center" label="实际用料" prop="BOM_实际用量" width="100" />
|
|
|
+ <el-table-column align="center" label="库存总量" prop="BOM_库存总量" width="100" />
|
|
|
+ <el-table-column align="center" label="面料结余" prop="BOM_面料结余" width="100" />
|
|
|
+ <el-table-column align="center" label="退还数量" prop="BOM_退还数量" width="100" />
|
|
|
+ <el-table-column align="center" label="投料单位" prop="BOM_投料单位" width="100" />
|
|
|
+ <el-table-column align="center" label="备注" prop="BOM_desc" width="160" />
|
|
|
+ <el-table-column align="center" label="建档人员" prop="Sys_ID" width="160" />
|
|
|
+ <el-table-column align="center" label="建档日期" prop="Sys_rq" width="160" />
|
|
|
|
|
|
-<script>
|
|
|
-</script>
|
|
|
|
|
|
-<style>
|
|
|
-</style>
|
|
|
+ <!-- <el-table-column fixed="right" label="操作" width="200">
|
|
|
+ <template #default="{ row, $index }">
|
|
|
+ <!-<el-button @click="Class_change(row,$index)" type="primary" size="small"
|
|
|
+ style="font-size: 16px;padding: 0px;width: 90px;height: 25px;">
|
|
|
+ 更改状态
|
|
|
+ </el-button> --
|
|
|
+ <el-button @click="record_deleteRow(row,$index)" type="danger" size="small"
|
|
|
+ style="font-size: 16px;padding: 0px;width: 60px;background-color: red;">
|
|
|
+ 删除
|
|
|
+ </el-button>
|
|
|
+ </template>
|
|
|
+ </el-table-column> -->
|
|
|
+ </el-table>
|
|
|
+
|
|
|
+ <!-- 分页 -->
|
|
|
+ <div class="gva-pagination">
|
|
|
+ <el-pagination
|
|
|
+ @size-change="handleSizeChange"
|
|
|
+ @current-change="handleCurrentChange"
|
|
|
+ :current-page="page"
|
|
|
+ :page-sizes="[10, 30, 50, 100]"
|
|
|
+ :page-size="pageSize"
|
|
|
+ layout="total, sizes, prev, pager, next, jumper"
|
|
|
+ :total="total">
|
|
|
+ </el-pagination>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+
|
|
|
+ <el-dialog v-model="add_QuestiondialogFormVisible" :before-close="add_QuestioncloseDialog"
|
|
|
+ style="width: 40%; max-height: 80%; overflow-y: auto; margin-top: 4%;"
|
|
|
+ :title="'新增问题信息'" destroy-on-close>
|
|
|
+
|
|
|
+ <el-form label-width="100px" :model="add_Questionformdata">
|
|
|
+ <el-row :gutter="24" class="form-row">
|
|
|
+ <el-col :span="20">
|
|
|
+ <el-form-item label="问题类型" class="mab" prop="keyOrder" id ='MAC地址' label-width='110'>
|
|
|
+ <el-input v-model="add_Questionformdata.问题类型"/>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ <el-col :span="20">
|
|
|
+ <el-form-item label="归属" class="mab" prop="keyOrder" id ='MAC地址' label-width='110'>
|
|
|
+ <el-radio-group v-model="add_Questionformdata.归属" >
|
|
|
+ <el-radio label="次片" border >次片</el-radio>
|
|
|
+ <el-radio label="返工" border >返工</el-radio>
|
|
|
+ </el-radio-group>
|
|
|
+ </el-form-item>
|
|
|
+ </el-col>
|
|
|
+ </el-row>
|
|
|
+
|
|
|
+
|
|
|
+ </el-form>
|
|
|
+
|
|
|
+ <template #footer>
|
|
|
+ <div class="dialog-footer" style="display: flex; justify-content: flex-end; padding: 10px;">
|
|
|
+ <el-button type="primary" @click="add_QuestioncloseDialog">取消</el-button>
|
|
|
+ <el-button type="primary" @click="add_QuestionenterDialog">确定</el-button>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+
|
|
|
+ </el-dialog>
|
|
|
+
|
|
|
+ </el-main>
|
|
|
+ </layout-content>
|
|
|
+ </layout>
|
|
|
+ </layout>
|
|
|
+
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <script setup>
|
|
|
+ // 全量引入格式化工具 请按需保留
|
|
|
+ import { Layout, LayoutSider, LayoutContent } from '@arco-design/web-vue';
|
|
|
+ import { getProblemCategories,deleteProblemCategory,addProblemCategory,Apibomlistarr } from '@/api/mes/job'
|
|
|
+ import {ref, reactive} from 'vue'
|
|
|
+ import { useUserStore } from '@/pinia/modules/user'
|
|
|
+ import {ElMessage,ElMessageBox} from "element-plus";
|
|
|
+ defineOptions({name: 'Company'})
|
|
|
+ //获取登录用户信息
|
|
|
+ const userStore = useUserStore()
|
|
|
+ const _username = ref('')
|
|
|
+ _username.value = userStore.userInfo.userName + '/' + userStore.userInfo.nickName
|
|
|
+
|
|
|
+ // 分页相关的响应式变量
|
|
|
+ const page = ref(1)
|
|
|
+ const total = ref(0)
|
|
|
+ const pageSize = ref(50)
|
|
|
+ // 分页
|
|
|
+ const handleCurrentChange = (val) => {
|
|
|
+ page.value = val;
|
|
|
+ _gettabledata();
|
|
|
+ };
|
|
|
+
|
|
|
+ // 修改页面容量 点击多少条/页
|
|
|
+ const handleSizeChange = (val) => {
|
|
|
+ pageSize.value = val;
|
|
|
+ _gettabledata();
|
|
|
+ };
|
|
|
+
|
|
|
+ // =========== 获取表格数据 ===========
|
|
|
+ const tableData = ref([])
|
|
|
+ const _gettabledata = async () => {
|
|
|
+ // 调用接口获取数据
|
|
|
+ const res = await Apibomlistarr({page:page.value,limit:pageSize.value})
|
|
|
+ console.log(res)
|
|
|
+ if (res.code === 0) {
|
|
|
+ tableData.value = res.data.list;
|
|
|
+ total.value = res.data.total;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ _gettabledata();
|
|
|
+
|
|
|
+ const add_QuestiondialogFormVisible = ref(false)
|
|
|
+ const add_Questionformdata = reactive({
|
|
|
+ 问题类型: '',
|
|
|
+ 归属: '',
|
|
|
+});
|
|
|
+
|
|
|
+ // 新增
|
|
|
+ const addonclick = () => {
|
|
|
+ add_QuestiondialogFormVisible.value = true;
|
|
|
+ }
|
|
|
+
|
|
|
+ const add_QuestionenterDialog = async () => {
|
|
|
+ //必填
|
|
|
+ if(add_Questionformdata['问题类型'] === ''||add_Questionformdata['归属'] === ''){
|
|
|
+ ElMessage({type: 'warning',message: '请将信息填写完整'})
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ const add_Questionparams = {
|
|
|
+ 问题类型: add_Questionformdata.问题类型,
|
|
|
+ classification: add_Questionformdata.归属,
|
|
|
+ sys_id: userStore.userInfo.nickName,
|
|
|
+ }
|
|
|
+ console.log(add_Questionparams)
|
|
|
+ const res = await addProblemCategory(add_Questionparams)
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('新增成功')
|
|
|
+ add_QuestioncloseDialog()
|
|
|
+ _gettabledata()
|
|
|
+ }
|
|
|
+}
|
|
|
+
|
|
|
+ //新增颜色资料取消
|
|
|
+ const add_QuestioncloseDialog = () => {
|
|
|
+ add_QuestiondialogFormVisible.value = false
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+ // 更改状态
|
|
|
+ const Status_change = async (row, index) => {
|
|
|
+ console.log(row.UniqId,index)
|
|
|
+ const newStatus = row.status === '1' ? '0' : '1';
|
|
|
+ // 调用接口获取数据
|
|
|
+ const res = await updateQuestionDeviceTypes({UniqId:row.UniqId,status:newStatus})
|
|
|
+ if (res.code === 0) {
|
|
|
+ ElMessage.success('更改状态成功')
|
|
|
+ _gettabledata();
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ const record_deleteRow = async (row, index) => {
|
|
|
+ console.log(row.id);
|
|
|
+
|
|
|
+ // 使用 ElMessageBox 提示确认删除
|
|
|
+ ElMessageBox.confirm('确定删除此行数据吗?', '提示', {
|
|
|
+ confirmButtonText: '确定',
|
|
|
+ cancelButtonText: '取消',
|
|
|
+ type: 'warning'
|
|
|
+ }).then(async () => {
|
|
|
+ // 确认删除,检查UNIQID是否为空
|
|
|
+ if (row.id === '' || row.id === null || row.id === undefined) {
|
|
|
+ // 删除当前行数据
|
|
|
+ resbomtableData.value.splice(index, 1);
|
|
|
+ ElMessage({
|
|
|
+ type: 'success',
|
|
|
+ message: '删除成功'
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ // 调用接口删除
|
|
|
+ const Bomdel_del = await deleteProblemCategory({ id:row.id});
|
|
|
+ if (Bomdel_del.code === 0) {
|
|
|
+ ElMessage({
|
|
|
+ type: 'success',
|
|
|
+ message: '删除成功'
|
|
|
+ });
|
|
|
+ } else {
|
|
|
+ ElMessage({
|
|
|
+ type: 'error',
|
|
|
+ message: '删除失败'
|
|
|
+ });
|
|
|
+ }
|
|
|
+ _gettabledata();
|
|
|
+ }
|
|
|
+ }).catch(() => {
|
|
|
+ // 取消删除
|
|
|
+ ElMessage({
|
|
|
+ type: 'info',
|
|
|
+ message: '已取消删除'
|
|
|
+ });
|
|
|
+ });
|
|
|
+}
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+
|
|
|
+ </script>
|
|
|
+
|
|
|
+ <style scoped>
|
|
|
+ .form-container {
|
|
|
+ display: flex;
|
|
|
+ flex-wrap: wrap;
|
|
|
+ }
|
|
|
+
|
|
|
+ .form-column {
|
|
|
+ /*flex: 1;*/
|
|
|
+ margin-right: 15px; /* 调整列之间的间距 */
|
|
|
+ }
|
|
|
+
|
|
|
+ /* 左侧输入框宽度调整 */
|
|
|
+ .form-column .el-form-item .el-input {
|
|
|
+ width: 150px; /* 调整左侧输入框的宽度 */
|
|
|
+ }
|
|
|
+
|
|
|
+ :deep(.hui-plan-usage-lows div) {
|
|
|
+ color: #8c939d !important;
|
|
|
+ }
|
|
|
+ :deep(.lan-plan-usage-lows div) {
|
|
|
+ color: blue !important;
|
|
|
+ font-weight: bold;
|
|
|
+ }
|
|
|
+
|
|
|
+ /* 媒体查询,根据需要调整断点 */
|
|
|
+ @media screen and (max-width: 768px) {
|
|
|
+ .form-column {
|
|
|
+ flex: 1 0 100%; /* 在小屏幕下变成单列布局 */
|
|
|
+ margin-right: 0;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ /*:deep(.el-table td .cell) {*/
|
|
|
+ /* line-height: 30px !important;*/
|
|
|
+ /*}*/
|
|
|
+ .JKWTree-container {
|
|
|
+ display: flex;
|
|
|
+ }
|
|
|
+ .JKWTree-tree {
|
|
|
+ /*width: 300px;*/
|
|
|
+ background-color: #fff;
|
|
|
+ padding: 10px;
|
|
|
+ margin-right: 20px;
|
|
|
+ }
|
|
|
+ .JKWTree-tree h3 {
|
|
|
+ font-size: 15px;
|
|
|
+ font-weight: 700;
|
|
|
+ margin: 10px 0;
|
|
|
+ }
|
|
|
+ .JKWTree-content {
|
|
|
+ flex: 1;
|
|
|
+ }
|
|
|
+ /* 图片上传 */
|
|
|
+ .upload-box {
|
|
|
+ width: 200px;
|
|
|
+ height: 200px;
|
|
|
+ border: 2px dashed #e2e2e2;
|
|
|
+ display: flex;
|
|
|
+ justify-content: center;
|
|
|
+ align-items: center;
|
|
|
+ position: relative;
|
|
|
+ cursor: pointer;
|
|
|
+ }
|
|
|
+ .uploaded-image {
|
|
|
+ width: 100%;
|
|
|
+ height: 100%;
|
|
|
+ object-fit: cover;
|
|
|
+ }
|
|
|
+ .upload-icon {
|
|
|
+ font-size: 40px;
|
|
|
+ color: #c0c4cc;
|
|
|
+ }
|
|
|
+ .file-input {
|
|
|
+ display: none;
|
|
|
+ }
|
|
|
+ .el-table .warning-row {
|
|
|
+ background: oldlace;
|
|
|
+ }
|
|
|
+
|
|
|
+ /* 选中某行时的背景色 */
|
|
|
+ :deep(.el-table__body tr.current-row) > td {
|
|
|
+ background: #ff80ff !important;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+ <style scoped>
|
|
|
+ :deep(.el-table td .cell) {
|
|
|
+ line-height: 20px !important;
|
|
|
+ }
|
|
|
+ :deep(.el-tabs__header){
|
|
|
+ margin-bottom: 0;
|
|
|
+ }
|
|
|
+ .search{
|
|
|
+ margin-left: 0px !important;
|
|
|
+ margin-right: 10px !important;
|
|
|
+ }
|
|
|
+ .bt{
|
|
|
+ margin-left: 2px !important;
|
|
|
+ padding: 3px !important;
|
|
|
+ font-size: 12px;
|
|
|
+ }
|
|
|
+ .el-tabs__header{
|
|
|
+ margin: 0px !important;
|
|
|
+ }
|
|
|
+ .gva-table-box{
|
|
|
+ padding: 0px !important;
|
|
|
+ }
|
|
|
+ .mab{
|
|
|
+ margin-bottom: 5px;
|
|
|
+ }
|
|
|
+ </style>
|
|
|
+
|