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));
            }
        }
 public async Task <IActionResult> Put(int id, [FromBody] HocPhiViewModel model)
 {
     return(await _hocPhiService.UpdateAsync(id, model));
 }
 public async Task <IActionResult> Post([FromBody] HocPhiViewModel model)
 {
     return(await _hocPhiService.InsertAsync(model));
 }