/// <summary> /// Ham xu ly chinh, chi nhan 1 bien moi truong /// </summary> /// <param name="context">Bien moi truong</param> /// <returns></returns> public async Task <Entity.MSSQL_QLDN_QLNS.Entity.LuongPhuCap> Execute() { Init(); Validate(); // TODO kiểm tra nhân viên có lương phụ cấp chưa var getByNhanVienIdDac = new GetLuongPhuCapByNhanVienIdDac(_context); getByNhanVienIdDac.NHAN_VIEN_ID = NhanVienId; var listLuongPhuCap = (await getByNhanVienIdDac.Execute()); if (listLuongPhuCap != null && listLuongPhuCap.Count() > 0) { throw new BaseException("Nhân viên này đã có thông tin lương phụ cấp."); } // Nếu nhân viên chưa có lương phụ cấp thì thêm mới var repo = new LuongPhuCapRepository(_context); CtrVersion = 1; var result = await repo.Insert(this); return(result); }
/// <summary> /// Ham xu ly chinh, chi nhan 1 bien moi truong /// </summary> /// <param name="context">Bien moi truong</param> /// <returns></returns> public async Task <Entity.MSSQL_QLDN_QLNS.Entity.LuongPhuCap> Execute() { Init(); Validate(); // TODO kiểm tra sự tồn tại của nhân viên var getNhanVienByIdDac = new GetThongTinNhanVienByIdDac(_context); getNhanVienByIdDac.NHAN_VIEN_ID = NhanVienId; var listNhanVien = (await getNhanVienByIdDac.Execute()).ToList(); if (listNhanVien != null && (listNhanVien.Count() == 0 || listNhanVien[0].XoaYN == "Y")) { throw new BaseException("Không tìm thấy thông tin nhân viên."); } // TODO kiểm tra nhân viên có lương phụ cấp chưa var getByNhanVienIdDac = new GetLuongPhuCapByNhanVienIdDac(_context); getByNhanVienIdDac.NHAN_VIEN_ID = NhanVienId; var listLuongPhuCap = (await getByNhanVienIdDac.Execute()); if (listLuongPhuCap != null && listLuongPhuCap.Count() == 0) { throw new BaseException("Nhân viên này chưa có thông tin lương phụ cấp."); } // Cập nhật lương phụ cấp var repo = new LuongPhuCapRepository(_context); var result = await repo.UpdatePartial(this , nameof(LuongCoBan) , nameof(LuongChinhThuc) , nameof(HuongLuong) , nameof(ComTrua) , nameof(DienThoai) , nameof(TrachNhiem) , nameof(DongPhuc) , nameof(Khac) ); return(result); }