Built motion from commit (unavailable).|2.5.4
[motion2.git] / server / api / intDynamics365Field / intDynamics365Field.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 _0xde64=['query','keys','attributes','intersection','model','fields','length','hasOwnProperty','nolimit','order','sort','where','filters','pick','filter','type','merge','options','then','findAll','catch','params','create','body','find','html-pdf','eml-format','rimraf','zip-dir','fast-json-patch','request-promise','bluebird','mustache','sox','to-csv','squel','crypto','jsforce','desk.js','querystring','ioredis','../../components/auth/service','../../components/parsers/qs','../../config/license/hardware','../../config/logger','api','../../config/utils','../../config/environment','status','end','json','count','offset','limit','Content-Range','apply','reject','save','update','destroy','sendStatus','error','stack','name','send','index','map','Dynamics365Field','rawAttributes','fieldName','key'];(function(_0x3e3d12,_0x5d8c29){var _0x2685a8=function(_0x10943b){while(--_0x10943b){_0x3e3d12['push'](_0x3e3d12['shift']());}};_0x2685a8(++_0x5d8c29);}(_0xde64,0x17c));var _0x4de6=function(_0x441f4b,_0x2f1443){_0x441f4b=_0x441f4b-0x0;var _0x6e3970=_0xde64[_0x441f4b];return _0x6e3970;};'use strict';var pdf=require(_0x4de6('0x0'));var emlformat=require(_0x4de6('0x1'));var rimraf=require(_0x4de6('0x2'));var zipdir=require(_0x4de6('0x3'));var jsonpatch=require(_0x4de6('0x4'));var rp=require(_0x4de6('0x5'));var moment=require('moment');var BPromise=require(_0x4de6('0x6'));var Mustache=require(_0x4de6('0x7'));var util=require('util');var path=require('path');var sox=require(_0x4de6('0x8'));var csv=require(_0x4de6('0x9'));var ejs=require('ejs');var fs=require('fs');var _=require('lodash');var squel=require(_0x4de6('0xa'));var crypto=require(_0x4de6('0xb'));var jsforce=require(_0x4de6('0xc'));var deskjs=require(_0x4de6('0xd'));var toCsv=require(_0x4de6('0x9'));var querystring=require(_0x4de6('0xe'));var Papa=require('papaparse');var Redis=require(_0x4de6('0xf'));var authService=require(_0x4de6('0x10'));var qs=require(_0x4de6('0x11'));var as=require('../../components/parsers/advancedSearch');var hardwareService=require(_0x4de6('0x12'));var logger=require(_0x4de6('0x13'))(_0x4de6('0x14'));var utils=require(_0x4de6('0x15'));var config=require(_0x4de6('0x16'));var db=require('../../mysqldb')['db'];function respondWithStatusCode(_0x222272,_0x3baa31){_0x3baa31=_0x3baa31||0xcc;return function(_0xb8e256){if(_0xb8e256){return _0x222272['sendStatus'](_0x3baa31);}return _0x222272[_0x4de6('0x17')](_0x3baa31)[_0x4de6('0x18')]();};}function respondWithResult(_0x27c108,_0x2bd121){_0x2bd121=_0x2bd121||0xc8;return function(_0x58b0c1){if(_0x58b0c1){return _0x27c108[_0x4de6('0x17')](_0x2bd121)[_0x4de6('0x19')](_0x58b0c1);}};}function respondWithFilteredResult(_0x43d59b,_0x4dd3b5){return function(_0x33fd67){if(_0x33fd67){var _0x54e2f2=_0x33fd67[_0x4de6('0x1a')],_0x4cbb5c=_0x4dd3b5[_0x4de6('0x1b')],_0x30b3b8=_0x4dd3b5[_0x4de6('0x1b')]+_0x4dd3b5[_0x4de6('0x1c')],_0x3ef217;if(_0x30b3b8>=_0x54e2f2){_0x30b3b8=_0x54e2f2;_0x3ef217=0xc8;}else{_0x3ef217=0xce;}_0x43d59b[_0x4de6('0x17')](_0x3ef217);return _0x43d59b['set'](_0x4de6('0x1d'),_0x4cbb5c+'-'+_0x30b3b8+'/'+_0x54e2f2)[_0x4de6('0x19')](_0x33fd67);}return null;};}function patchUpdates(_0x2c7e57){return function(_0x23294d){try{jsonpatch[_0x4de6('0x1e')](_0x23294d,_0x2c7e57,!![]);}catch(_0x360cf7){return BPromise[_0x4de6('0x1f')](_0x360cf7);}return _0x23294d[_0x4de6('0x20')]();};}function saveUpdates(_0x1b935f,_0x15c923){return function(_0x4c4d13){if(_0x4c4d13){return _0x4c4d13[_0x4de6('0x21')](_0x1b935f)['then'](function(_0x1a6e5a){return _0x1a6e5a;});}return null;};}function removeEntity(_0x7af040,_0x43771b){return function(_0x5de99f){if(_0x5de99f){return _0x5de99f[_0x4de6('0x22')]()['then'](function(){_0x7af040[_0x4de6('0x17')](0xcc)[_0x4de6('0x18')]();});}};}function handleEntityNotFound(_0x1a64e9,_0x5ddbab){return function(_0x478d83){if(!_0x478d83){_0x1a64e9[_0x4de6('0x23')](0x194);}return _0x478d83;};}function handleError(_0x2191db,_0x3be904){_0x3be904=_0x3be904||0x1f4;return function(_0x8d0007){logger[_0x4de6('0x24')](_0x8d0007[_0x4de6('0x25')]);if(_0x8d0007['name']){delete _0x8d0007[_0x4de6('0x26')];}_0x2191db[_0x4de6('0x17')](_0x3be904)[_0x4de6('0x27')](_0x8d0007);};}exports[_0x4de6('0x28')]=function(_0x3e131a,_0x281060){var _0xa2b88c={},_0x7bc61e={},_0x28cf1e={'count':0x0,'rows':[]};var _0x4f168b=_[_0x4de6('0x29')](db[_0x4de6('0x2a')][_0x4de6('0x2b')],function(_0x29618d){return{'name':_0x29618d[_0x4de6('0x2c')],'type':_0x29618d['type'][_0x4de6('0x2d')]};});_0x7bc61e['model']=_[_0x4de6('0x29')](_0x4f168b,_0x4de6('0x26'));_0x7bc61e[_0x4de6('0x2e')]=_[_0x4de6('0x2f')](_0x3e131a['query']);_0x7bc61e['filters']=_['intersection'](_0x7bc61e['model'],_0x7bc61e['query']);_0xa2b88c[_0x4de6('0x30')]=_[_0x4de6('0x31')](_0x7bc61e[_0x4de6('0x32')],qs[_0x4de6('0x33')](_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x33')]));_0xa2b88c[_0x4de6('0x30')]=_0xa2b88c[_0x4de6('0x30')][_0x4de6('0x34')]?_0xa2b88c[_0x4de6('0x30')]:_0x7bc61e[_0x4de6('0x32')];if(!_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x35')](_0x4de6('0x36'))){_0xa2b88c[_0x4de6('0x1c')]=qs[_0x4de6('0x1c')](_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x1c')]);_0xa2b88c[_0x4de6('0x1b')]=qs[_0x4de6('0x1b')](_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x1b')]);}_0xa2b88c[_0x4de6('0x37')]=qs[_0x4de6('0x38')](_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x38')]);_0xa2b88c[_0x4de6('0x39')]=qs[_0x4de6('0x3a')](_[_0x4de6('0x3b')](_0x3e131a['query'],_0x7bc61e[_0x4de6('0x3a')]),_0x4f168b);if(_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x3c')]){_0xa2b88c[_0x4de6('0x39')]=_['merge'](_0xa2b88c[_0x4de6('0x39')],{'$or':_[_0x4de6('0x29')](_0x4f168b,function(_0x74dc14){if(_0x74dc14[_0x4de6('0x3d')]!=='VIRTUAL'){var _0x266e67={};_0x266e67[_0x74dc14['name']]={'$like':'%'+_0x3e131a[_0x4de6('0x2e')][_0x4de6('0x3c')]+'%'};return _0x266e67;}})});}_0xa2b88c=_[_0x4de6('0x3e')]({},_0xa2b88c,_0x3e131a[_0x4de6('0x3f')]);var _0x37feb0={'where':_0xa2b88c[_0x4de6('0x39')]};return db[_0x4de6('0x2a')][_0x4de6('0x1a')](_0x37feb0)[_0x4de6('0x40')](function(_0xdfa5ed){_0x28cf1e[_0x4de6('0x1a')]=_0xdfa5ed;if(_0x3e131a[_0x4de6('0x2e')]['includeAll']){_0xa2b88c['include']=[{'all':!![]}];}return db[_0x4de6('0x2a')][_0x4de6('0x41')](_0xa2b88c);})[_0x4de6('0x40')](function(_0x195630){_0x28cf1e['rows']=_0x195630;return _0x28cf1e;})['then'](respondWithFilteredResult(_0x281060,_0xa2b88c))[_0x4de6('0x42')](handleError(_0x281060,null));};exports['show']=function(_0x22fe9c,_0x54f4d2){var _0x3696c8={'raw':!![],'where':{'id':_0x22fe9c[_0x4de6('0x43')]['id']}},_0x52100f={};_0x52100f[_0x4de6('0x32')]=_[_0x4de6('0x2f')](db[_0x4de6('0x2a')]['rawAttributes']);_0x52100f[_0x4de6('0x2e')]=_[_0x4de6('0x2f')](_0x22fe9c['query']);_0x52100f['filters']=_[_0x4de6('0x31')](_0x52100f['model'],_0x52100f[_0x4de6('0x2e')]);_0x3696c8[_0x4de6('0x30')]=_[_0x4de6('0x31')](_0x52100f[_0x4de6('0x32')],qs[_0x4de6('0x33')](_0x22fe9c[_0x4de6('0x2e')][_0x4de6('0x33')]));_0x3696c8[_0x4de6('0x30')]=_0x3696c8[_0x4de6('0x30')][_0x4de6('0x34')]?_0x3696c8[_0x4de6('0x30')]:_0x52100f[_0x4de6('0x32')];if(_0x22fe9c['query']['includeAll']){_0x3696c8['include']=[{'all':!![]}];}_0x3696c8=_[_0x4de6('0x3e')]({},_0x3696c8,_0x22fe9c[_0x4de6('0x3f')]);return db['Dynamics365Field']['find'](_0x3696c8)[_0x4de6('0x40')](handleEntityNotFound(_0x54f4d2,null))['then'](respondWithResult(_0x54f4d2,null))[_0x4de6('0x42')](handleError(_0x54f4d2,null));};exports[_0x4de6('0x44')]=function(_0x4ec6ee,_0x34bc6f){return db[_0x4de6('0x2a')][_0x4de6('0x44')](_0x4ec6ee[_0x4de6('0x45')],{})[_0x4de6('0x40')](respondWithResult(_0x34bc6f,0xc9))['catch'](handleError(_0x34bc6f,null));};exports[_0x4de6('0x21')]=function(_0x388b78,_0x2e23ad){if(_0x388b78[_0x4de6('0x45')]['id']){delete _0x388b78[_0x4de6('0x45')]['id'];}return db[_0x4de6('0x2a')][_0x4de6('0x46')]({'where':{'id':_0x388b78[_0x4de6('0x43')]['id']}})[_0x4de6('0x40')](handleEntityNotFound(_0x2e23ad,null))[_0x4de6('0x40')](saveUpdates(_0x388b78[_0x4de6('0x45')],null))[_0x4de6('0x40')](respondWithResult(_0x2e23ad,null))[_0x4de6('0x42')](handleError(_0x2e23ad,null));};exports[_0x4de6('0x22')]=function(_0x354558,_0x12ce25){return db[_0x4de6('0x2a')]['find']({'where':{'id':_0x354558['params']['id']}})[_0x4de6('0x40')](handleEntityNotFound(_0x12ce25,null))[_0x4de6('0x40')](removeEntity(_0x12ce25,null))['catch'](handleError(_0x12ce25,null));};