namespace FrameworkDAL.Query.EIPConversation.EIPRestActionCfgAdmin { // INDEX required on MEIPRESTACTIONCFG: IX_MEIPRESTACTIONCFG_TENANT_STATUS on (TENANTID, STATUS) public static class EIPRestActionCfgAdminQB { public const string GET_CFG_LIST = @" SELECT R.RESTACTIONCFGID AS RestActionCfgId, R.TENANTID AS TenantId, R.ACTIONID AS ActionId, A.ACTIONCODE AS ActionCode, R.HTTPMETHOD AS HttpMethod, R.ENDPOINTPATH AS EndpointPath, R.PAYLOADTEMPLATE AS PayloadTemplate, R.HEADERSJSON AS HeadersJson, R.TIMEOUTSECONDS AS TimeoutSeconds, R.CONFIGVERSION AS ConfigVersion, R.ISACTIVE AS IsActive, R.VERSION AS Version, R.STATUS AS Status, R.CREATEDBYID AS CreatedById, CB.EMPLOYEENAME AS CreatedByName, R.CREATEDON AS CreatedOn, R.MODIFIEDBYID AS ModifiedById, MB.EMPLOYEENAME AS ModifiedByName, R.MODIFIEDON AS ModifiedOn FROM MEIPRESTACTIONCFG R INNER JOIN MEIPACTIONREGISTRY A ON R.ACTIONID = A.ACTIONID LEFT JOIN MEMPLOYEE CB ON R.CREATEDBYID = CB.EMPLOYEEID LEFT JOIN MEMPLOYEE MB ON R.MODIFIEDBYID = MB.EMPLOYEEID WHERE R.TENANTID = @TenantId AND R.STATUS = 1 AND (@ActionId = 0 OR R.ACTIONID = @ActionId) ORDER BY R.RESTACTIONCFGID"; public const string GET_CFG = @" SELECT R.RESTACTIONCFGID AS RestActionCfgId, R.TENANTID AS TenantId, R.ACTIONID AS ActionId, A.ACTIONCODE AS ActionCode, R.HTTPMETHOD AS HttpMethod, R.ENDPOINTPATH AS EndpointPath, R.PAYLOADTEMPLATE AS PayloadTemplate, R.HEADERSJSON AS HeadersJson, R.TIMEOUTSECONDS AS TimeoutSeconds, R.CONFIGVERSION AS ConfigVersion, R.ISACTIVE AS IsActive, R.VERSION AS Version, R.STATUS AS Status, R.CREATEDBYID AS CreatedById, CB.EMPLOYEENAME AS CreatedByName, R.CREATEDON AS CreatedOn, R.MODIFIEDBYID AS ModifiedById, MB.EMPLOYEENAME AS ModifiedByName, R.MODIFIEDON AS ModifiedOn FROM MEIPRESTACTIONCFG R INNER JOIN MEIPACTIONREGISTRY A ON R.ACTIONID = A.ACTIONID LEFT JOIN MEMPLOYEE CB ON R.CREATEDBYID = CB.EMPLOYEEID LEFT JOIN MEMPLOYEE MB ON R.MODIFIEDBYID = MB.EMPLOYEEID WHERE R.RESTACTIONCFGID = @RestActionCfgId AND R.TENANTID = @TenantId AND R.STATUS = 1"; // RESTACTIONCFGID is a plain INT PK (NOT IDENTITY) public const string INSERT_CFG = @" INSERT INTO MEIPRESTACTIONCFG ( RESTACTIONCFGID, TENANTID, ACTIONID, HTTPMETHOD, ENDPOINTPATH, PAYLOADTEMPLATE, HEADERSJSON, TIMEOUTSECONDS, CONFIGVERSION, ISACTIVE, VERSION, STATUS, SORTORDER, CREATEDBYID, CREATEDON, MODIFIEDBYID, MODIFIEDON, SOURCETYPE ) VALUES ( @RestActionCfgId, @TenantId, @ActionId, @HttpMethod, @EndpointPath, @PayloadTemplate, @HeadersJson, @TimeoutSeconds, @ConfigVersion, @IsActive, @Version, 1, 9999, @CreatedById, GETDATE(), @CreatedById, GETDATE(), 1 )"; public const string UPDATE_CFG = @" UPDATE MEIPRESTACTIONCFG SET ACTIONID = @ActionId, HTTPMETHOD = @HttpMethod, ENDPOINTPATH = @EndpointPath, PAYLOADTEMPLATE = @PayloadTemplate, HEADERSJSON = @HeadersJson, TIMEOUTSECONDS = @TimeoutSeconds, CONFIGVERSION = @ConfigVersion, ISACTIVE = @IsActive, VERSION = @Version, MODIFIEDBYID = @ModifiedById, MODIFIEDON = GETDATE() WHERE RESTACTIONCFGID = @RestActionCfgId AND TENANTID = @TenantId AND STATUS = 1"; public const string DELETE_CFG = @" UPDATE MEIPRESTACTIONCFG SET STATUS = 0, MODIFIEDBYID = @ModifiedById, MODIFIEDON = GETDATE() WHERE RESTACTIONCFGID = @RestActionCfgId AND TENANTID = @TenantId AND STATUS = 1"; public const string EXISTS_ACTIONID = @" SELECT CASE WHEN EXISTS ( SELECT 1 FROM MEIPACTIONREGISTRY WHERE ACTIONID = @ActionId AND STATUS = 1 ) THEN 1 ELSE 0 END"; } }