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

dev-scheduling
zhangdi 3 months ago
commit 4450c943f5
  1. 47
      src/api/equiptManagement/equipmentLedger.js
  2. 64
      src/api/equiptManagement/recorderList.js
  3. 75
      src/api/equiptManagement/workwearManagement.js
  4. 9
      src/api/qualityManagement/inspectionArchiving/auditFile.js
  5. 10
      src/api/qualityManagement/productionTesting/productionQuality.js
  6. 6
      src/axios.js
  7. 17
      src/views/equiptManagement/equipmentLedger/formIp.vue
  8. 330
      src/views/equiptManagement/equipmentLedger/index.vue
  9. 324
      src/views/equiptManagement/workwearManagement/columnData.js
  10. 306
      src/views/equiptManagement/workwearManagement/index.vue
  11. 7
      src/views/orderManagement/components/mold/addMoldDailog.vue
  12. 2
      src/views/periodicTesting/components/addTestProjectDialog.vue
  13. 2
      src/views/periodicTesting/components/viewDialog.vue
  14. 47
      src/views/periodicTesting/projectCycle.vue
  15. 5
      src/views/periodicTesting/testTask.vue
  16. 75
      src/views/productionDisposition/hearingDialog.vue
  17. 11
      src/views/productionDisposition/patternDialog.vue
  18. 5617
      src/views/productionTesting/components/sametankView.vue
  19. 39757
      src/views/productionTesting/productionQuality.vue
  20. 89
      src/views/qualityManagement/inspectionArchiving/auditFile/index.vue
  21. 92
      src/views/qualityManagement/inspectionArchiving/rbFilePreserve/index.vue
  22. 2
      src/views/qualityManagement/inspectionArchiving/rbFilePreserve/templatePreserve.vue
  23. 54
      src/views/qualityManagement/reviewFormMess/index.vue
  24. 215
      src/views/qualityManagement/reviewFormMess/options.js
  25. 1068
      src/views/recorderList/index.vue

@ -0,0 +1,47 @@
import request from '@/axios';
// 获取设备列表
export const getList = (params) => {
return request({
url: '/api/blade-desk/equipment/page',
method: 'get',
params
});
};
// 新增设备
export const addDevice = (data) => {
return request({
url: '/api/blade-desk/equipment/save',
method: 'post',
data
});
};
// 修改设备
export const editDevice = (data) =>{
return request({
url:'/api/blade-desk/equipment/update',
method:'post',
data
})
}
// 设备详情
export const getDetail = (params) =>{
return request({
url:'/api/blade-desk/equipment/detail',
method:'get',
params
})
}
// 删除设备
export const deleteDevice = (params) =>{
return request({
url:'/api/blade-desk/equipment/remove',
method:'post',
params
})
}

@ -0,0 +1,64 @@
import request from '@/axios';
// 获取记录仪列表
export const getRecorderList = (params) =>{
return request({
url: '/api/blade-desk/recorderType/page',
method: 'get',
params
});
}
// 记录仪新增
export const addRecorder = (data) =>{
return request({
url: '/api/blade-desk/recorderType/save',
method: 'post',
data
});
}
// 记录仪修改
export const updateRecorder = (data) =>{
return request({
url: '/api/blade-desk/recorderType/update',
method: 'post',
data
});
}
// 记录仪删除
export const deleteRecorder = (params) =>{
return request({
url: '/api/blade-desk/recorderType/remove',
method: 'post',
params
});
}
// 记录仪明细
export const getRecorderDetail = (params) =>{
return request({
url: '/api/blade-desk/recorderType/detail',
method: 'get',
params
});
}
// 打包周期新增
export const addpackCycle = (data) =>{
return request({
url: '/api/blade-desk/packCycle/save',
method: 'post',
data
});
}
// 打包周期详情
export const getpackCycleDetail = (params) =>{
return request({
url: '/api/blade-desk/packCycle/detail',
method: 'get',
params
});
}

@ -0,0 +1,75 @@
import request from '@/axios';
// 获取飞靶列表
export const getFeiBaSetList = (params) => {
return request({
url: '/api/blade-desk/feiBaSet/page',
method: 'get',
params,
});
}
// 新增飞靶
export const addFeiBaSet = (data) => {
return request({
url: '/api/blade-desk/feiBaSet/save',
method: 'post',
data,
});
}
// 编辑飞靶
export const editFeiBaSet = (data) => {
return request({
url: '/api/blade-desk/feiBaSet/update',
method: 'post',
data,
});
}
// 删除飞靶
export const deleteFeiba = (params) =>{
return request({
url:'/api/blade-desk/feiBaSet/remove',
method:'post',
params
})
}
// 挂具列表
export const getRackSetList = (params) =>{
return request({
url:'/api/blade-desk/rackSet/page',
method:'get',
params
})
}
// 新增挂具
export const addRackSet = (data) =>{
return request({
url:'/api/blade-desk/rackSet/save',
method:'post',
data,
});
}
// 修改挂具
export const editRackSet = (data) =>{
return request({
url:'/api/blade-desk/rackSet/update',
method:'post',
data
})
}
// 删除挂具
export const deleteRackSet = (params) =>{
return request({
url:'/api/blade-desk/rackSet/remove',
method:'post',
params
})
}
// 获取状态

@ -25,4 +25,13 @@ export const deleteFile = (params) =>{
method:"post",
params
})
}
// 升版
export const upgradeFile = (data) =>{
return request({
url:"/api/blade-desk/QA/AuditFile/upgradeVer",
method:"post",
data
})
}

@ -0,0 +1,10 @@
import request from '@/axios';
// 获取主加工单位-供应商下拉列表
export const getSupplierList = (params) => {
return request({
url: '/api/blade-desk/BA/Oem/listForSelect',
method: 'get',
params
});
};

@ -114,9 +114,9 @@ axios.interceptors.response.use(
const statusWhiteList = website.statusWhiteList || [];
const message = res.data.msg || res.data.error_description || '系统错误';
//防止项目中使用res.code接入的判断
if (code) {
res.code = code;
}
// if (code) {
// res.code = code;
// }
//如果在白名单里则自行catch逻辑处理
if (statusWhiteList.includes(status)) return Promise.reject(res);

@ -1,6 +1,6 @@
<template>
<el-dialog title="修改" v-model="setCrewShow" :before-close="cancel" width="500px" @open="open">
<avue-form :option="option"></avue-form>
<avue-form :option="option" v-model="formData" ref="form"></avue-form>
<!-- <el-form ref="form" :model="formData" class="vd-form" label-width="100px" size="mini">
<el-form-item :label="$t('equipment.deviceIp')" prop="deviceIp">
<el-input v-model="formData.deviceIp" />
@ -19,6 +19,7 @@
</el-dialog>
</template>
<script>
import {editDevice} from "@/api/equiptManagement/equipmentLedger"
export default {
props: {
showIp: {
@ -65,7 +66,19 @@ export default {
// }
},
submit() {
this.setCrewShow = false
this.$refs.form.validate((valid, done, msg) => {
editDevice({
id:this.ecId,
deviceIp:this.formData.deviceIp
}).then(res =>{
if(res.data.code == 200){
this.$message.success('修改成功');
this.cancel(true);
}
})
})
// this.setCrewShow = false
// this.$ajax.post('equipmentCard/addOrEdit', this.formData).then((res) => {
// if (this.$ifAjax(res)) {
// this.$message.success(this.$t('videaVueLib.publics.message.success'));

@ -6,8 +6,14 @@
:data="data"
v-model="form"
v-model:page="page"
:before-open="beforeOpen"
ref="crud"
@row-del="rowDel"
:upload-after="uploadAfter"
:upload-exceed="uploadExceed"
:upload-delete="uploadDelete"
@row-save="rowSave"
@row-update="rowUpdate"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@ -20,11 +26,11 @@
<template #menu-right="{ size }"> </template>
<template #menu="scope">
<el-button type="primary" link @click="editIP(scope.row.ecId)">修改IP</el-button>
<el-button type="primary" link @click="editIP(scope.row)">修改IP</el-button>
</template>
<template #virtualMac="scope">
<span>
{{ scope.row.virtualMac ? "是" : "否" }}
{{ scope.row.virtualMac == 1 ? "是" : "否" }}
</span>
</template>
<template #virtualMac-form="{ type, disabled }">
@ -49,6 +55,7 @@
</template>
<script>
import { getLazyList, remove, update, add, getMenu } from "@/api/system/menu";
import { getList,addDevice,editDevice,getDetail,deleteDevice } from "@/api/equiptManagement/equipmentLedger"
import { mapGetters } from "vuex";
import {
@ -124,7 +131,7 @@ export default {
rules: [
{
required: true,
message: "请输入名称分类",
message: "请输入设备编码",
trigger: "blur",
},
],
@ -137,23 +144,26 @@ export default {
rules: [
{
required: true,
message: "请选择镀种分类",
message: "请选择设备名称",
trigger: "click",
},
],
width: 200,
},
{
label: "设备分类",
prop: "categorys",
prop: "category",
sortable: true,
search: true,
rules: [
{
required: true,
message: "请选择镀种分类",
trigger: "click",
},
],
addDisplay:false,
editDisplay:false,
// rules: [
// {
// required: true,
// message: "",
// trigger: "click",
// },
// ],
},
{
label: "类别名称",
@ -163,14 +173,16 @@ export default {
rules: [
{
required: true,
message: "请选择镀种分类",
message: "请选择类别名称",
trigger: "click",
},
],
width:200,
overHidden: true,
},
{
label: "服役状态",
prop: "usedText",
prop: "used",
sortable: true,
search: true,
type: "select",
@ -180,7 +192,7 @@ export default {
value: 1,
},
{
label: "停服役",
label: "停服役",
value: 2,
},
],
@ -217,6 +229,8 @@ export default {
prop: "deviceIp",
sortable: true,
search: false,
addDisplay:false,
editDisplay:false,
rules: [
{
required: true,
@ -239,7 +253,7 @@ export default {
},
{
label: "否",
value: 2,
value: 0,
},
],
},
@ -256,15 +270,16 @@ export default {
},
{
label: "设备仿真图",
prop: "imgUrl",
prop: "attachLink",
listType: "picture-card",
type: "upload",
span: 24,
limit: 1,
fileSize: 10000,
action: "",
action: "/api/blade-resource/oss/endpoint/put-file-attach",
hide: true,
tip: "只能上传 image/gif,image/jpeg,image/jpg,image/png 附件,且不超过 10M",
accept: 'image/png, image/jpeg,image/gif,image/jpg',
},
],
},
@ -290,15 +305,15 @@ export default {
},
},
methods: {
editIP(ecId) {
this.ecId = ecId;
editIP(row) {
this.ecId = row.id;
this.showIp = true;
},
cancel(isRefresh) {
this.showIp = false;
this.isOpen = false;
if (isRefresh) {
this.refresh();
this.refreshChange();
}
},
//
@ -314,12 +329,6 @@ export default {
}
this.setCrewOpen = false;
},
initData() {
// getMenuTree().then(res => {
// const column = this.findObject(this.option.column, 'parentId');
// column.dicData = res.data.data;
// });
},
handleAdd(row) {
this.parentId = row.id;
const column = this.findObject(this.option.column, "parentId");
@ -329,58 +338,67 @@ export default {
},
//
rowSave(row, done, loading) {
// add(row).then(
// res => {
// //
// const data = res.data.data;
// row.id = data.id;
// this.$message({
// type: 'success',
// message: '!',
// });
// //
// done(row);
// },
// error => {
// window.console.log(error);
// loading();
// }
// );
let params = {
deviceCode: row.deviceCode,
deviceName: row.deviceName,
macSpec: row.macSpec,
memo: row.memo,
rfId: row.rfId,
typeName: row.typeName,
used: row.used,
virtualMac: row.virtualMac ? 1 : 0,
attachLink:row.attachLink.length > 0 ? row.attachLink[0] : ''
}
addDevice(params).then(res => {
if(res.data.code == 200){
this.$message.success('新增成功')
done(row)
this.onLoad()
}else{
this.$message.error(res.data.message)
}
})
},
//
rowUpdate(row, index, done, loading) {
// update(row).then(
// () => {
// this.$message({
// type: 'success',
// message: '!',
// });
// //
// done(row);
// },
// error => {
// window.console.log(error);
// loading();
// }
// );
let params = {
id:row.id,
deviceCode: row.deviceCode,
deviceName: row.deviceName,
macSpec: row.macSpec,
memo: row.memo,
rfId: row.rfId,
typeName: row.typeName,
used: row.used,
virtualMac: row.virtualMac ? 1 : 0,
attachLink:row.attachLink.length > 0 ? row.attachLink[0] : ''
}
editDevice(params).then(res => {
if(res.data.code == 200){
this.$message.success('修改成功')
done()
this.onLoad()
}else{
this.$message.error(res.data.message)
done()
}
})
},
rowDel(row, index, done) {
this.$confirm("确定将选择数据删除?", {
confirmButtonText: "确定",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
return remove(row.id);
}).then(() => {
deleteDevice({ids:row.id}).then(res =>{
if(res.data.code == 200){
this.$message.success('删除成功')
done()
this.onLoad()
}
})
.then(() => {
this.$message({
type: "success",
message: "操作成功!",
});
//
done(row);
});
})
},
//
searchReset() {
@ -407,21 +425,27 @@ export default {
},
// beforeOpen
beforeOpen(done, type) {
if (["add", "edit"].includes(type)) {
this.initData();
}
if (["edit", "view"].includes(type)) {
getMenu(this.form.id).then((res) => {
this.form = Object.assign(res.data.data, {
hasChildren: this.form.hasChildren,
});
if (this.form.parentId === "0") {
this.form.parentId = "";
}
});
getDetail({id:this.form.id}).then(res =>{
this.form = res.data.data
this.form.virtualMac = this.form.virtualMac == 1 ? true : false
})
}
done();
},
uploadAfter(res, done, loading, column){
console.log('res-----------------',res)
console.log('attachLink-----------------',this.form.attachLink)
this.form.attachLink = [res.data.link]
done()
},
uploadDelete(file, column){
console.log('uploadDelete-----------------')
this.form.attachLink = []
},
uploadExceed(limit, files, fileList, column){
this.$message.error('最多只能上传一个文件')
},
// beforeClose
beforeClose(done) {
this.parentId = "";
@ -445,75 +469,83 @@ export default {
//
onLoad(page, params = {}) {
this.loading = true;
getLazyList(this.parentId, Object.assign(params, this.query)).then((res) => {
// this.data = res.data.data;
this.data = [
{
bindQty: 4,
categorys: "产线设备",
deviceCode: "9652247",
deviceIp: "192.168.43.179",
deviceName: "化学镀镍",
docking: true,
ecId: 1,
keyValue: 1,
macCode: "9652247",
macSpec: null,
memo: null,
rfId: "SYM-HCP-L4",
status: true,
typeName: "9652247",
updateTime: null,
used: 1,
usedText: "正常服役",
virtualMac: true,
},
{
bindQty: 0,
categorys: "产线设备",
deviceCode: "9565251",
deviceIp: null,
deviceName: "9565251",
docking: true,
ecId: 21,
keyValue: 21,
macCode: "9565251",
macSpec: null,
memo: null,
rfId: "111",
status: false,
typeName: "9565251",
updateTime: null,
used: 3,
usedText: "暂停服役",
virtualMac: false,
},
{
bindQty: 0,
categorys: "产线设备",
deviceCode: "9651041_1",
deviceIp: null,
deviceName: "9651041_1",
docking: true,
ecId: 22,
keyValue: 22,
macCode: "9651041_1",
macSpec: null,
memo: null,
rfId: null,
status: false,
typeName: "9651041_1",
updateTime: null,
used: 3,
usedText: "暂停服役",
virtualMac: false,
},
];
this.loading = false;
this.page.total = this.data.length;
this.selectionClear();
});
getList({
current:this.page.currentPage,
size:this.page.pageSize,
...this.query
}).then(res =>{
this.data = res.data.data.records
this.page.total = res.data.data.total
this.loading = false
})
// getLazyList(this.parentId, Object.assign(params, this.query)).then((res) => {
// // this.data = res.data.data;
// this.data = [
// {
// bindQty: 4,
// categorys: "线",
// deviceCode: "9652247",
// deviceIp: "192.168.43.179",
// deviceName: "",
// docking: true,
// ecId: 1,
// keyValue: 1,
// macCode: "9652247",
// macSpec: null,
// memo: null,
// rfId: "SYM-HCP-L4",
// status: true,
// typeName: "9652247",
// updateTime: null,
// used: 1,
// usedText: "",
// virtualMac: true,
// },
// {
// bindQty: 0,
// categorys: "线",
// deviceCode: "9565251",
// deviceIp: null,
// deviceName: "9565251",
// docking: true,
// ecId: 21,
// keyValue: 21,
// macCode: "9565251",
// macSpec: null,
// memo: null,
// rfId: "111",
// status: false,
// typeName: "9565251",
// updateTime: null,
// used: 3,
// usedText: "",
// virtualMac: false,
// },
// {
// bindQty: 0,
// categorys: "线",
// deviceCode: "9651041_1",
// deviceIp: null,
// deviceName: "9651041_1",
// docking: true,
// ecId: 22,
// keyValue: 22,
// macCode: "9651041_1",
// macSpec: null,
// memo: null,
// rfId: null,
// status: false,
// typeName: "9651041_1",
// updateTime: null,
// used: 3,
// usedText: "",
// virtualMac: false,
// },
// ];
// this.loading = false;
// this.page.total = this.data.length;
// this.selectionClear();
// });
},
},
};

@ -1,97 +1,257 @@
export default {
"feiBaSet": [
"feiBaSet": [
{
label: '飞靶编号',
prop: 'fsCode',
span: 24,
search: true,
rules: [
{
label: '飞靶编号',
prop: 'fsCode',
span:24,
search:true,
rules: [
{
required: true,
message: '请输入飞靶编号',
trigger: 'blur',
},
],
required: true,
message: '请输入飞靶编号',
trigger: 'blur',
},
],
},
{
label: '飞靶名称',
prop: 'fsType',
span: 24,
search: true,
rules: [
{
label: '飞靶名称',
prop: 'fsType',
span:24,
search:true,
rules: [
{
required: true,
message: '请输入飞靶名称',
trigger: 'blur',
},
],
required: true,
message: '请输入飞靶名称',
trigger: 'blur',
},
],
},
{
label: '飞靶状态',
prop: 'status',
search: true,
type: 'select',
display: false,
dicUrl: '/api/blade-system/dict/dictionary?code=workwear_status',
},
],
"rackSet": [
{
label: '挂具编号',
prop: 'rsCode',
search: true,
span: 24,
rules: [
{
required: true,
message: '请输入挂具编号',
trigger: 'blur',
},
],
},
{
label: '挂具名称',
prop: 'rsType',
span: 24,
search: true,
rules: [
{
label: '飞靶状态',
prop: 'fsStatus',
search:true,
type:'select',
display:false,
dicData:[
{
label:'空闲',
value:'1'
},{
label:'已绑定',
value:'2'
},{
label:'使用中',
value:'3'
}
]
required: true,
message: '请输入挂具名称',
trigger: 'blur',
},
],
"rackSet": [
{
label: '挂具编号',
prop: 'rsCode',
search:true,
rules: [
{
required: true,
message: '请输入挂具编号',
trigger: 'blur',
},
],
],
},
{
label: '挂具状态',
prop: 'rsStatus',
search: true,
type: 'select',
display: false,
dicUrl: '/api/blade-system/dict/dictionary?code=workwear_status',
props: {
label: 'dictKey',
value: 'dictValue'
}
// dicData:[
// {
// label:'空闲',
// value:'1'
// },{
// label:'已绑定',
// value:'2'
// },{
// label:'使用中',
// value:'3'
// }
// ]
},
]
}
export const feiBaOption = {
columnSort: true,
tip: false,
height: "auto",
calcHeight: 32,
simplePage: false,
searchShow: true,
searchMenuSpan: 6,
searchIcon: true,
searchIndex: 3,
tree: false,
border: true,
index: true,
selection: true,
viewBtn: false,
delBtn: false,
labelWidth: 120,
searchLabelWidth: 120,
menuWidth: 140,
dialogWidth: 600,
dialogClickModal: false,
searchEnter: true,
excelBtn: true,
gridBtn: false,
index: false,
searchShowBtn: false,
searchLabelPosition: "left",
searchLabelPosition: "left",
searchGutter: 24,
searchSpan: 6,
menuAlign: "left",
gridBtn: false,
searchMenuPosition: "right",
addBtnIcon: " ",
viewBtnIcon: " ",
delBtnIcon: " ",
editBtnIcon: " ",
align: "center",
column: [
{
label: '飞靶编号',
prop: 'fsCode',
span: 24,
search: true,
rules: [
{
required: true,
message: '请输入飞靶编号',
trigger: 'blur',
},
],
},
{
label: '飞靶名称',
prop: 'fsType',
span: 24,
search: true,
rules: [
{
label: '挂具名称',
prop: 'rsType',
search:true,
rules: [
{
required: true,
message: '请输入挂具名称',
trigger: 'blur',
},
],
required: true,
message: '请输入飞靶名称',
trigger: 'blur',
},
],
},
{
label: '飞靶状态',
prop: 'status',
search: true,
type: 'select',
display: false,
dicUrl: '/api/blade-system/dict/dictionary?code=workwear_status',
props: {
label: 'dictValue',
value: 'dictKey'
}
},
],
}
export const rackOption = {
columnSort: true,
tip: false,
height: "auto",
calcHeight: 32,
simplePage: false,
searchShow: true,
searchMenuSpan: 6,
searchIcon: true,
searchIndex: 3,
tree: false,
border: true,
index: true,
selection: true,
viewBtn: false,
delBtn: false,
labelWidth: 120,
searchLabelWidth: 120,
menuWidth: 140,
dialogWidth: 600,
dialogClickModal: false,
searchEnter: true,
excelBtn: true,
gridBtn: false,
index: false,
searchShowBtn: false,
searchLabelPosition: "left",
searchLabelPosition: "left",
searchGutter: 24,
searchSpan: 6,
menuAlign: "left",
gridBtn: false,
searchMenuPosition: "right",
addBtnIcon: " ",
viewBtnIcon: " ",
delBtnIcon: " ",
editBtnIcon: " ",
align: "center",
column: [
{
label: '挂具编号',
prop: 'rsCode',
search: true,
span: 24,
rules: [
{
required: true,
message: '请输入挂具编号',
trigger: 'blur',
},
],
},
{
label: '挂具名称',
prop: 'rsType',
span: 24,
search: true,
rules: [
{
label: '挂具状态',
prop: 'rsStatus',
search:true,
type:'select',
display:false,
dicData:[
{
label:'空闲',
value:'1'
},{
label:'已绑定',
value:'2'
},{
label:'使用中',
value:'3'
}
]
required: true,
message: '请输入挂具名称',
trigger: 'blur',
},
]
],
},
{
label: '挂具状态',
prop: 'status',
search: true,
type: 'select',
display: false,
dicUrl: '/api/blade-system/dict/dictionary?code=workwear_status',
props: {
label: 'dictValue',
value: 'dictKey'
}
}
],
}

@ -1,40 +1,70 @@
<template>
<basic-container>
<el-tabs v-model="tabPosition" class="demo-tabs" @tab-change="tabPositionChange">
<el-tab-pane label="飞靶设置" name="feiBaSet"></el-tab-pane>
<el-tab-pane label="挂具设置" name="rackSet"></el-tab-pane>
<el-tab-pane label="飞靶设置" name="feiBaSet">
<!-- 表格数据 -->
<avue-crud
:option="feiBaOption"
:table-loading="loading"
:data="data"
v-model="form"
v-model:page="page"
ref="crud"
@row-del="rowDel"
@row-save="rowSave"
@row-update="rowUpdate"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
>
<template #menu-left>
<el-button type="danger" plain @click="removeFn">删除</el-button>
</template>
</avue-crud>
</el-tab-pane>
<el-tab-pane label="挂具设置" name="rackSet">
<avue-crud
:option="rackOption"
:table-loading="loading"
:data="data"
v-model="form"
v-model:page="page"
ref="crud"
@row-del="rowDel"
@row-save="rowSave"
@row-update="rowUpdate"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
>
<template #menu-left>
<el-button type="danger" plain @click="removeFn">删除</el-button>
</template>
</avue-crud>
</el-tab-pane>
</el-tabs>
<!-- 表格数据 -->
<avue-crud
:option="option"
:table-loading="loading"
:data="data"
v-model="form"
v-model:page="page"
ref="crud"
@row-del="rowDel"
@search-change="searchChange"
@search-reset="searchReset"
@selection-change="selectionChange"
@current-change="currentChange"
@size-change="sizeChange"
@refresh-change="refreshChange"
@on-load="onLoad"
>
<template #menu-left>
<el-button type="danger" plain @click="removeFn">删除</el-button>
</template>
</avue-crud>
</basic-container>
</template>
<script>
import columnData from "./columnData.js";
import {getFeiBaSetList,addFeiBaSet,editFeiBaSet,deleteFeiba,getRackSetList,addRackSet,editRackSet,deleteRackSet} from '@/api/equiptManagement/workwearManagement'
import { add } from '@/api/system/menu.js';
import {feiBaOption,rackOption} from './columnData.js'
export default {
data() {
return {
loading: false,
tabPosition: "feiBaSet",
feiBaOption:feiBaOption,
rackOption:rackOption,
selectionList: [],
formInline: {
type: "", //
@ -102,119 +132,147 @@ export default {
confirmButtonText: "确认",
cancelButtonText: "取消",
type: "warning",
})
.then(() => {
// const obj = { list: [] };
// this.selectionArr.forEach((item) => {
// obj.list.push(item.rsId);
// });
// this.$ajax.post('bsRackSet/signDelete', obj).then((res) => {
// if (this.$ifAjax(res)) {
// this.$message.success(this.$t('global.deleteOk'));
// this.$refs.myTable.load();
// }
// });
}).then(() => {
if(this.tabPosition == "feiBaSet"){
deleteFeiba({ids:this.selectionList.map(item => item.id).join(',')}).then(res =>{
if(res.data.code == 200){
this.$message.success('删除成功')
this.getFeiBa()
}
})
}else{
deleteRackSet({ids:this.selectionList.map(item => item.id).join(',')}).then(res =>{
if(res.data.code == 200){
this.$message.success('删除成功')
this.getRackSet()
}
})
}
}).catch(() => {
this.$message.info("取消删除");
});
},
//
searchChange(params, done) {
if (this.tabPosition == "feiBaSet") {
this.query = params;
this.page.currentPage = 1;
this.getFeiBa();
done();
}else{
this.query = params;
this.page.currentPage = 1;
this.getRackSet();
done();
}
},
//
searchReset() {
if (this.tabPosition == "feiBaSet") {
this.query = {};
this.getFeiBa();
done();
}else{
this.query = {};
this.getRackSet();
done();
}
},
rowSave(row, done, loading){
if (this.tabPosition == "feiBaSet") {
let params = {
fsCode:row.fsCode,
fsType:row.fsType
}
addFeiBaSet(params).then(res =>{
if(res.data.code == 200){
this.$message.success('新增成功')
done()
this.getFeiBa()
}
})
.catch(() => {
this.$message.info("取消删除");
});
}else{
let params = {
rsCode:row.rsCode,
rsType:row.rsType
}
addRackSet(params).then(res =>{
if(res.data.code == 200){
this.$message.success('新增成功')
done()
this.getRackSet()
}
})
}
},
rowUpdate(row, index, done, loading){
if (this.tabPosition == "feiBaSet") {
let params = {
id:row.id,
fsCode:row.fsCode,
fsType:row.fsType
}
editFeiBaSet(params).then(res =>{
if(res.data.code == 200){
this.$message.success('修改成功')
done()
this.getFeiBa()
}else{
this.$message.error(res.data.message)
done()
}
})
}else{
let params = {
id:row.id,
rsCode:row.rsCode,
rsType:row.rsType
}
editRackSet(params).then(res =>{
if(res.data.code == 200){
this.$message.success('修改成功')
done()
this.getRackSet()
}else{
this.$message.error(res.data.message)
done()
}
})
}
},
getFeiBa(){
getFeiBaSetList({
current:this.page.currentPage,
size:this.page.pageSize,
...this.query
}).then(res =>{
this.data = res.data.data.records
this.page.total = res.data.data.total
})
},
getRackSet(){
getRackSetList({
current:this.page.currentPage,
size:this.page.pageSize,
...this.query
}).then(res =>{
this.data = res.data.data.records
this.page.total = res.data.data.total
})
},
tabPositionChange(value, event) {
this.option.column = columnData[this.tabPosition];
if (this.tabPosition == "feiBaSet") {
this.data = [
{
bindQty: 0,
deleted: false,
fsCode: "44444",
fsId: 321,
fsStatus: 1,
fsStatusTitle: "空闲",
fsType: "轱辘机",
keyValue: 321,
},
{
bindQty: 8,
deleted: false,
fsCode: "8DAu-GLJ2-022",
fsId: 314,
fsStatus: 2,
fsStatusTitle: "已绑定",
fsType: "轱辘机",
keyValue: 314,
},
{
bindQty: 3,
deleted: false,
fsCode: "DAu-GLJ2-021",
fsId: 313,
fsStatus: 2,
fsStatusTitle: "已绑定",
fsType: "轱辘机",
keyValue: 313,
},
{
bindQty: 2,
deleted: false,
fsCode: "DAu-GLJ2-020",
fsId: 312,
fsStatus: 2,
fsStatusTitle: "已绑定",
fsType: "轱辘机",
keyValue: 312,
},
];
this.getFeiBa()
} else {
this.data = [
{
bindQty: 0,
deleted: false,
keyValue: 341,
rsCode: "77777",
rsId: 341,
rsStatus: 1,
rsStatusTitle: "空闲",
rsType: "挂具",
},
{
bindQty: 1,
deleted: false,
keyValue: 337,
rsCode: "RHNi-GJ-060",
rsId: 337,
rsStatus: 2,
rsStatusTitle: "已绑定",
rsType: "挂具",
},
{
bindQty: 0,
deleted: false,
keyValue: 336,
rsCode: "RHNi-GJ-059",
rsId: 336,
rsStatus: 1,
rsStatusTitle: "空闲",
rsType: "挂具",
},
{
bindQty: 0,
deleted: false,
keyValue: 335,
rsCode: "RHNi-GJ-058",
rsId: 335,
rsStatus: 1,
rsStatusTitle: "空闲",
rsType: "挂具",
},
];
this.getRackSet()
}
this.page.total = this.data.length;
},
onLoad() {},
},
mounted() {
this.option.column = columnData[this.tabPosition];
this.tabPositionChange();
},
};

@ -102,8 +102,9 @@
<template #default="scope">
<el-form-item :prop="`moldPlan[${scope.$index}].planType`" :rules="formRules.planType">
<el-select v-model="scope.row.planType" :filterable="true" allow-create>
<el-option label="计划类型一" value="1" />
<el-option label="计划类型二" value="2" />
<!-- 2仓库 -->
<el-option label="热表/烧结" value="1" />
<el-option label="仓库" value="2" />
</el-select>
</el-form-item>
</template>
@ -318,7 +319,7 @@ export default {
return;
} else {
console.log('submitForm after validate', JSON.parse(JSON.stringify(this.form)));
add(JSON.parse(JSON.stringify(this.form))).then(res => {
add({moldPlan:this.form.moldPlan[0]}).then(res => {
if (res.code === 200) {
this.$message.success('提交成功');
this.closeDialog();

@ -47,7 +47,7 @@
:disabled="disabled"
>
<el-button size="small" type="primary">点击上传</el-button>
<div slot="tip" class="el-upload__tip">支持扩展名:.pdf.doc.docx(最大5M)</div>
<div style="margin-top:0;height:24px;display:flex;align-items:center;margin-left:5px;" slot="tip" class="el-upload__tip">支持扩展名:.pdf.doc.docx(最大5M)</div>
</el-upload>
</el-form-item>
</el-form>

@ -1,5 +1,5 @@
<template>
<el-dialog title="检验结果填报" append-to-body :modelValue="showDialog" width="80%" @close="closeDialog">
<el-dialog title="详情" append-to-body :modelValue="showDialog" width="80%" @close="closeDialog">
<div style="height: 600px;overflow-y: auto;overflow-x:hidden ;">
<div style="font-weight: 550;">任务信息</div>
<div class="info_box">

@ -302,7 +302,7 @@ export default {
search: false,
sortable: true,
filter: true,
width: 200,
width: 150,
},
{
label: '试验件',
@ -310,7 +310,7 @@ export default {
search: false,
sortable: true,
filter: true,
width: 200,
width: 120,
},
{
label: '试验件材料',
@ -318,7 +318,23 @@ export default {
search: false,
sortable: true,
filter: true,
width: 200,
width: 180,
},
{
label: '工艺员',
prop: 'processUserName',
search: false,
sortable: true,
filter: true,
width: 160,
},
{
label: '试验周期',
prop: 'jobType',
search: false,
sortable: true,
filter: true,
width: 120,
},
{
label: '最小试验数量',
@ -326,7 +342,7 @@ export default {
search: false,
sortable: true,
filter: true,
width: 200,
width: 140,
},
{
label: '试验项目',
@ -345,28 +361,7 @@ export default {
},
{
label: '工艺员',
prop: 'processUserName',
search: false,
sortable: true,
filter: true,
width: 200,
// dicUrl: '/blade-system/user/page?current=1&&size=99999',
// props: {
// label: 'name',
// value: 'id',
// res: 'data.records',
// },
},
{
label: '试验周期',
prop: 'jobType',
search: false,
sortable: true,
filter: true,
width: 200,
},
{
label: '提前下发天数',
prop: 'genBefore',

@ -536,7 +536,8 @@ export default {
const rules = {
isDone: [{ required: true, message: '请选择是否进行试验', trigger: 'change' }],
testDate:[],
testResult:[]
testResult:[],
reasonForNo:[],
};
console.log('this.writeForm.isDone-------------',this.writeForm.isDone)
if (this.writeForm.isDone == 1) {
@ -545,9 +546,11 @@ export default {
{ required: true, message: '请上传文件', trigger: 'blur' },
{ validator: this.checkFile, trigger: 'blur' }
];
rules.reasonForNo = []
} else {
rules.testDate = []; //
rules.testResult = []; //
rules.reasonForNo = [{ required: true, message: '请填写未试验原因', trigger: 'blur' }]
}
return rules;
},

@ -1,6 +1,13 @@
<template>
<el-dialog title="新增" append-to-body :modelValue="openShow" width="70%" @close="closeDialog" fullscreen>
<el-descriptions title="订单信息" border :column="4" label-width="110">
<div class="test_type">
<span>审理类型</span>
<el-radio-group v-model="testType" @change="changeType">
<el-radio :value="1">erp审理</el-radio>
<el-radio :value="2">内部审理</el-radio>
</el-radio-group>
</div>
<el-descriptions title="订单信息" border :column="4" label-width="110">
<el-descriptions-item label="车间订单号:">WO-898789988WO</el-descriptions-item>
<el-descriptions-item label="发现工序:">镀后检验</el-descriptions-item>
<el-descriptions-item label="流程卡号:">9887898</el-descriptions-item>
@ -8,7 +15,7 @@
<el-descriptions-item label="总数量:">78</el-descriptions-item>
<el-descriptions-item label="物料号:">78765688</el-descriptions-item>
<el-descriptions-item label="物料名称:">物料1</el-descriptions-item>
<el-descriptions-item label="简单原因:">
<el-descriptions-item label="不良原因:">
<el-input v-model="input" placeholder="请输入" />
</el-descriptions-item>
<el-descriptions-item label="不良描述:">
@ -17,7 +24,7 @@
</el-descriptions>
<el-descriptions 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-select v-model="value" placeholder="请选择" style="width: 400px;">
@ -52,6 +59,35 @@
</el-checkbox-group>
</el-descriptions-item>
</el-descriptions>
<el-descriptions v-if="testType == 2" class="margin-top" title="质量信息" border :column="3" label-width="110" style="margin-bottom: 24px;">
<el-descriptions-item label="比例:">
<el-input v-model="input" placeholder="请输入" style="width: 400px;"/>
</el-descriptions-item>
<el-descriptions-item label="不合格数:">
<el-input v-model="input" placeholder="请输入" style="width: 400px;"/>
</el-descriptions-item>
<el-descriptions-item label="处置类型">
<el-radio-group v-model="disposalType">
<el-radio :value="1">返修</el-radio>
<el-radio :value="2">报废</el-radio>
</el-radio-group>
</el-descriptions-item>
<el-descriptions-item label="返修数量:">
<el-input v-model="input" placeholder="请输入" style="width: 400px;"/>
</el-descriptions-item>
<el-descriptions-item label="报废数量:">
<el-input v-model="input" placeholder="请输入" style="width: 400px;"/>
</el-descriptions-item>
<el-descriptions-item label="">
<el-checkbox-group v-model="checkList">
<el-checkbox label="批次性问题" value="Value A" />
<el-checkbox label="典型问题" value="Value B" />
<el-checkbox label="低级错误" value="Value C" />
<el-checkbox label="质量问题" value="Value disabled" />
</el-checkbox-group>
</el-descriptions-item>
</el-descriptions>
<!--
<el-form :model="form" label-width="auto">
<el-row :gutter="24">
@ -107,7 +143,7 @@
</el-form> -->
<!-- <el-descriptions title="故障信息" border :column="4"></el-descriptions> -->
<el-row :gutter="24">
<el-row :gutter="24" v-if="testType == 1" >
<el-col :span="24" style="margin-bottom: 24px;">
<div class="btn_box">
<el-button type="primary" plain @click="insertFaultEvent()">插入一行</el-button>
@ -243,11 +279,12 @@
<template #footer>
<span class="dialog-footer">
<el-button plain @click="closeDialog">取消</el-button>
<el-button type="primary" @click="submit(-1)">保存</el-button>
<el-button type="primary" plain @click="submit(1)">提交质保</el-button>
<el-button type="primary" plain @click="submit(2)">提交工艺</el-button>
<el-button type="primary" plain @click="submit(3)">提交设计</el-button>
<el-button type="primary" plain @click="submit(4)">提交设计变更</el-button>
<el-button type="primary" v-if="testType == 1" @click="submit(-1)">保存</el-button>
<el-button type="primary" v-if="testType == 2" @click="submitInside">提交</el-button>
<el-button type="primary" v-if="testType == 1" plain @click="submit(1)">提交质保</el-button>
<el-button type="primary" v-if="testType == 1" plain @click="submit(2)">提交工艺</el-button>
<el-button type="primary" v-if="testType == 1" plain @click="submit(3)">提交设计</el-button>
<el-button type="primary" v-if="testType == 1" plain @click="submit(4)">提交设计变更</el-button>
</span>
</template>
</el-dialog>
@ -268,7 +305,9 @@ export default {
return {
openShow: false,
tableData: [],
form: {}
form: {},
testType: 1,
disposalType:1, //
}
},
mounted() {
@ -279,11 +318,27 @@ export default {
this.openShow = false
this.$emit('closeDialog');
},
changeType(val){
console.log('val---------------------',val)
},
//
submitInside(){
if(this.disposalType == 1){
let params = {
}
}
},
}
}
</script>
<style lang="scss" scoped>
.test_type{
display: flex;
align-items: center;
margin-bottom: 20px;
}
.margin-top {
margin-top: 24px;
}

@ -91,7 +91,7 @@
<div class="table_box">
<el-table ref="faultTable" height="240" :data="faultList" @selection-change="handleSelectionChange" @select="selectChangeData">
<el-table-column type="selection" width="55"></el-table-column>
<el-table-column label="故障类别" prop="faultType.rstId" align="center">
<el-table-column label="故障类别" prop="faultType.rstId" align="center" width="120">
<template #default="scope">
<el-select v-model="scope.row.faultType.rstId">
<el-option v-for="item in errorTypeArr" :key="item.rstId" :value="item.rstId" :label="item.rstName"></el-option>
@ -112,12 +112,12 @@
</el-select>
</template>
</el-table-column>
<el-table-column label="比例" prop="proportion" align="center">
<el-table-column label="比例" prop="proportion" align="center" width="80">
<template #default="scope">
<el-input v-model="scope.row.proportion" @input="(value) =>changeProportion(value,scope.$index)"></el-input>
</template>
</el-table-column>
<el-table-column label="数量" prop="faultQty" align="center">
<el-table-column label="数量" prop="faultQty" align="center" width="80">
<template #default="scope">
<el-input v-model="scope.row.faultQty" @input="(value) =>changeFaultQty(value,scope.$index)"></el-input>
</template>
@ -168,12 +168,12 @@
</el-select>
</template>
</el-table-column>
<el-table-column label="数量(件)" prop="dutyQty" align="center">
<el-table-column label="数量(件)" prop="dutyQty" align="center" width="80">
<template #default="scope">
<el-input v-model="scope.row.dutyQty"></el-input>
</template>
</el-table-column>
<el-table-column label="单位" prop="unit">
<el-table-column label="单位" prop="unit" align="center" width="80">
<template #default="scope">
<el-input v-model="scope.row.unit"></el-input>
</template>
@ -690,6 +690,7 @@ export default {
.btn_box{
margin-top: 20px;
margin-bottom: 10px;
display: flex;
justify-content: end;
}

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

@ -18,12 +18,14 @@
@size-change="sizeChange"
@refresh-change="refreshChange"
@on-load="onLoad"
:permission="getPermission"
:before-open="beforeOpen"
></avue-crud>
</basic-container>
</template>
<script>
import {getList,addFile,deleteFile} from '@/api/qualityManagement/inspectionArchiving/auditFile'
import {getList,addFile,deleteFile,upgradeFile} from '@/api/qualityManagement/inspectionArchiving/auditFile'
export default {
data() {
return {
@ -61,7 +63,7 @@ export default {
editBtnIcon: ' ',
viewBtnText: '详情',
labelWidth: 120,
searchLabelWidth: 120,
// searchLabelWidth: 120,
menuWidth: 120,
dialogWidth: 640,
dialogClickModal: false,
@ -81,6 +83,16 @@ export default {
gridBtn: false,
searchMenuPosition: 'right',
align: 'center',
updateBtnText:"升版",
editTitle:"升版",
// dialogOption: {
// //
// title: (action, row) => {
// if (action === 'edit') {
// return ''; //
// }
// }
// },
column: [
{
label: '工序名称',
@ -91,27 +103,14 @@ export default {
sortable: true,
span: 24,
type: 'select',
dicData: [
{
label: '工序一',
value: 1,
},
{
label: '工序二',
value: 2,
},
{
label: '工序三',
value: 3,
},
],
// rules: [
// {
// required: true,
// message: '',
// trigger: 'click',
// },
// ],
filterable: true,
remote: true,
dicUrl:`/api/blade-desk/dsProcess/list?processName={{key}}`,
props:{
label: 'processName',
value: 'id',
res: 'data.records',
},
},
{
label: '作业中心',
@ -144,20 +143,6 @@ export default {
sortable: true,
span: 24,
type: 'select',
// dicData: [
// {
// label: 'J',
// value: 1,
// },
// {
// label: 'I',
// value: 2,
// },
// {
// label: 'III',
// value: 3,
// },
// ],
dicUrl:'/api/blade-desk/BA/ProdMark/listForSelect',
props:{
label:'name',
@ -198,19 +183,22 @@ export default {
},
{
label: '维护人',
prop: 'updateUserRealName',
prop: 'keepUserRealName',
// bind: 'keepMan.userName',
bind: 'base.keepUserRealName',
search: true,
sortable: true,
display: false,
},
{
label: '维护时间',
prop: 'updateTime',
prop: 'keepTime',
bind: 'base.keepTime',
search: false,
sortable: true,
display: true,
display: false,
width:200
},
{
label: '状态',
@ -232,6 +220,20 @@ export default {
},
mounted() {},
methods: {
getPermission(key, row, index) {
if (key === 'editBtn') {
return row.status == 1
? true
: false;
}
return true;
},
beforeOpen(done, type, loading){
if (['edit'].includes(type)) {
this.form.prodApplyArea = this.form.prodApplyArea + ''
}
done()
},
searchReset() {
this.query = {};
this.onLoad(this.page);
@ -268,6 +270,15 @@ export default {
}
})
},
rowUpdate(row, index, done, loading) {
upgradeFile(row).then(res =>{
if(res.data.code == 200){
this.$message.success('升版成功')
done()
this.onLoad()
}
})
},
rowDel(row, index, done) {
this.$confirm('确定将选择数据删除?', {
confirmButtonText: '确定',

@ -22,9 +22,9 @@
<template #menu-left>
<el-button type="primary" @click="handleAdd">新增</el-button>
</template>
<template #menu-right>
<!-- <template #menu-right>
<el-button type="primary" @click="handleImport()">导入</el-button>
</template>
</template> -->
<template #menu="scope">
<el-button type="text" @click="copyClick(scope.row)">复制</el-button>
<!-- <el-button
@ -45,10 +45,10 @@
<el-button type="text" @click="detailClick(scope.row)">电子档案详情</el-button>
</template>
<template #line="{ row }">
<el-tag v-if="row.line == 0">线上</el-tag>
<el-tag v-if="row.line == 1" type="success">线下</el-tag>
<el-tag v-if="row.line == 1">线上</el-tag>
<el-tag v-if="row.line == 0" type="success">线下</el-tag>
</template>
<template #approvalStatus="{ row }">
<!-- <template #approvalStatus="{ row }">
<approvalStandard
ref="approvalRpf"
:cur-status="row.approvalStatus"
@ -56,7 +56,7 @@
:the-id="row.rfpId"
@refresh="refresh"
/>
</template>
</template> -->
</avue-crud>
<detailRb
:detail-open="detailOpen"
@ -140,6 +140,7 @@ export default {
addBtn: false,
delBtn: true,
editBtnText: '修改',
delBtnText: '删除',
viewBtnText: '详情',
addBtnIcon: ' ',
viewBtnIcon: ' ',
@ -154,7 +155,7 @@ export default {
excelBtn: true,
showOverflowTooltip: true,
align: 'center',
menuWidth: 430,
menuWidth: 360,
searchLabelPosition: 'left',
searchGutter: 24,
searchSpan: 6,
@ -215,20 +216,6 @@ export default {
value: 'id',
res: 'data.records',
},
// dicData: [
// {
// label: '',
// value: 1,
// },
// {
// label: '',
// value: 2,
// },
// {
// label: '',
// value: 3,
// },
// ],
rules: [
{
required: true,
@ -240,32 +227,25 @@ export default {
{
label: '线上/线下',
prop: 'line',
// search: false,
// sortable: true,
// filter: true,
span: 24,
// type: 'switch',
// dicData: [
// { label: '线', value: 1 },
// { label: '线', value: 0 },
// ],
value:0,
type: 'switch',
dicData: [
{
label: '线',
label: '线下',
value: 0,
},
{
label: '线',
label: '线',
value: 1,
},
],
},
{
label: '维护人',
prop: 'updateUserRealName',
// bind: 'keepMan.userName',
prop: 'keepUserRealName',
bind: 'base.keepUserRealName',
search: false,
sortable: true,
filter: true,
@ -273,15 +253,17 @@ export default {
},
{
label: '维护时间',
prop: 'updateTime',
prop: 'keepTime',
bind: 'base.keepTime',
search: false,
sortable: true,
filter: true,
display: false,
width:200,
},
{
label: '状态',
prop: 'rfpStatusTitle',
prop: 'status',
search: true,
sortable: true,
filter: true,
@ -292,20 +274,6 @@ export default {
label: 'dictValue',
value: 'dictKey',
}
// dicData: [
// {
// label: '',
// value: '1',
// },
// {
// label: '使',
// value: '2',
// },
// {
// label: '',
// value: '3',
// },
// ],
},
{
label: '审批状态',
@ -320,20 +288,6 @@ export default {
label: 'dictValue',
value: 'dictKey',
}
// dicData: [
// {
// label: '',
// value: '1',
// },
// {
// label: '',
// value: '2',
// },
// {
// label: '',
// value: '3',
// },
// ],
},
],
},
@ -361,16 +315,14 @@ export default {
},
getPermission(key, row, index) {
if (key === 'editBtn') {
// return row.rfpStatus == 1 && (row.approvalStatus == -1 || row.approvalStatus == 4)
// ? true
// : false;
return true
return( row.status == 1 && (row.approvalStatus == 3 || row.approvalStatus == 4)) //
? true
: false;
} else if (key === 'delBtn') {
return (row.rfpStatus == 1 && (row.approvalStatus == 1 || row.approvalStatus == -1)) ||
(row.rfpStatus == 2 && row.approvalStatus == 1)
return (row.status == 1 && (row.approvalStatus == 3 || row.approvalStatus == 1)) || //
(row.status == 2 && row.approvalStatus == 3) //使
? true
: false;
// return true
}
return true;
},

@ -1530,7 +1530,7 @@ export default {
getDate() {
getWordDetail({id:this.rfpId}).then(res =>{
this.rightList = res.data.data.preserveSlotList
this.insertIndex = res.data.datainsertIndex;
this.insertIndex = res.data.data.insertIndex;
})
// this.$ajax
// .get('dsRbFilePreserveSlot/getByRfpId/' + this.rfpId)

@ -1,27 +1,43 @@
<template>
<basic-container>
<div class="search_box">
<el-tabs v-model="tabPosition" class="demo-tabs" @tab-change="tabPositionChange">
<el-tab-pane label="erp审理" name="erpHear">
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad">
<template #menu-left>
</template>
<template #menu-right>
</template>
<template #menu="{ row }">
</div>
<avue-crud :option="option" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad">
<template #menu-left>
</template>
<template #menu-right>
</template>
<template #menu="{ row }">
</template>
</template>
<template #heatTreat="scope">
<el-tag v-if="scope.row.afterPlating" type="success"></el-tag>
<el-tag v-else type="warning"></el-tag>
</template>
</avue-crud>
</el-tab-pane>
<el-tab-pane label="内部审理" name="insideHear">
<avue-crud :option="insideOption" :table-loading="loading" :data="data" v-model="form" v-model:page="page" ref="crud"
@row-del="rowDel" @search-change="searchChange" @search-reset="searchReset"
@selection-change="selectionChange" @current-change="currentChange" @size-change="sizeChange"
@refresh-change="refreshChange" @on-load="onLoad">
<template #menu-left>
</template>
<template #menu-right>
</template>
<template #menu="{ row }">
<template #heatTreat="scope">
<el-tag v-if="scope.row.afterPlating" type="success"></el-tag>
<el-tag v-else type="warning"></el-tag>
</template>
</template>
</avue-crud>
</avue-crud>
</el-tab-pane>
</el-tabs>
</basic-container>
@ -41,13 +57,14 @@ import {
} from '@/api/system/role';
import { mapGetters } from 'vuex';
import { validatenull } from '@/utils/validate';
import {insideOption} from './options'
export default {
components: {
},
data() {
return {
tabPosition:'erpHear',
inBatchesOpen: false,
platingSmallOpen: false,
planOrderArr: [],
@ -261,6 +278,7 @@ export default {
},
],
},
insideOption,
data: [],
isRushOpen: false,//

@ -0,0 +1,215 @@
export const insideOption = {
columnSort: true,
tip: false,
height: 'auto',
calcHeight: 32,
simplePage: false,
searchShow: true,
searchMenuSpan: 6,
searchIcon: true,
searchIndex: 3,
tree: false,
border: true,
index: true,
selection: false,
addBtn: false,
editBtn: false,
viewBtn: false,
delBtn: false,
editBtnText: '修改',
labelWidth: 120,
menuWidth: 80,
dialogWidth: 900,
dialogClickModal: false,
searchEnter: true,
excelBtn: false,
filterBtn: true,
searchShowBtn: false,
excelBtn: true,
showOverflowTooltip: true,
addBtnIcon: ' ',
viewBtnIcon: ' ',
delBtnIcon: ' ',
editBtnIcon: ' ',
gridBtn: false,
searchLabelPosition: 'left',
searchGutter: 24,
searchSpan: 6,
menuAlign: 'left',
gridBtn: false,
searchMenuPosition: 'right',
align: 'center',
menu: false,
column: [
{
label: '审理单号',
prop: 'partCode',
// bind: 'dsPart.partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '车间订单号',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '物料号',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '物料名称',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '批次号',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '生产标识',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '供应商代码',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '供应商名称',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '审理类型',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '比例',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '需求数量',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '返修/报废数量',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '故障原因',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '审理状态',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '审理结论',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '提请人员',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '提请日期',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '审理时间',
prop: 'partCode',
search: true,
sortable: true,
span: 12,
width: 150
},
{
label: '审理人',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '打回原因',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
{
label: '镀前价格',
prop: 'partCode',
search: false,
sortable: true,
span: 12,
width: 150
},
]
}

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save