public override async Task <ResponseEntity> InsertAsync(KhachHangViewModel modelVm) { try { KhachHang entity = _mapper.Map <KhachHang>(modelVm); entity = await _khachHangRepository.InsertAsync(entity); HocPhiViewModel hocPhiVm = new HocPhiViewModel(); if (modelVm.MaTrangThaiKH == 2) { hocPhiVm = modelVm.HocPhi; hocPhiVm.MaKH = entity.Id; HocPhi hocPhi = _mapper.Map <HocPhi>(hocPhiVm); await _hocPhiRepository.InsertAsync(hocPhi); } modelVm = _mapper.Map <KhachHangViewModel>(entity); modelVm.HocPhi = hocPhiVm; return(new ResponseEntity(StatusCodeConstants.CREATED, modelVm, MessageConstants.INSERT_SUCCESS)); } catch (Exception ex) { return(new ResponseEntity(StatusCodeConstants.ERROR_SERVER, ex.Message)); } }