A Java-applet to design workflow processes (drag and drop) must be rewritten in HTML/Javascript.
- The existing applet reads a given XML file ([login to view URL]) that contains available plugins
- Plugins are grouped into some categories (tabs)
- These plugins can be dragged onto a canvas an can be connected. Each plugin has four connectors, two for input (north and west), and two act as output (east and south). So it is only possible to connect the east and south to north and west.
- Each plugin can have up to 7 configurable options (four input fields, two drop-downs, one checkbox)
- The workflow can be saved
- It is possible to open existing workflows and edit/save them
-----
Your task is to create a HTML5/Javascript implementation of the workflow designer, and a server function to read/store workflows files (can be PHP or JSP).
-----
Here is a link to the existing applet with demo content that needs to be replaced:
[login to view URL]
-----
Here is a (partly-working) click dummy demo I have started:
[login to view URL]
This is just a dummy to vizualize what I need. You can use the design, or start from scratch.
- The tabs on the left work
- It is possible to drag icons, but they tend to disappear (needs to be redone)
- Reading exsting workflows, saving does not work (needs to be done)
- Editing properties does not work (needs to be done)
- The icons should snap to a grid
- Icons shall be removed from the grid if they are dragged to the left over the categories. The "Trashcan" is optional
- "Last run: 0.00s" can be ignored (this is from the server process that executes this workflow - out of scope for this project).
Some remarks:
- Available Plugins are stored in a file called "[login to view URL]". The format is old. You can define a JSON-File instead of the xml file.
- The created workflows are stored in separate files (for example "[login to view URL]").
You can come up with your own JSON format to store workflows, or keep the existing XML format given as an example. I would prefer JSON for this too, since the XML is old.
-----
The created workflow definition file ([login to view URL])
-----
Each plugin that is placed on the workflow canvas has an entry in the xml file. Currently, a XML fomat is used, for example:
<DATASET>
<ID>2</ID> ---> Unique ID
<NAME>M_RECEIVER?</NAME> ---> a name (varchar 255), Input Field 1
<X>26</X> --> position on the workflow canvas, a canvas has 50x50 squares, so a maximum of 2.500 icons can be placed
<Y>19</Y> --> position on the workflow canvas, a canvas has 50x50 squares, so a maximum of 2.500 icons can be placed
<TYPE>IfElse</TYPE> --> Type (which plugin)
<NORTH>0</NORTH> --> if the plugins top connector is connected to another plugin, the ID of the connected plugin is stored here
<EAST>6</EAST> --> if the plugins right connector is connected to another plugin, the ID of the connected plugin is stored here
<SOUTH>19</SOUTH> --> if the is connected to another plugin on the bottom connector, the ID of the connected plugin is stored here
<WEST>39</WEST> --> if the is connected to another plugin on the left connector, the ID of the connected plugin is stored here
<KEY>M_RECEIVER</KEY> -> Input Field 2
<VAL></VAL> -> Input Field 3
<DUMMY></DUMMY> -> Input Field 4
<FIG1>9</FIG1> - Select Box #1, if an entry has been selected, it conains the number of the entry
<FIG2>0</FIG2> - Select Box #1
<CHECKBOX>0</CHECKBOX> - Checkbox
</DATASET>
-----
Third Party Libraries
You may use open source third party libraries such as JQUERY and other, but only libraries where commercial use is allowed (MIT License or Apache 2.0)
-----
Applicants
If you think you can do it, please include the Libraries you plan to use in your proposal.
I would use jQuery UI for the drag & drop and tabs. I see that you have also used jQuery UI in your dummy, but you do not use the drag & drop feature of jQuery. jQuery UI would work much easier with less code.
For the connections I would use oCanvas ([login to view URL]). I am already using it for another project here on freelancer (it is quite similar to this), it works fine with jQuery.
You can check my previous work here on freelancer, I did a few similar projects. Let me know if you have any questions or if you would like to see some samples.
Regards
€2.000 EUR trong 20 ngày
5,0 (16 nhận xét)
6,4
6,4
15 freelancer chào giá trung bình €2.436 EUR cho công việc này
Let's discuss more about project to finalize the proper scope with estimated cost and time so ping me over the freelancer chat.
I am myself developer so you will directly work with me. No mediators. No managers. No subcontractors.
Please check my my recent work for the technical expertise along with reviews & feedback on my profile page.
Hello Client,
We read the description and We would like to discuss the Libraries with you which we are going to use,
Kindly message us so that we can assist you in your project,
Thanks and Regards:
Albert B
Third Party Libraries : Nodejs and jQuery
Hi sir,
I can do your project perfectly and exactly without any risk. If you wanna confirm me, please check my work history and portfolio kindly. Then, you can know about my ability that can do your project enough. Especially, this is my experienced and successful work before. Also i have fluent English skill, so you can communicate with me very easily via voice call and thus, you can save your time. No problem for working with me now. So if we work and do our best for one purpose, we can get great success each other. Please call me and discuss about your project seriously, then you can be at ease about your project. I'm always here and ready to talk with you right now. I'll wait for your call. Thanks.
Hi,
We are well equip to this kind of task, can handle it pretty well using Javascript/HTML5 implementation. We can work 24/7 with my Team. In fact, We have already done related to this job especially on xml stuff. Let me know the best of your time so we can discuss further based on your requirements and we can move forward to the next step.
Thanks,
Joseph C Ocero
Hi,
"I just reviewed your job description given by you i can easily provide similar solution to you and i am ready to start work immediately" It is doable for me to accomplish this work within given Time frame.
Please initiate an interview to discuss about the project, I will be happy to assist you, Please let me know your availability to proceed further. I am always online on skype chat, Please feel free to contact me. I can assure you to deliver quality product with 100% satisfaction.
Looking forward to have a valuable response from your end!
Regards,
Ravinder