Merge remote-tracking branch 'origin/dev' into dev
This commit is contained in:
commit
6d9a977028
10
src/api/mes/print/topic-send-test.js
Normal file
10
src/api/mes/print/topic-send-test.js
Normal file
@ -0,0 +1,10 @@
|
||||
import request from '@/router/axios'
|
||||
import {nlv_print} from "@/api/prefix";
|
||||
|
||||
export function send(query) {
|
||||
return request({
|
||||
url: nlv_print('/topic-send-test/send'),
|
||||
method: 'get',
|
||||
params: query
|
||||
})
|
||||
}
|
||||
@ -317,3 +317,11 @@ export function selectPreNc(query) {
|
||||
params: query
|
||||
})
|
||||
}
|
||||
//图片删除
|
||||
export function deleteAttachment(param) {
|
||||
return request({
|
||||
url: qms('/inspec-attachment/minioDelete'),
|
||||
method: 'get',
|
||||
params: param
|
||||
})
|
||||
}
|
||||
|
||||
@ -76,5 +76,14 @@ export default [
|
||||
meta: {
|
||||
keepAlive: true
|
||||
}
|
||||
}, {
|
||||
path: '/test/topic-send-msg',
|
||||
component: () =>
|
||||
import(/* webpackChunkName: "page" */ '@/views/mes/print/topic-send-test'),
|
||||
name: 'TOPIC发送测试',
|
||||
meta: {
|
||||
keepAlive: true,
|
||||
isAuth: false,
|
||||
}
|
||||
},
|
||||
]
|
||||
|
||||
@ -3,7 +3,7 @@
|
||||
<!-- 功能开窗 -->
|
||||
|
||||
<!-- 搜索框 -->
|
||||
<SearchUI :searchForm.sync="searchForm" @toSearchChange="searchChange"></SearchUI>
|
||||
<SearchUI :searchForm.sync="searchForm" @toSearchChange="searchChange" ref="searchUI"></SearchUI>
|
||||
|
||||
<TransactionHistory :visible.sync="historyShow" :modalObj="selectedRowData"></TransactionHistory>
|
||||
|
||||
@ -35,6 +35,9 @@
|
||||
{{ resetStatusShow(scope.row.state) }}
|
||||
</span>
|
||||
</template>
|
||||
<template v-else-if="item.prop === 'functionName'" v-slot:default="scope">
|
||||
{{ getValConvertShow(scope.row.functionName) }}
|
||||
</template>
|
||||
<template
|
||||
v-else-if="item.prop === 'logCreator' || item.prop === 'dateExecute'"
|
||||
v-slot:default="scope"
|
||||
@ -128,6 +131,16 @@ export default {
|
||||
this.int_transaction_retry = this.permissions['int_transaction_retry']
|
||||
},
|
||||
methods: {
|
||||
|
||||
// 字典状态值映射通用
|
||||
getValConvertShow(srcVal) {
|
||||
let me = this;
|
||||
debugger
|
||||
const sourceList = this.$refs.searchUI.functionNameList;
|
||||
let obj = sourceList.find(item => item.value === srcVal);
|
||||
return obj != undefined ? obj.label : srcVal;
|
||||
},
|
||||
|
||||
showHistory(row) {
|
||||
this.selectedRowData = row // 存储选中的行数据
|
||||
this.selectedRowData.request = JSON.parse(row.request);
|
||||
|
||||
@ -588,6 +588,7 @@ export default {
|
||||
},
|
||||
getActivityOption(activityId) {
|
||||
let me = this;
|
||||
me.podActionForm.fab = ''
|
||||
if (activityId) {
|
||||
getByActivityOption(activityId, 'Z_FAB')
|
||||
.then((response) => {
|
||||
|
||||
45
src/views/mes/print/topic-send-test/index.vue
Normal file
45
src/views/mes/print/topic-send-test/index.vue
Normal file
@ -0,0 +1,45 @@
|
||||
<template>
|
||||
<div class="execution">
|
||||
<el-input type="textarea" v-model="formObj.msg" clearable/>
|
||||
<el-button type="primary" @click="sendMsg">发送测试</el-button>
|
||||
</div>
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import {
|
||||
send
|
||||
} from '@/api/mes/print/topic-send-test'
|
||||
import {showLoading, hideLoading} from "@/const/loading";
|
||||
|
||||
export default {
|
||||
name: "topic-send-test",
|
||||
data() {
|
||||
return {
|
||||
formObj: {
|
||||
msg: ''
|
||||
},
|
||||
|
||||
}
|
||||
},
|
||||
created() {
|
||||
},
|
||||
methods: {
|
||||
//显示操作弹窗框
|
||||
sendMsg() {
|
||||
let message = {value: this.formObj.msg}
|
||||
showLoading();
|
||||
send({topicName: 'dashboard-test', message: JSON.stringify(message)}).then(response => {
|
||||
hideLoading();
|
||||
this.$message.success("发送成功")
|
||||
})
|
||||
.catch(() => {
|
||||
hideLoading();
|
||||
});
|
||||
},
|
||||
}
|
||||
}
|
||||
</script>
|
||||
|
||||
<style>
|
||||
|
||||
</style>
|
||||
@ -261,6 +261,9 @@
|
||||
<el-table-column prop="auxiliaryOty" label="重量">
|
||||
</el-table-column>
|
||||
<el-table-column prop="inspecLevel" label="判定等级">
|
||||
<template slot-scope="scope">
|
||||
<span>{{findLevelList(scope.row.inspecLevel)}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="demotionProcessHistory" width="120" label="降级过程">
|
||||
</el-table-column>
|
||||
@ -268,7 +271,11 @@
|
||||
</el-table-column>
|
||||
<el-table-column prop="reason" label="冻结/解冻原因" >
|
||||
</el-table-column>
|
||||
<el-table-column prop="freedCreator" label="冻结/解冻人">
|
||||
<el-table-column label="冻结/解冻人" width="150">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.freedCreator != null">{{scope.row.freedCreator}}/{{scope.row.name}}</span>
|
||||
<span v-else>{{scope.row.freedCreator}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="freedDate" width="160" label="冻结/解冻时间">
|
||||
</el-table-column>
|
||||
@ -369,6 +376,14 @@ export default {
|
||||
// .catch(() => {})
|
||||
},
|
||||
methods: {
|
||||
findLevelList (result) {
|
||||
let me = this
|
||||
for (let i = 0; i < me.inspecLevelList.length; i++) {
|
||||
if (me.inspecLevelList[i].value === result) {
|
||||
return me.inspecLevelList[i].label
|
||||
}
|
||||
}
|
||||
},
|
||||
statusListFind(status) {
|
||||
let me = this
|
||||
return me.statusList.find(item => item.value === status).label
|
||||
|
||||
@ -1,15 +1,17 @@
|
||||
import moment from "moment/moment";
|
||||
|
||||
export const init = {
|
||||
sourceMasterLot:null,
|
||||
storageBin: null,
|
||||
startTime: null,
|
||||
item: null,
|
||||
weight: null,
|
||||
endTime: null,
|
||||
inspecLevel:null,
|
||||
length:null,
|
||||
status:null,
|
||||
inventoryId:null,
|
||||
inventoryIdList:[]
|
||||
inventoryIdList:[],
|
||||
startTime: moment(new Date()).subtract(7, 'days').format('YYYY-MM-DD HH:mm'),
|
||||
endTime: moment(new Date().setDate(new Date().getDate()+1)).format('YYYY-MM-DD HH:mm'),
|
||||
}
|
||||
|
||||
export const searchRules = {}
|
||||
|
||||
@ -836,7 +836,16 @@ export default {
|
||||
}
|
||||
},
|
||||
rowClassName: function ({ row }) {
|
||||
if (row.value == '7' || row.value == '8') {
|
||||
if (row.value === '2'
|
||||
|| row.value === '3'
|
||||
|| row.value === '4'
|
||||
|| row.value === '5'
|
||||
|| row.value === '6'
|
||||
|| row.value === '7'
|
||||
|| row.value === '8'
|
||||
|| row.value === '9'
|
||||
|| row.value === '10'
|
||||
) {
|
||||
return 'showRow'
|
||||
} else {
|
||||
return
|
||||
@ -920,7 +929,7 @@ export default {
|
||||
this.freqData.forEach((f, index) => {
|
||||
this.$set(this.freqData[index], 'item', key[this.freqData[index].value])
|
||||
this.$set(this.freqData[index], 'val', '')
|
||||
this.$set(this.freqData[index], 'seq', this.freqData[index].value)
|
||||
// this.$set(this.freqData[index], 'seq', this.freqData[index].value)
|
||||
this.$set(this.freqData[index], 'openFreqSwitch',this.freqData[index].openFreqSwitch )
|
||||
// if (index <= 6) {
|
||||
// this.$set(this.freqData[index], 'seq', index + 1 + '')
|
||||
@ -929,6 +938,7 @@ export default {
|
||||
// this.$set(this.freqData[index], 'seq', index - 1 + '')
|
||||
// }
|
||||
})
|
||||
setSeq(this.freqData, 'seq')
|
||||
this.freqData.sort((a, b) => a.seq - b.seq)
|
||||
}
|
||||
},
|
||||
|
||||
@ -606,8 +606,9 @@
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="6" v-if="!showNewItem">
|
||||
<el-form-item label="物料">
|
||||
<el-input v-model="processForm.newItem" :readonly="true">
|
||||
<el-form-item label="新物料:">
|
||||
<span v-if="state === 'view'">{{processForm.newItem}}</span>
|
||||
<el-input v-model="processForm.newItem" :readonly="true" v-else>
|
||||
<i
|
||||
slot="suffix"
|
||||
class="el-input__icon el-icon-copy-document"
|
||||
@ -723,7 +724,7 @@ import { checkTableRepeat, setSeq } from "@/util/table";
|
||||
import { copyJSON } from "@/util/util";
|
||||
import { closeForm, processForm } from "@/views/mes/qms/inspec/content/inspec";
|
||||
import {
|
||||
closeInspec, getMinio,
|
||||
closeInspec, deleteAttachment, getMinio,
|
||||
getOneDetail, reInspec, saveAllInspecAndDetailResult,
|
||||
saveInspecAndDetailResult,
|
||||
saveNc,
|
||||
@ -882,14 +883,33 @@ export default {
|
||||
//拍照预览
|
||||
handlePreview(file) {
|
||||
let me = this
|
||||
me.dialogImg = URL.createObjectURL(file.raw);
|
||||
//me.uploadList.push({url:me.dialogImg})
|
||||
if (file.status === 'success') {
|
||||
me.dialogImg = file.url
|
||||
} else {
|
||||
me.dialogImg = URL.createObjectURL(file.raw);
|
||||
}
|
||||
me.dialogImgVisible = true
|
||||
},
|
||||
//拍照删除
|
||||
handleRemove(file) {
|
||||
let me = this
|
||||
//me.uploadList.splice(me.uploadList.indexOf(file), 1)
|
||||
let param = {
|
||||
sid: file.sid,
|
||||
url: file.url,
|
||||
}
|
||||
showLoading()
|
||||
deleteAttachment(param).then(res => {
|
||||
hideLoading()
|
||||
if (res.status === 200) {
|
||||
me.$message.success("已删除")
|
||||
} else {
|
||||
me.$message.error(res.data.message)
|
||||
me.searchPhoto()
|
||||
}
|
||||
}).catch(e => {
|
||||
hideLoading()
|
||||
me.searchPhoto()
|
||||
})
|
||||
},
|
||||
// 处理文件变化(如拍照)
|
||||
handleChange(file, fileList) {
|
||||
@ -904,9 +924,26 @@ export default {
|
||||
me.dialogForm = {}
|
||||
me.dialogForm.inspecJobBo = row.inspecJobBo
|
||||
me.dialogForm.inspecDetailBo = row.handle
|
||||
me.uploadList = []
|
||||
me.searchPhoto()
|
||||
me.cameraVisible = true
|
||||
},
|
||||
//拍照开窗检索
|
||||
searchPhoto(){
|
||||
let me = this
|
||||
me.uploadList = []
|
||||
let param = {
|
||||
inspecJobBo: me.dialogForm.inspecJobBo,
|
||||
inspecDetailBo: me.dialogForm.inspecDetailBo,
|
||||
}
|
||||
showLoading()
|
||||
getMinio(param).then(res => {
|
||||
hideLoading()
|
||||
console.log(res.data)
|
||||
me.uploadList = res.data.data
|
||||
}).catch(e => {
|
||||
hideLoading()
|
||||
})
|
||||
},
|
||||
//上传
|
||||
uploadPhoto(){
|
||||
let me = this
|
||||
@ -914,12 +951,21 @@ export default {
|
||||
if (files.length === 0) {
|
||||
this.$message.error('请先选择要上传的文件');
|
||||
return;
|
||||
} else {
|
||||
let file = files.filter(f => f.status !== 'success')
|
||||
if (file.length === 0) {
|
||||
this.$message.error('请先选择要上传的文件');
|
||||
return;
|
||||
}
|
||||
}
|
||||
me.uploadData.inspecJobBo = me.dialogForm.inspecJobBo
|
||||
me.uploadData.inspecDetailBo = me.dialogForm.inspecDetailBo
|
||||
const formData = new FormData();
|
||||
files.forEach(file => {
|
||||
formData.append('files', file.raw); // 将每个文件添加到 formData 中
|
||||
//不能上传已经上传过的文件
|
||||
if (file.status !== 'success') {
|
||||
formData.append('files', file.raw); // 将每个文件添加到 formData 中
|
||||
}
|
||||
});
|
||||
formData.append('uploadData',JSON.stringify(me.uploadData));
|
||||
showLoading()
|
||||
@ -1303,8 +1349,16 @@ export default {
|
||||
t.inspecResults = t.inspecResultList
|
||||
for (let j = 0; j < t.inspecResultList.length; j++) {
|
||||
let d = t.inspecResultList[j]
|
||||
if (isBlank(d.result) && t.itemType !== '2') {
|
||||
return me.$message.error('序号' + (i + 1) + '测试结果不能为空')
|
||||
if (d.isRequired === 'Y') {
|
||||
if (t.itemType !== '2') {
|
||||
if (isBlank(d.result)) {
|
||||
return me.$message.error('序号' + (i + 1) + '测试结果不能为空')
|
||||
}
|
||||
} else {
|
||||
if (isBlank(d.content)) {
|
||||
return me.$message.error('序号' + (i + 1) + '测试结果不能为空')
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -1316,6 +1370,11 @@ export default {
|
||||
me.processForm.qcSubCategoriesLabel = row.label
|
||||
}
|
||||
}
|
||||
if (me.changeItem === 'Y' && me.processForm.result === 'G') {
|
||||
if (isBlank(me.processForm.newItem)) {
|
||||
return me.$message.error('新物料不能为空')
|
||||
}
|
||||
}
|
||||
showLoading()
|
||||
submitInspec(me.processForm).then(res => {
|
||||
hideLoading()
|
||||
|
||||
@ -53,11 +53,7 @@
|
||||
{{ form.judgeDateTime }}
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('mes.judgeResult') + ':'">
|
||||
<el-tag v-if="form.result === '0'" type="danger" effect="dark"> NG </el-tag>
|
||||
<el-tag v-if="form.result === '1'" type="success" effect="dark"> OK </el-tag>
|
||||
<el-tag v-if="form.result === '2'" type="primary" effect="dark">
|
||||
{{ $t('mes.specialProcurement') }}
|
||||
</el-tag>
|
||||
<span>{{findLevelList(form.result)}}</span>
|
||||
</el-form-item>
|
||||
<el-form-item :label="$t('mes.wms.isSpecialProcurement') + ':'" prop="waiver">
|
||||
<el-switch
|
||||
@ -216,9 +212,18 @@ export default {
|
||||
tabActiveName: 'main',
|
||||
formVisible: false,
|
||||
freqData: dynamicFunction.getDictListCust('inspec_freq'),
|
||||
levelList: dynamicFunction.getDictListCust('INSPEC_LEVEL'),
|
||||
}
|
||||
},
|
||||
methods: {
|
||||
findLevelList (result) {
|
||||
let me = this
|
||||
for (let i = 0; i < me.levelList.length; i++) {
|
||||
if (me.levelList[i].value === result) {
|
||||
return me.levelList[i].label
|
||||
}
|
||||
}
|
||||
},
|
||||
approvalStatusFind(status) {
|
||||
if (status === 'E') {
|
||||
return '失败'
|
||||
|
||||
@ -340,6 +340,8 @@ export default {
|
||||
to: moment(new Date().setDate(new Date().getDate()+1)).format('YYYY-MM-DD HH:mm'),
|
||||
isClickSearch:true,
|
||||
changeSearch:true,
|
||||
personal:true,
|
||||
statusCount:null
|
||||
},
|
||||
site: getStore({ name: 'tenantId' }),
|
||||
tableLoading: false,
|
||||
@ -994,7 +996,9 @@ export default {
|
||||
this.page.total = res.data.data.total
|
||||
me.page.current = res.data.data.current
|
||||
me.page.size = res.data.data.size
|
||||
me.searchForm.statusCount = 0
|
||||
if (this.tableData.length > 0) {
|
||||
me.searchForm.statusCount = this.tableData[0].statusCount
|
||||
this.tableData.forEach((t) => {
|
||||
let s = this.jobStatusList.find((j) => j.value == t.status)
|
||||
t.newStatus = s ? s.label : ''
|
||||
@ -1099,8 +1103,10 @@ export default {
|
||||
searchReset() {
|
||||
let me = this
|
||||
me.searchForm = {
|
||||
from: '',
|
||||
to: '',
|
||||
from: moment(new Date()).subtract(7, 'days').format('YYYY-MM-DD HH:mm'),
|
||||
to: moment(new Date().setDate(new Date().getDate()+1)).format('YYYY-MM-DD HH:mm'),
|
||||
personal:true,
|
||||
statusCount:null
|
||||
}
|
||||
this.tableData = []
|
||||
this.qcTable = []
|
||||
@ -1108,7 +1114,7 @@ export default {
|
||||
me.page.current = 1
|
||||
me.params = {}
|
||||
clear.call(me, me.$refs.tableData)
|
||||
me.searchChange()
|
||||
//me.searchChange()
|
||||
},
|
||||
afterCloseJob(key) {
|
||||
let init = {
|
||||
|
||||
@ -123,9 +123,9 @@
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="4" :offset="1">
|
||||
<el-checkbox v-model="searchForm.personal" true-label="true" false-label="false"
|
||||
>{{ $t('mes.qms.personalTaskOrder') }}
|
||||
<el-col :span="3" :offset="1">
|
||||
<el-checkbox v-model="searchForm.personal" true-label="true" false-label="false" :disabled="true">
|
||||
{{ $t('mes.qms.personalTaskOrder') }}
|
||||
</el-checkbox>
|
||||
</el-col>
|
||||
</el-row>
|
||||
@ -172,6 +172,17 @@
|
||||
</el-date-picker>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
<el-col :span="3" :offset="1">
|
||||
<!-- <el-checkbox v-model="searchForm.statusCount" true-label="true" false-label="false" :disabled="true"-->
|
||||
<!-- >{{ $t('mes.qms.personalTaskOrder') }}-->
|
||||
<!-- </el-checkbox>-->
|
||||
<el-form-item >
|
||||
<template slot="label">
|
||||
<tooltip content="未完成数量:"> </tooltip>
|
||||
</template>
|
||||
<span>{{searchForm.statusCount}}</span>
|
||||
</el-form-item>
|
||||
</el-col>
|
||||
</el-row>
|
||||
<!-- 第三行 -->
|
||||
<el-row :gutter="15">
|
||||
|
||||
@ -321,6 +321,7 @@ export default {
|
||||
from: moment(new Date().setMonth(new Date().getMonth()-1)).format('YYYY-MM-DD HH:mm'),
|
||||
to: moment(new Date()).format('YYYY-MM-DD HH:mm'),
|
||||
seq: '',
|
||||
personal:true
|
||||
},
|
||||
site: getStore({ name: 'tenantId' }),
|
||||
tableLoading: false,
|
||||
@ -888,6 +889,7 @@ export default {
|
||||
from: moment(new Date().setMonth(new Date().getMonth()-1)).format('YYYY-MM-DD HH:mm'),
|
||||
to: moment(new Date()).format('YYYY-MM-DD HH:mm'),
|
||||
seq: '',
|
||||
personal:true
|
||||
}
|
||||
this.page.size = 10
|
||||
this.page.current = 1
|
||||
|
||||
@ -135,7 +135,7 @@
|
||||
<el-col :span="6">
|
||||
<!-- 勾選框 -->
|
||||
<el-form-item>
|
||||
<el-checkbox v-model="searchForm.personal" true-label="true" false-label="false">
|
||||
<el-checkbox v-model="searchForm.personal" true-label="true" false-label="false" disabled>
|
||||
{{ $t('mes.qms.personalTaskOrder') }}
|
||||
</el-checkbox>
|
||||
</el-form-item>
|
||||
|
||||
@ -173,8 +173,6 @@
|
||||
border
|
||||
>
|
||||
<el-table-column type="selection" width="50"/>
|
||||
<el-table-column prop="seq" width="60" label="序号">
|
||||
</el-table-column>
|
||||
<el-table-column prop="storageBin" width="150" label="存储地点">
|
||||
</el-table-column>
|
||||
<el-table-column prop="inventoryId" width="150" label="生产批/条码">
|
||||
@ -231,7 +229,11 @@
|
||||
</el-input>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="creator" label="复判人" width="100">
|
||||
<el-table-column label="复判人" width="150">
|
||||
<template slot-scope="scope">
|
||||
<span v-if="scope.row.rejudgCreator != null">{{scope.row.rejudgCreator}}/{{scope.row.name}}</span>
|
||||
<span v-else>{{scope.row.rejudgCreator}}</span>
|
||||
</template>
|
||||
</el-table-column>
|
||||
<el-table-column prop="rejudgDate" label="复判时间" width="160">
|
||||
</el-table-column>
|
||||
|
||||
Loading…
Reference in New Issue
Block a user