using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace FrameworkDAL.Query.AutoScheduler { public static class AutoSchedulerQB { public const string GET_JOB_DEFINE_BY_MENU = @" SELECT JOBID AS JobDefineId, JOBNAME AS JobName, SCHEDULERID AS SchedulerId, CRITERIACONFIGID AS CriteriaConfigId, TENANTID AS BaseTenantId FROM MJOBDEFINE WHERE MENUID = @menuid; "; public const string GET_SCHEDULER_BY_ID = @" SELECT SCHEDULERID AS SchedulerId, SCHEDULERNAME AS SchedulerName FROM TSCHEDULER WHERE SCHEDULERID = @SchedulerId; "; public const string GET_CRITERIA_BY_ID = @" SELECT CRITERIACONFIGID AS CriteriaConfigId, CRITERIACONFIGNAME AS CriteriaConfigName FROM TCRITERIACONFIG WHERE CRITERIACONFIGID = @CriteriaConfigId; "; public const string GET_MACTION_BY_JOBDEFINE = @" SELECT ACTIONID AS MActionId, DESCRIPTION AS MActionDescription, REPLYTO AS MActionReplyTo, TODELIVERYTYPE AS MActionToDeliveryType, TOCONTENTTYPE AS MActionToContentType, SENDTO AS MActionTo, MAILCCDELIVERYTYPE AS MActionMailCCDeliveryType, MAILCCCONTENTTYPE AS MActionMailCCContentType, MAILCC AS MActionMailCC, MAILBCCDELIVERYTYPE AS MActionMailBCCDeliveryType, MAILBCCCONTENTTYPE AS MActionMailBCCContentType, MAILBCC AS MActionMailBCC, EXPORTFORMAT AS MActionExportFormat, REPORTTYPE AS MActionReportType, ACTIONTYPE AS MActionType, ACTIONFORTYPE AS MActionActionForType, TYPE AS MActionType, REPORTID AS ReportId, REPORTFORMATID AS ReportFormatId, TEMPLATEID AS TemplateId, MAILFILEID AS MailFileId, EVENTTYPEID AS EventTypeId, GROUPBYFIELDS AS MActionGroupByFields FROM MACTION WHERE JOBID = @JobDefineId; "; public const string GET_EVENT_TYPE_BY_ENTITY = @" SELECT EVENTTYPEID AS EventTypeId, EVENTTYPENAME AS EventTypeName FROM MEVENTTYPE WHERE ENTITYID = @EntityId "; public const string GET_MACTION_BY_EVENT_TYPE = @" SELECT ACTIONID AS MActionId, DESCRIPTION AS MActionDescription, REPLYTO AS MActionReplyTo, TODELIVERYTYPE AS MActionToDeliveryType, TOCONTENTTYPE AS MActionToContentType, SENDTO AS MActionTo, MAILCCDELIVERYTYPE AS MActionMailCCDeliveryType, MAILCCCONTENTTYPE AS MActionMailCCContentType, MAILCC AS MActionMailCC, MAILBCCDELIVERYTYPE AS MActionMailBCCDeliveryType, MAILBCCCONTENTTYPE AS MActionMailBCCContentType, MAILBCC AS MActionMailBCC, EXPORTFORMAT AS MActionExportFormat, REPORTTYPE AS MActionReportType, ACTIONTYPE AS MActionType, ACTIONFORTYPE AS MActionActionForType, TYPE AS MActionType, REPORTID AS ReportId, REPORTFORMATID AS ReportFormatId, TEMPLATEID AS TemplateId, MAILFILEID AS MailFileId, EVENTTYPEID AS EventTypeId, GROUPBYFIELDS AS MActionGroupByFields FROM MACTION WHERE EVENTTYPEID = @EventTypeId; "; public const string GET_EMPLOYEE_BY_ID = @" SELECT EMPLOYEEID AS EmployeeId, EMPLOYEENAME AS Name FROM MEMPLOYEE WHERE EMPLOYEEID = @employeeid;"; public const string GET_ROLE_BY_ID = @" SELECT ROLEID AS RoleId, ROLENAME AS Name FROM MROLE WHERE ROLEID = @RoleId;"; public const string GET_PARTY_BY_ID = @" SELECT PARTYID AS PartyId, PARTYNAME AS PartyName FROM MPARTY WHERE PARTYID = @PartyId"; public const string GET_USER_BY_ID = @" SELECT USERID AS UserId, USERNAME AS Name FROM MUSER WHERE USERID = @UserId"; public const string GET_CONTACT_BY_ID = @" SELECT CONTACTID AS ContactId, NAME AS Name FROM MCONTACT WHERE CONTACTID = @ContactId;"; public const string GET_USERGROUP_BY_ID = @" SELECT USERGROUPID AS UserGroupId, USERGROUPNAME AS Name FROM MUSERGROUP WHERE USERGROUPID = @UserGroupId"; public const string GET_NEXT_NUMBER = @"EXEC dbo.sp_AutoScheduler @EntityName"; public const string INSERT_JOBDEFINE = @"INSERT INTO MJOBDEFINE ( JOBID, JOBNAME, SCHEDULERID, WEBSERVICEID, CRITERIACONFIGID, STATUS, CREATEDBYID, CREATEDON, MODIFIEDBYID, MODIFIEDON, MENUID, RUNASUSEID, RUNASROLEID, RUNASOUID, RUNASBRANCHID, RUNASWORKPARTYID, RUNASSTOREID, RUNASPERIODID ) VALUES ( @JobId, @JobName, @SchedulerId, @WebServiceId, @CriteriaConfigId, 1, @CreatedById, GETDATE(), @ModifiedById, GETDATE(), @MenuId, @RunAsUserId, @RunAsRoleId, @RunAsOUId, @RunAsBranchId, @RunAsWorkPartyId, @RunAsStoreId, @RunAsPeriodId ); -- Return the same JobId that was inserted SELECT @JobId AS JobId; "; public const string INSERT_MACTION = @" INSERT INTO MACTION ( ACTIONID, DESCRIPTION, EVENTTYPEID, ACTIONTYPE, REPLYTO, TEMPLATEID, TODELIVERYTYPE, TOCONTENTTYPE, SENDTO, MAILCCDELIVERYTYPE, MAILCCCONTENTTYPE, MAILCC, MAILBCCDELIVERYTYPE, MAILBCCCONTENTTYPE, MAILBCC, EXPORTFORMAT, REPORTTYPE, REPORTFORMATID, MAILFILEID, JOBID, WEBSERVICEID, CRITERIACONFIGID, SORTORDER, SOURCETYPE, STATUS, VERSION, CREATEDBYID, CREATEDON, MODIFIEDBYID, MODIFIEDON, MENUID, TYPE, URIPARAMETERVALUE, ACTIONFORTYPE, REPORTID, GROUPBYFIELDS, REMARKS, REPORTVIEWID, MAILLISTID, ISPREVIOUSVERSION, TENANTID, ISFILEBASED ) VALUES ( @ActionId, @Description, @EventTypeId, @ActionType, @ReplyTo, @TemplateId, @ToDeliveryType, @ToContentType, @To, @MailCCDeliveryType, @MailCCContentType, @MailCC, @MailBCCDeliveryType, @MailBCCContentType, @MailBCC, @ExportFormat, @ReportType, @ReportFormatId, @MailFileId, @JobId, @WebServiceId, @CriteriaConfigId, @SortOrder, @SourceType, @Status, @Version, @CreatedById, GETDATE(), @ModifiedById, GETDATE(), @MenuId, 0, -- TYPE default @UriTemplateValue, @ActionForType, @ReportId, '', -- GROUPBYFIELDS default @Remarks, @ReportViewId, @MailListId, 0, -- ISPREVIOUSVERSION default @TenantId, @IsFileBased ); "; public const string UPDATE_MACTION_JOBID = @" UPDATE MACTION SET JOBID = @JobId WHERE ACTIONID = @ActionId; "; public const string INSERT_EVENTTYPEACTION = @"INSERT INTO MEVENTTYPEACTION ( EVENTTYPEACTIONID, EVENTTYPEID, TRIGGERREPORTID, STATUS, CREATEDBYID, CREATEDON, MODIFIEDBYID, MODIFIEDON ) VALUES ( @EventTypeActionId, @EventTypeId, @ReportId, 1, @CreatedById, GETDATE(), @ModifiedById, GETDATE() ); ; "; public const string INSERT_EVENTTYPEACTIONDETAIL = @"INSERT INTO MEVENTTYPEACTIONDETAIL ( EVENTTYPEACTIONDETAILID, EVENTTYPEACTIONID, SLNO, ACTIONID, DESCRIPTION, ISACTIVE, ISDIRECTCALL, ISSCHEDULERCALL, EVALCONDITION, SOURCETYPE ) VALUES ( @DetailId, @EventTypeActionId, @SlNo, @ActionId, @Description, 1, -- ISACTIVE = true 0, -- ISDIRECTCALL = false 1, -- ISSCHEDULERCALL = true (since it’s part of AutoScheduler) @EvalCondition, 2 -- SOURCETYPE = GB5 or App Source (match your environment) ); ; "; public const string UPDATE_JOBDEFINE = @" UPDATE MJOBDEFINE SET JOBNAME = @JobName, SCHEDULERID = @SchedulerId, WEBSERVICEID = @WebServiceId, CRITERIACONFIGID = @CriteriaConfigId, MODIFIEDBYID = @ModifiedById, MODIFIEDON = GETDATE() WHERE JOBID = @JobId; "; public const string UPDATE_MACTION = @" UPDATE MACTION SET DESCRIPTION = @Description, EVENTTYPEID = @EventTypeId, ACTIONTYPE = @ActionType, REPLYTO = @ReplyTo, TEMPLATEID = @TemplateId, TODELIVERYTYPE = @ToDeliveryType, TOCONTENTTYPE = @ToContentType, SENDTO = @To, MAILCCDELIVERYTYPE = @MailCCDeliveryType, MAILCCCONTENTTYPE = @MailCCContentType, MAILCC = @MailCC, MAILBCCDELIVERYTYPE = @MailBCCDeliveryType, MAILBCCCONTENTTYPE = @MailBCCContentType, MAILBCC = @MailBCC, EXPORTFORMAT = @ExportFormat, REPORTTYPE = @ReportType, REPORTFORMATID = @ReportFormatId, MAILFILEID = @MailFileId, JOBID = @JobId, WEBSERVICEID = @WebServiceId, CRITERIACONFIGID = @CriteriaConfigId, MODIFIEDBYID = @ModifiedById, MODIFIEDON = GETDATE(), URIPARAMETERVALUE = @UriTemplateValue, ACTIONFORTYPE = @ActionForType, REPORTID = @ReportId, REMARKS = @Remarks, REPORTVIEWID = @ReportViewId WHERE ACTIONID = @ActionId; "; public const string UPDATE_EVENTTYPEACTION = @" UPDATE MEVENTTYPEACTION SET EVENTTYPEID = @EventTypeId, TRIGGERREPORTID = @ReportId, MODIFIEDBYID = @ModifiedById, MODIFIEDON = GETDATE() WHERE EVENTTYPEACTIONID = @EventTypeActionId; "; public const string UPDATE_EVENTTYPEACTIONDETAIL = @" UPDATE MEVENTTYPEACTIONDETAIL SET DESCRIPTION = @Description, EVALCONDITION = @EvalCondition, MODIFIEDON = GETDATE() WHERE EVENTTYPEACTIONDETAILID = @DetailId; "; } }