Merge branch 'dev-scheduling' of http://42.192.7.176:3000/suojin/jonhon-mes-web into dev-scheduling

dev-scheduling
zhangdi 3 weeks ago
commit cbd4e907b9
  1. 28
      src/api/energyManagement/energyManagement.js
  2. 310
      src/views/energyManagement/components/batchAddWater.vue
  3. 147
      src/views/energyManagement/components/electricityTarget.vue
  4. 101
      src/views/energyManagement/components/waterTarget.vue
  5. 4
      src/views/oem/oemApproval/index.vue
  6. 3
      src/views/oem/oemOrderSettlement/components/settlementAnomaly.vue
  7. 2
      src/views/oem/oemOrderSettlement/components/settlementCompleted.vue
  8. 4
      src/views/oem/oemOrderSettlement/components/unsettled.vue
  9. 24
      src/views/productionDisposition/hearingDialog.vue
  10. 25
      src/views/productionDisposition/index.vue
  11. 5
      src/views/productionTesting/productionQuality.vue
  12. 13
      src/views/qualityManagement/inspectionArchiving/ERecord/index.vue
  13. 14
      src/views/qualityManagement/inspectionArchiving/ERecord/printDialog.vue
  14. 26
      src/views/qualityManagement/tankSolutionSystem/components/batchDialog.vue
  15. 4
      src/views/qualityManagement/tankSolutionSystem/components/disposeDialog.vue
  16. 20
      src/views/qualityManagement/tankSolutionSystem/tankSolutionTaskDispose.vue

@ -46,3 +46,31 @@ export const detailItem = (params)=>{
}); });
} }
// 列表(新)
export const getList = (params) => {
return request({
url: '/blade-desk/bsEnergyTarget/page',
method: 'get',
params,
});
};
// 详情(新)
export const getDetail = (params) => {
return request({
url: '/blade-desk/bsEnergyTarget/detail',
method: 'get',
params,
});
};
// 提交
export const submit = (params) => {
return request({
url: '/blade-desk/bsEnergyTarget/submit',
method: 'post',
data: params,
});
};

@ -0,0 +1,310 @@
<template>
<el-dialog :title="checkYear == '' ? '新增' : '修改'" append-to-body :modelValue="openShow" width="70%" fullscreen @close="closeDialog()">
<div style="margin-bottom: 12px" v-if="moldAddMore">
<el-button type="primary" @click="addTable">插入一行</el-button>
<el-button type="danger" @click="delTable">删除选中行</el-button>
</div>
<!-- 单个 Form 包裹整个表格 -->
<el-form
ref="tableForm"
:model="form"
:rules="formRules"
label-width="0px"
>
<!-- 全局错误提示 -->
<div v-if="formError" class="error-message" style="color: #f56c6c; margin-bottom: 10px;">
{{ formError }}
</div>
<el-table :data="form.tableData" @select="selectChange" border>
<el-table-column type="selection" width="55" align="center"></el-table-column>
<!-- 年份绑定数组字段 -->
<el-table-column align="center" label="年份">
<template #header>
<span><i style="color: red">*</i>年份</span>
</template>
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].year`" :rules="formRules.year">
<el-date-picker v-model="scope.row.year" type="year" placeholder="请选择"
format="YYYY" value-format="YYYY"></el-date-picker>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="一月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m01Target`" :rules="formRules.m01Target">
<el-input-number v-model="scope.row.m01Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="二月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m02Target`" :rules="formRules.m02Target">
<el-input-number v-model="scope.row.m02Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="三月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m03Target`" :rules="formRules.m03Target">
<el-input-number v-model="scope.row.m03Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="四月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m04Target`" :rules="formRules.m04Target">
<el-input-number v-model="scope.row.m04Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="五月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m05Target`" :rules="formRules.m05Target">
<el-input-number v-model="scope.row.m05Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="六月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m06Target`" :rules="formRules.m06Target">
<el-input-number v-model="scope.row.m06Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="七月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m07Target`" :rules="formRules.m07Target">
<el-input-number v-model="scope.row.m07Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="八月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m08Target`" :rules="formRules.m08Target">
<el-input-number v-model="scope.row.m08Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="九月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m09Target`" :rules="formRules.m09Target">
<el-input-number v-model="scope.row.m09Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="十月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m10Target`" :rules="formRules.m10Target">
<el-input-number v-model="scope.row.m10Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="十一月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m11Target`" :rules="formRules.m11Target">
<el-input-number v-model="scope.row.m11Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
<el-table-column align="center" label="十二月">
<template #default="scope">
<!-- prop 格式数组名[索引].字段名 -->
<el-form-item :prop="`tableData[${scope.$index}].m12Target`" :rules="formRules.m12Target">
<el-input-number v-model="scope.row.m12Target" controls-position="right" :min="0"></el-input-number>
</el-form-item>
</template>
</el-table-column>
</el-table>
</el-form>
<template #footer>
<span class="dialog-footer">
<el-button @click="closeDialog()"> </el-button>
<el-button type="primary" @click="submitForm"> </el-button>
</span>
</template>
</el-dialog>
</template>
<script>
import {getDetail,submit} from '@/api/energyManagement/energyManagement'
export default {
props:{
showAdd:{
type:Boolean,
default:false
},
moldAddMore:{
type:Boolean,
default:false
},
type:{
type:String,
default:""
},
checkYear:{
type:String,
default:""
}
},
data(){
return{
openShow:false,
formRules:{
// 1
tableData: [
{
required: true,
message: '请至少添加一行数据',
trigger: 'submit',
type: 'array' //
},
{
validator: (rule, value, callback) => {
if (value.length === 0) {
callback(new Error('请至少添加一行数据'));
} else {
callback();
}
},
trigger: 'submit'
}
],
// year
year: [
{ required: true, message: '请选择年份', trigger: ['change', 'submit'] }
],
},
form:{
tableData:[],
},
formError:"",
}
},
mounted(){
this.openShow = this.showAdd
if (this.moldAddMore && this.form.tableData.length === 0) {
this.addTable();
}else{
getDetail({
type:this.type == 'water' ? 1 : 2,
year:this.checkYear
}).then(res =>{
this.form.tableData = [res.data.data]
})
}
},
methods:{
closeDialog(val){
this.$emit('closeDialog',val)
},
addTable(){
this.form.tableData.push({
year: '',
m01Target:'',
m02Target:'',
m03Target:'',
m04Target:'',
m05Target:'',
m06Target:'',
m07Target:'',
m08Target:'',
m09Target:'',
m10Target:'',
m11Target:'',
m12Target:''
})
},
//
submitForm() {
this.formError = '';
// Form
this.$refs.tableForm.validate((isValid, invalidFields) => {
if (!isValid) {
//
this.formError = '存在未完善的字段,请检查表格中的红色提示';
this.$nextTick(() => {
//
const firstError = document.querySelector('.el-form-item.is-error');
if (firstError) {
firstError.scrollIntoView({ behavior: 'smooth', block: 'center' });
}
});
return;
}
//
const submitData = this.form.tableData.map(row => {
const { _select, ...validData } = row; //
return validData;
});
if(this.checkYear == ''){
submitData.map(item =>{
item.type = this.type == 'water' ? 1 : 2
})
}
submit(submitData).then(res =>{
if(res.data.code == 200){
this.$message.success(this.checkYear == '' ? '新增成功' : '修改成功')
this.closeDialog(true)
}
})
})
}
}
}
</script>
<style lang="scss" scoped>
//
:deep(.el-table .el-form-item) {
margin-bottom: 0; //
}
//
:deep(.el-form-item__error) {
font-size: 12px;
white-space: nowrap;
z-index: 10;
background: #fff;
padding: 2px 4px;
border: 1px solid #f56c6c;
border-radius: 4px;
}
// textarea
.el-table__row {
height: 80px !important;
}
.el-table__cell {
vertical-align: middle !important;
}
.error-message {
font-size: 14px;
line-height: 1.5;
}
:deep(.el-table .el-table__cell) {
height: 50px !important;
padding: 0 !important;
line-height: 50px !important;
}
</style>

@ -20,15 +20,18 @@
@sort-change="sortChange" @sort-change="sortChange"
> >
<template #menu-left> <template #menu-left>
<el-button type="danger" @click="handleDelete" v-if="permission.electricityTarget_delete" <el-button type="primary" @click="handleAdd" v-if="permission.electricityTarget_add">新增</el-button>
<!-- <el-button type="danger" @click="handleDelete" v-if="permission.electricityTarget_delete"
>删除 >删除
</el-button> </el-button> -->
</template> </template>
<template #menu-right> <template #menu-right>
<el-button type="primary" @click="handleExport" v-if="permission.electricityTarget_export">导出</el-button> <el-button type="primary" @click="handleExport" v-if="permission.electricityTarget_export">导出</el-button>
<el-button type="primary" @click="handleImport" v-if="permission.electricityTarget_import">导入</el-button> <el-button type="primary" @click="handleImport" v-if="permission.electricityTarget_import">导入</el-button>
</template> </template>
<template #menu="scope"> </template> <template #menu="scope">
<el-button type="primary" text v-if="permission.electricityTarget_edit" @click="editRow(scope.row)">修改</el-button>
</template>
</avue-crud> </avue-crud>
<!-- 导入 --> <!-- 导入 -->
<basic-import v-if="isShowImport" title="导入" :isShow="isShowImport" <basic-import v-if="isShowImport" title="导入" :isShow="isShowImport"
@ -37,14 +40,24 @@
importUrl="/blade-desk/bsEnergyTarget/electric-import-excel" importUrl="/blade-desk/bsEnergyTarget/electric-import-excel"
@closeDialog="closeDialog"></basic-import> @closeDialog="closeDialog"></basic-import>
</div> </div>
<batchAddWater
v-if="showAdd"
type="electricity"
:showAdd="showAdd"
:moldAddMore="moldAddMore"
:checkYear="checkYear"
@closeDialog="closeDialog"
></batchAddWater>
</template> </template>
<script> <script>
import basicImport from '@/components/basic-import/main.vue' import basicImport from '@/components/basic-import/main.vue'
import batchAddWater from "../components/batchAddWater.vue"
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { pageList, removeItem, saveItem, exportData } from '@/api/energyManagement/energyManagement'; import { pageList, removeItem, saveItem, exportData } from '@/api/energyManagement/energyManagement';
export default { export default {
components: { components: {
basicImport, basicImport,
batchAddWater
}, },
data() { data() {
return { return {
@ -52,13 +65,16 @@ export default {
isShowImport:false, isShowImport:false,
selectionList: [], selectionList: [],
query:{}, query:{},
showAdd:false,
moldAddMore:false,
checkYear:'',
option: { option: {
height: "auto", height: "auto",
calcHeight: 32, calcHeight: 32,
tip: false, tip: false,
simplePage: true, simplePage: true,
searchShow: true, searchShow: true,
searchMenuSpan: 12, searchMenuSpan: 18,
searchIcon: true, searchIcon: true,
searchIndex: 3, searchIndex: 3,
tree: false, tree: false,
@ -119,42 +135,90 @@ export default {
}, },
], ],
}, },
// {
// label:"",
// prop: "quarter",
// search: true,
// span: 24,
// sortable: 'custom',
// type:"select",
// dicData:[
// {label:"",value:'1'},
// {label:"",value:'2'},
// {label:"",value:'3'},
// {label:"",value:'4'},
// ],
// rules: [
// {
// required: true,
// message: "",
// trigger: "blur",
// },
// ],
// },
// {
// label: "(kWh/dm²)",
// prop: "target",
// type:'number',
// search: false,
// sortable: 'custom',
// filter: true,
// span: 24,
// rules: [
// {
// required: true,
// message: "(kWh/dm²)",
// trigger: "blur",
// },
// ],
// },
{ {
label:"季度", label:"一月",
prop: "quarter", prop: "m01Target",
search: true, },
span: 24,
sortable: 'custom',
type:"select",
dicData:[
{label:"第一季度",value:'1'},
{label:"第二季度",value:'2'},
{label:"第三季度",value:'3'},
{label:"第四季度",value:'4'},
],
rules: [
{ {
required: true, label:"二月",
message: "请选择季度", prop: "m02Target",
trigger: "blur",
}, },
], {
label:"三月",
prop: "m03Target",
}, },
{ {
label: "用电目标(kWh/dm²)", label:"四月",
prop: "target", prop:"m04Target"
type:'number', },
search: false,
sortable: 'custom',
filter: true,
span: 24,
rules: [
{ {
required: true, label:"五月",
message: "请输入用电目标(kWh/dm²)", prop:"m05Target"
trigger: "blur",
}, },
], {
label:"六月",
prop:"m06Target"
},
{
label:"七月",
prop:"m07Target"
},
{
label:"八月",
prop:"m08Target"
},
{
label:"九月",
prop:"m09Target"
},
{
label:"十月",
prop:"m10Target"
},
{
label:"十一月",
prop:"m11Target"
},
{
label:"十二月",
prop:"m12Target"
}, },
], ],
}, },
@ -170,11 +234,20 @@ export default {
...mapGetters(['permission']), ...mapGetters(['permission']),
}, },
created(){ created(){
console.log('permission-------',this.permission) // console.log('permission-------',this.permission)
this.option.addBtn = this.permission.electricityTarget_add ? true : false; // this.option.addBtn = this.permission.electricityTarget_add ? true : false;
this.option.editBtn = this.permission.electricityTarget_edit ? true : false; // this.option.editBtn = this.permission.electricityTarget_edit ? true : false;
}, },
methods: { methods: {
handleAdd(){
this.showAdd = true
this.moldAddMore = true
},
editRow(row){
this.checkYear = row.year
this.moldAddMore = false
this.showAdd = true
},
// //
sortChange({ prop, order }) { sortChange({ prop, order }) {
console.log('prop-------------',prop) console.log('prop-------------',prop)
@ -201,6 +274,8 @@ export default {
closeDialog(val){ closeDialog(val){
this.isShowImport = false this.isShowImport = false
this.showAdd = false
this.moldAddMore = false
if(val){ if(val){
this.onLoad() this.onLoad()
} }

@ -21,13 +21,16 @@
@sort-change="sortChange" @sort-change="sortChange"
> >
<template #menu-left> <template #menu-left>
<el-button type="danger" @click="handleDelete" v-if="permission.waterTarget_delete">删除 </el-button> <el-button type="primary" @click="handleAdd" v-if="permission.waterTarget_add">新增 </el-button>
<!-- <el-button type="danger" @click="handleDelete" v-if="permission.waterTarget_delete">删除 </el-button> -->
</template> </template>
<template #menu-right> <template #menu-right>
<el-button type="primary" @click="handleExport" v-if="permission.waterTarget_export">导出 </el-button> <el-button type="primary" @click="handleExport" v-if="permission.waterTarget_export">导出 </el-button>
<el-button type="primary" @click="handleImport" v-if="permission.waterTarget_import">导入 </el-button> <el-button type="primary" @click="handleImport" v-if="permission.waterTarget_import">导入 </el-button>
</template> </template>
<template #menu> </template> <template #menu="scope">
<el-button type="primary" text v-if="permission.waterTarget_edit" @click="editRow(scope.row)">修改</el-button>
</template>
</avue-crud> </avue-crud>
<!-- 导入 --> <!-- 导入 -->
<basic-import <basic-import
@ -39,15 +42,25 @@
importUrl="/blade-desk/bsEnergyTarget/water-import-excel" importUrl="/blade-desk/bsEnergyTarget/water-import-excel"
@closeDialog="closeDialog" @closeDialog="closeDialog"
></basic-import> ></basic-import>
<batchAddWater
v-if="showAdd"
type="water"
:showAdd="showAdd"
:moldAddMore="moldAddMore"
:checkYear="checkYear"
@closeDialog="closeDialog">
</batchAddWater>
</div> </div>
</template> </template>
<script> <script>
import basicImport from '@/components/basic-import/main.vue' import basicImport from '@/components/basic-import/main.vue'
import batchAddWater from "../components/batchAddWater.vue"
import { mapGetters } from 'vuex'; import { mapGetters } from 'vuex';
import { pageList, removeItem, saveItem, exportData } from '@/api/energyManagement/energyManagement'; import { pageList,getList, removeItem, saveItem, exportData } from '@/api/energyManagement/energyManagement';
export default { export default {
components: { components: {
basicImport, basicImport,
batchAddWater
}, },
data() { data() {
return { return {
@ -57,6 +70,8 @@ export default {
search: {}, search: {},
loading: false, loading: false,
data: [], data: [],
showAdd:false,
moldAddMore:false,
option: { option: {
height: "auto", height: "auto",
calcHeight: 32, calcHeight: 32,
@ -125,17 +140,66 @@ export default {
}, },
], ],
}, },
// {
// label: "(L/d)",
// prop: "target",
// type:"number",
// search: false,
// sortable: 'custom',
// filter: true,
// span: 24,
// },
{ {
label: "用水目标(L/d㎡)", label:"一月",
prop: "target", prop: "m01Target",
type:"number", },
search: false, {
sortable: 'custom', label:"二月",
filter: true, prop: "m02Target",
span: 24, },
{
label:"三月",
prop: "m03Target",
},
{
label:"四月",
prop:"m04Target"
},
{
label:"五月",
prop:"m05Target"
},
{
label:"六月",
prop:"m06Target"
},
{
label:"七月",
prop:"m07Target"
},
{
label:"八月",
prop:"m08Target"
},
{
label:"九月",
prop:"m09Target"
},
{
label:"十月",
prop:"m10Target"
},
{
label:"十一月",
prop:"m11Target"
},
{
label:"十二月",
prop:"m12Target"
}, },
], ],
}, },
checkYear:'',
form: {}, form: {},
page: { page: {
pageSize: 10, pageSize: 10,
@ -146,8 +210,8 @@ export default {
}, },
created(){ created(){
console.log('permission-------',this.permission) console.log('permission-------',this.permission)
this.option.addBtn = this.permission.waterTarget_add ? true : false; // this.option.addBtn = this.permission.waterTarget_add ? true : false;
this.option.editBtn = this.permission.waterTarget_edit ? true : false; // this.option.editBtn = this.permission.waterTarget_edit ? true : false;
}, },
computed: { computed: {
...mapGetters(['permission']), ...mapGetters(['permission']),
@ -239,6 +303,8 @@ export default {
closeDialog(val){ closeDialog(val){
this.isShowImport = false this.isShowImport = false
this.showAdd = false
this.moldAddMore = false
if(val){ if(val){
this.onLoad() this.onLoad()
} }
@ -270,6 +336,15 @@ export default {
}); });
}); });
}, },
handleAdd(){
this.showAdd = true
this.moldAddMore = true
},
editRow(row){
this.checkYear = row.year
this.moldAddMore = false
this.showAdd = true
},
handleDelete() { handleDelete() {
if (this.selectionList.length === 0) { if (this.selectionList.length === 0) {
this.$message.error("请选择至少一条数据"); this.$message.error("请选择至少一条数据");
@ -302,7 +377,7 @@ export default {
}); });
this.loading = true; this.loading = true;
pageList({ getList({
current:this.page.currentPage, current:this.page.currentPage,
size: this.page.pageSize, size: this.page.pageSize,
type: 1, type: 1,

@ -314,10 +314,10 @@ export default {
this.$message.error("请选择状态为【待审核】的数据"); this.$message.error("请选择状态为【待审核】的数据");
return return
} }
this.woId = this.selectionList.map(item => item.id).join(',') this.woId = this.selectionList.map(item => item.woId).join(',')
this.isOpen = true; this.isOpen = true;
}else{ }else{
this.woId = row.id this.woId = row.woId
this.isOpen = true; this.isOpen = true;
} }
}, },

@ -620,7 +620,8 @@ export default {
...this.query, ...this.query,
postPlatingStorageTimeStart:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[0], postPlatingStorageTimeStart:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[0],
postPlatingStorageTimeEnd:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[1], postPlatingStorageTimeEnd:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[1],
memo:this.query && this.query.memo && this.query.memo.length != 0 && this.query.memo.join(';'), memo:this.query && this.query.memo && typeof(this.query.memo) == 'object' && this.query.memo.length != 0 ? this.query.memo.join(';') : this.query.memo,
// memo:this.query && this.query.memo && this.query.memo.length != 0 && this.query.memo.join(';'),
} }
if(params.putStoreTime) delete params.putStoreTime; if(params.putStoreTime) delete params.putStoreTime;
getStatement(params).then(res =>{ getStatement(params).then(res =>{

@ -636,7 +636,7 @@ export default {
...this.query, ...this.query,
postPlatingStorageTimeStart:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[0], postPlatingStorageTimeStart:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[0],
postPlatingStorageTimeEnd:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[1], postPlatingStorageTimeEnd:this.query && this.query.putStoreTime && this.query.putStoreTime.length != 0 && this.query.putStoreTime[1],
memo:this.query && this.query.memo && this.query.memo.length != 0 && this.query.memo.join(';'), memo:this.query && this.query.memo && typeof(this.query.memo) == 'object' && this.query.memo.length != 0 ? this.query.memo.join(';') : this.query.memo,
} }
if(params.putStoreTime) delete params.putStoreTime; if(params.putStoreTime) delete params.putStoreTime;
getStatement(params).then(res =>{ getStatement(params).then(res =>{

@ -50,7 +50,7 @@
</el-dialog> </el-dialog>
<!-- 补充结算弹窗 --> <!-- 补充结算弹窗 -->
<el-dialog title="预结算" append-to-body :modelValue="openSupplement" width="30%"> <el-dialog title="预结算" append-to-body :modelValue="openSupplement" width="30%" @close="openSupplement = false">
<el-form :model="supplementForm" :rules="supplementRules" ref="supplementForm" label-width="100px"> <el-form :model="supplementForm" :rules="supplementRules" ref="supplementForm" label-width="100px">
<el-form-item label="镀后入库时间" prop="putStoreTime"> <el-form-item label="镀后入库时间" prop="putStoreTime">
<el-date-picker <el-date-picker
@ -123,7 +123,7 @@ export default {
border: true, border: true,
index: false, index: false,
selection: true, selection: true,
rowKey: 'wpId', // rowKey: 'wpId',
editBtn: false, editBtn: false,
viewBtn: false, viewBtn: false,
delBtn: false, delBtn: false,

@ -1,5 +1,5 @@
<template> <template>
<el-dialog title="新增" append-to-body :modelValue="openShow" width="70%" @close="closeDialog" fullscreen> <el-dialog title="新增" append-to-body :modelValue="openShow" width="70%" @close="closeDialog()" fullscreen>
<div class="test_type"> <div class="test_type">
<span>审理类型</span> <span>审理类型</span>
<el-radio-group v-model="testType" @change="changeType" :disabled="type == 'view'"> <el-radio-group v-model="testType" @change="changeType" :disabled="type == 'view'">
@ -7,14 +7,11 @@
<el-radio :value="2">内部审理</el-radio> <el-radio :value="2">内部审理</el-radio>
</el-radio-group> </el-radio-group>
</div> </div>
<div class="test_type" v-if="testType == 1"> <!-- <div class="test_type" v-if="testType == 1">
<span>流程卡号</span> <span>流程卡号</span>
<!-- <el-select v-model="detailInfo.refWoId" placeholder="请选择" style="width: 400px;" :disabled="type == 'view'">
<el-option v-for="item in historyList" :key="item.woId" :label="item.woInfo" :value="item.woId" />
</el-select> -->
<el-input placeholder="请输入流程卡号" style="width:400px;" v-model="cardNo"></el-input> <el-input placeholder="请输入流程卡号" style="width:400px;" v-model="cardNo"></el-input>
<el-button @click="handleUse" type="primary" style="margin-left:10px;" :disabled="type == 'view'">应用</el-button> <el-button @click="handleUse" type="primary" style="margin-left:10px;" :disabled="type == 'view'">应用</el-button>
</div> </div> -->
<el-descriptions title="订单信息" border :column="4" label-width="110"> <el-descriptions title="订单信息" border :column="4" label-width="110">
<el-descriptions-item label="车间订单号:">{{detailInfo.woCode}}</el-descriptions-item> <el-descriptions-item label="车间订单号:">{{detailInfo.woCode}}</el-descriptions-item>
<el-descriptions-item label="发现工序:">{{detailInfo.productionDisposition}}</el-descriptions-item> <el-descriptions-item label="发现工序:">{{detailInfo.productionDisposition}}</el-descriptions-item>
@ -34,18 +31,15 @@
</el-descriptions> </el-descriptions>
<el-descriptions v-if="testType == 1" class="margin-top" title="质量信息" border :column="3" label-width="110" style="margin-bottom: 24px;"> <el-descriptions v-if="testType == 1" class="margin-top" title="质量信息" border :column="3" label-width="110" style="margin-bottom: 24px;">
<!-- <el-descriptions-item label="历史订单:"> <el-descriptions-item label="历史订单:">
<el-select v-model="value" placeholder="请选择" style="width: 400px;" :disabled="type == 'view'"> <el-select v-model="value" placeholder="请选择" style="width: 400px;" :disabled="type == 'view'">
<el-option label="订单1" value="1" /> <el-option label="订单1" value="1" />
<el-option label="订单2" value="2" /> <el-option label="订单2" value="2" />
</el-select> </el-select>
</el-descriptions-item> --> </el-descriptions-item>
<el-descriptions-item label="处置单类型:"> <el-descriptions-item label="处置单类型:">
<el-select v-model="detailInfo.reviewOrderMode" placeholder="请选择" style="width: 400px;" :disabled="type == 'view'" @change="changeOrderMode" filterable <el-select v-model="detailInfo.reviewOrderMode" placeholder="请选择" style="width: 400px;" :disabled="type == 'view'" @change="changeOrderMode" filterable clearable >
clearable >
<el-option v-for="item in disposeTypeList" :key="item.id" :label="item.dictValue" :value="item.dictKey" /> <el-option v-for="item in disposeTypeList" :key="item.id" :label="item.dictValue" :value="item.dictKey" />
<!-- <el-option label="装配模式" value="2" /> -->
<!-- <el-option label="售后模式" value="3" /> -->
</el-select> </el-select>
</el-descriptions-item> </el-descriptions-item>
@ -295,7 +289,7 @@
<template #footer> <template #footer>
<span class="dialog-footer"> <span class="dialog-footer">
<el-button plain @click="closeDialog">取消</el-button> <el-button plain @click="closeDialog()">取消</el-button>
<el-button type="primary" v-if="testType == 1 && type != 'view'" @click="submit(-1)">保存</el-button> <el-button type="primary" v-if="testType == 1 && type != 'view'" @click="submit(-1)">保存</el-button>
<el-button type="primary" v-if="testType == 2 && type != 'view'" @click="submitInside">提交</el-button> <el-button type="primary" v-if="testType == 2 && type != 'view'" @click="submitInside">提交</el-button>
<el-button type="primary" v-if="testType == 1 && type != 'view'" plain @click="submit(1)">提交质保</el-button> <el-button type="primary" v-if="testType == 1 && type != 'view'" plain @click="submit(1)">提交质保</el-button>
@ -492,8 +486,8 @@ export default {
this.detailInfo.refWoId = res.data.data.refWoId == 0 ? '' : res.data.data.refWoId this.detailInfo.refWoId = res.data.data.refWoId == 0 ? '' : res.data.data.refWoId
this.testType = res.data.data.bizType == 3 ? 1 : 2 this.testType = res.data.data.bizType == 3 ? 1 : 2
this.disposalType = res.data.data.bizType == 3 ? '' : res.data.data.bizType this.disposalType = res.data.data.bizType == 3 ? '' : res.data.data.bizType
this.detailInfo.scrapNum = this.disposalType == 1 ? '' : res.data.data.scrapNum this.detailInfo.scrapNum = this.disposalType == 1 ? 0 : res.data.data.scrapNum
this.detailInfo.reDoNum = this.disposalType == 2 ? '' : res.data.data.reDoNum this.detailInfo.reDoNum = this.disposalType == 2 ? 0 : res.data.data.reDoNum
this.checkList = [] this.checkList = []
this.checkList.push( this.checkList.push(
res.data.data.isBatProblem == 1 ? 'isBatProblem' : null, res.data.data.isBatProblem == 1 ? 'isBatProblem' : null,

@ -7,7 +7,7 @@
@sort-change="sortChange" @sort-change="sortChange"
> >
<template #menu-left> <template #menu-left>
<el-input placeholder="扫描流程卡号" v-model="cardNo" @keyup.enter.native="queryCard"></el-input>
<!--<el-button type="primary" @click="addReview(1,null)">零件模式</el-button> <!--<el-button type="primary" @click="addReview(1,null)">零件模式</el-button>
<el-button type="primary" @click="addReview(2,null)">装配模式</el-button> --> <el-button type="primary" @click="addReview(2,null)">装配模式</el-button> -->
</template> </template>
@ -110,6 +110,7 @@ export default {
currentPage: 1, currentPage: 1,
total: 0, total: 0,
}, },
cardNo:"",
trialType: null, trialType: null,
showDialog: false, showDialog: false,
rsId: null, rsId: null,
@ -590,6 +591,28 @@ export default {
}, },
methods: { methods: {
queryCard(){
getProductionDispositionList({
cardNo:this.cardNo,
current:this.page.currentPage,
size:this.page.pageSize
}).then(res =>{
console.log('res------------',res)
if(res.data.data.records.length == 1){
if(res.data.data.records[0].status == 0 || res.data.data.records[0].status == -1){
this.rsId = res.data.data.records[0].id
this.dialogType = 'submit'
this.hearingOpen = true
}else{
this.data = res.data.data.records
this.cardNo = ''
}
}else{
this.data = res.data.data.records
this.cardNo = ''
}
})
},
// //
sortChange({ prop, order }) { sortChange({ prop, order }) {
console.log('perop---------', prop); console.log('perop---------', prop);

@ -1306,8 +1306,8 @@ export default {
getThickness(val,allData,endTime,itemDetail){ getThickness(val,allData,endTime,itemDetail){
getThicknessList({ getThicknessList({
// startTime:this.startTime, startTime:this.startTime,
// endTime:endTime, endTime:endTime,
allData, allData,
// count:val // count:val
}).then(res =>{ }).then(res =>{
@ -1628,6 +1628,7 @@ export default {
// res.data.data.wpItemList[0].item.name = '' // res.data.data.wpItemList[0].item.name = ''
// res.data.data.wpItemList[0].checkUserRealName = null // res.data.data.wpItemList[0].checkUserRealName = null
this.vxeTableData = res.data.data.wpItemList; this.vxeTableData = res.data.data.wpItemList;
console.log('this.vxeTableData', this.vxeTableData);
this.vxeTableData.map(item => { this.vxeTableData.map(item => {
item.lossQty = (item.checkUserRealName != null && item.checkUserRealName != '' ) item.lossQty = (item.checkUserRealName != null && item.checkUserRealName != '' )
? item.lossQty : item.lossQty != null && item.lossQty != '' && item.lossQty != -1 ? item.lossQty : item.lossQty != null && item.lossQty != '' && item.lossQty != -1

@ -23,8 +23,8 @@
<template #menu="{ row }"> <template #menu="{ row }">
<span> <span>
<el-button type="text" @click="inspectionRecord(row)" v-if="permission.ERecord_test">检验记录</el-button> <el-button type="text" @click="inspectionRecord(row)" v-if="permission.ERecord_test">检验记录</el-button>
<el-button v-if="row.yieldType == 1 && permission.ERecord_hotlist" type="text" @click="rbPrint(row,2)" >热表打印</el-button> <el-button v-if="row.yieldType == 12001 && permission.ERecord_hotlist" type="text" @click="rbPrint(row,2)" >热表打印</el-button>
<el-button v-if="row.yieldType != 1 && permission.ERecord_sintering" type="text" @click="sjPrint(row)">烧结打印</el-button> <el-button v-if="row.yieldType != 12001 && permission.ERecord_sintering" type="text" @click="sjPrint(row)">烧结打印</el-button>
</span> </span>
<el-button type="text" @click="handleThickness(row)" v-if="permission.ERecord_thickness">测厚打印</el-button> <el-button type="text" @click="handleThickness(row)" v-if="permission.ERecord_thickness">测厚打印</el-button>
</template> </template>
@ -287,6 +287,12 @@ export default {
// }, // },
// ], // ],
// }, // },
{
label:"流程卡号",
prop:"cardNo",
width:120,
sortable:true
},
{ {
label: '批次号', label: '批次号',
prop: 'batchNo', prop: 'batchNo',
@ -754,7 +760,7 @@ export default {
}, },
planOpenSj:false, planOpenSj:false,
sjTypeSelectOpen: true, sjTypeSelectOpen: false,
sjPrintType: 1, sjPrintType: 1,
showSjPrint:false, showSjPrint:false,
data: [], data: [],
@ -886,6 +892,7 @@ export default {
this.planOpenSj = false this.planOpenSj = false
this.prWorkPlanList = [] this.prWorkPlanList = []
this.checkedList = [] this.checkedList = []
this.checkWoId = row.woId
// this.checkWoId = '2019646268865155074' // this.checkWoId = '2019646268865155074'
this.woId = row.woId this.woId = row.woId
getProcessList({ getProcessList({

@ -555,13 +555,13 @@ export default {
} }
}, },
created(){ created(){
const { modelOne, modelTwo, modelThree, modelFour, modelFive } = // const { modelOne, modelTwo, modelThree, modelFour, modelFive } =
printOrderJson.data; // printOrderJson.data;
this.modelOne = modelOne // this.modelOne = modelOne
this.modelTwo = modelTwo // this.modelTwo = modelTwo
this.modelThree = modelThree // this.modelThree = modelThree
this.modelFour = modelFour; // this.modelFour = modelFour;
this.modelFive = modelFive; // this.modelFive = modelFive;
getWordDetail({ getWordDetail({
woId:this.woId, woId:this.woId,

@ -63,10 +63,10 @@
{{scope.row.qualified == 1 ? '合格' : scope.row.qualified == 2 ? '不合格' : ''}} {{scope.row.qualified == 1 ? '合格' : scope.row.qualified == 2 ? '不合格' : ''}}
</template> </template>
<!-- 复测电导率 --> <!-- 复测电导率 -->
<template #conductivityRepeatTestValue="scope"> <!-- <template #conductivityRepeatTestValue="scope">
<div class="inpu-text"> <div class="inpu-text">
<el-input @input="val => scope.row.conductivityRepeatTestValue = formatDecimal(val, 5)" :disabled="scope.row.status == 2 || scope.row.status == 4" v-model="scope.row.conductivityRepeatTestValue" /></div> <el-input @input="val => scope.row.conductivityRepeatTestValue = formatDecimal(val, 5)" :disabled="scope.row.status == 2 || scope.row.status == 4" v-model="scope.row.conductivityRepeatTestValue" /></div>
</template> </template> -->
<template #firstTestDate="scope"> <template #firstTestDate="scope">
<div class="inpu-text"> <div class="inpu-text">
<el-date-picker <el-date-picker
@ -426,17 +426,17 @@ export default {
width: 200, width: 200,
}, },
{ // {
label: '复测电导率测量值', // label: '',
prop: 'conductivityRepeatTestValue', // prop: 'conductivityRepeatTestValue',
sortable: true, // sortable: true,
filter: true, // filter: true,
span: 24, // span: 24,
search: false, // search: false,
width: 220, // width: 220,
cell: true // cell: true
}, // },
] ]
}, },
@ -596,7 +596,7 @@ export default {
}) })
}else if(this.data[0].status == 8){ }else if(this.data[0].status == 8){
const requiredFields = [ const requiredFields = [
{ key: 'conductivityRepeatTestValue', label: '复测电导率测量值' }, // { key: 'conductivityRepeatTestValue', label: '' },
{ key: 'repeatTestValue', label: '复测测量值' }, { key: 'repeatTestValue', label: '复测测量值' },
]; ];
// //

@ -267,9 +267,9 @@
<el-col :span="6"> <el-col :span="6">
<span>测量值</span><span>{{ detailForm.repeatTestValue }}</span> <span>测量值</span><span>{{ detailForm.repeatTestValue }}</span>
</el-col> </el-col>
<el-col :span="6"> <!-- <el-col :span="6">
<span>电导率测量值</span><span>{{ detailForm.conductivityRepeatTestValue }}</span> <span>电导率测量值</span><span>{{ detailForm.conductivityRepeatTestValue }}</span>
</el-col> </el-col> -->
<el-col :span="6"> <el-col :span="6">
<span>化验人</span><span>{{ detailForm.repeatTestUserRealName }}</span> <span>化验人</span><span>{{ detailForm.repeatTestUserRealName }}</span>
</el-col> </el-col>

@ -375,15 +375,15 @@ export default {
span: 24, span: 24,
width: 220, width: 220,
}, },
{ // {
label: '复测电导率测量值', // label: '',
prop: 'conductivityRepeatTestValue', // prop: 'conductivityRepeatTestValue',
search: false, // search: false,
sortable: 'custom', // sortable: 'custom',
filter: true, // filter: true,
span: 24, // span: 24,
width: 220, // width: 220,
}, // },
{ {
label: '上次化验时间', label: '上次化验时间',
prop: 'firstTestDate', prop: 'firstTestDate',
@ -859,7 +859,7 @@ export default {
item.actualAddValue = '' item.actualAddValue = ''
item.afterAddTheoryValue = '' item.afterAddTheoryValue = ''
item.repeatTestValue = '' item.repeatTestValue = ''
item.conductivityRepeatTestValue = '' // item.conductivityRepeatTestValue = ''
} }
}) })
this.page.total = res.data.data.total this.page.total = res.data.data.total

Loading…
Cancel
Save