public static TS_OR_HEADER ConvertExAliaAddr2Header(ExVAliasAddr addr, string seq, string dueDate, string orderType, string shipCompFlag, string customerPONO, string orderNote, bool isSpecialShip, string appUser, bool IsAltAddr = false) { TS_OR_HEADER header = new TS_OR_HEADER(); header.ORDER_REQ_NO = string.IsNullOrEmpty(seq)?0:decimal.Parse(seq); //sequence header.SHIPFROM_SEQ = IsAltAddr ? 1 : 0; // 0 or 1 header.TO_SYSTEM = addr.SysID; header.ALIAS_NAME = addr.AliasName; header.CUSTOMER_NO = addr.CustomerNo; header.BILL_TO_LOCATION = (decimal)addr.Bill2Location; header.SHIP_TO_LOCATION = (decimal)addr.Ship2Location; header.DEST_LOCATION = addr.DestLocation; header.DUE_DATE = DateTime.Parse(dueDate); header.ORDER_TYPE = orderType; header.CUSTOMER_PO_NO = customerPONO; header.SPL_IND = ValueConvert.BoolToNY(isSpecialShip); header.SHIPCOMP_FLAG = shipCompFlag; header.ORDER_STATUS = OrderStatusEnum.S.ToString(); //draft ind header.CREATION_DATE = DateTime.Now; header.CREATED_BY = appUser; //appuser get from local arg header.RECORD_DATE = DateTime.Now; header.UPDATED_BY = appUser; header.ORDER_NOTES = orderNote; return(header); }
public ExVAliasAddr GetSpecifyAliasAddrDFLT(string aliasName, string sysID, string cusNo, decimal bill2Location, decimal ship2Location) { V_ALIAS_ADDR_DFLT addrDFLT = dal.GetSpecifyAliasAddrDFLT(aliasName, sysID, cusNo, (int)bill2Location, (int)ship2Location); ClassConvertTable cct = new ClassConvertTable(); ExVAliasAddr ex = new ExVAliasAddr(); ClassConvert.ConvertAction(addrDFLT, ex, cct.AliasAddrDFLTConvert); return(ex); }
public ExVAliasAddr GetSpecifyAliasAddrSPL(string aliasName, string sysID, string cusNo, decimal bill2Location, decimal ship2Location, decimal destLocation) { V_ALIAS_ADDR_SPL addrSPL = dal.GetSpecifyAliasAddrSPL(aliasName, sysID, cusNo, (int)bill2Location, (long)ship2Location, (long)destLocation); ClassConvertTable cct = new ClassConvertTable(); ExVAliasAddr ex = new ExVAliasAddr(); ClassConvert.ConvertAction(addrSPL, ex, cct.AliasAddrSPLConvert); return(ex); }
public List <ExVAliasAddr> GetStrictAliasAddrDFLT(string shipName, string addr, string aliasName) { List <V_ALIAS_ADDR_DFLT> list = dal.GetStrictAliasAddrDFLT(shipName, addr, aliasName); List <ExVAliasAddr> exList = new List <ExVAliasAddr>(); ClassConvertTable cct = new ClassConvertTable(); foreach (var item in list) { ExVAliasAddr ex = new ExVAliasAddr(); ClassConvert.ConvertAction(item, ex, cct.AliasAddrDFLTConvert); exList.Add(ex); } return(exList); }
public List <ExVAliasAddr> GetAliasAddrSPL(string localDestName, string addr, string destName, long?destLocation, string aliasName) { List <V_ALIAS_ADDR_SPL> list = dal.GetAliasAddrSPL(localDestName, addr, destName, destLocation, aliasName); List <ExVAliasAddr> exList = new List <ExVAliasAddr>(); ClassConvertTable cct = new ClassConvertTable(); foreach (var item in list) { ExVAliasAddr ex = new ExVAliasAddr(); ClassConvert.ConvertAction(item, ex, cct.AliasAddrSPLConvert); exList.Add(ex); } return(exList); }
public ActionResult InitOrder(decimal orderSeq) { //if (Session[CHubConstValues.SessionUser] == null) // return RedirectToAction("Login", "Account"); using (CHubEntities db = new CHubEntities()) { string appUser = Session[CHubConstValues.SessionUser].ToString(); ExVAliasAddr priAddr = null; ExVAliasAddr AltAddr = null; List <OrderLineItem> olReslut = new List <OrderLineItem>(); bool isSaved = false; bool splInd = true; string poNum = ""; string dueDate = ""; string note = ""; V_ALIAS_ADDR_DFLT_BLL dfltBLL = new V_ALIAS_ADDR_DFLT_BLL(db); V_ALIAS_ADDR_SPL_BLL splBLL = new V_ALIAS_ADDR_SPL_BLL(db); TS_OR_HEADER_BLL hBLL = new TS_OR_HEADER_BLL(db); List <TS_OR_HEADER> hList = hBLL.GetHeadersBySeq(orderSeq); if (hList != null && hList.Count > 0) { isSaved = true; //Get primary addr and Alt addr foreach (var item in hList) { //special ship if (item.SPL_IND == CHubConstValues.IndY) { splInd = true; if (item.SHIPFROM_SEQ == 0) { poNum = item.CUSTOMER_PO_NO; dueDate = item.DUE_DATE.ToString("yyyy-MM-dd"); note = item.ORDER_NOTES; priAddr = splBLL.GetSpecifyAliasAddrSPL(item.ALIAS_NAME, item.TO_SYSTEM, item.CUSTOMER_NO, item.BILL_TO_LOCATION, item.SHIP_TO_LOCATION, item.DEST_LOCATION); } if (item.SHIPFROM_SEQ == 1) { AltAddr = splBLL.GetSpecifyAliasAddrSPL(item.ALIAS_NAME, item.TO_SYSTEM, item.CUSTOMER_NO, item.BILL_TO_LOCATION, item.SHIP_TO_LOCATION, item.DEST_LOCATION); } } else { splInd = false; if (item.SHIPFROM_SEQ == 0) { poNum = item.CUSTOMER_PO_NO; dueDate = item.DUE_DATE.ToString("yyyy-MM-dd"); note = item.ORDER_NOTES; priAddr = dfltBLL.GetSpecifyAliasAddrDFLT(item.ALIAS_NAME, item.TO_SYSTEM, item.CUSTOMER_NO, item.BILL_TO_LOCATION, item.SHIP_TO_LOCATION); } if (item.SHIPFROM_SEQ == 1) { AltAddr = dfltBLL.GetSpecifyAliasAddrDFLT(item.ALIAS_NAME, item.TO_SYSTEM, item.CUSTOMER_NO, item.BILL_TO_LOCATION, item.SHIP_TO_LOCATION); } } } TS_OR_DETAIL_BLL dBLL = new TS_OR_DETAIL_BLL(db); List <TS_OR_DETAIL> dList = dBLL.GetDetailsBySeq(orderSeq); //change detail ot orderLine OrderLineCheckArg arg = new OrderLineCheckArg(); arg.primarySysID = priAddr.SysID; arg.primaryWareHouse = priAddr.WareHouse; arg.customerNo = priAddr.CustomerNo; if (AltAddr != null) { arg.altSysID = AltAddr.SysID; arg.altWareHosue = AltAddr.WareHouse; } foreach (var item in dList) { arg.olItem = new OrderLineItem(); arg.olItem.CustomerPartNo = item.CUSTOMER_PART_NO; arg.olItem.Qty = item.BUY_QTY; arg.olItem.OrderLineNo = item.ORDER_LINE_NO; CheckOrderLineItemAction(arg); olReslut.Add(arg.olItem); } } else { TS_OR_HEADER_STAGE_BLL hsBLL = new TS_OR_HEADER_STAGE_BLL(db); List <TS_OR_HEADER_STAGE> hsList = hsBLL.GetHeaderStageBySeq(orderSeq); if (hsList != null && hsList.Count > 0) { isSaved = false; //Get primary addr and Alt addr stage foreach (var item in hsList) { //special ship if (item.SPL_IND == CHubConstValues.IndY) { splInd = true; if (item.SHIPFROM_SEQ == 0) { poNum = item.CUSTOMER_PO_NO; dueDate = item.DUE_DATE.ToString("yyyy-MM-dd"); note = item.ORDER_NOTES; priAddr = splBLL.GetSpecifyAliasAddrSPL(item.ALIAS_NAME, item.TO_SYSTEM, item.CUSTOMER_NO, item.BILL_TO_LOCATION, item.SHIP_TO_LOCATION, item.DEST_LOCATION); } } else { splInd = false; if (item.SHIPFROM_SEQ == 0) { poNum = item.CUSTOMER_PO_NO; dueDate = item.DUE_DATE.ToString("yyyy-MM-dd"); note = item.ORDER_NOTES; priAddr = dfltBLL.GetSpecifyAliasAddrDFLT(item.ALIAS_NAME, item.TO_SYSTEM, item.CUSTOMER_NO, item.BILL_TO_LOCATION, item.SHIP_TO_LOCATION); } } } TS_OR_DETAIL_STAGE_BLL dsBLL = new TS_OR_DETAIL_STAGE_BLL(db); List <TS_OR_DETAIL_STAGE> dsList = dsBLL.GetDetailsStageByOrderSeq(orderSeq); //change detail ot orderLine OrderLineCheckArg arg = new OrderLineCheckArg(); arg.primarySysID = priAddr.SysID; arg.primaryWareHouse = priAddr.WareHouse; arg.customerNo = priAddr.CustomerNo; arg.altSysID = null; arg.altWareHosue = null; foreach (var item in dsList) { arg.olItem = new OrderLineItem(); arg.olItem.CustomerPartNo = item.CUSTOMER_PART_NO; arg.olItem.Qty = item.BUY_QTY; arg.olItem.OrderLineNo = item.ORDER_LINE_NO; CheckOrderLineItemAction(arg); olReslut.Add(arg.olItem); } } else { this.Response.StatusCode = (int)HttpStatusCode.BadRequest; return(Content("Wrong Order Seq")); } } var obj = new { priAddr = priAddr, altAddr = AltAddr, orderLines = olReslut, isSaved = isSaved, splInd = splInd, poNum = poNum, dueDate = dueDate, note = note }; return(Json(obj)); } }