import gridBody from './HandTask/ManualOutboundTask.vue'
import showCodeDX from './Boxing/showDetial.vue'
let extension = {
components: {
//查询界面扩展组件
gridHeader: showCodeDX,
gridBody: gridBody,
gridFooter: '',
//新建、编辑弹出框扩展组件
modelHeader: '',
modelBody: '',
modelFooter: ''
},
tableAction: '', //指定某张表的权限(这里填写表名,默认不用填写)
buttons: { view: [], box: [], detail: [] }, //扩展的按钮
methods: {
//下面这些方法可以保留也可以删除
onInit() {
//框架初始化配置前,
//设置查询界面弹出框的label宽度
this.boxOptions.labelWidth = 50;
let options = {
field: 'palletCode',
title: '托盘码',
sortable: true,
type: 'text',
//link:true,
fixed: true,
width: 120,
formatter: (row) => {
return '' + row.palletCode + ''
},
click: (row, column, event) => {
this.$refs.gridHeader.showDetial = true;
this.$refs.gridHeader.PalletCode = row.palletCode;
// var data = {
// palletCode: row.palletCode
// };
//console.log(row.palletCode);
var _this = this;
this.http
.post("/api/Dt_PalletStockInfoDetail/GetBarcodeDetial", row.palletCode, "查询数据中")
.then((x) => {
//console.log(x.data);
if (x.status == 1) {
_this.$refs.gridHeader.materielList = x.data;
}
});
}
};
//this.columns.splice(1, 0, options);
var ManualOutbound = this.buttons.find(x => x.value == "ManualOutBound");
if (ManualOutbound != null) {
ManualOutbound.onClick = () => {
let rows = this.$refs.table.getSelected();
if (rows.length == 0) {
return this.$error("请选择数据!");
}
//console.log(rows);
let errmsg = "";
rows.forEach(element => {
if (element.stockStatus != 2)
errmsg = "当前选择数据中有不符合出库状态库存!";
if (element.areaCode != rows[0].areaCode)
errmsg = "当前选择数据中含有不同库区的数据";
});
if (errmsg != "")
return this.$error(errmsg)
var barcodeList = rows.map(x =>
x.palletCode
);
if (barcodeList.length == 0)
return this.$error("请选择要出库的库存数据!");
// else if (rows.length > 1) {
// return this.$error("只能选择单条数据");
// }
this.$refs.gridBody.open(barcodeList);
this.refresh();
}
};
this.columns.forEach((column) => {
if (column.field == 'materielName') {
column.formatter = (row) => {
// return '' + row?.locationInfo?.roadwayNo + ''
return row?.stockInfoDetails[0]?.materielName
}
}
if (column.field == 'quantity') {
column.formatter = (row) => {
// return '' + row?.locationInfo?.roadwayNo + ''
return row?.stockInfoDetails[0]?.quantity
}
}
})
},
onInited() {
//框架初始化配置后
//如果要配置明细表,在此方法操作
//this.detailOptions.columns.forEach(column=>{ });
},
searchBefore(param) {
//界面查询前,可以给param.wheres添加查询参数
//返回false,则不会执行查询
return true;
},
searchAfter(result) {
//查询后,result返回的查询数据,可以在显示到表格前处理表格的值
return true;
},
addBefore(formData) {
//新建保存前formData为对象,包括明细表,可以给给表单设置值,自己输出看formData的值
return true;
},
updateBefore(formData) {
//编辑保存前formData为对象,包括明细表、删除行的Id
return true;
},
addrow() {
return true;
},
rowClick({ row, column, event }) {
//查询界面点击行事件
//this.$refs.table.$refs.table.toggleRowSelection(row); //单击行时选中当前行;
},
modelOpenAfter(row) {
//点击编辑、新建按钮弹出框后,可以在此处写逻辑,如,从后台获取数据
//(1)判断是编辑还是新建操作: this.currentAction=='Add';
//(2)给弹出框设置默认值
//(3)this.editFormFields.字段='xxx';
//如果需要给下拉框设置默认值,请遍历this.editFormOptions找到字段配置对应data属性的key值
//看不懂就把输出看:console.log(this.editFormOptions)
}
}
};
export default extension;