This commit is contained in:
zty 2024-10-22 16:34:24 +08:00
commit 345bdc3b96
9 changed files with 237 additions and 27 deletions

48
src/api/model/cm.js Normal file
View File

@ -0,0 +1,48 @@
import config from "@/config"
import http from "@/utils/request"
/*区域接口*/
export default {
labelmat: {
list: {
name: "获取列表",
req: async function(data){
return await http.get(
`${config.API_URL}/cm/labelmat/`,
data
);
}
},
item: {
name: "获取详情",
req: async function(id){
return await http.get(
`${config.API_URL}/cm/labelmat/${id}/`
);
}
},
fromMb: {
name: "从仓库明细获取无聊标签",
req: async function(data){
return await http.post(
`${config.API_URL}/cm/labelmat/get_from_mb/`,
data);
}
},
fromMioitem: {
name: "从出入库明细获取无聊标签",
req: async function(data){
return await http.post(
`${config.API_URL}/cm/labelmat/get_from_mioitem/`,
data);
}
},
fromWm: {
name: "从车间库存明细获取无聊标签",
req: async function(data){
return await http.post(
`${config.API_URL}/cm/labelmat/get_from_wm/`,
data);
}
},
},
}

View File

@ -3,15 +3,16 @@
<el-header> <el-header>
<div class="left-panel"> <div class="left-panel">
<el-button type="primary" icon="el-icon-plus" @click="add" v-auth="'ftest.create'">新增</el-button> <el-button type="primary" icon="el-icon-plus" @click="add" v-auth="'ftest.create'">新增</el-button>
<el-button type="primary" icon="el-icon-download" @click="exportExcel">导出</el-button> <el-button type="primary" icon="el-icon-download" v-loading="exportLoading" @click="exportExcel">导出</el-button>
<el-button type="primary" @click="handlePrint">打印</el-button>
</div> </div>
<div class="right-panel"> <!-- <div class="right-panel">
<el-date-picker v-model="query.date" type="date" value-format="YYYY-MM-DD" /> <el-date-picker v-model="query.date" type="date" value-format="YYYY-MM-DD" />
<el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button> <el-button type="primary" icon="el-icon-search" @click="handleQuery">查询</el-button>
</div> </div> -->
</el-header> </el-header>
<el-main class="nopadding"> <el-main class="nopadding">
<scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="query"> <scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="params">
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="日期" prop="test_date" show-overflow-tooltip> <el-table-column label="日期" prop="test_date" show-overflow-tooltip>
</el-table-column> </el-table-column>
@ -62,7 +63,7 @@
</template> </template>
</el-table-column> </el-table-column>
</scTable> </scTable>
<scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="query" id="myTable" style="display: none;"> <scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="params" id="myTable" style="display: none;">
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="日期" prop="test_date" show-overflow-tooltip> <el-table-column label="日期" prop="test_date" show-overflow-tooltip>
</el-table-column> </el-table-column>
@ -114,6 +115,60 @@
</el-main> </el-main>
<check-dialog v-if="dialog.check" ref="checkDialog" @success="handleCheckSuccess" @closed="dialog.check = false"> <check-dialog v-if="dialog.check" ref="checkDialog" @success="handleCheckSuccess" @closed="dialog.check = false">
</check-dialog> </check-dialog>
<el-dialog v-model="printVisible" width="850px" title="首件检验">
<div id="exportDiv">
<scTable :apiObj="apiObj"
row-key="id" stripe
:params="params"
hidePagination
hideDo
style="width: 800px;"
>
<el-table-column label="日期" prop="test_date" >
</el-table-column>
<el-table-column label="工序" prop="number">
</el-table-column>
<el-table-column label="检测内容">
<template #default="scope">
<div v-for="item in scope.row.ftestitems" :key="item.id">
{{ item.testitem_description }}
</div>
</template>
</el-table-column>
<el-table-column label="检测标准">
<template #default="scope">
<div v-for="item in scope.row.ftestitems" :key="item.id">
{{ item.testitem_name }}
</div>
</template>
</el-table-column>
<el-table-column label="操作人测量值" prop="production_date">
<template #default="scope">
<div v-for="item in scope.row.ftestitems" :key="item.id">
{{ item.test_val }}
</div>
</template>
</el-table-column>
<el-table-column label="操作人" prop="test_user_name">
</el-table-column>
<el-table-column label="专检人测量值" prop="buy_date">
<template #default="scope">
<div v-for="item in scope.row.ftestitems" :key="item.id">
{{ item.check_val }}
</div>
</template>
</el-table-column>
<el-table-column label="专检人" prop="check_user_name">
</el-table-column>
<el-table-column label="结论">
<template #default="scope">
<span v-if="scope.row.is_ok" type="success">合格</span>
<span v-else type="warning">不合格</span>
</template>
</el-table-column>
</scTable>
</div>
</el-dialog>
</el-container> </el-container>
</template> </template>
<script> <script>
@ -129,14 +184,12 @@ export default {
check: false check: false
}, },
excelName: '首件确认', excelName: '首件确认',
// apiObj: this.$API.qm.list,
apiObj: this.$API.qm.ftest.list, apiObj: this.$API.qm.ftest.list,
query: { params: {
page: 1,
page_size: 20,
type: 'first' type: 'first'
}, },
selection: [] selection: [],
printVisible:false
}; };
}, },
methods: { methods: {
@ -182,9 +235,15 @@ export default {
}, },
exportExcel() { exportExcel() {
this.exportLoading = true; this.exportLoading = true;
this.$XLSX('#myTable', this.excelName) this.$XLSX('#myTable', "首件检验表")
this.exportLoading = false; this.exportLoading = false;
}, },
handlePrint(){
this.printVisible = true;
setTimeout(() => {
this.$PRINT("#exportDiv");
}, 1000);
},
}, },
}; };
</script> </script>

View File

@ -2,6 +2,8 @@
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"> <div class="left-panel">
<el-button type="primary" icon="el-icon-download" v-loading="exportLoading" @click="exportExcel">导出</el-button>
<el-button type="primary" @click="handlePrint">打印</el-button>
</div> </div>
<div class="right-panel"> <div class="right-panel">
<el-date-picker v-model="query.test_date" type="date" value-format="YYYY-MM-DD" /> <el-date-picker v-model="query.test_date" type="date" value-format="YYYY-MM-DD" />
@ -9,7 +11,7 @@
</div> </div>
</el-header> </el-header>
<el-main class="nopadding"> <el-main class="nopadding">
<scTable ref="table" :apiObj="apiObj" row-key="id" stripe :params="params" :query="query"> <scTable ref="table" :apiObj="apiObj" row-key="id" id="myTable" stripe :params="params" :query="query">
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
<el-table-column label="产品名称" prop="material_name" show-overflow-tooltip> <el-table-column label="产品名称" prop="material_name" show-overflow-tooltip>
</el-table-column> </el-table-column>
@ -44,9 +46,42 @@
</el-table-column> </el-table-column>
</scTable> </scTable>
</el-main> </el-main>
<el-dialog v-model="printVisible" width="850px" title="入司检验">
<div id="exportDiv">
<scTable :apiObj="apiObj"
row-key="id" stripe
:params="params"
hidePagination
hideDo
style="width: 800px;"
:query="query">
<el-table-column label="产品名称" prop="material_name">
</el-table-column>
<el-table-column label="批次号" prop="batch">
</el-table-column>
<el-table-column label="总数" prop="count">
</el-table-column>
<el-table-column label="抽样数量" prop="count_sampling" width="80">
</el-table-column>
<el-table-column label="检验结论" width="80">
<template #default="scope">
<span v-if="scope.row.is_testok">合格</span>
<span v-else>不合格</span>
</template>
</el-table-column>
<el-table-column label="检验员" prop="test_user_name" width="90">
</el-table-column>
<el-table-column label="检验日期" prop="test_date" width="100">
</el-table-column>
</scTable>
</div>
<!-- <el-button type="primary" @click="handleExport">导出</el-button>
<el-button type="primary" @click="handlePrint">打印</el-button> -->
</el-dialog>
</el-container> </el-container>
</template> </template>
<script> <script>
import PdfLoader from '@/utils/html2pdf';
export default { export default {
name: "rparty", name: "rparty",
data() { data() {
@ -61,6 +96,7 @@ export default {
10: '', 10: '',
20: '', 20: '',
}, },
printVisible:false,
}; };
}, },
methods: { methods: {
@ -89,6 +125,28 @@ export default {
resetQuery() { resetQuery() {
this.query = {}; this.query = {};
}, },
exportExcel() {
this.exportLoading = true;
this.$XLSX('#myTable', "入司检验表")
this.exportLoading = false;
},
handlePrint(){
this.printVisible = true;
setTimeout(() => {
this.$PRINT("#exportDiv");
}, 1000);
},
// clickExport(){
// this.printVisible = true;
// },
// handleExport() {
// let exportDiv = document.getElementById('exportDiv') // id
// this.pdfDownLoader = new PdfLoader(exportDiv, '', 'exportDiv') // fileName -->, question-table -->class
// this.pdfDownLoader.outPutPdfFn('test');
// },
// handlePrint(){
// this.$PRINT("#exportDiv");
// },
}, },
}; };
</script> </script>

View File

@ -1,7 +1,15 @@
<template> <template>
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"></div> <div class="left-panel">
<el-button
type="primary"
icon="el-icon-download"
@click="tableExport"
v-loading="exportLoading"
>导出</el-button
>
</div>
<div class="right-panel"> <div class="right-panel">
<el-date-picker <el-date-picker
v-model="query.test_date" v-model="query.test_date"
@ -15,13 +23,6 @@
@click="handleQuery" @click="handleQuery"
>查询</el-button >查询</el-button
> >
<el-button
type="primary"
icon="el-icon-download"
@click="tableExport"
v-loading="exportLoading"
>导出</el-button
>
</div> </div>
</el-header> </el-header>
<el-main class="nopadding"> <el-main class="nopadding">

View File

@ -1,7 +1,9 @@
<template> <template>
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"></div> <div class="left-panel">
<el-button type="primary" icon="el-icon-download" v-loading="exportLoading" @click="exportExcel">导出</el-button>
</div>
<div class="right-panel"> <div class="right-panel">
<el-select <el-select
v-model="query.mgroup" v-model="query.mgroup"
@ -46,6 +48,7 @@
:apiObj="apiObj" :apiObj="apiObj"
row-key="id" row-key="id"
stripe stripe
id="myTable"
:query="query" :query="query"
> >
<el-table-column type="index" width="50" /> <el-table-column type="index" width="50" />
@ -155,6 +158,7 @@ export default {
20: "", 20: "",
}, },
mgroupOption: [], mgroupOption: [],
exportLoading:false,
materialsVisible: false, materialsVisible: false,
}; };
}, },
@ -181,6 +185,11 @@ export default {
resetQuery() { resetQuery() {
this.query = {}; this.query = {};
}, },
exportExcel() {
this.exportLoading = true;
this.$XLSX('#myTable',"过程自检记录表")
this.exportLoading = false;
},
}, },
}; };
</script> </script>

View File

@ -1,7 +1,9 @@
<template> <template>
<el-container> <el-container>
<el-header> <el-header>
<div class="left-panel"></div> <div class="left-panel">
<el-button type="primary" v-loading="exportLoading" icon="el-icon-download" @click="exportExcel">导出</el-button>
</div>
<div class="right-panel"> <div class="right-panel">
<el-select <el-select
v-model="query.mgroup" v-model="query.mgroup"
@ -47,6 +49,7 @@
row-key="id" row-key="id"
:params = "params" :params = "params"
stripe stripe
id="myTable"
:query="query" :query="query"
> >
<!-- <el-table-column type="index" width="50" /> --> <!-- <el-table-column type="index" width="50" /> -->
@ -135,6 +138,7 @@ export default {
20: "", 20: "",
}, },
mgroupOption: [], mgroupOption: [],
exportLoading:false,
materialsVisible: false, materialsVisible: false,
}; };
}, },
@ -161,6 +165,11 @@ export default {
resetQuery() { resetQuery() {
this.query = {}; this.query = {};
}, },
exportExcel() {
this.exportLoading = true;
this.$XLSX('#myTable',"过程抽检表")
this.exportLoading = false;
},
}, },
}; };
</script> </script>

View File

@ -6,7 +6,9 @@
type="primary" type="primary"
icon="el-icon-plus" icon="el-icon-plus"
@click="add" @click="add"
></el-button> >新增</el-button>
<el-button type="primary" icon="el-icon-download" v-loading="exportLoading" @click="exportExcel">导出</el-button>
<!-- <el-button type="primary" @click="handlePrint">打印</el-button> -->
</div> </div>
<div class="right-panel"> <div class="right-panel">
<el-date-picker <el-date-picker
@ -54,6 +56,23 @@
</template> </template>
</el-table-column> </el-table-column>
</scTable> </scTable>
<scTable
ref="table"
:apiObj="apiObj"
row-key="id"
stripe
:params="query"
id="myTable"
style="display: none;"
>
<el-table-column label="日期" prop="test_date"></el-table-column>
<el-table-column label="批次号" prop="batch"> </el-table-column>
<el-table-column label="物料名" prop="material_name"> </el-table-column>
<el-table-column label="总数" prop="count"> </el-table-column>
<el-table-column label="抽检数" prop="count_sampling"> </el-table-column>
<el-table-column label="合格数" prop="count_ok"> </el-table-column>
<el-table-column label="不合格数" prop="count_notok"> </el-table-column>
</scTable>
</el-main> </el-main>
<save-dialog <save-dialog
v-if="dialog.save" v-if="dialog.save"
@ -97,6 +116,7 @@ export default {
ftestWork:'', ftestWork:'',
materialCate:'', materialCate:'',
selection: [], selection: [],
exportLoading:false,
}; };
}, },
methods: { methods: {
@ -159,6 +179,11 @@ export default {
handleCheckSuccess() { handleCheckSuccess() {
this.dialog.check = false; this.dialog.check = false;
}, },
exportExcel() {
this.exportLoading = true;
this.$XLSX('#myTable', "成品检验表")
this.exportLoading = false;
},
}, },
}; };
</script> </script>

View File

@ -10,7 +10,7 @@
:value="item.id" :value="item.id"
/> />
</el-select> </el-select>
<el-button type="primary" icon="el-icon-plus" @click="add" style="margin-left:4px"></el-button> <el-button type="primary" icon="el-icon-plus" @click="add" style="margin-left:4px" v-auth="'remployee.create'"></el-button>
<!-- <el-button type="danger" plain icon="el-icon-delete" :disabled="selection.length==0" @click="batch_del"></el-button> <!-- <el-button type="danger" plain icon="el-icon-delete" :disabled="selection.length==0" @click="batch_del"></el-button>
<el-button type="primary" plain :disabled="selection.length!=1" @click="permission">权限设置</el-button> --> <el-button type="primary" plain :disabled="selection.length!=1" @click="permission">权限设置</el-button> -->
</div> </div>
@ -55,6 +55,7 @@
link link
type="warning" type="warning"
size="small" size="small"
v-auth="'remployee.update'"
@click="table_edit(scope.row, scope.$index)" @click="table_edit(scope.row, scope.$index)"
>编辑</el-button >编辑</el-button
> >
@ -63,7 +64,7 @@
@confirm="table_del(scope.row, scope.$index)" @confirm="table_del(scope.row, scope.$index)"
> >
<template #reference> <template #reference>
<el-button link type="danger" size="small">删除</el-button> <el-button link type="danger" size="small" v-auth="'remployee.delete'">删除</el-button>
</template> </template>
</el-popconfirm> </el-popconfirm>
</template> </template>

View File

@ -117,7 +117,7 @@
link link
size="small" size="small"
@click="postRoleDel(scope.row)" @click="postRoleDel(scope.row)"
v-auth="'post.delete'" v-auth="'post.update'"
>删除 >删除
</el-button> </el-button>
</template> </template>