Example #1
0
        public HrmResultEntity <WorkingdayFurlough> GetWorkingdayFurlough(BasicParamType param, long starffId, long organizationId, out int totalRecord)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", starffId);
            par.Add("@OrganizationId", organizationId);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <WorkingdayFurlough>("WorkingdayAnnualLeave_Get_GetWorkingdayFurlough", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                var parCache = HttpRuntime.Cache.Get(param.DbName + "-WorkingdayAnnualLeave_Get_GetWorkingdayFurlough-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                if (parCache != null)
                {
                    par = parCache;
                }
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }

            return(result);
        }
Example #2
0
        public HrmResultEntity <WorkingdayEntity> GetSummaryFinal(BasicParamType param, long staffId, int month, int year, out string outTotalJson, out int totalRecord)
        {
            //FilterField :
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId);
            par.Add("@Month", month);
            par.Add("@Year", year);
            par.Add("@OutTotalJson", "", DbType.String, ParameterDirection.InputOutput);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <WorkingdayEntity>("WorkingdaySummary_Get_GetWorkingdaySummaryFinal", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                outTotalJson = par.GetDataOutput <string>("@OutTotalJson");
                totalRecord  = par.GetDataOutput <int>("@TotalRecord");
            }

            else
            {
                totalRecord  = 0;
                outTotalJson = string.Empty;
            }
            return(result);
        }
Example #3
0
        public HrmResultEntity <WorkingdayAllStaffEntity> GetWorkingdayAllStaff(BasicParamType param, long staffId, int month, int year, long organizationId, out int totalRecord)
        {
            //FilterField :
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId);
            par.Add("@Month", month);
            par.Add("@Year", year);
            par.Add("@OrganizationId", organizationId);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <WorkingdayAllStaffEntity>("WorkingdaySummary_Get_GetWorkingdayAllStaff", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                par         = HttpRuntime.Cache.Get(param.DbName + "-WorkingdaySummary_Get_GetWorkingdayAllStaff-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }

            return(result);
        }
Example #4
0
        public HrmResultEntity <OrganizationEntity> GetAllOrganizationForDropDown(BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            return(ListProcedure <OrganizationEntity>("Organization_Get_GetAllOrganizationForDropDown", par, dbName: param.DbName));
        }
Example #5
0
        public HrmResultEntity <OrganizationEntity> SaveMergerOrganization(OrganizationEntity data, List <ListDataSelectedIdType> listData, BasicParamType param, string dbName)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@ListData", listData.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@ToOrganizationaID", data.Id);
            par.Add("@DecisionNo", data.DecisionNo);
            par.Add("@WorkingStatus", MasterDataId.WorkingStatusActive);
            par.Add("@DecisionDate", data.DecisionDate);
            par.Add("@StartDate", data.StartDate);
            par.Add("@EndDate", data.EndDate);
            par.Add("@Note", data.Note);
            par.Add("@OrganizationName", data.OrganizationName);
            par.Add("@OrganizationCode", data.OrganizationCode);
            par.Add("@OrderNo", data.OrderNo);
            par.Add("@ParentId", data.ParentId);
            par.Add("@Status", data.Status);
            par.Add("@OrganizationType", data.OrganizationType);
            par.Add("@Email", data.Email);
            par.Add("@Phone", data.Phone);
            par.Add("@Branch", data.Branch);
            par.Add("@CurrencyTypeId", data.CurrencyTypeId);
            par.Add("@DbName", dbName);
            return(ListProcedure <OrganizationEntity>("Organization_Update_Merger", par));
        }
Example #6
0
        public HrmResultEntity <SalaryEntity> GetSalary(BasicParamType param, int payrollId, int month, int year, long staffId, out string outTotalJson, out int totalRecord)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@PayrollId", payrollId);
            par.Add("@Month", month);
            par.Add("@Year", year);
            par.Add("@StaffId", staffId);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            par.Add("@OutTotalJson", "", DbType.String, ParameterDirection.InputOutput);

            var result = ListProcedure <SalaryEntity>("Salary_Get_GetSalary_1", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                par          = HttpRuntime.Cache.Get(param.DbName + "-Salary_Get_GetSalary_1-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                totalRecord  = par.GetDataOutput <int>("@TotalRecord");
                outTotalJson = par.GetDataOutput <string>("@OutTotalJson");
            }
            else
            {
                totalRecord = 0;
            }
            outTotalJson = string.Empty;
            return(result);
        }
Example #7
0
        public HrmResultEntity <StaffAllowanceEntity> GetStaffAllowanceByWorkingprocess(BasicParamType param, long workingprocessId)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@WorkingprocessId", workingprocessId, DbType.Int32);
            return(ListProcedure <StaffAllowanceEntity>("Staff_Get_GetStaffAllowanceByWorkingprocess", par, dbName: param.DbName));
        }
Example #8
0
        public HrmResultEntity <WorkingProcessEntity> GetStaffSalary(BasicParamType param, long staffId)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId);
            return(ListProcedure <WorkingProcessEntity>("Staff_Get_GetStaffSalary", par, dbName: param.DbName));
        }
Example #9
0
        public HrmResultEntity <StaffContractEntity> GetCurrentStaffContractByStaff(BasicParamType param, long staffId)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId);
            return(ListProcedure <StaffContractEntity>("Staff_Get_GetCurrentStaffContractByStaff", par, dbName: param.DbName));
        }
Example #10
0
        public HrmResultEntity <StaffSocialInsuranceEntity> GetSocialInsuranceByStaff(BasicParamType param, long staffId)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId, DbType.Int32);
            return(ListProcedure <StaffSocialInsuranceEntity>("Staff_Get_GetSocialInsuranceByStaff", par, dbName: param.DbName));
        }
Example #11
0
        public HrmResultEntity <ConfigInsuranceEntity> GetCurrentConfigInsurance(BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <ConfigInsuranceEntity>("ConfigInsurance_Get_GetCurrentConfigInsurance", par, dbName: param.DbName);

            return(result);
        }
Example #12
0
        public HrmResultEntity <bool> SavePassword(BasicParamType param, string newPassword, int staffId)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@NewPassword", newPassword);
            par.Add("@StaffId", staffId);
            par.Add("@Result", 0, DbType.Int32, ParameterDirection.InputOutput);
            return(Procedure("Password_Update_SavePassword", par));
        }
Example #13
0
        public HrmResultEntity <EmailEntity> GetEmail(BasicParamType param, bool isMailWelcomeKit)
        {
            var par = new DynamicParameters();

            par.Add("@IsMailWelcomeKit", isMailWelcomeKit);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <EmailEntity>("Email_Get_GetEmail", par, dbName: param.DbName);

            return(result);
        }
Example #14
0
        public HrmResultEntity <StaffOnboardInfoEntity> GetPipelineStepStaffByStaffIdAndMenuName(BasicParamType param, string menuName, long staffId)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@MenuName", menuName);
            par.Add("@StaffId", staffId);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            return(ListProcedure <StaffOnboardInfoEntity>("Staff_Get_GetPipelineStepStaffByStaffIdAndMenuName", par, dbName: param.DbName));
        }
Example #15
0
        public HrmResultEntity <PayrollEntity> GetPayrollById(long id, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", id);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <PayrollEntity>("Payroll_Get_GetPayrollById", par, dbName: param.DbName);

            return(result);
        }
Example #16
0
        public HrmResultEntity <bool> CheckContractCodeExisted(BasicParamType param, string contractCode, long id, out bool result)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@Id", id);
            par.Add("@ContractCode", contractCode);
            par.Add("@Result", 0, DbType.Boolean, ParameterDirection.InputOutput);
            var response = ListProcedure <bool>("WorkingProcess_Get_CheckContractCodeExisted", par);

            result = par.GetDataOutput <bool>("@Result");
            return(response);
        }
Example #17
0
        public HrmResultEntity <StaffEntity> SaveStaffInformation(List <StaffType> staff, List <StaffRoleType> role, List <StaffRelationshipsType> staffRelationship, List <StaffWorkingDayMachineType> staffWorkingDayMachine, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Staff", staff.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@Role", role.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffRelatioship", staffRelationship.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffWorkingDayMachine", staffWorkingDayMachine.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <StaffEntity>("Staff_Update_SaveStaffInformation", par, useCache: true);

            return(result);
        }
Example #18
0
        public HrmResultEntity <PayrollEntity> SavePayroll(PayrollEntity payroll, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", payroll.Id);
            par.Add("@SalaryTypeId", payroll.SalaryTypeId);
            par.Add("@Name", payroll.Name);
            par.Add("@Description", payroll.Description);
            par.Add("@MonthYear", payroll.MonthYear);
            par.Add("@Status", payroll.Status);
            par.Add("@PaymentDate", payroll.PaymentDate);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <PayrollEntity>("Payroll_Update_SavePayroll", par, useCache: false);

            return(result);
        }
Example #19
0
        public HrmResultEntity <StaffCertificateEntity> SaveCertificate(StaffCertificateEntity data, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", data.Id);
            par.Add("@StaffId", data.StaffId);
            par.Add("@Name", data.Name);
            par.Add("@IssuedDate", data.IssuedDate);
            par.Add("@RankId", data.RankId);
            par.Add("@IssuedBy", data.IssuedBy);
            par.Add("@Point", data.Point);
            par.Add("@Note", data.Note);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <StaffCertificateEntity>("Staff_Update_SaveCertificate", par, useCache: false);

            return(result);
        }
Example #20
0
        public HrmResultEntity <HealthInsuranceEntity> SaveHealthInsurance(HealthInsuranceEntity data, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", data.Id);
            par.Add("@StaffId", data.StaffId);
            par.Add("@InsuranceCode", data.InsuranceCode);
            par.Add("@TypeId", data.TypeId);
            par.Add("@PlaceHealthCare", data.PlaceHealthCare);
            par.Add("@IssuedDate", data.IssuedDate);
            par.Add("@StartDate", data.StartDate);
            par.Add("@EndDate", data.EndDate);
            par.Add("@Note", data.Note);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <HealthInsuranceEntity>("Staff_Update_SaveHealthInsurance", par, useCache: false);

            return(result);
        }
Example #21
0
        public HrmResultEntity <StaffExperienceEntity> SaveExperience(StaffExperienceEntity data, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", data.Id);
            par.Add("@StaffId", data.StaffId);
            par.Add("@FromDate", data.FromDate);
            par.Add("@ToDate", data.ToDate);
            par.Add("@OfficePositionID", data.OfficePositionID);
            par.Add("@OfficeRoleID", data.OfficeRoleID);
            par.Add("@CompanyName", data.CompanyName);
            par.Add("@Salary", data.Salary);
            par.Add("@CurrencyId", data.CurrencyId);
            par.Add("@Note", data.Note);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <StaffExperienceEntity>("Staff_Update_SaveExperience", par, useCache: false);

            return(result);
        }
Example #22
0
        public HrmResultEntity <WorkingdayPeriodEntity> GetWorkingdayPeriod(BasicParamType param, out int totalRecord)
        {
            //FilterField :
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <WorkingdayPeriodEntity>("WorkingDayCalculationPeriod_Get_GetPeriod", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }
            return(result);
        }
Example #23
0
        public HrmResultEntity <OrganizationEntity> GetOrganization(BasicParamType param, out int totalRecord)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <OrganizationEntity>("Organization_Get_GetOrganization", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                par         = HttpRuntime.Cache.Get(param.DbName + "-Organization_Get_GetOrganization-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }

            return(result);
        }
Example #24
0
        public HrmResultEntity <WorkingdaySupplementConfigurationEntity> GetSupplementConfigurationByRoleId(BasicParamType param, out int totalRecord)
        {
            //FilterField :
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <WorkingdaySupplementConfigurationEntity>("Workingday_Get_GetSupplementConfigurationByRoleId", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                par         = HttpRuntime.Cache.Get(param.DbName + "-Workingday_Get_GetSupplementConfigurationByRoleId-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }
            return(result);
        }
Example #25
0
        public HrmResultEntity <StaffEntity> SaveStaffFull(List <StaffType> staff, List <WorkingProcessType> workingPorcess, List <StaffContractType> contract, List <StaffRoleType> role, StaffOnboardInfoType staffOnboardInfo
                                                           , List <StaffWorkingDayMachineType> staffWorkingDayMachine, List <StaffRelationshipsType> staffRelationship,
                                                           List <StaffAllowanceType> staffAllowance, List <StaffBenefitsType> staffBenefit, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Staff", staff.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@WorkingPorcess", workingPorcess.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@Contract", contract.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@Role", role.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffOnboardInfo", staffOnboardInfo.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffWorkingDayMachine", staffWorkingDayMachine.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffRelationship", staffRelationship.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffAllowance", staffAllowance.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffBenefit", staffBenefit.ConvertToUserDefinedDataTable(), DbType.Object);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <StaffEntity>("Staff_Update_SaveStaffFull", par, useCache: true);

            return(result);
        }
Example #26
0
        public HrmResultEntity <StaffEntity> SearchStaff(BasicParamType param, string searchKey, out int totalRecord)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@SearchKey", searchKey);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <StaffEntity>("System_Get_GlobalSearchStaff", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                par         = HttpRuntime.Cache.Get(param.DbName + "-System_Get_GlobalSearchStaff-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }

            return(result);
        }
Example #27
0
        public HrmResultEntity <StaffSocialInsuranceEntity> SaveSocialInsurance(StaffSocialInsuranceEntity data, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", data.Id);
            par.Add("@StaffId", data.StaffId);
            par.Add("@TypeId", data.TypeId);
            par.Add("@InsuranceCode", data.InsuranceCode);
            par.Add("@FamilyCode", data.FamilyCode);
            par.Add("@PlaceHold", data.PlaceHold);
            par.Add("@UnionAmount", data.UnionAmount);
            par.Add("@CurrencyId", data.CurrencyId);
            //par.Add("@DateReturn", data.DateReturn);
            par.Add("@DateReturn", data.DateReturn);
            par.Add("@StartDate", data.StartDate);
            par.Add("@EndDate", data.EndDate);
            par.Add("@Note", data.Note);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <StaffSocialInsuranceEntity>("Staff_Update_SaveSocialInsurance", par, useCache: false);

            return(result);
        }
Example #28
0
        public HrmResultEntity <StaffBonusDisciplineEntity> GetBonusDisciplineByStaff(BasicParamType param, long staffId, long type, out int totalRecord)
        {
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId, DbType.Int32);
            par.Add("@Type", type, DbType.Int32);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <StaffBonusDisciplineEntity>("Staff_Get_GetBonusDisciplineByStaff", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                par         = HttpRuntime.Cache.Get(param.DbName + "-Staff_Get_GetBonusDisciplineByStaff-" + GetKeyFromParam(par as object) + "-" + CurrentUser.UserId + "-output") as DynamicParameters;
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }

            return(result);
        }
Example #29
0
        public HrmResultEntity <WorkingdaySupplementEntity> GetTableNeedApproveWorkingdaySupplement(BasicParamType param, long staffId, int month, int year, out int totalRecord)
        {
            //FilterField :
            var par = new DynamicParameters();

            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            par.Add("@StaffId", staffId);
            par.Add("@Month", month);
            par.Add("@Year", year);
            par.Add("@TotalRecord", 0, DbType.Int32, ParameterDirection.InputOutput);
            var result = ListProcedure <WorkingdaySupplementEntity>("WorkingdaySupplement_Get_GetTableNeedApproveWorkingdaySupplement", par, dbName: param.DbName);

            if (result.StatusCode != StatusCode.AccessDenied)
            {
                totalRecord = par.GetDataOutput <int>("@TotalRecord");
            }
            else
            {
                totalRecord = 0;
            }

            return(result);
        }
Example #30
0
        public HrmResultEntity <StaffBonusDisciplineEntity> SaveBonusDiscipline(StaffBonusDisciplineEntity data, BasicParamType param)
        {
            var par = new DynamicParameters();

            par.Add("@Id", data.Id);
            par.Add("@StaffId", data.StaffId);
            par.Add("@TypeId", data.TypeId);
            par.Add("@GroupId", data.GroupId);
            par.Add("@DecisionNo", data.DecisionNo);
            par.Add("@Content", data.Content);
            par.Add("@ActionId", data.ActionId);
            par.Add("@Amount", data.Amount);
            par.Add("@CurrencyId", data.CurrencyId);
            par.Add("@SignDate", data.SignDate);
            par.Add("@ApplyDate", data.ApplyDate);
            par.Add("@Note", data.Note);
            par.Add("@Status", data.Status);
            par.Add("@PaySamePeriod", data.PaySamePeriod);
            par.Add("@BaseParam", param.ToUserDefinedDataTable(), DbType.Object);
            var result = ListProcedure <StaffBonusDisciplineEntity>("Staff_Update_SaveBonusDiscipline", par, useCache: false);

            return(result);
        }