예제 #1
0
      public HttpResponseMessage AddWorkerToProject([FromBody] WorkerToProject value, [FromUri] int userId)
      {
          if (ModelState.IsValid)
          {
              return((LogicWorkerToProject.AddWorkerToProject(value, userId)) ?
                     new HttpResponseMessage(HttpStatusCode.Created) :
                     new HttpResponseMessage(HttpStatusCode.BadRequest)
                {
                    Content = new ObjectContent <String>("Can not add to DB", new JsonMediaTypeFormatter())
                });
          }
          ;

          List <string> ErrorList = new List <string>();

          foreach (var item in ModelState.Values)
          {
              foreach (var err in item.Errors)
              {
                  ErrorList.Add(err.ErrorMessage);
              }
          }

          return(new HttpResponseMessage(HttpStatusCode.BadRequest)
            {
                Content = new ObjectContent <List <string> >(ErrorList, new JsonMediaTypeFormatter())
            });
      }
예제 #2
0
      public HttpResponseMessage UpdateWorkerToProject([FromBody] WorkerToProject value)
      {
          if (ModelState.IsValid)
          {
              return((LogicWorkerToProject.UpdateWorkerToProject(value)) ?
                     new HttpResponseMessage(HttpStatusCode.OK) :
                     new HttpResponseMessage(HttpStatusCode.BadRequest)
                {
                    Content = new ObjectContent <String>("Can not update in DB", new JsonMediaTypeFormatter())
                });
          }
          ;

          List <string> ErrorList = new List <string>();

          //if the code reached this part - the Project is not valid
          foreach (var item in ModelState.Values)
          {
              foreach (var err in item.Errors)
              {
                  ErrorList.Add(err.ErrorMessage);
              }
          }

          return(new HttpResponseMessage(HttpStatusCode.BadRequest)
            {
                Content = new ObjectContent <List <string> >(ErrorList, new JsonMediaTypeFormatter())
            });
      }
        public static bool AddWorkerToProject(WorkerToProject workerToProject)
        {
            try
            {
                var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost:56028/api/WorkerToProject/AddWorkerToProject/" + Global.UserId);
                httpWebRequest.ContentType           = "application/json";
                httpWebRequest.Method                = "POST";
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

                using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
                {
                    string json = new JavaScriptSerializer().Serialize(workerToProject);
                    streamWriter.Write(json);
                    streamWriter.Flush();
                    streamWriter.Close();
                }

                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                if (httpResponse.StatusCode == HttpStatusCode.Created)
                {
                    return(true);
                }
                else
                {
                    return(false);
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("error", ex.Message.ToString());
                return(false);
            }
        }
예제 #4
0
        private void comboBoxProjects_SelectedIndexChanged(object sender, EventArgs e)
        {
            selectedProject = ProjectsForUser.FirstOrDefault(p => p.ProjectId == (int)comboBoxProjects.SelectedValue);
            HttpWebRequest  request;
            HttpWebResponse response;
            string          content;

            //get the current worker to project for update
            try
            {
                request  = (HttpWebRequest)WebRequest.Create(@"http://localhost:56028/api/WorkerToProject/GetWorkerToProjectByPidAndUid/" + comboBoxUsers.SelectedValue + "/" + comboBoxProjects.SelectedValue);
                response = (HttpWebResponse)request.GetResponse();
                if (response.StatusCode == HttpStatusCode.OK)
                {
                    content         = new StreamReader(response.GetResponseStream()).ReadToEnd();
                    workerToProject = JsonConvert.DeserializeObject <WorkerToProject>(content);
                }
            }
            catch (Exception)
            {
                MessageBox.Show("eror");
            }
            if (workerToProject != null)
            {
                numericCountHours.Value = workerToProject.Hours;
            }
        }
        private void addWorkersToProject(int projectId)
        {
            WorkerToProject workerToProject = new WorkerToProject();

            foreach (var item in listBoxUsers.SelectedItems)
            {
                workerToProject.UserId    = (item as User).UserId;
                workerToProject.ProjectId = projectId;
                WokrerToProjectRequst.AddWorkerToProject(workerToProject);
            }
        }
        public static bool AddWorkerToProject(WorkerToProject workerToProject, int userId)
        {
            string queryChecking = $" select * from tasks.userkind_to_access where(access_id=2 and user_kind_id=(select user_kind_id from tasks.users where (user_id={userId})))";
            var    isAbleTo      = DBaccess.RunScalar(queryChecking);

            if (isAbleTo != null)

            {
                string query = $" INSERT INTO `tasks`.`worker_to_project` (`user_id`, `project_id`) VALUES ({workerToProject.UserId},{workerToProject.ProjectId})";
                return(DBaccess.RunNonQuery(query) == 1);
            }
            else
            {
                return(false);
            }
        }
        public static bool UpdateWorkerToProject(WorkerToProject workerToProject)
        {
            try
            {
                var httpWebRequest = (HttpWebRequest)WebRequest.Create("http://localhost:56028/api/WorkerToProject/UpdateWorkerToProject");
                httpWebRequest.ContentType           = "application/json";
                httpWebRequest.Method                = "PUT";
                ServicePointManager.SecurityProtocol = SecurityProtocolType.Tls12 | SecurityProtocolType.Tls11 | SecurityProtocolType.Tls;

                using (var streamWriter = new StreamWriter(httpWebRequest.GetRequestStream()))
                {
                    string json = new JavaScriptSerializer().Serialize(workerToProject);
                    streamWriter.Write(json);
                    streamWriter.Flush();
                    streamWriter.Close();
                }

                var httpResponse = (HttpWebResponse)httpWebRequest.GetResponse();
                using (var streamReader = new StreamReader(httpResponse.GetResponseStream()))
                {
                    {
                        var result = streamReader.ReadToEnd();
                        if (httpResponse.StatusCode == HttpStatusCode.OK)
                        {
                            MessageBox.Show("ok");
                            return(true);
                        }
                        else
                        {
                            MessageBox.Show("error");
                            return(false);
                        }
                    }
                }
            }
            catch (Exception ex)
            {
                MessageBox.Show("error");
                return(false);
            }
        }
        public static bool UpdateWorkerToProject(WorkerToProject workerToProject)
        {
            string query = $"UPDATE tasks.worker_to_project SET user_id='{workerToProject.UserId}',project_id='{workerToProject.ProjectId}',hours={workerToProject.Hours} WHERE worker_to_project_id={workerToProject.WorkerToProjectId}";

            return(DBaccess.RunNonQuery(query) == 1);
        }