public object ReloadItemIsSetGroup(int userID, int?branchID, string productionItemIDs, string workOrderIDs, string stickGroupdIDs, out Notification notification) { notification = new Notification(); notification.Type = NotificationType.Success; List <DTO.PurchaseRequestDetailDTO> data = new List <DTO.PurchaseRequestDetailDTO>(); try { using (var context = CreateContext()) { var dbItem = context.PurchaseRequestMng_function_ReloadItemByMaterialGroup(branchID, productionItemIDs, workOrderIDs, stickGroupdIDs).ToList(); int i = 0; foreach (var item in dbItem) { i = i - 1; if (item != null /* && item.ProductionItemTypeID == 2*/) { DTO.PurchaseRequestDetailDTO dtoItem = new DTO.PurchaseRequestDetailDTO(); dtoItem.PurchaseRequestDetailID = i; dtoItem.ProductionItemID = item.ProductionItemID; dtoItem.ProductionItemUD = item.ProductionItemUD; dtoItem.ProductionItemNM = item.ProductionItemNM; dtoItem.RequestQnt = item.RequestQnt; dtoItem.OrderQnt = item.OrderQnt; dtoItem.StockQnt = item.StockQnt; dtoItem.IsApproved = item.IsApproved; dtoItem.UnitNM = item.UnitNM; dtoItem.WorkOrderID = item.WorkOrderID; dtoItem.WorkOrderUD = item.WorkOrderUD; dtoItem.ProformaInvoiceNo = item.ProformaInvoiceNo; dtoItem.ProductionItemGroupID = item.ProductionItemGroupID; dtoItem.ETA = DateTime.Now.ToString("dd/MM/yyyy"); data.Add(dtoItem); } } } } catch (Exception ex) { notification.Type = NotificationType.Error; notification.Message = Library.Helper.GetInnerException(ex).Message; } return(data); }
public DTO.EditFormData GetData(int userId, int id, Hashtable param, out Library.DTO.Notification notification) { DTO.EditFormData editFormData = new DTO.EditFormData(); editFormData.ClientByWorkOrders = new List <DTO.ClientByWorkOrderDTO>(); editFormData.ProformaInvoiceByWorkOrders = new List <DTO.ProformaInvoiceNoByWorkOrderDTO>(); notification = new Library.DTO.Notification() { Type = Library.DTO.NotificationType.Success }; try { using (PurchaseRequestMngEntities context = CreateContext()) { //get companyID Module.Framework.DAL.DataFactory fw_factory = new Framework.DAL.DataFactory(); int?companyID = fw_factory.GetCompanyID(userId); if (id > 0) { PurchaseRequestMng_PurchaseRequest_View dbItem; dbItem = context.PurchaseRequestMng_PurchaseRequest_View.Include("PurchaseRequestMng_PurchaseRequestDetail_View.PurchaseRequestMng_PurchaseRequestWorkOrderDetail_View").Where(o => o.CompanyID == companyID).FirstOrDefault(o => o.PurchaseRequestID == id); editFormData.Data = converter.DB2DTO_PurchaseRequest(dbItem); editFormData.Data.PurchaseRequestDetailDTOs = editFormData.Data.PurchaseRequestDetailDTOs.Where(o => o.BranchID == Library.Helper.ConvertStringToInt(param["branchID"].ToString())).ToList(); } else { //initialize data editFormData.Data = new DTO.PurchaseRequestDTO(); editFormData.Data.PurchaseRequestDetailDTOs = new List <DTO.PurchaseRequestDetailDTO>(); editFormData.Data.PurchaseRequestDate = DateTime.Now.ToString("dd/MM/yyyy"); editFormData.Data.RequestedDate = DateTime.Now.ToString("dd/MM/yyyy"); editFormData.Data.WorkOrderIDs = param["workOrderIDs"].ToString(); if (param.ContainsKey("workOrderIDs") && param["workOrderIDs"] != null && !string.IsNullOrEmpty(param["workOrderIDs"].ToString())) { var productionItemByWorkOrders = context.PurchaseRequestMng_function_GetProductionItemByWorkOrder(param["workOrderIDs"].ToString(), Library.Helper.ConvertStringToInt(param["branchID"].ToString())); int i = 0; foreach (var item in productionItemByWorkOrders.ToList()) { i = i - 1; if (item != null /* && item.ProductionItemTypeID != 3*/) { DTO.PurchaseRequestDetailDTO purchaseRequestDetail = new DTO.PurchaseRequestDetailDTO(); purchaseRequestDetail.PurchaseRequestDetailID = i; purchaseRequestDetail.ProductionItemID = item.ProductionItemID; purchaseRequestDetail.ProductionItemUD = item.ProductionItemUD; purchaseRequestDetail.ProductionItemNM = item.ProductionItemNM; purchaseRequestDetail.RequestQnt = item.RequestQnt; purchaseRequestDetail.OrderQnt = item.OrderQnt; purchaseRequestDetail.StockQnt = item.StockQnt; purchaseRequestDetail.IsApproved = item.IsApproved; purchaseRequestDetail.UnitNM = item.UnitNM; purchaseRequestDetail.WorkOrderID = item.WorkOrderID; purchaseRequestDetail.WorkOrderUD = item.WorkOrderUD; purchaseRequestDetail.ProformaInvoiceNo = item.ProformaInvoiceNo; purchaseRequestDetail.ProductionItemGroupID = item.ProductionItemGroupID; purchaseRequestDetail.ETA = editFormData.Data.ETA; editFormData.Data.PurchaseRequestDetailDTOs.Add(purchaseRequestDetail); } } } } string workOrderIDs = editFormData.Data.WorkOrderIDs; // Client var dbClient = context.PurchaseRequestMng_function_GetClientByWorkOrder(workOrderIDs).ToList(); foreach (var item in dbClient) { DTO.ClientByWorkOrderDTO client = new DTO.ClientByWorkOrderDTO(); client.ClientID = item.ClientID; client.ClientUD = item.ClientUD; editFormData.ClientByWorkOrders.Add(client); } // ProformaInvoice var dbSaleOrder = context.PurchaseRequestMng_function_GetProformaInvoiceByWorkOrder(workOrderIDs).ToList(); foreach (var item in dbSaleOrder) { DTO.ProformaInvoiceNoByWorkOrderDTO saleOrder = new DTO.ProformaInvoiceNoByWorkOrderDTO(); saleOrder.SaleOrderID = item.SaleOrderID; saleOrder.ProformaInvoiceNo = item.ProformaInvoiceNo; editFormData.ProformaInvoiceByWorkOrders.Add(saleOrder); } // Set default request status always open if (editFormData.Data.PurchaseRequestStatusID == null) { editFormData.Data.PurchaseRequestStatusID = 1; } return(editFormData); } } catch (Exception ex) { notification.Type = Library.DTO.NotificationType.Error; notification.Message = ex.Message; notification.DetailMessage.Add(ex.Message); if (ex.GetBaseException() != null) { notification.DetailMessage.Add(ex.GetBaseException().Message); } return(editFormData); } }