Ejemplo n.º 1
0
        public IActionResult Post([FromBody] CreateEditViewModel model)
        {
            if (model is null)
            {
                return(BadRequest("Organization Unit Change is null."));
            }

            if (!ModelState.IsValid)
            {
                return(BadRequest());
            }

            DataClaim.GetClaim(Request);

            OrgUnitTransaction orgUnitChange = new OrgUnitTransaction();
            var menuMapper = _mapper.Map(model, orgUnitChange);

            menuMapper.OrgUnitId           = Convert.ToInt32(EncryptionHelper.DecryptUrlParam(model.OrganizationUnitID));
            menuMapper.RequestDate         = DateTime.Today;
            menuMapper.TransactionStatusId = 10;
            _orgUnitChangeProvider.Add(menuMapper);

            //get OrgUnitChild dari OrgUnit tsb, dan save ke detail
            var child = _orgUnitChangeProvider.GetOrgUnitChild(menuMapper.OrgUnitId);

            _orgUnitChangeProvider.AddChildOrgUnit(menuMapper, child);

            return(Ok(model));
        }
        public int AddChildOrgUnit(OrgUnitTransaction orgChange, IEnumerable <OrgUnit> child)
        {
            foreach (var item in child)
            {
                OrgUnitTransactionDetail detail = new OrgUnitTransactionDetail();
                detail.OrgUnitTransactionId = orgChange.Id;
                detail.OrgUnitId            = item.Id;
                detail.Code = item.Code;
                detail.Name = item.Name;
                detail.OrganizationleveId       = item.OrganizationlevelId;
                detail.SuperiorId               = item.SuperiorId;
                detail.CostCenterId             = item.CostCenterId;
                detail.Description              = item.Description;
                detail.BeginEff                 = item.BeginEff;
                detail.LastEff                  = item.LastEff;
                detail.ParentId                 = item.ParentId;
                detail.IsLegalEntity            = item.IsLegalEntity;
                detail.LegalEntityInformationId = item.LegalEntityInformationId;
                detail.BusinessGroupId          = item.BusinessGroupId;
                detail.StatusId                 = 0;
                detail.CategoryId               = item.CategoryId;
                detail.CreatedBy                = orgChange.CreatedBy;
                detail.CreatedDate              = orgChange.CreatedDate;

                context.OrgUnitTransactionDetail.Add(detail);
            }

            return(context.SaveChanges());
        }
 public int Edit(OrgUnitTransaction entity)
 {
     context.SbEdit(entity);
     return(context.SaveChanges());
 }