From c31cc0caa767ea02927da85812ee2e7993c94943 Mon Sep 17 00:00:00 2001 From: vchikalkin Date: Tue, 8 Oct 2024 16:51:18 +0300 Subject: [PATCH] =?UTF-8?q?=D0=B5=D1=81=D0=BB=D0=B8=20=D0=B2=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=BB=D0=B5=20"=D0=AE=D0=9B=20=D0=BF=D0=BE=D1=81=D1=82?= =?UTF-8?q?=D0=B0=D0=B2=D1=89=D0=B8=D0=BA=D0=B0"=20selectDealerPerson=20?= =?UTF-8?q?=D1=83=D0=BA=D0=B0=D0=B7=D0=B0=D0=BD=D0=B0=20=D0=B7=D0=B0=D0=BF?= =?UTF-8?q?=D0=B8=D1=81=D1=8C,=20=D1=83=20=D0=BA=D0=BE=D1=82=D0=BE=D1=80?= =?UTF-8?q?=D0=BE=D0=B9=20=D0=92=D0=B8=D0=B4=20=D0=BA=D0=BE=D0=BD=D1=82?= =?UTF-8?q?=D1=80=D0=B0=D0=B3=D0=B5=D0=BD=D1=82=D0=B0=20(account.evo=5Fleg?= =?UTF-8?q?al=5Fform)=20=3D=20=D0=A4=D0=B8=D0=B7=D0=B8=D1=87=D0=B5=D1=81?= =?UTF-8?q?=D0=BA=D0=BE=D0=B5=20=D0=BB=D0=B8=D1=86=D0=BE=20(100=20000=2000?= =?UTF-8?q?4)=20=D0=98=20=D0=B2=20=D0=BF=D0=BE=D0=BB=D0=B5=20"=D0=AE=D0=9B?= =?UTF-8?q?=20=D0=BF=D0=BE=D1=81=D1=82=D0=B0=D0=B2=D1=89=D0=B8=D0=BA=D0=B0?= =?UTF-8?q?"=20selectDealerPerson=20=D1=83=D0=BA=D0=B0=D0=B7=D0=B0=D0=BD?= =?UTF-8?q?=D0=B0=20=D0=B7=D0=B0=D0=BF=D0=B8=D1=81=D1=8C,=20=D1=83=20?= =?UTF-8?q?=D0=BA=D0=BE=D1=82=D0=BE=D1=80=D0=BE=D0=B9=20=D0=B7=D0=BD=D0=B0?= =?UTF-8?q?=D1=87=D0=B5=D0=BD=D0=B8=D0=B5=20=D0=BF=D0=BE=D0=BB=D1=8F=20?= =?UTF-8?q?=D0=98=D0=9D=D0=9D=20account.evo=5Finn=20=3D=20=D0=B7=D0=BD?= =?UTF-8?q?=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D1=8E=20=D0=BF=D0=BE=D0=BB=D1=8F?= =?UTF-8?q?=20=D0=98=D0=9D=D0=9D=20account.evo=5Finn=20=D0=B8=D0=B7=20?= =?UTF-8?q?=D0=BF=D0=BE=D0=BB=D1=8F=20selectindAgent=20=D0=98=D0=9B=D0=98?= =?UTF-8?q?=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD=D0=B8=D1=8E=20=D0=BF?= =?UTF-8?q?=D0=BE=D0=BB=D1=8F=20=D0=98=D0=9D=D0=9D=20account.evo=5Finn=20?= =?UTF-8?q?=D0=B8=D0=B7=20=D0=BF=D0=BE=D0=BB=D1=8F=20selectcalcDoubleAgent?= =?UTF-8?q?=20=D0=98=D0=9B=D0=98=20=D0=B7=D0=BD=D0=B0=D1=87=D0=B5=D0=BD?= =?UTF-8?q?=D0=B8=D1=8E=20=D0=BF=D0=BE=D0=BB=D1=8F=20=D0=98=D0=9D=D0=9D=20?= =?UTF-8?q?account.evo=5Finn=20=D0=B8=D0=B7=20=D0=BF=D0=BE=D0=BB=D1=8F=20s?= =?UTF-8?q?electcalcBroker=20=D0=98=D0=9B=D0=98=20=D0=B7=D0=BD=D0=B0=D1=87?= =?UTF-8?q?=D0=B5=D0=BD=D0=B8=D1=8E=20=D0=BF=D0=BE=D0=BB=D1=8F=20=D0=98?= =?UTF-8?q?=D0=9D=D0=9D=20account.evo=5Finn=20=D0=B8=D0=B7=20=D0=BF=D0=BE?= =?UTF-8?q?=D0=BB=D1=8F=20selectcalcFinDepartment?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit то выводить сообщение "Нельзя закладывать АВ поставщику-ФЛ" --- apps/web/graphql/crm.query.graphql | 2 + apps/web/graphql/crm.types.ts | 8 +-- apps/web/process/supplier-agent/validation.ts | 61 ++++++++++++------- 3 files changed, 44 insertions(+), 27 deletions(-) diff --git a/apps/web/graphql/crm.query.graphql b/apps/web/graphql/crm.query.graphql index c939c49..b65f8c2 100644 --- a/apps/web/graphql/crm.query.graphql +++ b/apps/web/graphql/crm.query.graphql @@ -719,6 +719,7 @@ query GetDealerPerson($dealerPersonId: UUID!) { evo_broker_accountid evo_supplier_financing_accept evo_legal_form + evo_inn } } @@ -726,6 +727,7 @@ query GetAgent($agentid: UUID!) { agent(accountid: $agentid) { label: name value: accountid + evo_inn } } diff --git a/apps/web/graphql/crm.types.ts b/apps/web/graphql/crm.types.ts index 8245784..586dfbd 100644 --- a/apps/web/graphql/crm.types.ts +++ b/apps/web/graphql/crm.types.ts @@ -2101,14 +2101,14 @@ export type GetDealerPersonQueryVariables = Exact<{ }>; -export type GetDealerPersonQuery = { __typename?: 'Query', dealer_person: { __typename?: 'account', evo_supplier_type: number | null, evo_supplier_financing_accept: boolean | null, evo_return_leasing_dealer: boolean | null, evo_broker_accountid: string | null, evo_legal_form: number | null } | null }; +export type GetDealerPersonQuery = { __typename?: 'Query', dealer_person: { __typename?: 'account', evo_supplier_type: number | null, evo_supplier_financing_accept: boolean | null, evo_return_leasing_dealer: boolean | null, evo_broker_accountid: string | null, evo_legal_form: number | null, evo_inn: string | null } | null }; export type GetAgentQueryVariables = Exact<{ agentid: Scalars['UUID']['input']; }>; -export type GetAgentQuery = { __typename?: 'Query', agent: { __typename?: 'account', label: string | null, value: string | null } | null }; +export type GetAgentQuery = { __typename?: 'Query', agent: { __typename?: 'account', evo_inn: string | null, label: string | null, value: string | null } | null }; export type GetRewardConditionsQueryVariables = Exact<{ agentid: Scalars['UUID']['input']; @@ -2281,8 +2281,8 @@ export const GetConfigurationDocument = {"kind":"Document","definitions":[{"kind export const GetDealersDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetDealers"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"dealers"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","alias":{"kind":"Name","value":"label"},"name":{"kind":"Name","value":"name"}},{"kind":"Field","alias":{"kind":"Name","value":"value"},"name":{"kind":"Name","value":"accountid"}},{"kind":"Field","name":{"kind":"Name","value":"accountid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}}]}}]}}]} as unknown as DocumentNode; export const GetDealerDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetDealer"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"dealerId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"dealer"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accountid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"dealerId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_return_leasing_dealer"}},{"kind":"Field","name":{"kind":"Name","value":"evo_broker_accountid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}}]}}]}}]} as unknown as DocumentNode; export const GetDealerPersonsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetDealerPersons"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"dealerId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","alias":{"kind":"Name","value":"dealerPersons"},"name":{"kind":"Name","value":"dealer_persons"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"salonaccountid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"dealerId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","alias":{"kind":"Name","value":"label"},"name":{"kind":"Name","value":"name"}},{"kind":"Field","alias":{"kind":"Name","value":"value"},"name":{"kind":"Name","value":"accountid"}},{"kind":"Field","name":{"kind":"Name","value":"accountid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_inn"}},{"kind":"Field","name":{"kind":"Name","value":"evo_kpp"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}}]}}]}}]} as unknown as DocumentNode; -export const GetDealerPersonDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetDealerPerson"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"dealerPersonId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"dealer_person"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accountid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"dealerPersonId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_type"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}},{"kind":"Field","name":{"kind":"Name","value":"evo_return_leasing_dealer"}},{"kind":"Field","name":{"kind":"Name","value":"evo_broker_accountid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}},{"kind":"Field","name":{"kind":"Name","value":"evo_legal_form"}}]}}]}}]} as unknown as DocumentNode; -export const GetAgentDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetAgent"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"agentid"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"agent"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accountid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"agentid"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","alias":{"kind":"Name","value":"label"},"name":{"kind":"Name","value":"name"}},{"kind":"Field","alias":{"kind":"Name","value":"value"},"name":{"kind":"Name","value":"accountid"}}]}}]}}]} as unknown as DocumentNode; +export const GetDealerPersonDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetDealerPerson"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"dealerPersonId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"dealer_person"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accountid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"dealerPersonId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_type"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}},{"kind":"Field","name":{"kind":"Name","value":"evo_return_leasing_dealer"}},{"kind":"Field","name":{"kind":"Name","value":"evo_broker_accountid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_supplier_financing_accept"}},{"kind":"Field","name":{"kind":"Name","value":"evo_legal_form"}},{"kind":"Field","name":{"kind":"Name","value":"evo_inn"}}]}}]}}]} as unknown as DocumentNode; +export const GetAgentDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetAgent"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"agentid"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"agent"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"accountid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"agentid"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","alias":{"kind":"Name","value":"label"},"name":{"kind":"Name","value":"name"}},{"kind":"Field","alias":{"kind":"Name","value":"value"},"name":{"kind":"Name","value":"accountid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_inn"}}]}}]}}]} as unknown as DocumentNode; export const GetRewardConditionsDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetRewardConditions"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"agentid"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}},{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"currentDate"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"DateTime"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_reward_conditions"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"filterConditionGroup"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"andFilterConditionGroup"},"value":{"kind":"ListValue","values":[{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"orFilterConditions"},"value":{"kind":"ListValue","values":[{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionDateTime"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"evo_dateto","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"gte"},"value":{"kind":"Variable","name":{"kind":"Name","value":"currentDate"}}}]}}]},{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionDateTime"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"evo_dateto","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"NullValue"}}]}}]}]}}]},{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"andFilterConditions"},"value":{"kind":"ListValue","values":[{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionGuid"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"evo_agent_accountid","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"Variable","name":{"kind":"Name","value":"agentid"}}}]}}]},{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionDateTime"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"evo_datefrom","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"lte"},"value":{"kind":"Variable","name":{"kind":"Name","value":"currentDate"}}}]}}]},{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionInt"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"statecode","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"IntValue","value":"0"}}]}}]},{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionGuid"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"evo_agency_agreementid","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"neq"},"value":{"kind":"NullValue"}}]}}]}]}}]}]}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","alias":{"kind":"Name","value":"label"},"name":{"kind":"Name","value":"evo_name"}},{"kind":"Field","alias":{"kind":"Name","value":"value"},"name":{"kind":"Name","value":"evo_reward_conditionid"}},{"kind":"Field","name":{"kind":"Name","value":"evo_reward_summ"}},{"kind":"Field","name":{"kind":"Name","value":"evo_pl_type"}}]}}]}}]} as unknown as DocumentNode; export const GetRewardConditionDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetRewardCondition"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"conditionId"}},"type":{"kind":"NonNullType","type":{"kind":"NamedType","name":{"kind":"Name","value":"UUID"}}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_reward_condition"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"evo_reward_conditionid"},"value":{"kind":"Variable","name":{"kind":"Name","value":"conditionId"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_reward_summ"}},{"kind":"Field","name":{"kind":"Name","value":"evo_reduce_reward"}},{"kind":"Field","name":{"kind":"Name","value":"evo_min_reward_summ"}},{"kind":"Field","name":{"kind":"Name","value":"evo_agency_agreementidData"},"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_required_reward"}},{"kind":"Field","name":{"kind":"Name","value":"evo_reward_without_other_agent"}},{"kind":"Field","name":{"kind":"Name","value":"evo_leasingobject_price"}}]}},{"kind":"Field","name":{"kind":"Name","value":"evo_calc_reward_rules"}}]}}]}}]} as unknown as DocumentNode; export const GetSotCoefficientTypeDocument = {"kind":"Document","definitions":[{"kind":"OperationDefinition","operation":"query","name":{"kind":"Name","value":"GetSotCoefficientType"},"variableDefinitions":[{"kind":"VariableDefinition","variable":{"kind":"Variable","name":{"kind":"Name","value":"evo_id"}},"type":{"kind":"NamedType","name":{"kind":"Name","value":"String"}}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_sot_coefficient_types"},"arguments":[{"kind":"Argument","name":{"kind":"Name","value":"filterConditionGroup"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"andFilterConditions"},"value":{"kind":"ListValue","values":[{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionString"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"evo_id","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"Variable","name":{"kind":"Name","value":"evo_id"}}}]}}]},{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"filterConditionInt"},"value":{"kind":"ObjectValue","fields":[{"kind":"ObjectField","name":{"kind":"Name","value":"fieldName"},"value":{"kind":"StringValue","value":"statecode","block":false}},{"kind":"ObjectField","name":{"kind":"Name","value":"eq"},"value":{"kind":"IntValue","value":"0"}}]}}]}]}}]}}],"selectionSet":{"kind":"SelectionSet","selections":[{"kind":"Field","name":{"kind":"Name","value":"evo_sot_coefficient_typeid"}}]}}]}}]} as unknown as DocumentNode; diff --git a/apps/web/process/supplier-agent/validation.ts b/apps/web/process/supplier-agent/validation.ts index 9e215ec..92cc088 100644 --- a/apps/web/process/supplier-agent/validation.ts +++ b/apps/web/process/supplier-agent/validation.ts @@ -190,7 +190,7 @@ export function createValidationSchema(context: ValidationContext) { dealerBroker, dealerBrokerRewardCondition, dealerBrokerRewardSumm, - dealerPerson, + dealerPerson: dealerPersonId, dealerRewardCondition, dealerRewardSumm, finDepartmentRewardCondtion, @@ -248,12 +248,12 @@ export function createValidationSchema(context: ValidationContext) { if ( dealerRewardSumm > 0 && - Boolean(dealerPerson) && - ((dealerPerson === dealerBroker && dealerBrokerRewardSumm > 0) || - (dealerPerson === indAgent && indAgentRewardSumm > 0) || - (dealerPerson === calcDoubleAgent && calcDoubleAgentRewardSumm > 0) || - (dealerPerson === calcBroker && calcBrokerRewardSum > 0) || - (dealerPerson === calcFinDepartment && finDepartmentRewardSumm > 0)) + Boolean(dealerPersonId) && + ((dealerPersonId === dealerBroker && dealerBrokerRewardSumm > 0) || + (dealerPersonId === indAgent && indAgentRewardSumm > 0) || + (dealerPersonId === calcDoubleAgent && calcDoubleAgentRewardSumm > 0) || + (dealerPersonId === calcBroker && calcBrokerRewardSum > 0) || + (dealerPersonId === calcFinDepartment && finDepartmentRewardSumm > 0)) ) { ctx.addIssue({ code: z.ZodIssueCode.custom, @@ -265,7 +265,7 @@ export function createValidationSchema(context: ValidationContext) { if ( dealerBrokerRewardSumm > 0 && Boolean(dealerBroker) && - ((dealerBroker === dealerPerson && dealerRewardSumm > 0) || + ((dealerBroker === dealerPersonId && dealerRewardSumm > 0) || (dealerBroker === indAgent && indAgentRewardSumm > 0) || (dealerBroker === calcDoubleAgent && calcDoubleAgentRewardSumm > 0) || (dealerBroker === calcBroker && calcBrokerRewardSum > 0) || @@ -281,7 +281,7 @@ export function createValidationSchema(context: ValidationContext) { if ( indAgentRewardSumm > 0 && Boolean(indAgent) && - ((indAgent === dealerPerson && dealerRewardSumm > 0) || + ((indAgent === dealerPersonId && dealerRewardSumm > 0) || (indAgent === dealerBroker && dealerBrokerRewardSumm > 0) || (indAgent === calcDoubleAgent && calcDoubleAgentRewardSumm > 0) || (indAgent === calcBroker && calcBrokerRewardSum > 0) || @@ -297,7 +297,7 @@ export function createValidationSchema(context: ValidationContext) { if ( calcDoubleAgentRewardSumm > 0 && Boolean(calcDoubleAgent) && - ((calcDoubleAgent === dealerPerson && dealerRewardSumm > 0) || + ((calcDoubleAgent === dealerPersonId && dealerRewardSumm > 0) || (calcDoubleAgent === dealerBroker && dealerBrokerRewardSumm > 0) || (calcDoubleAgent === indAgent && indAgentRewardSumm > 0) || (calcDoubleAgent === calcBroker && calcBrokerRewardSum > 0) || @@ -313,7 +313,7 @@ export function createValidationSchema(context: ValidationContext) { if ( calcBrokerRewardSum > 0 && Boolean(calcBroker) && - ((calcBroker === dealerPerson && dealerRewardSumm > 0) || + ((calcBroker === dealerPersonId && dealerRewardSumm > 0) || (calcBroker === dealerBroker && dealerBrokerRewardSumm > 0) || (calcBroker === indAgent && indAgentRewardSumm > 0) || (calcBroker === calcDoubleAgent && calcDoubleAgentRewardSumm > 0) || @@ -329,7 +329,7 @@ export function createValidationSchema(context: ValidationContext) { if ( finDepartmentRewardSumm > 0 && Boolean(calcFinDepartment) && - ((calcFinDepartment === dealerPerson && dealerRewardSumm > 0) || + ((calcFinDepartment === dealerPersonId && dealerRewardSumm > 0) || (calcFinDepartment === dealerBroker && dealerBrokerRewardSumm > 0) || (calcFinDepartment === indAgent && indAgentRewardSumm > 0) || (calcFinDepartment === calcDoubleAgent && calcDoubleAgentRewardSumm > 0) || @@ -360,7 +360,7 @@ export function createValidationSchema(context: ValidationContext) { }, }); - if (!dealerPerson && !dealer?.evo_return_leasing_dealer) + if (!dealerPersonId && !dealer?.evo_return_leasing_dealer) ctx.addIssue({ code: z.ZodIssueCode.custom, message: 'Не заполнено поле', @@ -377,7 +377,7 @@ export function createValidationSchema(context: ValidationContext) { const { validateRewardSum, validateRewardWithoutOtherAgent } = helper({ ...context, ctx }); await validateRewardSum({ - agentid: dealerPerson, + agentid: dealerPersonId, conditionId: dealerRewardCondition, sum: dealerRewardSumm, sumFieldName: 'tbxDealerRewardSumm', @@ -385,13 +385,13 @@ export function createValidationSchema(context: ValidationContext) { let evo_broker_accountid: string | null = null; - if (dealerPerson) { + if (dealerPersonId) { const { data: { dealer_person }, } = await apolloClient.query({ query: CRMTypes.GetDealerPersonDocument, variables: { - dealerPersonId: dealerPerson, + dealerPersonId, }, }); @@ -482,22 +482,37 @@ export function createValidationSchema(context: ValidationContext) { }); } - if (dealerPerson) { + if (dealerPersonId) { const { data: { dealer_person }, } = await apolloClient.query({ query: CRMTypes.GetDealerPersonDocument, variables: { - dealerPersonId: dealerPerson, + dealerPersonId, }, }); + // eslint-disable-next-line no-inner-declarations + async function isAgentEqualsToDealerPerson(agentid: string | null) { + if (!agentid) return false; + if (agentid === dealerPersonId) return true; + + const { data } = await apolloClient.query({ + query: CRMTypes.GetAgentDocument, + variables: { + agentid, + }, + }); + + return data?.agent?.evo_inn === dealer_person?.evo_inn; + } + if ( - dealer_person?.evo_legal_form === 100_000_004 && - ((indAgent && dealerPerson === indAgent) || - (calcDoubleAgent && dealerPerson === calcDoubleAgent) || - (calcBroker && dealerPerson === calcBroker) || - (calcFinDepartment && dealerPerson === calcFinDepartment)) + (dealer_person?.evo_legal_form === 100_000_004 && + ((await isAgentEqualsToDealerPerson(indAgent)) || + (await isAgentEqualsToDealerPerson(calcDoubleAgent)))) || + (await isAgentEqualsToDealerPerson(calcBroker)) || + (await isAgentEqualsToDealerPerson(calcFinDepartment)) ) { ctx.addIssue({ code: z.ZodIssueCode.custom,