示例#1
0
        public async Task <IActionResult> Edit(int id)
        {
            int PageSize = int.Parse(Environment.GetEnvironmentVariable("PAGE_SIZE_INITIAL"));

            var               query2   = @"query{
                              areas{
                                id,
                                name
                              },
                              identificationTypes{
                                id,
                                name
                              }
                            }";
            string            data     = await new GraphqlConexionStringHelper(_identityHelper).GraphqlConexionString(query2, true);
            EmployeGeneralDTO dataList = JsonConvert.DeserializeObject <EmployeGeneralDTO>(data);

            ViewBag.IdentificationTypes = dataList.Data.IdentificationTypes;
            ViewBag.Areas = dataList.Data.Areas;

            var query = @"query getEmployee($id: Int!){
                              employee(id:$id){
                                identificationType{
                                  id,
                                  name
                                },
                                lastName,
                                firstName,
                                identificationNumber,
                                subarea{
                                  id,
                                  name,
                                  area{
                                    id,
                                    name
                                  }
                                }
                              }
                            }";

            var variable = new
            {
                id = id
            };
            EmployeeDTO result = await new GraphqlConexionEntityHelper <EmployeeDTO>(_identityHelper).GraphqlConexionEntity(query, variable, false);

            if (result == null)
            {
                TempData["Message"] = "Empleado no encontrado";
                TempData["Type"]    = "Error";
                return(RedirectToAction("Index"));
            }
            return(View(result));
        }
示例#2
0
        public async Task <IActionResult> Register()
        {
            var               query    = @"query{
                              areas{
                                id,
                                name
                              },
                              identificationTypes{
                                id,
                                name
                              }
                            }";
            string            data     = await new GraphqlConexionStringHelper(_identityHelper).GraphqlConexionString(query, true);
            EmployeGeneralDTO dataList = JsonConvert.DeserializeObject <EmployeGeneralDTO>(data);

            ViewBag.IdentificationTypes = dataList.Data.IdentificationTypes;
            ViewBag.Areas = dataList.Data.Areas;
            return(View(new EmployeeDTO()));
        }
示例#3
0
        public async Task <IActionResult> Register(EmployeeDTO model)
        {
            var queryList = @"query{
                              areas{
                                id,
                                name
                              },
                              identificationTypes{
                                id,
                                name
                              }
                            }";

            string            data     = await new GraphqlConexionStringHelper(_identityHelper).GraphqlConexionString(queryList, true);
            EmployeGeneralDTO dataList = JsonConvert.DeserializeObject <EmployeGeneralDTO>(data);

            ViewBag.IdentificationTypes = dataList.Data.IdentificationTypes;
            ViewBag.Areas = dataList.Data.Areas;

            if (ModelState.IsValid)
            {
                var query = @"mutation createEmployee(
                                  $identificationNumber: String!,
                                  $firstName: String!,
	                                $subareaId: Int!, 
                                  $lastName:  String!,
                                  $identificationTypeId: Int!
                                ){
                                  createEmployee(input:{
                                    identificationNumber: $identificationNumber,
                                    firstName: $firstName,
                                    lastName: $lastName,
                                    subareaId: $subareaId,
                                    identificationTypeId: $identificationTypeId
                                  }){
                                    identificationType{
                                      id,
                                      name
                                    },
                                    lastName,
                                    firstName,
                                    identificationNumber,
                                    subarea{
                                      id,
                                      name,
                                      area{
                                        id,
                                        name
                                      }
                                    }
                                  }
}
                            ";

                var variable = new
                {
                    identificationNumber = model.IdentificationNumber,
                    firstName            = model.FirstName,
                    lastName             = model.LastName,
                    subareaId            = model.SubareaId,
                    identificationTypeId = model.IdentificationTypeId
                };
                EmployeeDTO employee = await new GraphqlConexionEntityHelper <EmployeeDTO>(_identityHelper).GraphqlConexionEntity(query, variable, true);

                if (employee == null)
                {
                    employee.Token      = _identityHelper.GetCurrentToken();
                    TempData["Message"] = "Empleado no fue registrado";
                    TempData["Type"]    = "Error";
                    return(View(model));
                }

                TempData["Message"] = "Empleado registrado correctamente";
                TempData["Type"]    = "Ok";
                return(RedirectToAction("Index", "Employee"));
            }
            else
            {
                TempData["Message"] = "Datos incorrectos";
                TempData["Type"]    = "Error";
                return(View(model));
            }
        }