angular.module('kalgudiApp').service('profileService', ['$q','$rootScope','$http','commonDataFactory','profileRestangular','Restangular','$state','bizContactsRestangular','myconnectsRestangular',"searchRestangular","s3Restangular", function($q,$rootScope,$http,commonDataFactory,profileRestangular,Restangular,$state,bizContactsRestangular,myconnectsRestangular,searchRestangular,s3Restangular) { this.updateProfilePic = function (profileKey,uploadFileUrl) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/profilePic").post(uploadFileUrl).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateSubscribersProfilePic = function (profileKey,requestObj) { var deferred = $q.defer(); profileRestangular.all("assist/" + profileKey + "/profilePic").post(requestObj).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getOTPtoUpdateMobileNumber = function (profileKey,requestObj) { var deferred = $q.defer(); profileRestangular.all("assist/" + profileKey + "/mobileNo").customPUT(requestObj).then(function(data) { deferred.resolve(data); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.verifyOTPtoUpdateMobileNumber = function (profileKey,requestObj) { var deferred = $q.defer(); profileRestangular.all("assist/" + profileKey + "/mobileNo/verifyOTP").customPUT(requestObj).then(function(data) { deferred.resolve(data); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateBusinessLogo = function(profileKey,businessKey,uploadFileUrl) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/businessLogo").post(uploadFileUrl).then(function(data) { outputData = profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getBusinessFields = function(businessTypeId) { var countryCode = $rootScope.loggedInUserCurrentBussinessInfo.locationTo.countryId; var deferred = $q.defer(); commonDataFactory.all("businessFieldNames/"+businessTypeId+"/"+countryCode).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } // location picker this.getLocationsList = function(query,countryId) { var deferred = $q.defer(); commonDataFactory.all('places?q='+query+'&categoryType=LOCATION&countryCode='+countryId).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } //For uploading gallery this.galler_upload_call = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/galleryitems").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getBusinessTypes = function () { var deferred = $q.defer(); commonDataFactory.all('businessTypes?countryId='+$rootScope.loggedInUserCurrentBussinessInfo.locationTo.countryId+"&appVersion=beta").getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.locationChange = function (request) { var deferred = $q.defer(); profileRestangular.all(request.profileKey+"/Businesses/"+request.businessKey+"/"+request.placeId).customPUT().then(function(data) { outputData = profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { deferred.reject(err); }); return deferred.promise; }; this.getProductImage = function (request,keypattern_id) { var countryCode=$rootScope.loggedInUserCurrentBussinessInfo.locationTo.countryId; var deferred = $q.defer(); commonDataFactory.all('productunits?ids='+request.ids+'&countryCode='+countryCode).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); outputData.keypattern_id = keypattern_id; outputData.productId = request.ids; deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.getRegions = function (query) { var deferred = $q.defer(); commonDataFactory.all('countries/'+query+'/regions').getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.getCountries = function (query) { var deferred = $q.defer(); commonDataFactory.all('countries').getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.getProductGroups = function () { var deferred = $q.defer(); commonDataFactory.all('groups').getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.getCommoditiesByGroup = function (groupId) { var deferred = $q.defer(); commonDataFactory.all('groups/'+groupId+'/products').getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.getUserProfile = function(profileKey) { var deferred = $q.defer(); profileRestangular.one(profileKey).get().then(function(data) { outputData=profileRestangular.stripRestangular(data); if(outputData.profileKey==$rootScope.loggedInUserBusinessProfile.profileKey){ window.localStorage['userdata'] = JSON.stringify(data); $rootScope.loggedInUserBusinessProfile = data; $rootScope.loggedInUserCurrentBussinessInfo = _.find($rootScope.loggedInUserBusinessProfile.lstOfUserBusinessDetailsInfo,function(rw){ return rw.businessUUID == $rootScope.globalConfig.currentBussinessId }); } deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.updateChangePassword = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+'/Password').customPUT(request).then(function(data) { deferred.resolve(data); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getUnitsByProductId = function(productId,countryCode) { var deferred = $q.defer(); commonDataFactory.all('productunits?ids='+productId+'&countryCode='+countryCode).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.createMembership = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/BusinessMemberships").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createAward = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/BusinessAwards").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createCertification = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/BusinessCertifications").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createEducation = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/EducationDetails").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); $rootScope.$broadcast("brandsupdated",$rootScope.pendingActivityData.state); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createFamily = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/FamilyDetails").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createPersonalAwards = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/UserAwards").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } /*rest/v1/profiles/{profileKey}/Businesses/{businessKey}/farmregid*/ this.createFarmerRegno = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/farmregid").customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.addNewProducts = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/Products").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); //broadcast to productAEE if($rootScope.pendingActivityData) { $rootScope.$broadcast("brandsupdated",$rootScope.pendingActivityData.state); } }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateProducts = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/updateProducts").customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.addNewProductsBiz = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/Products?isFromBiz=true").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateMembership = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/BusinessMemberships/"+request.businessMembershipId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createOrgInfo = function(request) { var deferred = $q.defer(); profileRestangular.one("updateOrganization/insert").customPOST(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); console.log("data",data); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateAward = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/BusinessAwards/"+request.businessAwardId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateCertification = function(request,profileKey,businessKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/BusinessCertifications/"+request.businessCertificationId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateEducation = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/EducationDetails/"+request.educationDetailId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateFamily = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/FamilyDetails/"+request.familyDetailId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updatePersonalAward = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/UserAwards/"+request.userAwardsDetailId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updatePersonalInfo = function(request,profileKey) { var deferred = $q.defer(); profileRestangular.one(profileKey).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getFullviewData =function(){ var request={ entityId:$rootScope.loggedInUserBusinessProfile.defaultEntityDetails.entityId } var deferred = $q.defer(); commonDataFactory.one("../entities/common/getentity").get(request).then(function(data){ var outputData = commonDataFactory.stripRestangular(data); deferred.resolve(outputData); },function(err) { if(err.config.data == "nonetwork") { } deferred.reject(err); }); return deferred.promise; } this.updateBizDetails = function(request,profileKey,businessKey) { if(request.industryType){ request.industryName =request.industryType.title; request.industryId =request.industryType.id; delete request["industryType"]; } var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteMembership = function(profileKey,businessKey,businessMembershipId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/BusinessMemberships/"+businessMembershipId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteAward = function(profileKey,businessKey,businessAwardId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/BusinessAwards/"+businessAwardId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deletefarmerRegNo = function(profileKey,businessKey,farmerRegistrationId) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/farmregid/"+farmerRegistrationId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteCertification = function(profileKey,businessKey,businessCertificationId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/BusinessCertifications/"+businessCertificationId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteEducation = function(profileKey,educationDetailId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/EducationDetails/"+educationDetailId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteFamily = function(profileKey,familyDetailId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/FamilyDetails/"+familyDetailId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deletePersonalAward = function(profileKey,userAwardsDetailsId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/UserAwards/"+userAwardsDetailsId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } //third party services this.registeringAsThirdParty = function(request) { var deferred = $q.defer(); bizContactsRestangular.all("profiles").post(request).then(function(data) { outputData = bizContactsRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updatingThirdParty = function(request,profileKey,businessKey) { var deferred = $q.defer(); bizContactsRestangular.all("profiles/"+profileKey+"/businesses/"+businessKey).post(request).then(function(data) { outputData = bizContactsRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.createBusinessContact = function(request) { var deferred = $q.defer(); bizContactsRestangular.all("bizcontacts").post(request).then(function(data) { outputData = bizContactsRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateBusinessContact = function(request,businessKey) { var deferred = $q.defer(); bizContactsRestangular.all("bizcontacts/"+businessKey).customPUT(request).then(function(data) { outputData = bizContactsRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } //Bizcontacts this.reloadTotalConnects = function() { var deferred = $q.defer(); bizContactsRestangular.all("bizcontacts").getList().then(function(data) { outputData = bizContactsRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err) { deferred.reject(err); }); return deferred.promise; } this.createTax = function(profileKey,businessKey,request) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/TaxFields").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateTax = function(profileKey,businessKey,request) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/TaxFields/"+request.fieldId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteTax = function(profileKey,businessKey,request) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/TaxFields/"+request).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.pickerproducts = function (query,countryCode,stateId) { var deferred = $q.defer(); commonDataFactory.all('pickerproducts?q='+query+'&countryCode='+countryCode+'&stateId='+stateId).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.pickerproductscat = function (query,countryCode,stateId) { var deferred = $q.defer(); commonDataFactory.all('pickerproducts?q='+query+'&countryCode='+countryCode+'&stateId='+stateId+'&category=true').getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.newProductPicker = function (query,countryCode,stateId) { var deferred = $q.defer(); commonDataFactory.all('productPicker?q='+query+'&countryId='+countryCode+'&stateId='+stateId).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.productsByTypeService = function (query,countryCode,stateId,type) { var deferred = $q.defer(); commonDataFactory.all('productTypePicker?q='+query+'&countryId='+countryCode+'&stateId='+stateId+'&type='+type).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.pickerproductscatProd = function (countryCode,stateId,commodityId) { var deferred = $q.defer(); commonDataFactory.all('pickerproducts?countryCode='+countryCode+'&stateId='+stateId+'&commodityId='+commodityId).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.geolocationservice = function(request) { var deferred = $q.defer(); profileRestangular.all('getLocation/reversegeo').customPOST(request).then(function(datasample) { deferred.resolve(datasample); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; }; this.getlocationNames = function(query,categoryType,countryCode) { var deferred = $q.defer(); commonDataFactory.all('places?q='+query+'&categoryType='+categoryType+'&countryCode='+countryCode).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.getbusinessProducts = function(profileKey,businessKey) { var deferred = $q.defer(); commonDataFactory.all('businessProducts/'+profileKey+'/'+businessKey).getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getGeoLocationsLatLong = function(request) { var deferred = $q.defer(); profileRestangular.all('geoServices/locateGeo?range=10').customPOST(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; }; this.forgotPassword = function(request) { var deferred = $q.defer(); searchRestangular.all('frontendServices/forgotPassword').customPOST(request).then(function(data) { deferred.resolve(data); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.deleteProduct = function(profileKey,businessKey,productId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/deleteProducts/"+productId).remove().then(function(data) { deferred.resolve(data); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.availLangKalgudi = function(profileKey,businessKey,productId) { var deferred = $q.defer(); searchRestangular.all("platform/languages/available_Languages").getList().then(function(data) { outputData=searchRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.gettransporterUnits = function() { var deferred = $q.defer(); commonDataFactory.all('units').getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getvehicleDetails = function() { var deferred = $q.defer(); profileRestangular.all("specificProducts/productsInApmc?locationId="+$rootScope.loggedInUserCurrentBussinessInfo.locationTo.placeId+"&groupId=32").getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.updatevehicleDetails = function(profileKey,businessKey,request) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/vehicle").customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getWarehouseDetails = function() { var deferred = $q.defer(); profileRestangular.all("specificProducts/productsInApmc?locationId="+$rootScope.loggedInUserCurrentBussinessInfo.locationTo.placeId+"&groupId=31").getList().then(function(data) { outputData=commonDataFactory.stripRestangular(data); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.addgodownDetails = function(profileKey,businessKey,request) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/warehouse").customPOST(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.deleteGodownDetails = function(profileKey,businessKey,warehouseDetailsId) { var deferred = $q.defer(); profileRestangular.one(profileKey+"/Businesses/"+businessKey+"/warehouse/"+warehouseDetailsId).remove().then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateGodownDetails = function(profileKey,businessKey,request,warehouseDetailsId) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/warehouse/"+warehouseDetailsId).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.TermsAndConditions = function(profileKey,businessKey,actionType,request) { var deferred = $q.defer(); profileRestangular.all(profileKey+"/Businesses/"+businessKey+"/termsnconditions?actionType="+actionType).customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getFarmerSearchUsers = function(request,type) { var deferred = $q.defer(); searchRestangular.one("formers/profiles?businessTypeName="+type+"&q="+request.query+"&offset="+request.offset+"&limit="+request.limit).get().then(function(serviceResult) { var newResponse = {}; serviceResult.data = profileRestangular.stripRestangular(serviceResult); angular.forEach(serviceResult.data, function(value, key) { newResponse[key] = angular.copy(value); }); serviceResult = _.toArray(newResponse); deferred.resolve(serviceResult); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getAllUsers = function(request,profileKey) { var deferred = $q.defer(); framingUrl = "search/profile?q="+encodeURIComponent(request.query)+"&offset="+request.offset+"&limit="+request.limit; searchRestangular.one(framingUrl).get().then(function(serviceResult) { var newResponse = {}; if (angular.isArray(serviceResult.data)) { angular.forEach(serviceResult.data, function(value, key) { newResponse[key] = angular.copy(JSON.parse(value)); }); } if(Object.keys(newResponse).length==0) { newResponse = Object.keys(newResponse).length==0?newResponse:[newResponse]; } serviceResult.data = _.toArray(newResponse); serviceResult.numFound = serviceResult.numFound; /* serviceResult.data = profileRestangular.stripRestangular(serviceResult.data); angular.forEach(serviceResult.data, function(value, key) { newResponse[key] = angular.copy(JSON.parse(value)); }); serviceResult = _.toArray(newResponse);*/ deferred.resolve(serviceResult); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getNonEmployees = function(request,profileKey) { var deferred = $q.defer(); //http://devkalgudi.vasudhaika.net/rest/v1/profiles/organizations/M00090r0PRFREG2018072445841804VSSPL/nonemployees?keyword=zzzzzzz&offset=0&limit=10 framingUrl = "profiles/organizations/"+profileKey+"/nonemployees?keyword="+request.query+"&offset="+request.offset+"&limit="+request.limit; searchRestangular.one(framingUrl).get().then(function(serviceResult) { var newResponse = {}; if (angular.isArray(serviceResult.data)) { angular.forEach(serviceResult.data, function(value, key) { newResponse[key] = angular.copy(JSON.parse(value)); }); } if(Object.keys(newResponse).length==0) { newResponse = Object.keys(newResponse).length==0?newResponse:[newResponse]; } serviceResult.data = _.toArray(newResponse); serviceResult.numFound = serviceResult.numFound; deferred.resolve(serviceResult); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.searchEntityWithKey = function(request){ var deferred = $q.defer(); searchRestangular.one("entities/search/signupentitySearch?q="+request.query+"&entityType="+request.type+"&offset="+request.offset+"&limit="+request.limit).get().then(function(serviceResult) { var newResponse = {}; serviceResult = profileRestangular.stripRestangular(serviceResult); deferred.resolve(serviceResult); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.addMembers = function(request) { var deferred = $q.defer(); myconnectsRestangular.all("society/members").post(request).then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function(err) { deferred.reject(err); }); return deferred.promise; } this.getPoolMembers = function(request, orgId, bizId) { var deferred = $q.defer(); var url = 'society/members/' + request.offset + '/' + request.limit; if (orgId && bizId) { url += '?orgId=' + orgId + '&orgBusinessId=' + bizId; } myconnectsRestangular.one(url).get().then( function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); } ); return deferred.promise; } this.getEmployeesList = function(request) { var deferred = $q.defer(); profileRestangular.one("organizations/" + request.orgId + "/employees?keyword=" + request.keyword + "&offset=" + request.offset + "&limit=" + request.limit).get().then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.deleteEmployees = function(request) { var deferred = $q.defer(); var data = JSON.stringify(request.profileKeys); console.log("requestObj "+ data); profileRestangular.all("organizations/" + request.orgId + "/employees").customOperation("remove", null, {},{}, data).then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.addEmployees = function(request) { var deferred = $q.defer(); var data = JSON.stringify(request.list); profileRestangular.all("organizations/" + request.orgId + "/employees").customOperation("post", null, {},{}, data).then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getPendingEmployeesList = function(request) { var deferred = $q.defer(); profileRestangular.one("organizations/" + request.orgId + "/employees/pending?offset=" + request.offset + "&limit=" + request.limit).get().then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.addEmployeeList = function(request) { var deferred = $q.defer(); profileRestangular.one("organizations/" + request.orgId + "/employees?keyword=" + request.keyword + "&offset=" + request.offset + "&limit=" + request.limit).delete().then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.deleteMember = function(member) { var deferred = $q.defer(); myconnectsRestangular.all("society/deletemember").post(member).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.acceptPendingRequest = function(profileKey,key) { var deferred = $q.defer(); profileRestangular.one("organizations/" + profileKey + "/employees/approve?key=" + key).put().then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getSearchUsers = function(request) { var deferred = $q.defer(); searchRestangular.one("formers/profiles?businessTypeName=agency&q="+request.query+"&offset="+request.offset+"&limit="+request.limit).get().then(function(serviceResult) { var newResponse = {}; serviceResult.data = profileRestangular.stripRestangular(serviceResult); angular.forEach(serviceResult.data, function(value, key) { newResponse[key] = angular.copy(value); }); serviceResult = _.toArray(newResponse); deferred.resolve(serviceResult); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.locationToProfileService = function (profileKey,businessId,locationTO) { var deferred = $q.defer(); delete locationTO['invalid']; profileRestangular.one(profileKey+'/Businesses/'+businessId+'/gglLocation').customPUT(locationTO).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateSubscribersLocation = function (profileKey, businessId, requestObj) { var deferred = $q.defer(); profileRestangular.one(profileKey+'/Businesses/assist/' + businessId + '/gglLocation').customPOST(requestObj).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateSubscribersName = function (profileKey, requestObj) { var deferred = $q.defer(); profileRestangular.one('assist/'+profileKey+'/firstname').customPOST(requestObj).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateSubscribersTitle = function (profileKey, requestObj) { var deferred = $q.defer(); profileRestangular.one('assist/'+profileKey+'/title').customPOST(requestObj).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.updateSubscribersDefaultCompany = function (profileKey, requestObj) { var deferred = $q.defer(); profileRestangular.one('assist/'+profileKey+'/defaultCompany').customPOST(requestObj).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } this.getCount = function(request) { var deferred = $q.defer(); myconnectsRestangular.one("society/membersProfileDetails?type="+request).get().then(function(result) { outputData = myconnectsRestangular.stripRestangular(result); deferred.resolve(outputData); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.updateDefaultEntity = function(profileKey,request) { console.log('profileKey',profileKey); var deferred = $q.defer(); profileRestangular.all(profileKey+"/updateDefaultEntity").customPUT(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { if(err.config.data == "nonetwork") { $rootScope.spinerisActive = false; } deferred.reject(err); }); return deferred.promise; } /**service call for asserts */ // /assets/M0009os0PRFREG2018092718174373VSSPL/livestock this.addAsset = function(profileKey,request) { var deferred = $q.defer(); profileRestangular.all('assets/'+ profileKey +"/livestock").post(request).then(function(data) { outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function (err) { $rootScope.spinerisActive = false; deferred.reject(err); }); return deferred.promise; } this.getAsset = function(profileKey, limit, offSet){ var deferred = $q.defer(); profileRestangular.one('assets/'+ profileKey +"/livestock?limit="+ limit +"&offset="+ offSet).get().then(function(data){ outputData=profileRestangular.stripRestangular(data); deferred.resolve(outputData); }, function(err){ $rootScope.spinerisActive = false; deferred.reject(err); }); return deferred.promise; } this.getOthersSocialActivities = function (profileKey, offset, limit) { var deferred = $q.defer(); offset = offset || 0; limit = limit || 10; const URL = '../stream/socialactivity?profileKey=' + profileKey + '&offset=' + offset + '&limit=' + limit; profileRestangular.one(URL) .get() .then( function (res) { res = profileRestangular.stripRestangular(res); deferred.resolve(res); }, function (err) { deferred.reject(err); } ) return deferred.promise; } this.getOthersBusinessActivities = function (profileKey, offset, limit) { var deferred = $q.defer(); offset = offset || 0; limit = limit || 10; const URL = '../stream/businessactivity?profileKey=' + profileKey + '&offset=' + offset + '&limit=' + limit; profileRestangular.one(URL) .get() .then( function (res) { res = profileRestangular.stripRestangular(res); deferred.resolve(res); }, function (err) { deferred.reject(err); } ) return deferred.promise; } /** * Update the ecommerce configuration for a user * * @param {profileKey} */ this.updateEcommerceConfiguration = function(requestObj,profileKey) { var deferred = $q.defer(); profileRestangular.one("../ecom/orders/ecomConfig/" + profileKey).customPUT(requestObj).then(function(result) { deferred.resolve(result); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getEcommerceConfiguration = function(profileKey) { var deferred = $q.defer(); profileRestangular.one("../ecom/orders/ecomConfig/" + profileKey).get().then(function(result) { deferred.resolve(result); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.updateFooterLink = function(requestObj) { var deferred = $q.defer(); profileRestangular.one("../catalog/footerlinks").customPUT(requestObj).then(function(result) { deferred.resolve(result); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getFooterLink = function(key) { var deferred = $q.defer(); s3Restangular.one("../data/footerlinks/" + key).get().then(function(result) { deferred.resolve(result); }, function (err) { deferred.reject(err); }); return deferred.promise; } this.getFooterSections = function(key) { var deferred = $q.defer(); s3Restangular.one("../data/footerlinks/" + key).get().then(function(result) { deferred.resolve(s3Restangular.stripRestangular(result)); }, function (err) { deferred.reject(err); }); return deferred.promise; } }]);