public HttpResponseMessage Put([FromBody] PurchaseOrderModel purchaseOrderModel) { try { var details = purchaseOrderModel.PoDetailsList; foreach (var item in details) { var poDetails = new purchase_order_details { product_id = item.product_id, color_id = item.color_id, product_version_id = item.product_version_id, product_category_id = item.product_category_id }; var kkk = productCategoryRepository.GetProductCategoryByProductId((long)item.product_id); if (kkk != 3 && item.color_id == null && item.product_version_id == null) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "warning", msg = "Please Select color and version !!" }, formatter)); } } if (string.IsNullOrEmpty(purchaseOrderModel.PoMasterData.supplier_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Please Select Supplier !!" }, formatter)); } if (string.IsNullOrEmpty(purchaseOrderModel.PoMasterData.currency_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = "Please Select Currency !!" }, formatter)); } else { purchaseOrderRepository.EditPurchaseOrder(purchaseOrderModel); var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "success", msg = "Purchase Order Update successfully" }, formatter)); } } catch (Exception ex) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "error", msg = ex.ToString() }, formatter)); } }
public bool DeletePurchaseOrderDetailsById(long purchase_order_details_id) { try { purchase_order_details oPurchaseOrderDetails = _entities.purchase_order_details.Find(purchase_order_details_id); _entities.purchase_order_details.Attach(oPurchaseOrderDetails); _entities.purchase_order_details.Remove(oPurchaseOrderDetails); _entities.SaveChanges(); return(true); } catch (Exception) { return(false); } }
public long AddGrn(GrnModel grnModel) { try { var grnMaster = grnModel.GrnMasterData; var grnDetailsList = grnModel.GrnDetailsList; var receiveSerialNoDetails = grnModel.ReceiveSerialNoDetails; bool isDuplicateImei = false; foreach (var item in receiveSerialNoDetails) { long imeiForDuplicateSearch = item.imei_no ?? 0; var xxx = _entities.receive_serial_no_details.Where(r => r.imei_no == imeiForDuplicateSearch).ToList(); if (xxx.Count > 0) { isDuplicateImei = true; } } if (!isDuplicateImei) { // generate order_no long grnSerial = _entities.grn_master.Max(po => (long?)po.grn_master_id) ?? 0; grnSerial++; var grnStr = grnSerial.ToString().PadLeft(7, '0'); // SAVING GRN MASTER string grnNo = "GRN-" + grnStr; grnMaster.supplier_id = grnModel.GrnMasterData.supplier_id; grnMaster.total_amount_including_vattax = grnModel.GrnMasterData.total_amount_including_vattax; grnMaster.status = grnModel.GrnMasterData.status; grnMaster.company_id = grnModel.GrnMasterData.company_id; grnMaster.grn_date = grnModel.GrnMasterData.grn_date; grnMaster.purchase_order_master_id = grnModel.GrnMasterData.purchase_order_master_id; grnMaster.vat_total = grnModel.GrnMasterData.vat_total; grnMaster.warehouse_id = grnModel.GrnMasterData.warehouse_id; grnMaster.created_by = grnModel.GrnMasterData.created_by; grnMaster.created_date = DateTime.Now; grnMaster.updated_by = grnModel.GrnMasterData.updated_by; grnMaster.updated_date = DateTime.Now; grnMaster.remarks = grnModel.GrnMasterData.remarks; grnMaster.lot_no = grnModel.GrnMasterData.lot_no; grnMaster.lc_id = 0; grnMaster.grn_no = grnNo; grnMaster.tax_total = grnModel.GrnMasterData.tax_total; grnMaster.total_amount_without_vattax = grnModel.GrnMasterData.total_amount_without_vattax; grnMaster.mrr_status = false; _entities.grn_master.Add(grnMaster); _entities.SaveChanges(); // Maruf: 28.Feb.2016: Update CiPl received = true //var ciPlMaster = _entities.ci_pl_master.Find(grnModel.GrnMasterData.purchase_order_master_id); var ciPlMaster = _entities.ci_pl_master.FirstOrDefault(c => c.purchase_order_master_id == grnModel.GrnMasterData.purchase_order_master_id); ciPlMaster.is_received = true; _entities.SaveChanges(); long grnMasterId = grnMaster.grn_master_id; foreach (var item in grnDetailsList) { var grnDetails = new grn_details { product_id = item.product_id, grn_master_id = grnMasterId, unit_id = item.unit_id, unit_price = item.unit_price, pi_quantity = item.pi_quantity, amount = item.amount, brand_id = item.brand_id, color_id = item.color_id, product_version_id = item.product_version_id, receive_quantity = item.receive_quantity, vat_amount = item.vat_amount, tax_amount = item.tax_amount, line_total = item.line_total, size_id = item.size_id, vat_pcnt = item.vat_pcnt, tax_pcnt = item.tax_pcnt }; _entities.grn_details.Add(grnDetails); // _entities.SaveChanges(); // kiron 04.09.2016 long saved = _entities.SaveChanges(); if (saved > 0) { // update inventory InventoryRepository updateInventoty = new InventoryRepository(); // Maruf: 04.Apr.2017: move product from purchase(29) WH to GRN(4) WH; it will move to central after MRR process updateInventoty.UpdateInventory("GRN", grnMaster.grn_no, 29, 4, grnDetails.product_id ?? 0, grnDetails.color_id ?? 0, grnDetails.product_version_id ?? 0, grnDetails.unit_id ?? 0, grnDetails.receive_quantity ?? 0, grnMaster.created_by ?? 0); } long purchaseOrderDetailsId = item.purchase_order_details_id; purchase_order_details poDetails = _entities.purchase_order_details.Find(purchaseOrderDetailsId); poDetails.receive_qty += item.receive_quantity; _entities.SaveChanges(); } foreach (var item in receiveSerialNoDetails) { int c = 0; var receiveSerialNoDetailsData = new receive_serial_no_details { product_id = item.product_id, grn_master_id = grnMasterId, brand_id = item.brand_id, color_id = item.color_id, product_version_id = item.product_version_id, imei_no = item.imei_no, imei_no2 = item.imei_no2, received_warehouse_id = 4, // 4-GRN WH; will be moved to central after MRR current_warehouse_id = 4, // 4-GRN WH; will be moved to central after MRR received_date = item.received_date, requisition_id = 0, deliver_master_id = 0, sales_status = false, price_protected = false, carton_no = item.carton_no }; _entities.receive_serial_no_details.Add(receiveSerialNoDetailsData); c++; if (c == 100) { c = 0; _entities.SaveChanges(); } } _entities.SaveChanges(); return(1); } return(0); } catch (Exception) { return(0); } }
public bool UpdatePiInfoOnPo(PurchaseOrderModel purchaseOrderModel) { try { var poMaster = purchaseOrderModel.PoMasterData; var poDetailsList = purchaseOrderModel.PoDetailsList; purchase_order_master masterData = _entities.purchase_order_master.Find(poMaster.purchase_order_master_id); if (string.IsNullOrEmpty(masterData.pi_attachment_location)) { return(false); } masterData.supplier_id = purchaseOrderModel.PoMasterData.supplier_id; masterData.pi_number = purchaseOrderModel.PoMasterData.pi_number; masterData.currency_id = purchaseOrderModel.PoMasterData.currency_id; masterData.total_amount_including_vattax = purchaseOrderModel.PoMasterData.total_amount_including_vattax; masterData.status = "Updated"; masterData.company_id = masterData.company_id; masterData.order_date = masterData.order_date; masterData.shipping_terms_id = masterData.shipping_terms_id; masterData.expected_shipment_date = masterData.expected_shipment_date; masterData.shipping_method_id = masterData.shipping_method_id; masterData.vat_total = purchaseOrderModel.PoMasterData.vat_total; masterData.terms_n_condition = purchaseOrderModel.PoMasterData.terms_n_condition; masterData.pi_terms_n_condition = purchaseOrderModel.PoMasterData.pi_terms_n_condition; masterData.created_by = masterData.created_by; masterData.created_date = masterData.created_date; masterData.updated_by = purchaseOrderModel.PoMasterData.updated_by; masterData.updated_date = DateTime.Now; masterData.noc_number = purchaseOrderModel.PoMasterData.noc_number; masterData.remarks = purchaseOrderModel.PoMasterData.remarks; masterData.batch_id = 0; masterData.order_no = purchaseOrderModel.PoMasterData.order_no; masterData.tax_total = purchaseOrderModel.PoMasterData.tax_total; masterData.total_amount_without_vattax = purchaseOrderModel.PoMasterData.total_amount_without_vattax; _entities.SaveChanges(); foreach (var item in poDetailsList) { purchase_order_details detailsData = _entities.purchase_order_details.FirstOrDefault( pd => pd.purchase_order_master_id == poMaster.purchase_order_master_id && pd.purchase_order_details_id == item.purchase_order_details_id); if (detailsData != null) { detailsData.purchase_order_master_id = poMaster.purchase_order_master_id; detailsData.product_id = item.product_id; detailsData.unit_id = item.unit_id; detailsData.unit_price = item.unit_price; detailsData.quantity = item.quantity; detailsData.amount = item.amount; detailsData.brand_id = item.brand_id; detailsData.color_id = item.color_id; detailsData.pi_quantity = item.pi_quantity; detailsData.product_version_id = item.product_version_id; detailsData.receive_qty = detailsData.receive_qty; detailsData.vat_amount = item.vat_amount; detailsData.last_modified_date = detailsData.last_modified_date; detailsData.tax_amount = item.tax_amount; detailsData.line_total = item.line_total; detailsData.size_id = item.size_id; detailsData.status = item.status; detailsData.vat_pcnt = item.vat_pcnt; detailsData.tax_pcnt = item.tax_pcnt; detailsData.product_category_id = item.product_category_id; _entities.SaveChanges(); } } return(true); } catch (Exception ex) { return(false); } }
public long AddPurchaseOrder(PurchaseOrderModel purchaseOrderModel) { try { var poMaster = purchaseOrderModel.PoMasterData; var poDetailsList = purchaseOrderModel.PoDetailsList; // generate order_no long poSerial = _entities.purchase_order_master.Max(po => (long?)po.purchase_order_master_id) ?? 0; if (poSerial != 0) { poSerial++; } else { poSerial++; } var poStr = poSerial.ToString().PadLeft(7, '0'); //string orderNo = "ORD/" + DateTime.Now.Year + "/" + poSerial; string orderNo = "PO-" + poStr; poMaster.purchase_order_reference_number = purchaseOrderModel.PoMasterData.purchase_order_reference_number; poMaster.supplier_id = purchaseOrderModel.PoMasterData.supplier_id; poMaster.currency_id = purchaseOrderModel.PoMasterData.currency_id; poMaster.total_amount_including_vattax = purchaseOrderModel.PoMasterData.total_amount_including_vattax; poMaster.status = purchaseOrderModel.PoMasterData.status; poMaster.company_id = purchaseOrderModel.PoMasterData.company_id; poMaster.order_date = Convert.ToDateTime(purchaseOrderModel.PoMasterData.order_date); poMaster.shipping_terms_id = purchaseOrderModel.PoMasterData.shipping_terms_id; poMaster.shipping_method_id = purchaseOrderModel.PoMasterData.shipping_method_id; poMaster.expected_shipment_date = Convert.ToDateTime(purchaseOrderModel.PoMasterData.expected_shipment_date); poMaster.vat_total = purchaseOrderModel.PoMasterData.vat_total; poMaster.terms_n_condition = purchaseOrderModel.PoMasterData.terms_n_condition; poMaster.created_by = purchaseOrderModel.PoMasterData.created_by; poMaster.created_date = DateTime.Now; poMaster.updated_by = purchaseOrderModel.PoMasterData.updated_by; poMaster.updated_date = DateTime.Now; poMaster.remarks = purchaseOrderModel.PoMasterData.remarks; poMaster.is_active = true; poMaster.noc_number = purchaseOrderModel.PoMasterData.noc_number; poMaster.verify_status = "Not Verified"; poMaster.approve_status = "Not Approved"; poMaster.is_deleted = false; poMaster.batch_id = 0; poMaster.order_no = orderNo; poMaster.tax_total = purchaseOrderModel.PoMasterData.tax_total; poMaster.total_amount_without_vattax = purchaseOrderModel.PoMasterData.total_amount_without_vattax; _entities.purchase_order_master.Add(poMaster); _entities.SaveChanges(); long purchaseOrderMasterId = poMaster.purchase_order_master_id; foreach (var item in poDetailsList) { var poDetails = new purchase_order_details { purchase_order_master_id = purchaseOrderMasterId, product_id = item.product_id, unit_id = item.unit_id, unit_price = item.unit_price, quantity = item.quantity, product_version_id = item.product_version_id, amount = item.amount, brand_id = item.brand_id, color_id = item.color_id, receive_qty = 0, pi_quantity = 0, vat_amount = item.vat_amount, last_modified_date = DateTime.Now, tax_amount = item.tax_amount, line_total = item.line_total, size_id = item.size_id, status = item.status, vat_pcnt = item.vat_pcnt, tax_pcnt = item.tax_pcnt, product_category_id = item.product_category_id }; _entities.purchase_order_details.Add(poDetails); _entities.SaveChanges(); } return(1); } catch (Exception ex) { return(0); } }