Beispiel #1
0
        protected void ButtonSend_Click(object sender, EventArgs e)
        {
            if (workObject.Text == "" || typeOfWork.Text == "" || nameOfCost.Text == ""
                || measure.Text == "" || labour.Text == "" || materials.Text == "" || mechanisms.Text == "" ||
                contractor.Text == "" || customer.Text == "")
            {
                Alert.Show("Пожалуйста заполните все поля");
                return;
            }
            var db = new DBClassesDataContext();
            Plan p = new Plan {  Status = 3, Object = workObject.Text, WorkType = typeOfWork.Text,
                CostName = nameOfCost.Text, UnitName = measure.Text, Labor = labour.Text,
                Materials = materials.Text, Mechnisms = mechanisms.Text,
            };

            db.Plans.InsertOnSubmit(p);
            try
            {
                db.SubmitChanges();
                Alert.Show("Запись успешно добавлена");
            }
            catch
            {
                ClientScript.RegisterStartupScript(this.GetType(), "Ошибка", "нет записи", true);
            }
        }
Beispiel #2
0
 protected void Button2_Click(object sender, EventArgs e)
 {
     var db = new DBClassesDataContext();
     var query =
         from plan in db.Plans
         where plan.ID == planindex
         select plan;
     query.ToArray()[0].Status = 2;
     try
     {
         db.SubmitChanges();
     }
     catch (Exception exception)
     {
         Console.WriteLine(exception.StackTrace);
     }
     viewPlan();
     string email;
     try
     {
         email = contr[0].Email;
     }
     catch (Exception)
     {
         email = "";
     }
     ClientScript.RegisterStartupScript(this.GetType(), "mailto",
        "<script type = 'text/javascript'>parent.location='mailto:" + email +
        "'</script>");
 }
Beispiel #3
0
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         user = Membership.GetUser().UserName;
     }
     catch (Exception ex)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
         Response.Redirect("Account/Login.aspx");
     }
     bool hasAccess = false;
     foreach (var role in Roles.GetRolesForUser())
     {
         if (role.Equals(Global.contractorRole)) hasAccess = true;
     }
     if (!hasAccess)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
         Response.Redirect("Account/Login.aspx");
     }
     var db = new DBClassesDataContext();
     var query =
         from contractor in db.Contractors
         where contractor.Email.Equals(user)
         select contractor;
     if (query != null)
     {
         id = query.ToArray()[0].ID;
     }
 }
Beispiel #4
0
 protected void Button1_Click(object sender, EventArgs e)
 {
     var db = new DBClassesDataContext();
     var query =
         from plan in db.Plans
         where plan.ID == planindex
         select plan;
     query.ToArray()[0].Status = 1;
     try
     {
         db.SubmitChanges();
     }
     catch (Exception exception)
     {
         Console.WriteLine(exception.StackTrace);
     }
     viewPlan();
 }
 protected void approve_Click(object sender, EventArgs e)
 {
     var db = new DBClassesDataContext();
     //var query =
     //    from plan in db.Plans
     //    where plan.PlanID == int.Parse(DropDownList1.SelectedValue)
     //    select plan;
     //query.ToArray()[0].Status = 3;
     try
     {
         String updatePlan = "UPDATE [Plan] SET Status=3 WHERE PlanID=" + int.Parse(DropDownList1.SelectedValue);
         conn.Open();
         SqlCommand cmd = new SqlCommand(updatePlan, conn);
         cmd.ExecuteNonQuery();
         conn.Close();
         var query =
         from plan in db.Plans
         where plan.PlanID == int.Parse(DropDownList1.SelectedValue)
         select plan;
         try
         {
             Plan[] results = null;
             results = query.ToArray<Plan>();
             Table1.Caption = results[0].Name + ", Одобрен";
         }
         catch { }
         Alert.Show("Статус плана обновлён.");
         approve.Visible = false;
         reject.Visible = false;
     }
     catch { }
     //try
     //{
     //    db.SubmitChanges();
     //}
     //catch (Exception exception)
     //{
     //    Console.WriteLine(exception.StackTrace);
     //}
 }
Beispiel #6
0
        protected void regUser(object sender, EventArgs e)
        {
            TextBox userName = (TextBox)this.RegisterUser.CreateUserStep.ContentTemplateContainer.FindControl("UserName");
            TextBox email = (TextBox)this.RegisterUser.CreateUserStep.ContentTemplateContainer.FindControl("Email");
            TextBox password = (TextBox)this.RegisterUser.CreateUserStep.ContentTemplateContainer.FindControl("Password");
            TextBox password2 = (TextBox)this.RegisterUser.CreateUserStep.ContentTemplateContainer.FindControl("ConfirmPassword");

            if (userName.Text == "" || email.Text == "" || password.Text == ""
            || password2.Text == "")
            {
                Alert.Show("Пожалуйста, заполните все поля");
                return;
            }
            var db = new DBClassesDataContext();
            Contractor c = null;
            Customer cus = null;
            if (RadioButton1.Checked == true)//Заказчик
            {
                cus = new Customer { Name = userName.Text, Email = email.Text, Password = password.Text };
                db.Customers.InsertOnSubmit(cus);
            }
            else //Подрядчик
            {
                c = new Contractor { Name = userName.Text, Email = email.Text, Password = password.Text };
                db.Contractors.InsertOnSubmit(c);
            }
            try
            {
                db.SubmitChanges();
                Alert.Show("Запись успешно добавлена");
            }
            catch
            {
                ClientScript.RegisterStartupScript(this.GetType(), "Ошибка", "нет записи", true);
            }
            Response.Redirect("http://.../Default.aspx");
        }
Beispiel #7
0
 public IQueryable<Plan> GetPlans()
 {
     var db = new PlanViewer.Models.DBClassesDataContext();
     IQueryable<Plan> query = db.Plans;
     return query;
 }
Beispiel #8
0
 protected void gvbind()
 {
     conn.Open();
     SqlCommand cmd = new SqlCommand("Select ID, FactObject, WorkType, UnitName, CostName, Labor, Materials, Mechanisms from Fact where FactID=" + planID, conn);
     SqlDataAdapter da = new SqlDataAdapter(cmd);
     DataSet ds = new DataSet();
     da.Fill(ds);
     conn.Close();
     if (ds.Tables[0].Rows.Count > 0)
     {
         GridView1.DataSource = ds;
         GridView1.DataBind();
     }
     else
     {
         // (Table1.Rows.Count > 1)
         {
             var db = new DBClassesDataContext();
             var query =
                 from plan in db.Plans
                 where plan.PlanID == planID
                 select plan;
             Plan[] plans = query.ToArray();
             List<Fact> facts = new List<Fact>();
             for (int i = 0; i < plans.Length; i++)
             {
                 Fact f = new Fact { FactID = planID, CostName = plans[i].CostName, FactObject = plans[i].Object, Labor = plans[i].Labor, Materials = plans[i].Materials, Mechanisms = plans[i].Mechanisms, UnitName = plans[i].UnitName, WorkType = plans[i].WorkType, Status = 1 };
                 facts.Add(f);
             }
             db.Facts.InsertAllOnSubmit<Fact>(facts);
             try
             {
                 db.SubmitChanges();
             }
             catch (Exception ex)
             {
                 System.Diagnostics.Debug.Print(ex.StackTrace);
             }
             conn.Open();
             cmd = new SqlCommand("Select ID, FactObject, WorkType, UnitName, CostName, Labor, Materials, Mechanisms from Fact where FactID=" + planID, conn);
             da = new SqlDataAdapter(cmd);
             ds = new DataSet();
             da.Fill(ds);
             conn.Close();
             if (ds.Tables[0].Rows.Count > 0)
             {
                 GridView1.DataSource = ds;
                 GridView1.DataBind();
             }
             else
             {
                 ds.Tables[0].Rows.Add(ds.Tables[0].NewRow());
                 GridView1.DataSource = ds;
                 GridView1.DataBind();
                 int columncount = GridView1.Rows[0].Cells.Count;
                 GridView1.Rows[0].Cells.Clear();
                 GridView1.Rows[0].Cells.Add(new TableCell());
                 GridView1.Rows[0].Cells[0].ColumnSpan = columncount;
                 GridView1.Rows[0].Cells[0].Text = "Ошибка";
             }
         }
     }
 }
 protected void sendRequest_Click(object sender, EventArgs e)
 {
     {
         try
         {
             SmtpClient Smtp = new SmtpClient("smtp.gmail.com", 587); //формируем письмо
             Smtp.UseDefaultCredentials = false;
             Smtp.Credentials = new NetworkCredential("*****@*****.**", "techup2013");
             Smtp.DeliveryMethod = SmtpDeliveryMethod.Network;
             Smtp.EnableSsl = true;
             MailMessage Message = new MailMessage();
             Message.From = new MailAddress("*****@*****.**");
             var db = new DBClassesDataContext();
             var query =
                 from plan in db.Plans
                 where plan.PlanID == planID
                 select plan;
             Plan pl = query.First();
             var query2 =
                 from contr in db.Contractors
                 where contr.ID == pl.Contractor
                 select contr;
             Contractor ct = query2.First();
             var query3 =
                 from cust in db.Customers
                 where cust.ID == id
                 select cust;
             Customer cs = query3.First();
             Message.To.Add(new MailAddress(ct.Email));
             Message.Subject = "Запрос по плану: " + pl.Name + " "+ Subject.Text + " ";
             Message.Body = "Заказчик: "+cs.Name +"\n" + MessageText.Text;
             Smtp.Send(Message); //отправляем письмо
             Alert.Show("Письмо успешно отправлено!");
         }
         catch (Exception ex)
         {
             System.Diagnostics.Debug.Print(ex.StackTrace);
         }
     }
 }
        private void buildPlanTable()
        {
            for (int i = 1; i < Table1.Rows.Count; i++)
            {
                Table1.Rows.RemoveAt(i);
            }
            var db = new DBClassesDataContext();
            var query =
                from plan in db.Plans
                where plan.PlanID == int.Parse(DropDownList1.SelectedValue)
                select plan;
            //query.Cast<Plan>();
            Plan[] results = null;
            try
            {
                results = query.ToArray<Plan>();
                Table1.Caption = results[0].Name;
                if (results[0].Status < 3 || results[0].Status==4)
                {
                    Table1.Caption += ", " + "Не одобрен\n\n";
                    approve.Visible = true;
                    reject.Visible = true;

                }
                else
                {
                    Table1.Caption += ", " + "Одобрен\n\n";
                    approve.Visible = false;
                    reject.Visible = false;
                }
                bool gotfacts = false;
                foreach (Plan item in results)
                {
                    var fact_query =
                        from fact in db.Facts
                        where fact.ExtPlanID == item.ID
                        select fact;
                    Fact facts;
                    try
                    {
                        facts = fact_query.First<Fact>();
                        gotfacts = true;
                    }
                    catch (Exception ex)
                    {
                        facts = new Fact { Labor = "er", Materials = "er", Mechanisms = "er" };
                    }

                    TableRow tr = new TableRow();
                    List<TableCell> cells = new List<TableCell>();
                    TableCell c = new TableCell();
                    c.Text = item.ID + "";
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    c.Visible = false;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.Object;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.WorkType;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.CostName;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.UnitName;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.Labor;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = facts.Labor;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    c.BackColor = System.Drawing.Color.PowderBlue;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.Materials;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = facts.Materials;
                    c.BackColor = System.Drawing.Color.PowderBlue;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.Mechanisms;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = facts.Mechanisms;
                    c.BackColor = System.Drawing.Color.PowderBlue;
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    cells.Add(c);
                    c = new TableCell();
                    c.Text = item.Status + "";
                    c.BorderStyle = BorderStyle.Solid;
                    c.BorderWidth = 1;
                    c.BorderColor = System.Drawing.Color.Black;
                    c.Visible = false;
                    //c.Enabled = true;
                    cells.Add(c);
                    foreach (TableCell cell in cells)
                    {
                        tr.Cells.Add(cell);
                    }
                    Table1.Rows.Add(tr);
                    planID = int.Parse(DropDownList1.SelectedValue);
                }
                if (!gotfacts)
                {
                    foreach (TableRow tr in Table1.Rows)
                    {
                        tr.Cells[6].Visible = false;
                        tr.Cells[8].Visible = false;
                        tr.Cells[10].Visible = false;
                    }
                }
                else
                {
                    foreach (TableRow tr in Table1.Rows)
                    {
                        tr.Cells[6].Visible = true;
                        tr.Cells[8].Visible = true;
                        tr.Cells[10].Visible = true;
                    }
                }
            }
            catch (FormatException fe)
            {
                Table1.Visible = false;
                return;
            }
        }
Beispiel #11
0
        protected void registerCustomer(object sender, EventArgs e)
        {
            string name = CustomerName.Text;
             string email = CustomerEmail.Text;
             string pas = CustomerPassword.Text;
             string pas2 = CustomerPassword2.Text;
             if (!pas.Equals(pas2))
             {
                 Alert.Show("Пароли не совпадают!");
                 return;
             }
              if (name == "" || email == "" || pas == ""
             || pas2 == "")
            {
                Alert.Show("Пожалуйста, заполните все поля");
                return;
            }
              if (pas.Length < 6)
              {
                  Alert.Show("Пароль должен состоять не менее чем из 6 символов");
                  return;
              }
            var db = new DBClassesDataContext();

               Customer c = new Customer { Name = name, Email = email, Password = pas, Info = "", Address=""};
                db.Customers.InsertOnSubmit(c);
            try
            {
                db.SubmitChanges();
                //отправляем письмо
                string emailString = email;
                string subject = "Регистрация в системе";
                string text = "Здравствуйте,  " + name + "!" + ".\n" +
                "Вы успешно зарегистрированы в системе взаимодействия подрядчиков и заказчиков." + ".\n" +
                "Ваша роль в системе: заказчик " + "\nС уважением, администрация сервиса.";
                sendEmail(emailString, subject, text);
            }
            catch (Exception ex)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "Ошибка", "нет записи", true);
                System.Diagnostics.Debug.Print(ex.StackTrace);
                return;
            }
            try
            {
                Membership.CreateUser(email, pas);
                FormsAuthentication.SetAuthCookie(email, true);
                Roles.AddUserToRole(email, Global.customerRole);
                Response.Redirect("../ViewPlan.aspx");
                //Alert.Show("Запись успешно добавлена");
            }
            catch (Exception ex)
            {
                Alert.Show("Пользователь с таким email уже зарегистрирован!");
            }
        }
Beispiel #12
0
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         user = Membership.GetUser().UserName;
     }
     catch (Exception ex)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
         Response.Redirect("Account/Login.aspx");
     }
     bool hasAccess = false;
     foreach (var role in Roles.GetRolesForUser())
     {
         if (role.Equals(Global.contractorRole)) hasAccess = true;
     }
     if (!hasAccess)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
         Response.Redirect("Account/Login.aspx");
     }
     var db = new DBClassesDataContext();
     var query =
         from contractor in db.Contractors
         where contractor.Email.Equals(user)
         select contractor;
     if (query != null)
     {
         id = query.ToArray()[0].ID;
     }
     providerstring = "SELECT Customer.Name, [Plan].PlanID FROM Contractor INNER JOIN [Plan] ON Contractor.ID = [Plan].Contractor INNER JOIN Customer ON [Plan].Customer = Customer.ID where Contractor.ID=10 GROUP BY [Plan].PlanID , Customer.Name";
     SqlDataSource1.SelectCommand = string.Format(providerstring);
     DataBind();
     //Session["UserID"] = id;
     //DropDownList1.DataBind();
     try
     {
         if (int.Parse(DropDownList1.SelectedValue) > 0)
             buildPlanTable();
     }
     catch
     {
     }
     if (!Page.IsPostBack)
     {
         gvbind();
     }
 }
Beispiel #13
0
 protected void contRPass_Click(object sender, EventArgs e)
 {
     string email = femailco.Text;
      email = email.ToLower();
      if (email == "")
      {
          Alert.Show("Введите email!");
      }
      string connectionStr = WebConfigurationManager.ConnectionStrings["TeamProjectDBConnectionString1"].ConnectionString;
      SqlConnection con = new SqlConnection(connectionStr);
      con.Open();
      string sqlUserName = "******" + email+"'";
      SqlCommand cmd = new SqlCommand(sqlUserName, con);
      string CurrentName;
      CurrentName = (string)cmd.ExecuteScalar();
      if (CurrentName != null)
      {
          var db = new DBClassesDataContext();
          var query =
              from contractor in db.Contractors
              where contractor.Email.Equals(email)
              select contractor;
          Contractor cust = (Contractor)query.First();
          string mes = "Здравствуйте, " + CurrentName + "\n"
              + "Ваш пароль в системе: " + cust.Password + "\nС уважением, администрация сервиса.";
          string subj = "Восстановление пароля";
          try
          {
              sendEmail(email, subj, mes);
          }
          catch (Exception ex)
          {
              System.Diagnostics.Debug.Print(ex.StackTrace);
          }
          Alert.Show("Письмо с Вашим паролем отправлено. Проверьте почту.");
      }
      else
      {
          Alert.Show("Пользователь с таким email не найден.");
      }
 }
Beispiel #14
0
        private void viewPlan()
        {
            try
            {
                string[] selected = DropDownList1.SelectedValue.Split(' ');
                planindex = int.Parse(selected[1].Substring(1).Trim());
                ClientScript.RegisterStartupScript(this.GetType(), "Ошибка", "  " + planindex, true);
            }
            catch (IndexOutOfRangeException)
            {
                planindex = 1;
            }
            catch (Exception)
            {
                ClientScript.RegisterStartupScript(this.GetType(), "Ошибка", "Ошибка поиска", true);
                planindex = 1;
            }
            //ClientScript.RegisterStartupScript(this.GetType(), "myalert", "alert(' index = " + planindex + "');", true);
            try
            {
                var db = new DBClassesDataContext();
                IQueryable<Plan> plans = db.Plans;
                IQueryable<Contractor> contrs = db.Contractors;
                IQueryable<Customer> custs = db.Customers;
                plans = plans.Where(p => p.ID == planindex);
                res = plans.ToArray<Plan>();
                contrs = contrs.Where(p => p.ID == res[0].Contractor);
                contr= contrs.ToArray<Contractor>();
                custs = custs.Where(p => p.ID == res[0].Customer);
                cust = custs.ToArray<Customer>();
                Table1.Rows[1].Cells[0].Text = res[0].ID.ToString();
                try
                {
                    Table1.Rows[1].Cells[1].Text = cust[0].Name.ToString();
                    Table1.Rows[1].Cells[2].Text = contr[0].Name.ToString();

                }
                catch (Exception)
                { }
                Table1.Rows[1].Cells[3].Text = res[0].Object.ToString();
                Table1.Rows[1].Cells[4].Text = res[0].WorkType.ToString();
                Table1.Rows[1].Cells[5].Text = res[0].CostName.ToString();
                Table1.Rows[1].Cells[6].Text = res[0].UnitName.ToString();
                Table1.Rows[1].Cells[7].Text = res[0].Labor.ToString();
                Table1.Rows[1].Cells[8].Text = res[0].Materials.ToString();
                Table1.Rows[1].Cells[9].Text = res[0].Mechnisms.ToString();
                switch (res[0].Status)
                {
                    case 1:
                        Table1.Rows[1].Cells[10].Text = "Подтвержден";
                        Table1.Rows[1].Cells[10].BackColor = System.Drawing.Color.Green;
                        break;
                    case 2:
                        Table1.Rows[1].Cells[10].Text = "Отклонен";
                        Table1.Rows[1].Cells[10].BackColor = System.Drawing.Color.Red;
                        break;
                    case 3:
                        Table1.Rows[1].Cells[10].Text = "Ожидает подтверждения";
                        Table1.Rows[1].Cells[10].BackColor = System.Drawing.Color.Yellow;
                        break;
                    default:
                        break;
                }
            }
            catch (Exception)
            {
                //ClientScript.RegisterStartupScript(this.GetType(), "Ошибка", "нет записи", true);
                Alert.Show("Ошибка загрузки данных");
            }
        }
        private void buildPlanTable()
        {
            for (int i = 1; i < Table.Rows.Count; i++)
            {
                Table.Rows.RemoveAt(i);
            }

            var db = new DBClassesDataContext();
            var query =
                from plan in db.Plans
                where plan.PlanID == int.Parse(DropDownList1.SelectedValue)
                select plan;
            Plan[] results = null;
            try
            {
                results = query.ToArray<Plan>();
            }
            catch (Exception ex)
            {
                Table.Visible = false;
                sendFact.Visible = false;
                DropDownList1.Visible = false;
                NoPlan.Visible = true;
                return;
            }
            if (results[0].Status == 5)
            {

            }
            Table.Visible = true;
            sendFact.Visible = true;
            DropDownList1.Visible = true;
            NoPlan.Visible = false;
            foreach (Plan item in results)
            {
                if (item.Name == null)
                {
                    Table.Caption = "План";
                }
                else
                {
                    Table.Caption = item.Name;
                }
                TableRow tr = new TableRow();
                List<TableCell> cells = new List<TableCell>();
                TableCell c = new TableCell();
                c.Text = item.ID + "";
                c.Visible = false;
                cells.Add(c);

                c = new TableCell();
                c.Text = item.Object;
                cells.Add(c);

                c = new TableCell();
                c.Text = item.WorkType;
                cells.Add(c);

                c = new TableCell();
                c.Text = item.CostName;
                cells.Add(c);

                c = new TableCell();
                c.Text = item.UnitName;
                cells.Add(c);

                c = new TableCell();
                c.Text = item.Labor;
                cells.Add(c);

                c = new TableCell();
                c.BackColor = System.Drawing.Color.LightBlue;
                TextBox l = new TextBox();
                l.Width = 70;
                //l.BackColor = System.Drawing.Color.LightBlue;
                if (firstTableBuilding)
                    l.Text = item.Labor;
                //l.AutoPostBack = true;
                c.Controls.Add(l);
                cells.Add(c);

                c = new TableCell();
                c.Text = item.Materials;
                cells.Add(c);

                c = new TableCell();
                c.BackColor = System.Drawing.Color.LightBlue;
                l = new TextBox();
                l.Width = 70;
                //l.BackColor = System.Drawing.Color.LightBlue;
                if (firstTableBuilding)
                    l.Text = item.Materials;
                //l.AutoPostBack = true;
                c.Controls.Add(l);
                cells.Add(c);

                c = new TableCell();
                c.Text = item.Mechanisms;
                cells.Add(c);

                c = new TableCell();
                c.BackColor = System.Drawing.Color.LightBlue;
                l = new TextBox();
                l.Width = 70;
                //l.BackColor = System.Drawing.Color.LightBlue;
                if (firstTableBuilding)
                    l.Text = item.Mechanisms;
                //l.AutoPostBack = true;
                c.Controls.Add(l);
                cells.Add(c);

                c = new TableCell();
                c.Text = item.Status+"";
                c.Visible = false;
                cells.Add(c);

                foreach (TableCell cell in cells)
                {
                    cell.BorderColor = System.Drawing.Color.Black;
                    cell.BorderWidth = 1;
                    cell.BorderStyle = BorderStyle.Solid;
                    tr.Cells.Add(cell);
                }
                Table.Rows.Add(tr);
                planID = int.Parse(DropDownList1.SelectedValue);
            }
            firstTableBuilding = false;
        }
 protected void sendFact_Click(object sender, EventArgs e)
 {
     int tmpID;
     List<Fact> facts = new List<Fact>();
     foreach (TableRow row in Table.Rows)
     {
         if (row.Cells[0].Text == "№  ") continue;
         try
         {
             tmpID = int.Parse(row.Cells[0].Text);
             TextBox lab = (TextBox)row.Cells[6].Controls[0];
             TextBox mat = (TextBox)row.Cells[8].Controls[0];
             TextBox mech = (TextBox)row.Cells[10].Controls[0];
             Fact tmp = new Fact
             {
                 FactObject = row.Cells[1].Text,
                 WorkType = row.Cells[2].Text,
                 UnitName = row.Cells[3].Text,
                 CostName = row.Cells[4].Text,
                 Labor = lab.Text,
                 Materials = mat.Text,
                 Mechanisms = mech.Text,
                 ExtPlanID = tmpID,
                 FactID = planID
             };
             facts.Add(tmp);
         }
         catch (Exception ex)
         {
             System.Diagnostics.Debug.Print(ex.StackTrace);
         }
     }
     try
     {
         var db = new DBClassesDataContext();
         var query =
             from fact in db.Facts
             where fact.FactID == planID
             select fact;
         Fact[] factsToRemove = query.ToArray();
         db.Facts.DeleteAllOnSubmit(factsToRemove);
         db.SubmitChanges();
         db.Facts.InsertAllOnSubmit(facts);
         db.SubmitChanges();
         String updatePlan = "UPDATE [Plan] SET Status=5 WHERE PlanID=" + planID;
         conn.Open();
         SqlCommand cmd = new SqlCommand(updatePlan, conn);
         cmd.ExecuteNonQuery();
         conn.Close();
         Alert.Show("Фактические значения успешно отправлены!");
         Response.Redirect("NewPlan.aspx");
     }
     catch (Exception ex)
     {
         System.Diagnostics.Debug.Print(ex.StackTrace);
     }
 }
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         user = Membership.GetUser().UserName;
     }
     catch (Exception ex)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
         Response.Redirect("Account/Login.aspx");
     }
     bool hasAccess = false;
     foreach (var role in Roles.GetRolesForUser())
     {
         if (role.Equals(Global.contractorRole)) hasAccess = true;
     }
     if (!hasAccess)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
         Response.Redirect("Account/Login.aspx");
     }
     var db = new DBClassesDataContext();
     var query =
         from contractor in db.Contractors
         where contractor.Email.Equals(user)
         select contractor;
     if (query != null)
     {
         id = query.ToArray()[0].ID;
     }
     if (!Page.IsPostBack)
     {
         providerstring = "SELECT CONCAT (N'Заказчик: ', Customer.Name , N', План: ' , [Plan].Name) AS res, [Plan].PlanID FROM Contractor INNER JOIN [Plan] ON Contractor.ID = [Plan].Contractor INNER JOIN Customer ON [Plan].Customer = Customer.ID where Contractor.ID=" + id + " AND (Status=3 OR Status=5) GROUP BY [Plan].PlanID, [Plan].Name, Customer.Name";
         SqlDataSource1.SelectCommand = string.Format(providerstring);
         DataBind();
     }
     if (!Page.IsPostBack)
     {
         firstTableBuilding = true;
     }
     else
     {
         buildPlanTable();
     }
 }
        protected void Page_Load(object sender, EventArgs e)
        {
            try
            {
                user = Membership.GetUser().UserName;
            }
            catch (Exception ex)
            {
                Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
                Response.Redirect("Account/Login.aspx");
            }
            bool hasAccess = false;
            foreach (var role in Roles.GetRolesForUser())
            {
                if (role.Equals(Global.contractorRole)) hasAccess = true;
            }
            if (!hasAccess)
            {
                Alert.Show("Нет прав доступа, пожалуйста зайдите как Подрядчик");
                Response.Redirect("Account/Login.aspx");
            }
            var db = new DBClassesDataContext();
            var query =
                from contractor in db.Contractors
                where contractor.Email.Equals(user)
                select contractor;
            if (query != null)
            {
                id = query.ToArray()[0].ID;
            }
            if (!Page.IsPostBack)
            {
                try
                {
                    //очищать бд Plan от записей с PlanID==-1 и всплывающие окна ---> TODO

                    conn.Open();
                    SqlCommand cmd = new SqlCommand("DELETE [Plan] WHERE PlanId=" + -1, conn);
                    cmd.ExecuteNonQuery();
                    conn.Close();

                    gvbind();
                    //GridView1.EditIndex = 0;
                }
                catch (Exception ex)
                {
                    System.Diagnostics.Debug.Print(ex.StackTrace);
                }

            }
        }
 protected void Page_Load(object sender, EventArgs e)
 {
     try
     {
         user = Membership.GetUser().UserName;
     }
     catch (Exception ex)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Заказчик");
         Response.Redirect("Account/Login.aspx");
     }
     bool hasAccess = false;
     foreach (var role in Roles.GetRolesForUser())
     {
         if (role.Equals(Global.customerRole)) hasAccess = true;
     }
     if (!hasAccess)
     {
         Alert.Show("Нет прав доступа, пожалуйста зайдите как Заказчик");
         Response.Redirect("Account/Login.aspx");
     }
     var db = new DBClassesDataContext();
     var query =
         from customer in db.Customers
         where customer.Email.Equals(user)
         select customer;
     if (query != null)
     {
         id = query.ToArray()[0].ID;
     }
     if (!Page.IsPostBack)
     {
         providerstring = "SELECT CONCAT (N'Подрядчик: ', Contractor.Name , N', План: ' , [Plan].Name) AS res, [Plan].PlanID FROM [Plan] INNER JOIN Contractor ON Contractor.ID = [Plan].Contractor INNER JOIN Customer ON [Plan].Customer = " + id + " GROUP BY [Plan].PlanID, [Plan].Name, Contractor.Name";
         //providerstring = "SELECT Contractor.Name, [Plan].Name FROM [Plan] INNER JOIN [Customer] ON [Customer].[ID] = [Plan].[Customer] INNER JOIN [Contractor] ON [Plan].Customer = Customer.ID where Contractor.ID=10 GROUP BY [Plan].PlanID , Customer.Name";
         SqlDataSource1.SelectCommand = string.Format(providerstring);
         DataBind();
         var db1 = new DBClassesDataContext();
         var query1 = from plan in db.Plans
                      where plan.Customer == id
                      select plan;
         DropDownList1.Visible = true;
         download.Visible = true;
         Panel5.Visible = true;
         PlanLabel.Text = "Выберите план:";
         try
         {
             Plan cs = query1.First();
         }
         catch
         {
             DropDownList1.Visible = false;
             download.Visible = false;
             Panel5.Visible = false;
             PlanLabel.Text = "Нет данных";
         }
     }
     //Session["UserID"] = id;
     //DropDownList1.DataBind();
     try
     {
         //if (int.Parse(DropDownList1.SelectedValue) > 0)
             //buildPlanTable();
     }
     catch
     {
     }
     if (Page.IsPostBack)
     {
         buildPlanTable();
     }
 }
        protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
        {
            GridView1.Caption = PlanName.Text;
            if (e.CommandName.Equals("Insert"))
            {
                if (first == 0)
                {
                    conn.Open();
                    SqlCommand cmd = new SqlCommand("Select ID, Object, WorkType, UnitName, CostName, Labor, Materials, Mechanisms from [Plan] where PlanID=" + planID, conn);
                    SqlDataAdapter da = new SqlDataAdapter(cmd);
                    DataSet ds = new DataSet();
                    da.Fill(ds);
                    conn.Close();

                    ds.Tables[0].Rows.Clear();
                    GridView1.DataSource = ds;
                    GridView1.DataBind();

                }
                GridViewRow row = GridView1.FooterRow;
                Label lblID = (Label)row.FindControl("ID");
                TextBox factObject = (TextBox)row.FindControl("FactObject");
                TextBox worktype = (TextBox)row.FindControl("WorkType");
                TextBox costname = (TextBox)row.FindControl("CostName");
                TextBox unitname = (TextBox)row.FindControl("UnitName");
                TextBox labor = (TextBox)row.FindControl("Labor");
                TextBox materials = (TextBox)row.FindControl("Materials");
                TextBox mechanisms = (TextBox)row.FindControl("Mechanisms");
                GridView1.EditIndex = -1;
                var db = new DBClassesDataContext();

               try
                {

                    if (planID==-1)
                    {
                        Plan plan = new Plan { Contractor = id,Object = factObject.Text, CostName = costname.Text, WorkType = worktype.Text, UnitName = unitname.Text, Labor = labor.Text, Materials = materials.Text, Mechanisms = mechanisms.Text, Customer = int.Parse(DropDownList1.SelectedValue), Status = 0, PlanID = -1, Name=PlanName.Text };
                        db.Plans.InsertOnSubmit(plan);
                        db.SubmitChanges();
                        var query =
                        from pl in db.Plans
                        where pl.PlanID==-1
                        select pl;
                        if (query != null)
                        {
                            planID = query.ToArray()[0].ID;
                        }
                        /*
                        conn.Open();
                        SqlCommand cmd = new SqlCommand("update [Plan] set Contractor="+ id +", Object="+ factObject.Text +", CostName="+ costname.Text +", WorkType="+ worktype.Text + ", UnitName="+ unitname.Text+", Labor=" + labor.Text + ", Materials=" + materials.Text + ", Mechanisms="+mechanisms.Text +", PlanID=" + planID + ", Status=" + 1 + " where PlanID=" + -1, conn);
                        cmd.ExecuteNonQuery();
                        conn.Close();
                        */
                        planID = planID + 1;
                        Plan plans = new Plan { Contractor = id, Object = factObject.Text, CostName = costname.Text, WorkType = worktype.Text, UnitName = unitname.Text, Labor = labor.Text, Materials = materials.Text, Mechanisms = mechanisms.Text, Customer = int.Parse(DropDownList1.SelectedValue), Status = 0, PlanID = planID};
                        db.Plans.InsertOnSubmit(plans);
                        db.SubmitChanges();
                        conn.Open();
                        SqlCommand cmd = new SqlCommand("DELETE [Plan] WHERE PlanID=" + -1, conn);
                        cmd.ExecuteNonQuery();
                        conn.Close();
                    }
                    else
                    {
                        Plan plans = new Plan { Contractor = id, Object = factObject.Text, CostName = costname.Text, WorkType = worktype.Text, UnitName = unitname.Text, Labor = labor.Text, Materials = materials.Text, Mechanisms = mechanisms.Text, Customer = int.Parse(DropDownList1.SelectedValue), Status = 0, PlanID = planID};
                        db.Plans.InsertOnSubmit(plans);
                        db.SubmitChanges();
                    }
                    gvbind();
                }
               catch (Exception ex)
               {
                    System.Diagnostics.Debug.Print(ex.StackTrace);
               }
            }
        }
Beispiel #21
0
        private void buildPlanTable()
        {
            for (int i = 1; i < Table1.Rows.Count; i++)
            {
                Table1.Rows.RemoveAt(i);
            }
            var db = new DBClassesDataContext();
            var query =
                from plan in db.Plans
                where plan.PlanID == int.Parse(DropDownList1.SelectedValue)
                select plan;
            Plan[] results = query.ToArray<Plan>();
            foreach (Plan item in results)
            {

                TableRow tr = new TableRow();
                List<TableCell> cells = new List<TableCell>();
                TableCell c = new TableCell();
                c.Text = item.ID + "";
                cells.Add(c);
                c = new TableCell();
                c.Text = item.Object;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.WorkType;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.CostName;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.UnitName;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.Labor;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.Materials;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.Mechanisms;
                cells.Add(c);
                c = new TableCell();
                c.Text = item.Status+"";
                //c.Enabled = true;
                cells.Add(c);
                foreach (TableCell cell in cells)
                {
                    tr.Cells.Add(cell);
                }
                Table1.Rows.Add(tr);
                planID = int.Parse(DropDownList1.SelectedValue);
            }
        }