コード例 #1
0
        public Sal_CostCentreSalModel Post([Bind] Sal_CostCentreSalModel model)
        {
            ActionService service = new ActionService(UserLogin);

            #region Validate
            string message       = string.Empty;
            var    checkValidate = HRM.Business.Main.Domain.ValidatorService.OnValidateData <Sal_CostCentreSalModel>(model, "Sal_CostCentreSal", ref message);
            if (!checkValidate)
            {
                model.ActionStatus = message;
                return(model);
            }
            #endregion
            string status      = string.Empty;
            var    baseService = new BaseService();
            var    objs        = new List <object>();
            objs.Add(Common.DotNetToOracle(model.ProfileID.ToString()));
            objs.Add(1);
            objs.Add(10000);
            var result = baseService.GetData <Sal_CostCentreSalEntity>(objs, ConstantSql.hrm_hr_sp_get_Sal_CostCentreSalByProfileId, UserLogin, ref status);
            //kiem tra he so cua 1 nv
            if (model.ID == Guid.Empty)
            {
                double?rate    = result.Sum(s => s.Rate);
                double?ratenew = rate + model.Rate;
                if (ratenew > 1)
                {
                    model.SetPropertyValue(Constant.ActionStatus, NotificationType.Error + ",");
                    return(model);
                }
            }
            else
            {
                result = result.Where(s => s.ID != model.ID).ToList();
                double?rate    = result.Sum(s => s.Rate);
                double?ratenew = rate + model.Rate;
                if (ratenew > 1)
                {
                    model.SetPropertyValue(Constant.ActionStatus, NotificationType.Error + ",");
                    return(model);
                }
            }
            //kiem tra trung
            var resultdulicate = result.Where(s => s.CostCentreID == model.CostCentreID && s.ElementType == model.ElementType).ToList();
            if (resultdulicate.Count > 0)
            {
                model.SetPropertyValue(Constant.ActionStatus, NotificationType.Info + "," + ConstantMessages.FieldDuplicate);
                return(model);
            }
            return(service.UpdateOrCreate <Sal_CostCentreSalEntity, Sal_CostCentreSalModel>(model));
        }
コード例 #2
0
        public Sal_CostCentreSalModel GetById(Guid id)
        {
            string        status  = string.Empty;
            var           model   = new Sal_CostCentreSalModel();
            ActionService service = new ActionService(UserLogin);
            var           entity  = service.GetByIdUseStore <Sal_CostCentreSalEntity>(id, ConstantSql.hrm_hr_sp_get_Sal_CostCentreSalById, ref status);//note

            if (entity != null)
            {
                model = entity.CopyData <Sal_CostCentreSalModel>();
            }
            model.ActionStatus = status;
            return(model);
        }