예제 #1
0
        /// <summary>
        /// Tạo mời một AttGrade
        /// </summary>
        /// <param name="model"></param>
        /// <returns></returns>
        public ActionResult Add([Bind] Att_GradeModel model)
        {
            var service = new RestServiceClient <Att_GradeModel>(UserLogin);

            service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
            var result = service.Put(_Hrm_Hre_Service, "api/Att_Grade/", model);

            return(Json(result));
        }
예제 #2
0
 public ActionResult Create(Att_GradeModel model)
 {
     if (ModelState.IsValid)
     {
         var service = new RestServiceClient <Att_GradeModel>(UserLogin);
         service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
         var result = service.Put(_Hrm_Hre_Service, "api/Att_Grade/", model);
         ViewBag.MsgInsert = ConstantDisplay.HRM_Att_Grade_InsertSuccess.TranslateString();
     }
     return(View());
 }
예제 #3
0
 public ActionResult Edit([DataSourceRequest] DataSourceRequest request, Att_GradeModel AttGrade)
 {
     if (ModelState.IsValid)
     {
         var service = new RestServiceClient <Att_GradeModel>(UserLogin);
         service.SetCookies(this.Request.Cookies, _Hrm_Hre_Service);
         var result = service.Put(_Hrm_Hre_Service, "api/Att_Grade/", AttGrade);
         ViewBag.MsgUpdate = ConstantDisplay.HRM_Att_Grade_UpdateSuccess.TranslateString();
     }
     return(View());
 }
예제 #4
0
        /// <summary>
        /// [Hieu.Van] - Lấy dữ liệu theo Id
        /// </summary>
        /// <param name="id"></param>
        /// <returns></returns>
        public Att_GradeModel GetById(Guid id)
        {
            string        status  = string.Empty;
            var           model   = new Att_GradeModel();
            ActionService service = new ActionService(UserLogin);
            var           entity  = service.GetByIdUseStore <Att_GradeEntity>(id, ConstantSql.hrm_att_sp_get_Att_GradeById, ref status);

            if (entity != null)
            {
                model = entity.CopyData <Att_GradeModel>();
            }
            model.ActionStatus = status;
            return(model);
        }
예제 #5
0
        public Att_GradeModel Post([Bind] Att_GradeModel model)
        {
            #region Validate
            string message       = string.Empty;
            bool   checkValidate = false;
            if (model.ProfileID != Guid.Empty && model.ProfileIDs == null)
            {
                model.ProfileIDs = model.ProfileID.ToString();
            }
            if (model.IsProfileNotGrade == true)
            {
                checkValidate = HRM.Business.Main.Domain.ValidatorService.OnValidateData <Att_GradeModel>(model, "Att_ProfileNotGradeInfo", "Att_Grade", ref message);
            }
            else
            {
                checkValidate = HRM.Business.Main.Domain.ValidatorService.OnValidateData <Att_GradeModel>(model, "Att_Grade", ref message);
            }
            if (!checkValidate)
            {
                model.ActionStatus = message;
                return(model);
            }
            var           baseService = new BaseService();
            ActionService service     = new ActionService(UserLogin);
            if (model.ID != Guid.Empty)
            {
                if (string.IsNullOrEmpty(model.OrgStructureID) && string.IsNullOrEmpty(model.ProfileIDs))
                {
                    message            = string.Format(ConstantMessages.FieldNotAllowNull.TranslateString(), ("ProfileID").TranslateString());
                    model.ActionStatus = message;
                    return(model);
                }
            }
            #endregion
            List <Guid> lstProfileIDs = new List <Guid>();
            string      status        = string.Empty;
            //xu ly chon nhan vien hay chon phong ban
            if (!string.IsNullOrEmpty(model.ProfileIDs))
            {
                List <Guid> lstMulti = new List <Guid>();
                var         lst      = model.ProfileIDs.Split(',');
                foreach (var item in lst)
                {
                    Guid _Id = new Guid(item);
                    lstMulti.Add(_Id);
                }
                lstProfileIDs = lstMulti;
            }
            else
            {
                //if (!string.IsNullOrEmpty(model.OrgStructureID))
                //{
                if (model.OrgStructureID == "")
                {
                    model.OrgStructureID = null;
                }
                List <object> lstObj = new List <object>();
                lstObj.Add(model.OrgStructureID);
                lstObj.Add(null);
                lstObj.Add(null);
                List <Hre_ProfileEntity> lstOrg = baseService.GetData <Hre_ProfileEntity>(lstObj, ConstantSql.hrm_hr_sp_get_ProfileIdsByOrg, UserLogin, ref status).ToList();
                lstProfileIDs = lstOrg.Select(d => d.ID).ToList();
                //neu co loai tru
                if (!string.IsNullOrEmpty(model.ProfileIDsExclude) && lstProfileIDs.Count > 0)
                {
                    List <Guid> lstProfileIDsExclude = new List <Guid>();
                    var         lst = model.ProfileIDsExclude.Split(',');
                    foreach (var item in lst)
                    {
                        Guid _Id = new Guid(item);
                        lstProfileIDsExclude.Add(_Id);
                    }
                    lstProfileIDs = lstProfileIDs.Where(d => !lstProfileIDsExclude.Contains(d)).ToList();
                }
                //}
            }
            if (lstProfileIDs.Count > 0)
            {
                foreach (Guid item in lstProfileIDs)
                {
                    Att_GradeModel modelSave = model.CopyData <Att_GradeModel>();
                    modelSave.ProfileID = item;
                    modelSave           = service.UpdateOrCreate <Att_GradeEntity, Att_GradeModel>(modelSave);
                    if (modelSave.ActionStatus != NotificationType.Success.ToString())
                    {
                        return(modelSave);
                    }
                }
                model.SetPropertyValue(Constant.ActionStatus, NotificationType.Success.ToString());
                return(model);
            }
            else
            {
                return(service.UpdateOrCreate <Att_GradeEntity, Att_GradeModel>(model));
            }

            //return service.UpdateOrCreate<Att_GradeEntity, Att_GradeModel>(model);
        }