From 6e4293b29e6bd439ac36945ce8d0e012126103eb Mon Sep 17 00:00:00 2001
From: zouyu <2723363702@qq.com>
Date: 星期一, 06 十一月 2023 17:23:13 +0800
Subject: [PATCH] new file: node_modules.7z modified: src/api/quality/rawMaterial.js modified: src/api/quality/unqualifiedprocess.js modified: src/views/common/rawMaterial-part.vue modified: src/views/common/ztt-table.vue modified: src/views/quality/processconfiguration/index.vue deleted: src/views/quality/rawMaterial/ExportMaterial.vue modified: src/views/quality/rawMaterial/index.vue modified: src/views/quality/rawMaterial/rawMaterial-form.vue
---
src/views/quality/rawMaterial/rawMaterial-form.vue | 88 ++++++--------
src/api/quality/unqualifiedprocess.js | 9 +
/dev/null | 93 ---------------
node_modules.7z | 0
src/views/quality/processconfiguration/index.vue | 39 ++++++
src/views/common/rawMaterial-part.vue | 2
src/api/quality/rawMaterial.js | 9 +
src/views/quality/rawMaterial/index.vue | 87 +++++++-------
src/views/common/ztt-table.vue | 1
9 files changed, 134 insertions(+), 194 deletions(-)
diff --git a/node_modules.7z b/node_modules.7z
new file mode 100644
index 0000000..621a7b5
--- /dev/null
+++ b/node_modules.7z
Binary files differ
diff --git a/src/api/quality/rawMaterial.js b/src/api/quality/rawMaterial.js
index a19ccb2..74c5001 100644
--- a/src/api/quality/rawMaterial.js
+++ b/src/api/quality/rawMaterial.js
@@ -77,3 +77,12 @@
})
}
+export function exportRawMaterial(data) {
+ return request({
+ url: '/mes/rawInspect/export',
+ method: 'get',
+ responseType: 'blob',
+ params: data
+ })
+}
+
diff --git a/src/api/quality/unqualifiedprocess.js b/src/api/quality/unqualifiedprocess.js
index 729751c..d40ab95 100644
--- a/src/api/quality/unqualifiedprocess.js
+++ b/src/api/quality/unqualifiedprocess.js
@@ -8,6 +8,15 @@
})
}
+export function exportData(query) {
+ return request({
+ url: '/mes/qualityInspectUnaccepted/export',
+ method: 'get',
+ responseType: 'blob',
+ params: query
+ })
+}
+
export function pullInsUnapi(query) {
return request({
url: '/mes/qualityInspectUnaccepted/pullInsUn',
diff --git a/src/views/common/rawMaterial-part.vue b/src/views/common/rawMaterial-part.vue
index 9a29d28..16ba844 100644
--- a/src/views/common/rawMaterial-part.vue
+++ b/src/views/common/rawMaterial-part.vue
@@ -210,9 +210,7 @@
this.$parent.costPlannedAmountChange(this.currentRow)
},
handleCurrentChange(row) {
- console.log(row);
this.currentRow = row
- console.log(this.currentRow);
},
handleSelectionChange(val) {
// 澶氳閫変腑
diff --git a/src/views/common/ztt-table.vue b/src/views/common/ztt-table.vue
index 5750421..6367bee 100644
--- a/src/views/common/ztt-table.vue
+++ b/src/views/common/ztt-table.vue
@@ -819,6 +819,7 @@
this.isCleanInfo = true
}
}
+ this.$emit("queryParam",this.queryParam)
},
deep: true
},
diff --git a/src/views/quality/processconfiguration/index.vue b/src/views/quality/processconfiguration/index.vue
index 2f21df8..b4aaf27 100644
--- a/src/views/quality/processconfiguration/index.vue
+++ b/src/views/quality/processconfiguration/index.vue
@@ -9,6 +9,7 @@
:prelang="prelang"
:options="options"
:ajaxFun="ajaxFun"
+ @queryParam="getQueryParam($event)"
ref="processconfiguration"
>
<template #toolbar></template>
@@ -63,7 +64,11 @@
</template>
<script>
-import { UnqualifiedList,pullInsUnapi,AuditSuggestion
+import {
+ UnqualifiedList,
+ pullInsUnapi,
+ AuditSuggestion,
+ exportData
} from '@/api/quality/unqualifiedprocess'
import TableForm from './table-form'
import { mapGetters } from 'vuex'
@@ -72,6 +77,7 @@
export default {
data() {
return {
+ queryParam: {},
checkList: "",
// WayIdea:'',
UserId:{},
@@ -283,7 +289,7 @@
{
text: '瀵煎嚭',
type: 'primary',
- // fun: this.addOrUpdateHandle
+ fun: this.handleExport
},
],
operator: [
@@ -330,12 +336,39 @@
// this.getType()
},
methods: {
+ getQueryParam(data){
+ this.queryParam = data
+ },
+ handleExport(){
+ exportData(this.queryParam).then(res=>{
+ console.log(res)
+ this.downloadFun(res)
+ }).catch(error=>{
+ console.log(error);
+ })
+ },
+ downloadFun(result){
+ if(result == null || result == undefined){
+ return;
+ }
+ var nameList = result.headers['content-disposition'];
+ nameList = decodeURI(nameList);
+ var fileName = nameList.split('=')[1];
+ const blob = new Blob([result.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
+ const downloadElement = document.createElement('a') // 鏂板缓涓�涓狣OM鑺傜偣
+ const href = window.URL.createObjectURL(blob) // 鍒涘缓涓嬭浇鐨勯摼鎺�
+ downloadElement.href = href
+ downloadElement.download = fileName // 涓嬭浇鍚庢枃浠跺悕
+ document.body.appendChild(downloadElement) // 灏嗘柊澧炵殑鑺傜偣鎸傝浇鍒伴〉闈笂
+ downloadElement.click() // 鐐瑰嚮涓嬭浇
+ document.body.removeChild(downloadElement) // 涓嬭浇瀹屾垚绉婚櫎鍏冪礌
+ window.URL.revokeObjectURL(href)
+ },
//瀹℃牳缁撴灉
AuditResult(row){
this.UserId = row.id
this.type = row.type
this.dialogVisible = true;
-
},
WaySure(){
AuditSuggestion({id:this.UserId,way:this.checkList}).then(
diff --git a/src/views/quality/rawMaterial/ExportMaterial.vue b/src/views/quality/rawMaterial/ExportMaterial.vue
deleted file mode 100644
index 131802e..0000000
--- a/src/views/quality/rawMaterial/ExportMaterial.vue
+++ /dev/null
@@ -1,93 +0,0 @@
-<template>
- <div style="width:400px">
- <el-button type="primary" @click="handleExcel">涓嬭浇 excel</el-button>
- <el-button type="success" @click="handleExcel1">涓嬭浇 澶氱骇琛ㄥごexcel</el-button>
- </div>
-
- </template>
-
- <script>
- export default {
- name: 'HelloWorld',
- data(){
- return {}
- },
- methods: {
- handleExcel() {
- let opt = {
- title: '鏂囨。鏍囬',
- column: [{
- label: '鏍囬',
- prop: 'title'
- }],
- data: [{
- title: "娴嬭瘯鏁版嵁1"
- }, {
- title: "娴嬭瘯鏁版嵁2"
- }]
- }
- console.log(this.$Export);
- this.$Export.excel({
- title: opt.title ,
- columns: opt.column,
- data: opt.data
- });
- },
- handleExcel1() {
- let opt = {
- title: '鏂囨。鏍囬',
- column: [{
- label:'澶氱骇琛ㄥご',
- prop:'header',
- children:[
- {
- label: '鏍囬1',
- prop: 'title1'
- },{
- label: '鏍囬2',
- prop: 'title2'
- }
- ]
- }],
- data: [{
- title1: "娴嬭瘯鏁版嵁1",
- title2: "娴嬭瘯鏁版嵁2"
- }, {
- title1: "娴嬭瘯鏁版嵁2",
- title2: "娴嬭瘯鏁版嵁2"
- }]
- }
- this.$Export.excel({
- title: opt.title,
- columns: opt.column,
- data: opt.data
- });
- }
- },
-
- props: {
- msg: String
-
-
- }
- }
- </script>
-
- <!-- Add "scoped" attribute to limit CSS to this component only -->
- <style scoped>
- h3 {
- margin: 40px 0 0;
- }
- ul {
- list-style-type: none;
- padding: 0;
- }
- li {
- display: inline-block;
- margin: 0 10px;
- }
- a {
- color: #42b983;
- }
- </style>
-
\ No newline at end of file
diff --git a/src/views/quality/rawMaterial/index.vue b/src/views/quality/rawMaterial/index.vue
index 3e33e70..297bd4e 100644
--- a/src/views/quality/rawMaterial/index.vue
+++ b/src/views/quality/rawMaterial/index.vue
@@ -20,13 +20,15 @@
<ttable
:table="table"
:resultData="resultData"
- @change ="costPlannedAmountChange"
@handleSelectionChange="handleSelectionChange"
:prelang="prelang"
:options="options"
:ajaxFun="ajaxFun"
+ @queryParam="getQueryParam($event)"
ref="rawMaterialTable">
- <template #toolbar></template>
+ <template #toolbar>
+ <el-button @click="exportRawMaterial" type="primary" >瀵煎嚭</el-button>
+ </template>
</ttable>
</basic-container>
<!-- 寮圭獥, 鏂板 / 淇敼 -->
@@ -38,15 +40,15 @@
</div>
</template>
<script>
-import ExportMaterial from './ExportMaterial.vue'
import ttable from '@/views/common/ztt-table.vue'
-import { getRawInspectList,delObj } from '@/api/quality/rawMaterial'
+import { getRawInspectList,delObj,exportRawMaterial } from '@/api/quality/rawMaterial'
import RawMaterialForm from './rawMaterial-form'
import * as fecha from 'element-ui/lib/utils/date'
import { mapGetters } from 'vuex'
export default {
data() {
return {
+ queryParam: {},
resultData:[],
addOrUpdateVisible: false,
type: [1],
@@ -64,14 +66,13 @@
isRefresh: true, // 鏄惁鏄剧ず鍒锋柊鎸夐挳
isShowHide: true, // 鏄惁鏄剧ず鏄惧奖鎸夐挳H
isSearch: true, // 楂樼骇鏌ヨ鎸夐挳
- defaultOrderBy: { column: 'formTime', direction: 'desc' },
+ defaultOrderBy: { column: 'createTime', direction: 'desc' },
},
table: {
total: 0,
currentPage: 1,
pageSize: 20,
data: [],
- isExport:true,
// 鏍囬
column: [
{
@@ -139,6 +140,7 @@
prop: 'createTime',
label: '鎶ユ鏃ユ湡',
isTrue: true,
+ sort: true,
isSearch: true,
searchInfoType: 'text',
formatter: this.formatDateTime,
@@ -190,13 +192,7 @@
text: '鏂板',
type: 'primary',
fun: this.addOrUpdateHandle
- },
- {
- text: '瀵煎嚭',
- type: 'primary',
- fun: this.handleExcel
- }
- ],
+ }],
operator: [{
text: '浣滃簾',
type: 'text',
@@ -214,10 +210,17 @@
StateList: [{label:'鍏ㄩ儴',value:''},{label:'宸插悎鏍�',value:'1'},{label:'涓嶅悎鏍�',value:'0'}],
}
},
+ // props:{
+ // queryParam:{
+ // type: Object,
+ // default: ()=>{
+ // return {}
+ // }
+ // }
+ // },
components: {
ttable,
RawMaterialForm,
- ExportMaterial,
},
created() {
@@ -226,38 +229,34 @@
...mapGetters(['permissions'])
},
methods:{
- async costPlannedAmountChange(value){
- this.resultData= value
+ getQueryParam(data){
+ this.queryParam = data
},
-
- handleExcel() {
- console.log(this.resultData);
- console.log(this.table.column);
- // let arr = this.table.column.map(el = el.isTrue == true)
- // console.log(arr);
- let arr = this.table.column.filter(item => item.isTrue == true).map(item => {
- return{
- prop:item.prop,
- label:item.label
- }
+ exportRawMaterial(){
+ exportRawMaterial(this.queryParam).then(res=>{
+ console.log(res)
+ this.downloadFun(res)
+ }).catch(error=>{
+ console.log(error);
})
- let opt = {
- title: '鏂囨。鏍囬',
- column: [{
- label:'',
- prop:'header',
- children:arr
- }],
- data: this.resultData
- }
- this.$Export.excel({
- title: opt.title,
- columns: opt.column,
- data: opt.data
- });
- // console.log(this.table);
-
- },
+ },
+ downloadFun(result){
+ if(result == null || result == undefined){
+ return;
+ }
+ var nameList = result.headers['content-disposition'];
+ nameList = decodeURI(nameList);
+ var fileName = nameList.split('=')[1];
+ const blob = new Blob([result.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
+ const downloadElement = document.createElement('a') // 鏂板缓涓�涓狣OM鑺傜偣
+ const href = window.URL.createObjectURL(blob) // 鍒涘缓涓嬭浇鐨勯摼鎺�
+ downloadElement.href = href
+ downloadElement.download = fileName // 涓嬭浇鍚庢枃浠跺悕
+ document.body.appendChild(downloadElement) // 灏嗘柊澧炵殑鑺傜偣鎸傝浇鍒伴〉闈笂
+ downloadElement.click() // 鐐瑰嚮涓嬭浇
+ document.body.removeChild(downloadElement) // 涓嬭浇瀹屾垚绉婚櫎鍏冪礌
+ window.URL.revokeObjectURL(href)
+ },
// 鍒犻櫎
deleteHandle(row) {
this.$confirm('鏄惁纭鍒犻櫎璇ユ暟鎹細' + row.code , '鎻愮ず', {
diff --git a/src/views/quality/rawMaterial/rawMaterial-form.vue b/src/views/quality/rawMaterial/rawMaterial-form.vue
index b5923d0..0bd79dc 100644
--- a/src/views/quality/rawMaterial/rawMaterial-form.vue
+++ b/src/views/quality/rawMaterial/rawMaterial-form.vue
@@ -75,23 +75,24 @@
</el-form-item>
</el-col>
<el-col :span="6">
+ <el-form-item prop="projectName" label="椤圭洰鍚嶇О">
+ <el-tooltip :disabled="dataForm.projectName==null" :content="dataForm.projectName">
+ <el-input v-model="dataForm.projectName" disabled ></el-input>
+ </el-tooltip>
+ </el-form-item>
+ </el-col>
+ </el-row>
+ <el-row>
+ <el-col :span="6">
<el-form-item label="鎶ユ鏃ユ湡" prop="createTime" v-if="dataForm.id!=null">
<el-input v-model="dataForm.createTime" disabled />
</el-form-item>
- </el-col>
- </el-row>
- <el-row>
+ </el-col>
<el-col :span="6">
<el-form-item label="鎶ユ浜�" prop="createUser" v-if="dataForm.id!=null">
<el-input v-model="dataForm.createUser" disabled />
</el-form-item>
</el-col>
- <el-col :span="6">
- <el-form-item prop="projectName" label="椤圭洰鍚嶇О">
- <el-input v-model="dataForm.projectName" disabled >
- </el-input>
- </el-form-item>
- </el-col>
</el-row>
</el-form>
</div>
@@ -120,7 +121,7 @@
filterable allow-create placeholder="璇疯緭鍏ユ垨閫夋嫨椤圭洰鍚嶇О" style="width:100%" @change="changeName(scope.$index,scope.row)">
<el-option v-for="(item,index) in projectList" :key="index" :label="item.name" :value="item.name"/>
</el-select>
- <el-input v-else :disabled="dataForm.id != null" class="inline-input" v-model="list.name"
+ <el-input v-else :disabled="dataForm.id != null" class="inline-input" v-model="scope.row.name"
placeholder="璇疯緭鍏ラ」鐩悕绉�"></el-input>
</template>
</el-table-column>
@@ -140,18 +141,19 @@
<el-table-column prop="testValue" label="妫�娴嬪��" min-width="260" v-for="(item, index) in empiricalValueAdd"
:key="index">
<template slot-scope="scope">
- <el-tooltip :disabled="scope.row.equipmentId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�"
+ <el-tooltip :disabled="scope.row.deviceId != null" class="item" effect="dark" content="璇峰厛閫夋嫨璁惧锛�"
placement="top-start">
<!-- <el-input :disabled="scope.row.equipmentId == null || (dataForm.id!=null&&resultVal!=null)" v-model="scope.row.testValueList[index]"
@blur="updateTestValue(scope.row,index)" placeholder="璇疯緭鍏ユ娴嬪��"></el-input> -->
<el-autocomplete
- :disabled="scope.row.equipmentId == null || (dataForm.id!=null&&resultVal!=null)"
+ style="width:100%"
+ :disabled="scope.row.deviceId == null || (dataForm.id!=null&&resultVal!=null)"
class="inline-input"
v-model="scope.row.testValueList[index]"
:fetch-suggestions="querySearch"
- placeholder="璇疯緭鍏ュ唴瀹�"
+ placeholder="璇疯緭鍏ユ娴嬪��"
@select="handleSelect"
></el-autocomplete>
@@ -162,9 +164,9 @@
<el-table-column prop="deviceName" label="璇曢獙璁惧" min-width="260">
<template slot-scope="scope">
<el-select :disabled="resultVal!=null && dataForm.id!=null" style="width:100%"
- v-model="scope.row.equipmentId" filterable @change="updateDevice(scope.row,scope.$index)">
+ v-model="scope.row.deviceId" filterable @change="updateDevice(scope.row,scope.$index)">
<el-option v-for="(item,index) in deviceList"
- :key="index" :value="item.id" :label="item.number +'-'+ item.name"></el-option>
+ :key="index" :value="item.id" :label="item.code +'-'+ item.name"></el-option>
</el-select>
</template>
</el-table-column>
@@ -223,17 +225,12 @@
<span>涓嶅悎鏍兼暟閲�:</span>
<el-input type="number" v-model="unqualifiedNum" placeholder="璇疯緭鍏ヤ笉鍚堟牸鏁伴噺"/>
</el-col>
- <el-col>
- <span>瀹炴鏁伴噺:</span>
- <el-input type="number" placeholder="璇疯緭鍏ュ疄妫�鏁伴噺" v-model="fiedNum"/>
- </el-col>
</el-row>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false">鍙� 娑�</el-button>
<el-button type="primary" @click="submitSave()">纭� 瀹�</el-button>
</span>
</el-dialog>
- <!-- <rawMaterialPartDialog :currentRow ="currentRow" @costPlannedAmountChange="costPlannedAmountChange"/> -->
</div>
</template>
@@ -246,7 +243,6 @@
updateRawInspectsById,
updateDeviceById, } from '@/api/quality/rawMaterial'
import rawMaterialPartDialog from '@/views/common/rawMaterial-part'
-import { log } from 'util'
export default {
// props:['currentRow'],
computed:{},
@@ -255,9 +251,8 @@
},
data(){
return{
- currentRow:[],
- userlist:[],
- fiedNum: null,
+ currentRow:[],
+ userlist:[],
unqualifiedNum: null,
dialogVisible:false,
resultVal: null,
@@ -282,7 +277,7 @@
number: '',
supplier: '',
rawInsProducts: [{
- equipmentId: 0,
+ deviceId: 0,
name: '',
required: '',
testValue: '',
@@ -320,30 +315,16 @@
this.init()
this.getDeviceList()
this.restaurants = this.loadAll();
- // this.costPlannedAmountChange()
},
watch:{
dialogVisible(newVal){
if(newVal){
this.unqualifiedNum = null
- this.fiedNum = null
}
},
},
methods:{
- //椤圭洰
- // xxxx(){
- // console.log(currentRow);
- // },
- // 浜嬩欢澶勭悊鍑芥暟
- // costPlannedAmountChange(value) {
- // console.log("==>");
- // console.log(value.rawInsProducts);
- // this.userlist = value.rawInsProducts
- // this.list = this.userlist
- // console.log(this.list);
- // },
querySearch(queryString, cb) {
var restaurants = this.restaurants;
var results = queryString ? restaurants.filter(this.createFilter(queryString)) : restaurants;
@@ -373,7 +354,6 @@
},
// 纭鍥炶皟
selectPart(param, nodePart, index) {
- console.log("鎴愬姛--",param);
if (typeof param !== 'undefined') {
this.dataForm.code = param.code
this.dataForm.name = param.name
@@ -385,21 +365,20 @@
this.dataForm.message = param.message
this.dataForm.projectName = param.projectName
this.projectList = param.rawInsProducts == null ? [] : param.rawInsProducts
- // param.rawInsProducts.forEach(item=>{
- // this.list.push(item)
- // })
+ param.rawInsProducts.forEach(o=>{
+ this.clickAddLine(o)
+ })
}
},
queryCode(){
this.paramObj = {
code: this.dataForm.code
}
- console.log(this.paramObj);
this.showPart = true
},
updateDevice(row,index){
if(this.dataForm.id != null){
- updateDeviceById({equiomentId:row.equipmentId,rpId:row.rpId}).then(res=>{
+ updateDeviceById({deviceId:row.deviceId,rpId:row.rpId}).then(res=>{
this.list[index].testValue = ''
this.list[index].testState = null
this.list[index].testValueList = []
@@ -436,24 +415,24 @@
let data = {
id: this.dataForm.id,
number: this.unqualifiedNum,
- toLocationNo: this.fiedNum
+ // toLocationNo: this.fiedNum
}
updateRawInspectsById(data).then(res => {
if(res.data.code == 0){
sessionStorage.setItem("raw-resultVal-"+this.dataForm.id,res.data.data)
this.$message.success("涓婃姤鎴愬姛");
this.dialogVisible = false
+ this.checkTestState()
}
});
- this.checkTestState()
},
addTeatValueColumn(){
this.empiricalValueAdd = this.empiricalValueAdd + 1;
},
// 娣诲姞琛�
- clickAddLine() {
+ clickAddLine(row) {
let obj = {
- equipmentId: null,
+ deviceId: null,
name: "",
required: "",
testValue: "",
@@ -461,6 +440,11 @@
testState: null,
testValueList: [],
};
+ if(row!=undefined){
+ obj.name = row.name
+ obj.unit = row.unit
+ obj.required = row.required
+ }
this.list.push(obj);
},
// 鍒犻櫎琛�
@@ -482,7 +466,7 @@
return
}
let obj = {
- equiomentId: row.equipmentId,
+ deviceId: row.deviceId,
rpId: row.rpId,
testValue: row.testValueList.join(",")
}
@@ -508,9 +492,9 @@
this.dataForm.unit = data.runit
this.dataForm.supplier = data.supplier
this.dataForm.number = data.number
+ this.dataForm.projectName = data.projectName
this.dataForm.createTime = data.creatTime
this.dataForm.createUser = data.createUser
- // this.dataForm.judgeState = data.judgeState
let userNameList = []
this.list = []
data.children.forEach(item=>{
@@ -523,7 +507,7 @@
}
}
this.list.push({
- equipmentId: item.equiomentId,
+ deviceId: item.deviceId,
deviceName: item.deviceName,
name: item.rpName,
required: item.required,
--
Gitblit v1.9.3