Beispiel #1
0
        public IHttpActionResult readRequester(string Jabatan)
        {
            try
            {
                using (var dc = new PurchaserRequisitionDataContext())
                {
                    var javaScriptSerializer = new JavaScriptSerializer();
                    var user = dc.Companies.Where(o => o.Jabatan == Jabatan).SingleOrDefault();

                    if (Jabatan != null)
                    {
                        var result = javaScriptSerializer.Serialize(new { User = user });
                        return(Ok(result));
                    }
                    else
                    {
                        return(Ok(""));
                    }
                }
            }
            catch (Exception ex)
            {
                return(BadRequest(ex.Message));
            }
        }
        public async Task <IHttpActionResult> SubmitTaskEdit(AddRequest param)
        {
            try
            {
                using (var context = new PurchaserRequisitionDataContext())
                {
                    var usr   = context.Companies.Where(o => o.Email == param.Email).FirstOrDefault();
                    var token = usr.Token;

                    var bodyCreate = "{" +
                                     "\"data\": {" +
                                     "\"form_data\": {" +
                                     "\"pvAction\" : \"" + param.Action + "\"," +
                                     " \"pvEditor\": \"[email protected]\"," +
                                     "\"pvReq\" : \"" + param.Email + "\"," +
                                     "}," +
                                     "\"comment\": \"Edited\"" +
                                     "}" +
                                     "}";

                    JObject jsonCreate = JObject.Parse(bodyCreate);
                    var     action     = string.Empty;

                    using (var client = new HttpClient())
                    {
                        client.BaseAddress = new Uri("https://mosaic.dev.nextflow.tech/");
                        client.DefaultRequestHeaders.Accept.Clear();
                        client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                        var response = await client.PostAsJsonAsync("nextflow/api/tasks/" + param.TaskId + "/submit", jsonCreate);

                        var result = await response.Content.ReadAsAsync <dynamic>();
                    }

                    if (param.Action == "Edit")
                    {
                        var requester = context.RequesterSummaries.Where(o => o.ProcessId == param.ProcessId).FirstOrDefault();
                        requester.ApproveStatus = param.Action;
                        requester.Comment       = param.Comment;
                        context.SubmitChanges();

                        CommentHistory commentHistory = new CommentHistory();

                        commentHistory.ProcessId = param.ProcessId;
                        commentHistory.Name      = usr.Name;
                        commentHistory.Action    = param.Action;
                        commentHistory.Date      = DateTime.Now;
                        commentHistory.Comment   = "Tolong diedit";

                        context.CommentHistories.InsertOnSubmit(commentHistory);
                        context.SubmitChanges();
                    }
                    return(Ok(new { success = true, message = "Request " + action }));
                }
            }
            catch (Exception ex)
            {
                return(Ok(new { success = false, message = ex.Message }));
            }
        }
Beispiel #3
0
 public IHttpActionResult updateData([FromBody] RequesterSummary req)
 {
     try
     {
         if (req != null)
         {
             using (var dc = new PurchaserRequisitionDataContext())
             {
                 var data = dc.RequesterSummaries.FirstOrDefault(o => o.Id == req.Id);
                 {
                     data.Manager = req.Manager;
                 };
                 dc.SubmitChanges();
                 return(Ok(data));
             }
         }
         else
         {
             return(Unauthorized());
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Beispiel #4
0
 public IHttpActionResult deleteData(int Id)
 {
     try
     {
         using (var dc = new PurchaserRequisitionDataContext())
         {
             var data = dc.RequesterSummaries.FirstOrDefault(o => o.Id == Id);
             dc.RequesterSummaries.DeleteOnSubmit(data);
             dc.SubmitChanges();
             return(Ok(data));
         }
     }
     catch (Exception ex)
     {
         return(BadRequest(ex.Message));
     }
 }
Beispiel #5
0
 public IHttpActionResult readData([FromBody] Company req)
 {
     try
     {
         if (req != null)
         {
             using (var dc = new PurchaserRequisitionDataContext())
             {
                 var user = dc.Companies.Where(o => o.Username == req.Username && o.Password == req.Password).SingleOrDefault();
                 return(Ok(user));
             }
         }
         else
         {
             return(Unauthorized());
         }
     }
     catch (Exception)
     {
         return(BadRequest("Error"));
     }
 }
 public ApproverController()
 {
     context = new PurchaserRequisitionDataContext();
 }
        public async Task <IHttpActionResult> GetTaskList(string Email)
        {
            using (var context = new PurchaserRequisitionDataContext())
            {
                try
                {
                    var usr   = context.Companies.Where(o => o.Email == Email).FirstOrDefault();
                    var token = usr.Token;

                    List <TaskListGrid> grids = new List <TaskListGrid>();
                    using (var client = new HttpClient())
                    {
                        dynamic response;
                        dynamic parseResult;
                        string  uri = "https://mosaic.dev.nextflow.tech/nextflow/api/tasks?folder=app:task:all&page[number]=1&page[size]=10";
                        client.DefaultRequestHeaders.Accept.Clear();
                        client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));

                        response = await client.GetStringAsync(uri);

                        parseResult = JObject.Parse(response);

                        //result = JsonConvert.DeserializeObject<List<dynamic>>(parseResult[0]);

                        foreach (var item in parseResult.data)
                        {
                            TaskListGrid task  = new TaskListGrid();
                            string       email = item.created_by.email;
                            task.ProcessId = item.process_id;
                            task.TaskId    = item.id;
                            var dd = context.RequesterSummaries.Where(o => o.ProcessId == task.ProcessId).FirstOrDefault();
                            task.Payroll           = dd.Payroll;
                            task.Id                = dd.Id;
                            task.RequesterPosition = dd.RequesterPosition;
                            task.AsalCompany       = dd.AsalCompany;
                            task.Location          = dd.Location;
                            task.Plant             = dd.Plant;
                            task.BudgetSource      = dd.BudgetSource;
                            task.Currency          = dd.Currency;
                            task.Date              = dd.Date;
                            task.SinglePanel       = dd.SinglePanel;
                            task.ItemText          = dd.ItemText;
                            task.Description       = dd.Description;
                            task.EstPrice          = dd.EstPrice;
                            task.Qty               = dd.Qty;
                            task.QtySatuan         = dd.QtySatuan;
                            task.MaterialGroup     = dd.MaterialGroup;
                            task.Subtotal          = dd.Subtotal;
                            task.ApproveStatus     = dd.ApproveStatus;
                            task.Manager           = dd.Manager;
                            task.Owner             = dd.Owner;
                            task.Name              = dd.Name;
                            task.Comment           = dd.Comment;
                            task.RecordId          = dd.RecordId;
                            task.Payroll           = dd.Payroll;
                            task.RequesterPosition = dd.RequesterPosition;
                            grids.Add(task);
                        }
                    }
                    return(Ok(new { success = true, data = grids }));
                }

                catch (Exception ex)
                {
                    return(Ok(new { success = false, data = ex.Message }));
                }
            }
        }
Beispiel #8
0
 public ManagerController()
 {
     context = new PurchaserRequisitionDataContext();
 }
Beispiel #9
0
 public LoginController()
 {
     context = new PurchaserRequisitionDataContext();
 }
Beispiel #10
0
        public async Task <IHttpActionResult> updateData([FromBody] AddRequest param)
        {
            try
            {
                using (var context = new PurchaserRequisitionDataContext())
                {
                    var usr   = context.Companies.Where(o => o.Email == param.Email).FirstOrDefault();
                    var token = usr.Token;

                    var bodyCreate = "{" +
                                     "\"data\": {" +
                                     "\"form_data\": {" +
                                     "\"pvAction\" : \"" + param.Action + "\"," +
                                     " \"pvApprover\": \"[email protected]\"," +
                                     " \"pvReq\": \"" + param.Email + "\"" +
                                     "}," +
                                     "\"comment\": \"Tes\"" +
                                     "}" +
                                     "}";

                    JObject jsonCreate = JObject.Parse(bodyCreate);
                    var     action     = string.Empty;

                    using (var client = new HttpClient())
                    {
                        client.BaseAddress = new Uri("https://mosaic.dev.nextflow.tech/");
                        client.DefaultRequestHeaders.Accept.Clear();
                        client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", token);
                        client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                        var response = await client.PostAsJsonAsync("nextflow/api/tasks/" + param.TaskId + "/submit", jsonCreate);

                        var result = await response.Content.ReadAsAsync <dynamic>();
                    }

                    if (param.Action == "Edit")
                    {
                        var requester = context.RequesterSummaries.Where(o => o.ProcessId == param.ProcessId).FirstOrDefault();
                        requester.ApproveStatus     = null;
                        requester.Name              = param.Name;
                        requester.Email             = param.Email;
                        requester.Payroll           = param.Payroll;
                        requester.RequesterPosition = param.RequesterPosition;
                        requester.AsalCompany       = param.AsalCompany;
                        requester.Location          = param.Location;
                        requester.Plant             = param.Plant;
                        requester.BudgetSource      = param.BudgetSource;
                        requester.Currency          = param.Currency;
                        requester.Date              = param.Date;
                        requester.SinglePanel       = param.SinglePanel;
                        requester.ItemText          = param.ItemText;
                        requester.MaterialGroup     = param.MaterialGroup;
                        requester.Description       = param.Description;
                        requester.Qty       = param.Qty;
                        requester.QtySatuan = param.QtySatuan;
                        requester.EstPrice  = param.EstPrice;
                        requester.Subtotal  = param.Qty * param.EstPrice;
                        context.SubmitChanges();

                        CommentHistory commentHistory = new CommentHistory();

                        commentHistory.ProcessId = param.ProcessId;
                        commentHistory.Name      = usr.Name;
                        commentHistory.Action    = param.Action;
                        commentHistory.Date      = DateTime.Now;
                        commentHistory.Comment   = "Sudah diedit";

                        context.CommentHistories.InsertOnSubmit(commentHistory);
                        context.SubmitChanges();
                    }
                    return(Ok(new { success = true, message = "Request " + action }));
                }
            }
            catch (Exception ex)
            {
                return(Ok(new { success = false, message = ex.Message }));
            }
        }
Beispiel #11
0
        public async Task <IHttpActionResult> Create([FromBody] AddRequest req)
        {
            var              flowId    = ConfigurationManager.AppSettings["FlowId"];
            CommentHistory   comment   = new CommentHistory();
            RequesterSummary requester = new RequesterSummary();

            using (var dc = new PurchaserRequisitionDataContext())
            {
                var data = dc.Companies.FirstOrDefault(o => o.Name == req.Name);

                string RecordId  = string.Empty;
                string ProcessId = string.Empty;

                var bodyCreate = "{ " +
                                 "\"data\": { " +
                                 " \"definition\": { " +
                                 " \"id\": \"" + flowId + "\"" +
                                 "}" +
                                 "}" +
                                 "}";

                JObject jsonCreate = JObject.Parse(bodyCreate);

                using (var client = new HttpClient())
                {
                    client.BaseAddress = new Uri("https://mosaic.dev.nextflow.tech/");
                    client.DefaultRequestHeaders.Accept.Clear();
                    client.DefaultRequestHeaders.Authorization = new AuthenticationHeaderValue("Bearer", data.Token);
                    client.DefaultRequestHeaders.Accept.Add(new MediaTypeWithQualityHeaderValue("application/json"));
                    var response = await client.PostAsJsonAsync("nextflow/api/records", jsonCreate);

                    var result = await response.Content.ReadAsAsync <dynamic>();

                    RecordId = result.data.id;

                    var bodySubmit = "{ " +
                                     "\"data\": { " +
                                     " \"form_data\": { " +
                                     " \"pvInitiator\": \"" + data.Email + "\"," +
                                     " \"pvInitiatorName\": \"" + data.Name + "\"," +
                                     " \"pvAction\": \"submit\"," +
                                     " \"pvReq\": \"" + data.Email + "\"," +
                                     " \"pvApprover\": \"[email protected]\"" +
                                     "}," +
                                     "\"comment\" : \"" + req.comment + "\"" +
                                     "}" +
                                     "}";

                    JObject jsonSubmit     = JObject.Parse(bodySubmit);
                    var     responseSubmit = await client.PostAsJsonAsync("nextflow/api/records/" + RecordId + "/submit", jsonSubmit);

                    var resultSubmit = await responseSubmit.Content.ReadAsAsync <dynamic>();

                    ProcessId = resultSubmit.data.process_id;
                }

                requester.Name              = req.Name;
                requester.Email             = req.Email;
                requester.Payroll           = req.Payroll;
                requester.RequesterPosition = req.RequesterPosition;
                requester.AsalCompany       = req.AsalCompany;
                requester.Location          = req.Location;
                requester.Plant             = req.Plant;
                requester.BudgetSource      = req.BudgetSource;
                requester.Currency          = req.Currency;
                requester.Date              = req.Date;
                requester.SinglePanel       = req.SinglePanel;
                requester.ItemText          = req.ItemText;
                requester.MaterialGroup     = req.MaterialGroup;
                requester.Description       = req.Description;
                requester.Qty       = req.Qty;
                requester.QtySatuan = req.QtySatuan;
                requester.EstPrice  = req.EstPrice;
                requester.Subtotal  = req.Qty * req.EstPrice;
                requester.ProcessId = ProcessId;
                requester.RecordId  = RecordId;

                dc.RequesterSummaries.InsertOnSubmit(requester);
                dc.SubmitChanges();

                comment.Name      = req.Name;
                comment.ProcessId = ProcessId;
                comment.Action    = "Submit";
                comment.Date      = DateTime.Now;
                comment.Comment   = "Tolong diperiksa dengan saksama";
                dc.CommentHistories.InsertOnSubmit(comment);
                dc.SubmitChanges();
            }

            return(Ok("Success"));
        }
Beispiel #12
0
 public RequestController()
 {
     context = new PurchaserRequisitionDataContext();
 }