质量管理 质量检验修改

master
LAPTOP-R6EHHS26\86155 1 year ago
parent 0aba07ca3e
commit 0baffada4d

@ -11,7 +11,7 @@
<u-tabs name="cate_name" count="cate_count" :list="list" :is-scroll="false" :current="current" @change="change"></u-tabs>
<view class="list" v-show="current == 0" v-for="(item, index) in listdata" :key="index" @click="linkdetails(item)">
<div class="list-top">
<div class="name">工单号: {{ item.planCode }}</div>
<div class="name">工单号: {{ item.orderCode }}</div>
<div class="tag">{{ item.orderStatus == 0 ? '进行中' : item.orderStatus == 1 ? '已完成' : '已逾期' }}</div>
<u-icon @click="linkdetails(item)" name="arrow-right" color="#2979ff" size="28"></u-icon>
</div>
@ -25,7 +25,7 @@
<view class="list" v-show="current != 0" v-for="(item, index) in detailsdata" :key="index" @click="linkdetailscheck(item)">
<div class="list-top">
<div class="name">工单号: {{ item.planCode }}</div>
<div class="name">工单号: {{ item.orderCode }}</div>
<div class="tag">{{ item.orderStatus == 0 ? '进行中' : item.orderStatus == 1 ? '已完成' : '已逾期' }}</div>
<u-icon @click="linkdetailscheck(item)" name="arrow-right" color="#2979ff" size="28"></u-icon>
</div>

@ -16,7 +16,7 @@
</view>
<view class="list" v-show="current == 0" v-for="(item, index) in listdata" :key="index" @click="linkdetails(item, isorderNo)">
<div class="list-top">
<div class="name">工单号: {{ item.planCode }}</div>
<div class="name">工单号: {{ item.orderCode }}</div>
<div class="tag">{{ item.orderStatus == 0 ? '进行中' : item.orderStatus == 1 ? '已完成' : '已逾期' }}</div>
<u-icon @click="linkdetails(item, isorderNo)" name="arrow-right" color="#2979ff" size="28"></u-icon>
</div>
@ -24,12 +24,13 @@
<div class="item1" style="color: red">设备名称:{{ item.equipmentName }}</div>
<div class="item1">车间编码: {{ item.planWorkshop }}</div>
<div class="item1" style="color: red">周期: {{ item.planLoop }}{{ item.planLoopType == 'month' ? '月' : item.planLoopType == 'day' ? '日' : item.planLoopType == 'year' ? '年' : '周' }}</div>
<div class="item1">创建时间: {{ item.createTime }}</div>
<div class="item1">循环执行时间开始: {{ item.planLoopStart }}</div>
</view>
<view class="list" v-show="current != 0" v-for="(item, index) in detailsdata" :key="index" @click="linkdetailscheck(item, isorderNo)">
<div class="list-top">
<div class="name">工单号: {{ item.planCode }}</div>
<div class="name">工单号: {{ item.orderCode }}</div>
<div class="tag">{{ item.orderStatus == 0 ? '进行中' : item.orderStatus == 1 ? '已完成' : '已逾期' }}</div>
<u-icon @click="linkdetailscheck(item, isorderNo)" name="arrow-right" color="#2979ff" size="28"></u-icon>
</div>
@ -37,7 +38,8 @@
<div class="item1" style="color: red">设备名称:{{ item.equipmentName }}</div>
<div class="item1">车间编码: {{ item.planWorkshop }}</div>
<div class="item1" style="color: red">周期: {{ item.planLoop }}{{ item.planLoopType == 'month' ? '月' : item.planLoopType == 'day' ? '日' : item.planLoopType == 'year' ? '年' : '周' }}</div>
<div class="item1">循环执行时间开始: {{ item.planLoopStart }}</div>
<div class="item1">创建时间: {{ item.createTime }}</div>
<div class="item1">点检时间: {{ item.orderStart }}</div>
</view>
<u-toast ref="uToast" />
</view>

@ -26,7 +26,7 @@
循环结束时间 2023-12-30 执行开始时间
执行结束时间 保养类型 内部
是否停机保养 开机保养 保养人 -->
<div class="item1">计划编码: {{ item.planCode }}</div>
<div class="item1">计划编码: {{ item.orderCode }}</div>
<div class="item1" style="color: red">设备编码:{{ item.equipmentCode }}</div>
<div class="item1" style="color: red">设备名称:{{ item.equipmentName }}</div>
<div class="item1">车间编码: {{ item.planWorkshop }}</div>
@ -44,7 +44,7 @@
<div class="tag">{{ item.orderStatus == 0 ? '待处理' : item.orderStatus == 1 ? '已完成' : item.orderStatus == 2 ? '已逾期' : '进行中' }}</div>
<u-icon @click="linkdetailscheck(item, isorderNo)" name="arrow-right" color="#2979ff" size="28"></u-icon>
</div>
<div class="item1">计划编码: {{ item.planCode }}</div>
<div class="item1">计划编码: {{ item.orderCode }}</div>
<div class="item1" style="color: red">设备编码:{{ item.equipmentCode }}</div>
<div class="item1" style="color: red">设备名称:{{ item.equipmentName }}</div>
<div class="item1">车间编码: {{ item.planWorkshop }}</div>

@ -110,27 +110,26 @@
</u-radio-group>
</div>
</div>
<!-- <div v-for="(item1, index1) in item.standardList" :key="index1">
<div class="item1 item2" v-if="item1.standardType == 'qualitative'">
<div>检查标准: {{ item1.standardName }}</div>
<div class="select">
<u-radio-group v-model="item1.detailReach" @change="radioGroupChange(item1, item1.detailReach, index, index1)">
<u-radio @change="radioChange" v-for="(n, indexn) in listselect" :key="indexn" :name="n.type" :disabled="n.disabled">
{{ n.name }}
</u-radio>
</u-radio-group>
</div>
</div>
<div class="item1 item2" v-if="item1.standardType == 'quantify'">
<div>检查标准: {{ item1.standardName }}</div>
<div class="input-box" id="input-box1">
实际值:
<input class="input" v-model="item1.actualValue" @focus="focus()" @blur="blur(item1, item1.actualValue, index, index1)" @change="changeinput(item1)" @input="input(item1)" type="text" name="" id="" />
单位:mm
</div>
</div>
</div> -->
<div class="upload-name">
<!-- <div class="name">检查标准:{{ form.item5 }}</div> -->
<!-- <u-upload :before-upload="beforeUpload" ref="uUpload" :fileList="fileList" @on-error='errorUpload($event)' :action="action" @on-remove="removePic($event, item)" @on-success="successUpload($event)" :deletable="true"></u-upload> -->
<scroll-view class="scroll-view_H" scroll-x="true" :scroll-left="scrollLeft(item.files)">
<view class="photoList">
<view class="itemBox photoBox" v-for="(img, index1) in item.files" :key="index1">
<view class="closeBtn" @click="deleteImg(index1)">
<image class="img" src="../../../static/images/iconCloseGray.svg" mode="scaleToFill"></image>
</view>
<image class="img" :src="img" mode="aspectFit" @click="showScreenImg(index1, item.files)"></image>
</view>
<view class="itemBox chooseBtn" @click="chooseImg(index, item.files)">
<view class="inner">
<image class="img" src="../../../static/images/upload-pic-icon.svg" mode="scaleToFill"></image>
<text class="desc">添加照片</text>
</view>
</view>
</view>
</scroll-view>
</div>
</view>
</view>
<!-- sampleQuality抽样数量
@ -307,6 +306,7 @@ export default class PurchaseWHSRM extends BasePage {
isshow2 = false;
isshow3 = false;
incomeBatchNo: any = {};
files: any = [];
//
tagClick(index) {
this.tagslist.splice(index, 1);
@ -381,6 +381,7 @@ export default class PurchaseWHSRM extends BasePage {
item.factoryCode = session.PoolName;
item.checkType = this.selectList.value;
item.orderCode = this.clickitem.orderNo;
item.files = [];
});
this.show = true;
}
@ -474,6 +475,13 @@ export default class PurchaseWHSRM extends BasePage {
this.isquality = true;
}
});
this.detaillistceshi.forEach((item) => {
if (item.files.length > 0) {
item.files = [];
} else {
item.files = [];
}
});
console.log(this.detaillistceshi, this.isvalue, this.isquality);
if (this.isvalue) {
(this.$refs.uToast as any).show({
@ -513,9 +521,11 @@ export default class PurchaseWHSRM extends BasePage {
sampleQuality: this.formdata.sampleQuality,
updateBy: session.userName,
factoryCode: session.PoolName,
updateByName: session.userName,
typeCode: this.selectList.value,
checkType: this.selectList.value,
orderCode: this.clickitem.orderNo,
workorderCodeSap: this.clickitem.workorderCodeSap,
qcCheckTaskDetails: this.detaillistceshi,
defects: this.detaillistdefects,
incomeBatchNo: incomeBatchNo,
@ -557,6 +567,101 @@ export default class PurchaseWHSRM extends BasePage {
this.tagsvalue = null;
}
//
//
scrollLeft(files) {
return 222 * (files.length + 1);
}
showScreenImg(i, files) {
let list = files;
uni.previewImage({
current: i,
urls: list,
// loop: true
});
}
chooseImg(index, files) {
uni.chooseImage({
count: 9, //9
// sizeType: ['original', 'compressed'], //
sourceType: ['album', 'camera'],
success: (res) => {
// uni.showLoading();
//console.log('/////',res);
let tempFilePaths: any = res.tempFilePaths;
console.log(res.tempFilePaths);
// (this.$refs.uToast as any).show({
// title: '',
// type: 'success',
// });
// uni.navigateBack({});
// } else {
// (this.$refs.uToast as any).show({
// title: '',
// type: 'error',
// });
tempFilePaths.map((item) => {
uni.uploadFile({
// url: 'http://192.168.202.20:9000/prod-api/file/upload',
url: '/dev-api/file/upload',
fileType: 'image',
filePath: item,
header: {
Authorization: 'Bearer ' + session.user?.access_token,
// 'cosmo-env-sitecode': this.$store.state.siteCode
},
name: 'file',
// formData: {
// materialCode: this.materialObj.materialCode,
// },
success: (res) => {
uni.hideLoading();
if (!res.data) {
// this.$refs.toastRef.show({
// type:"error",
// text:res.msg
// })
return;
}
let data = JSON.parse(res.data);
files = [...files, data.data.url];
this.detaillistceshi[index].files = files;
this.detaillistceshi[index].fileListStr = files.join(',');
//this.filesName = [...this.filesName,data.fileName];
//this.picUrls = this.files.join(",");
//this.picNames = this.filesName.join(",");
console.log(files, this.detaillistceshi[index]);
uni.hideLoading();
},
fail: (err) => {
console.log(err);
// this.$refs.toastRef.show({
// type:"error",
// text:""
// })
uni.hideLoading();
},
});
});
},
});
}
deleteImg(index) {
this.detaillistceshi[index].files.splice(index, 1);
this.detaillistceshi[index].fileListStr = this.detaillistceshi[index].files.join(',');
}
scanCodeOne() {
uni.scanCode({
scanType: ['barCode'],
success: (res) => {
this.orderNo = res.result;
},
fail(result) {
this.customToast(result);
},
});
}
}
</script>
<style lang="scss" scoped>

@ -87,26 +87,25 @@
</u-radio-group>
</div>
</div>
<!-- <div v-for="(item1, index1) in item.standardList" :key="index1">
<div class="item1 item2" v-if="item1.standardType == 'qualitative'">
<div>检查标准: {{ item1.standardName }}</div>
<div class="select">
<u-radio-group v-model="item1.detailReach" @change="radioGroupChange(item1, item1.detailReach, index, index1)">
<u-radio @change="radioChange" v-for="(n, indexn) in listselect" :key="indexn" :name="n.type" :disabled="n.disabled">
{{ n.name }}
</u-radio>
</u-radio-group>
</div>
</div>
<div class="item1 item2" v-if="item1.standardType == 'quantify'">
<div>检查标准: {{ item1.standardName }}</div>
<div class="input-box" id="input-box1">
实际值:
<input class="input" v-model="item1.actualValue" @focus="focus()" @blur="blur(item1, item1.actualValue, index, index1)" @change="changeinput(item1)" @input="input(item1)" type="text" name="" id="" />
单位:mm
</div>
</div>
</div> -->
<div class="upload-name">
<!-- <u-upload :before-upload="beforeUpload" ref="uUpload" :fileList="fileList" @on-error='errorUpload($event)' :action="action" @on-remove="removePic($event, item)" @on-success="successUpload($event)" :deletable="true"></u-upload> -->
<scroll-view class="scroll-view_H" scroll-x="true" :scroll-left="scrollLeft(item.fileList)">
<view class="photoList">
<view class="itemBox photoBox" v-for="(img, index) in item.fileList" :key="index">
<!-- <view class="closeBtn" @click="deleteImg(index)">
<image class="img" src="../../../static/images/iconCloseGray.svg" mode="scaleToFill"></image>
</view> -->
<image class="img" :src="img" mode="aspectFit" @click="showScreenImg(index, item.fileList)"></image>
</view>
<view class="itemBox chooseBtn">
<!-- <view class="inner">
<image class="img" src="../../../static/images/upload-pic-icon.svg" mode="scaleToFill"></image>
<text class="desc">添加照片</text>
</view> -->
</view>
</view>
</scroll-view>
</div>
</view>
</view>
<u-form class="Belowsform3" ref="form" label-width="230rpx" label-position="left">
@ -336,6 +335,16 @@ export default class PurchaseWHSRM extends BasePage {
console.log(query, this.detailsinfo);
await this.model.getCheckTaskList(query);
this.detaillistceshi = this.model.CheckTaskList.qcCheckTaskDetails;
this.detaillistceshi.forEach((item) => {
item.fileList = [];
if (item.files == null) {
item.files = [];
} else {
item.files.forEach((n) => {
item.fileList.push(n.fileAddress);
});
}
});
this.detaillistdefects = this.model.CheckTaskList.defects;
this.show = true;
}
@ -430,6 +439,89 @@ export default class PurchaseWHSRM extends BasePage {
this.isshow = false;
this.tagsvalue = null;
}
scrollLeft(files) {
return 222 * (files.length + 1);
}
showScreenImg(i, files) {
let list = files;
uni.previewImage({
current: i,
urls: list,
// loop: true
});
}
chooseImg(index, files) {
uni.chooseImage({
count: 9, //9
// sizeType: ['original', 'compressed'], //
sourceType: ['album', 'camera'],
success: (res) => {
// uni.showLoading();
//console.log('/////',res);
let tempFilePaths: any = res.tempFilePaths;
console.log(res.tempFilePaths);
// (this.$refs.uToast as any).show({
// title: '',
// type: 'success',
// });
// uni.navigateBack({});
// } else {
// (this.$refs.uToast as any).show({
// title: '',
// type: 'error',
// });
tempFilePaths.map((item) => {
uni.uploadFile({
// url: 'http://192.168.202.20:9000/prod-api/file/upload',
url: '/prod-api/file/upload',
fileType: 'image',
filePath: item,
header: {
Authorization: 'Bearer ' + session.user?.access_token,
// 'cosmo-env-sitecode': this.$store.state.siteCode
},
name: 'file',
// formData: {
// materialCode: this.materialObj.materialCode,
// },
success: (res) => {
uni.hideLoading();
if (!res.data) {
// this.$refs.toastRef.show({
// type:"error",
// text:res.msg
// })
return;
}
let data = JSON.parse(res.data);
files = [...files, data.data.url];
this.detaillistceshi[index].files = files;
this.detaillistceshi[index].fileListStr = files.join(',');
//this.filesName = [...this.filesName,data.fileName];
//this.picUrls = this.files.join(",");
//this.picNames = this.filesName.join(",");
console.log(files, this.detaillistceshi[index]);
uni.hideLoading();
},
fail: (err) => {
console.log(err);
// this.$refs.toastRef.show({
// type:"error",
// text:""
// })
uni.hideLoading();
},
});
});
},
});
}
deleteImg(index) {
this.detaillistceshi[index].files.splice(index, 1);
this.detaillistceshi[index].fileListStr = this.detaillistceshi[index].files.join(',');
}
//
}
</script>

@ -65,7 +65,7 @@ export default class RawHome extends BasePage {
model = model;
src: 'http://pic2.sc.chinaz.com/Files/pic/pic9/202002/hpic2119_s.jpg';
today = dayjs().format('YYYY-MM-DD dddd');
version = '0.0.30';
version = '0.0.31';
checkversion: any = {};
sessiondata: any = '';
onLoad() {

Loading…
Cancel
Save