/// <summary> /// 构建业务员配送单信息 /// </summary> /// <param name="order">订单</param> /// <param name="user">业务员</param> /// <param name="outStock">出库单</param> /// <remarks>2014-9-17 朱成果 创建</remarks> private void GenerateOtherDataForTwoSale(AppOrder order, SyUser user, WhStockOut outStock) { var payType = PaymentTypeBo.Instance.GetPaymentTypeFromMemory(order.SoOrder.PayTypeSysNo); bool isNeedPay = payType.PaymentType == (int)BasicStatus.支付方式类型.预付;//是否预付 var delivery = new LgDelivery() { DeliveryUserSysNo = user.SysNo, DeliveryTypeSysNo = outStock.DeliveryTypeSysNo, CreatedBy = user.SysNo, CreatedDate = DateTime.Now, Status = (int)LogisticsStatus.配送单状态.配送在途, StockSysNo = outStock.WarehouseSysNo, IsEnforceAllow = 0, PaidAmount = isNeedPay ? order.SoOrder.CashPay : 0, CODAmount = isNeedPay ? 0 : order.SoOrder.CashPay, }; var deliverySysNo = Hyt.DataAccess.Logistics.ILgDeliveryDao.Instance.CreateLgDelivery(delivery);//创建配送单 var deliveryItem = new LgDeliveryItem() { DeliverySysNo = deliverySysNo, NoteType = (int)Hyt.Model.WorkflowStatus.LogisticsStatus.配送单据类型.出库单, NoteSysNo = outStock.SysNo, Status = (int)Hyt.Model.WorkflowStatus.LogisticsStatus.配送单明细状态.待签收, AddressSysNo = outStock.ReceiveAddressSysNo, TransactionSysNo = outStock.TransactionSysNo, StockOutAmount = outStock.StockOutAmount, PaymentType = payType.PaymentType, Receivable = !isNeedPay ? order.SoOrder.CashPay : 0, IsCOD = !isNeedPay ? (int)Hyt.Model.WorkflowStatus.LogisticsStatus.是否到付.是 : (int)Hyt.Model.WorkflowStatus.LogisticsStatus.是否到付.否, Remarks = "【二次销售自动创建】", CreatedBy = user.SysNo, CreatedDate = DateTime.Now }; Hyt.DataAccess.Logistics.ILgDeliveryDao.Instance.AddDeliveryItem(deliveryItem);//配送单明细 Order.SoOrderBo.Instance.WriteSoTransactionLog(outStock.TransactionSysNo, "出库单" + outStock.SysNo + "分配配送成功,配送单<span style='color:red'>" + deliverySysNo + "</span>", user.UserName);//日志 string msg = "出库单" + outStock.SysNo + "由百城当日达配送员<span style='color:red'>{0}</span>配送中,送货人联系电话<span style='color:red'>{1}</span>"; msg = string.Format(msg, user.UserName, user.MobilePhoneNumber); Order.SoOrderBo.Instance.WriteSoTransactionLog(outStock.TransactionSysNo, msg, user.UserName);//日志 }
private void AddBaseTaskObjectToList(List <BaseTask> listObject) { BaseTask bsAT = new BsArea(); BaseTask bsDP = new BsDeliveryPayment(); BaseTask bsPT = new BsPaymentType(); BaseTask bsCode = new BsCode(); BaseTask bsOrganization = new BsOrganization(); BaseTask bsOrganizationWarehouse = new BsOrganizationWarehouse(); BaseTask crCustomer = new CrCustomer(); BaseTask crCL = new CrCustomerLevel(); BaseTask crCQ = new CrCustomerQuestion(); BaseTask crRA = new CrReceiveAddress(); BaseTask dsMallType = new DsMallType(); BaseTask dsDealerLevel = new DsDealerLevel(); BaseTask feArticle = new FeArticle(); BaseTask feAC = new FeArticleCategory(); BaseTask feCS = new FeCommentSupport(); BaseTask fepc = new FeProductComment(); BaseTask fePCI = new FeProductCommentImage(); BaseTask fePCR = new FeProductCommentReply(); BaseTask feSearchKeyword = new FeSearchKeyword(); BaseTask feadvertgroup = new FeAdvertGroup(); BaseTask feadvertitem = new FeAdvertItem(); BaseTask feproductgroup = new FeProductGroup(); BaseTask feproductitem = new FeProductItem(); BaseTask fnIT = new FnInvoiceType(); BaseTask fninvoice = new FnInvoice(); BaseTask fnpv = new FnReceiptVoucher(); BaseTask fnReceiptVoucherItem = new FnReceiptVoucherItem(); BaseTask fnop = new FnOnlinePayment(); BaseTask fnPaymentVoucher = new FnPaymentVoucher(); BaseTask fnPaymentVoucherItem = new FnPaymentVoucherItem(); BaseTask lgDelivery = new LgDelivery(); BaseTask lgDI = new LgDeliveryItem(); BaseTask lgDS = new LgDeliveryScope(); BaseTask lgDT = new LgDeliveryType(); BaseTask lgDUC = new LgDeliveryUserCredit(); BaseTask lgPT = new LgPickupType(); BaseTask lgsettlement = new LgSettlement(); BaseTask lgSI = new LgSettlementItem(); BaseTask lgDeliveryPrintTemplate = new LgDeliveryPrintTemplate(); BaseTask pdAttribute = new PdAttribute(); BaseTask pdAG = new PdAttributeGroup(); BaseTask pdAGA = new PdAttributeGroupAssociation(); BaseTask pdAO = new PdAttributeOption(); BaseTask pdBrand = new PdBrand(); BaseTask pdCGA = new PdCatAttributeGroupAso(); BaseTask pdCategory = new PdCategory(); BaseTask pdCA = new PdCategoryAssociation(); BaseTask pdPrice = new PdPrice(); BaseTask pdProduct = new PdProduct(); BaseTask pdPA = new PdProductAssociation(); BaseTask pdProductAttribute = new PdProductAttribute(); BaseTask pdPI = new PdProductImage(); BaseTask pdTemplate = new PdTemplate(); BaseTask pdProductStatistics = new PdProductStatistics(); BaseTask soOrder = new SoOrder(); BaseTask soOrderItem = new SoOrderItem(); BaseTask soRA = new SoReceiveAddress(); BaseTask SyUG = new SyUserGroup(); BaseTask syGU = new SyGroupUser(); BaseTask syMenu = new SyMenu(); BaseTask syMenuPrivilege = new SyMenuPrivilege(); BaseTask syPrivilege = new SyPrivilege(); BaseTask syRole = new SyRole(); BaseTask syRoleMenu = new SyRoleMenu(); BaseTask syRolePrivilege = new SyRolePrivilege(); BaseTask syPermission = new SyPermission(); BaseTask syUser = new SyUser(); BaseTask syUW = new SyUserWarehouse(); BaseTask syMyMenu = new SyMyMenu(); BaseTask spcombo = new SpCombo(); BaseTask spComboItem = new SpComboItem(); BaseTask spcopon = new spcoupon(); BaseTask sqpromotion = new SPpromotion(); BaseTask spromotiongift = new SPpromotiongift(); BaseTask sppromotionoverlay = new SPpromotionoverlay(); BaseTask sppromotionrule = new SPpromotionrule(); BaseTask sppromotionrulecondition = new SPpromotionrulecondition(); BaseTask sppromotionrulekeyvalue = new SPpromotionrulekeyvalue(); BaseTask syTaskConfig = new SyTaskConfig(); BaseTask whStockOut = new WhStockOut(); BaseTask whStockOutItem = new WhstockOutItem(); BaseTask whwarehouse = new WhWarehouse(); BaseTask whwa = new WHwarehousearea(); BaseTask whwdy = new WHwarehouseDeliveryType(); BaseTask whWPT = new WhWarehousePickupType(); BaseTask whstockin = new WhStockIn(); BaseTask whstockinItem = new WHStockinItem(); BaseTask rcReturn = new RCReturn(); BaseTask rcReturnItem = new RcReturnItem(); listObject.Add(bsAT); listObject.Add(bsDP); listObject.Add(bsPT); listObject.Add(bsCode); listObject.Add(bsOrganization); listObject.Add(bsOrganizationWarehouse); listObject.Add(crCustomer); listObject.Add(crCL); listObject.Add(crCQ); listObject.Add(crRA); listObject.Add(dsMallType); listObject.Add(dsDealerLevel); listObject.Add(feArticle); listObject.Add(feAC); listObject.Add(feCS); listObject.Add(fePCI); listObject.Add(fePCR); listObject.Add(fepc); listObject.Add(feSearchKeyword); listObject.Add(feadvertgroup); listObject.Add(feadvertitem); listObject.Add(feproductgroup); listObject.Add(feproductitem); listObject.Add(fnIT); listObject.Add(fnpv); listObject.Add(fnReceiptVoucherItem); listObject.Add(fnop); listObject.Add(fninvoice); listObject.Add(fnPaymentVoucher); listObject.Add(fnPaymentVoucherItem); listObject.Add(lgDelivery); listObject.Add(lgDI); listObject.Add(lgDS); listObject.Add(lgDT); listObject.Add(lgPT); listObject.Add(lgsettlement); listObject.Add(lgSI); listObject.Add(lgDeliveryPrintTemplate); listObject.Add(pdAttribute); listObject.Add(pdAG); listObject.Add(pdAGA); listObject.Add(pdAO); listObject.Add(pdBrand); listObject.Add(pdCGA); listObject.Add(pdCategory); listObject.Add(pdCA); listObject.Add(pdPrice); listObject.Add(pdProduct); listObject.Add(pdPA); listObject.Add(pdProductAttribute); listObject.Add(pdTemplate); listObject.Add(pdProductStatistics); listObject.Add(soOrder); listObject.Add(soOrderItem); listObject.Add(spcombo); listObject.Add(spComboItem); listObject.Add(spcopon); listObject.Add(sqpromotion); listObject.Add(spromotiongift); //listObject.Add(sppromotionoverlay); listObject.Add(sppromotionrule); listObject.Add(sppromotionrulecondition); listObject.Add(sppromotionrulekeyvalue); listObject.Add(syGU); listObject.Add(syUW); listObject.Add(SyUG); listObject.Add(syMenu); listObject.Add(syUser); listObject.Add(syPermission); listObject.Add(syMenuPrivilege); listObject.Add(syPrivilege); listObject.Add(syRole); listObject.Add(syRoleMenu); listObject.Add(syRolePrivilege); listObject.Add(syMyMenu); listObject.Add(syTaskConfig); listObject.Add(whStockOut); listObject.Add(whStockOutItem); listObject.Add(whwarehouse); listObject.Add(whwa); listObject.Add(whwdy); listObject.Add(whWPT); listObject.Add(whstockin); listObject.Add(whstockinItem); listObject.Add(rcReturn); listObject.Add(rcReturnItem); listObject.Add(lgDUC); listObject.Add(pdPI); listObject.Add(soRA); }
/// <summary> /// 创建配送单 /// </summary> /// <param name="model">配送单主表实体</param> /// <returns>返回系统编号</returns> /// <remarks> /// 2013-6-14 何方 创建 /// </remarks> public abstract int CreateLgDelivery(LgDelivery model);
/// <summary> /// 更新配送单 /// </summary> /// <param name="model">配送单实体</param> /// <returns></returns> /// <remarks> /// 2013/7/14 何方 创建 /// </remarks> public abstract bool Update(LgDelivery model);
/// <summary> /// 门店自提(补充业务所需的配送单和结算单) /// </summary> /// <param name="entity">出库单</param> /// <param name="user">操作人</param> /// <param name="payMoney">收款金额,如为空表已付款</param> /// <param name="PaymentType">PaymentType.现金或者 PaymentType.刷卡</param> /// <returns></returns> /// <remarks>2013-08-21 朱成果 创建</remarks> private void GenerateOtherDataForPickUp(WhStockOut entity, Hyt.Model.SyUser user, decimal?payMoney, int PaymentType) { var f = Hyt.DataAccess.Finance.IFnReceiptVoucherDao.Instance.GetEntity((int)Hyt.Model.WorkflowStatus.FinanceStatus.收款来源类型.销售单, entity.OrderSysNO); decimal havePaid = 0; if (f != null && f.Status != (int)Hyt.Model.WorkflowStatus.FinanceStatus.收款单状态.作废) { havePaid = f.ReceivedAmount;//预付金额 } var delivery = new LgDelivery() { DeliveryUserSysNo = user.SysNo, DeliveryTypeSysNo = entity.DeliveryTypeSysNo, CreatedBy = user.SysNo, CreatedDate = DateTime.Now, Status = (int)LogisticsStatus.配送单状态.已结算, StockSysNo = entity.WarehouseSysNo, IsEnforceAllow = 0, PaidAmount = havePaid, CODAmount = payMoney.HasValue ? payMoney.Value : 0 }; var deliverySysNo = Hyt.DataAccess.Logistics.ILgDeliveryDao.Instance.CreateLgDelivery(delivery);//生成结算单 var deliveryItem = new LgDeliveryItem() { DeliverySysNo = deliverySysNo, NoteType = (int)Hyt.Model.WorkflowStatus.LogisticsStatus.配送单据类型.出库单, NoteSysNo = entity.SysNo, Status = (int)Hyt.Model.WorkflowStatus.LogisticsStatus.配送单明细状态.已签收, AddressSysNo = entity.ReceiveAddressSysNo, TransactionSysNo = entity.TransactionSysNo, StockOutAmount = entity.StockOutAmount, PaymentType = payMoney.HasValue ? (int)Hyt.Model.WorkflowStatus.BasicStatus.支付方式类型.到付 : (int)Hyt.Model.WorkflowStatus.BasicStatus.支付方式类型.预付, Receivable = payMoney.HasValue ? payMoney.Value : 0, IsCOD = payMoney.HasValue ? (int)Hyt.Model.WorkflowStatus.LogisticsStatus.是否到付.是 : (int)Hyt.Model.WorkflowStatus.LogisticsStatus.是否到付.否, Remarks = "【门店自提系统自动创建】", CreatedBy = user.SysNo, CreatedDate = DateTime.Now }; Hyt.DataAccess.Logistics.ILgDeliveryDao.Instance.AddDeliveryItem(deliveryItem); var settlement = new LgSettlement { AuditDate = DateTime.Now, AuditorSysNo = user.SysNo, CODAmount = payMoney.HasValue ? payMoney.Value : 0, CreatedBy = user.SysNo, CreatedDate = DateTime.Now, DeliveryUserSysNo = user.SysNo, PaidAmount = havePaid, TotalAmount = payMoney.HasValue ? payMoney.Value : 0, Status = (int)LogisticsStatus.结算单状态.已结算, WarehouseSysNo = entity.WarehouseSysNo, Remarks = "【门店自提系统自动创建】" }; int settlementSysNo = Hyt.DataAccess.Logistics.ILgSettlementDao.Instance.Create(settlement); var settlementItem = new LgSettlementItem { CreatedBy = user.SysNo, CreatedDate = DateTime.Now, DeliverySysNo = deliverySysNo, DeliveryItemStatus = (int)LogisticsStatus.结算单状态.已结算, PayAmount = payMoney.HasValue ? payMoney.Value : 0, SettlementSysNo = settlementSysNo, TransactionSysNo = entity.TransactionSysNo, Status = (int)Hyt.Model.WorkflowStatus.LogisticsStatus.结算单明细状态.已结算, StockOutSysNo = entity.SysNo, PayType = PaymentType }; Hyt.DataAccess.Logistics.ILgSettlementItemDao.Instance.Create(settlementItem); }
/// <summary> /// 二期业务数据三段 仓库物流 /// </summary> /// <param name="listObject"></param> private void AddBaseTaskObject2ToList4(List <BaseTask> listObject) { //BaseTask bsAT = new BsArea(); //BaseTask crCustomer = new CrCustomer(); //BaseTask crCL = new CrCustomerLevel(); //BaseTask crCQ = new CrCustomerQuestion(); //BaseTask crRA = new CrReceiveAddress(); //BaseTask feArticle = new FeArticle(); //BaseTask feAC = new FeArticleCategory(); //BaseTask feCS = new FeCommentSupport(); //BaseTask fepc = new FeProductComment(); //BaseTask fePCI = new FeProductCommentImage(); //BaseTask fePCR = new FeProductCommentReply(); //BaseTask fninvoice = new FnInvoice(); //BaseTask fnpv = new FnReceiptVoucher(); //BaseTask fnReceiptVoucherItem = new FnReceiptVoucherItem(); //BaseTask fnop = new FnOnlinePayment(); //BaseTask fnPaymentVoucher = new FnPaymentVoucher(); //BaseTask fnPaymentVoucherItem = new FnPaymentVoucherItem(); //BaseTask lgDelivery = new LgDelivery(); //BaseTask lgDI = new LgDeliveryItem(); //BaseTask lgDS = new LgDeliveryScope(); //BaseTask lgDUC = new LgDeliveryUserCredit(); //BaseTask lgsettlement = new LgSettlement(); //BaseTask lgSI = new LgSettlementItem(); //BaseTask pdAttribute = new PdAttribute(); //BaseTask pdAG = new PdAttributeGroup(); //BaseTask pdAGA = new PdAttributeGroupAssociation(); //BaseTask pdAO = new PdAttributeOption(); //BaseTask pdBrand = new PdBrand(); //BaseTask pdCGA = new PdCatAttributeGroupAso(); //BaseTask pdCategory = new PdCategory(); //BaseTask pdCA = new PdCategoryAssociation(); //BaseTask pdPrice = new PdPrice(); //BaseTask pdProduct = new PdProduct(); //BaseTask pdPA = new PdProductAssociation(); //BaseTask pdProductAttribute = new PdProductAttribute(); //BaseTask pdPI = new PdProductImage(); //BaseTask pdTemplate = new PdTemplate(); //BaseTask soOrder = new SoOrder(); //BaseTask soOrderItem = new SoOrderItem(); //BaseTask soRA = new SoReceiveAddress(); BaseTask lgDelivery = new LgDelivery(); BaseTask lgDI = new LgDeliveryItem(); BaseTask lgsettlement = new LgSettlement(); BaseTask lgSI = new LgSettlementItem(); BaseTask whStockOut = new WhStockOut(); BaseTask whStockOutItem = new WhstockOutItem(); BaseTask whstockin = new WhStockIn(); BaseTask whstockinItem = new WHStockinItem(); BaseTask rcReturn = new RCReturn(); BaseTask rcReturnItem = new RcReturnItem(); //listObject.Add(bsAT); ////listObject.Add(bsOrganization); //listObject.Add(crCustomer); //listObject.Add(crCL); //listObject.Add(crCQ); //listObject.Add(crRA); //listObject.Add(feArticle); //listObject.Add(feAC); //listObject.Add(feCS); //listObject.Add(fePCI); //listObject.Add(fePCR); //listObject.Add(fepc); //listObject.Add(fnpv); //listObject.Add(fnReceiptVoucherItem); //listObject.Add(fnop); //listObject.Add(fninvoice); //listObject.Add(fnPaymentVoucher); //listObject.Add(fnPaymentVoucherItem); //listObject.Add(lgDelivery); //listObject.Add(lgDI); //listObject.Add(lgDS); //listObject.Add(lgsettlement); //listObject.Add(lgSI); //listObject.Add(pdAttribute); //listObject.Add(pdAG); //listObject.Add(pdAGA); //listObject.Add(pdAO); //listObject.Add(pdBrand); //listObject.Add(pdCGA); //listObject.Add(pdCategory); //listObject.Add(pdCA); //listObject.Add(pdPrice); //listObject.Add(pdProduct); //listObject.Add(pdPA); //listObject.Add(pdProductAttribute); //listObject.Add(pdTemplate); //listObject.Add(pdPI); //listObject.Add(soOrder); //listObject.Add(soOrderItem); //listObject.Add(soRA); listObject.Add(whStockOut); listObject.Add(whStockOutItem); listObject.Add(whstockin); listObject.Add(whstockinItem); listObject.Add(rcReturn); listObject.Add(rcReturnItem); listObject.Add(lgDelivery); listObject.Add(lgDI); listObject.Add(lgsettlement); listObject.Add(lgSI); }