Built motion from commit 47436d59.|2.6.7
[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 _0xd2aa=['sendStatus','status','end','json','offset','undefined','limit','Content-Range','apply','then','destroy','get','UserProfileResource','error','name','send','index','map','CmContactHasItem','rawAttributes','fieldName','type','key','query','keys','filters','model','attributes','intersection','fields','length','hasOwnProperty','nolimit','order','sort','where','pick','filter','merge','VIRTUAL','includeAll','findAll','rows','catch','show','params','include','options','create','body','Unable\x20to\x20retrieve\x20the\x20current\x20user','role','user','CmContactHasItems','find','userProfileId','autoAssociation','Unable\x20to\x20associate\x20the\x20resource\x20to\x20the\x20User\x20Profile:\x20%s','update','eml-format','rimraf','zip-dir','request-promise','moment','mustache','path','sox','ejs','fs-extra','jsforce','to-csv','ioredis','../../components/parsers/qs','../../components/parsers/advancedSearch','../../config/license/hardware','api','../../config/license/util','../../mysqldb'];(function(_0x41da7a,_0x10b996){var _0x42e865=function(_0x2d8903){while(--_0x2d8903){_0x41da7a['push'](_0x41da7a['shift']());}};_0x42e865(++_0x10b996);}(_0xd2aa,0x125));var _0xad2a=function(_0x172660,_0x260d9b){_0x172660=_0x172660-0x0;var _0x83204f=_0xd2aa[_0x172660];return _0x83204f;};'use strict';var emlformat=require(_0xad2a('0x0'));var rimraf=require(_0xad2a('0x1'));var zipdir=require(_0xad2a('0x2'));var jsonpatch=require('fast-json-patch');var rp=require(_0xad2a('0x3'));var moment=require(_0xad2a('0x4'));var BPromise=require('bluebird');var Mustache=require(_0xad2a('0x5'));var util=require('util');var path=require(_0xad2a('0x6'));var sox=require(_0xad2a('0x7'));var csv=require('to-csv');var ejs=require(_0xad2a('0x8'));var fs=require('fs');var fs_extra=require(_0xad2a('0x9'));var _=require('lodash');var squel=require('squel');var crypto=require('crypto');var jsforce=require(_0xad2a('0xa'));var deskjs=require('desk.js');var toCsv=require(_0xad2a('0xb'));var querystring=require('querystring');var Papa=require('papaparse');var Redis=require(_0xad2a('0xc'));var authService=require('../../components/auth/service');var qs=require(_0xad2a('0xd'));var as=require(_0xad2a('0xe'));var hardwareService=require(_0xad2a('0xf'));var logger=require('../../config/logger')(_0xad2a('0x10'));var utils=require('../../config/utils');var config=require('../../config/environment');var licenseUtil=require(_0xad2a('0x11'));var db=require(_0xad2a('0x12'))['db'];function respondWithStatusCode(_0x3a522f,_0x422463){_0x422463=_0x422463||0xcc;return function(_0x38ace8){if(_0x38ace8){return _0x3a522f[_0xad2a('0x13')](_0x422463);}return _0x3a522f[_0xad2a('0x14')](_0x422463)[_0xad2a('0x15')]();};}function respondWithResult(_0x872f7a,_0x123f76){_0x123f76=_0x123f76||0xc8;return function(_0x3cd1ae){if(_0x3cd1ae){return _0x872f7a[_0xad2a('0x14')](_0x123f76)[_0xad2a('0x16')](_0x3cd1ae);}};}function respondWithFilteredResult(_0x43287d,_0x3e805d){return function(_0x5411b0){if(_0x5411b0){var _0x31440a=typeof _0x3e805d[_0xad2a('0x17')]===_0xad2a('0x18')&&typeof _0x3e805d[_0xad2a('0x19')]===_0xad2a('0x18');var _0x2dd5f2=_0x5411b0['count'];var _0x369cfa=_0x31440a?0x0:_0x3e805d[_0xad2a('0x17')];var _0x39432a=_0x31440a?_0x5411b0['count']:_0x3e805d[_0xad2a('0x17')]+_0x3e805d['limit'];var _0x4a393b;if(_0x39432a>=_0x2dd5f2){_0x39432a=_0x2dd5f2;_0x4a393b=0xc8;}else{_0x4a393b=0xce;}_0x43287d[_0xad2a('0x14')](_0x4a393b);return _0x43287d['set'](_0xad2a('0x1a'),_0x369cfa+'-'+_0x39432a+'/'+_0x2dd5f2)['json'](_0x5411b0);}return null;};}function patchUpdates(_0x433ed3){return function(_0x507a39){try{jsonpatch[_0xad2a('0x1b')](_0x507a39,_0x433ed3,!![]);}catch(_0x42b304){return BPromise['reject'](_0x42b304);}return _0x507a39['save']();};}function saveUpdates(_0xff11d6,_0x4c9fb6){return function(_0x2137f9){if(_0x2137f9){return _0x2137f9['update'](_0xff11d6)[_0xad2a('0x1c')](function(_0x179c0b){return _0x179c0b;});}return null;};}function removeEntity(_0x1bd66f,_0x41bb45){return function(_0x91e9b4){if(_0x91e9b4){return _0x91e9b4[_0xad2a('0x1d')]()[_0xad2a('0x1c')](function(){var _0x41ad8c=_0x91e9b4[_0xad2a('0x1e')]({'plain':!![]});var _0x424d74='CmContactHasItems';return db[_0xad2a('0x1f')][_0xad2a('0x1d')]({'where':{'type':_0x424d74,'resourceId':_0x41ad8c['id']}})[_0xad2a('0x1c')](function(){return _0x91e9b4;});})[_0xad2a('0x1c')](function(){_0x1bd66f[_0xad2a('0x14')](0xcc)[_0xad2a('0x15')]();});}};}function handleEntityNotFound(_0x3a5b31,_0x4e0ede){return function(_0x31adc6){if(!_0x31adc6){_0x3a5b31['sendStatus'](0x194);}return _0x31adc6;};}function handleError(_0x1b2730,_0x338db1){_0x338db1=_0x338db1||0x1f4;return function(_0xc9feb6){logger[_0xad2a('0x20')](_0xc9feb6['stack']);if(_0xc9feb6['name']){delete _0xc9feb6[_0xad2a('0x21')];}_0x1b2730[_0xad2a('0x14')](_0x338db1)[_0xad2a('0x22')](_0xc9feb6);};}exports[_0xad2a('0x23')]=function(_0x56d2e8,_0x30c471){var _0xafdc8={},_0x3e0d7f={},_0x3465f3={'count':0x0,'rows':[]};var _0xcf97db=_[_0xad2a('0x24')](db[_0xad2a('0x25')][_0xad2a('0x26')],function(_0x3b628f){return{'name':_0x3b628f[_0xad2a('0x27')],'type':_0x3b628f[_0xad2a('0x28')][_0xad2a('0x29')]};});_0x3e0d7f['model']=_[_0xad2a('0x24')](_0xcf97db,_0xad2a('0x21'));_0x3e0d7f[_0xad2a('0x2a')]=_[_0xad2a('0x2b')](_0x56d2e8[_0xad2a('0x2a')]);_0x3e0d7f[_0xad2a('0x2c')]=_['intersection'](_0x3e0d7f[_0xad2a('0x2d')],_0x3e0d7f[_0xad2a('0x2a')]);_0xafdc8[_0xad2a('0x2e')]=_[_0xad2a('0x2f')](_0x3e0d7f[_0xad2a('0x2d')],qs[_0xad2a('0x30')](_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x30')]));_0xafdc8[_0xad2a('0x2e')]=_0xafdc8[_0xad2a('0x2e')][_0xad2a('0x31')]?_0xafdc8[_0xad2a('0x2e')]:_0x3e0d7f[_0xad2a('0x2d')];if(!_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x32')](_0xad2a('0x33'))){_0xafdc8[_0xad2a('0x19')]=qs['limit'](_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x19')]);_0xafdc8['offset']=qs[_0xad2a('0x17')](_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x17')]);}_0xafdc8[_0xad2a('0x34')]=qs[_0xad2a('0x35')](_0x56d2e8['query'][_0xad2a('0x35')]);_0xafdc8[_0xad2a('0x36')]=qs[_0xad2a('0x2c')](_[_0xad2a('0x37')](_0x56d2e8['query'],_0x3e0d7f[_0xad2a('0x2c')]),_0xcf97db);if(_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x38')]){_0xafdc8['where']=_[_0xad2a('0x39')](_0xafdc8[_0xad2a('0x36')],{'$or':_[_0xad2a('0x24')](_0xcf97db,function(_0x5147f2){if(_0x5147f2[_0xad2a('0x28')]!==_0xad2a('0x3a')){var _0x1260d9={};_0x1260d9[_0x5147f2['name']]={'$like':'%'+_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x38')]+'%'};return _0x1260d9;}})});}_0xafdc8=_[_0xad2a('0x39')]({},_0xafdc8,_0x56d2e8['options']);var _0x1ef67d={'where':_0xafdc8[_0xad2a('0x36')]};return db[_0xad2a('0x25')]['count'](_0x1ef67d)[_0xad2a('0x1c')](function(_0x4951f7){_0x3465f3['count']=_0x4951f7;if(_0x56d2e8[_0xad2a('0x2a')][_0xad2a('0x3b')]){_0xafdc8['include']=[{'all':!![]}];}return db[_0xad2a('0x25')][_0xad2a('0x3c')](_0xafdc8);})['then'](function(_0x51d1f1){_0x3465f3[_0xad2a('0x3d')]=_0x51d1f1;return _0x3465f3;})[_0xad2a('0x1c')](respondWithFilteredResult(_0x30c471,_0xafdc8))[_0xad2a('0x3e')](handleError(_0x30c471,null));};exports[_0xad2a('0x3f')]=function(_0x2d9feb,_0x1e538b){var _0x48f5ac={'raw':!![],'where':{'id':_0x2d9feb[_0xad2a('0x40')]['id']}},_0x21ef78={};_0x21ef78[_0xad2a('0x2d')]=_[_0xad2a('0x2b')](db[_0xad2a('0x25')][_0xad2a('0x26')]);_0x21ef78[_0xad2a('0x2a')]=_[_0xad2a('0x2b')](_0x2d9feb[_0xad2a('0x2a')]);_0x21ef78[_0xad2a('0x2c')]=_[_0xad2a('0x2f')](_0x21ef78[_0xad2a('0x2d')],_0x21ef78[_0xad2a('0x2a')]);_0x48f5ac[_0xad2a('0x2e')]=_[_0xad2a('0x2f')](_0x21ef78[_0xad2a('0x2d')],qs['fields'](_0x2d9feb[_0xad2a('0x2a')][_0xad2a('0x30')]));_0x48f5ac['attributes']=_0x48f5ac[_0xad2a('0x2e')][_0xad2a('0x31')]?_0x48f5ac[_0xad2a('0x2e')]:_0x21ef78[_0xad2a('0x2d')];if(_0x2d9feb['query']['includeAll']){_0x48f5ac[_0xad2a('0x41')]=[{'all':!![]}];}_0x48f5ac=_[_0xad2a('0x39')]({},_0x48f5ac,_0x2d9feb[_0xad2a('0x42')]);return db[_0xad2a('0x25')]['find'](_0x48f5ac)[_0xad2a('0x1c')](handleEntityNotFound(_0x1e538b,null))[_0xad2a('0x1c')](respondWithResult(_0x1e538b,null))[_0xad2a('0x3e')](handleError(_0x1e538b,null));};exports[_0xad2a('0x43')]=function(_0x142a57,_0x250269){return db[_0xad2a('0x25')][_0xad2a('0x43')](_0x142a57[_0xad2a('0x44')],{})[_0xad2a('0x1c')](function(_0x4cce1f){var _0x25d7ee=_0x142a57['user']['get']({'plain':!![]});if(!_0x25d7ee)throw new Error(_0xad2a('0x45'));if(_0x25d7ee[_0xad2a('0x46')]===_0xad2a('0x47')){var _0x101323=_0x4cce1f[_0xad2a('0x1e')]({'plain':!![]});var _0x5b81e7=_0xad2a('0x48');return db['UserProfileSection'][_0xad2a('0x49')]({'where':{'name':_0x5b81e7,'userProfileId':_0x25d7ee[_0xad2a('0x4a')]},'raw':!![]})['then'](function(_0x2539a9){if(_0x2539a9&&_0x2539a9[_0xad2a('0x4b')]===0x0){return db['UserProfileResource'][_0xad2a('0x43')]({'name':_0x101323['name'],'resourceId':_0x101323['id'],'type':_0x2539a9[_0xad2a('0x21')],'sectionId':_0x2539a9['id']},{})['then'](function(){return _0x4cce1f;});}else{return _0x4cce1f;}})[_0xad2a('0x3e')](function(_0x5e3ef1){logger[_0xad2a('0x20')](_0xad2a('0x4c'),_0x5e3ef1);throw _0x5e3ef1;});}return _0x4cce1f;})[_0xad2a('0x1c')](respondWithResult(_0x250269,0xc9))['catch'](handleError(_0x250269,null));};exports[_0xad2a('0x4d')]=function(_0x1bb470,_0x7c7bdc){if(_0x1bb470['body']['id']){delete _0x1bb470[_0xad2a('0x44')]['id'];}return db[_0xad2a('0x25')][_0xad2a('0x49')]({'where':{'id':_0x1bb470[_0xad2a('0x40')]['id']}})[_0xad2a('0x1c')](handleEntityNotFound(_0x7c7bdc,null))['then'](saveUpdates(_0x1bb470[_0xad2a('0x44')],null))[_0xad2a('0x1c')](respondWithResult(_0x7c7bdc,null))[_0xad2a('0x3e')](handleError(_0x7c7bdc,null));};exports[_0xad2a('0x1d')]=function(_0x206447,_0xe220b7){return db[_0xad2a('0x25')][_0xad2a('0x49')]({'where':{'id':_0x206447[_0xad2a('0x40')]['id']}})[_0xad2a('0x1c')](handleEntityNotFound(_0xe220b7,null))[_0xad2a('0x1c')](removeEntity(_0xe220b7,null))[_0xad2a('0x3e')](handleError(_0xe220b7,null));};