public IHttpActionResult Add(PegAddDto peg)
 {
     try
     {
         var result = _pegBL.Add(peg);
         return(Ok(result));
     }
     catch (ArgumentException ex)
     {
         return(BadRequest(ex.Message));
     }
 }
예제 #2
0
        public PegModel Add(PegAddDto peg)
        {
            //      INPUT VALIDATION
            peg.Empty().Throw("DATA PEGAWAI empty");

            //      CONVERT DTO >> MODEL
            var pg = new PegModel
            {
                PegName   = peg.PegName,
                JabatanID = peg.JabatanID
            };

            pg = Validate(pg);

            //      BUSINESS VALIDATION
            var listPeg = _pegDal.ListData();

            if (listPeg != null)
            {
                var exist = listPeg.FirstOrDefault(x => x
                                                   .PegName.Trim().ToLower() == peg.PegName.Trim().ToLower());
                exist.NotEmpty().Throw("Pegawai already exist");
            }

            var jbtn = _jabatanDal.GetData(pg);

            jbtn.Empty().Throw("JABATAN ID invalid");
            pg.JabatanName = jbtn.JabatanName;

            //      REPO-OP
            using (var trans = TransHelper.NewScope())
            {
                pg.PegID = _paramNoBL.GenNewID("PG", ParamNoLengthEnum.Code_5);
                _pegDal.Insert(pg);
                trans.Complete();
            }

            //      RETURN
            return(pg);
        }