I need a script which can compare various price lists from my suppliers against a local file containing my product data. The result of the comparing should be stored in a MySQL database. The script should run on a Ubuntu 16.04 as a cron job ans is preferably written in PHP. Any other language will also do as long as it can run as a cron job.
The script should be configurable with a settings.ini. In [login to view URL] I want to specify these things:
- Database name, database host, user, password
- Structure of our local product data. Our local product data file contains these columns: id product, SKU, Description, Producttype, MPN, EANcode1, EANcode2, EANcode3, EANcode4, Price
In [login to view URL] I need to be able to specify what columns refers to which information so we can make a comparison.
- Structure of my supplier price lists. I need to be able to specify here what columns in my suppliers price list refer to what field. The information I would like to be able to specify is: supplier ID (ID of the supplier will be entered manually) format (file format should be able to read XLS, XLSX and CSV), headerline (refers to line which identifies column names), delimiter (type of delimiter used in CSV, should be comma, semicolon or tabulator), Price (price from this supplier), EAN (column with EAN code for comparing), MPN (column with supplier artice code), Stock quantity (column with stock quantity supplier has available), Stock ETA (column with date when suplier expects new stock).
After specifying all settings the script should then compare our file with local product data against the price files from my suppliers. All files will be available in one directory. After comparing all files should be deleted so for next start of the script we can start with a fresh set of files.
Input files can be CSV, XLS or XLSX. Comparing is done on EANcode for price and EAN code or MPN for stock. So EANcode and MPN can be the unique identifiers to compare on.
The file names for our own product data file and supplier price lists and stock files should be specified in [login to view URL]
I have about 30 files with supplier prices and stock and they all have a different formatting, therefore need to be able to define the columns in settings.ini. One thing which complicates the comparing is that some suppliers use 2 files for their product data. 1 file contains the price together with EAN code and another file contains the stock and stock ETA. In this case the file containing the stock has no EANcode so we can only do matching on the MPN. In this case the script should look into the database and see it finds the MPN for the specified SupplierID. When a match is found then the stock quantity and stock ETA from this supplier should be added tot he database.
Resulting database should look like:
ProductID (our product ID from our local product data file)
SKU (our SKU from our local product data file)
Supplier ID (specified in [login to view URL])
MPN (MPN from supplier price list)
Price (Price from supplier price list)
Stock (Stock quantity from supplier price list)
Stock ETA (Stock ETA from supplier price list)
Timestamp (Timestamp generated at time script is run)
ProductID, SKU and SupplierID should have primary key
Stock ETA is specified in different ways in my supplier files. Thefore it should be normalised to DD-MM-YEAR
To make the script future proof I would like a few options:
- Possibility to integrate XML files in the future
- Possibility to extend columns. We now have i.e. Stock and Stock ETA for a supplierID but in the future I might need to add Stock Warehouse 1, Stock ETA Warehouse 1.
As defined script should run on:
- Ubuntu 16.04 server
- Run as cronjob
Any further comments are welcome. Freelancer should be able to make bug fixes, updates in the future.
Hello,
I'm ready to do the comparison script. Take a look at my feedback. It speaks a lot about me.
I'm available right now. Let's talk over chat.
Thank you,
Liviu
P.S.: I DO NOT subcontract projects like many other freelancers.
€250 EUR en 10 días
5,0 (48 comentarios)
5,0
5,0
17 freelancers están ofertando un promedio de €420 EUR por este trabajo
Hello , I read your job descriptions very well and I am glad to know you that I can do it. Please talk to me then we can discuss more in detail about this project. Please Give me Chance to work with You. Thank You..
Hi,
I will do it in Java. It will run as a cron job and it wil also run in your Ubuntu server. Let me know if you are interested, I have 5 years if experience in Java.
Thanks,
Amit
Hello!
Making this as an abstract/open-ended construct I have no particular concerns about.
There are some points you missed to elaborate on in the brief though:
1) You did not mention what 'sort of comparison' is to be made between the local and the 'remote' data, so please address this.
2) You say that the 'result of the comparison' is to be written into the database, but the suggested table structure has full product columns, can you clarify on that?
3) In the local file you list several EAN columns, how would this play out?
4) Also the 'stock in separate feed' case is not very clear, though I guess this can be clear out completely only by looking at the actual files. But one thing to touch on is the following - you say in the stock feed there's only stock and ETA date(not clear a single one or multiples) and none of the product identifiers(EAN/MPN). If a single pair, then that's easier to understand it would be applied to all products coming from this partner, but if multiple then how would the pairing be achieved?
Regards,
Dobri
Hi, I'm experienced web developer specializing in this kind of data processing scripts and I can offer for You:
- Clean, object-oriented code written according to DRY principle
- Live demo page, where You can check the script in action and view the results in nice gridlists (powered by Yii framework for demo purposes)
- Code can be tracked in Github or Bitbucket
- Future support for any modifications or fixes
Your requirements about the script and product comparison looks clear, and only thing I need for the demos, is the product XML files with little comments.
Just let me know if You're interested, and I will be happy to help.
Sincerely,
Lauris.
Hi There,
We are a team of PHP experts having, combined experience of more than 5 years in PHP and Web-Designing. We are 10+ employees working round the clock for our overseas clients.
-An Excellent HTML and CSS skills with Bootstrap (responsivenes)
An expert in Javasript/jQuery/Ajax.
An expert in core PHP for Functionality of web-site and expert in DataBase Designing.
We offer following services:-
- New plugin development/modification
- Customization of existing module.
- Admin section configuration
- Theme creation and implementation
- Any third party API integration
- Data export and import using CSV
- And of course the complete web solution development.
Please give us an opportunity to show our expertise in the same. I would love to discuss the work with you. we can proceed ahead for a long term relationship with best outputs always.
Please initiate chat so that we can discuss more and I can suggest you better.
With Regards,
Team Akkysoft