var sheet = dataOper.getSheetAt(0);
var maxRow = helper.getSheetLastRowNumber(sheet);
maxRow = maxRow - 1;
function setDtls() {
function getNewDtl(prdId, prdName, prdSpc, wth, hgt, thk, qty, ut, matId, matName, clr, barCode, rem, kw, wl) {
wth = wth == null || wth == "" ? 0 : Math.round(wth);
hgt = hgt == null || hgt == "" ? 0 : Math.round(hgt);
thk = thk == null || thk == "" ? 0 : Math.round(thk);
var res = {
prdId: prdId,
prdName: prdName,
prdSpc: prdSpc,
wth: wth,
hgt: hgt,
thk: thk,
ut: ut,
qty_q: qty,
matId: matId,
matName: matName,
clr: clr,
barCode: barCode,
rem: rem,
kw: kw,
wl: wl
};
return res;
}
function isNumber(val) {
var regPos = /^\d+(\.\d+)?$/;
var regNeg = /^(-(([0-9]+\.[0-9]*[1-9][0-9]*)|([0-9]*[1-9][0-9]*\.[0-9]+)|([0-9]*[1-9][0-9]*)))$/;
if (regPos.test(val) || regNeg.test(val)) {
return true;
} else {
return false;
}
}
function getMatClr(matclr) {
var mat = helper.getMatByClr(matclr);
if (mat == null) {
throw "颜色:[" + matclr + "]在系统中尚未建档"
}
return {
matId: mat.matId,
matName: mat.matName,
clr: matclr
}
}
function getMatInfo(matName) {
var mat = helper.getMatInfo(matName);
if (mat == null) {
throw "材质:[" + matName + "]在系统中尚未建档"
}
}
function getPrdtBySpc(prdSpc) {
var prdt = helper.getPrdInfoByPrdSpc(prdSpc);
if (prdt == null) {
throw "产品型号:[" + prdSpc + "]在系统中不存在";
}
return prdt;
}
function setMbOtherProps(dtl, prdt, mpBean, zh, kongpost) {
dtl.mpId = mpBean.mpId;
dtl.bxName = prdt.dxRem;
if (isNumber(zh)) {
zh = 60 + parseInt(zh);
helper.setDtlBeanParam(dtl, "中横位置", zh);
} else if (zh != "" && zh != null) {
helper.setDtlBeanParam(dtl, "拆解比例", zh);
}
if (kongpost != null && kongpost != "") {
var konglist = kongpost.split("/");
if (konglist.length != 5) {
throw "孔位" + kongpost + "应该有5个值";
}
if (konglist[0] != null && konglist[0] != "" && konglist[0] != 0) {
helper.setDtlBeanParam(dtl, "V1", konglist[0]);
}
if (konglist[1] != null && konglist[1] != "" && konglist[1] != 0) {
helper.setDtlBeanParam(dtl, "V2", konglist[1]);
}
if (konglist[2] != null && konglist[2] != "" && konglist[2] != 0) {
helper.setDtlBeanParam(dtl, "V3", konglist[2]);
}
if (konglist[3] != null && konglist[3] != "" && konglist[3] != 0) {
helper.setDtlBeanParam(dtl, "V4", konglist[3]);
}
if (konglist[4] != null && konglist[4] != "" && konglist[4] != 0) {
helper.setDtlBeanParam(dtl, "V5", konglist[4]);
}
}
}
function getDtlBean(i) {
var ePrdName = helper.getSheetVal(sheet, i, 2);
var ePrdSpc = helper.getSheetVal(sheet, i, 4);
var wth = helper.getSheetVal(sheet, i, 5);
var hgt = helper.getSheetVal(sheet, i, 6);
var thk = helper.getSheetVal(sheet, i, 7);
var qty = helper.getSheetVal(sheet, i, 8);
var matName = helper.getSheetVal(sheet, i, 9);
var clrName = helper.getSheetVal(sheet, i, 10);
var wl = helper.getSheetVal(sheet, i, 12);
var 基材 = helper.getSheetVal(sheet, i, 13);
var barCode = helper.getSheetVal(sheet, i, 14);
var rem = helper.getSheetVal(sheet, i, 15);
var gyNames= helper.getSheetVal(sheet, i, 16);
var kw = helper.getSheetVal(sheet, i, 17);
var kwpost = helper.getSheetVal(sheet, i, 18);
var zh = helper.getSheetVal(sheet, i, 19);
var 产品对象 = null;
var 门片对象 = null;
if (ePrdSpc.indexOf("_") > -1) {
var 产品型号 = ePrdSpc.split("_")[0];
产品对象 = getPrdtBySpc(产品型号);
var 门片型号 = ePrdSpc.split("_")[1];
门片对象 = helper.getMpInfoBySpc(门片型号);
} else {
产品对象 = getPrdtBySpc(ePrdSpc);
}
var 材质对象 = getMatInfo(matName);
var dtl = getNewDtl(产品对象.prdId, prdName, 产品对象.prdSpc, wth, hgt, thk, qty, 产品对象.prdUt, 材质对象.matId, 材质对象.matName, clrName, barCode, rem, kw, wl);
if (产品对象.prdType == 0) {
setMbOtherProps(dtl, 产品对象, 门片对象, zh, kwpost,gyNames);
helper.setObjectCount(0, 产品对象);
}
if(gyNames!=null && gyNames!=""){
gyNames=gyNames.replace(/;/,"/");
var gybean=helper.getGyObject(产品对象.prdId,gyNames);
dtl.gyId=gybean.gyId;
helper.setDtlGyName(dtl,gybean.gyName);
}
helper.setDtlBeanParam(dtl, "板材", 基材);
helper.setObjectCount(1, 材质对象);
helper.setObjectCount(2, clrName);
helper.setObjectCount(3, 基材);
return dtl;
}
for (var i = 5; i <= maxRow; i++) {
try {
var bean = getDtlBean(i);
订单明细.push(bean);
} catch (e) {
throw "在导入行:[" + (i) + "]是发生错误," + e;
}
}
}
setDtls();
function setMainInfo() {
var cusName = "成都伊恋";
var cust = helper.getCustByName(cusName);
if (cust == null) {
throw "客户名称:[" + cusName + "]在系统中未建档";
}
订单主表.cusId = cust.cusId;
var cusrName = helper.getSheetVal(sheet, 2, 8);
var cusrF = helper.getSheetVal(sheet, 2, 3);
cusrName = cusrName + " [" + (cusrF == null ? "" : cusrF) + "]";
var cusrOrderNo = helper.getSheetVal(sheet, 2, 11);
var cusrGtName = helper.getSheetVal(sheet, 3, 3);
var cusrPrd = (cusrOrderNo == null ? "" : cusrOrderNo) + " " + (cusrGtName == null ? "" : cusrGtName);
订单主表.cusrName = cusrName;
订单主表.cusrPrd = cusrPrd;
订单主表.cusrRem = cusrName + " " + cusrPrd;
var prdt = helper.getMaxObjectCount(0);
if (prdt != null) {
订单主表.mxId = prdt.prdId;
订单主表.mxfName = prdt.prdSpc;
订单主表.mxName = prdt.prdSpc;
订单主表.bxName = prdt.dxRem;
}
var mat = helper.getMaxObjectCount(1);
if (mat != null) {
订单主表.matId = mat.matId;
订单主表.maName = mat.maName;
订单主表.clrName = mat.clr;
}
helper.setMainBeanParam(订单主表, "客户编号", cusrOrderNo);
}
setMainInfo();
console