public static void ShowProductStatus(ProductStatus status, string productName) { Presenter.ShowMessage($"{productName} Status:", Logger); Presenter.ShowMessage(status.ToString(), Logger); var versionStatus = status.Version ?? "not installed"; Presenter.ShowMessage($"{productName} version: {versionStatus}", Logger); }
/// <summary> /// 商品列表信息项转换 /// </summary> /// <param name="data"></param> /// <returns></returns> private product_list_model ProductInfoListMapChange(Entities.ProductInfo data) { product_list_model dresult = null; var prodata = data; dresult = new product_list_model(); if (prodata == null) { throw new MallApiException(OpenApiErrorCode.Product_Not_Exists, "num_iid"); } #region 装配信息 dresult.num_iid = (int)prodata.Id; dresult.outer_id = prodata.ProductCode; dresult.brand_id = (int)prodata.BrandId; dresult.brand_name = prodata.BrandName; dresult.cid = (int)prodata.CategoryId; dresult.type_id = (int)prodata.TypeId; var category = CategoryApplication.GetCategory(prodata.CategoryId); if (category != null) { dresult.cat_name = category.Name; var type = TypeApplication.GetType(category.TypeId); if (type != null) { dresult.type_name = type.Name; } } dresult.price = prodata.MinSalePrice; var skus = ProductManagerApplication.GetSKUs(prodata.Id); if (skus.Count > 0) { dresult.num = (int)skus.Sum(d => d.Stock); } else { dresult.num = 0; dresult.num = prodata.Quantity; } dresult.title = prodata.ProductName.Trim(); dresult.list_time = prodata.AddedDate; dresult.modified = prodata.AddedDate; dresult.sold_quantity = (int)prodata.SaleCounts; dresult.pic_url = new System.Collections.ArrayList(); dresult.pic_url.Add(System.IO.Path.Combine(OpenAPIHelper.HostUrl, prodata.GetImage(ImageSize.Size_350, 1))); ProductStatus ps = GetProductStatus(prodata); dresult.approve_status = ps.ToString(); #endregion return(dresult); }
/// <summary> /// 商品列表信息项转换 /// </summary> /// <param name="data"></param> /// <returns></returns> private product_list_model ProductInfoListMapChange(ProductInfo data) { product_list_model dresult = null; var prodata = data; dresult = new product_list_model(); if (prodata == null) { throw new HimallOpenApiException(OpenApiErrorCode.Product_Not_Exists, "num_iid"); } #region 装配信息 dresult.num_iid = (int)prodata.Id; dresult.outer_id = prodata.ProductCode; dresult.brand_id = (int)prodata.BrandId; dresult.brand_name = prodata.BrandName; dresult.cid = (int)prodata.CategoryId; dresult.type_id = (int)prodata.TypeId; if (prodata.Himall_Categories != null) { dresult.cat_name = prodata.Himall_Categories.Name; if (prodata.Himall_Categories.ProductTypeInfo != null) { dresult.type_name = prodata.Himall_Categories.ProductTypeInfo.Name; } } dresult.price = prodata.MinSalePrice; if (prodata.SKUInfo.Count > 0) { dresult.num = (int)prodata.SKUInfo.Sum(d => d.Stock); } else { dresult.num = 0; if (prodata.Quantity.HasValue) { dresult.num = prodata.Quantity.Value; } } dresult.title = prodata.ProductName.Trim(); dresult.list_time = prodata.AddedDate; dresult.modified = prodata.AddedDate; dresult.sold_quantity = (int)prodata.SaleCounts; dresult.pic_url = new System.Collections.ArrayList(); dresult.pic_url.Add(System.IO.Path.Combine(OpenAPIHelper.HostUrl, prodata.GetImage(ImageSize.Size_350, 1))); ProductStatus ps = GetProductStatus(prodata); dresult.approve_status = ps.ToString(); #endregion return(dresult); }
/// <summary> /// Get all the pawn loans based on the id number passed /// </summary> /// <param name="storeNumber"></param> /// <param name="pawnLoanStatus"></param> /// <param name="TempStatus"></param> /// <param name="date"></param> /// <param name="bGetCustomerInfo"></param> /// <param name="pawnLoans"></param> /// <param name="pawnApplications"></param> /// <param name="customerVOs"></param> /// <param name="errorCode"></param> /// <param name="errorText"></param> /// <returns></returns> public static bool GetStoreLoans( string storeNumber, ProductStatus pawnLoanStatus, StateStatus TempStatus, DateTime date, bool bGetCustomerInfo, out List <PawnLoan> pawnLoans, out List <PawnAppVO> pawnApplications, out List <CustomerVO> customerVOs, out string errorCode, out string errorText) { //Set default output params pawnLoans = new List <PawnLoan>(); pawnApplications = new List <PawnAppVO>(); customerVOs = new List <CustomerVO>(); errorCode = string.Empty; errorText = string.Empty; if (GlobalDataAccessor.Instance == null || GlobalDataAccessor.Instance.OracleDA == null) { errorCode = "GetStoreLoansFailed"; errorText = "Invalid desktop session or data accessor"; return(false); } //Get data accessor object OracleDataAccessor dA = GlobalDataAccessor.Instance.OracleDA; List <OracleProcParam> inParams = new List <OracleProcParam>(); //Add store number inParams.Add(new OracleProcParam("p_store_number", storeNumber)); inParams.Add(new OracleProcParam("p_status", pawnLoanStatus.ToString())); inParams.Add(new OracleProcParam("p_date", date)); if (TempStatus != StateStatus.BLNK) { inParams.Add(new OracleProcParam("p_temp_type", TempStatus.ToString())); } else { inParams.Add(new OracleProcParam("p_temp_type", "0")); } List <PairType <string, string> > refCursArr = new List <PairType <string, string> >(); refCursArr.Add(new PairType <string, string>("o_pawn_app", PAWN_APP)); refCursArr.Add(new PairType <string, string>("o_pawn_loan", PAWN_LOAN)); refCursArr.Add(new PairType <string, string>("o_pawn_mdselist", PAWN_MDSE_LIST)); refCursArr.Add(new PairType <string, string>("o_pawn_gunlist", PAWN_GUN_LIST)); refCursArr.Add(new PairType <string, string>("o_pawn_mdhistlist", PAWN_MDHIST_LIST)); refCursArr.Add(new PairType <string, string>("o_pawn_otherdsclist", PAWN_OTHERDSC_LIST)); refCursArr.Add(new PairType <string, string>("o_pawn_receiptdetlist", PAWN_RECEIPTDET_LIST)); refCursArr.Add(new PairType <string, string>("o_pawn_feelist", PAWN_FEE_LIST)); DataSet outputDataSet; bool retVal = false; try { retVal = dA.issueSqlStoredProcCommand( "ccsowner", "pawn_store_procs", "get_store_loans", inParams, refCursArr, "o_return_code", "o_return_text", out outputDataSet); } catch (Exception oEx) { BasicExceptionHandler.Instance.AddException("Calling get_store_loans stored procedure", oEx); errorCode = " -- GetStoreLoans failed"; errorText = " --- Exception: " + oEx.Message; return(false); } if (retVal == false) { errorCode = dA.ErrorCode; errorText = dA.ErrorDescription; return(false); } else { if (outputDataSet != null && outputDataSet.IsInitialized) { if (outputDataSet.Tables != null && outputDataSet.Tables.Count > 0) { try { CustomerLoans.ParseDataSet(outputDataSet, out pawnLoans, out pawnApplications); if (CollectionUtilities.isEmpty(pawnLoans) || CollectionUtilities.isEmpty(pawnApplications)) { errorCode = "Parsing the data from the stored procedure failed"; errorText = "Pawn Loans or the PawnApplications object is null"; return(false); } if (bGetCustomerInfo) { customerVOs.AddRange(pawnLoans.Select(pLoan => CustomerProcedures.getCustomerDataByCustomerNumber(GlobalDataAccessor.Instance.DesktopSession, pLoan.CustomerNumber))); } return(true); } catch (Exception ex) { errorCode = "Parsing the data from the stored procedure failed"; errorText = ex.Message; return(false); } } else { errorText = "No records found."; return(false); } } } errorCode = "GETSTOREDLOANSFAIL"; errorText = "Operation failed"; return(false); }
public static List<Product> GetByProductInfoIdAndStoreIdAndStatus(ProjectSIAEntities db, int productInfoId, int storeId, ProductStatus status) { using (var rl = new ReadLock()) { var statusString = status.ToString(); return db.Product.Where(x => x.productInfoId == productInfoId && x.storeId == storeId && x.status == statusString).ToList() .Select(x => new Product(x)).ToList(); } }
/// <summary> /// 商品信息转换 /// </summary> /// <param name="data"></param> /// <returns></returns> private product_item_model ProductInfoMapChange(ProductInfo data) { var prodata = data; if (prodata == null) { throw new HimallOpenApiException(OpenApiErrorCode.Product_Not_Exists, "num_iid"); } product_item_model result = new product_item_model(); #region 装配信息 result.num_iid = (int)prodata.Id; result.outer_id = prodata.ProductCode; result.brand_id = (int)prodata.BrandId; result.brand_name = prodata.BrandName; result.cid = (int)prodata.CategoryId; result.type_id = (int)prodata.TypeId; if (prodata.Himall_Categories != null) { result.cat_name = prodata.Himall_Categories.Name; if (prodata.Himall_Categories.ProductTypeInfo != null) { result.type_name = prodata.Himall_Categories.ProductTypeInfo.Name; } } result.title = prodata.ProductName.Trim(); result.list_time = prodata.AddedDate; result.modified = prodata.AddedDate; result.display_sequence = (int)prodata.DisplaySequence; result.sold_quantity = (int)prodata.SaleCounts; result.desc = prodata.ProductDescriptionInfo.Description; result.wap_desc = prodata.ProductDescriptionInfo.MobileDescription; result.pic_url.Add(System.IO.Path.Combine(OpenAPIHelper.HostUrl, prodata.GetImage(ImageSize.Size_350, 1))); ProductStatus ps = GetProductStatus(prodata); result.approve_status = ps.ToString(); #region 商品属性填充 var prodAttrs = _iProductService.GetProductAttribute(prodata.Id).ToList(); var prodAttrids = prodAttrs.Select(d => d.AttributeId).Distinct().ToList(); result.props_name = ""; if (prodAttrids.Count > 0) { List <string> propslst = new List <string>(); List <string> propsvallst = new List <string>(); foreach (var curattid in prodAttrids) { var item = prodAttrs.FirstOrDefault(d => d.AttributeId == curattid); propsvallst.Clear(); foreach (var attrV in item.AttributesInfo.AttributeValueInfo.ToList()) { if (prodAttrs.Any(p => p.ValueId == attrV.Id)) { propsvallst.Add(attrV.Value); } } propslst.Add(item.AttributesInfo.Name + "#cln#[" + string.Join(",", propsvallst.ToArray()) + "]"); } result.props_name = string.Join("#scln#", propslst.ToArray()); } #endregion #region 发货地区 var prolocid = prodata.Himall_FreightTemplate.SourceAddress; result.location = ""; if (prolocid.HasValue) { var locpath = _iRegionService.GetFullName(prolocid.Value, ","); result.location = "{'city':'#c#', 'state':'#p#'}"; if (!string.IsNullOrWhiteSpace(locpath)) { var _tmparr = locpath.Split(','); result.location = result.location.Replace("#p#", _tmparr[0]); if (_tmparr.Length > 1) { result.location = result.location.Replace("#c#", _tmparr[1]); } else { result.location = result.location.Replace("#c#", ""); } } } #endregion #region SKUS ProductTypeInfo typeInfo = _iTypeService.GetType(data.TypeId); string colorAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.ColorAlias)) ? SpecificationType.Color.ToDescription() : typeInfo.ColorAlias; string sizeAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.SizeAlias)) ? SpecificationType.Size.ToDescription() : typeInfo.SizeAlias; string versionAlias = (typeInfo == null || string.IsNullOrEmpty(typeInfo.VersionAlias)) ? SpecificationType.Version.ToDescription() : typeInfo.VersionAlias; result.skus = new List <product_sku_model>(); foreach (var item in prodata.SKUInfo) { product_sku_model skudata = new product_sku_model(); skudata.sku_id = item.Id; skudata.outer_sku_id = item.Sku; skudata.price = item.SalePrice; skudata.quantity = (int)item.Stock; //skudata.sku_properties_name = "颜色:" + item.Color + "尺寸:" + item.Size + "版本:" + item.Version; skudata.sku_properties_name = colorAlias + ":" + item.Color + sizeAlias + ":" + item.Size + versionAlias + ":" + item.Version; string sku_properties_name = item.Color + item.Size + item.Version; if (string.IsNullOrWhiteSpace(sku_properties_name)) { skudata.sku_properties_name = ""; } if (!string.IsNullOrWhiteSpace(skudata.sku_properties_name)) { result.skus.Add(skudata); } } #endregion #endregion return(result); }