コード例 #1
0
        public IHttpActionResult Create([FromBody] IzinCutiDTO izinCuti)
        {
            ThrowIfUserHasNoRole(createRole);
            if (izinCuti == null)
            {
                throw new KairosException("Missing model parameter");
            }

            if (izinCuti.IzinCuti_PK != 0)
            {
                throw new KairosException("Post method is not allowed because the requested primary key is must be '0' (zero) .");
            }
            using (var izinCutiCreateHandler = new IzinCutiCreateHandler(Db, ActiveUser, new IzinCutiValidator(), new IzinCutiFactory(Db, ActiveUser), new IzinCutiQuery(Db), AccessControl))
            {
                using (var transaction = new TransactionScope())
                {
                    var saveResult = izinCutiCreateHandler.Save(izinCutiDTO: izinCuti, dateStamp: DateTime.Now);
                    transaction.Complete();
                    if (saveResult.Success)
                    {
                        return(Ok(new SuccessResponse(saveResult.Model, saveResult.Message)));
                    }
                    return(Ok(new ErrorResponse(ServiceStatusCode.ValidationError, saveResult.ValidationResult, saveResult.Message)));
                }
            }
        }
コード例 #2
0
        public IHttpActionResult Create([FromBody] MobileIzinCutiRequest izinCutiRequest)
        {
            string accessType = "";

            ThrowIfUserHasNoRole(accessType);
            if (izinCutiRequest == null)
            {
                throw new KairosException("Missing model parameter");
            }

            var izinCuti = izinCutiRequest.ToIzinCutiDTO();

            if (izinCuti.IzinCuti_PK != 0)
            {
                throw new KairosException("Post method is not allowed because the requested primary key is must be '0' (zero) .");
            }
            using (var izinCutiCreateHandler = new IzinCutiCreateHandler(Db, ActiveUser, new IzinCutiValidator(), new IzinCutiFactory(Db, ActiveUser), new IzinCutiQuery(Db), AccessControl))
            {
                using (var transaction = new TransactionScope())
                {
                    var saveResult = izinCutiCreateHandler.Save(izinCutiDTO: izinCuti, dateStamp: DateTime.Now);
                    transaction.Complete();
                    if (saveResult.Success)
                    {
                        return(Ok(new
                        {
                            success = true,
                            msg = "Pengajuan berhasil."
                        }));
                    }

                    return(Ok(new
                    {
                        success = false,
                        msg = saveResult.ValidationResult.Errors.Count > 0 ? saveResult.ValidationResult.Errors[0].Message : saveResult.Message,
                        validationResult = saveResult.ValidationResult
                    }));
                }
            }
        }