Избежать втаскивания логики
От: e.thrash  
Дата: 24.05.20 10:57
Оценка:
В компании есть система с апрувалами. То есть электронные приказы и согласования.
Также есть 2 разных внутренних сайта, которые работают с разными базаами, но которые запускают эти апрувалы
через один апрувал сервис.
Исходники апрувал сервиса есть. Это по сути прокси, который умеет только запускать апрувал и обновлять статус апрувала.

Сейчас возникла задача, что на втором сайте после прохождения апрувала надо делать еще логику.
Самое простое это ее втащить в этот сервис, но это же апрувал сервис и не хочется туда втаскивать.
Есть вариант с джобом в базе, но тогда не будет транзакционности и логика усложняется

Какие идеи?
Re: Избежать втаскивания логики
От: wildwind Россия  
Дата: 24.05.20 11:07
Оценка:
Здравствуйте, e.thrash, Вы писали:

ET>Какие идеи?


Мало данных.
Что за логика? Она относится к сайту или к чему?
Re: Избежать втаскивания логики
От: Буравчик Россия  
Дата: 25.05.20 18:15
Оценка:
Здравствуйте, e.thrash, Вы писали:

ET>Сейчас возникла задача, что на втором сайте после прохождения апрувала надо делать еще логику.

ET>Какие идеи?

Сделать еще один сервис — надстройку над апрувал сервисом.
Второй сайт пусть работает с этим новым сервисом.
Best regards, Буравчик
Re: Избежать втаскивания логики
От: diez_p  
Дата: 09.11.20 22:39
Оценка:
Здравствуйте, e.thrash, Вы писали:

ET>Какие идеи?


Кто потом с этими аппрувалами будет работать?
Аппрувал сервис заапрувил, отправил нотификацию, что approved{DocId=<id>, ApproveSendTime=now()}, а дальше кому надо пусть тот и работает.
Re: Избежать втаскивания логики
От: Miroff Россия  
Дата: 10.11.20 06:42
Оценка:
Здравствуйте, e.thrash, Вы писали:

ET>Какие идеи?


Рефакторить аппрувал сервис, очевидно. А лучше выкосить его и воткнуть нормальный BPMN workflow engine в котором, внезапно, таких вопросов не возникает.
Re[2]: Избежать втаскивания логики
От: Слава  
Дата: 10.11.20 07:00
Оценка:
Здравствуйте, Miroff, Вы писали:

M>А лучше выкосить его и воткнуть нормальный BPMN workflow engine в котором, внезапно, таких вопросов не возникает.


А нормальный — это какой именно?
Re[3]: Избежать втаскивания логики
От: Miroff Россия  
Дата: 10.11.20 11:45
Оценка:
Здравствуйте, Слава, Вы писали:

С>А нормальный — это какой именно?


Camunda, например. Вообще их сотня разных, на любой вкус и кошелек
Re[4]: Избежать втаскивания логики
От: Ночной Смотрящий Россия  
Дата: 25.12.20 14:02
Оценка:
Здравствуйте, Miroff, Вы писали:

M>Camunda, например. Вообще их сотня разных, на любой вкус и кошелек


И все кривые, монстроидальные и тормозные
... << RSDN@Home 1.3.17 alpha 5 rev. 62>>
Re: Избежать втаскивания логики
От: bnk СССР http://unmanagedvisio.com/
Дата: 25.12.20 15:06
Оценка:
Здравствуйте, e.thrash, Вы писали:

ET>Сейчас возникла задача, что на втором сайте после прохождения апрувала надо делать еще логику.

ET>Самое простое это ее втащить в этот сервис, но это же апрувал сервис и не хочется туда втаскивать.
ET>Есть вариант с джобом в базе, но тогда не будет транзакционности и логика усложняется

ET>Какие идеи?


Я бы стал делать самое простое (втащить нужную логику в этот аппрувал сервис).
Это не просто "аппрувал сервис" это "аппрувал сервис компании X", делать его "чистым" (повторно используемым), насколько я понимаю, никому не нужно.

Также изменением текущего сервиса решается проблема миграции текущих аппрувалов в новую систему.
Я думаю об этом тоже хорошо бы подумать.
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.