public HttpResponseMessage Post([FromBody] LocalPurchaseOrderModel localPurchaseOrderModel) { try { var details = localPurchaseOrderModel.LocalPoDetailsList; if (string.IsNullOrEmpty(localPurchaseOrderModel.LocalPoMasterData.supplier_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "warning", msg = "Please Select Supplier !!" }, formatter)); } if (string.IsNullOrEmpty(localPurchaseOrderModel.LocalPoMasterData.company_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "warning", msg = "Please Select Company !!" }, formatter)); } if (string.IsNullOrEmpty(localPurchaseOrderModel.LocalPoMasterData.currency_id.ToString())) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "warning", msg = "Please Select Currency !!" }, formatter)); } if (details.Count < 1) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "warning", msg = "Please give the product list information !!" }, formatter)); } else { localPurchaseOrderRepository.AddLocalPurchaseOrder(localPurchaseOrderModel); var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "success", msg = "Save successfully" }, formatter)); } } catch (Exception ex) { var formatter = RequestFormat.JsonFormaterString(); return(Request.CreateResponse(HttpStatusCode.OK, new Confirmation { output = "warning", msg = ex.ToString() }, formatter)); } }
public long AddLocalPurchaseOrder(LocalPurchaseOrderModel localPurchaseOrderModel) { try { var localPoMaster = localPurchaseOrderModel.LocalPoMasterData; var localPoDetailsList = localPurchaseOrderModel.LocalPoDetailsList; // generate order_no long poSerial = _entities.local_purchase_order_master.Max(po => (long?)po.local_purchase_order_master_id) ?? 0; if (poSerial != 0) { poSerial++; } else { poSerial++; } var poStr = poSerial.ToString().PadLeft(7, '0'); string orderNo = "LPO-" + poStr; localPoMaster.local_purchase_order_reference_number = localPoMaster.local_purchase_order_reference_number; localPoMaster.supplier_id = localPoMaster.supplier_id; localPoMaster.currency_id = localPoMaster.currency_id; localPoMaster.total_amount_including_vattax = localPoMaster.total_amount_including_vattax; localPoMaster.status = localPoMaster.status; localPoMaster.company_id = localPoMaster.company_id; localPoMaster.order_date = DateTime.Now; localPoMaster.vat_total = localPoMaster.vat_total; localPoMaster.created_by = localPoMaster.created_by; localPoMaster.created_date = DateTime.Now; localPoMaster.updated_by = localPoMaster.updated_by; localPoMaster.updated_date = DateTime.Now; localPoMaster.remarks = localPoMaster.remarks; localPoMaster.is_active = true; localPoMaster.approve_status = "Not Approved"; localPoMaster.is_deleted = false; localPoMaster.order_no = orderNo; localPoMaster.tax_total = localPoMaster.tax_total; localPoMaster.total_amount_without_vattax = localPoMaster.total_amount_without_vattax; _entities.local_purchase_order_master.Add(localPoMaster); _entities.SaveChanges(); long localPurchaseOrderMasterId = localPoMaster.local_purchase_order_master_id; foreach (var item in localPoDetailsList) { var localPoDetails = new local_purchase_order_details { local_purchase_order_master_id = localPurchaseOrderMasterId, 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, 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.local_purchase_order_details.Add(localPoDetails); _entities.SaveChanges(); } return(1); } catch (Exception ex) { return(0); } }