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

dev-scheduling
zhangdi 3 days ago
commit bd1078f8c1
  1. 9
      src/api/qualityManagement/productionTesting/productionQuality.js
  2. 28
      src/views/costStatistics/index.vue
  3. 4
      src/views/oem/oemOrderSettlement/components/settlementAnomaly.vue
  4. 93
      src/views/productionTesting/productionQuality.vue
  5. 6
      src/views/qualityManagement/inspectionArchiving/ERecord/printDialog.vue
  6. 52
      src/views/qualityManagement/inspectionArchiving/auditFile/index.vue
  7. 7
      src/views/qualityManagement/tankSolutionSystem/components/batchDialog.vue

@ -143,3 +143,12 @@ export const getParamRemind = (data) =>{
data
})
}
// 获取零件子件
export const getPartChild = (params) =>{
return request({
url:'/api/blade-desk/dsPart/detail',
method:'get',
params
})
}

@ -117,7 +117,7 @@ export default {
tip: false,
simplePage: true,
searchShow: true,
searchMenuSpan: 18,
searchMenuSpan: 12,
searchIcon: true,
searchIndex: 3,
tree: false,
@ -178,6 +178,18 @@ export default {
overHidden: true,
width:80,
},
{
label:"交付中心",
prop:"jcId",
type:'select',
dicUrl:"/api/blade-system/dict/dictionary?code=workCenterJfCenter",
props:{
label:"dictValue",
value:"dictKey"
},
search: true,
width:110
},
{
label: '制造费用(元)',
prop: 'productCost',
@ -214,6 +226,15 @@ export default {
sortable: 'custom',
overHidden: true,
},
{
label:'erp作业中心材料费用(元)',
prop:'erpWorkCenterMaterialCost',
search:false,
width: 180,
sortable: false,
sortable: 'custom',
overHidden: true,
},
{
label: '单位成本(元)',
prop: 'unitCost',
@ -586,7 +607,11 @@ export default {
size:this.page.pageSize,
...this.query
}).then(res =>{
res.data.data.records.map(item =>{
item.jcId = item.jcId != -1 ? item.jcId + '' : ''
})
this.data = res.data.data.records
console.log('data---------',this.data)
this.page.total = res.data.data.total
this.loading = false
@ -599,6 +624,7 @@ export default {
workCenterId:this.data[0].workCenterId
}).then(res =>{
console.log('res---------',res)
this.detailData = res.data.data
this.$refs.crud.setCurrentRow(this.data[0]);
// this.handleCurrentRowChange(this.data[0]);

@ -566,7 +566,9 @@ export default {
price: this.form && this.form.price,
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],
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 && this.query.memo.indexOf(',') != -1 ? this.query.memo.split(',').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;

@ -144,6 +144,7 @@
:expand-row-keys="expandedRowKeys"
@expand-change="handleExpandChange"
:default-expand-all="false"
:cell-class-name="tableClassName"
>
<!-- && vxeTableData.find(item => item.item.name == '尺寸检测').wpItemDetailList &&
vxeTableData.find(item => item.item.name == '尺寸检测').wpItemDetailList.length > 0 -->
@ -179,6 +180,9 @@
</template>
</el-table-column>
<el-table-column label="镀前镀后" prop="testType" align="center">
<template #header>
<span><i style="color: red">*</i>镀前镀后</span>
</template>
<template #default="scope1">
<!-- <el-input v-model="scope1.row.testType"
:disabled="scope.row.checkUserRealName != null && scope.row.checkUserRealName != '' "
@ -240,6 +244,9 @@
</template>
</el-table-column> -->
<el-table-column label="测量值1" prop="gaugeValue1" align="center">
<template #header>
<span><i style="color: red">*</i>镀前镀后</span>
</template>
<template #default="scope1">
<el-input v-model="scope1.row.gaugeValue1" :disabled="scope.row.checkUserRealName != null && scope.row.checkUserRealName != '' "></el-input>
</template>
@ -501,23 +508,31 @@
</template>
</el-table-column>
</el-table>
<!-- -->
<el-descriptions v-if="dialogData.ppsName == '烧结包装防护'" title="子件" :column="5" border style="margin-top: 24px"></el-descriptions>
<!-- v-if="dialogData.ppsName == '烧结包装防护'" -->
<el-descriptions title="子件" :column="5" border style="margin-top: 24px"></el-descriptions>
<!-- v-if="dialogData.ppsName == '烧结包装防护'" -->
<el-table :data="vxeTableData1" show-overflow-tooltip>
<el-table-column label="子件号" prop="partCode" align="center"></el-table-column>
<el-table-column label="子件名称" prop="partName" align="center"></el-table-column>
<el-table-column label="数量" prop="qty" align="center"></el-table-column>
<el-table-column label="数量" prop="quota" align="center"></el-table-column>
<el-table-column label="产品型号" prop="productType" align="center"></el-table-column>
<el-table-column label="子件类型" prop="sinTerType" align="center"></el-table-column>
<el-table-column label="子件类型" prop="sinTerType" align="center">
<template #default="scope">
<span v-if="scope.row.sinTerType == 1">插针</span>
<span v-if="scope.row.sinTerType == 2">壳体</span>
<span v-if="scope.row.sinTerType == 5">石墨模</span>
<span v-if="scope.row.sinTerType == 3">自制玻璃饼</span>
<span v-if="scope.row.sinTerType == 4">其他</span>
</template>
</el-table-column>
<el-table-column label="镀种" prop="plate" align="center"></el-table-column>
<el-table-column label="材料" prop="material" align="center"></el-table-column>
<el-table-column label="面积(d㎡)" prop="area" align="center"></el-table-column>
<el-table-column label="总面积(d㎡)" prop="totalArea" align="center"> </el-table-column>
<el-table-column label="镀层代码" prop="matCode" align="center"></el-table-column>
<el-table-column label="镀层代码" prop="plateCode" align="center"></el-table-column>
<el-table-column label="镀层厚度" prop="plateThickness" align="center"></el-table-column>
<el-table-column label="备注" prop="remarks" align="center"></el-table-column>
<el-table-column label="修改人" prop="lastUpdateUser" align="center"></el-table-column>
<el-table-column label="修改人" prop="updateUserStr" align="center"></el-table-column>
</el-table>
<template #footer>
@ -539,7 +554,7 @@
<script>
import {dateFormat} from '@/utils/date'
import {createInspection,getInspectionList,getInspectionDetail,fillInspection,getSameLotList,applySameLot,
refreshHardness,getThicknessList,goQualityRecord,goCertificate,getSubPackageList, getSupplierList,getMeasurement,
refreshHardness,getThicknessList,goQualityRecord,goCertificate,getSubPackageList,getPartChild, getSupplierList,getMeasurement,
getCodeRemind,getParamRemind} from '@/api/qualityManagement/productionTesting/productionQuality.js'
import sametankView from './components/sametankView.vue';
import { mapGetters } from 'vuex';
@ -1113,12 +1128,15 @@ export default {
row.ruleSize = val && item && item.norms
row.dueDate = val && item && item.dueDate
},
tableClassName({ row, column, rowIndex, columnIndex }){
if(column.property === 'testQty'){
console.log('row.testQty=============',row.testQty)
if(row.testQty > this.dialogData.poQty * 0.01){
return 'high_td';
}
}
},
cellClassName({ row, column, rowIndex, columnIndex }) {
console.log('row=============',row)
console.log('column=============',column)
console.log('rowIndex=============',rowIndex)
console.log('columnIndex=============',columnIndex)
if(column.property == 'gaugeValue7'){
if(row.codeStatus == true){
return 'high_td';
@ -1509,19 +1527,27 @@ export default {
item.wpItemDetailList = [...this.thicknessData]
}
})
console.log('detailInfo------------------',this.detailInfo)
fillInspection(this.detailInfo).then(res =>{
if(res.data.code == 200){
this.$message.success('保存成功')
this.showDialog = false
this.isStart = false
this.getDChyData = []
clearInterval(this.ydInterval)
clearInterval(this.firstInterval)
clearInterval(this.secondInderval)
this.onLoad()
let ruleTmp = this.detailInfo.wpItemList.find(item => item.item.name == '尺寸检测')
if(ruleTmp){
let tmp = ruleTmp.wpItemDetailList.find(item => !item.actMtId || !item.testType || !item.gaugeValue1)
if(tmp){
this.$message.error('尺寸信息请补充完整')
return
}
})
}
console.log('detailInfo------------------',this.detailInfo)
// fillInspection(this.detailInfo).then(res =>{
// if(res.data.code == 200){
// this.$message.success('')
// this.showDialog = false
// this.isStart = false
// this.getDChyData = []
// clearInterval(this.ydInterval)
// clearInterval(this.firstInterval)
// clearInterval(this.secondInderval)
// this.onLoad()
// }
// })
},
//
@ -1716,11 +1742,20 @@ export default {
// if(this.dialogData.ppsName === ''){
getSubPackageList({
yoId:res.data.data.orderInfo.yoId
}).then(res3 =>{
this.vxeTableData1 = res3.data.data
console.log('vxeTableData1------------------',this.vxeTableData1)
// getSubPackageList({
// yoId:res.data.data.orderInfo.yoId
// }).then(res3 =>{
// this.vxeTableData1 = res3.data.data
// console.log('vxeTableData1------------------',this.vxeTableData1)
// })
getPartChild({
partCode:this.dialogData.partCode,
partVersion:1,
rank:2
}).then(res =>{
console.log('res-------------',res)
this.vxeTableData1 = res.data.data.dsPartVOList
})
// }
console.log('vxeTableData-------------',this.vxeTableData)

@ -145,8 +145,8 @@
</tr>
<tr v-if="item.deviceCode && item.deviceCode != ''">
<td colspan="1">设备编号</td>
<td colspan="4">{{item.deviceCode || '/'}}</td>
<td colspan="1">有效期</td>
<td colspan="3">{{item.deviceCode || '/'}}</td>
<td colspan="2">有效期</td>
<td colspan="3">/</td>
</tr>
<tr v-if="item.slotList && item.slotList.length>0">
@ -638,7 +638,7 @@ export default {
if (this.modelTwo[i].procedureSet.ppsName.indexOf('检验') != -1) {
if (testWorkPlan == null) {
testWorkPlan = this.modelTwo[i];
if (this.modelThree && this.modelThree.checkList) {
if (this.modelThree && this.modelThree.checkList && this.modelThree.checkList.length > 0) {
const item = this.modelThree.checkList.find(
(item) =>
item.testOrders.indexOf(testWorkPlan.orders + '-') != -1

@ -21,7 +21,29 @@
:permission="getPermission"
:before-open="beforeOpen"
@sort-change="sortChange"
></avue-crud>
>
<template #caId-form="{ type }">
<span v-show="type == 'edit' || type == 'add'">
<jhSelect
:value="form.caId"
@input="val => (form.caId = val)"
placeholder="请搜索选择"
api-url="/blade-desk/BA/craftAbility/list"
echo-api="/blade-desk/BA/craftAbility/list"
echoParamsKey="ids"
echo-method="get"
api-method="get"
list-key="records"
total-key="total"
label-key="caName"
value-key="id"
search-key="caName"
:debounce-time="500"
:title="'修改'"
/>
</span>
</template>
</avue-crud>
</basic-container>
</template>
@ -97,7 +119,7 @@ export default {
// },
column: [
{
label: '工序名称',
label: '工序',
prop: 'ppsId',
labelWidth: 150,
// bind: 'bsProcedureSet.ppsName',
@ -114,6 +136,13 @@ export default {
value: 'id',
res: 'data.records',
},
rules: [
{
required: true,
message: '请选择工序',
trigger: 'click',
},
],
},
{
label: '作业中心',
@ -138,6 +167,22 @@ export default {
},
],
},
{
label: '工艺能力',
prop: 'caId',
width: 150,
labelWidth: 150,
search: false,
sortable: 'custom',
filterable: true,
span: 24,
// type: 'select',
// dicUrl: '/api/blade-desk/BA/WorkCenter/listForSelect',
// props: {
// label: 'wcName',
// value: 'id',
// },
},
{
label: '生产标识',
prop: 'pqId',
@ -294,7 +339,8 @@ export default {
referenceFile:row.referenceFile,
wcId:row.wcId,
papers:row.papers,
prodApplyArea:row.prodApplyArea
prodApplyArea:row.prodApplyArea,
caId:row.caId,
}
addFile(params).then(res =>{
if(res.data.code == 200){

@ -83,7 +83,7 @@
</template>
<template #needAddValue="scope">
<div class="inpu-text">
<el-input style="margin-top:9px;" @input="val => scope.row.needAddValue = formatDecimal(val, 5)" :disabled="scope.row.status == 8 || scope.row.status == 2 || scope.row.status == 4" v-model="scope.row.needAddValue" />
<el-input style="margin-top:9px;" @input="val => scope.row.needAddValue = formatDecimal(val, 5)" disabled v-model="scope.row.needAddValue" />
<i>({{scope.row.liquidTank.addUnit}})</i>
</div>
</template>
@ -96,7 +96,7 @@
<!-- 复测测量值 -->
<template #repeatTestValue="scope">
<div class="inpu-text">
<el-input style="margin-top:9px;" @input="val => scope.row.repeatTestValue = formatDecimal(val, 5)" :disabled="scope.row.status == 2 || scope.row.status == 4" v-model="scope.row.repeatTestValue" />
<el-input style="margin-top:9px;" @input="val => scope.row.repeatTestValue = formatDecimal(val, 5)" :disabled="scope.row.status == 2 || scope.row.status == 4 || scope.row.status == 12" v-model="scope.row.repeatTestValue" />
<i>({{scope.row.liquidTank.testUnit}})</i>
</div>
</template>
@ -541,6 +541,9 @@ export default {
},
//
handleSave(){
this.data.map(item => {
item.firstTestDate = item.firstTestDate ? item.firstTestDate : ''
})
saveDrugBat(this.data).then(res =>{
if(res.data.code == 200){
this.$message.success('暂存成功')

Loading…
Cancel
Save