private AttdLeavePost AttdPostLeave(AttdLeavePost attdLeaveObj, string location, out bool output) { string baseuri = Utils.Helper.GetDescription("select AttdWebApiHost From MastNetwork", Utils.Helper.constr); using (var client = new HttpClient()) { client.BaseAddress = new Uri(baseuri); var content = new StringContent(JsonConvert.SerializeObject(attdLeaveObj), Encoding.UTF8, "application/json"); var responseTask = client.PostAsync("/api/leavepost", content); responseTask.Wait(); var result = responseTask.Result; output = result.IsSuccessStatusCode; if (result.IsSuccessStatusCode) { var readTask = result.Content.ReadAsAsync <AttdLeavePost>(); readTask.Wait(); var attdLeave = readTask.Result; return(attdLeave); } else { var readTask = result.Content.ReadAsAsync <AttdLeavePost>(); readTask.Wait(); var attdLeave = readTask.Result; // Some error was there, return it without changing posting flags return(attdLeave); } } }
private void btnImport_Click(object sender, EventArgs e) { Cursor.Current = Cursors.WaitCursor; DataTable dtMaterial = new DataTable(); DataTable sortedDT = new DataTable(); try { foreach (GridColumn column in grd_view1.VisibleColumns) { if (column.FieldName != string.Empty) { dtMaterial.Columns.Add(column.FieldName, column.ColumnType); } } for (int i = 0; i < grd_view1.DataRowCount; i++) { DataRow row = dtMaterial.NewRow(); foreach (GridColumn column in grd_view1.VisibleColumns) { row[column.FieldName] = grd_view1.GetRowCellValue(i, column); } dtMaterial.Rows.Add(row); } DataView dv = dtMaterial.DefaultView; dv.Sort = "EmpUnqID asc"; sortedDT = dv.ToTable(); int srno = 0; using (SqlConnection con = new SqlConnection(Utils.Helper.constr)) { DateTime fdt; DateTime tdt; con.Open(); foreach (DataRow dr in sortedDT.Rows) { string tEmpUnqID = dr["EmpUnqID"].ToString(); srno += 1; try { fdt = Convert.ToDateTime(dr["FromDate"]); } catch (Exception ex) { dr["Remarks"] = "FromDate Conversion failed..."; continue; } try { tdt = Convert.ToDateTime(dr["ToDate"]); } catch (Exception ex) { dr["Remarks"] = "ToDate Conversion failed..."; continue; } if (tdt > fdt) { dr["Remarks"] = "Invalid Date Range"; continue; } if ((tdt - fdt).Days > 0 && Convert.ToBoolean(dr["HalfDayFlg"].ToString())) { dr["Remarks"] = "Multiple HalfDay not allowed"; continue; } if (string.IsNullOrEmpty(dr["HalfDayFlg"].ToString().Trim())) { dr["HalfDayFlg"] = 0; } if (!string.IsNullOrEmpty(dr["HalfDayFlg"].ToString().Trim())) { if (dr["HalfDayFlg"].ToString().Trim() == "0") { dr["HalfDayFlg"] = 0; } else if (dr["HalfDayFlg"].ToString().Trim() == "1") { dr["HalfDayFlg"] = 1; } else { dr["HalfDayFlg"] = 0; } } string err = DataValidate(dr); if (!string.IsNullOrEmpty(err)) { dr["Remarks"] = err; continue; } AttdLeavePost tmpvar = new AttdLeavePost(); tmpvar.AppID = srno; tmpvar.EmpUnqID = dr["EmpUnqID"].ToString().Trim(); tmpvar.FromDate = Convert.ToDateTime(dr["FromDate"]); tmpvar.ToDate = Convert.ToDateTime(dr["ToDate"]); tmpvar.LeaveTyp = dr["LeaveType"].ToString().Trim().ToUpper(); tmpvar.HalfDay = Convert.ToBoolean(dr["HalfDayFlg"]); tmpvar.AttdUser = (string.IsNullOrEmpty(dr["PostID"].ToString()) ? Utils.User.GUserID : dr["PostID"].ToString()).Trim(); tmpvar.ERROR = string.Empty; tmpvar.Location = (string.IsNullOrEmpty(dr["Location"].ToString()) ? "IPU" : dr["Location"].ToString()).Trim(); tmpvar.Remarks = ""; bool outres = false; string tloc = (string.IsNullOrEmpty(dr["Location"].ToString()) ? "IPU" : dr["Location"].ToString()).Trim(); AttdLeavePost retObj = AttdPostLeave(tmpvar, tloc, out outres); if (retObj.PostedFlg) { dr["Remarks"] = "Leave Posted Sucussfully"; } if (!string.IsNullOrEmpty(retObj.ERROR)) { dr["Remarks"] = dr["Remarks"].ToString().Trim() + retObj.ERROR; } }//using foreach con.Close(); }//using connection Cursor.Current = Cursors.Default; MessageBox.Show("file uploaded Successfully, please check the remarks for indivisual record status...", "Info", MessageBoxButtons.OK, MessageBoxIcon.Information); } catch (Exception ex) { MessageBox.Show(ex.ToString(), "Error", MessageBoxButtons.OK, MessageBoxIcon.Error); } DataSet ds = new DataSet(); ds.Tables.Add(sortedDT); grd_view.DataSource = ds; grd_view.DataMember = ds.Tables[0].TableName; grd_view.Refresh(); Cursor.Current = Cursors.Default; }