Built motion from commit (unavailable).|2.4.4
[motion2.git] / server / api / saProductQuotation / saProductQuotation.controller.js
index 96d5ab8..c9160eb 100644 (file)
@@ -15,4 +15,4 @@
 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                        *
 // *                                                                       *
 // *************************************************************************
-var _0xd8b0=['length','query','hasOwnProperty','nolimit','sort','pick','where','merge','map','type','key','VIRTUAL','options','SAProductQuotation','includeAll','include','findAll','rows','catch','show','params','fields','find','create','body','destroy','describe','InvoiceId','sequelize','transaction','companyId','productName','productCode','productDescription','pricelistName','discount','tax','subscriptionId','subscriptionName','subscriptionMonthly','quantity','unitName','SAInvoiceDetail','automaticInvoice','SAInvoice','result','push','all','No\x20product\x20to\x20assign\x20invoice.\x20Invoice\x20not\x20created!!','log','TCL:\x20exports.automaticInvoice\x20->\x20err','send','companyName','typeName','ProductPriceListId','netPrice','agentFullname','note','SAProformaDetail','automaticProforma','SAProforma','WARNING','TCL:\x20exports.automaticProforma\x20->\x20err','SequelizeUniqueConstraintError','Duplicate\x20entry.','html-pdf','eml-format','request-promise','moment','bluebird','mustache','util','to-csv','ejs','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','../../config/utils','../../mysqldb','sendStatus','status','end','json','count','offset','limit','set','Content-Range','reject','save','update','then','stack','name','index','rawAttributes','keys','filters','model','attributes','intersection'];(function(_0x414a33,_0x5bf179){var _0x1922bd=function(_0xa5ca9c){while(--_0xa5ca9c){_0x414a33['push'](_0x414a33['shift']());}};_0x1922bd(++_0x5bf179);}(_0xd8b0,0xad));var _0x0d8b=function(_0x20a584,_0xe384a5){_0x20a584=_0x20a584-0x0;var _0x4b41a8=_0xd8b0[_0x20a584];return _0x4b41a8;};'use strict';var pdf=require(_0x0d8b('0x0'));var emlformat=require(_0x0d8b('0x1'));var rimraf=require('rimraf');var zipdir=require('zip-dir');var jsonpatch=require('fast-json-patch');var rp=require(_0x0d8b('0x2'));var moment=require(_0x0d8b('0x3'));var BPromise=require(_0x0d8b('0x4'));var Mustache=require(_0x0d8b('0x5'));var util=require(_0x0d8b('0x6'));var path=require('path');var sox=require('sox');var csv=require(_0x0d8b('0x7'));var ejs=require(_0x0d8b('0x8'));var fs=require('fs');var _=require(_0x0d8b('0x9'));var squel=require('squel');var crypto=require(_0x0d8b('0xa'));var jsforce=require(_0x0d8b('0xb'));var deskjs=require('desk.js');var toCsv=require(_0x0d8b('0x7'));var querystring=require(_0x0d8b('0xc'));var Papa=require(_0x0d8b('0xd'));var Redis=require(_0x0d8b('0xe'));var authService=require(_0x0d8b('0xf'));var qs=require(_0x0d8b('0x10'));var hardwareService=require(_0x0d8b('0x11'));var logger=require(_0x0d8b('0x12'))('api');var utils=require(_0x0d8b('0x13'));var config=require('../../config/environment');var db=require(_0x0d8b('0x14'))['db'];function respondWithStatusCode(_0xc574a3,_0x340cc4){_0x340cc4=_0x340cc4||0xcc;return function(_0x92cdd8){if(_0x92cdd8){return _0xc574a3[_0x0d8b('0x15')](_0x340cc4);}return _0xc574a3[_0x0d8b('0x16')](_0x340cc4)[_0x0d8b('0x17')]();};}function respondWithResult(_0x31a8cc,_0x1d4bbc){_0x1d4bbc=_0x1d4bbc||0xc8;return function(_0x2ce75e){if(_0x2ce75e){return _0x31a8cc[_0x0d8b('0x16')](_0x1d4bbc)[_0x0d8b('0x18')](_0x2ce75e);}};}function respondWithFilteredResult(_0x1567ce,_0x2d4e1c){return function(_0x4f6f21){if(_0x4f6f21){var _0x23eb7b=_0x4f6f21[_0x0d8b('0x19')],_0xa86349=_0x2d4e1c['offset'],_0x17f7df=_0x2d4e1c[_0x0d8b('0x1a')]+_0x2d4e1c[_0x0d8b('0x1b')],_0xe2e167;if(_0x17f7df>=_0x23eb7b){_0x17f7df=_0x23eb7b;_0xe2e167=0xc8;}else{_0xe2e167=0xce;}_0x1567ce[_0x0d8b('0x16')](_0xe2e167);return _0x1567ce[_0x0d8b('0x1c')](_0x0d8b('0x1d'),_0xa86349+'-'+_0x17f7df+'/'+_0x23eb7b)[_0x0d8b('0x18')](_0x4f6f21);}return null;};}function patchUpdates(_0x264b39){return function(_0xa3612a){try{jsonpatch['apply'](_0xa3612a,_0x264b39,!![]);}catch(_0x27512e){return BPromise[_0x0d8b('0x1e')](_0x27512e);}return _0xa3612a[_0x0d8b('0x1f')]();};}function saveUpdates(_0x143372,_0x24e8ed){return function(_0x5b709c){if(_0x5b709c){return _0x5b709c[_0x0d8b('0x20')](_0x143372)[_0x0d8b('0x21')](function(_0x50ec1e){return _0x50ec1e;});}return null;};}function removeEntity(_0x4f0a1a,_0x33fb87){return function(_0x54a9a7){if(_0x54a9a7){return _0x54a9a7['destroy']()['then'](function(){_0x4f0a1a[_0x0d8b('0x16')](0xcc)[_0x0d8b('0x17')]();});}};}function handleEntityNotFound(_0x214778,_0x38efc8){return function(_0x221071){if(!_0x221071){_0x214778[_0x0d8b('0x15')](0x194);}return _0x221071;};}function handleError(_0x30980c,_0x4562cb){_0x4562cb=_0x4562cb||0x1f4;return function(_0x27b695){logger['error'](_0x27b695[_0x0d8b('0x22')]);if(_0x27b695[_0x0d8b('0x23')]){delete _0x27b695['name'];}_0x30980c[_0x0d8b('0x16')](_0x4562cb)['send'](_0x27b695);};}exports[_0x0d8b('0x24')]=function(_0x234bdd,_0xa2af02){var _0x4fe6f9={'raw':!![]},_0x59a905={},_0x28f639={'count':0x0,'rows':[]};var _0x3ef745=db['SAProductQuotation'][_0x0d8b('0x25')];_0x59a905['model']=_[_0x0d8b('0x26')](_0x3ef745);_0x59a905['query']=_[_0x0d8b('0x26')](_0x234bdd['query']);_0x59a905[_0x0d8b('0x27')]=_['intersection'](_0x59a905[_0x0d8b('0x28')],_0x59a905['query']);_0x4fe6f9[_0x0d8b('0x29')]=_[_0x0d8b('0x2a')](_0x59a905[_0x0d8b('0x28')],qs['fields'](_0x234bdd['query']['fields']));_0x4fe6f9[_0x0d8b('0x29')]=_0x4fe6f9['attributes'][_0x0d8b('0x2b')]?_0x4fe6f9['attributes']:_0x59a905['model'];if(!_0x234bdd[_0x0d8b('0x2c')][_0x0d8b('0x2d')](_0x0d8b('0x2e'))){_0x4fe6f9[_0x0d8b('0x1b')]=qs[_0x0d8b('0x1b')](_0x234bdd[_0x0d8b('0x2c')][_0x0d8b('0x1b')]);_0x4fe6f9[_0x0d8b('0x1a')]=qs['offset'](_0x234bdd[_0x0d8b('0x2c')][_0x0d8b('0x1a')]);}_0x4fe6f9['order']=qs[_0x0d8b('0x2f')](_0x234bdd[_0x0d8b('0x2c')][_0x0d8b('0x2f')]);_0x4fe6f9['where']=qs[_0x0d8b('0x27')](_[_0x0d8b('0x30')](_0x234bdd[_0x0d8b('0x2c')],_0x59a905[_0x0d8b('0x27')]));if(_0x234bdd[_0x0d8b('0x2c')]['filter']){_0x4fe6f9[_0x0d8b('0x31')]=_[_0x0d8b('0x32')](_0x4fe6f9['where'],{'$or':_[_0x0d8b('0x33')](_0x3ef745,function(_0x3cc3ee){if(_0x3cc3ee[_0x0d8b('0x34')][_0x0d8b('0x35')]!==_0x0d8b('0x36')){var _0x519088={};_0x519088[_0x3cc3ee['field']]={'$like':'%'+_0x234bdd[_0x0d8b('0x2c')]['filter']+'%'};return _0x519088;}})});}_0x4fe6f9=_['merge']({},_0x4fe6f9,_0x234bdd[_0x0d8b('0x37')]);var _0x2e279c={'where':_0x4fe6f9[_0x0d8b('0x31')]};return db[_0x0d8b('0x38')][_0x0d8b('0x19')](_0x2e279c)[_0x0d8b('0x21')](function(_0x579324){_0x28f639[_0x0d8b('0x19')]=_0x579324;if(_0x234bdd[_0x0d8b('0x2c')][_0x0d8b('0x39')]){_0x4fe6f9[_0x0d8b('0x3a')]=[{'all':!![]}];}return db[_0x0d8b('0x38')][_0x0d8b('0x3b')](_0x4fe6f9);})[_0x0d8b('0x21')](function(_0x5c980b){_0x28f639[_0x0d8b('0x3c')]=_0x5c980b;return _0x28f639;})[_0x0d8b('0x21')](respondWithFilteredResult(_0xa2af02,_0x4fe6f9))[_0x0d8b('0x3d')](handleError(_0xa2af02,null));};exports[_0x0d8b('0x3e')]=function(_0x59d3ad,_0xe0bf42){var _0x4b4bde={'raw':!![],'where':{'id':_0x59d3ad[_0x0d8b('0x3f')]['id']}},_0x37b26c={};_0x37b26c[_0x0d8b('0x28')]=_[_0x0d8b('0x26')](db[_0x0d8b('0x38')][_0x0d8b('0x25')]);_0x37b26c[_0x0d8b('0x2c')]=_[_0x0d8b('0x26')](_0x59d3ad[_0x0d8b('0x2c')]);_0x37b26c[_0x0d8b('0x27')]=_['intersection'](_0x37b26c['model'],_0x37b26c['query']);_0x4b4bde['attributes']=_['intersection'](_0x37b26c[_0x0d8b('0x28')],qs[_0x0d8b('0x40')](_0x59d3ad[_0x0d8b('0x2c')]['fields']));_0x4b4bde['attributes']=_0x4b4bde[_0x0d8b('0x29')][_0x0d8b('0x2b')]?_0x4b4bde[_0x0d8b('0x29')]:_0x37b26c['model'];if(_0x59d3ad[_0x0d8b('0x2c')][_0x0d8b('0x39')]){_0x4b4bde['include']=[{'all':!![]}];}_0x4b4bde=_['merge']({},_0x4b4bde,_0x59d3ad[_0x0d8b('0x37')]);return db['SAProductQuotation'][_0x0d8b('0x41')](_0x4b4bde)['then'](handleEntityNotFound(_0xe0bf42,null))['then'](respondWithResult(_0xe0bf42,null))[_0x0d8b('0x3d')](handleError(_0xe0bf42,null));};exports[_0x0d8b('0x42')]=function(_0x5a75c7,_0x5ebe8a){return db['SAProductQuotation']['create'](_0x5a75c7[_0x0d8b('0x43')],{})[_0x0d8b('0x21')](respondWithResult(_0x5ebe8a,0xc9))[_0x0d8b('0x3d')](handleError(_0x5ebe8a,null));};exports['update']=function(_0xb0910e,_0x1afe8a){if(_0xb0910e[_0x0d8b('0x43')]['id']){delete _0xb0910e[_0x0d8b('0x43')]['id'];}return db[_0x0d8b('0x38')][_0x0d8b('0x41')]({'where':{'id':_0xb0910e[_0x0d8b('0x3f')]['id']}})[_0x0d8b('0x21')](handleEntityNotFound(_0x1afe8a,null))[_0x0d8b('0x21')](saveUpdates(_0xb0910e[_0x0d8b('0x43')],null))[_0x0d8b('0x21')](respondWithResult(_0x1afe8a,null))[_0x0d8b('0x3d')](handleError(_0x1afe8a,null));};exports[_0x0d8b('0x44')]=function(_0x3e569b,_0x570af8){return db[_0x0d8b('0x38')][_0x0d8b('0x41')]({'where':{'id':_0x3e569b[_0x0d8b('0x3f')]['id']}})[_0x0d8b('0x21')](handleEntityNotFound(_0x570af8,null))['then'](removeEntity(_0x570af8,null))[_0x0d8b('0x3d')](handleError(_0x570af8,null));};exports['describe']=function(_0x5d29ab,_0x39a31d){return db[_0x0d8b('0x38')][_0x0d8b('0x45')]()[_0x0d8b('0x21')](respondWithResult(_0x39a31d,null))['catch'](handleError(_0x39a31d,null));};function assignProductQuotationToProformaInvoice(_0x131579,_0x1106d6){if(_0x131579[_0x0d8b('0x43')]['id']){delete _0x131579[_0x0d8b('0x43')]['id'];}return db[_0x0d8b('0x38')]['update']({'ProformaId':_0x131579['body']['ProformaId'],'InvoiceId':_0x131579['body'][_0x0d8b('0x46')]},{'where':{'QuotationId':_0x131579[_0x0d8b('0x3f')]['id'],'ProformaId':_0x131579['query']['ProformaId']||{'$eq':null},'InvoiceId':_0x131579[_0x0d8b('0x2c')][_0x0d8b('0x46')]||{'$eq':null}},'transaction':_0x1106d6});}exports['updateBulk']=function(_0x5ef6c3,_0x900906,_0xeeefd4){return db[_0x0d8b('0x47')][_0x0d8b('0x48')](function(_0x2d5519){return assignProductQuotationToProformaInvoice(_0x5ef6c3,_0x2d5519)['then'](function(_0x2de903){return _0x900906[_0x0d8b('0x15')](0xc8);})['catch'](handleError(_0x900906,null));});};function addInvoiceDetail(_0x580580,_0xf6a773,_0x3f2d95){var _0x546fef={'companyName':_0x580580['companyName'],'companyId':_0x580580[_0x0d8b('0x49')],'productName':_0x580580[_0x0d8b('0x4a')],'productCode':_0x580580[_0x0d8b('0x4b')],'productDescription':_0x580580[_0x0d8b('0x4c')],'typeName':_0x580580['typeName'],'pricelistName':_0x580580[_0x0d8b('0x4d')],'priceListId':_0x580580['ProductPriceListId'],'netPrice':_0x580580['netPrice'],'discount':_0x580580[_0x0d8b('0x4e')],'tax':_0x580580[_0x0d8b('0x4f')],'agentFullname':_0x580580['agentFullname'],'note':_0x580580['note'],'subscriptionId':_0x580580[_0x0d8b('0x50')],'subscriptionName':_0x580580[_0x0d8b('0x51')],'subscriptionMonthly':_0x580580[_0x0d8b('0x52')],'quantity':_0x580580[_0x0d8b('0x53')],'InvoiceId':_0xf6a773,'unitName':_0x580580[_0x0d8b('0x54')]};return db[_0x0d8b('0x55')][_0x0d8b('0x42')](_0x546fef,{'transaction':_0x3f2d95})[_0x0d8b('0x21')](function(){return db['SAProductQuotation'][_0x0d8b('0x20')]({'InvoiceId':_0xf6a773},{'where':{'id':_0x580580['id']},'transaction':_0x3f2d95});});}exports[_0x0d8b('0x56')]=function(_0x3a3d33,_0x3c7efb,_0x3fb9ea){if(_0x3a3d33[_0x0d8b('0x43')]['id']){delete _0x3a3d33[_0x0d8b('0x43')]['id'];}return db[_0x0d8b('0x47')][_0x0d8b('0x48')](function(_0x4bfdf1){return db[_0x0d8b('0x57')][_0x0d8b('0x42')](_0x3a3d33[_0x0d8b('0x43')],{'transaction':_0x4bfdf1})[_0x0d8b('0x21')](function(_0x43ad22){console['log'](_0x0d8b('0x58'),_0x43ad22);var _0x2d6284=_0x3a3d33[_0x0d8b('0x3f')]['id'];return db[_0x0d8b('0x38')][_0x0d8b('0x3b')]({'where':{'QuotationId':_0x2d6284,'productAsset':{'$ne':0x1},'ProformaId':{'$eq':null},'InvoiceId':{'$eq':null}},'raw':!![],'logging':console['log']})['then'](function(_0x3b1166){if(_0x3b1166[_0x0d8b('0x2b')]>0x0){var _0x3e4a41=[];for(var _0xbbb520=0x0;_0xbbb520<_0x3b1166['length'];_0xbbb520++){_0x3e4a41[_0x0d8b('0x59')](addInvoiceDetail(_0x3b1166[_0xbbb520],_0x43ad22['id'],_0x4bfdf1));}return BPromise[_0x0d8b('0x5a')](_0x3e4a41);}else{var _0x8c0bbe={'errors':[{'type':'WARNING','message':_0x0d8b('0x5b')}]};throw _0x8c0bbe;}});});})['then'](function(){return _0x3c7efb[_0x0d8b('0x15')](0xc8);})[_0x0d8b('0x3d')](function(_0x1efce6){console[_0x0d8b('0x5c')](_0x0d8b('0x5d'),_0x1efce6);if(_0x1efce6[_0x0d8b('0x23')]==='SequelizeUniqueConstraintError'){var _0x1efce6={'errors':[{'message':'Duplicate\x20entry.'}]};}_0x3c7efb[_0x0d8b('0x16')](0x1f4)[_0x0d8b('0x5e')](_0x1efce6);});};function addProformaDetail(_0xafeeb0,_0x33a614,_0x48025e){var _0x19e097={'companyName':_0xafeeb0[_0x0d8b('0x5f')],'companyId':_0xafeeb0[_0x0d8b('0x49')],'productName':_0xafeeb0[_0x0d8b('0x4a')],'productCode':_0xafeeb0[_0x0d8b('0x4b')],'productDescription':_0xafeeb0[_0x0d8b('0x4c')],'typeName':_0xafeeb0[_0x0d8b('0x60')],'pricelistName':_0xafeeb0[_0x0d8b('0x4d')],'priceListId':_0xafeeb0[_0x0d8b('0x61')],'netPrice':_0xafeeb0[_0x0d8b('0x62')],'discount':_0xafeeb0['discount'],'tax':_0xafeeb0['tax'],'agentFullname':_0xafeeb0[_0x0d8b('0x63')],'note':_0xafeeb0[_0x0d8b('0x64')],'subscriptionId':_0xafeeb0['subscriptionId'],'subscriptionName':_0xafeeb0[_0x0d8b('0x51')],'subscriptionMonthly':_0xafeeb0['subscriptionMonthly'],'quantity':_0xafeeb0['quantity'],'ProformaId':_0x33a614};return db[_0x0d8b('0x65')][_0x0d8b('0x42')](_0x19e097,{'transaction':_0x48025e})['then'](function(){return db['SAProductQuotation'][_0x0d8b('0x20')]({'ProformaId':_0x33a614},{'where':{'id':_0xafeeb0['id']},'transaction':_0x48025e});});}exports[_0x0d8b('0x66')]=function(_0x70e4b2,_0x435090,_0x2ab72b){if(_0x70e4b2[_0x0d8b('0x43')]['id']){delete _0x70e4b2[_0x0d8b('0x43')]['id'];}return db['sequelize'][_0x0d8b('0x48')](function(_0x5878c2){return db[_0x0d8b('0x67')][_0x0d8b('0x42')](_0x70e4b2[_0x0d8b('0x43')],{'transaction':_0x5878c2})[_0x0d8b('0x21')](function(_0x49f610){console[_0x0d8b('0x5c')]('result',_0x49f610);var _0x3a356b=_0x70e4b2[_0x0d8b('0x3f')]['id'];return db[_0x0d8b('0x38')][_0x0d8b('0x3b')]({'where':{'QuotationId':_0x3a356b,'productAsset':{'$ne':0x1},'ProformaId':{'$eq':null},'InvoiceId':{'$eq':null}},'raw':!![],'logging':console[_0x0d8b('0x5c')]})[_0x0d8b('0x21')](function(_0x3e927c){if(_0x3e927c[_0x0d8b('0x2b')]>0x0){var _0x266a69=[];for(var _0x44aa74=0x0;_0x44aa74<_0x3e927c['length'];_0x44aa74++){_0x266a69[_0x0d8b('0x59')](addProformaDetail(_0x3e927c[_0x44aa74],_0x49f610['id'],_0x5878c2));}return BPromise['all'](_0x266a69);}else{var _0x3e4121={'errors':[{'type':_0x0d8b('0x68'),'message':'No\x20product\x20to\x20assign\x20proforma.\x20Proforma\x20not\x20created!!'}]};throw _0x3e4121;}});});})[_0x0d8b('0x21')](function(){return _0x435090['sendStatus'](0xc8);})[_0x0d8b('0x3d')](function(_0x445a00){console[_0x0d8b('0x5c')](_0x0d8b('0x69'),_0x445a00);if(_0x445a00[_0x0d8b('0x23')]===_0x0d8b('0x6a')){var _0x445a00={'errors':[{'message':_0x0d8b('0x6b')}]};}_0x435090['status'](0x1f4)[_0x0d8b('0x5e')](_0x445a00);});};
\ No newline at end of file
+var _0xbaf0=['name','send','index','SAProductQuotation','rawAttributes','model','keys','query','intersection','attributes','fields','length','hasOwnProperty','nolimit','order','sort','filters','pick','filter','where','merge','map','key','VIRTUAL','field','options','includeAll','include','findAll','rows','show','params','catch','create','body','find','describe','ProformaId','InvoiceId','transaction','companyName','companyId','productName','productCode','typeName','pricelistName','ProductPriceListId','netPrice','discount','tax','agentFullname','subscriptionName','subscriptionMonthly','quantity','unitName','SAInvoiceDetail','sequelize','SAInvoice','log','result','all','WARNING','TCL:\x20exports.automaticInvoice\x20->\x20err','SequelizeUniqueConstraintError','note','subscriptionId','SAProformaDetail','automaticProforma','SAProforma','No\x20product\x20to\x20assign\x20proforma.\x20Proforma\x20not\x20created!!','TCL:\x20exports.automaticProforma\x20->\x20err','Duplicate\x20entry.','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','mustache','util','path','sox','to-csv','ejs','lodash','squel','crypto','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','../../mysqldb','sendStatus','status','end','json','count','offset','limit','Content-Range','apply','update','then','destroy','error','stack'];(function(_0x33c2af,_0x163198){var _0x13c04a=function(_0x4de68e){while(--_0x4de68e){_0x33c2af['push'](_0x33c2af['shift']());}};_0x13c04a(++_0x163198);}(_0xbaf0,0x12a));var _0x0baf=function(_0x19e35c,_0x29cd1e){_0x19e35c=_0x19e35c-0x0;var _0x3e1fe8=_0xbaf0[_0x19e35c];return _0x3e1fe8;};'use strict';var pdf=require('html-pdf');var emlformat=require(_0x0baf('0x0'));var rimraf=require(_0x0baf('0x1'));var zipdir=require(_0x0baf('0x2'));var jsonpatch=require(_0x0baf('0x3'));var rp=require(_0x0baf('0x4'));var moment=require(_0x0baf('0x5'));var BPromise=require('bluebird');var Mustache=require(_0x0baf('0x6'));var util=require(_0x0baf('0x7'));var path=require(_0x0baf('0x8'));var sox=require(_0x0baf('0x9'));var csv=require(_0x0baf('0xa'));var ejs=require(_0x0baf('0xb'));var fs=require('fs');var _=require(_0x0baf('0xc'));var squel=require(_0x0baf('0xd'));var crypto=require(_0x0baf('0xe'));var jsforce=require('jsforce');var deskjs=require(_0x0baf('0xf'));var toCsv=require('to-csv');var querystring=require(_0x0baf('0x10'));var Papa=require(_0x0baf('0x11'));var Redis=require(_0x0baf('0x12'));var authService=require(_0x0baf('0x13'));var qs=require(_0x0baf('0x14'));var hardwareService=require(_0x0baf('0x15'));var logger=require(_0x0baf('0x16'))(_0x0baf('0x17'));var utils=require(_0x0baf('0x18'));var config=require(_0x0baf('0x19'));var db=require(_0x0baf('0x1a'))['db'];function respondWithStatusCode(_0x51d93c,_0x5a53e2){_0x5a53e2=_0x5a53e2||0xcc;return function(_0x465dd7){if(_0x465dd7){return _0x51d93c[_0x0baf('0x1b')](_0x5a53e2);}return _0x51d93c[_0x0baf('0x1c')](_0x5a53e2)[_0x0baf('0x1d')]();};}function respondWithResult(_0x5a0583,_0x2ab33e){_0x2ab33e=_0x2ab33e||0xc8;return function(_0x49e44b){if(_0x49e44b){return _0x5a0583[_0x0baf('0x1c')](_0x2ab33e)[_0x0baf('0x1e')](_0x49e44b);}};}function respondWithFilteredResult(_0x7fbf67,_0x2bc381){return function(_0xb8339e){if(_0xb8339e){var _0x469599=_0xb8339e[_0x0baf('0x1f')],_0x4f80a8=_0x2bc381[_0x0baf('0x20')],_0x4cd79d=_0x2bc381[_0x0baf('0x20')]+_0x2bc381[_0x0baf('0x21')],_0x2312c7;if(_0x4cd79d>=_0x469599){_0x4cd79d=_0x469599;_0x2312c7=0xc8;}else{_0x2312c7=0xce;}_0x7fbf67[_0x0baf('0x1c')](_0x2312c7);return _0x7fbf67['set'](_0x0baf('0x22'),_0x4f80a8+'-'+_0x4cd79d+'/'+_0x469599)[_0x0baf('0x1e')](_0xb8339e);}return null;};}function patchUpdates(_0x1ef0e5){return function(_0x3e9cb4){try{jsonpatch[_0x0baf('0x23')](_0x3e9cb4,_0x1ef0e5,!![]);}catch(_0x42b7f2){return BPromise['reject'](_0x42b7f2);}return _0x3e9cb4['save']();};}function saveUpdates(_0x1410ec,_0x154f48){return function(_0x32e839){if(_0x32e839){return _0x32e839[_0x0baf('0x24')](_0x1410ec)[_0x0baf('0x25')](function(_0x3e3e20){return _0x3e3e20;});}return null;};}function removeEntity(_0x210cd8,_0x636a13){return function(_0x2c42e2){if(_0x2c42e2){return _0x2c42e2[_0x0baf('0x26')]()['then'](function(){_0x210cd8[_0x0baf('0x1c')](0xcc)['end']();});}};}function handleEntityNotFound(_0xf6c158,_0x5dbf00){return function(_0x4de74c){if(!_0x4de74c){_0xf6c158[_0x0baf('0x1b')](0x194);}return _0x4de74c;};}function handleError(_0x48a0e9,_0x4be1b9){_0x4be1b9=_0x4be1b9||0x1f4;return function(_0x47c4b){logger[_0x0baf('0x27')](_0x47c4b[_0x0baf('0x28')]);if(_0x47c4b[_0x0baf('0x29')]){delete _0x47c4b[_0x0baf('0x29')];}_0x48a0e9['status'](_0x4be1b9)[_0x0baf('0x2a')](_0x47c4b);};}exports[_0x0baf('0x2b')]=function(_0x1ca35a,_0x366e71){var _0x3843b8={'raw':!![]},_0x3b9b31={},_0x453525={'count':0x0,'rows':[]};var _0x549fd0=db[_0x0baf('0x2c')][_0x0baf('0x2d')];_0x3b9b31[_0x0baf('0x2e')]=_[_0x0baf('0x2f')](_0x549fd0);_0x3b9b31['query']=_[_0x0baf('0x2f')](_0x1ca35a[_0x0baf('0x30')]);_0x3b9b31['filters']=_[_0x0baf('0x31')](_0x3b9b31[_0x0baf('0x2e')],_0x3b9b31[_0x0baf('0x30')]);_0x3843b8[_0x0baf('0x32')]=_[_0x0baf('0x31')](_0x3b9b31[_0x0baf('0x2e')],qs[_0x0baf('0x33')](_0x1ca35a['query'][_0x0baf('0x33')]));_0x3843b8[_0x0baf('0x32')]=_0x3843b8[_0x0baf('0x32')][_0x0baf('0x34')]?_0x3843b8[_0x0baf('0x32')]:_0x3b9b31[_0x0baf('0x2e')];if(!_0x1ca35a[_0x0baf('0x30')][_0x0baf('0x35')](_0x0baf('0x36'))){_0x3843b8[_0x0baf('0x21')]=qs[_0x0baf('0x21')](_0x1ca35a[_0x0baf('0x30')][_0x0baf('0x21')]);_0x3843b8[_0x0baf('0x20')]=qs['offset'](_0x1ca35a[_0x0baf('0x30')]['offset']);}_0x3843b8[_0x0baf('0x37')]=qs[_0x0baf('0x38')](_0x1ca35a[_0x0baf('0x30')][_0x0baf('0x38')]);_0x3843b8['where']=qs[_0x0baf('0x39')](_[_0x0baf('0x3a')](_0x1ca35a['query'],_0x3b9b31[_0x0baf('0x39')]));if(_0x1ca35a[_0x0baf('0x30')][_0x0baf('0x3b')]){_0x3843b8[_0x0baf('0x3c')]=_[_0x0baf('0x3d')](_0x3843b8[_0x0baf('0x3c')],{'$or':_[_0x0baf('0x3e')](_0x549fd0,function(_0x675461){if(_0x675461['type'][_0x0baf('0x3f')]!==_0x0baf('0x40')){var _0x5b991f={};_0x5b991f[_0x675461[_0x0baf('0x41')]]={'$like':'%'+_0x1ca35a['query']['filter']+'%'};return _0x5b991f;}})});}_0x3843b8=_[_0x0baf('0x3d')]({},_0x3843b8,_0x1ca35a[_0x0baf('0x42')]);var _0x5d3ad1={'where':_0x3843b8['where']};return db[_0x0baf('0x2c')][_0x0baf('0x1f')](_0x5d3ad1)[_0x0baf('0x25')](function(_0xb2d9ab){_0x453525[_0x0baf('0x1f')]=_0xb2d9ab;if(_0x1ca35a[_0x0baf('0x30')][_0x0baf('0x43')]){_0x3843b8[_0x0baf('0x44')]=[{'all':!![]}];}return db[_0x0baf('0x2c')][_0x0baf('0x45')](_0x3843b8);})[_0x0baf('0x25')](function(_0x148540){_0x453525[_0x0baf('0x46')]=_0x148540;return _0x453525;})[_0x0baf('0x25')](respondWithFilteredResult(_0x366e71,_0x3843b8))['catch'](handleError(_0x366e71,null));};exports[_0x0baf('0x47')]=function(_0x1435d5,_0x4f1de9){var _0x38006a={'raw':!![],'where':{'id':_0x1435d5[_0x0baf('0x48')]['id']}},_0x324369={};_0x324369[_0x0baf('0x2e')]=_[_0x0baf('0x2f')](db[_0x0baf('0x2c')]['rawAttributes']);_0x324369[_0x0baf('0x30')]=_[_0x0baf('0x2f')](_0x1435d5['query']);_0x324369[_0x0baf('0x39')]=_[_0x0baf('0x31')](_0x324369[_0x0baf('0x2e')],_0x324369[_0x0baf('0x30')]);_0x38006a['attributes']=_[_0x0baf('0x31')](_0x324369[_0x0baf('0x2e')],qs[_0x0baf('0x33')](_0x1435d5[_0x0baf('0x30')][_0x0baf('0x33')]));_0x38006a[_0x0baf('0x32')]=_0x38006a[_0x0baf('0x32')][_0x0baf('0x34')]?_0x38006a[_0x0baf('0x32')]:_0x324369[_0x0baf('0x2e')];if(_0x1435d5['query'][_0x0baf('0x43')]){_0x38006a[_0x0baf('0x44')]=[{'all':!![]}];}_0x38006a=_[_0x0baf('0x3d')]({},_0x38006a,_0x1435d5[_0x0baf('0x42')]);return db[_0x0baf('0x2c')]['find'](_0x38006a)[_0x0baf('0x25')](handleEntityNotFound(_0x4f1de9,null))[_0x0baf('0x25')](respondWithResult(_0x4f1de9,null))[_0x0baf('0x49')](handleError(_0x4f1de9,null));};exports[_0x0baf('0x4a')]=function(_0x35b5db,_0x54ed41){return db[_0x0baf('0x2c')][_0x0baf('0x4a')](_0x35b5db[_0x0baf('0x4b')],{})[_0x0baf('0x25')](respondWithResult(_0x54ed41,0xc9))[_0x0baf('0x49')](handleError(_0x54ed41,null));};exports[_0x0baf('0x24')]=function(_0x178995,_0x5679d9){if(_0x178995[_0x0baf('0x4b')]['id']){delete _0x178995[_0x0baf('0x4b')]['id'];}return db[_0x0baf('0x2c')]['find']({'where':{'id':_0x178995[_0x0baf('0x48')]['id']}})[_0x0baf('0x25')](handleEntityNotFound(_0x5679d9,null))[_0x0baf('0x25')](saveUpdates(_0x178995[_0x0baf('0x4b')],null))[_0x0baf('0x25')](respondWithResult(_0x5679d9,null))[_0x0baf('0x49')](handleError(_0x5679d9,null));};exports[_0x0baf('0x26')]=function(_0x5a54bb,_0x22c451){return db[_0x0baf('0x2c')][_0x0baf('0x4c')]({'where':{'id':_0x5a54bb[_0x0baf('0x48')]['id']}})[_0x0baf('0x25')](handleEntityNotFound(_0x22c451,null))[_0x0baf('0x25')](removeEntity(_0x22c451,null))[_0x0baf('0x49')](handleError(_0x22c451,null));};exports[_0x0baf('0x4d')]=function(_0x2be7fe,_0x19c008){return db[_0x0baf('0x2c')]['describe']()['then'](respondWithResult(_0x19c008,null))[_0x0baf('0x49')](handleError(_0x19c008,null));};function assignProductQuotationToProformaInvoice(_0x3d6b19,_0x1cd114){if(_0x3d6b19[_0x0baf('0x4b')]['id']){delete _0x3d6b19[_0x0baf('0x4b')]['id'];}return db[_0x0baf('0x2c')][_0x0baf('0x24')]({'ProformaId':_0x3d6b19['body'][_0x0baf('0x4e')],'InvoiceId':_0x3d6b19[_0x0baf('0x4b')][_0x0baf('0x4f')]},{'where':{'QuotationId':_0x3d6b19[_0x0baf('0x48')]['id'],'ProformaId':_0x3d6b19[_0x0baf('0x30')][_0x0baf('0x4e')]||{'$eq':null},'InvoiceId':_0x3d6b19['query'][_0x0baf('0x4f')]||{'$eq':null}},'transaction':_0x1cd114});}exports['updateBulk']=function(_0x151741,_0x59f732,_0x25a1b2){return db['sequelize'][_0x0baf('0x50')](function(_0x4c035b){return assignProductQuotationToProformaInvoice(_0x151741,_0x4c035b)[_0x0baf('0x25')](function(_0xcf7b8d){return _0x59f732[_0x0baf('0x1b')](0xc8);})[_0x0baf('0x49')](handleError(_0x59f732,null));});};function addInvoiceDetail(_0x42a68b,_0x576475,_0x21f179){var _0x36b7d2={'companyName':_0x42a68b[_0x0baf('0x51')],'companyId':_0x42a68b[_0x0baf('0x52')],'productName':_0x42a68b[_0x0baf('0x53')],'productCode':_0x42a68b[_0x0baf('0x54')],'productDescription':_0x42a68b['productDescription'],'typeName':_0x42a68b[_0x0baf('0x55')],'pricelistName':_0x42a68b[_0x0baf('0x56')],'priceListId':_0x42a68b[_0x0baf('0x57')],'netPrice':_0x42a68b[_0x0baf('0x58')],'discount':_0x42a68b[_0x0baf('0x59')],'tax':_0x42a68b[_0x0baf('0x5a')],'agentFullname':_0x42a68b[_0x0baf('0x5b')],'note':_0x42a68b['note'],'subscriptionId':_0x42a68b['subscriptionId'],'subscriptionName':_0x42a68b[_0x0baf('0x5c')],'subscriptionMonthly':_0x42a68b[_0x0baf('0x5d')],'quantity':_0x42a68b[_0x0baf('0x5e')],'InvoiceId':_0x576475,'unitName':_0x42a68b[_0x0baf('0x5f')]};return db[_0x0baf('0x60')][_0x0baf('0x4a')](_0x36b7d2,{'transaction':_0x21f179})[_0x0baf('0x25')](function(){return db[_0x0baf('0x2c')][_0x0baf('0x24')]({'InvoiceId':_0x576475},{'where':{'id':_0x42a68b['id']},'transaction':_0x21f179});});}exports['automaticInvoice']=function(_0x3238f9,_0x268be8,_0x3c2d03){if(_0x3238f9[_0x0baf('0x4b')]['id']){delete _0x3238f9[_0x0baf('0x4b')]['id'];}return db[_0x0baf('0x61')][_0x0baf('0x50')](function(_0x51d75f){return db[_0x0baf('0x62')][_0x0baf('0x4a')](_0x3238f9[_0x0baf('0x4b')],{'transaction':_0x51d75f})[_0x0baf('0x25')](function(_0x1c7d88){console[_0x0baf('0x63')](_0x0baf('0x64'),_0x1c7d88);var _0x12543e=_0x3238f9['params']['id'];return db[_0x0baf('0x2c')]['findAll']({'where':{'QuotationId':_0x12543e,'productAsset':{'$ne':0x1},'ProformaId':{'$eq':null},'InvoiceId':{'$eq':null}},'raw':!![],'logging':console[_0x0baf('0x63')]})['then'](function(_0x50fa87){if(_0x50fa87[_0x0baf('0x34')]>0x0){var _0x4a2cb0=[];for(var _0x16f2e6=0x0;_0x16f2e6<_0x50fa87[_0x0baf('0x34')];_0x16f2e6++){_0x4a2cb0['push'](addInvoiceDetail(_0x50fa87[_0x16f2e6],_0x1c7d88['id'],_0x51d75f));}return BPromise[_0x0baf('0x65')](_0x4a2cb0);}else{var _0xfb6708={'errors':[{'type':_0x0baf('0x66'),'message':'No\x20product\x20to\x20assign\x20invoice.\x20Invoice\x20not\x20created!!'}]};throw _0xfb6708;}});});})['then'](function(){return _0x268be8[_0x0baf('0x1b')](0xc8);})[_0x0baf('0x49')](function(_0x6d789f){console[_0x0baf('0x63')](_0x0baf('0x67'),_0x6d789f);if(_0x6d789f['name']===_0x0baf('0x68')){var _0x6d789f={'errors':[{'message':'Duplicate\x20entry.'}]};}_0x268be8['status'](0x1f4)[_0x0baf('0x2a')](_0x6d789f);});};function addProformaDetail(_0x58a366,_0x4946d4,_0x11a81e){var _0x288f17={'companyName':_0x58a366[_0x0baf('0x51')],'companyId':_0x58a366[_0x0baf('0x52')],'productName':_0x58a366[_0x0baf('0x53')],'productCode':_0x58a366[_0x0baf('0x54')],'productDescription':_0x58a366['productDescription'],'typeName':_0x58a366[_0x0baf('0x55')],'pricelistName':_0x58a366[_0x0baf('0x56')],'priceListId':_0x58a366[_0x0baf('0x57')],'netPrice':_0x58a366[_0x0baf('0x58')],'discount':_0x58a366[_0x0baf('0x59')],'tax':_0x58a366[_0x0baf('0x5a')],'agentFullname':_0x58a366['agentFullname'],'note':_0x58a366[_0x0baf('0x69')],'subscriptionId':_0x58a366[_0x0baf('0x6a')],'subscriptionName':_0x58a366[_0x0baf('0x5c')],'subscriptionMonthly':_0x58a366['subscriptionMonthly'],'quantity':_0x58a366[_0x0baf('0x5e')],'ProformaId':_0x4946d4};return db[_0x0baf('0x6b')][_0x0baf('0x4a')](_0x288f17,{'transaction':_0x11a81e})[_0x0baf('0x25')](function(){return db[_0x0baf('0x2c')][_0x0baf('0x24')]({'ProformaId':_0x4946d4},{'where':{'id':_0x58a366['id']},'transaction':_0x11a81e});});}exports[_0x0baf('0x6c')]=function(_0x5874cc,_0x54353a,_0x4b7caa){if(_0x5874cc[_0x0baf('0x4b')]['id']){delete _0x5874cc[_0x0baf('0x4b')]['id'];}return db[_0x0baf('0x61')][_0x0baf('0x50')](function(_0x3e65d4){return db[_0x0baf('0x6d')]['create'](_0x5874cc['body'],{'transaction':_0x3e65d4})[_0x0baf('0x25')](function(_0x519b30){console[_0x0baf('0x63')](_0x0baf('0x64'),_0x519b30);var _0x4cca39=_0x5874cc[_0x0baf('0x48')]['id'];return db[_0x0baf('0x2c')][_0x0baf('0x45')]({'where':{'QuotationId':_0x4cca39,'productAsset':{'$ne':0x1},'ProformaId':{'$eq':null},'InvoiceId':{'$eq':null}},'raw':!![],'logging':console[_0x0baf('0x63')]})[_0x0baf('0x25')](function(_0x33a5af){if(_0x33a5af[_0x0baf('0x34')]>0x0){var _0x2e3b1d=[];for(var _0xfcc697=0x0;_0xfcc697<_0x33a5af['length'];_0xfcc697++){_0x2e3b1d['push'](addProformaDetail(_0x33a5af[_0xfcc697],_0x519b30['id'],_0x3e65d4));}return BPromise['all'](_0x2e3b1d);}else{var _0x493784={'errors':[{'type':'WARNING','message':_0x0baf('0x6e')}]};throw _0x493784;}});});})[_0x0baf('0x25')](function(){return _0x54353a[_0x0baf('0x1b')](0xc8);})[_0x0baf('0x49')](function(_0x5093f5){console[_0x0baf('0x63')](_0x0baf('0x6f'),_0x5093f5);if(_0x5093f5['name']==='SequelizeUniqueConstraintError'){var _0x5093f5={'errors':[{'message':_0x0baf('0x70')}]};}_0x54353a[_0x0baf('0x1c')](0x1f4)[_0x0baf('0x2a')](_0x5093f5);});};
\ No newline at end of file