public override void Excute(string args) { // create history _schedulerHistory = SchedulerHistoryServices.Create(Id, Name.ToUpper(), false, string.Empty, string.Empty, DateTime.Now, DateTime.MaxValue); // start process if (_schedulerHistory == null) { return; } // log start SchedulerLogServices.Create(_schedulerHistory.Id, "START"); try { // progress DoTaskSample("TaskSample InProgress"); } catch (Exception ex) { // log exception SchedulerLogServices.Create(_schedulerHistory.Id, "EXCEPTION: {0}".FormatWith(ex.ToString())); } finally { // log end SchedulerLogServices.Create(_schedulerHistory.Id, "END"); } }
private void DoTaskSample(string args) { for (var i = 0; i < 10; i++) { SchedulerLogServices.Create(_schedulerHistory.Id, "{0} {1}: {2}".FormatWith(args, i, DateTime.Now)); System.Threading.Thread.Sleep(1000 * 5); } }
public override void Excute(string args) { // create history var schedulerHistory = SchedulerHistoryServices.Create(Id, Name.ToUpper(), false, string.Empty, string.Empty, DateTime.Now, DateTime.MaxValue); // start process if (schedulerHistory == null) { return; } // log start SchedulerLogServices.Create(schedulerHistory.Id, "START"); // Chạy 0:05 ngày 1 hàng tháng var month = DateTime.Now.Month; var year = DateTime.Now.Year; //Tao ngay phep mac dinh cho tat ca nhan vien var condition = @"WorkStatusId = (select top 1 Id from cat_WorkStatus where Name like N'{0}')".FormatWith(ConstStatusWorking); var listRecords = hr_RecordServices.GetAll(condition); foreach (var item in listRecords) { //tạo mới bảng phép var leave = new hr_AnnualLeaveConfigure() { RecordId = item.Id, AnnualLeaveDay = ConstLeaveDay, CreatedDate = DateTime.Now, Year = DateTime.Now.Year, AllowUseFirstYear = false, AllowUsePreviousYear = false, ExpiredDate = null, }; hr_AnnualLeaveConfigureServices.Create(leave); } SchedulerLogServices.Create(schedulerHistory.Id, "END"); }
public override void Excute(string args) { // create history var schedulerHistory = SchedulerHistoryServices.Create(Id, Name.ToUpper(), false, string.Empty, string.Empty, DateTime.Now, DateTime.MaxValue); // start process if (schedulerHistory == null) { return; } // log start SchedulerLogServices.Create(schedulerHistory.Id, "START"); // Chạy 0:05 ngày 1 hàng tháng var month = !string.IsNullOrEmpty(GetArgValue("-m")) ? Convert.ToInt32(GetArgValue("-m")) : DateTime.Now.Month; var year = !string.IsNullOrEmpty(GetArgValue("-y")) ? Convert.ToInt32(GetArgValue("-y")) : DateTime.Now.Year; var groupWorkShiftId = !string.IsNullOrEmpty(GetArgValue("-groupWorkShiftId")) ? Convert.ToInt32(GetArgValue("-groupWorkShiftId")) : 0; //get all detail workShift var order = " [StartDate] ASC "; var lstWorkShift = TimeSheetWorkShiftController.GetAll(null, false, groupWorkShiftId, null, null, null, null, month, year, order, null); var listWorkShiftIds = lstWorkShift.Select(ws => ws.Id).ToList(); if (listWorkShiftIds.Count > 0) { TimeSheetEventController.DeleteByCondition(listWorkShiftIds, null, null, null, TimeSheetAdjustmentType.Default); } //get all employee in group var listEmployeeGroupWorkShift = TimeSheetEmployeeGroupWorkShiftController.GetAll(null, null, null, groupWorkShiftId, null, null); //list recordId var listRecordIds = listEmployeeGroupWorkShift.Select(gws => gws.RecordId).Distinct().ToList(); //get symbolId undefined GetSymbolUndefined(); //get symbolId unleave GetSymbolUnLeave(); //create new timeSheet for employee foreach (var recordId in listRecordIds) { //get timeSheetCode by recordId var timeSheetCodeCondition = " [RecordId] = {0} ".FormatWith(recordId) + " AND [IsActive] = 1 "; var listTimeSheetCodes = hr_TimeSheetCodeServices.GetAll(timeSheetCodeCondition); if (listTimeSheetCodes.Count > 0) { //ma cham cong var timeSheetCodes = string.Join(",", listTimeSheetCodes.Select(t => t.Code).ToList()); var arrTimeSheetCode = FormatList(timeSheetCodes); //serial may cham cong var machineIds = listTimeSheetCodes.Select(tc => tc.MachineId).ToList(); var machineCondition = Constant.ConditionDefault; machineCondition += " AND [Id] IN ({0})".FormatWith(string.Join(",", machineIds)); var machines = hr_TimeSheetMachineService.GetAll(machineCondition); var serialNumbers = string.Join(",", machines.Select(t => t.SerialNumber).ToList()); var arrSerialNumber = FormatList(serialNumbers); foreach (var workShiftModel in lstWorkShift) { //calculate timeSheet CalculateTimeSheet(workShiftModel, recordId, string.Join(",", arrTimeSheetCode), string.Join(",", arrSerialNumber)); } } } SchedulerLogServices.Create(schedulerHistory.Id, "END"); }
public override void Excute(string args) { // create history var schedulerHistory = SchedulerHistoryServices.Create(Id, Name.ToUpper(), false, string.Empty, string.Empty, DateTime.Now, DateTime.MaxValue); // start process if (schedulerHistory == null) { return; } // log start SchedulerLogServices.Create(schedulerHistory.Id, "START"); //get param var payrollId = !string.IsNullOrEmpty(GetArgValue("-payrollId")) ? Convert.ToInt32(GetArgValue("-payrollId")) : 0; var columnCode = GetArgValue("-column"); var symbol = GetArgValue("-symbol"); var symbolArr = symbol.Split(','); if (string.IsNullOrEmpty(columnCode)) { return; } var boardList = sal_PayrollServices.GetById(payrollId); //Lay danh sach nhan vien tu bang luong var conditionPayroll = " [SalaryBoardId] = {0} ".FormatWith(payrollId); var salaryInfos = hr_SalaryBoardInfoServices.GetAll(conditionPayroll); foreach (var salaryInfo in salaryInfos) { //Kiem tra column dong da duoc tao chua, neu chua co thi tao moi khong thi cap nhat lai var conditionBoardDynamic = Constant.ConditionDefault; conditionBoardDynamic += " AND [RecordId] = {0} ".FormatWith(salaryInfo.RecordId) + " AND [ColumnCode] = '{0}' ".FormatWith(columnCode); var dynamic = hr_SalaryBoardDynamicColumnService.GetByCondition(conditionBoardDynamic); if (dynamic != null) { // get value GetValueDynamicColumn(boardList, salaryInfo, symbolArr, columnCode, dynamic); //update hr_SalaryBoardDynamicColumnService.Update(dynamic); } else { //create var colDynamic = new hr_SalaryBoardDynamicColumn() { RecordId = salaryInfo.RecordId, SalaryBoardId = payrollId, ColumnCode = columnCode, CreatedDate = DateTime.Now }; //set value GetValueDynamicColumn(boardList, salaryInfo, symbolArr, columnCode, colDynamic); //create hr_SalaryBoardDynamicColumnService.Create(colDynamic); } } SchedulerLogServices.Create(schedulerHistory.Id, "END"); }