Merge remote-tracking branch 'origin/master'

master
Yangwl 6 months ago
commit 7ce36c0478

@ -7,3 +7,11 @@ export function listReportWorks(query) {
params: query params: query
}); });
} }
export function getProductTraceList(query) {
return request({
url: '/mes/reportWorks/getProductTrace',
method: 'get',
params: query
});
}

@ -1,8 +1,8 @@
import request from '@/utils/request' import request from '@/utils/request'
export function getDefectValue(belongToDetail) { export function getDefectValue(belongToDetail,checkType) {
return request({ return request({
url: '/quality/qcCheckTaskDefect/getDefectValue/' + belongToDetail, url: '/quality/qcCheckTaskDefect/getDefectValue/' + belongToDetail+'/'+checkType,
method: 'get', method: 'get',
}); });
} }

@ -150,9 +150,9 @@ export function commitCheckResult(data) {
}) })
} }
export function getDefectList(defectType) { export function getDefectList(checkType) {
const data = { const data = {
defectType checkType
} }
return request({ return request({
url: '/quality/qcIncome/getDefectList', url: '/quality/qcIncome/getDefectList',
@ -244,3 +244,24 @@ export function getWarehouseList(query) {
params: query params: query
}); });
} }
export function getClassInfoListByCheckType(query) {
return request({
url: '/quality/defectClass/getClassInfoListByCheckType',
method: 'get',
params: query
});
}
//状态修改
export function submitCheckPics(recordId,fileList) {
const data = {
recordId,
fileList
}
return request({
url: '/quality/qcIncome/submitCheckPics',
method: 'put',
data: data
})
}

@ -9,6 +9,13 @@ export function listPut(query) {
}); });
} }
export function handleUpdateSAP102(data) {
return request({
url: '/wms/odsRawOrderIn/handleUpdateSAP102',
method: 'post',
data: data
});
}
// 查询成品生产入库详细 // 查询成品生产入库详细
export function getPut(id) { export function getPut(id) {
return request({ return request({

@ -314,14 +314,14 @@ export default {
this.poolNameList = JSON.parse(localStorage.getItem("POOL_NAME_LIST")); this.poolNameList = JSON.parse(localStorage.getItem("POOL_NAME_LIST"));
this.poolName = localStorage.getItem("USER_POOL_NAME_CURRENT"); this.poolName = localStorage.getItem("USER_POOL_NAME_CURRENT");
// if(process.env.VUE_APP_BASE_API !='/dev-api'){
this.getUnReadList(); //
// this.getUnReadList();
this.timer = setInterval(() => { //
setTimeout(this.getUnReadList(), 30000); this.timer = setInterval(() => {
}, 30000); setTimeout(this.getUnReadList(), 30000);
}, 30000);
}
}, },
components: { components: {
Breadcrumb, Breadcrumb,

@ -2524,6 +2524,7 @@ export default {
message: "提交成功!", message: "提交成功!",
type: "success", type: "success",
}); });
this.getList();
} }
}); });
}, },

@ -0,0 +1,284 @@
<template>
<div class="app-container">
<el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch"
label-width="100px">
<el-form-item label="产品类型" prop="materialCode">
<el-select v-model="queryParams.prodType" placeholder="请选择" @change="changeTableType">
<el-option
v-for="item in tableTypeOptions"
:key="item.value"
:label="item.label"
:value="item.value">
</el-option>
</el-select>
</el-form-item>
<el-form-item label="产品编号" prop="productCode">
<el-input
v-model="queryParams.materialCode"
placeholder="请输入产品编号"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="产品名称" prop="productDescZh">
<el-input
v-model="queryParams.productDescZh"
placeholder="请输入产品名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="产品英文名称" prop="productDescEn">
<el-input
v-model="queryParams.productDescEn"
placeholder="请输入产品英文名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="产品名称" prop="productDescZh">
<el-input
v-model="queryParams.productDescZh"
placeholder="请输入产品名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="品类" prop="productGroupName" label-width="120px">
<el-input
v-model="queryParams.productGroupName"
placeholder="请输入品类名称"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="检验标准" prop="standarNo">
<el-input
v-model="queryParams.standarNo"
placeholder="请输入检验标准"
clearable
@keyup.enter.native="handleQuery"
/>
</el-form-item>
<el-form-item label="时间" prop="incomeTimeArray">
<el-date-picker
v-model="queryParams.incomeTimeArray"
format="yyyy-MM-dd"
type="daterange"
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
/>
</el-form-item>
<el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
</el-form-item>
</el-form>
<el-row :gutter="10" class="mb8">
<el-col :span="1.5">
<el-button
type="warning"
plain
icon="el-icon-download"
size="mini"
@click="handleExport"
>导出</el-button>
</el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row>
<el-table v-loading="loading" :data="traceList" @selection-change="handleSelectionChange" height="500px">
<!-- 序号 -->
<el-table-column type="index" width="50" align="center" :index="indexMethod" label="序号" fixed/>
<el-table-column label="产品编码" width="110" align="center" prop="productCode" :formatter="productCodeFormate" fixed/>
<el-table-column label="产品名称" width="200" align="center" prop="productDescZh" :show-overflow-tooltip="true" fixed/>
<el-table-column label="产品英文名称" width="150" align="center" prop="productDescEn" :show-overflow-tooltip="true" v-if="!showColumn"/>
<el-table-column label="最大批次数量" width="120" align="center" prop="batchMax" v-if="!showColumn"/>
<el-table-column label="卡板装载量" width="110" align="center" prop="palletNum" />
<el-table-column label="箱码规格" width="120" align="center" prop="spec" v-if="!showColumn"/>
<el-table-column label="品类" width="140" align="center" prop="productGroupName" v-if="!showColumn"/>
<el-table-column label="子母单比例" width="100" align="center" prop="unity" v-if="!showColumn"/>
<el-table-column label="检验标准" width="110" align="center" prop="standarNo"/>
<el-table-column label="箱型" width="50" align="center" prop="boxType" v-if="!showColumn"/>
<el-table-column label="垛型" width="50" align="center" prop="packType" v-if="!showColumn"/>
<el-table-column label="CPK品类" width="140" align="center" prop="cpkTypeName" v-if="!showColumn"/>
<el-table-column label="产线分配" width="400" align="left" prop="lineNames" v-if="!showColumn"/>
<el-table-column label="检验周期" align="center" prop="warehouseCycle" v-if="showColumn"/>
<el-table-column label="区位" width="140" align="center" prop="waNames" v-if="showColumn"/>
<el-table-column label="最近7次上载MES时间" width="600" align="left" prop="onLineTimes" :show-overflow-tooltip="true"/>
</el-table>
<pagination
v-show="total>0"
:total="total"
:page.sync="queryParams.pageNum"
:limit.sync="queryParams.pageSize"
@pagination="getList"
/>
</div>
</template>
<script>
import { getProductTraceList} from "@/api/mes/reportWorks";
import moment from "moment/moment";
export default {
name: "ProductTrace",
dicts: ["check_type","qms_category"],
components: {},
data() {
return {
showColumn:false,
//
loading: true,
//
ids: [],
checkTypeList: [],
//
single: true,
//
multiple: true,
//
showSearch: true,
//
total: 0,
// CPK
traceList: [],
projectNoOptions: [],
//
title: "",
//
open: false,
//
queryParams: {
pageNum: 1,
pageSize: 10,
typeCode: null,
checkType: null,
factoryCode: null,
materialCode: null,
materialName: null,
upVal: null,
downVal: null,
prodType: 'cp',
incomeTimeArray: [],
ymArrayStart: null,
ymArrayEnd: null,
},
//
form: {downVal:0,upVal:0},
//
rules: {
},
tableTypeOptions: [{
value: 'cp',
label: '成品'
}, {
value: 'bc',
label: '包材'
}]
}
},
created() {
this.getDate();
this.getList();
},
methods: {
/**获取默认查询时间段**/
getDate() {
let start = this.Fungetdate(0);
let end = this.Fungetdate(1);
this.queryParams.incomeTimeArray.push(start, end);
this.getList();
},
Fungetdate(num) {
var dd = new Date();
dd.setDate(dd.getDate() + num);
var y = dd.getFullYear();
var m = dd.getMonth() + 1; //
var d = dd.getDate();
return y + "-" + m + "-" + d;
},
changeTableType(val){
if(val == 'bc'){
this.showColumn = true;
}else{
this.showColumn = false;
}
},
/** 查询物料检验标准列表 */
getList() {
this.loading = true;
if (this.queryParams.incomeTimeArray.length > 0) {
this.queryParams.ymArrayStart = moment(this.queryParams.incomeTimeArray[0]).format("YYYY-MM-DD");
this.queryParams.ymArrayEnd = moment(this.queryParams.incomeTimeArray[1]).format("YYYY-MM-DD");
}
getProductTraceList(this.queryParams).then(response => {
this.traceList = response.rows;
this.total = response.total;
this.loading = false;
});
},
//
cancel() {
this.open = false;
this.reset();
},
//
reset() {
this.form = {
id: null,
typeCode: null,
checkType: null,
createBy: null,
createTime: null,
updateBy: null,
updateTime: null,
factoryCode: null,
delFlag: null,
materialCode: null,
materialName: null,
upVal: null,
downVal: null
};
this.resetForm("form");
},
/** 搜索按钮操作 */
handleQuery() {
this.queryParams.pageNum = 1;
this.getList();
},
/** 重置按钮操作 */
resetQuery() {
this.resetForm("queryForm");
this.handleQuery();
},
//
handleSelectionChange(selection) {
this.ids = selection.map(item => item.id)
this.single = selection.length !== 1
this.multiple = !selection.length
},
/** 导出按钮操作 */
handleExport() {
this.download('mes/reportWorks/getProductTraceExport', {
...this.queryParams
}, `productTrace_${new Date().getTime()}.xlsx`)
},
//
indexMethod(index) {
return index + 1;
},
//
productCodeFormate(row, column, cellValue) {
if (cellValue != null) {
return cellValue.slice(7, 18); //
}
}
}
};
</script>

@ -1033,7 +1033,6 @@ export default {
}, },
// - // -
handleUpdateDown(row) { handleUpdateDown(row) {
var statusesArray = this.statuses; var statusesArray = this.statuses;
for (var i = 0; i < statusesArray.length; i++) { for (var i = 0; i < statusesArray.length; i++) {
if (statusesArray[i] != 'w0') {// if (statusesArray[i] != 'w0') {//

@ -4,7 +4,7 @@
v-if="showFlag" v-if="showFlag"
:visible.sync="showFlag" :visible.sync="showFlag"
:modal= false :modal= false
width="1400px" width="1300px"
> >
<el-row :gutter="20"> <el-row :gutter="20">
<el-col :span="24" :xs="24"> <el-col :span="24" :xs="24">
@ -51,26 +51,24 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
-->
<el-col :span="14"> <el-col :span="6">
<el-form-item v-if="form.startOA == '1'" label="不合格描述" prop="remark"> <el-form-item label="缺陷分类" prop="remarkCode">
<el-input type='textarea' v-model="form.remark" placeholder="请输入不合格描述" /> <el-select v-model="form.remarkCode" placeholder="请选择缺陷分类" clearable>
</el-form-item>
</el-col>
-->
<el-col :span="14">
<el-form-item label="不合格描述" prop="remarkCode">
<!-- <el-input type='textarea' v-model="form.remark" placeholder="请输入不合格描述" /> -->
<el-select v-model="form.remarkCode" placeholder="请选择不合格描述" clearable>
<el-option <el-option
v-for="dict in remarkList" v-for="dict in classInfoList"
:key="dict.dictValue" :key="dict.id"
:label="dict.dictLabel" :label="dict.className"
:value="dict.dictValue" :value="dict.id"
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="8">
<el-form-item label="备注描述" prop="attr3">
<el-input type='textarea' v-model="form.attr3" placeholder="请输入备注描述" />
</el-form-item>
</el-col>
</el-row> </el-row>
</el-form> </el-form>
@ -79,9 +77,9 @@
</el-table-column> </el-table-column>
<!-- 序号 --> <!-- 序号 -->
<el-table-column label="检测规则Id" align="left" prop="recordId" v-if="false"/> <el-table-column label="检测规则Id" align="left" prop="recordId" v-if="false"/>
<el-table-column label="检测规则编码" align="left" prop="projectNo" width="120"/> <el-table-column label="检测规则编码" align="left" prop="projectNo" width="120" fixed/>
<el-table-column label="检验规则名称" align="left" prop="ruleName" width="300"/> <el-table-column label="检验规则名称" align="left" prop="ruleName" width="150" :show-overflow-tooltip="true" fixed/>
<el-table-column label="检验规则属性" align="left" prop="propertyCode" width="120" > <el-table-column label="规则属性" align="left" prop="propertyCode" width="80" fixed>
<template slot-scope="scope"> <template slot-scope="scope">
<dict-tag <dict-tag
:options="dict.type.qc_rule_prop" :options="dict.type.qc_rule_prop"
@ -92,22 +90,29 @@
<el-table-column label="检验方式" align="left" prop="checkMode" width="150" :show-overflow-tooltip="true"/> <el-table-column label="检验方式" align="left" prop="checkMode" width="150" :show-overflow-tooltip="true"/>
<el-table-column label="检验工具" align="left" prop="checkTool" /> <el-table-column label="检验工具" align="left" prop="checkTool" />
<el-table-column label="检验标准" align="left" prop="checkStandard" width="150" :show-overflow-tooltip="true"/> <el-table-column label="检验标准" align="left" prop="checkStandard" width="150" :show-overflow-tooltip="true"/>
<!--
<el-table-column label="上差值" align="left" prop="upperDiff" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/> <el-table-column label="上差值" align="left" prop="upperDiff" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/>
<el-table-column label="下差值" align="left" prop="downDiff" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/> <el-table-column label="下差值" align="left" prop="downDiff" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/>
<el-table-column label="单位" align="left" prop="unitCode" width="80"/> <el-table-column label="单位" align="left" prop="unitCode" width="80"/>-->
<el-table-column label="样本量编码" align="left" prop="sampleCode" width="80" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/> <el-table-column label="样本量编码" align="left" prop="sampleCode" width="90" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/>
<el-table-column label="抽样数量" align="left" prop="sampleQuality" width="80" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/> <!--<el-table-column label="抽样数量" align="left" prop="sampleQuality" width="80" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/>-->
<el-table-column label="检测水平" align="left" prop="checkLevel" width="80" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/> <el-table-column label="检测水平" align="left" prop="checkLevel" width="80" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/>
<el-table-column label="接受质量限" align="left" prop="sampleAql" width="80" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/> <el-table-column label="接受质量限" align="left" prop="sampleAql" width="90" v-if="this.typeCode == 'material' || this.typeCode == 'product'"/>
<el-table-column label="检测结果" key="status" align="center" prop="status" width="90" v-if="this.viewStatus == '1' "> <el-table-column label="检测结果" key="status" align="center" prop="status" width="90" v-if="this.viewStatus == '1' ">
</el-table-column> </el-table-column>
<el-table-column label="测量值" align="left" prop="actualValue" width="120"/> <el-table-column label="测量值" align="left" prop="actualValue" width="120"/>
<el-table-column label="抽样数量" align="left" prop="sampleQuality" width="110">
<template slot-scope="scope">
<el-input v-model="scope.row.sampleQuality" placeholder="请输入抽样数量" type="number"/>
</template>
</el-table-column>
<el-table-column label="不良描述" align="left" prop="remark" width="120"> <el-table-column label="不良描述" align="left" prop="remark" width="120">
<template slot-scope="scope"> <template slot-scope="scope">
<el-input v-model="scope.row.remark" placeholder="请输入不良描述" /> <el-input v-model="scope.row.remark" placeholder="请输入不良描述" />
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="不良类型" align="left" prop="defectCode" width="120"> <el-table-column label="不良类型" align="left" prop="defectCode" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<el-button <el-button
size="mini" size="mini"
@ -138,6 +143,17 @@
></el-switch> ></el-switch>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="检验图片" align="center" class-name="small-padding fixed-width"">
<template slot-scope="scope">
<el-button
size="mini"
type="text"
icon="el-icon-picture"
@click="handleShowPic(scope.row)"
v-hasPermi="['quality:qcIncome:edit']"
>查看</el-button>
</template>
</el-table-column>
</el-table> </el-table>
<pagination <pagination
@ -187,7 +203,7 @@
<el-form-item <el-form-item
v-for="(domain, index) in dynamicValidateForm.domains" v-for="(domain, index) in dynamicValidateForm.domains"
:label="'测量值' + index" :label="'测量值' + (index+1)"
:key="domain.key" :key="domain.key"
:prop="'domains.' + index + '.value'" :prop="'domains.' + index + '.value'"
:rules="{ :rules="{
@ -204,41 +220,107 @@
<el-button @click="handleResetForm()"></el-button> <el-button @click="handleResetForm()"></el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-dialog> </el-dialog>
<el-dialog title="不良类型" :visible.sync="defectOpen" width="600px" append-to-body> <el-dialog title="不良类型" :visible.sync="defectOpen" width="600px" append-to-body>
<el-form :model="defectForm" ref="defectForm" label-width="100px" class="demo-dynamic"> <el-form :model="defectForm" ref="defectForm" label-width="100px" class="demo-dynamic">
<el-form-item <el-form-item
v-for="(item, index) in defectForm.defectItems" v-for="(item, index) in defectForm.defectItems"
:label="item.defectSubclass" :label="item.defectSubclass"
:key="index" :key="index"
:prop="`defectItems.${index}.noOkQuality`"
:rules="{
required: true, message: '不良类型不能为空', trigger: 'blur'
}"
> >
<el-input type="number" v-model="item.noOkQuality" placeholder="请输入不良数量" /> <el-row :gutter="20">
<el-col :span="10">
<el-input type="number" v-model="item.noOkQuality" placeholder="请输入不良数量"/>
</el-col>
<el-col :span="10">
<el-select placeholder="请选择缺陷分类" clearable v-model="item.classId">
<el-option
v-for="dict in item.classList"
:key="dict.id"
:label="dict.className"
:value="dict.id"
/>
</el-select>
</el-col>
</el-row>
</el-form-item> </el-form-item>
<el-form-item> <el-form-item>
<el-button type="primary" @click="submitDefectForm('defectForm')"></el-button> <el-button type="primary" @click="submitDefectForm('defectForm')"></el-button>
<el-button @click="resetDefectForm('defectForm')"></el-button> <el-button @click="resetDefectForm('defectForm')"></el-button>
</el-form-item> </el-form-item>
</el-form> </el-form>
</el-dialog> </el-dialog>
</div> <!--图片预览弹窗-->
<el-dialog title="检验图片" :visible.sync="picValueOpen" width="700px" append-to-body>
<el-upload
:action="uploadUrl"
:headers="uploadHeaders"
:on-success="handleUploadSuccess"
list-type="picture-card"
:file-list="fileList"
>
<i slot="default" class="el-icon-plus"></i>
<div slot="file" slot-scope="{file}">
<img
class="el-upload-list__item-thumbnail"
:src="file.url" alt=""
>
<span class="el-upload-list__item-actions">
<span
class="el-upload-list__item-preview"
@click="handlePictureCardPreview(file)"
>
<i class="el-icon-zoom-in"></i>
</span>
<span
v-if="!disabled"
class="el-upload-list__item-delete"
@click="handleDownload(file)"
>
<i class="el-icon-download"></i>
</span>
<span
v-if="!disabled"
class="el-upload-list__item-delete"
@click="handleRemove(file)"
>
<i class="el-icon-delete"></i>
</span>
</span>
</div>
</el-upload>
<br/>
<el-button size="small" type="primary" @click="submitPicForm"></el-button>
</el-dialog>
<el-dialog :visible.sync="dialogVisible">
<img width="100%" :src="dialogImageUrl" alt="">
</el-dialog>
</div>
</template> </template>
<script> <script>
import { getCkeckProjectList,changeCheckDetailStatus,getIncome,commitActualValue, import { getCkeckProjectList,changeCheckDetailStatus,getIncome,commitActualValue,
commitCheckResult,getDefectList,getWeightValue,getnoOkVals,getAutoJudge commitCheckResult,getDefectInfoList,getWeightValue,getnoOkVals,getAutoJudge,getClassInfoListByCheckType,
submitCheckPics
} from "@/api/quality/income"; } from "@/api/quality/income";
import { getDefectValue, commitDefectValue, updateDefectValue} from "@/api/quality/checkTaskDefect"; import { getDefectValue, commitDefectValue, updateDefectValue} from "@/api/quality/checkTaskDefect";
import { getDictData,} from "@/api/system/dict/data"; import { getToken } from "@/utils/auth";
export default { export default {
name: "itemSelectUser", name: "itemSelectUser",
dicts: ["qc_rule_prop","material_type_oa","material_from_oa","sample_level","sample_aql"], dicts: ["qc_rule_prop","material_type_oa","material_from_oa","sample_level","sample_aql"],
data() { data() {
return { return {
fileList:[],
uploadList: [],
uploadUrl: process.env.VUE_APP_BASE_API + "/file/upload",
uploadHeaders: {
Authorization: "Bearer " + getToken(),
},
dialogImageUrl: '',
dialogVisible: false,
disabled: false,
viewStatus : '0', viewStatus : '0',
showFlag: false, showFlag: false,
dyloading: false, dyloading: false,
@ -255,7 +337,7 @@ export default {
// BOM // BOM
itemList: null, itemList: null,
qcCheckTaskDetails: [], qcCheckTaskDetails: [],
remarkList: [], classInfoList: [],
// //
bomCode: undefined, bomCode: undefined,
defaultProps: { defaultProps: {
@ -282,8 +364,14 @@ export default {
sampleAql:null, sampleAql:null,
checkLevel:null checkLevel:null
}, },
dynamicPicForm:{
domains: [{
value: ''
}],
},
// //
valueOpen: false, valueOpen: false,
picValueOpen: false,
//id //id
recordId:'', recordId:'',
weight: null, weight: null,
@ -293,7 +381,6 @@ export default {
typeCode:'', typeCode:'',
// //
defectOpen: false, defectOpen: false,
updateFlag: false,
// //
defectList:[], defectList:[],
defectForm: { defectForm: {
@ -302,34 +389,28 @@ export default {
defectCode: '', defectCode: '',
noOkQuality: 0, noOkQuality: 0,
belongToDetail: '', belongToDetail: '',
belongTo: '' belongTo: '',
classId:'',
classList:[]
} }
] ]
}, },
rules: { rules: {
}, },
downDiff:null,
upperDiff:null,
aqlNoOkVal:0, aqlNoOkVal:0,
sampleCode: null, sampleCode: null,
checkLevel:null checkLevel:null,
checkType:''
}; };
}, },
created() { created() {
this.getDefect();
this.handleGetDictData(); //this.handleGetDictData();
}, },
methods: { methods: {
getDefect(){
getDefectList(this.typeCode).then(response => {
this.defectList = response;
this.defectForm.defectItems = this.defectList.map(item => ({
defectSubclass: item.defectSubclass,
defectCode: item.defectCode,
noOkQuality: 0
}));
});
},
init(rowdata,typeCode){ init(rowdata,typeCode){
this.data=rowdata; this.data=rowdata;
this.queryParams.belongTo = this.data.recordId; this.queryParams.belongTo = this.data.recordId;
@ -342,7 +423,7 @@ export default {
this.queryParams.pageSize = 10; this.queryParams.pageSize = 10;
this.getCheckInfo(); this.getCheckInfo();
this.getList(); this.getList();
this.getDefect(); this.handleGetDictData();
}, },
view(rowdata,typeCode){ view(rowdata,typeCode){
@ -356,7 +437,7 @@ export default {
this.queryParams.pageSize = 10; this.queryParams.pageSize = 10;
this.getCheckInfo(); this.getCheckInfo();
this.getList(); this.getList();
this.getDefect(); this.handleGetDictData();
}, },
/** 查询表格列表*/ /** 查询表格列表*/
@ -371,12 +452,9 @@ export default {
}, },
handleGetDictData() { handleGetDictData() {
const query = { getClassInfoListByCheckType({checkType:this.checkType}).then(response => {
dictType: 'unqualified_remark',
}
getDictData(query).then(response => {
if (response.code === 200) { if (response.code === 200) {
this.remarkList = response.data; this.classInfoList = response.data;
} }
}); });
}, },
@ -450,7 +528,7 @@ export default {
supplierCode: this.data.supplierCode, supplierCode: this.data.supplierCode,
supplierName: this.data.supplierName, supplierName: this.data.supplierName,
quality: this.data.quality, quality: this.data.quality,
unit: this.data.unit, unit: this.data.unit
} }
// //
const finalData = {...this.form,...data} const finalData = {...this.form,...data}
@ -504,24 +582,19 @@ export default {
}, },
/** 不良类型弹窗 */ /** 不良类型弹窗 */
handleDefectType(row) { handleDefectType(row) {
this.defectForm.defectItems.forEach(item => { getDefectValue(row.recordId,this.checkType).then(response => {
item.belongToDetail = row.recordId;
item.belongTo = row.belongTo;
item.noOkQuality = 0;
});
getDefectValue(row.recordId).then(response => {
let values = response.rows; let values = response.rows;
if(values.length > 0){ if(values.length > 0){
this.defectForm.defectItems = values.map(item => ({ this.defectForm.defectItems = values.map(item => ({
//qc_check_task_defectrecordId //qc_check_task_defectrecordId
recordId: item.recordId, belongTo: this.queryParams.belongTo,
belongToDetail: row.recordId,
defectSubclass: item.defectSubclass, defectSubclass: item.defectSubclass,
defectCode: item.defectCode, defectCode: item.defectCode,
noOkQuality: item.noOkQuality, noOkQuality: item.noOkQuality,
classId: item.classId,
classList: item.classList
})); }));
this.updateFlag = true;
}else{
this.updateFlag = false;
} }
this.defectOpen = true; this.defectOpen = true;
}); });
@ -536,7 +609,6 @@ export default {
let values = this.dynamicValidateForm.domains; let values = this.dynamicValidateForm.domains;
var actualValues = values.map(item => item.value); var actualValues = values.map(item => item.value);
if(this.typeCode=='material' || this.typeCode =='product'){// if(this.typeCode=='material' || this.typeCode =='product'){//
debugger
//(使) //(使)
getAutoJudge(this.quality, getAutoJudge(this.quality,
this.dynamicValidateForm.checkLevel, this.dynamicValidateForm.checkLevel,
@ -596,7 +668,6 @@ export default {
const formData = this.defectForm.defectItems; const formData = this.defectForm.defectItems;
if (valid) { if (valid) {
// //
if(!this.updateFlag) {
commitDefectValue(formData).then(response => { commitDefectValue(formData).then(response => {
if(response.code === 200) { if(response.code === 200) {
this.$modal.msgSuccess("提交成功"); this.$modal.msgSuccess("提交成功");
@ -607,27 +678,11 @@ export default {
this.defectOpen = false; this.defectOpen = false;
this.getDefect(); this.getDefect();
}); });
}else {
console.log(formData);
updateDefectValue(formData).then(response => {
if(response.code === 200) {
this.$modal.msgSuccess("修改成功");
}else {
this.$modal.msgError(response.msg);
}
this.defectForm.defectItems = [];
this.defectOpen = false;
this.getDefect();
});
}
} else { } else {
// //
console.log('error submit!!'); console.log('error submit!!');
return false; return false;
} }
}); });
}, },
resetDefectForm() { resetDefectForm() {
@ -663,6 +718,59 @@ export default {
setSampleAql(sampleAql){ setSampleAql(sampleAql){
this.sampleAql = sampleAql; this.sampleAql = sampleAql;
}, },
/** 检测图片弹窗操作 */
handleShowPic(row) {
var i=0;
this.handleResetPic();
this.picValueOpen = true;
this.recordId = row.recordId;
const files = row.fileUrls;
files.map(item => (
this.fileList.push({
uid: i++,
url: item
})
))
},
handleResetPic() {
this.dynamicPicForm.domains = [{ value: ''}];
},
handleRemove(file) {
this.fileList = this.fileList.filter(item => item !== file);
},
handlePictureCardPreview(file) {
this.dialogImageUrl = file.url;
this.dialogVisible = true;
},
handleDownload(file) {
window.location.href = file.url
},
handleUploadSuccess(res, file) {
if (res.code === 200) {
this.uploadList.push({ name: res.data.name, url: res.data.url });
} else {
this.number--;
this.$modal.closeLoading();
this.$modal.msgError(res.msg);
this.$refs.fileUpload.handleRemove(file);
}
},
submitPicForm() {
var picValues = '';
if(this.uploadList.length>0){
this.uploadList.map(item => picValues=picValues+item.url+',');
};
if(this.fileList.length>0){
this.fileList.map(item => picValues=picValues+item.url+',');
};
submitCheckPics(this.recordId,picValues).then(response => {
this.$modal.msgSuccess("提交成功");
this.picValueOpen = false;
this.getList();
});
},
} }
}; };
</script> </script>

@ -151,7 +151,7 @@ export default {
}, },
// //
handleClose() { handleClose() {
const obj = { path: "/system/role" }; const obj = { path: "/op/system/role" };
this.$tab.closeOpenPage(obj); this.$tab.closeOpenPage(obj);
}, },
/** 搜索按钮操作 */ /** 搜索按钮操作 */

@ -129,7 +129,7 @@
<el-table-column label="入库批次号" align="center" prop="productBatch" v-if="false" /> <el-table-column label="入库批次号" align="center" prop="productBatch" v-if="false" />
<el-table-column label="单位" align="center" prop="userDefined1" /> <el-table-column label="单位" align="center" prop="userDefined1" />
<el-table-column label="SAP库位" align="center" prop="userDefined2" /> <!-- <el-table-column label="SAP库位" align="center" prop="userDefined2" />-->
<el-table-column label="备用3" align="center" prop="userDefined3" v-if="false" /> <el-table-column label="备用3" align="center" prop="userDefined3" v-if="false" />
<el-table-column label="备用4" align="center" prop="userDefined4"v-if="false" /> <el-table-column label="备用4" align="center" prop="userDefined4"v-if="false" />
@ -139,11 +139,11 @@
<el-table-column label="备用8" align="center" prop="userDefined8"v-if="false" /> <el-table-column label="备用8" align="center" prop="userDefined8"v-if="false" />
<el-table-column label="备用9" align="center" prop="userDefined9" v-if="false" /> <el-table-column label="备用9" align="center" prop="userDefined9" v-if="false" />
<el-table-column label="备用10" align="center" prop="userDefined10" v-if="false" /> <el-table-column label="备用10" align="center" prop="userDefined10" v-if="false" />
<el-table-column label="创建时间" align="center" prop="gmtCreate" width="180"> <!-- <el-table-column label="创建时间" align="center" prop="gmtCreate" width="180">-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<span>{{ parseTime(scope.row.gmtCreate, '{y}-{m}-{d}') }}</span> <!-- <span>{{ parseTime(scope.row.gmtCreate, '{y}-{m}-{d}') }}</span>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column label="最后更新人" align="center" prop="lastModifiedBy" width="100"/> <el-table-column label="最后更新人" align="center" prop="lastModifiedBy" width="100"/>
<el-table-column label="最后更新时间" align="center" prop="gmtModified" width="180"> <el-table-column label="最后更新时间" align="center" prop="gmtModified" width="180">
<template slot-scope="scope"> <template slot-scope="scope">
@ -152,7 +152,7 @@
</el-table-column> </el-table-column>
<el-table-column label="有效标记" align="center" prop="activeFlag" v-if="false" /> <el-table-column label="有效标记" align="center" prop="activeFlag" v-if="false" />
<el-table-column label="工厂号" align="center" prop="factoryCode" /> <el-table-column label="工厂号" align="center" prop="factoryCode" />
<el-table-column label="SAP工厂号" align="center" prop="sapFactoryCode" width="100"/> <!-- <el-table-column label="SAP工厂号" align="center" prop="sapFactoryCode" width="100"/>-->
</el-table> </el-table>

@ -43,15 +43,6 @@
@keyup.enter.native="handleQuery" @keyup.enter.native="handleQuery"
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item label="库位" prop="wlCode">-->
<!-- <el-input-->
<!-- v-model="queryParams.wlCode"-->
<!-- placeholder="请输入库位"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="物料号" prop="materialCode"> <el-form-item label="物料号" prop="materialCode">
<el-input <el-input
v-model="queryParams.materialCode" v-model="queryParams.materialCode"
@ -69,18 +60,6 @@
/> />
</el-form-item> </el-form-item>
<!-- <el-form-item label="数量" prop="amount">-->
<!-- <el-input-->
<!-- v-model="queryParams.amount"-->
<!-- placeholder="请输入数量"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item label="送货时间" prop="gmtCreate"> <el-form-item label="送货时间" prop="gmtCreate">
<el-date-picker clearable <el-date-picker clearable
v-model="queryParams.gmtCreate" v-model="queryParams.gmtCreate"
@ -89,15 +68,6 @@
placeholder="请选择创建时间"> placeholder="请选择创建时间">
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<!-- <el-form-item label="工厂号" prop="factoryCode">-->
<!-- <el-input-->
<!-- v-model="queryParams.factoryCode"-->
<!-- placeholder="请输入工厂号"-->
<!-- clearable-->
<!-- @keyup.enter.native="handleQuery"-->
<!-- />-->
<!-- </el-form-item>-->
<el-form-item> <el-form-item>
<el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button> <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery"></el-button>
<el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button> <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"></el-button>
@ -114,40 +84,48 @@
</el-col> </el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="danger" type="primary"
plain plain
icon="el-icon-remove" icon="el-icon-remove"
size="mini" size="mini"
:disabled="batchSingle" :disabled="batchSingle"
@click="handleRemoveBatch(row)" @click="handleRemoveBatch()"
v-hasPermi="['mes:pro:workorder:edit']"
>删除 >删除
</el-button> </el-button>
</el-col> </el-col>
<right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar> <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
</el-row> </el-row>
<div>
<el-table v-loading="loading" :data="matetowsnList" @selection-change="handleSelectionChange"> <el-table v-loading="loading" :data="matetowsnList" @selection-change="handleSelectionChange"
:summary-method="getSummary"
:show-summary="true"
:summary-align="'center'"
>
<el-table-column type="selection" width="55" align="center" /> <el-table-column type="selection" width="55" align="center" />
<el-table-column label="唯一序列号" align="center" prop="mateOrderInSnId" v-if="false" /> <el-table-column label="唯一序列号" align="center" prop="mateOrderInSnId" v-if="false" />
<el-table-column label="送货时间" align="center" prop="gmtCreate" width="180"> <el-table-column label="送货时间" align="center" prop="gmtCreate" width="100">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ parseTime(scope.row.gmtCreate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.gmtCreate, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="送货单" align="center" prop="poNo" width="100"/>
<el-table-column label="采购单" align="center" prop="orderNo" width="100"/> <el-table-column label="物料号" align="center" prop="materialCode" width="120">
<el-table-column label="标识卡" align="center" prop="wlCode" width="300"/>
<el-table-column label="批次" align="center" prop="userDefined2" width="300"/>
<el-table-column label="物料号" align="center" prop="materialCode" width="200">
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ formatProductCode(scope.row.materialCode) }}</span> <span>{{ formatProductCode(scope.row.materialCode) }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="物料描述" align="center" prop="materialDesc" width="300"/> <el-table-column label="物料描述" align="center" prop="materialDesc" width="300"/>
<el-table-column label="送货单" align="center" prop="poNo" width="100"/>
<el-table-column label="采购单" align="center" prop="orderNo" width="100"/>
<el-table-column label="批次" align="center" prop="userDefined2" width="100"/>
<el-table-column label="入库数量" align="center" prop="amount" /> <el-table-column label="入库数量" align="center" prop="amount" />
<el-table-column label="出库数量" align="center" prop="outNumber" /> <el-table-column label="出库数量" align="center" prop="outNumber" />
<el-table-column label="剩余数量" align="center">
<template slot-scope="scope">
<span>{{ scope.row.amount - (scope.row.outNumber || 0) }}</span>
</template>
</el-table-column>
<el-table-column label="状态" align="center" prop="status"> <el-table-column label="状态" align="center" prop="status">
<template slot-scope="scope"> <template slot-scope="scope">
<span v-if="scope.row.outNumber === 0 || scope.row.outNumber === null"></span> <span v-if="scope.row.outNumber === 0 || scope.row.outNumber === null"></span>
@ -155,7 +133,7 @@
<span v-else></span> <span v-else></span>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column label="托盘号" align="center" prop="sn" />--> <el-table-column label="标识卡" align="center" prop="wlCode" width="300"/>
<el-table-column label="仓库" align="center" prop="whCode" /> <el-table-column label="仓库" align="center" prop="whCode" />
<el-table-column label="库区" align="center" prop="waCode" /> <el-table-column label="库区" align="center" prop="waCode" />
<el-table-column label="备用1" align="center" prop="userDefined1" v-if="false" /> <el-table-column label="备用1" align="center" prop="userDefined1" v-if="false" />
@ -173,17 +151,10 @@
<span>{{ parseTime(scope.row.gmtCreate, '{y}-{m}-{d}') }}</span> <span>{{ parseTime(scope.row.gmtCreate, '{y}-{m}-{d}') }}</span>
</template> </template>
</el-table-column> </el-table-column>
<!-- <el-table-column label="更新人" align="center" prop="lastModifiedBy" />-->
<!-- <el-table-column label="更新时间" align="center" prop="gmtModified" width="180">-->
<!-- <template slot-scope="scope">-->
<!-- <span>{{ parseTime(scope.row.gmtModified, '{y}-{m}-{d}') }}</span>-->
<!-- </template>-->
<!-- </el-table-column>-->
<el-table-column label="有效标记" align="center" prop="activeFlag"v-if="false" /> <el-table-column label="有效标记" align="center" prop="activeFlag"v-if="false" />
<el-table-column label="工厂号" align="center" prop="factoryCode" /> <el-table-column label="工厂号" align="center" prop="factoryCode" />
</el-table> </el-table>
</div>
<pagination <pagination
v-show="total>0" v-show="total>0"
:total="total" :total="total"
@ -555,6 +526,31 @@ export default {
if (!code) return code; // null undefined if (!code) return code; // null undefined
return code.replace(/^0{1,7}/, ''); // 170 return code.replace(/^0{1,7}/, ''); // 170
}, },
// getSummary(data) {
// const totalAmount = data.reduce((sum, row) => sum + (row.amount || 0), 0);
// const totalOutNumber = data.reduce((sum, row) => sum + (row.outNumber || 0), 0);
// const totalRemaining = totalAmount - totalOutNumber;
// return [
// { amount: totalAmount, outNumber: totalOutNumber, remaining: totalRemaining },
// ];
// },
getSummary(param) {
const { columns, data } = param;
const totalAmount = data.reduce((sum, row) => sum + (row.amount || 0), 0);
const totalOutNumber = data.reduce((sum, row) => sum + (row.outNumber || 0), 0);
const totalRemaining = totalAmount - totalOutNumber;
const summary = columns.map((column, index) => {
if (index === 7) { // ""8
return totalAmount;
} else if (index === 8) { // ""9
return totalOutNumber;
}else if (index === 9) { // ""9
return totalRemaining;
}
return ''; //
});
return summary;
},
handlequeryform() { handlequeryform() {
this.showMaterialDialog = true; // this.showMaterialDialog = true; //
this.fetchMaterials(); // this.fetchMaterials(); //
@ -630,10 +626,12 @@ export default {
console.log("Materials processed"); console.log("Materials processed");
this.showMaterialDialog = false; // this.showMaterialDialog = false; //
}, },
handleRemoveBatch(row) { handleRemoveBatch() {
const ids = this.ids;
let postData = this.ids.map(id => ({ mateOrderInSnId: id }));
console.log(postData)
this.$modal.confirm('是否确认删除标识卡编号为"' + wlCode + '"的数据项?').then(function() { this.$modal.confirm('是否确认删除标识卡编号为"' + wlCode + '"的数据项?').then(function() {
return Removecard(); return Removecard(postData);
}).then(() => { }).then(() => {
this.editBatch(); this.editBatch();
this.$modal.msgSuccess("删除成功"); this.$modal.msgSuccess("删除成功");

@ -72,8 +72,8 @@
<span v-else-if="scope.row.orderStatus === '2'">完成</span> <span v-else-if="scope.row.orderStatus === '2'">完成</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column label="类型" align="center" prop="userDefined6" />
<el-table-column label="类型" align="center" prop="userDefined3" /> <el-table-column label="成品中心" align="center" prop="userDefined3" />
<el-table-column label="sap过账状态" align="center" prop="userDefined10"> <el-table-column label="sap过账状态" align="center" prop="userDefined10">
<template slot-scope="scope"> <template slot-scope="scope">
@ -124,11 +124,11 @@
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="10" class="mb8"> <el-row :gutter="10" class="mb8">
<el-col :span="6"> <!-- <el-col :span="6">-->
<el-form-item label="总账科目编号"> <!-- <el-form-item label="总账科目编号">-->
<el-input v-model="queryParams1.accountingSubject" placeholder="总账科目编号"></el-input> <!-- <el-input v-model="queryParams1.accountingSubject" placeholder="总账科目编号"></el-input>-->
</el-form-item> <!-- </el-form-item>-->
</el-col> <!-- </el-col>-->
<el-col :span="6"> <el-col :span="6">
<el-form-item label="收货方"> <el-form-item label="收货方">
<el-input v-model="queryParams1.receiver" placeholder="收货方"></el-input> <el-input v-model="queryParams1.receiver" placeholder="收货方"></el-input>

@ -257,6 +257,17 @@
v-hasPermi="['wms:put:edit']" v-hasPermi="['wms:put:edit']"
>过账</el-button> >过账</el-button>
</el-col> </el-col>
<el-col :span="1.5">
<el-button
type="success"
plain
icon="el-icon-edit"
size="mini"
:disabled="single"
@click="handleUpdateSAP102"
v-hasPermi="['wms:odsRawOrderIn:edit']"
>102冲销</el-button>
</el-col>
<el-col :span="1.5"> <el-col :span="1.5">
<el-button <el-button
type="danger" type="danger"
@ -489,7 +500,7 @@
</template> </template>
<script> <script>
import { listPut, getPut, delPut, addPut, updatePut ,SAPPut} from "@/api/wms/put"; import { listPut, getPut, handleUpdateSAP102,delPut, addPut, updatePut ,SAPPut} from "@/api/wms/put";
export default { export default {
name: "Put", name: "Put",
@ -664,6 +675,32 @@ export default {
// //
this.dialogVisible = true; this.dialogVisible = true;
}, },
// handleUpdateSAP102(row) {
// // ids
// const ids = row.id || this.ids;
//
// //
// if (!this.ids || this.ids.length === 0) {
// this.$message.error("");
// return;
// }
//
// //
// this.dialogVisible = true;
// },
handleUpdateSAP102(row) {
this.reset();
//qualityStatus
const id = this.ids[0]
let postData = this.ids.map(id => ({ id: id }));
this.$modal.confirm('是否进行过账').then(function() {
return handleUpdateSAP102(JSON.stringify(postData));
}).then(() => {
this.getList();
this.$modal.msgSuccess("过账完成");
}).catch(() => {});
},
confirmSelection() { confirmSelection() {
if (!this.selectedType) { if (!this.selectedType) {
this.$message.error("请选择库存类型"); this.$message.error("请选择库存类型");

@ -89,11 +89,11 @@
<el-table-column label="入库单号" align="center" prop="orderCode" /> <el-table-column label="入库单号" align="center" prop="orderCode" />
<el-table-column label="型号编码" align="center" prop="materialCode" /> <el-table-column label="型号编码" align="center" prop="materialCode" />
<el-table-column label="型号名称" align="center" prop="materialDesc" /> <el-table-column label="型号名称" align="center" prop="materialDesc" />
<el-table-column label="日期" align="center" prop="planDate" width="180"> <!-- <el-table-column label="日期" align="center" prop="planDate" width="180">-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<span>{{ parseTime(scope.row.planDate, '{y}-{m}-{d}') }}</span> <!-- <span>{{ parseTime(scope.row.planDate, '{y}-{m}-{d}') }}</span>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column label="单位" align="center" prop="unit" /> <el-table-column label="单位" align="center" prop="unit" />
<el-table-column label="数量" align="center" prop="realityNumber" /> <el-table-column label="数量" align="center" prop="realityNumber" />
<el-table-column label="状态" align="center" prop="orderStatus" /> <el-table-column label="状态" align="center" prop="orderStatus" />
@ -104,17 +104,17 @@
<el-table-column label="备注" align="center" prop="Remark" /> <el-table-column label="备注" align="center" prop="Remark" />
<el-table-column label="创建人" align="center" prop="createBy" /> <el-table-column label="创建人" align="center" prop="createBy" />
<el-table-column label="创建时间" align="center" prop="createDate" width="180"> <!-- <el-table-column label="创建时间" align="center" prop="createDate" width="180">-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<span>{{ parseTime(scope.row.createDate, '{y}-{m}-{d}') }}</span> <!-- <span>{{ parseTime(scope.row.createDate, '{y}-{m}-{d}') }}</span>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column label="最后更新人" align="center" prop="lastUpdateBy" /> <!-- <el-table-column label="最后更新人" align="center" prop="lastUpdateBy" />-->
<el-table-column label="最后更新时间" align="center" prop="lastUpdateDate" width="180"> <!-- <el-table-column label="最后更新时间" align="center" prop="lastUpdateDate" width="180">-->
<template slot-scope="scope"> <!-- <template slot-scope="scope">-->
<span>{{ parseTime(scope.row.lastUpdateDate, '{y}-{m}-{d}') }}</span> <!-- <span>{{ parseTime(scope.row.lastUpdateDate, '{y}-{m}-{d}') }}</span>-->
</template> <!-- </template>-->
</el-table-column> <!-- </el-table-column>-->
<el-table-column label="操作" align="center" class-name="small-padding fixed-width"> <el-table-column label="操作" align="center" class-name="small-padding fixed-width">

Loading…
Cancel
Save