Built motion from commit bab6f49e.|2.6.17
[motion2.git] / server / api / cmContactHasItem / cmContactHasItem.controller.js
1 // *************************************************************************
2 // *                                                                       *
3 // * xCALLY Motion -  The Omnichannel Contact Center                       *
4 // * Copyright (c) Xenialab s.r.l. All Rights Reserved                     *
5 // *                                                                       *
6 // *************************************************************************
7 // *                                                                       *
8 // * Email: info@xcally.com                                                *
9 // * Website: https://www.xcally.com                                       *
10 // *                                                                       *
11 // *************************************************************************
12 // *                                                                       *
13 // * The SOFTWARE PRODUCT is protected by copyright laws and international *
14 // * copyright treaties, as well as other intellectual property laws and   *
15 // * treaties. The SOFTWARE PRODUCT is licensed, not sold.                         *
16 // *                                                                       *
17 // *************************************************************************
18 var _0x0219=['count','set','reject','save','update','destroy','then','get','CmContactHasItems','error','stack','name','send','index','map','CmContactHasItem','fieldName','type','model','query','keys','filters','intersection','fields','attributes','length','hasOwnProperty','nolimit','order','where','filter','VIRTUAL','options','includeAll','rows','show','params','rawAttributes','include','merge','find','catch','body','user','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','autoAssociation','UserProfileResource','create','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','path','sox','to-csv','ejs','fs-extra','lodash','crypto','jsforce','querystring','papaparse','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','../../config/logger','api','../../config/utils','../../mysqldb','sendStatus','status','end','json','offset','limit','undefined'];(function(_0x2b4411,_0x2625ed){var _0x8e41ef=function(_0x2aa8c1){while(--_0x2aa8c1){_0x2b4411['push'](_0x2b4411['shift']());}};_0x8e41ef(++_0x2625ed);}(_0x0219,0x12c));var _0x9021=function(_0xcc37bc,_0x1a0394){_0xcc37bc=_0xcc37bc-0x0;var _0x28f4ce=_0x0219[_0xcc37bc];return _0x28f4ce;};'use strict';var emlformat=require(_0x9021('0x0'));var rimraf=require(_0x9021('0x1'));var zipdir=require(_0x9021('0x2'));var jsonpatch=require(_0x9021('0x3'));var rp=require(_0x9021('0x4'));var moment=require('moment');var BPromise=require(_0x9021('0x5'));var Mustache=require(_0x9021('0x6'));var util=require('util');var path=require(_0x9021('0x7'));var sox=require(_0x9021('0x8'));var csv=require(_0x9021('0x9'));var ejs=require(_0x9021('0xa'));var fs=require('fs');var fs_extra=require(_0x9021('0xb'));var _=require(_0x9021('0xc'));var squel=require('squel');var crypto=require(_0x9021('0xd'));var jsforce=require(_0x9021('0xe'));var deskjs=require('desk.js');var toCsv=require(_0x9021('0x9'));var querystring=require(_0x9021('0xf'));var Papa=require(_0x9021('0x10'));var Redis=require(_0x9021('0x11'));var authService=require('../../components/auth/service');var qs=require(_0x9021('0x12'));var as=require(_0x9021('0x13'));var hardwareService=require(_0x9021('0x14'));var logger=require(_0x9021('0x15'))(_0x9021('0x16'));var utils=require(_0x9021('0x17'));var config=require('../../config/environment');var licenseUtil=require('../../config/license/util');var db=require(_0x9021('0x18'))['db'];function respondWithStatusCode(_0x4cc031,_0x1eb222){_0x1eb222=_0x1eb222||0xcc;return function(_0x5bad20){if(_0x5bad20){return _0x4cc031[_0x9021('0x19')](_0x1eb222);}return _0x4cc031[_0x9021('0x1a')](_0x1eb222)[_0x9021('0x1b')]();};}function respondWithResult(_0x105c40,_0x17c678){_0x17c678=_0x17c678||0xc8;return function(_0x34298b){if(_0x34298b){return _0x105c40['status'](_0x17c678)[_0x9021('0x1c')](_0x34298b);}};}function respondWithFilteredResult(_0x11b3b8,_0x9c419){return function(_0xb9aa0e){if(_0xb9aa0e){var _0x5d7203=typeof _0x9c419[_0x9021('0x1d')]==='undefined'&&typeof _0x9c419[_0x9021('0x1e')]===_0x9021('0x1f');var _0x3f282e=_0xb9aa0e[_0x9021('0x20')];var _0x369913=_0x5d7203?0x0:_0x9c419['offset'];var _0x4a1723=_0x5d7203?_0xb9aa0e[_0x9021('0x20')]:_0x9c419['offset']+_0x9c419[_0x9021('0x1e')];var _0x403393;if(_0x4a1723>=_0x3f282e){_0x4a1723=_0x3f282e;_0x403393=0xc8;}else{_0x403393=0xce;}_0x11b3b8[_0x9021('0x1a')](_0x403393);return _0x11b3b8[_0x9021('0x21')]('Content-Range',_0x369913+'-'+_0x4a1723+'/'+_0x3f282e)[_0x9021('0x1c')](_0xb9aa0e);}return null;};}function patchUpdates(_0x5c8905){return function(_0x23f16e){try{jsonpatch['apply'](_0x23f16e,_0x5c8905,!![]);}catch(_0xcef5a8){return BPromise[_0x9021('0x22')](_0xcef5a8);}return _0x23f16e[_0x9021('0x23')]();};}function saveUpdates(_0x487189,_0x3e16c4){return function(_0xb4a015){if(_0xb4a015){return _0xb4a015[_0x9021('0x24')](_0x487189)['then'](function(_0x14f6bd){return _0x14f6bd;});}return null;};}function removeEntity(_0x9052d0,_0x49f007){return function(_0x59432f){if(_0x59432f){return _0x59432f[_0x9021('0x25')]()[_0x9021('0x26')](function(){var _0x493448=_0x59432f[_0x9021('0x27')]({'plain':!![]});var _0x3984a4=_0x9021('0x28');return db['UserProfileResource'][_0x9021('0x25')]({'where':{'type':_0x3984a4,'resourceId':_0x493448['id']}})[_0x9021('0x26')](function(){return _0x59432f;});})[_0x9021('0x26')](function(){_0x9052d0[_0x9021('0x1a')](0xcc)[_0x9021('0x1b')]();});}};}function handleEntityNotFound(_0x359d5a,_0x2151bc){return function(_0xda285d){if(!_0xda285d){_0x359d5a[_0x9021('0x19')](0x194);}return _0xda285d;};}function handleError(_0x32c948,_0x1b166c){_0x1b166c=_0x1b166c||0x1f4;return function(_0x1bc330){logger[_0x9021('0x29')](_0x1bc330[_0x9021('0x2a')]);if(_0x1bc330['name']){delete _0x1bc330[_0x9021('0x2b')];}_0x32c948[_0x9021('0x1a')](_0x1b166c)[_0x9021('0x2c')](_0x1bc330);};}exports[_0x9021('0x2d')]=function(_0x1f563f,_0x4f7a04){var _0x4e0c61={},_0x54c1bb={},_0x3bba5c={'count':0x0,'rows':[]};var _0x1bd62e=_[_0x9021('0x2e')](db[_0x9021('0x2f')]['rawAttributes'],function(_0x415000){return{'name':_0x415000[_0x9021('0x30')],'type':_0x415000[_0x9021('0x31')]['key']};});_0x54c1bb[_0x9021('0x32')]=_['map'](_0x1bd62e,_0x9021('0x2b'));_0x54c1bb[_0x9021('0x33')]=_[_0x9021('0x34')](_0x1f563f['query']);_0x54c1bb[_0x9021('0x35')]=_[_0x9021('0x36')](_0x54c1bb[_0x9021('0x32')],_0x54c1bb['query']);_0x4e0c61['attributes']=_['intersection'](_0x54c1bb[_0x9021('0x32')],qs[_0x9021('0x37')](_0x1f563f[_0x9021('0x33')]['fields']));_0x4e0c61['attributes']=_0x4e0c61[_0x9021('0x38')][_0x9021('0x39')]?_0x4e0c61[_0x9021('0x38')]:_0x54c1bb[_0x9021('0x32')];if(!_0x1f563f[_0x9021('0x33')][_0x9021('0x3a')](_0x9021('0x3b'))){_0x4e0c61[_0x9021('0x1e')]=qs[_0x9021('0x1e')](_0x1f563f[_0x9021('0x33')][_0x9021('0x1e')]);_0x4e0c61['offset']=qs[_0x9021('0x1d')](_0x1f563f[_0x9021('0x33')][_0x9021('0x1d')]);}_0x4e0c61[_0x9021('0x3c')]=qs['sort'](_0x1f563f[_0x9021('0x33')]['sort']);_0x4e0c61[_0x9021('0x3d')]=qs[_0x9021('0x35')](_['pick'](_0x1f563f[_0x9021('0x33')],_0x54c1bb['filters']),_0x1bd62e);if(_0x1f563f[_0x9021('0x33')][_0x9021('0x3e')]){_0x4e0c61[_0x9021('0x3d')]=_['merge'](_0x4e0c61[_0x9021('0x3d')],{'$or':_['map'](_0x1bd62e,function(_0x9302f5){if(_0x9302f5[_0x9021('0x31')]!==_0x9021('0x3f')){var _0x4ef58f={};_0x4ef58f[_0x9302f5[_0x9021('0x2b')]]={'$like':'%'+_0x1f563f[_0x9021('0x33')]['filter']+'%'};return _0x4ef58f;}})});}_0x4e0c61=_['merge']({},_0x4e0c61,_0x1f563f[_0x9021('0x40')]);var _0x27600a={'where':_0x4e0c61[_0x9021('0x3d')]};return db['CmContactHasItem'][_0x9021('0x20')](_0x27600a)[_0x9021('0x26')](function(_0x2ec0ba){_0x3bba5c['count']=_0x2ec0ba;if(_0x1f563f[_0x9021('0x33')][_0x9021('0x41')]){_0x4e0c61['include']=[{'all':!![]}];}return db[_0x9021('0x2f')]['findAll'](_0x4e0c61);})[_0x9021('0x26')](function(_0x114f4f){_0x3bba5c[_0x9021('0x42')]=_0x114f4f;return _0x3bba5c;})['then'](respondWithFilteredResult(_0x4f7a04,_0x4e0c61))['catch'](handleError(_0x4f7a04,null));};exports[_0x9021('0x43')]=function(_0x20abc2,_0x2ddb97){var _0x1ea354={'raw':!![],'where':{'id':_0x20abc2[_0x9021('0x44')]['id']}},_0x1ea039={};_0x1ea039[_0x9021('0x32')]=_[_0x9021('0x34')](db[_0x9021('0x2f')][_0x9021('0x45')]);_0x1ea039[_0x9021('0x33')]=_[_0x9021('0x34')](_0x20abc2[_0x9021('0x33')]);_0x1ea039[_0x9021('0x35')]=_[_0x9021('0x36')](_0x1ea039[_0x9021('0x32')],_0x1ea039[_0x9021('0x33')]);_0x1ea354[_0x9021('0x38')]=_['intersection'](_0x1ea039[_0x9021('0x32')],qs[_0x9021('0x37')](_0x20abc2[_0x9021('0x33')][_0x9021('0x37')]));_0x1ea354[_0x9021('0x38')]=_0x1ea354[_0x9021('0x38')][_0x9021('0x39')]?_0x1ea354[_0x9021('0x38')]:_0x1ea039[_0x9021('0x32')];if(_0x20abc2[_0x9021('0x33')]['includeAll']){_0x1ea354[_0x9021('0x46')]=[{'all':!![]}];}_0x1ea354=_[_0x9021('0x47')]({},_0x1ea354,_0x20abc2[_0x9021('0x40')]);return db[_0x9021('0x2f')][_0x9021('0x48')](_0x1ea354)[_0x9021('0x26')](handleEntityNotFound(_0x2ddb97,null))[_0x9021('0x26')](respondWithResult(_0x2ddb97,null))[_0x9021('0x49')](handleError(_0x2ddb97,null));};exports['create']=function(_0x49dc43,_0x4f1a42){return db['CmContactHasItem']['create'](_0x49dc43[_0x9021('0x4a')],{})['then'](function(_0x57ba68){var _0x243b08=_0x49dc43[_0x9021('0x4b')][_0x9021('0x27')]({'plain':!![]});if(!_0x243b08)throw new Error(_0x9021('0x4c'));if(_0x243b08[_0x9021('0x4d')]==='user'){var _0x1d06de=_0x57ba68[_0x9021('0x27')]({'plain':!![]});var _0x42d308=_0x9021('0x28');return db[_0x9021('0x4e')][_0x9021('0x48')]({'where':{'name':_0x42d308,'userProfileId':_0x243b08['userProfileId']},'raw':!![]})[_0x9021('0x26')](function(_0x417962){if(_0x417962&&_0x417962[_0x9021('0x4f')]===0x0){return db[_0x9021('0x50')][_0x9021('0x51')]({'name':_0x1d06de[_0x9021('0x2b')],'resourceId':_0x1d06de['id'],'type':_0x417962[_0x9021('0x2b')],'sectionId':_0x417962['id']},{})[_0x9021('0x26')](function(){return _0x57ba68;});}else{return _0x57ba68;}})[_0x9021('0x49')](function(_0x640a37){logger[_0x9021('0x29')](_0x9021('0x52'),_0x640a37);throw _0x640a37;});}return _0x57ba68;})[_0x9021('0x26')](respondWithResult(_0x4f1a42,0xc9))[_0x9021('0x49')](handleError(_0x4f1a42,null));};exports[_0x9021('0x24')]=function(_0x49f5ce,_0x1a86cf){if(_0x49f5ce['body']['id']){delete _0x49f5ce['body']['id'];}return db[_0x9021('0x2f')][_0x9021('0x48')]({'where':{'id':_0x49f5ce[_0x9021('0x44')]['id']}})['then'](handleEntityNotFound(_0x1a86cf,null))[_0x9021('0x26')](saveUpdates(_0x49f5ce[_0x9021('0x4a')],null))[_0x9021('0x26')](respondWithResult(_0x1a86cf,null))['catch'](handleError(_0x1a86cf,null));};exports['destroy']=function(_0x46d5e8,_0x3a0a13){return db[_0x9021('0x2f')][_0x9021('0x48')]({'where':{'id':_0x46d5e8[_0x9021('0x44')]['id']}})[_0x9021('0x26')](handleEntityNotFound(_0x3a0a13,null))[_0x9021('0x26')](removeEntity(_0x3a0a13,null))[_0x9021('0x49')](handleError(_0x3a0a13,null));};