private string BuildStatusResult(ProductStatus status)
        {
            var builder = new StringBuilder();

            builder.Append("Information for product: ").AppendLine(status.ProductId);
            builder.Append("- Title: ").AppendLine(status.Title);

            builder.AppendLine("- Destination statuses:");
            foreach (var stat in status.DestinationStatuses)
            {
                builder.AppendFormat("  - {0}: {1}", stat.Destination, stat.Status).AppendLine();
            }

            if (status.ItemLevelIssues == null)
            {
                builder.AppendLine("- No issues.");
            }
            else
            {
                var issues = status.ItemLevelIssues;
                builder.AppendFormat("- There are {0} issues:", issues.Count).AppendLine();
                foreach (var issue in issues)
                {
                    builder.AppendFormat("  - Code: {0}", issue.Code).AppendLine();
                    builder.AppendFormat("    Description: {0}", issue.Description).AppendLine();
                    builder.AppendFormat("    Detailed description: {0}", issue.Detail).AppendLine();
                    builder.AppendFormat("    Resolution: {0}", issue.Resolution).AppendLine();
                    builder.AppendFormat("    Servability: {0}", issue.Servability).AppendLine();
                }
            }

            return(builder.ToString());
        }
Пример #2
0
        public IActionResult ChangeStatus(int sellerId, int productTypeId, ProductStatus status)
        {
            if (loginPersistence.PersistLogin() == null)
            {
                return(Json("Not login"));
            }

            try
            {
                eCommerce.UpdateProductStatus(sellerId, productTypeId, status, out ICollection <string> errors);
                if (errors.Any())
                {
                    string errorString = "";
                    foreach (string error in errors)
                    {
                        errorString += error + "\n";
                    }
                    errorString.Remove(errorString.Length - 1);
                    return(Json(errorString));
                }
            }
            catch (Exception e)
            {
                return(Json(e.Message));
            }
            return(Json(""));
        }
Пример #3
0
    /// <summary>
    /// 返回产品,按状态
    /// </summary>
    public static IEnumerable <dynamic> GetProductsByStatus(ProductStatus status)
    {
        var db  = MyDB.Open();
        var sql = "Select * From Product Where Status = @0";

        return(db.Query(sql, (int)status));
    }
Пример #4
0
        private void SetProperties(char code)
        {
            switch (code)
            {
            case 'E':
                this.status = ProductStatus.Weighable;
                break;

            case 'H':
                this.status = ProductStatus.None;
                break;

            case 'P':
                this.status = ProductStatus.Programmable;
                break;

            case 'S':
                this.requiredFields = ProductRequiredField.SerialNumber;
                break;

            case 'D':
                this.requiredFields = ProductRequiredField.All;
                break;
            }
        }
Пример #5
0
    public ActionResult Index()
    {
        ProductStatus model = new ProductStatus();

        ViewData["Status"] = statusList;
        return(View(model));
    }
        //[ValidateAntiForgeryToken]
        public ActionResult UpdateProductStatus(ProductStatus ProductStatusInfoForUpdate)
        {
            try
            {
                ProductStatus ProductStatus_Check = db.ProductStatus.Where(s => s.ProductStatusID != ProductStatusInfoForUpdate.ProductStatusID && s.ProductStatusName == ProductStatusInfoForUpdate.ProductStatusName.Trim()).FirstOrDefault();

                if (ProductStatus_Check != null)
                {
                    //TempData["AlreadyInsert"] = "ProductStatus Already Added. Choose different ProductStatus. ";

                    return(Json(new { UpdateSuccess = false, AlreadyInsert = true }, JsonRequestBehavior.AllowGet));
                }

                var ProductStatus_db = db.ProductStatus.Where(s => s.ProductStatusID == ProductStatusInfoForUpdate.ProductStatusID);
                ProductStatusInfoForUpdate.CreatedBy   = ProductStatus_db.FirstOrDefault().CreatedBy;
                ProductStatusInfoForUpdate.CreatedDate = ProductStatus_db.FirstOrDefault().CreatedDate;
                ProductStatusInfoForUpdate.UpdateBy    = AppUtils.GetLoginEmployeeName();
                ProductStatusInfoForUpdate.UpdateDate  = AppUtils.GetDateTimeNow();

                db.Entry(ProductStatus_db.SingleOrDefault()).CurrentValues.SetValues(ProductStatusInfoForUpdate);
                db.SaveChanges();

                TempData["UpdateSucessOrFail"] = "Update Successfully.";
                var ProductStatus_Return = ProductStatus_db.Select(s => new { ProductStatusID = s.ProductStatusID, PackageName = s.ProductStatusName });
                var JSON = Json(new { UpdateSuccess = true, ProductStatusUpdateInformation = ProductStatus_Return }, JsonRequestBehavior.AllowGet);
                JSON.MaxJsonLength = int.MaxValue;
                return(JSON);
            }
            catch
            {
                TempData["UpdateSucessOrFail"] = "Update Fail.";
                return(Json(new { UpdateSuccess = false, ProductStatusUpdateInformation = "" }, JsonRequestBehavior.AllowGet));
            }
        }
Пример #7
0
 public Product(string name, string description, decimal price)
 {
     Name        = name;
     Description = description;
     Price       = price;
     Status      = ProductStatus.Draft;
 }
Пример #8
0
 public Product(int id, string description, string unity, string reference, string brand, string measure, string image, ProductStatus status, Category category, Supplier supplier, DateTime createDate, DateTime updateDate, decimal unitPrice, decimal stock, decimal stockMin, decimal stockMax, decimal mva, decimal icmsTax, decimal ipiTax, decimal additionTax, decimal discountTax, decimal shippingTax, decimal multiply, bool substitutionTax, string fiscalScrore, string cfop, string natOper, string codeProduct, string codeSupplier, string barCode, DateTime lastDateBuy, DateTime lastDateSale)
 {
     Id              = id;
     Description     = description;
     Unity           = unity;
     Reference       = reference;
     Brand           = brand;
     Measure         = measure;
     Image           = image;
     Status          = status;
     Category        = category;
     Supplier        = supplier;
     CreateDate      = createDate;
     UpdateDate      = updateDate;
     UnitPrice       = unitPrice;
     Stock           = stock;
     StockMin        = stockMin;
     StockMax        = stockMax;
     Mva             = mva;
     IcmsTax         = icmsTax;
     IpiTax          = ipiTax;
     AdditionTax     = additionTax;
     DiscountTax     = discountTax;
     ShippingTax     = shippingTax;
     Multiply        = multiply;
     SubstitutionTax = substitutionTax;
     FiscalScrore    = fiscalScrore;
     Cfop            = cfop;
     NatOper         = natOper;
     CodeProduct     = codeProduct;
     CodeSupplier    = codeSupplier;
     BarCode         = barCode;
     LastDateBuy     = lastDateBuy;
     LastDateSale    = lastDateSale;
 }
Пример #9
0
        private static StateMachine<ProductStatus, ProductStatus> InitializeStateMachine(ProductStatus initialState)
        {
            StateMachine<ProductStatus, ProductStatus> productStateMachine =
                new StateMachine<ProductStatus, ProductStatus>(initialState);

            productStateMachine.Configure(ProductStatus.Draft)
                .Permit(ProductStatus.WaitingForApproval, ProductStatus.WaitingForApproval);

            productStateMachine.Configure(ProductStatus.WaitingForApproval)
                .Permit(ProductStatus.Approved, ProductStatus.Approved)
                .Permit(ProductStatus.Cancelled, ProductStatus.Cancelled);

            productStateMachine.Configure(ProductStatus.Approved)
                .Permit(ProductStatus.Active, ProductStatus.Active)
                .Permit(ProductStatus.Passive, ProductStatus.Passive)
                .Permit(ProductStatus.Cancelled, ProductStatus.Cancelled);

            productStateMachine.Configure(ProductStatus.Active)
                .Permit(ProductStatus.Passive, ProductStatus.Passive)
                .Permit(ProductStatus.Cancelled, ProductStatus.Cancelled);

            productStateMachine.Configure(ProductStatus.Passive)
                .Permit(ProductStatus.Active, ProductStatus.Active)
                .Permit(ProductStatus.Cancelled, ProductStatus.Cancelled);

            // Allow none of the options for AccommodationPropertyStatus.Cancelled;

            return productStateMachine;
        }
Пример #10
0
 public async Task <bool> Delete(ProductStatus ProductStatus)
 {
     if (await ValidateId(ProductStatus))
     {
     }
     return(ProductStatus.IsValidated);
 }
Пример #11
0
        private void PrintStatus(ProductStatus status)
        {
            Console.WriteLine("Information for product {0}:", status.ProductId);
            Console.WriteLine("- Title: {0}", status.Title);

            Console.WriteLine("- Destination statuses:");
            foreach (var stat in status.DestinationStatuses)
            {
                Console.WriteLine("  - {0}: {1}", stat.Destination, stat.Status);
            }

            if (status.ItemLevelIssues == null)
            {
                Console.WriteLine("- No issues.");
            }
            else
            {
                var issues = status.ItemLevelIssues;
                Console.WriteLine("- There are {0} issues:", issues.Count);
                foreach (var issue in issues)
                {
                    Console.WriteLine("  - Code: {0}", issue.Code);
                    Console.WriteLine("    Description: {0}", issue.Description);
                    Console.WriteLine("    Detailed description: {0}", issue.Detail);
                    Console.WriteLine("    Resolution: {0}", issue.Resolution);
                    Console.WriteLine("    Servability: {0}", issue.Servability);
                }
            }
        }
        public async Task <IActionResult> PutProductStatus(int id, ProductStatus productStatus)
        {
            if (id != productStatus.StatusId)
            {
                return(BadRequest());
            }

            _context.Entry(productStatus).State = EntityState.Modified;

            try
            {
                await _context.SaveChangesAsync();
            }
            catch (DbUpdateConcurrencyException)
            {
                if (!ProductStatusExists(id))
                {
                    return(NotFound());
                }
                else
                {
                    throw;
                }
            }

            return(NoContent());
        }
        /** Get productStatus document reference and update it */
        public async Task <bool> UpdateProductStatus(ProductStatus productStatus)
        {
            // Get productStatus snapshot
            DocumentReference productDocumentRef = firestoreDb.Collection(DB_STATUS_COLLECTION).Document(productStatus.Id);

            // Set up new status data for productStatus in database
            Dictionary <string, object> productUpdateDictionary = new Dictionary <string, object>
            {
                { DB_STATUS_USER_ID, productStatus.UserId },
                { DB_STATUS_PRODUCT_ID, productStatus.Product.Id },
                { DB_STATUS_PRODUCT_STATUS, productStatus.Status },
                { DB_STATUS_PRODUCT_PURCHASE_DATE, productStatus.PurchaseDate }
            };

            try
            {
                // Update productStatus
                await productDocumentRef.UpdateAsync(productUpdateDictionary);
            }
            catch (Exception e)
            {
                // Return false because task was not successful
                return(false);
            }

            // Return true because task was successful
            return(true);
        }
        /// <summary>
        /// Gets sorted documents by date, checks if we need to start pagination from page 1 or not, and returns limited
        /// amount of productStatus
        /// </summary>
        /// <param name="filter">filter with last productStatus of the page or empty</param>
        /// <returns>paginated list of prouctStatus</returns>
        public async Task <IEnumerable <ProductStatus> > GetAllPaginatedProductStatuses(Filter filter)
        {
            List <ProductStatus> productStatusList = new List <ProductStatus>();

            // Get a reference to ProductStatus docuemnts that have user's id
            CollectionReference productStatusCollectionRef = firestoreDb.Collection(DB_STATUS_COLLECTION);
            Query query = productStatusCollectionRef.OrderBy(DB_STATUS_PRODUCT_PURCHASE_DATE);

            // Check if we need first page or not
            if (filter.LastItemId != null && !filter.LastItemId.Equals(""))
            {
                query = query.StartAfter(filter.LastItemId);
            }

            // Execute query and get limited documents
            QuerySnapshot ProductStatusSnapshot = await query.Limit(25).GetSnapshotAsync();

            foreach (DocumentSnapshot documentSnapshot in ProductStatusSnapshot.Documents)
            {
                // Try to extract data from document and place it into product
                ProductStatus productStatus = ExtractProductFromSnapshot(documentSnapshot);
                productStatusList.Add(productStatus);
            }

            // Return paginated product status
            return(productStatusList);
        }
Пример #15
0
 public Product(decimal price, string status, int idProductInformation)
 {
     Price = price;
     IdProductInformation = idProductInformation;
     ProductStatus        = new ProductStatus(status);
     ProductInformation   = null;
 }
Пример #16
0
        public void CreateProductStatusTest()
        {
            // Given a productID and productStatus with user's id set
            ProductStatus productStatus = new ProductStatus()
            {
                UserId = "realUserId",

                Product = new Product
                {
                    Id = "SomeProductId"
                }
            };

            // Given Task with true because task was succesfull
            Task <bool> taskProductStatusRemove = Task.FromResult(true);

            // Format Datetime in d/m/y formats and display them
            DateTime aDate       = DateTime.Now;
            var      currentDate = aDate.ToString("dd/MM/yyyy");

            mockedProductStatusRepo.Setup(repo => repo.CreateProductStatus(
                                              // When called with given ProductStatus
                                              // Should also now have purchase date set
                                              It.Is <ProductStatus>(prodStatus => (productStatus.PurchaseDate.Equals(currentDate)))
                                              )).Returns(taskProductStatusRemove);

            // When called CreateProductStatus
            var response = productStatusService.CreateProductStatus(productStatus);

            // Then we expect Response to be true
            Assert.IsTrue(response);
        }
Пример #17
0
 /// <summary>
 /// 更改产品状态
 /// </summary>
 /// <param name="o">格口信息</param>
 /// <param name="productCode">产品代号</param>
 /// <param name="status">更改状态</param>
 internal void SetProductStatus(LatticeInfo latticeInfo, string barCode, ProductStatus status)
 {
     foreach (var product in latticeInfo.Product.Where(p => p.BarCode == barCode))
     {
         product.Status = status;
     }
 }
        public async Task <ProductStatus> Delete(ProductStatus ProductStatus)
        {
            if (!await ProductStatusValidator.Delete(ProductStatus))
            {
                return(ProductStatus);
            }

            try
            {
                await UOW.Begin();

                await UOW.ProductStatusRepository.Delete(ProductStatus);

                await UOW.Commit();

                await UOW.AuditLogRepository.Create("", ProductStatus, nameof(ProductStatusService));

                return(ProductStatus);
            }
            catch (Exception ex)
            {
                await UOW.Rollback();

                await UOW.SystemLogRepository.Create(ex, nameof(ProductStatusService));

                throw new MessageException(ex);
            }
        }
        private void PrintStatus(ProductStatus status)
        {
            Console.WriteLine("Information for product %s:\n", status.ProductId);
            Console.WriteLine("- Title: {0}", status.Title);

            Console.WriteLine("- Destination statuses:");
            foreach (var stat in status.DestinationStatuses)
            {
                Console.WriteLine("  - {0}: {1}{2}",
                                  stat.Destination, stat.ApprovalStatus,
                                  stat.ApprovalPending.GetValueOrDefault(false) ? " (still pending)" : "");
            }

            if (status.ItemLevelIssues == null)
            {
                Console.WriteLine("- No issues.");
            }
            else
            {
                var issues = status.ItemLevelIssues;
                Console.WriteLine("- There are {0} issues:", issues.Count);
                foreach (var issue in issues)
                {
                    Console.WriteLine("  - Code: {0}", issue.Code);
                    Console.WriteLine("    Description: {0}", issue.Description);
                    Console.WriteLine("    Detailed description: {0}", issue.Detail);
                    Console.WriteLine("    Resolution: {0}", issue.Resolution);
                    Console.WriteLine("    Servability: {0}", issue.Servability);
                }
            }
        }
Пример #20
0
 public Product(Guid id, string name, double price, ProductStatus status)
 {
     Id     = id;
     Name   = name;
     Price  = price;
     Status = status;
 }
Пример #21
0
 public Task UpdateAsync(
     ProductStatus status,
     Dictionary <string, string> headers = default,
     CancellationToken ct = default)
 {
     return(_factory.PatchAsync(_host + "/Products/Statuses/v1/Update", null, status, headers, ct));
 }
        public async Task <ProductStatus> Update(ProductStatus ProductStatus)
        {
            if (!await ProductStatusValidator.Update(ProductStatus))
            {
                return(ProductStatus);
            }
            try
            {
                var oldData = await UOW.ProductStatusRepository.Get(ProductStatus.Id);

                await UOW.Begin();

                await UOW.ProductStatusRepository.Update(ProductStatus);

                await UOW.Commit();

                var newData = await UOW.ProductStatusRepository.Get(ProductStatus.Id);

                await UOW.AuditLogRepository.Create(newData, oldData, nameof(ProductStatusService));

                return(newData);
            }
            catch (Exception ex)
            {
                await UOW.Rollback();

                await UOW.SystemLogRepository.Create(ex, nameof(ProductStatusService));

                throw new MessageException(ex);
            }
        }
        public static Tuple<List<WholeSaleProduct>, int> LoadToProductByProductStatus(
            string userName
            , int pageIndex
            , int pageSize
            , ProductStatus productStatus)
        {
            int skipCount = (pageIndex - 1) * pageSize;
            Future<int> totalCount;

            var db = DataBaseHelper.Open();

            var user = UserSvc.LoadByUserName(userName);
            if (user == null)
            {
                throw new Exception("当前用户数据不存在.");
            }

            List<WholeSaleProduct> list = db.WholeSaleProducts.FindAll(db.WholeSaleProducts.ProductStatus == productStatus
                                                                        && db.WholeSaleProducts.ToCompany.Id == user.Company.Id)
                                                              .OrderByDescending(db.WholeSaleProducts.Id)
                                                              .WithTotalCount(out totalCount)
                                                              .Skip(skipCount)
                                                              .Take(pageSize)
                                                              .ToList<WholeSaleProduct>();

            return new Tuple<List<WholeSaleProduct>, int>(list, totalCount.Value);
        }
Пример #24
0
        public JsonResult DuyetPostTin(int id, ProductStatus status)
        {
            try
            {
                if (!ModelState.IsValid)
                {
                    IEnumerable <ModelError> allErrors = ModelState.Values.SelectMany(v => v.Errors);
                    return(Json(allErrors, JsonRequestBehavior.AllowGet));
                }
                else
                {
                    var sp = _sanphamService.GetById(id);
                    sp.Status = status;
                    _sanphamService.Update(sp);
                    if (_sanphamService.Save())
                    {
                        return(Json(new { Result = sp, Status = "OK" }, JsonRequestBehavior.AllowGet));
                    }
                }


                return(Json(new { Result = "", Status = "FAIL" }, JsonRequestBehavior.AllowGet));
            }
            catch (Exception ex)
            {
                Response.StatusCode = (int)HttpStatusCode.BadRequest;
                return(Json(new { Result = ex.Message, Status = "FAIL" }, JsonRequestBehavior.AllowGet));
            }
        }
Пример #25
0
 public void Activate()
 {
     if (String.IsNullOrWhiteSpace(this.Description))
     {
         throw new InvalidOperationException("A description is required to activate a product.");
     }
     this.State = ProductStatus.Active;
 }
Пример #26
0
        public PartialViewResult PublisherEdit(int id)
        {
            //retrieve the publisher and return the view with data populated for updates
            ProductStatus productStatus = db.ProductStatuses.Find(id);


            return(PartialView(productStatus));
        }//end result
Пример #27
0
        public async Task <ActionResult <Guid> > Create(ProductStatus status, CancellationToken ct = default)
        {
            status.AccountId = _userContext.AccountId;

            var id = await _productStatusesService.CreateAsync(_userContext.UserId, status, ct);

            return(Created(nameof(Get), id));
        }
Пример #28
0
 public static Tuple<List<RetailProduct>, int> LoadToProductByProductStatus(
     string userName
     , int pageIndex
     , int pageSize
     , ProductStatus productStatus)
 {
     return LoadToProductByProductStatusList(userName, pageIndex, pageSize, new List<ProductStatus> { productStatus });
 }
Пример #29
0
        public WeProduct(string productId, WeProductBase productBase, DeliveryInfo deliveryInfo,
            ProductStatus status, params SkuListElement[] skuList)
            : this(productId, productBase, deliveryInfo, status)
        {
            TkDebug.AssertArgumentNull(skuList, "skuList", null);

            SkuList.AddRange(skuList);
        }
Пример #30
0
        public override object ReadJson(JsonReader reader, Type objectType, object existingValue, JsonSerializer serializer)
        {
            ProductStatus productStatus;

            ProductStatus.TryParse(reader.Value.ToString(), true, out productStatus);

            return(productStatus);
        }
Пример #31
0
 private void Apply(ProductCreated @event)
 {
     Id          = @event.AggregateRootId;
     Name        = @event.Name;
     Description = @event.Description;
     Price       = @event.Price;
     Status      = @event.Status;
 }
Пример #32
0
        public WeProduct(string productId, WeProductBase productBase, SkuListElement sku,
            DeliveryInfo deliveryInfo, ProductStatus status)
            : this(productId, productBase, deliveryInfo, status)
        {
            TkDebug.AssertArgumentNull(sku, "sku", null);

            SkuList.Add(sku);
        }
Пример #33
0
        public ActionResult DeleteConfirmed(Guid id)
        {
            ProductStatus productStatus = UnitOfWork.ProductStatusRepository.GetById(id);

            UnitOfWork.ProductStatusRepository.Delete(productStatus);
            UnitOfWork.Save();
            return(RedirectToAction("Index"));
        }
Пример #34
0
        public ActionResult DeleteConfirmed(int id)
        {
            ProductStatus productStatus = db.ProductStatuses.Find(id);

            db.ProductStatuses.Remove(productStatus);
            db.SaveChanges();
            return(RedirectToAction("Index"));
        }
Пример #35
0
        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);
        }
Пример #36
0
 //public ProductInfo ProductInfo { get { return ProductInfoManager.GetProductInfo(db, ProductInfoId); } }
 //public Order Order { get { return null; } }
 /// <summary>
 /// 상품 생성한다.
 /// 상품 등록시에만 쓰도록 한다.
 /// </summary>
 /// <param name="productInfoId"></param>
 public Product(ProjectSIA.Product product)
 {
     Id = product.id;
     ProductInfoId = product.productInfoId;
     Status = (ProductStatus)Enum.Parse(typeof(ProductStatus), product.status);
     OrderId = product.orderId;
     WarehouseDate = product.warehouseDate;
     Price = product.price;
 }
Пример #37
0
        private WeProduct(string productId, WeProductBase productBase, DeliveryInfo deliveryInfo,
            ProductStatus status)
        {
            TkDebug.AssertArgumentNullOrEmpty(productId, "productId", null);
            TkDebug.AssertArgumentNull(ProductBase, "ProductBase", null);
            TkDebug.AssertArgumentNull(deliveryInfo, "deliveryInfo", null);

            ProductId = productId;
            SkuList = new List<SkuListElement>();
            ProductBase = productBase;
            DeliveryInfo = deliveryInfo;
            Status = status;
        }
Пример #38
0
        /// <summary>
        /// 执行验证
        /// </summary>
        /// <returns>验证结果</returns>
        internal void Validate()
        {

            try
            {
                result = OnValidate();
                if (result == null)
                {
                    result = new ValidateResult(ProductStatus.Unknown, "Returns the result is null");
                }
            }
            catch (Exception ex)
            {
                result = new ValidateResult(ex);
                result.Message = "Arch.CFramework.AppInternals.Validation.ValidatorBase catch Exception";
            }
            status = result.Status;
            msg = result.Message;
            checkError = result.CheckError;
            //return result;
        }
        public ActionResult Index(int pageIndex = 1, ProductStatus productStatus = ProductStatus.Procreative)
        {
            IIdentity id = HttpContext.User.Identity;

            var tuple = AgriculturalProductSvc.LoadProductListByProductStatus(id.Name, pageIndex, PAGESIZE, productStatus);

            var model = new ListViewModel<AgriculturalProduct>();
            model.Items = tuple.Item1;
            model.PageCount = Utilts.CalculatePageCount(tuple.Item2, PAGESIZE);
            model.CurrentPageIndex = pageIndex;

            return View(model);
        }
Пример #40
0
        private void btnSearch_Click(object sender, EventArgs e)
        {
            string strSearch = txtSearch.Text.Trim();

            if (chkSearchProductStatusID.Checked)
            {
                int idSearch = 0;

                if (Int32.TryParse(strSearch, out idSearch))
                {
                    searchEntity = new ProductStatus(idSearch);
                }
                else
                {
                    searchEntity = new ProductStatus(-1);
                }
            }
            else
            {
                searchEntity = new ProductStatus();
            }

            if (chkSearchProductStatusName.Checked)
            {
                searchEntity.StatusName = strSearch;
            }

            if (chkSearchProductStatusDesc.Checked)
            {
                searchEntity.Description = strSearch;
            }

            RefreshGridView(searchEntity);
        }
Пример #41
0
        private void btnSave_Click(object sender, EventArgs e)
        {
            if (txtProductStatusName.Text.Trim().Length == 0)
            {
                HoTro.baoLoi("Điền tên trạng thái");
                return;
            }
            if (isAdd)
            {
                ProductStatus entity = new ProductStatus();
                entity.StatusName = txtProductStatusName.Text.Trim();
                entity.Description = txtProductStatusDesc.Text.Trim();

                productStatusManager.SaveOrUpdate(entity);
                RefreshGridView(new ProductStatus());
                ResetForm();
                SetFormReadOnly(true);
            }
            else
            {
                ProductStatus entity = new ProductStatus(Int32.Parse(txtProductStatusID.Text));
                entity.StatusName = txtProductStatusName.Text.Trim();
                entity.Description = txtProductStatusDesc.Text.Trim();

                productStatusManager.SaveOrUpdate(entity);
                RefreshGridView(new ProductStatus());
                ResetForm();
                SetFormReadOnly(true);
            }
        }
Пример #42
0
 public Product With(string name = null, ProductStatus? status = null, Guid? id = null)
 {
   return new Product(name ?? this.Name, status ?? Status, id ?? Id);
 }
Пример #43
0
 /// <summary>
 /// 创建 <see cref="ValidateResult"/> 实例
 /// </summary>
 /// <param name="status">产品状态</param>
 /// <param name="msg">描述信息</param>
 public ValidateResult(ProductStatus status, string msg)
 {
     this.status = status;
     SetStatus(status);
     FormatMessage(msg);
 }
Пример #44
0
 public ValidateResult(Exception ex)
 {
     this.checkSucceed = false;
     this.checkError = ex;
     this.status = ProductStatus.Exception;
 }
Пример #45
0
        private void RefreshGridView(ProductStatus searchEntity)
        {
            //Get all user
            searchParam = new SearchParam();
            searchParam.Start = DEFAULT_START;
            searchParam.Limit = DEFAULT_LIMIT;
            searchParam.SortBy = DEFAULT_SORT_BY;
            searchParam.SortDir = DEFAULT_SORT_DIR;

            //
            this.searchEntity = searchEntity;

            //
            SearchResult<ProductStatus> searchResult = productStatusManager.GetProductStatusListByParam(searchEntity, searchParam);

            //Binding list userrole to gridview
            IList2DataTable(searchResult.SearchList, dataSetProductStatus.Tables["ProductStatus"]);

            //Binding list to navigator
            listPages = new List<Int32>();
            BindingDataToBindingNagivator(searchResult.SearchSize, 0);
        }
Пример #46
0
        private static byte ConvertProductStatusToByte(ProductStatus status)
        {
            switch (status)
            {
                case ProductStatus.Available:
                    return 1;

                case ProductStatus.Discontinued:
                    return 2;

                case ProductStatus.Planned:
                    return 3;
            }

            return 3;
        }
Пример #47
0
 static HElement ViewStatus(ProductStatus status)
 {
   return h.Span(h.style("color:darkgray;font-size:85%;"), string.Format(" ({0}) ", DisplayStatus(status)));
 }
 public void UpdateStatus(int ProductID, ProductStatus status)
 {
     string sql = String.Format("update pdproduct set status = {0} where productid={1}",(int)status,ProductID);
     dbw.ExecuteNonQuery(CommandType.Text, sql);
 }
Пример #49
0
 private void SetStatus(ProductStatus status)
 {
     switch (status)
     {
         case ProductStatus.Normal:
             checkSucceed = true;
             break;
         default:
             checkSucceed = false;
             break;
     }
 }
Пример #50
0
        /// <summary>
        /// 执行根据DeliveryNo修改所有属于该DeliveryNo的Product状态的操作
        /// </summary>
        /// <param name="executionContext"></param>
        /// <returns></returns>
        protected internal override ActivityExecutionStatus DoExecute(ActivityExecutionContext executionContext)
        {
            string Delivery = (string)CurrentSession.GetValue(Session.SessionKeys.DeliveryNo);
            Delivery CurrentDelivery = (Delivery)CurrentSession.GetValue(Session.SessionKeys.Delivery);

            IDeliveryRepository DeliveryRepository = RepositoryFactory.GetInstance().GetRepository<IDeliveryRepository, Delivery>();
            IProductRepository repProduct = RepositoryFactory.GetInstance().GetRepository<IProductRepository, IProduct>();
            ////
           

            IList<string> nameList = new List<string>();
            nameList.Add("UCC");
            nameList.Add("BoxId");
            repProduct.BackUpProductByDnPure( Delivery, Editor);
            repProduct.BackUpProductInfoByDn( Delivery, Editor, nameList);
            repProduct.BackUpProductStatusByDnPure( Delivery, Editor);
           
            ////
            ProductStatus newStatus = new ProductStatus();
            newStatus.Editor = Editor;
            newStatus.Line = Line;
            newStatus.StationId = Station;
            newStatus.Status = StationStatus.Pass;
            newStatus.ReworkCode = "";

            repProduct.UpdateUnPackProductStatusByDn(newStatus, Delivery);
            carton.ICartonSSCCRepository cartRep = RepositoryFactory.GetInstance().GetRepository<carton.ICartonSSCCRepository, IMES.FisObject.PAK.CartonSSCC.CartonSSCC>();
            IPalletRepository palletRep = RepositoryFactory.GetInstance().GetRepository<IPalletRepository, Pallet>();

            ////
            ProductLog newLog = new ProductLog();
            newLog.Editor = Editor;
            newLog.Line = Line;
            newLog.Station = Station;
            newLog.Status = StationStatus.Pass;

            repProduct.WriteUnPackProductLogByDn(Delivery,newLog);

            //////
            repProduct.UnPackProductInfoByDeliveryNoAndInfoType("UCC",Delivery);
            repProduct.UnPackProductInfoByDeliveryNoAndInfoType("BoxId", Delivery);
            
            ////////
            if (Station != "8U")
            {
                IList<IProduct> lstProduct = repProduct.GetProductObjListByDn(Delivery);
                if (lstProduct != null && lstProduct.Count > 0)
                {
                    foreach(IProduct tmp in lstProduct)
                    {
                        string carton = tmp.CartonSN;
                        DM.CartonInfoInfo condition = new DM.CartonInfoInfo();
                        condition.cartonNo = carton;
                        cartRep.DeleteCartonInfo(condition);

                        //mantis 1395
                        DM.CartonStatusInfo cond = new DM.CartonStatusInfo();
                        DM.CartonStatusInfo sv = new DM.CartonStatusInfo();
                        cond.cartonNo = tmp.CartonSN;
                        sv.station = Station;
                        sv.status = 1;
                        sv.editor = Editor;
                        sv.udt = DateTime.Now;
                        cartRep.UpdateCartonStatusDefered(CurrentSession.UnitOfWork, sv, cond);

                        DM.CartonLogInfo item = new DM.CartonLogInfo();
                        item.cartonNo = tmp.CartonSN;
                        item.cdt = DateTime.Now;
                        item.editor = Editor;
                        item.line = tmp.Status.Line;
                        item.station = Station;
                        item.status = 1;
                        cartRep.AddCartonLogInfoDefered(CurrentSession.UnitOfWork, item);
                        //mantis 1395


                        string palletNo = tmp.PalletNo;
                        DM.PakLocMasInfo setValue = new DM.PakLocMasInfo();
                        DM.PakLocMasInfo pakLoc_condition = new DM.PakLocMasInfo();
                        setValue.pno = "";
                        setValue.editor = Editor;
                        pakLoc_condition.pno = palletNo;
                        pakLoc_condition.tp = "PakLoc";
                        palletRep.UpdatePakLocMasInfo(setValue, pakLoc_condition);
                    }
                }
            }

            if (Station != "8U")
                repProduct.UnPackProductByDn(Delivery);
            else
                repProduct.UnPackProductByDnWithoutCartonSN(Delivery);

    /////////////////////
            CurrentDelivery.Status = "00";
            CurrentDelivery.Editor = this.Editor;
            CurrentDelivery.Udt = DateTime.Now;
            DeliveryRepository.Update(CurrentDelivery, CurrentSession.UnitOfWork);
    /////////////////////


            return base.DoExecute(executionContext);
        }
Пример #51
0
 public WeProductModStatus(ProductStatus status, string productId)
 {
     Status = status;
 }
Пример #52
0
 public static IEnumerable<WeProduct> Query(ProductStatus status)
 {
     string url = WeUtil.GetUrl(WeShopConst.PRODUCT_STATUS_URL);
     WeProductStatus request = new WeProductStatus(status);
     var result = WeUtil.PostToUri(url, request.WriteJson(), new WeProductList());
     return result.ProductsInfo;
 }
 public IHttpActionResult GetProductByStatus(ProductStatus status)
 {
     return Ok(_products.Where(i => i.Status == status));
 }
Пример #54
0
 static string DisplayStatus(ProductStatus status)
 {
   switch (status)
   {
     case ProductStatus.InQueue:
       return "В очереди";
     case ProductStatus.New:
       return "Новый";
     case ProductStatus.Prepare:
       return "Приготовление";
     case ProductStatus.Ready:
       return "Готов";
   }
   return null;
 }
Пример #55
0
 public WeProductStatus(ProductStatus status)
 {
     Status = status;
 }
Пример #56
0
 public Product(string name, ProductStatus status, Guid? id = null)
 {
   this.Id = id ?? Guid.NewGuid();
   this.Name = name;
   this.Status = status;
 }
Пример #57
0
        private void FrmProductStatus_Load(object sender, EventArgs e)
        {
            //
            ContructGridViewColumn();

            //Get all user
            searchParam = new SearchParam();
            searchParam.Start = DEFAULT_START;
            searchParam.Limit = DEFAULT_LIMIT;
            searchParam.SortBy = DEFAULT_SORT_BY;
            searchParam.SortDir = DEFAULT_SORT_DIR;

            //
            searchEntity = new ProductStatus();

            //
            SearchResult<ProductStatus> searchResult = productStatusManager.GetProductStatusListByParam(searchEntity, searchParam);

            //Binding list userrole to gridview
            IList2DataTable(searchResult.SearchList, dataSetProductStatus.Tables["ProductStatus"]);

            //Binding list to navigator
            listPages = new List<Int32>();
            BindingDataToBindingNagivator(searchResult.SearchSize, 0);

            //
            isAdd = true;
        }
Пример #58
0
 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();
     }
 }
Пример #59
0
 public static WeixinResult UpdateStatus(string productId, ProductStatus status)
 {
     TkDebug.AssertArgumentNullOrEmpty(productId, "productId", null);
     string url = WeUtil.GetUrl(WeShopConst.PRODUCT_SHELF_URL);
     WeProductModStatus request = new WeProductModStatus(status, productId);
     var result = WeUtil.PostToUri(url, request.WriteJson(), new WeixinResult());
     return result;
 }
Пример #60
0
        public ArrayList Save(List<string> SNList,
                              List<string> PNList,
                              List<string> errList, string Editor, string Station, string customer)
        {
            logger.Debug("(ReturnUsedKeysImpl)Save start" 
                
                + " [editor]:" + Editor
                + " [station]:" + Station
                + " [customer]:" + customer);
            FisException ex;
            List<string> erpara = new List<string>();
            ArrayList retvaluelist = new ArrayList();
            string ECOAReturnStatus = "0";
            var productRepository = RepositoryFactory.GetInstance().GetRepository<IProductRepository, IProduct>();
            var currentRepository = RepositoryFactory.GetInstance().GetRepository<ICOAStatusRepository, COAStatus>();

            try
            {
                ///生成group id
                SqlTransactionManager.Begin();
                IUnitOfWork Number_uof = new UnitOfWork();//使用自己的UnitOfWork
                string prestr = "";
                string maxnum = "";
                bool addflag = false;
               
                INumControlRepository numControl = RepositoryFactory.GetInstance().GetRepository<INumControlRepository, NumControl>();
                maxnum = numControl.GetMaxNumber("GroupID", prestr + "{0}");
                if (string.IsNullOrEmpty(maxnum))
                {
                    maxnum = "001";
                    addflag = true;
                }
                else
                {
                    if (maxnum.Substring(6, 3).ToUpper() == "999")
                    {
                        maxnum = "001";
                    }
                    else
                    {
                        int count = Int32.Parse(maxnum.Substring(6, 3));
                        count = count + 1;
                        maxnum = (count).ToString().PadLeft(3, '0');
                    }
                }
                DateTime dd = DateTime.Now;
                string Groupid = dd.Year.ToString().Substring(2,2) + dd.Month.ToString().PadLeft(2, '0') + dd.Day.ToString().PadLeft(2, '0') + maxnum;
                NumControl item = new NumControl();
                item.NOType = "GroupID";
                item.Value = Groupid;
                item.NOName = "";
                item.Customer = "HP";

                numControl.SaveMaxNumber(item, addflag, prestr + "{0}");
               
                Number_uof.Commit();  //立即提交UnitOfWork更新NumControl里面的最大值
                SqlTransactionManager.Commit();//提交事物,释放行级更新锁

                
                 
                /////////////////////////////////////////////////

                for (int i = 0; i < SNList.Count; i++)
                {
                    IProduct CurrentProduct = null;
                    if (errList[i] == "Pass")
                    {
                        string custSn = SNList[i];
                        
                        IUnitOfWork work = new UnitOfWork();
                        CurrentProduct = productRepository.GetProductByCustomSn(custSn);
                        if (CurrentProduct == null)
                        {
                            continue;
                        }
                        string line = CurrentProduct.Status.Line;
                        StationStatus Status = StationStatus.Pass;
                      
                        var productLog = new ProductLog
                        {
                            Model = CurrentProduct.Model,
                            Status = Status,
                            Editor = Editor,
                            Line = line,
                            Station = Station,
                            Cdt = DateTime.Now
                        };
                        CurrentProduct.AddLog(productLog);
                      
                        /////////update product status
                        var newStatus = new ProductStatus();
                        newStatus.Status = Status;
                        newStatus.StationId = Station;
                        newStatus.Editor = Editor;
                        newStatus.Line = line;
                        newStatus.TestFailCount = 0;

                        if (!string.IsNullOrEmpty(CurrentProduct.Status.ReworkCode) && productRepository.IsLastReworkStation(CurrentProduct.Status.ReworkCode, Station, (int)Status))
                        {
                            newStatus.ReworkCode = "";
                            IMES.DataModel.Rework r = new IMES.DataModel.Rework();
                            r.ReworkCode = CurrentProduct.Status.ReworkCode;
                            r.Editor = Editor;
                            r.Status = "3";
                            r.Udt = DateTime.Now;
                            productRepository.UpdateReworkConsideredProductStatusDefered(work, r, CurrentProduct.ProId);
                        }
                        else
                        {
                            newStatus.ReworkCode = CurrentProduct.Status.ReworkCode;
                        }
                        newStatus.ProId = CurrentProduct.ProId;
                        CurrentProduct.UpdateStatus(newStatus);
                        
                        productRepository.Update(CurrentProduct, work);

                        ECOAReturnStatus = "1";
                    }
                    dm.EcoareturnInfo item1 = new dm.EcoareturnInfo();
                    item1.custsn = SNList[i];
                    item1.partNo = PNList[i];
                    item1.message = errList[i];
                    item1.status = ECOAReturnStatus;
                    item1.line = CurrentProduct.Status.Line;
                    item1.groupNo = Groupid;
                    
                    currentRepository.InsertEcoareturn(item1);

                }
                retvaluelist.Add(Groupid);
                return retvaluelist;

            }
            catch (FisException e)
            {
                logger.Error(e.mErrmsg);

                throw e;
            }
            catch (Exception e)
            {
                logger.Error(e.Message);
                throw e;
            }
            finally
            {
                logger.Debug("(ReturnUsedKeysImpl)Save end" 
                    
                    + " [editor]:" + Editor
                    + " [station]:" + Station
                    + " [customer]:" + customer);
            }
        }