Built motion from commit d5e4af8c.|2.6.23
[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 _0xf293=['error','stack','name','send','index','rawAttributes','key','model','map','query','keys','intersection','attributes','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','merge','VIRTUAL','options','CmContactHasItem','include','findAll','rows','catch','show','params','fields','includeAll','create','body','user','get','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','UserProfileSection','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','moment','bluebird','mustache','util','sox','to-csv','ejs','fs-extra','crypto','jsforce','desk.js','querystring','papaparse','ioredis','../../components/auth/service','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/logger','api','../../config/utils','../../config/environment','../../config/license/util','sendStatus','status','end','offset','undefined','limit','count','set','Content-Range','apply','save','update','then','destroy','CmContactHasItems','UserProfileResource'];(function(_0x306abc,_0x1c7f78){var _0x5ef657=function(_0x22198f){while(--_0x22198f){_0x306abc['push'](_0x306abc['shift']());}};_0x5ef657(++_0x1c7f78);}(_0xf293,0x135));var _0x3f29=function(_0x92aecf,_0x21bf3f){_0x92aecf=_0x92aecf-0x0;var _0x27812c=_0xf293[_0x92aecf];return _0x27812c;};'use strict';var emlformat=require(_0x3f29('0x0'));var rimraf=require(_0x3f29('0x1'));var zipdir=require(_0x3f29('0x2'));var jsonpatch=require(_0x3f29('0x3'));var rp=require(_0x3f29('0x4'));var moment=require(_0x3f29('0x5'));var BPromise=require(_0x3f29('0x6'));var Mustache=require(_0x3f29('0x7'));var util=require(_0x3f29('0x8'));var path=require('path');var sox=require(_0x3f29('0x9'));var csv=require(_0x3f29('0xa'));var ejs=require(_0x3f29('0xb'));var fs=require('fs');var fs_extra=require(_0x3f29('0xc'));var _=require('lodash');var squel=require('squel');var crypto=require(_0x3f29('0xd'));var jsforce=require(_0x3f29('0xe'));var deskjs=require(_0x3f29('0xf'));var toCsv=require(_0x3f29('0xa'));var querystring=require(_0x3f29('0x10'));var Papa=require(_0x3f29('0x11'));var Redis=require(_0x3f29('0x12'));var authService=require(_0x3f29('0x13'));var qs=require(_0x3f29('0x14'));var as=require(_0x3f29('0x15'));var hardwareService=require('../../config/license/hardware');var logger=require(_0x3f29('0x16'))(_0x3f29('0x17'));var utils=require(_0x3f29('0x18'));var config=require(_0x3f29('0x19'));var licenseUtil=require(_0x3f29('0x1a'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x122731,_0x33b899){_0x33b899=_0x33b899||0xcc;return function(_0x21ad8e){if(_0x21ad8e){return _0x122731[_0x3f29('0x1b')](_0x33b899);}return _0x122731[_0x3f29('0x1c')](_0x33b899)[_0x3f29('0x1d')]();};}function respondWithResult(_0x1646de,_0x2bf435){_0x2bf435=_0x2bf435||0xc8;return function(_0x266c92){if(_0x266c92){return _0x1646de[_0x3f29('0x1c')](_0x2bf435)['json'](_0x266c92);}};}function respondWithFilteredResult(_0x1e0caa,_0xad54ff){return function(_0x363207){if(_0x363207){var _0xd13b1b=typeof _0xad54ff[_0x3f29('0x1e')]===_0x3f29('0x1f')&&typeof _0xad54ff[_0x3f29('0x20')]===_0x3f29('0x1f');var _0x5f2313=_0x363207[_0x3f29('0x21')];var _0x2f57c7=_0xd13b1b?0x0:_0xad54ff['offset'];var _0xf577ca=_0xd13b1b?_0x363207[_0x3f29('0x21')]:_0xad54ff['offset']+_0xad54ff[_0x3f29('0x20')];var _0x17bd1a;if(_0xf577ca>=_0x5f2313){_0xf577ca=_0x5f2313;_0x17bd1a=0xc8;}else{_0x17bd1a=0xce;}_0x1e0caa['status'](_0x17bd1a);return _0x1e0caa[_0x3f29('0x22')](_0x3f29('0x23'),_0x2f57c7+'-'+_0xf577ca+'/'+_0x5f2313)['json'](_0x363207);}return null;};}function patchUpdates(_0x5cd5f0){return function(_0x58fc7f){try{jsonpatch[_0x3f29('0x24')](_0x58fc7f,_0x5cd5f0,!![]);}catch(_0x4632cd){return BPromise['reject'](_0x4632cd);}return _0x58fc7f[_0x3f29('0x25')]();};}function saveUpdates(_0x48721a,_0x212122){return function(_0x313821){if(_0x313821){return _0x313821[_0x3f29('0x26')](_0x48721a)[_0x3f29('0x27')](function(_0x19e58b){return _0x19e58b;});}return null;};}function removeEntity(_0x25fabb,_0xa2b332){return function(_0x41d861){if(_0x41d861){return _0x41d861[_0x3f29('0x28')]()[_0x3f29('0x27')](function(){var _0x9c9c4d=_0x41d861['get']({'plain':!![]});var _0x4d34b9=_0x3f29('0x29');return db[_0x3f29('0x2a')][_0x3f29('0x28')]({'where':{'type':_0x4d34b9,'resourceId':_0x9c9c4d['id']}})[_0x3f29('0x27')](function(){return _0x41d861;});})['then'](function(){_0x25fabb[_0x3f29('0x1c')](0xcc)[_0x3f29('0x1d')]();});}};}function handleEntityNotFound(_0x2e716a,_0x2e5ffc){return function(_0x1b4b9a){if(!_0x1b4b9a){_0x2e716a[_0x3f29('0x1b')](0x194);}return _0x1b4b9a;};}function handleError(_0x4e9910,_0x4db9d8){_0x4db9d8=_0x4db9d8||0x1f4;return function(_0x2d783b){logger[_0x3f29('0x2b')](_0x2d783b[_0x3f29('0x2c')]);if(_0x2d783b[_0x3f29('0x2d')]){delete _0x2d783b['name'];}_0x4e9910[_0x3f29('0x1c')](_0x4db9d8)[_0x3f29('0x2e')](_0x2d783b);};}exports[_0x3f29('0x2f')]=function(_0x47c176,_0x512fc2){var _0x2c3e2e={},_0x4817d7={},_0x3e55fb={'count':0x0,'rows':[]};var _0x3d7a57=_['map'](db['CmContactHasItem'][_0x3f29('0x30')],function(_0x2adb33){return{'name':_0x2adb33['fieldName'],'type':_0x2adb33['type'][_0x3f29('0x31')]};});_0x4817d7[_0x3f29('0x32')]=_[_0x3f29('0x33')](_0x3d7a57,_0x3f29('0x2d'));_0x4817d7[_0x3f29('0x34')]=_[_0x3f29('0x35')](_0x47c176['query']);_0x4817d7['filters']=_[_0x3f29('0x36')](_0x4817d7['model'],_0x4817d7['query']);_0x2c3e2e[_0x3f29('0x37')]=_[_0x3f29('0x36')](_0x4817d7['model'],qs['fields'](_0x47c176[_0x3f29('0x34')]['fields']));_0x2c3e2e[_0x3f29('0x37')]=_0x2c3e2e[_0x3f29('0x37')][_0x3f29('0x38')]?_0x2c3e2e[_0x3f29('0x37')]:_0x4817d7[_0x3f29('0x32')];if(!_0x47c176[_0x3f29('0x34')][_0x3f29('0x39')](_0x3f29('0x3a'))){_0x2c3e2e[_0x3f29('0x20')]=qs['limit'](_0x47c176['query']['limit']);_0x2c3e2e[_0x3f29('0x1e')]=qs[_0x3f29('0x1e')](_0x47c176[_0x3f29('0x34')][_0x3f29('0x1e')]);}_0x2c3e2e[_0x3f29('0x3b')]=qs[_0x3f29('0x3c')](_0x47c176['query'][_0x3f29('0x3c')]);_0x2c3e2e[_0x3f29('0x3d')]=qs[_0x3f29('0x3e')](_[_0x3f29('0x3f')](_0x47c176[_0x3f29('0x34')],_0x4817d7[_0x3f29('0x3e')]),_0x3d7a57);if(_0x47c176[_0x3f29('0x34')][_0x3f29('0x40')]){_0x2c3e2e[_0x3f29('0x3d')]=_[_0x3f29('0x41')](_0x2c3e2e['where'],{'$or':_[_0x3f29('0x33')](_0x3d7a57,function(_0x1e4207){if(_0x1e4207['type']!==_0x3f29('0x42')){var _0x511a02={};_0x511a02[_0x1e4207['name']]={'$like':'%'+_0x47c176[_0x3f29('0x34')][_0x3f29('0x40')]+'%'};return _0x511a02;}})});}_0x2c3e2e=_[_0x3f29('0x41')]({},_0x2c3e2e,_0x47c176[_0x3f29('0x43')]);var _0x3efb64={'where':_0x2c3e2e[_0x3f29('0x3d')]};return db[_0x3f29('0x44')][_0x3f29('0x21')](_0x3efb64)[_0x3f29('0x27')](function(_0x1f0fed){_0x3e55fb[_0x3f29('0x21')]=_0x1f0fed;if(_0x47c176[_0x3f29('0x34')]['includeAll']){_0x2c3e2e[_0x3f29('0x45')]=[{'all':!![]}];}return db[_0x3f29('0x44')][_0x3f29('0x46')](_0x2c3e2e);})['then'](function(_0x19239e){_0x3e55fb[_0x3f29('0x47')]=_0x19239e;return _0x3e55fb;})[_0x3f29('0x27')](respondWithFilteredResult(_0x512fc2,_0x2c3e2e))[_0x3f29('0x48')](handleError(_0x512fc2,null));};exports[_0x3f29('0x49')]=function(_0x3f36bb,_0x12a265){var _0xcd76fa={'raw':!![],'where':{'id':_0x3f36bb[_0x3f29('0x4a')]['id']}},_0x342db0={};_0x342db0[_0x3f29('0x32')]=_[_0x3f29('0x35')](db[_0x3f29('0x44')][_0x3f29('0x30')]);_0x342db0[_0x3f29('0x34')]=_[_0x3f29('0x35')](_0x3f36bb['query']);_0x342db0['filters']=_[_0x3f29('0x36')](_0x342db0[_0x3f29('0x32')],_0x342db0[_0x3f29('0x34')]);_0xcd76fa[_0x3f29('0x37')]=_[_0x3f29('0x36')](_0x342db0[_0x3f29('0x32')],qs[_0x3f29('0x4b')](_0x3f36bb[_0x3f29('0x34')][_0x3f29('0x4b')]));_0xcd76fa[_0x3f29('0x37')]=_0xcd76fa[_0x3f29('0x37')][_0x3f29('0x38')]?_0xcd76fa[_0x3f29('0x37')]:_0x342db0[_0x3f29('0x32')];if(_0x3f36bb[_0x3f29('0x34')][_0x3f29('0x4c')]){_0xcd76fa['include']=[{'all':!![]}];}_0xcd76fa=_['merge']({},_0xcd76fa,_0x3f36bb['options']);return db[_0x3f29('0x44')]['find'](_0xcd76fa)['then'](handleEntityNotFound(_0x12a265,null))[_0x3f29('0x27')](respondWithResult(_0x12a265,null))[_0x3f29('0x48')](handleError(_0x12a265,null));};exports[_0x3f29('0x4d')]=function(_0x2888e6,_0x436425){return db[_0x3f29('0x44')][_0x3f29('0x4d')](_0x2888e6[_0x3f29('0x4e')],{})['then'](function(_0x24334c){var _0x29b5b2=_0x2888e6[_0x3f29('0x4f')][_0x3f29('0x50')]({'plain':!![]});if(!_0x29b5b2)throw new Error(_0x3f29('0x51'));if(_0x29b5b2[_0x3f29('0x52')]===_0x3f29('0x4f')){var _0x22a0e9=_0x24334c[_0x3f29('0x50')]({'plain':!![]});var _0x319774=_0x3f29('0x29');return db[_0x3f29('0x53')][_0x3f29('0x54')]({'where':{'name':_0x319774,'userProfileId':_0x29b5b2[_0x3f29('0x55')]},'raw':!![]})[_0x3f29('0x27')](function(_0x3ab8c9){if(_0x3ab8c9&&_0x3ab8c9[_0x3f29('0x56')]===0x0){return db['UserProfileResource'][_0x3f29('0x4d')]({'name':_0x22a0e9['name'],'resourceId':_0x22a0e9['id'],'type':_0x3ab8c9[_0x3f29('0x2d')],'sectionId':_0x3ab8c9['id']},{})[_0x3f29('0x27')](function(){return _0x24334c;});}else{return _0x24334c;}})[_0x3f29('0x48')](function(_0x325080){logger[_0x3f29('0x2b')](_0x3f29('0x57'),_0x325080);throw _0x325080;});}return _0x24334c;})[_0x3f29('0x27')](respondWithResult(_0x436425,0xc9))[_0x3f29('0x48')](handleError(_0x436425,null));};exports[_0x3f29('0x26')]=function(_0x3a1535,_0x474d00){if(_0x3a1535[_0x3f29('0x4e')]['id']){delete _0x3a1535[_0x3f29('0x4e')]['id'];}return db['CmContactHasItem'][_0x3f29('0x54')]({'where':{'id':_0x3a1535[_0x3f29('0x4a')]['id']}})['then'](handleEntityNotFound(_0x474d00,null))[_0x3f29('0x27')](saveUpdates(_0x3a1535['body'],null))[_0x3f29('0x27')](respondWithResult(_0x474d00,null))[_0x3f29('0x48')](handleError(_0x474d00,null));};exports['destroy']=function(_0x5243a9,_0xfc6437){return db[_0x3f29('0x44')][_0x3f29('0x54')]({'where':{'id':_0x5243a9[_0x3f29('0x4a')]['id']}})[_0x3f29('0x27')](handleEntityNotFound(_0xfc6437,null))[_0x3f29('0x27')](removeEntity(_0xfc6437,null))[_0x3f29('0x48')](handleError(_0xfc6437,null));};