public void SyncSHD() { //经gamal确认,款到发货、货到付款订单审核时均生成送货单记录 //if (CurrentSO.BaseInfo.PayWhenReceived == false) //{ // return; //} var soItem = CurrentSO.Items; soItem = soItem.Where(p => p.InventoryType == ProductInventoryType.Company || p.InventoryType == ProductInventoryType.TwoDoor).ToList(); //同步送货单 foreach (var item in soItem) { //大件一个商品一个送货单。 ERPSHDInfo erpinfo = new ERPSHDInfo(); erpinfo.SHDTypeMemo = "送货单"; erpinfo.RefOrderNo = SOSysNo.ToString(); erpinfo.RefOrderType = "销售订单"; erpinfo.SysMemo = erpinfo.RefOrderNo + "/" + erpinfo.RefOrderType; erpinfo.ZDR = ServiceContext.Current.UserSysNo; erpinfo.ZDSJ = DateTime.Now; erpinfo.ZXR = ServiceContext.Current.UserSysNo; erpinfo.ZXSJ = DateTime.Now; erpinfo.SHDItemList = new List <ERPSHDItem>(); ERPSHDItem erpitem = new ERPSHDItem(); erpitem.ProductSysNo = item.ProductSysNo; erpitem.SL = item.Quantity; erpinfo.SHDItemList.Add(erpitem); //ObjectFactory<ISyncERPBizRecord>.Instance.CreateSHD(erpinfo); } }
/// <summary> /// 返仓单 /// </summary> /// <param name="shdInfo"></param> /// <returns></returns> public ERPSHDInfo CreateSHD_FC(ERPSHDInfo shdInfo) { shdInfo.JLBH = erpDA.GetJLBH("SHD_SH"); shdInfo.DJLX = 0; shdInfo.SHDTypeMemo = "返仓单"; if (shdInfo.SHRQ == null) { shdInfo.SHRQ = DateTime.Now; } if (shdInfo.SHSJ == null) { shdInfo.SHSJ = "全天"; } shdInfo.BZ = "B2C_" + shdInfo.RefOrderNo + " " + shdInfo.RefOrderType + " " + shdInfo.SHDTypeMemo; erpDA.CreateSHD(shdInfo); int itemINX = 1; foreach (ERPSHDItem shdItem in shdInfo.SHDItemList) { shdItem.JLBH = shdInfo.JLBH; shdItem.INX = itemINX++; shdItem.ERP_SP_ID = shdItem.ERP_SP_ID.HasValue ? shdItem.ERP_SP_ID : 0; erpDA.CreateSHDItem(shdItem); } ERPSHDInfo result = erpDA.GetSHDInfoByJLBH((int)shdInfo.JLBH); return(shdInfo); }
/// <summary> /// 创建送货单 /// </summary> /// <param name="adjustInfo"></param> /// <returns></returns> public void CreateSHD(ERPSHDInfo shdInfo) { DataCommand cmd = DataCommandManager.GetDataCommand("ERP_CreateSHD"); cmd.SetParameterValue("@JLBH", shdInfo.JLBH); cmd.SetParameterValue("@BDJK", shdInfo.BDJK); cmd.SetParameterValue("@BZ", shdInfo.BZ); cmd.SetParameterValue("@DEPTID", shdInfo.DEPTID); cmd.SetParameterValue("@DEPTID_BC", shdInfo.DEPTID_BC); cmd.SetParameterValue("@DJLX", shdInfo.DJLX); cmd.SetParameterValue("@KCDD_BR", shdInfo.KCDD_BR); cmd.SetParameterValue("@KHID", shdInfo.KHID); cmd.SetParameterValue("@QHBZ", shdInfo.QHBZ); cmd.SetParameterValue("@SHRQ", shdInfo.SHRQ); cmd.SetParameterValue("@SHSJ", shdInfo.SHSJ); cmd.SetParameterValue("@WGBJ", shdInfo.WGBJ); cmd.SetParameterValue("@XHHD", shdInfo.XHHD); cmd.SetParameterValue("@ZDR", shdInfo.ZDR); cmd.SetParameterValue("@ZDSJ", shdInfo.ZDSJ); cmd.SetParameterValue("@ZXR", shdInfo.ZXR); cmd.SetParameterValue("@ZXSJ", shdInfo.ZXSJ); cmd.ExecuteNonQuery(); DataCommand cmd2 = DataCommandManager.GetDataCommand("ECC_InsertSHDMapping"); cmd2.SetParameterValue("@SHDSysNo", shdInfo.JLBH); cmd2.SetParameterValue("@RefOrderNo", shdInfo.RefOrderNo); cmd2.SetParameterValue("@RefOrderType", shdInfo.RefOrderType); cmd2.ExecuteNonQuery(); }
/// <summary> /// 获取送货单据信息 /// </summary> /// <param name="jlbh"></param> /// <returns></returns> public ERPSHDInfo GetSHDInfoByJLBH(int jlbh) { ERPSHDInfo shdInfo = erpDA.GetSHDInfoByJLBH(jlbh); if (shdInfo != null) { shdInfo.SHDItemList = erpDA.GetSHDItemByJLBH(jlbh); } return(shdInfo); }
private void SyncERPAction(RMARegisterInfo registerEntity) { bool isInventoryTypeInvalid = registerEntity.BasicInfo.InventoryType != ProductInventoryType.Company && registerEntity.BasicInfo.InventoryType != ProductInventoryType.TwoDoor; bool isERPStatusInvalid = registerEntity.BasicInfo.ERPStatus != ERPReturnType.UnReturn; bool isRequestTypeInvalid = registerEntity.RequestType != RMARequestType.Return && registerEntity.RequestType != RMARequestType.Exchange; if (isInventoryTypeInvalid || isERPStatusInvalid || isRequestTypeInvalid) { return; } ERPSHDInfo erpinfo = new ERPSHDInfo(); erpinfo.RefOrderNo = registerEntity.SysNo.Value.ToString(); erpinfo.RefOrderType = "退款单件"; erpinfo.SysMemo = erpinfo.RefOrderNo + "/" + erpinfo.RefOrderType; erpinfo.ZDR = ServiceContext.Current.UserSysNo; erpinfo.ZDSJ = DateTime.Now; erpinfo.ZXR = ServiceContext.Current.UserSysNo; erpinfo.ZXSJ = DateTime.Now; erpinfo.SHDItemList = new List <ERPSHDItem>(); ERPSHDItem erpitem = new ERPSHDItem(); erpitem.ProductSysNo = registerEntity.BasicInfo.ProductSysNo; erpitem.SL = 1; erpinfo.SHDItemList.Add(erpitem); //if (registerEntity.RequestType == RMARequestType.Exchange) //{ // ObjectFactory<ISyncERPBizRecord>.Instance.CreateSHD_TCWF(erpinfo); //} //else if (registerEntity.RequestType == RMARequestType.Return) //{ // ObjectFactory<ISyncERPBizRecord>.Instance.CreateSHD_FC(erpinfo); //} //更新ERPStatus //registerDA.SyncERP(registerEntity.SysNo.Value); }