Beispiel #1
0
        async public void leavesTaken_Tapped(object sender, ItemTappedEventArgs e)
        {
            if (e == null)
            {
                return;
            }
            var selectedItem = e.Item as Leaves;

            if (Convert.ToDateTime(selectedItem.date) >= DateTime.Today)
            {
                var Ans = await DisplayAlert(" nWorksLeaveApp", "Are you sure want to cancel leave applied on date " + selectedItem.date.ToString(), "Yes", "No");

                if (Ans == true)
                {
                    await this.Navigation.PushModalAsync(new Loading());

                    CancelReqLeaves obj = new CancelReqLeaves();
                    obj.uid            = this.uid;
                    obj.dateToBeCancel = Convert.ToDateTime(selectedItem.date);

                    try
                    {
                        var                 json     = JsonConvert.SerializeObject(obj);
                        var                 content  = new StringContent(json, Encoding.UTF8, "application/json");
                        HttpClient          Client   = new HttpClient();
                        HttpResponseMessage response = null;
                        response = await Client.PostAsync(ColorResources.baseUrl + "CancelReqLeave", content);

                        if (response.IsSuccessStatusCode)
                        {
                            var content1 = await response.Content.ReadAsStringAsync();

                            var res = JsonConvert.DeserializeObject <string>(content1);
                            //refresh list
                            getStatus();
                            await this.Navigation.PopModalAsync();
                            await DisplayAlert(" nWorksLeaveApp", res.ToString(), "OK");
                        }
                    }
                    catch (Exception ex)
                    {
                        await DisplayAlert(" nWorksLeaveApp", "Unable to connect server, Try again!", "OK");

                        Debug.WriteLine(ex.ToString());
                    }
                }
            }
            ((ListView)sender).SelectedItem = null;
        }
        public string CancelReqDate(CancelReqLeaves obj)
        {
            try
            {
                string       q0   = "delete from leaves where empno='" + obj.uid + "' and leavedate='" + obj.dateToBeCancel.ToString("yyyy-MM-dd") + "';";
                MySqlCommand cmd0 = new MySqlCommand(q0, conn);
                conn.Open();
                int             rowAffected = cmd0.ExecuteNonQuery();
                MySqlDataReader rdr0        = cmd0.ExecuteReader();
                conn.Close();

                if (rowAffected > 0)
                {
                    //get email and fullname address of user

                    string          userEmail = "", userFullname = "";
                    string          query = "select email,fname,lname from nworksuser where uid='" + obj.uid + "';";
                    MySqlCommand    cmd   = new MySqlCommand(query, conn);
                    MySqlDataReader rdr;
                    conn.Open();
                    rdr = cmd.ExecuteReader();
                    while (rdr.Read())
                    {
                        userEmail    = rdr.GetString("email");
                        userFullname = rdr.GetString("fname") + " " + rdr.GetString("lname");
                    }
                    conn.Close();



                    //Send Email to Requester and Higher Authority
                    NetworkCredential login;
                    SmtpClient        client;
                    MailMessage       msg;
                    login              = new NetworkCredential("*****@*****.**", "password");
                    client             = new SmtpClient("smtp.1and1.com");
                    client.Port        = Convert.ToInt32(25);
                    client.EnableSsl   = true;
                    client.Credentials = login;

                    string PrawalGupta = "*****@*****.**";
                    //string PrawalGupta = "*****@*****.**";
                    msg = new MailMessage {
                        From = new MailAddress("*****@*****.**", "nWorks Employee", Encoding.UTF8)
                    };
                    msg.To.Add(new MailAddress(userEmail));      //Email to
                    msg.Subject = "Leave/Holiday Cancellation."; //Subject
                    msg.CC.Add(new MailAddress(PrawalGupta));    //Email to CC
                                                                 //msg.CC.Add(new MailAddress(ParulGupta));//Email to CC
                    string strBody = string.Empty;
                    strBody += "<html><head></head><body><h2>Dear </h2><p><b>" + obj.uid + " " + userFullname + ",</b> " + " Your requested leave/holiday " + obj.dateToBeCancel.ToString("dd-MMM-yyyy") + " was accepted earlier but for any reason it is cancelled now. Please contact your manager for more details.</p>";
                    strBody += Environment.NewLine;

                    strBody += "<br/>Thanks.";

                    msg.Body = strBody;

                    msg.BodyEncoding = Encoding.UTF8;
                    msg.IsBodyHtml   = true;
                    msg.Priority     = MailPriority.Normal;
                    msg.DeliveryNotificationOptions = DeliveryNotificationOptions.OnFailure;
                    System.Diagnostics.Debug.WriteLine("Email is going to sent-----");
                    client.Send(msg);

                    return(string.Format("Cancellation Successfull! Email sent!"));
                }
                else
                {
                    return(string.Format("No such record found!"));
                }
            }
            catch (Exception Ex)
            {
                return(string.Format("Cancellation Successfull! Email Sending Failure!"));
            }
        }