/// <summary> /// 加载Combo所有信息 /// </summary> /// <param name="sysNo"></param> /// <returns></returns> public virtual ComboInfo Load(int sysNo) { ComboInfo info = null; DataCommand cmd = DataCommandManager.GetDataCommand("LoadComboInfo"); cmd.SetParameterValue("@SysNo", sysNo); DataSet ds = cmd.ExecuteDataSet(); DataTable dtMaster = ds.Tables[0]; DataTable dtItem = ds.Tables[1]; if (dtMaster == null || dtMaster.Rows.Count == 0) { return(null); } info = DataMapper.GetEntity <ComboInfo>(dtMaster.Rows[0], (row, entity) => { entity.Name = new BizEntity.LanguageContent(row["SaleRuleName"].ToString().Trim()); entity.TargetStatus = entity.Status; entity.IsShowName = row["IsShow"].ToString().Trim().ToUpper() == "Y" ? true : false; }); info.Items = DataMapper.GetEntityList <ComboItem, List <ComboItem> >(dtItem.Rows, (row, entity) => { entity.IsMasterItemB = row["IsMasterItem"] == null ? false : (row["IsMasterItem"].ToString() == "1" ? true : false); }); return(info); }
/// <summary> /// 根据套餐编号获取套餐信息和套餐商品列表 /// </summary> /// <param name="comboSysNo">套餐编号</param> /// <returns></returns> public static ComboInfo GetComboByComboSysNo(int comboSysNo) { DataCommand cmd = DataCommandManager.GetDataCommand("Promotion_GetComboByComboSysNo"); cmd.SetParameterValue("@ComboSysNo", comboSysNo); DataSet ds = cmd.ExecuteDataSet(); ComboInfo combo = new ComboInfo(); DataTable dtMaster = ds.Tables[0]; DataTable dtItems = ds.Tables[1]; if (dtMaster != null && dtMaster.Rows.Count > 0) { combo = DataMapper.GetEntity <ComboInfo>(dtMaster.Rows[0], (row, entity) => { entity.IsShowName = row["IsShow"] == null ? false : row["IsShow"].ToString().Trim().ToUpper() == "Y" ? true : false; }); combo.Items = DataMapper.GetEntityList <ComboItem, List <ComboItem> >(dtItems.Rows, (row, entity) => { entity.IsMasterItemB = row["IsMasterItem"] == null ? false : (row["IsMasterItem"].ToString() == "1" ? true : false); }); } return(combo); }
private void ValidateEntity(ComboInfo entity) { if (entity.SysNo > 0) { var item = Load(entity.SysNo); if (item == null) { throw new BusinessException(LanguageHelper.GetText("单据已不存在。")); } if (item.SellerSysNo != entity.SellerSysNo) { throw new BusinessException(LanguageHelper.GetText("您无权操作此单据。")); } if (item.Status != ComboStatus.Deactive) { throw new BusinessException(LanguageHelper.GetText("此单据不是无效状态,无法执行编辑操作。")); } } if (string.IsNullOrWhiteSpace(entity.SaleRuleName)) { throw new BusinessException(LanguageHelper.GetText("活动名称不可为空!")); } if (entity.Items == null || entity.Items.Count < 2) { throw new BusinessException(LanguageHelper.GetText("捆绑促销活动至少包含2个商品!")); } foreach (var item in entity.Items) { var product = ProductService.GetProductBySysNo(entity.SellerSysNo.Value, item.ProductSysNo); if (Math.Abs(item.Discount) > product.CurrentPrice) { throw new BusinessException(LanguageHelper.GetText(string.Format("商品#{0}的折扣不能大于卖价!", product.SysNo))); } } }
/// <summary> /// 产品筛选(产品名) /// </summary> /// yangj 16.08.02 /// <returns></returns> public List <ComboInfo> FindByProduceName(int creditId) { SqlCommand comm = DHelper.GetSqlCommand(@" SELECT DISTINCT Name FROM PROD_ProduceInfo AS A LEFT JOIN CRET_BindProduce AS B ON A.ProduceId = B.ProduceId WHERE B.CreditId = @CreditId;"); DHelper.AddParameter(comm, "@CreditId", SqlDbType.Int, creditId); DataTable dt = DHelper.ExecuteDataTable(comm); List <ComboInfo> list = new List <ComboInfo>(); foreach (DataRow dr in dt.Rows) { ComboInfo cbi = new ComboInfo(dr["Name"].ToString(), dr["Name"].ToString()); list.Add(cbi); } return(list); }
/// <summary> /// 根据父节点查找字典 /// </summary> /// <param name="parentCode"></param> /// <param name="dictionaryTypeID"></param> /// yand 16.07.18 /// <returns></returns> public List <ComboInfo> GetComListByPanrentCode(int parentCode, int dictionaryTypeID) { SqlCommand comm = DHelper.GetSqlCommand(@" SELECT Code,Name FROM BANK_DictionaryCode WHERE ParentCode = @ParentCode AND BDT_ID = @dictionaryTypeID "); DHelper.AddInParameter(comm, "@dictionaryTypeID", SqlDbType.Int, dictionaryTypeID); DHelper.AddInParameter(comm, "@ParentCode", SqlDbType.NChar, parentCode); DataTable dt = DHelper.ExecuteDataTable(comm); List <ComboInfo> list = new List <ComboInfo>(); foreach (DataRow dr in dt.Rows) { var cbi = new ComboInfo(string.Empty, string.Empty); object p1 = dr["Code"]; object p2 = dr["Name"]; if (p1 != null) { cbi.value = p1.ToString(); } if (p2 != null) { cbi.text = p2.ToString(); } list.Add(cbi); } return(list); }
public int ComboInfo_UpdateById(ComboInfo obj) { using (VideosAccess access = new VideosAccess()) { return(access.ComboInfo_UpdateById(obj)); } }
public void Calculate(ref OrderInfo order) { if (order.DiscountDetailList == null) { order.DiscountDetailList = new List <OrderItemDiscountInfo>(); } foreach (OrderItemGroup itemGroup in order.OrderItemGroupList) { if (itemGroup.PackageNo > 0 && itemGroup.PackageType == 1) { ComboInfo combo = PromotionDA.GetComboByComboSysNo(itemGroup.PackageNo); if (combo != null && combo.Items != null && combo.Items.Count > 0) { foreach (ComboItem comboItem in combo.Items) { OrderItemDiscountInfo itemDiscount = new OrderItemDiscountInfo(); itemDiscount.DiscountActivityName = combo.SaleRuleName; itemDiscount.DiscountActivityNo = itemGroup.PackageNo; itemDiscount.DiscountType = 1; itemDiscount.PackageNo = itemGroup.PackageNo; itemDiscount.ProductSysNo = comboItem.ProductSysNo; itemDiscount.Quantity = itemGroup.Quantity * comboItem.Quantity; itemDiscount.UnitDiscount = Math.Abs(comboItem.Discount); itemDiscount.UnitRewardedBalance = 0; itemDiscount.UnitRewardedPoint = 0; itemDiscount.UnitShipFeeDiscountAmt = 0; order.DiscountDetailList.Add(itemDiscount); } } } } }
/// <summary> /// 获取促销结果 /// </summary> /// <param name="origComboList"></param> /// <param name="soInfo"></param> /// <param name="soItemList"></param> /// <param name="promotionInfoList"></param> protected virtual void GetPromotionListForSO(List <ComboInfo> origComboList, SOInfo soInfo, ref List <SOItemInfo> soItemList, ref List <SOPromotionInfo> promotionInfoList) { //1.取当前订单商品有效的Combo List <ComboInfo> validComboList = GetValidComboList(origComboList, soItemList); if (validComboList.Count == 0) { return; } //2.按照这些可以参与活动的Combo列表,得到所有的折扣列表: 遵循最大Combo折扣优先原则,而不是客户最大折扣优先原则 List <ComboApplyInstance> comboApplyList = new List <ComboApplyInstance>(); foreach (ComboInfo combo in validComboList) { ComboApplyInstance comboApply = new ComboApplyInstance(); ComboInfo comboClone = SerializationUtility.DeepClone <ComboInfo>(combo); comboApply.ComboSysNo = comboClone.SysNo.Value; //获取当前Combo在订单中最多可以存在多少套: 取订单中满足该Combo商品中最小数量 int maxCount = int.MaxValue; foreach (ComboItem comboItem in comboClone.Items) { SOItemInfo soItem = soItemList.Find(f => f.ProductSysNo == comboItem.ProductSysNo); int curCount = soItem.Quantity.Value / comboItem.Quantity.Value; if (curCount < maxCount) { maxCount = curCount; } } comboApply.Qty = maxCount; decimal totalDiscount = 0.00m; foreach (ComboItem comboItem in comboClone.Items) { totalDiscount += Math.Round(comboItem.Discount.Value * comboItem.Quantity.Value * maxCount, 2); } //取Combo Total Discount的绝对值 comboApply.TotalDiscount = Math.Abs(totalDiscount); comboApplyList.Add(comboApply); } //3.得到折扣从大到小排序的列表 var comboApplySortList = from p in comboApplyList orderby p.TotalDiscount descending select p; //4.取最大折扣的Combo ComboApplyInstance maxDiscountComboApply = comboApplySortList.First(); ComboInfo curCombo = validComboList.Find(f => f.SysNo.Value == maxDiscountComboApply.ComboSysNo); SOPromotionInfo promotionInfo = GetPromotionInfoForCurrentCombo(curCombo, maxDiscountComboApply, ref soItemList, promotionInfoList.Count + 1, soInfo.SysNo); if (promotionInfo != null) { promotionInfoList.Add(promotionInfo); } //5.轮询调用剩下的订单商品 GetPromotionListForSO(validComboList, soInfo, ref soItemList, ref promotionInfoList); }
/// <summary> /// 年款 /// </summary> /// <param name="makeCode"></param> /// <param name="familyCode"></param> /// <returns></returns> public List <ComboInfo> YearOption(string makeCode, string familyCode) { List <ComboInfo> list = new List <ComboInfo>(); SQLHelper iautosHelper = new SQLHelper(new WebConfigure("connIautos")); SqlCommand comm = iautosHelper.GetSqlCommand(@" SELECT yi.ID,yi.Year FROM IautosYearInfo AS yi LEFT JOIN IautosSeriesInfo AS si ON si.SeriesID = yi.SeriesID WHERE si.SeriesID = @SeriesID AND si.BrandID = @BrandID ORDER BY Year DESC "); iautosHelper.AddInParameter(comm, "@BrandID", SqlDbType.Int, makeCode); iautosHelper.AddInParameter(comm, "@SeriesID", SqlDbType.Int, familyCode); DataTable dt = iautosHelper.ExecuteDataTable(comm); if (dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { ComboInfo cbi = new ComboInfo(dr["ID"].ToString(), dr["Year"].ToString()); list.Add(cbi); } } return(list); }
/// <summary> /// 批量创建Combo /// </summary> /// <param name="comboList"></param> /// <returns></returns> public virtual List <ComboInfo> BatchCreateCombo(List <ComboInfo> comboList) { TransactionOptions options = new TransactionOptions(); options.IsolationLevel = System.Transactions.IsolationLevel.ReadCommitted; options.Timeout = TransactionManager.DefaultTimeout; #region Check if (comboList != null && comboList.Count > 0) { ComboInfo combo = comboList[0]; List <string> errorList = CheckBasicIsPass(combo); if (errorList.Count > 0) { throw new BizException(errorList.Join("\r\n")); } errorList = CheckComboItemIsPass(combo); if (errorList.Count > 0) { throw new BizException(errorList.Join("\r\n")); } if (!CheckPriceIsPass(combo)) { //errorList.Add("差价大于成本(销售价格和 + 总折扣 < 成本价格和),请先提交审核!"); errorList.Add(ResouceManager.GetMessageString("MKT.Promotion.Combo", "Combo_ExamineFirstWhenPriceDiffrenceIsHigher")); } if (errorList.Count > 0) { throw new BizException(errorList.Join("\r\n")); } foreach (ComboItem i in combo.Items) { if (!CheckMarginIsPass(i)) { // errorList.Add(string.Format("商品{0}毛利率小于最低毛利率,请提交审核!", item.ProductID)); errorList.Add(string.Format(ResouceManager.GetMessageString("MKT.Promotion.Combo", "Combo_ExamineFirstWhenRateOfMarginIsHigher"), i.ProductID)); } } if (errorList.Count > 0) { throw new BizException(errorList.Join("\r\n")); } } #endregion using (TransactionScope scope = new TransactionScope(TransactionScopeOption.Required, options)) { comboList.ForEach(p => { p.SysNo = CreateCombo(p); }); scope.Complete(); } return(comboList); }
/// <summary> /// 更新保存时需要检查状态变化 /// </summary> /// <param name="entity"></param> /// <returns></returns> protected virtual List <string> CheckValidateWhenChangeStatus(ComboInfo entity) { List <string> errList = new List <string>(); if (entity.Status.Value == ComboStatus.Deactive && entity.TargetStatus.Value == ComboStatus.Active) { if (!CheckPriceIsPass(entity)) { //errList.Add("差价大于成本(销售价格和 + 总折扣 < 成本价格和),请先提交审核!"); errList.Add(ResouceManager.GetMessageString("MKT.Promotion.Combo", "Combo_ExamineFirstWhenPriceDiffrenceIsHigher")); } if (entity.Items.Find(f => f.IsMasterItemB.HasValue && f.IsMasterItemB.Value) == null) { //throw new BizException("套餐必须有一个主商品!"); throw new BizException(ResouceManager.GetMessageString("MKT.Promotion.Combo", "Combo_MustOneMainGoods")); } } if (entity.Status.Value == ComboStatus.WaitingAudit && entity.TargetStatus.Value == ComboStatus.Active) { //bug 127:要求添加验证 //throw new BizException("待审核规则必须【审核通过】之后才能变为有效状态!"); throw new BizException(ResouceManager.GetMessageString("MKT.Promotion.Combo", "Combo_ActiveNeedAfterAuditPass")); } return(errList); }
/// <summary> /// 产品筛选 /// </summary> /// yangj 16.08.02 /// <param name="produceName">产品名</param> /// <param name="repaymentMethod">还款方式</param> /// <param name="financingPeriods">融资期限</param> /// <returns></returns> public List <ComboInfo> FindProduct(string produceName, string repaymentMethod, string financingPeriods, int creditId) { SqlCommand comm = DHelper.GetSqlCommand(@" SELECT A.ProduceId, Code FROM PROD_ProduceInfo AS A LEFT JOIN CRET_BindProduce AS B ON A.ProduceId = B.ProduceId WHERE B.CreditId = @CreditId AND (@Name IS NULL OR Name=@Name) AND (@RepaymentMethod IS NULL OR RepaymentMethod=@RepaymentMethod) AND (@FinancingPeriods IS NULL OR FinancingPeriods=@FinancingPeriods)"); DHelper.AddParameter(comm, "@CreditId", SqlDbType.Int, creditId); DHelper.AddParameter(comm, "@Name", SqlDbType.NVarChar, produceName); DHelper.AddParameter(comm, "@RepaymentMethod", SqlDbType.Int, repaymentMethod); DHelper.AddParameter(comm, "@FinancingPeriods", SqlDbType.Int, financingPeriods); DataTable dt = DHelper.ExecuteDataTable(comm); List <ComboInfo> list = new List <ComboInfo>(); foreach (DataRow dr in dt.Rows) { ComboInfo cbi = new ComboInfo(dr["ProduceId"].ToString(), dr["Code"].ToString()); list.Add(cbi); } return(list); }
public int ComboInfo_Insert(ComboInfo obj) { using (VideosAccess access = new VideosAccess()) { return(access.ComboInfo_Insert(obj)); } }
/// <summary> /// 加载Combo所有信息 /// </summary> /// <param name="sysNo"></param> /// <returns></returns> public ComboInfo Load(int?sysNo) { ComboInfo info = _processor.Load(sysNo); if (info != null && info.Items != null && info.Items.Count > 0) { foreach (ComboItem item in info.Items) { ProductInfo product = ExternalDomainBroker.GetProductInfo(item.ProductSysNo.Value); VendorBasicInfo vendor = new VendorBasicInfo(); if (product != null && product.Merchant != null) { vendor = ExternalDomainBroker.GetVendorBasicInfoBySysNo(product.Merchant.SysNo.Value); } item.MerchantName = vendor != null ? (vendor.VendorType == VendorType.IPP ? ResouceManager.GetMessageString("MKT.Promotion.Combo", "Combo_NeweggMerchant") : product.Merchant.MerchantName) : ""; item.MerchantSysNo = product.Merchant != null ? product.Merchant.MerchantID : null; item.ProductID = product.ProductID; item.ProductName = product.ProductName; item.ProductPoint = product.ProductPriceInfo.Point; item.ProductCurrentPrice = product.ProductPriceInfo.CurrentPrice; item.ProductUnitCost = product.ProductPriceInfo.UnitCost; } } return(info); }
public List <ComboInfo> ComboInfo_SelectPage(string cloumns, int pageIndex, int pageSize, string orderBy, string where, out int rowCount) { DbCommand dbCmd = db.GetStoredProcCommand("Proc_ComboInfo_SelectPage"); db.AddOutParameter(dbCmd, "@rowCount", DbType.Int32, 4); db.AddInParameter(dbCmd, "@cloumns", DbType.String, cloumns); db.AddInParameter(dbCmd, "@pageIndex", DbType.Int32, pageIndex); db.AddInParameter(dbCmd, "@pageSize", DbType.Int32, pageSize); db.AddInParameter(dbCmd, "@orderBy", DbType.String, orderBy); db.AddInParameter(dbCmd, "@where", DbType.String, where); List <ComboInfo> list = new List <ComboInfo>(); try { using (IDataReader reader = db.ExecuteReader(dbCmd)) { while (reader.Read()) { ComboInfo obj = Obj2Model <ComboInfo>(reader); list.Add(obj); } reader.NextResult(); } rowCount = (int)dbCmd.Parameters["@rowCount"].Value; return(list); } catch (Exception e) { throw new Exception(e.Message); } }
/* *修改原因:需求变更 *修改内容:设置产品的价格和+折扣<成本价格和 变为待审核状态.--这是以前的逻辑,现在改成只要有一个商品的毛利小于0,即变成待审核 */ #endregion //设置产品的价格和+折扣<成本价格和 变为待审核状态 //提供一个接口供商品价格管理模块来调用,传入商品ID或者sysno, //然后检查商品对应捆绑规则是否有低于成本价的情况,有的就将其变为待审核(status=1)! /// <summary> /// 检查条件:如果(1)Combo当前是有效状态(2)价格和+折扣和 小于 成本价格和 ,价格检查不通过 /// /// </summary> /// <param name="entity"></param> /// <returns></returns> public virtual bool CheckPriceIsPass(ComboInfo entity) { bool result = true; if (entity.Items != null && entity.Items.Count > 0) { foreach (ComboItem item in entity.Items) { decimal totalPrice = 0.00m; //商品总价=单价*数量 decimal totalDiscount = 0.00m; //折扣==折扣*数量 折扣是负数 decimal totalCost = 0.00m; // 成本=成本价*数量 ProductInfo product = ExternalDomainBroker.GetProductInfo(item.ProductSysNo.Value); totalPrice += Math.Round(product.ProductPriceInfo.CurrentPrice.Value * item.Quantity.Value, 2); totalDiscount += Math.Round(item.Discount.Value * item.Quantity.Value, 2); totalCost += Math.Round(product.ProductPriceInfo.UnitCost * item.Quantity.Value, 2); if (totalPrice + totalDiscount < totalCost) { return(false); } } } return(result); }
/// <summary> /// 系列 /// </summary> /// <param name="makeCode"></param> /// <returns></returns> public List <ComboInfo> FamilyOption(string makeCode) { List <ComboInfo> list = new List <ComboInfo>(); SQLHelper iautosHelper = new SQLHelper(new WebConfigure("connIautos")); SqlCommand comm = iautosHelper.GetSqlCommand(@" SELECT SeriesID,SeriesName FROM IautosSeriesInfo WHERE BrandID = @BrandID ORDER BY SeriesName ASC "); iautosHelper.AddInParameter(comm, "@BrandID", SqlDbType.Int, makeCode); DataTable dt = iautosHelper.ExecuteDataTable(comm); if (dt.Rows.Count > 0) { foreach (DataRow dr in dt.Rows) { ComboInfo cbi = new ComboInfo(dr["SeriesID"].ToString(), dr["SeriesName"].ToString()); list.Add(cbi); } } return(list); }
private static CustomBasicList <ComboInfo> ComboList(CustomBasicList <int> thisList, GameBoardProcesses gameBoard1) { CustomBasicList <ComboInfo> output; int totals = gameBoard1.GetDiceTotal; output = thisList.Where(Items => Items == totals).Select(Items => new ComboInfo { Number1 = Items, Number2 = 0 }).ToCustomBasicList(); int x; var loopTo = thisList.Count - 1; for (x = 0; x <= loopTo; x++) { var loopTo1 = thisList.Count - 1; for (var y = x + 1; y <= loopTo1; y++) { if ((thisList[x] + thisList[y]) == totals) { var combo = new ComboInfo(); combo.Number1 = thisList[x]; combo.Number2 = thisList[y]; output.Add(combo); } } } return(output); }
/// <summary> /// 提取父节点(无重复) /// </summary> /// zouql 16.07.06 /// <returns></returns> public List <ComboInfo> GetComList() { SqlCommand comm = DHelper.GetSqlCommand(@" SELECT DISTINCT Code,Name FROM BANK_DictionaryCode "); DataTable dt = DHelper.ExecuteDataTable(comm); List <ComboInfo> list = new List <ComboInfo>(); foreach (DataRow dr in dt.Rows) { var cbi = new ComboInfo(string.Empty, string.Empty); object p1 = dr["Code"]; object p2 = dr["Name"]; if (p1 != null) { cbi.value = p1.ToString(); } if (p2 != null) { cbi.text = p2.ToString(); } list.Add(cbi); } return(list); }
public List <ComboInfo> GetByRepaymentMethod() { List <ComboInfo> cbi = _produce.GetByRepaymentMethod(); ComboInfo cb = new ComboInfo(string.Empty, " "); cbi.Add(cb); return(cbi); }
public List <ComboInfo> GetByFinancingPeriods() { List <ComboInfo> cbi = _produce.GetByFinancingPeriods(); ComboInfo cb = new ComboInfo(string.Empty, " "); cbi.Add(cb); return(cbi); }
public static int ComboInfo_UpdateById(ComboInfo obj) { IVideosService channel = Entity.CreateChannel <IVideosService>(SiteEnum.SiteService.VideoService); var result = channel.ComboInfo_UpdateById(obj); (channel as IDisposable).Dispose(); return(result); }
public List <ComboInfo> GetByProduceName() { List <ComboInfo> cbi = _produce.GetByProduceName(); ComboInfo cb = new ComboInfo(string.Empty, " "); cbi.Add(cb); return(cbi); }
public List <ComboInfo> GetComList() { List <ComboInfo> cbi = dictionaryCode.GetComList(); ComboInfo cb = new ComboInfo(string.Empty, string.Empty); cbi.Add(cb); return(cbi); }
private void InteractWithCombo(ComputerConfigMaster msg) { ComputerConfigMaster oldEntity = _configDA.LoadMaster(msg.SysNo.Value); //1.只有在配置单状态变为运行或作废状态时才处理和Combo的交互 //2.用户配置单不处理Combo if ((msg.Status != ComputerConfigStatus.Running && msg.Status != ComputerConfigStatus.Void) || oldEntity.CustomerSysNo > 0) { return; } ComboStatus comboTargetStatus = ComboStatus.Deactive; if (msg.Status == ComputerConfigStatus.Running) { comboTargetStatus = ComboStatus.Active; } var comboBizProcessor = ObjectFactory <ComboProcessor> .Instance; var comboSysNo = _configDA.GetComboSysNo(msg.SysNo.Value); if (comboSysNo > 0) { //Combo已存在,更新Combo状态 comboBizProcessor.UpdateStatus(comboSysNo, comboTargetStatus); } else if (msg.Status != ComputerConfigStatus.Void)//作废时候同步状态不新增 { //创建Combo ComboInfo comboInfo = new ComboInfo(); comboInfo.CompanyCode = msg.CompanyCode; comboInfo.WebChannel = msg.WebChannel; comboInfo.IsShowName = false; comboInfo.Name = new LanguageContent(msg.ComputerConfigName.Length > 12 ? msg.ComputerConfigName.Substring(0, 12) : msg.ComputerConfigName); comboInfo.ReferenceSysNo = msg.SysNo; comboInfo.ReferenceType = 2; comboInfo.SaleRuleType = ComboType.Common; comboInfo.Status = ComboStatus.Active; comboInfo.Priority = msg.Priority; comboInfo.Items = new List <ComboItem>(); foreach (var c in msg.ConfigItemList) { if (c.ProductSysNo > 0) //bug 95303 一个配置单有很多配件 不是每一个配件都必选 { ComboItem item = new ComboItem(); item.ProductSysNo = c.ProductSysNo; item.Quantity = c.ProductQty; item.ProductUnitCost = c.UnitCost; item.ProductID = c.ProductID; item.ProductName = c.ProductName; item.Discount = c.Discount; item.IsMasterItemB = msg.ComputerConfigName == "CPU"; comboInfo.Items.Add(item); } } comboBizProcessor.CreateCombo(comboInfo); } }
/// <summary> /// 发送邮件通知PM Combo的因商品调价,状态已改 /// </summary> /// <param name="combo"></param> protected virtual void SendMail(ComboInfo combo) { UserInfo user = ExternalDomainBroker.GetUserInfoBySysNo(combo.CreateUserSysNo.Value); KeyValueVariables keyValueVariables = new KeyValueVariables(); keyValueVariables.Add("ComboSysNo", combo.SysNo.Value.ToString()); keyValueVariables.Add("ComboName", combo.Name.Content); keyValueVariables.Add("PMUser", user.UserDisplayName); EmailHelper.SendEmailByTemplate(user.EmailAddress, "MKT_Combo_ChangeStatusForChangeProductPrice", keyValueVariables, true); }
public ActionResult ComboInfoEdit() { string c_id = Request["c_id"] ?? string.Empty; string c_title = Request["c_title"] ?? string.Empty; string c_intro = Request["c_intro"] ?? string.Empty; int c_num = Request["c_num"].ToInt32(0); int c_days = Request["c_days"].ToInt32(0); int c_status = Request["c_status"].ToInt32(0); ComboInfo info = null; if (string.IsNullOrEmpty(c_id)) { info = new ComboInfo(); //新增 string guid = Guid.NewGuid().ToString().Replace("-", ""); info.c_id = guid; } else { info = VideoServiceClass.ComboInfo_SelectByc_id(c_id); } info.c_title = c_title; info.c_intro = c_intro; info.c_num = c_num; info.c_days = c_days; info.c_status = (int)SiteEnum.BasicStatus.有效; if (string.IsNullOrEmpty(c_id)) { int result = VideoServiceClass.ComboInfo_Insert(info); if (result > 0) { return Json(new { success = true, errors = new { text = "新增成功" } }); } else { return Json(new { success = false, errors = new { text = "新增失败" } }); } } else { int result = VideoServiceClass.ComboInfo_UpdateById(info); if (result > 0) { return Json(new { success = true, errors = new { text = "修改成功" } }); } else { return Json(new { success = false, errors = new { text = "修改失败" } }); } } }
/// <summary> /// 根据组合系统编号列表获取详细信息列表 /// </summary> /// <param name="comboSysNoList"></param> /// <returns></returns> public List <ComboInfo> GetComboList(List <int> comboSysNoList) { List <ComboInfo> list = new List <ComboInfo>(); foreach (int sysno in comboSysNoList) { ComboInfo info = ObjectFactory <ComboAppService> .Instance.Load(sysno); list.Add(info); } return(list); }
public virtual void UpdateMaster(ComboInfo info) { DataCommand cmd = DataCommandManager.GetDataCommand("UpdateCombo"); cmd.SetParameterValue("@SysNo", info.SysNo); cmd.SetParameterValue("@SaleRuleName", info.Name.Content); cmd.SetParameterValue("@Status", info.TargetStatus); cmd.SetParameterValue("@IsShow", info.IsShowName.Value ? "Y" : "N"); cmd.SetParameterValue("@Priority", info.Priority); cmd.SetParameterValue("@SaleRuleType", info.SaleRuleType); cmd.SetParameterValue("@Reason", info.Reason); cmd.ExecuteNonQuery(); }
public virtual void UpdateMaster(ComboInfo info) { DataCommand cmd = DataCommandManager.GetDataCommand("UpdateCombo"); cmd.SetParameterValue("@SysNo", info.SysNo); cmd.SetParameterValue("@SaleRuleName", info.SaleRuleName); cmd.SetParameterValue("@Status", info.Status); cmd.SetParameterValue("@IsShow", "Y"); cmd.SetParameterValue("@Priority", 0); cmd.SetParameterValue("@SaleRuleType", 0); cmd.SetParameterValue("@Reason", ""); cmd.ExecuteNonQuery(); }
/////////////////////////////////////////////////////////////////////////////// // function defines /////////////////////////////////////////////////////////////////////////////// // ------------------------------------------------------------------ // Desc: Use this for initialization // ------------------------------------------------------------------ void Start () { int combo_count = this.comboList.Length; for ( int i = 0; i < combo_count; ++i ) { ComboInfo combo = this.comboList[i]; DebugHelper.Assert(combo.endTime!=-1.0f, "endTime can't be minus!"); DebugHelper.Assert(combo.animName!="unknown", "animName can't be unknown!"); DebugHelper.Assert(combo.validInputTime.x < combo.validInputTime.y, "input time is invalid!"); DebugHelper.Assert(combo.attack_shape, "please define attack shape!"); combo.attack_shape.active = false; int next = i+1; if ( next != combo_count ) combo.next = this.comboList[next]; } this.combo_entry = this.comboList[0]; this.comboList = null; }
private void initComboInfoWith(string serializedComboInfo) { comboInfo = new ComboInfo(serializedComboInfo); toggle.Clear(); toggle.AddRange(new bool[comboInfo.CombosCount]); }
void Start() { comboInfo = new ComboInfo(comboSheet.text); currentSequence = new Combo(); currentComboName = ""; }