public int InsertOrderShipmentDetails(OrderFulfillment.OrderShipmentDetails obj) { int result = 0; result = _blOrder.InsertOrderShipmentDetails(obj, obj.subDomainName); return(result); }
public int InsertOrderShipmentDetails(OrderFulfillment.OrderShipmentDetails obj, string subDomainName) { List <OrderFulfillment.OrderShipmentProductDetails> Acc = JsonConvert.DeserializeObject <List <OrderFulfillment.OrderShipmentProductDetails> >(obj.lstProduct).ToList(); int rowAffected = 0; string error = string.Empty; try { int newId = 0; using (IDbConnection connection = IDbOpenConnectionCompanyWise(subDomainName)) { StringBuilder query = new StringBuilder(); query.Append("Select count(1) From Tbl_SfA_POB_OrderDispatch_Header Where Invoice_No = @InvoiceNo and Order_Id = @Order_Id"); rowAffected = connection.Query <int>(query.ToString(), new { InvoiceNo = obj.InvoiceNo, Order_Id = obj.Order_Id, }).FirstOrDefault(); connection.Close(); } if (rowAffected == 0) { using (IDbConnection connection = IDbOpenConnectionCompanyWise(subDomainName)) { StringBuilder query = new StringBuilder(); query.Append("Insert Into Tbl_SfA_POB_OrderDispatch_Header (Company_Id,Order_Id,Invoice_No,Invoice_Date,Dispatch_Date,Acknowledge_Date,Attachement,Created_by,Created_Date)"); query.Append(" Values(@Company_Id, @Order_Id, @InvoiceNo,@InvoiceDate, @DispatchDate, @AckDate, @UploadImg , @UserCode, GetDate()) Select CAST(SCOPE_IDENTITY() as int)"); newId = connection.Query <int>(query.ToString(), new { Company_Id = obj.Company_Id, UserCode = obj.UserCode, Order_Id = obj.Order_Id, InvoiceNo = obj.InvoiceNo, InvoiceDate = obj.InvoiceDate, DispatchDate = obj.DispatchDate, AckDate = obj.AckDate, UploadImg = obj.Attachment }).FirstOrDefault(); connection.Close(); } using (IDbConnection connection = IDbOpenConnectionCompanyWise(subDomainName)) { IDbTransaction trans = connection.BeginTransaction(); foreach (var item in Acc) { string LineQuery = "Insert Into Tbl_SfA_POB_OrderDispatch_Details (Company_Id,Order_Id,Dispatch_Id,Product_Code,Dispatch_Quantity,Rate,Created_By,Created_Date)" + " Values(@Company_Id, @Order_Id, @Dipatch_Id,@Product_Code,@Dispatch_Qty,@Rate,@UserCode,GetDate()) Select CAST(SCOPE_IDENTITY() as int)"; rowAffected = connection.Execute(LineQuery, new { Company_Id = obj.Company_Id, Order_Id = obj.Order_Id, Dipatch_Id = newId, Product_Code = item.Product_Code, Product_Name = item.Product_Name, Order_Qty = 0, Dispatch_Qty = item.Dispatch_Qty, Rate = item.Rate, Product_Type = item.Product_Type, UserCode = obj.UserCode }, transaction: trans); } trans.Commit(); } using (IDbConnection connection = IDbOpenConnectionCompanyWise(subDomainName)) { IDbTransaction trans = connection.BeginTransaction(); foreach (var item1 in Acc) { string LineQuery = "Update TBL_SFA_OrderMaintenance_Details Set Dispatch_Qty = (Dispatch_Qty+@Dispatch_Qty), Balance_Qty = (Balance_Qty-@Dispatch_Qty), Updated_Date = GetDate(), Updated_By = @UserCode Where Order_Id = @Order_Id and Product_Code=@Product_Code"; rowAffected = connection.Execute(LineQuery, new { Order_Id = obj.Order_Id, Dispatch_Qty = item1.Dispatch_Qty, Rate = item1.Rate, Product_Code = item1.Product_Code, UserCode = obj.UserCode }, transaction: trans); } trans.Commit(); } } else { rowAffected = -1; } return(rowAffected); } catch (Exception ex) { throw ex; } }
public int InsertOrderShipmentDetails(OrderFulfillment.OrderShipmentDetails obj, string subDomainName) { return(DAL_Order.InsertOrderShipmentDetails(obj, subDomainName)); }