php workflow for project

vasilev

Registered
здравейте,
обръщам се за малко помощ :)
трябва да направя workflow за проект - изпращаш заявка, оператор я обработва, изпраща я за одобрение, одобряват я .. ако не е одобрена се връща при заявителя ако е одобрена продалжава напред и така нататък докато се стигне деплойната в прод среда.
идеята ми е да въведа етапите в json обект с ID, всеки път когато мине през даден етап се записва в базата този проект с това ид с този потребител.. в този ден.
въпросът е ако се завърти няколко пъти през един и същ екип.. как да го "нарисувам" това за да се получи красиво.
направил съм го за сега с nestable меню и стрелки но това е един вид .. линейно, аз искам да го направя разчупено.
 
Имаш примерно общо 5 етапа. Всеки етап ти връща true за обработен и false за върнат.

Ако етап едно е true преминаваш на етап две, ако етап две е лъжа връщаш на етап едно. Ако си направил линейна структура наистина ще ти е леко неудобно при обработването защото в един момент когато се върне проекта назад ще имаш проблем с визуализацията. Лесно решение на проблема е два по два да визуализираш етапите, като единият или ще е в изчакване или ще е недостъпен за промяна ако не е готов предходният етап. Та ако са нечетен брой ще показваш примерно (1,2,3) 1 и 2; 2 и 3 а ако са четен (1,2,3,4) 1 и 2; 2 и 3; 3 и 4 и така нататък.
 
здравей,
аз търсих примери, но всички използват framework, в повечето случаи Symfony. А аз използвам просто код..
за момента не че е проблем но е просто линейно. всеки един етап се записва в базата, след това селектвам и показвам с order by как е преминал, все пак следващият етап е следващо ID. просто не ми харесва това..
може ли да ми покажеш пример или това е просто идея :)
мога да направя със selectbox да се избира вида на етапа - примерно helpdesk и на него да дам какво може да прави - deploy, receive request, след това project management - approve/reject тоест да са hardcode.
 
vasilev каза:
за момента не че е проблем но е просто линейно. всеки един етап се записва в базата, след това селектвам и показвам с order by как е преминал, все пак следващият етап е следващо ID. просто не ми харесва това..

Ти искаш възможност да прескачаш етапи ли? Поне аз това разбирам под разчупено.
 
Revelation каза:
vasilev каза:
за момента не че е проблем но е просто линейно. всеки един етап се записва в базата, след това селектвам и показвам с order by как е преминал, все пак следващият етап е следващо ID. просто не ми харесва това..

Ти искаш възможност да прескачаш етапи ли? Поне аз това разбирам под разчупено.
Взе ми думите от клавиатурата.

Не мога да ти дам пример защото нямам такъв просто. Така или иначе имаш линейна система, просто визуализирай данните за предходното ID и това е. Незнам как ти е устроена логиката, така ще си говорим много обчщи неща, без код.
 
прилагам екран. така изглежда сега.
не да прескоча етапи а да е все едно на Visio направено надясно наляво.. като схема


https://www.dropbox.com/s/80mipfcdvmexsxc/screen.png?dl=0
 
vasilev каза:
прилагам екран. така изглежда сега.
не да прескоча етапи а да е все едно на Visio направено надясно наляво.. като схема


https://www.dropbox.com/s/80mipfcdvmexsxc/screen.png?dl=0

http://bl.ocks.org/d3noob/8329447

Нещо такова? Въпроса е, визията ли как да направиш или как да структурираш записите?
 
трябва ми код:)
как да се нарисува.. как да се запази в json или каквото и да е, как да се записва всяка промяна в базата (какво да има), как да се изведе резултатът..

D3 го използвам но за друго, но това е tree диаграма, аз по скоро търся цялостна диаграма не линейна - ето пример:

https://www.edrawsoft.com/templates/images/make-friends-flowchart.png


Но може да се използва това, ако записвам source, аз към момента само destination записвам , което не е проблем да се промени :

http://bl.ocks.org/d3noob/5141278

освен ако няма нещо по хубаво
 
Ами това не е малко за обмисляне, но ще ти дам само примери. От там можеш да видиш как се структурират данните, които се използват за графиките и можеш да се нагодиш по тях.

https://jsplumbtoolkit.com/demos.html
https://gojs.net/latest/samples/index.html
http://resources.jointjs.com/demos/tree
 

Горе