using System; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading.Tasks; namespace MMDAL.Query.ChargeElement { public static class ChargeElementQB { public const string GET_CHARGEELEMENT = @" SELECT CE.CHARGEELEMENTID AS ChargeElementId, CE.CHARGEELEMENTCODE AS ChargeElementCode, CE.CHARGEELEMENTNAME AS ChargeElementName, CE.CHARGENATURE AS ChargeElementNature, CE.CHARGESECTION AS ChargeElementSection, CE.INPUTVALUETYPE AS ChargeElementValueType, CE.INPUTTYPE AS ChargeElementInputType, CE.OPERATIONTYPE AS ChargeElementOperationType, CE.PARTYACCOUNTTYPE AS ChargeElementPartyAccountType, CE.PARTYACCOUNTID AS PartyAccountId, PA.ACCOUNTCODE AS PartyAccountCode, PA.ACCOUNTNAME AS PartyAccountName, CE.PARTYSUBACCOUNTID AS PartySubAccountId, PSA.SUBACCOUNTCODE AS PartySubAccountCode, PSA.SUBACCOUNTNAME AS PartySubAccountName, CE.PARTYLINKTYPE AS ChargeElementPartyLinkType, CE.CONTRAACCOUNTTYPE AS ChargeElementContraAccountType, CE.CONTRAACCOUNTID AS ContraAccountId, CA.ACCOUNTCODE AS ContraAccountCode, CA.ACCOUNTNAME AS ContraAccountName, CE.CONTRASUBACCOUNTID AS ContraSubAccountId, CSA.SUBACCOUNTCODE AS ContraSubAccountCode, CSA.SUBACCOUNTNAME AS ContraSubAccountName, CE.DEFAULTINPUTVALUE AS ChargeElementDefaultInputValue, CE.DEFAULTMINIMUMVALUE AS ChargeElementDefaultMinimumValue, CE.DEFAULTMAXIMUMVALUE AS ChargeElementDefaultMaximumValue, CE.INPUTDATAFIELDID AS InputDataFieldId, CE.MINIMUMDATAFIELDID AS MinimumDataFieldId, CE.MAXIMUMDATAFIELDID AS MaximumDataFieldId, CE.LOADVALIDATIONTYPE AS ChargeElementLoadValidationType, CE.TOLERANCETYPE AS ChargeElementToleranceType, CE.TOLERANCEPLUSVALUE AS ChargeElementTolerancePlusValue, CE.TOLERANCEMINUSVALUE AS ChargeElementToleranceMinusValue, CE.DEPENDSONCHARGEELEMENT AS DependsOnChargeElementId, CE.FORMULAID AS FormulaId, CE.PARTYACCOUNTCRITERIACONFIG AS PartyAccountCriteriaConfigId, CE.CONTRAACCOUNTCRITERIACONFIG AS ContraAccountCriteriaConfigId, CE.PARTYACCOUNTMERGE AS ChargeElementPartyAccountMerge, CE.CONTRAACCOUNTMERGE AS ChargeElementContraAccountMerge, CE.INPUTDATAFIELDTYPE AS ChargeElementInputDataFieldType, CE.MINIMUMDATAFIELDTYPE AS ChargeElementMinimumDataFieldType, CE.MAXIMUMDATAFIELDTYPE AS ChargeElementMaximumDataFieldType, CE.SORTORDER AS ChargeElementSortOrder, CE.STATUS AS ChargeElementStatus, CE.VERSION AS ChargeElementVersion, CE.CREATEDBYID AS ChargeElementCreatedById, UC.USERNAME AS ChargeElementCreatedByName, CE.CREATEDON AS ChargeElementCreatedOn, CE.MODIFIEDBYID AS ChargeElementModifiedById, UM.USERNAME AS ChargeElementModifiedByName, CE.MODIFIEDON AS ChargeElementModifiedOn, CE.SOURCETYPE AS ChargeElementSourceType, CE.TENANTID AS TenantId, T.TENANTNAME AS TenantName FROM MCHARGEELEMENT CE LEFT JOIN MUSER UC ON CE.CREATEDBYID = UC.USERID LEFT JOIN MUSER UM ON CE.MODIFIEDBYID = UM.USERID LEFT JOIN MTENANT T ON CE.TENANTID = T.TENANTID LEFT JOIN MPARTYACCOUNT PA ON CE.PARTYACCOUNTID = PA.ACCOUNTID LEFT JOIN MPARTYSUBACCOUNT PSA ON CE.PARTYSUBACCOUNTID = PSA.SUBACCOUNTID LEFT JOIN MCONTRAACCOUNT CA ON CE.CONTRAACCOUNTID = CA.ACCOUNTID LEFT JOIN MCONTRASUBACCOUNT CSA ON CE.CONTRASUBACCOUNTID = CSA.SUBACCOUNTID WHERE CE.CHARGEELEMENTID = @ChargeElementId; "; public const string SAVE_CHARGEELEMENT = @" INSERT INTO MCHARGEELEMENT ( CHARGEELEMENTID, CHARGEELEMENTCODE, CHARGEELEMENTNAME, CHARGENATURE, CHARGESECTION, INPUTVALUETYPE, INPUTTYPE, OPERATIONTYPE, PARTYACCOUNTTYPE, PARTYACCOUNTID, PARTYSUBACCOUNTID, PARTYLINKTYPE, CONTRAACCOUNTTYPE, CONTRAACCOUNTID, CONTRASUBACCOUNTID, DEFAULTINPUTVALUE, DEFAULTMINIMUMVALUE, DEFAULTMAXIMUMVALUE, INPUTDATAFIELDID, MINIMUMDATAFIELDID, MAXIMUMDATAFIELDID, LOADVALIDATIONTYPE, TOLERANCETYPE, TOLERANCEPLUSVALUE, TOLERANCEMINUSVALUE, DEPENDSONCHARGEELEMENT, FORMULAID, PARTYACCOUNTCRITERIACONFIG, CONTRAACCOUNTCRITERIACONFIG, PARTYACCOUNTMERGE, CONTRAACCOUNTMERGE, INPUTDATAFIELDTYPE, MINIMUMDATAFIELDTYPE, MAXIMUMDATAFIELDTYPE, SORTORDER, STATUS, VERSION, CREATEDON, MODIFIEDON, SOURCETYPE, CREATEDBYID, MODIFIEDBYID, TENANTID ) VALUES ( @ChargeElementId, @ChargeElementCode, @ChargeElementName, @ChargeElementNature, @ChargeElementSection, @ChargeElementValueType, @ChargeElementInputType, @ChargeElementOperationType, @ChargeElementPartyAccountType, @PartyAccountId, @PartySubAccountId, @ChargeElementPartyLinkType, @ChargeElementContraAccountType, @ContraAccountId, @ContraSubAccountId, @ChargeElementDefaultInputValue, @ChargeElementDefaultMinimumValue, @ChargeElementDefaultMaximumValue, @InputDataFieldId, @MinimumDataFieldId, @MaximumDataFieldId, @ChargeElementLoadValidationType, @ChargeElementToleranceType, @ChargeElementTolerancePlusValue, @ChargeElementToleranceMinusValue, @DependsOnChargeElementId, @FormulaId, @PartyAccountCriteriaConfigId, @ContraAccountCriteriaConfigId, @ChargeElementPartyAccountMerge, @ChargeElementContraAccountMerge, @ChargeElementInputDataFieldType, @ChargeElementMinimumDataFieldType, @ChargeElementMaximumDataFieldType, @ChargeElementSortOrder, @ChargeElementStatus, @ChargeElementVersion, GETDATE(), GETDATE(), @ChargeElementSourceType, 1, 1, @TenantId );"; public const string UPDATE_CHARGEELEMENT = @" UPDATE MCHARGEELEMENT SET CHARGEELEMENTCODE = @ChargeElementCode, CHARGEELEMENTNAME = @ChargeElementName, CHARGENATURE = @ChargeElementNature, CHARGESECTION = @ChargeElementSection, INPUTVALUETYPE = @ChargeElementValueType, INPUTTYPE = @ChargeElementInputType, OPERATIONTYPE = @ChargeElementOperationType, PARTYACCOUNTTYPE = @ChargeElementPartyAccountType, PARTYACCOUNTID = @PartyAccountId, PARTYSUBACCOUNTID = @PartySubAccountId, PARTYLINKTYPE = @ChargeElementPartyLinkType, CONTRAACCOUNTTYPE = @ChargeElementContraAccountType, CONTRAACCOUNTID = @ContraAccountId, CONTRASUBACCOUNTID = @ContraSubAccountId, DEFAULTINPUTVALUE = @ChargeElementDefaultInputValue, DEFAULTMINIMUMVALUE = @ChargeElementDefaultMinimumValue, DEFAULTMAXIMUMVALUE = @ChargeElementDefaultMaximumValue, INPUTDATAFIELDID = @InputDataFieldId, MINIMUMDATAFIELDID = @MinimumDataFieldId, MAXIMUMDATAFIELDID = @MaximumDataFieldId, LOADVALIDATIONTYPE = @ChargeElementLoadValidationType, TOLERANCETYPE = @ChargeElementToleranceType, TOLERANCEPLUSVALUE = @ChargeElementTolerancePlusValue, TOLERANCEMINUSVALUE = @ChargeElementToleranceMinusValue, DEPENDSONCHARGEELEMENT = @DependsOnChargeElementId, FORMULAID = @FormulaId, PARTYACCOUNTCRITERIACONFIG = @PartyAccountCriteriaConfigId, CONTRAACCOUNTCRITERIACONFIG = @ContraAccountCriteriaConfigId, PARTYACCOUNTMERGE = @ChargeElementPartyAccountMerge, CONTRAACCOUNTMERGE = @ChargeElementContraAccountMerge, INPUTDATAFIELDTYPE = @ChargeElementInputDataFieldType, MINIMUMDATAFIELDTYPE = @ChargeElementMinimumDataFieldType, MAXIMUMDATAFIELDTYPE = @ChargeElementMaximumDataFieldType, SORTORDER = @ChargeElementSortOrder, STATUS = @ChargeElementStatus, VERSION = @ChargeElementVersion, MODIFIEDON = GETDATE(), MODIFIEDBYID = @ChargeElementModifiedById, TENANTID = @TenantId WHERE CHARGEELEMENTID = @ChargeElementId;"; public const string DELETE_CHARGEELEMENT = @" DELETE FROM MCHARGEELEMENT WHERE CHARGEELEMENTID = @ChargeElementId; "; public const string GET_SELECTLIST_CHARGEELEMENT = @" SELECT CE.CHARGEELEMENTID AS ChargeElementPicklistId, CE.CHARGEELEMENTCODE AS ChargeElementPicklistCode, CE.CHARGEELEMENTNAME AS ChargeElementPicklistName FROM MCHARGEELEMENT CE WHERE CE.STATUS = 1; "; } }