Exemple #1
0
    def save_keyword(self):
        try:
            if self.count(self.key_keyword):
                __body = {"$set": self.keyword}

                __condition = {'key': self.key_keyword}
                self.result['value'] = MongodbModel(
                    collection='setting', body=__body,
                    condition=__condition).update()
                self.result['status'] = True
            else:
                self.keyword["key"] = self.key_keyword
                __body = self.keyword

                self.result['value'] = MongodbModel(collection='setting',
                                                    body=__body).insert()
                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > save',
                                data='collection > setting')
            return self.result
Exemple #2
0
    def get_all_by_category(self, access=None):
        try:
            if access is not None:
                r = MongodbModel(collection='agency',
                                 body={
                                     'category': self.category,
                                     "_id": {
                                         "$in": access
                                     }
                                 }).get_all()
            else:
                r = MongodbModel(collection='agency',
                                 body={
                                     'category': self.category
                                 }).get_all()

            for i in r:
                self.get_agency(i)
            self.result['value'] = self.value
            self.result['status'] = True
            return self.result
        except:
            Debug.get_exception(sub_system='agency',
                                severity='error',
                                tags='get_all_by_category')
            return self.result
Exemple #3
0
    def get_one(self):
        try:
            __body = {"_id": self.id}
            __key = {
                "_id": 1,
                "name": 1,
                "sections.section": 1,
                "sort": 1,
                "visit": 1,
                "reverse": 1,
                "sections._id": 1
            }
            r = MongodbModel(collection='bolton', body=__body,
                             key=__key).get_one_key()
            r['sort'] = r['sort'] if 'sort' in r.keys() else "user_choose"
            r['reverse'] = r['reverse'] if 'reverse' in r.keys() else True
            r['visit'] = r['visit'] if 'visit' in r.keys() else 0
            self.result['value'] = r
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all',
                                data='collection > bolton')
            self.result['value'] = []
            return self.result
Exemple #4
0
    def save_menu_font(self):
        try:
            if self.count(self.key_font):
                __body = {
                    "$set": {
                        "menu": {
                            "font": self.font,
                            "size": self.size
                        }
                    }
                }

                __condition = {'key': self.key_font}
                self.result['value'] = MongodbModel(
                    collection='setting', body=__body,
                    condition=__condition).update()
                self.result['status'] = True
            else:
                __body = {"key": self.key_font, "menu": {"font": self.font}}

                self.result['value'] = MongodbModel(collection='setting',
                                                    body=__body).insert()
                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > save',
                                data='collection > setting')
            return self.result
Exemple #5
0
 def insert_mongodb(body):
     MongodbModel(body=body, collection='news').insert()
     if MongodbModel(body={}, collection='news').count() > 60:
         n = MongodbModel(body={}, collection='news', sort="date", page=1, size=1, ascending=1).get_all_pagination()
         _id = 0
         for i in n:
             _id = i['_id']
         MongodbModel(body={"_id": _id}, collection='news').delete()
Exemple #6
0
 def get_max_char_summary(self):
     try:
         r = MongodbModel(collection='setting',
                          body={
                              'key': self.key_general
                          }).get_one()
         if r and 'max_char_summary' in r.keys():
             return r['max_char_summary']
         return 150
     except:
         Debug.get_exception(sub_system='admin',
                             severity='error',
                             tags='mongodb > get_one',
                             data='collection > setting')
         return 150
Exemple #7
0
    def get_all_child_user(self, access):
        try:
            r = MongodbModel(collection='subject',
                             body={
                                 "parent": self.parent,
                                 "_id": {
                                     "$in": access
                                 }
                             }).get_all()
            if r:
                l = [
                    dict(
                        id=i['_id'],
                        name=i['name'],
                        parent=i['parent'],
                    ) for i in r
                ]
                self.result['value'] = l
                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all_parent',
                                data='collection > subject')
            return self.result
Exemple #8
0
    def insert(self):
        try:
            if self.function == 'search':
                self.get_result()

            __body = {
                'index': self.index,
                'doc_type': self.doc_type,
                'body': self.body,
                'item_id': self.item_id,
                'result': self._result,
                'function': self.function,
                'date': self.date,
            }

            self.result['value'] = str(
                MongodbModel(collection='elastic_statistic',
                             body=__body).insert())
            self.result['status'] = True
            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > save',
                                data='collection > elastic_statistic')
            return self.result
    def insert(self, **body):
        try:
            __body = {
                "name": body['name'],
                "user": self.user,
                "tags": body['tags'],
                "all_words": body['all_words'],
                "without_words": body['without_words'],
                "each_words": body['each_words'],
                "exactly_word": body['exactly_word'],
                "period": body['period'],
                "start": body['start'],
                "end": body['end'],
                "agency": body['agency']
            }

            self.result['value'] = MongodbModel(
                collection='user_search_pattern', body=__body).insert()
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > save_search_pattern',
                                data='collection > user_search_pattern')
            return self.result
Exemple #10
0
 def get_all(self, _page=1, _size=20):
     try:
         __body = {}
         r = MongodbModel(collection='news_report_broken',
                          body=__body,
                          page=_page,
                          size=_size).get_all_pagination()
         ls = []
         for i in r:
             i['date'] = khayyam.JalaliDatetime(
                 i['date']).strftime('%Y/%m/%d %H:%M:%S')
             try:
                 i['full_name'] = UserModel(
                     _id=i['user']).get_one()['value']['full_name']
             except:
                 i['full_name'] = ''
             ls.append(i)
         self.result['value'] = ls
         self.result['status'] = True
         return self.result
     except:
         Debug.get_exception(sub_system='admin',
                             severity='error',
                             tags='mongodb > get_all',
                             data='collection > news_report_broken')
         return self.result
Exemple #11
0
 def delete(self, kill=False):
     try:
         workers = RedisBaseModel(key=self.__key).get()
         try:
             workers = json.loads(workers)
         except:
             workers = []
         if workers is None:
             workers = []
         _workers = []
         _w = None
         for w in workers:
             if w['_id'] != self.id:
                 _workers.append(w)
             else:
                 _w = w
         if _w is not None:
             _w['end'] = datetime.datetime.now()
             _w['start'] = d_parser.parse(_w['start'])
             _w['kill'] = kill
             MongodbModel(collection="worker", body=_w).insert()
         RedisBaseModel(key=self.__key, value=json.dumps(_workers)).set()
         return True
     except:
         Debug.get_exception(sub_system='admin',
                             severity='error',
                             tags='redis > set',
                             data='')
         return False
Exemple #12
0
    def update(self):
        try:
            for i in self.sections:
                if i['_id'] == "None":
                    i['_id'] = ObjectId()
                else:
                    i['_id'] = ObjectId(i['_id'])

            __body = {
                "$set": {
                    'name': self.name,
                    'format': self.format,
                    'type': self.type,
                    'manual': self.manual,
                    'sections': self.sections
                }
            }

            __condition = {"_id": self.id}
            MongodbModel(collection='bolton',
                         body=__body,
                         condition=__condition).update()

            self.result['status'] = True
            return self.result
        except:
            print Debug.get_exception(sub_system='admin',
                                      severity='error',
                                      tags='mongodb > save',
                                      data='collection > bolton')
            return self.result
Exemple #13
0
    def get_all_detail(self):
        try:
            __body = {"user": self.user}
            __key = {
                "_id": 1,
                "name": 1,
                "sections.section": 1,
                "sections._id": 1
            }
            r = MongodbModel(collection='bolton',
                             body=__body,
                             key=__key,
                             sort="date").get_all_key_sort()
            if r:
                l = []
                for i in r:
                    l.append(self.get_bolton_detail(i))
                self.result['value'] = l

                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all',
                                data='collection > bolton')
            self.result['value'] = []
            return self.result
Exemple #14
0
    def get_all_parent(self):
        try:
            r = MongodbModel(collection='group',
                             body={
                                 "parent": None
                             },
                             sort="sort",
                             ascending=1).get_all_sort()
            if r:
                l = [
                    dict(id=str(i['_id']),
                         name=i['name'],
                         sort=i['sort'] if "sort" in i.keys() else 0,
                         parent=i['parent']) for i in r
                ]

                self.result['value'] = l
                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all_parent',
                                data='collection > group')
            return self.result
Exemple #15
0
    def update_html_news_bolton(self, news):
        try:
            __body = {
                "$set": {
                    "body": news['body'],
                    "title": news['title'],
                    "ro_title": news['ro_title'],
                    "summary": news['summary'],
                    "image": news['image'],
                    "images": news['images']
                }
            }
            __condition = {"_id": self.id}
            MongodbModel(collection='bolton_news',
                         body=__body,
                         condition=__condition).update()
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > delete',
                                data='collection > bolton_news')
            return self.result
Exemple #16
0
 def get_all_subject_user(self, subjects):
     try:
         r = MongodbModel(collection='subject',
                          body={
                              "_id": {
                                  "$in": subjects
                              },
                              "parent": None
                          },
                          sort="sort",
                          ascending=1).get_all_sort()
         if r:
             l = [
                 dict(id=i['_id'],
                      name=i['name'],
                      sort=i['sort'] if "sort" in i.keys() else 0,
                      parent=i['parent']) for i in r
             ]
             self.result['value'] = l
             self.result['status'] = True
         return self.result
     except:
         Debug.get_exception(sub_system='agency',
                             severity='error',
                             tags='get_all_agency')
         return self.result
Exemple #17
0
    def save_charts_content(self, **body):
        try:
            __body = {"$set": {"charts_content": {
                "content_format": body['content_format'],
                "importance_news": body['importance_news'],
                "performance_agency_number_news": body['based_count_news'],
                "general_statistics_agency": body['stats_news'],
                "daily_statistics_news": body['daily_news'],
                "important_topic_news": body['news_headlines'],
                "important_keyword_news": body['tags_news'],
                "reflecting_news": body['reflecting_news'],
                "importance_news_media_placement": body['importance_media'],
                "content_direction": body['positive_negative_orientation'],
                "agency_direction": body['orientation_news_sources'],
                "important_news_maker": body['important_news_makers'],
                "main_sources_news_1": body['main_sources_news_1'],
                "main_sources_news_2": body['main_sources_news_2'],
            }}}

            __condition = {'_id': ObjectId(self.id)}
            self.result['value'] = MongodbModel(collection='user_group', body=__body, condition=__condition).update()
            self.result['status'] = True
            return self.result
        except:
            Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > save_charts_content', data='collection > user_group')
            return self.result
    def get_all(self):
        try:
            __body = {
                "user": self.user,
            }

            r = MongodbModel(collection='user_search_pattern',
                             body=__body).get_all()
            ls = []
            if r:
                for i in r:
                    ls.append({
                        "name": i['name'],
                        "tags": i['tags'],
                        "all_words": i['all_words'],
                        "without_words": i['without_words'],
                        "each_words": i['each_words'],
                        "exactly_word": i['exactly_word'],
                        "period": i['period'],
                        "start": i['start'],
                        "end": i['end'],
                        "agency": i['agency']
                    })
            self.result['value'] = ls
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all',
                                data='collection > user_search_pattern')
            return self.result
Exemple #19
0
    def save(self, **agency):
        try:
            __body = {
                'name': agency['name'],
                'base_link': agency['link'],
                'color': agency['color'],
                'category': agency['category'],
                'direction': agency['direction'],
                'rss_list': agency['rss_list'],
                'comparatives': agency['comparatives'],
                'type': agency['type_agency'],
                'active': agency['active'],
                'pic': agency['pic'],
                'float_left': agency['float_left'],
                'add_by_confirm': agency['add_by_confirm'],
                'extract_image': agency['extract_image'],
                'copy_key_words': agency['key_words'],
                'link': agency['link'],
                'links': agency['links'],
            }

            self.result['value'] = str(
                MongodbModel(collection='agency', body=__body).insert())
            self.result['status'] = True
            return self.result
        except:
            Debug.get_exception(sub_system='agency',
                                severity='error',
                                tags='save')
            return self.result
Exemple #20
0
 def update(self, **agency):
     try:
         __body = {
             "$set": {
                 'name': agency['name'],
                 'base_link': agency['link'],
                 'color': agency['color'],
                 'category': agency['category'],
                 'direction': agency['direction'],
                 'active': agency['active'],
                 'pic': agency['pic'],
                 'float_left': agency['float_left'],
                 'add_by_confirm': agency['add_by_confirm'],
                 'extract_image': agency['extract_image'],
                 'copy_key_words': agency['key_words'],
                 'link': agency['link'],
                 'links': agency['links'],
                 'comparatives': agency['comparatives'],
                 'rss_list': agency['rss_list']
             }
         }
         condition = {"_id": self.id}
         self.result['value'] = MongodbModel(collection='agency',
                                             body=__body,
                                             condition=condition).update()
         self.result['status'] = True
         return self.result
     except:
         Debug.get_exception(sub_system='agency',
                             severity='error',
                             tags='save')
         return self.result
Exemple #21
0
    def get_all(self, __type):
        try:
            r = MongodbModel(collection='direction',
                             body={
                                 'type': __type
                             },
                             sort="sort",
                             ascending=1).get_all_sort()
            if r:
                l = [
                    dict(id=i['_id'],
                         name=i['name'],
                         sort=i['sort'] if "sort" in i.keys() else 0,
                         type=i['type']) for i in r
                ]
                self.result['value'] = l
                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all',
                                data='collection > direction')
            return self.result
Exemple #22
0
    def get_one(self):
        try:
            __body = {"_id": self.id}
            __key = {"_id": 1, "name": 1, "sections.section": 1, "sort": 1, "visit": 1, "reverse": 1, "sections._id": 1}
            r = MongodbModel(collection='bolton', body=__body, key=__key).get_one_key()
            r['sort'] = r['sort'] if 'sort' in r.keys() else "user_choose"
            r['reverse'] = r['reverse'] if 'reverse' in r.keys() else True
            r['visit'] = r['visit'] if 'visit' in r.keys() else 0
            self.result['value'] = r
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > get_all', data='collection > bolton')
            self.result['value'] = []
            return self.result
 def is_exist(self):
     if self.title is not None:
         __body = {
             'title': self.title,
         }
         if MongodbModel(collection='failed_brief', body=__body).count():
             return True
     return False
Exemple #24
0
    def get_login(self):
        try:
            __key = {"user_login": 1, "count_online": 1}
            __body = {"_id": self.id}
            r = MongodbModel(collection='user', key=__key, body=__body).get_one()
            user_login = dict(
                user_login=r['user_login'] if 'user_login' in r.keys() else [],
                count_online=r['count_online'] if 'count_online' in r.keys() else 1
            )
            self.result['value'] = user_login
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > get_all',
                                data='collection > user')
            return self.result
Exemple #25
0
    def delete(self):
        try:
            self.result['value'] = MongodbModel(collection='category', body={'_id': self.id}).delete()
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > delete', data='collection > category')
            return self.result
Exemple #26
0
 def delete_queue(self, _type=None):
     body = {
         "news": self.id,
     }
     if _type == "COMPARATIVE":
         __collection = 'news_comparative_queue'
     else:
         __collection = 'news_queue'
     MongodbModel(collection=__collection, body=body).delete()
Exemple #27
0
 def count():
     try:
         __body = {"code": -1}
         return MongodbModel(collection='news_queue', body=__body).count()
     except:
         Debug.get_exception(sub_system='admin',
                             severity='error',
                             tags='mongodb > get_all',
                             data='collection > news_queue')
         return 0
Exemple #28
0
 def count_all(self):
     try:
         __body = {"type": self.type}
         r = MongodbModel(collection='feed_statistic', body=__body).count()
         self.result['value'] = r
         self.result['status'] = True
         return self.result
     except:
         Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > count_all', data='collection > feed_statistic')
         return self.result
Exemple #29
0
 def group_by(col):
     try:
         body = [{
             "$group": {"_id": "$" + col, "total": {"$sum": 1}}
         }]
         r = MongodbModel(collection='feed_statistic', body=body).aggregate()
         return [{col: i['_id'], 'total': i['total']} for i in r]
     except:
         Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > group_by', data='collection > feed_statistic')
         return []
Exemple #30
0
    def get_login(self):
        try:
            __key = {"user_login": 1, "count_online": 1}
            __body = {"_id": self.id}
            r = MongodbModel(collection='user', key=__key,
                             body=__body).get_one()
            user_login = dict(
                user_login=r['user_login'] if 'user_login' in r.keys() else [],
                count_online=r['count_online']
                if 'count_online' in r.keys() else 1)
            self.result['value'] = user_login
            self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > get_all',
                                data='collection > user')
            return self.result
Exemple #31
0
    def count(__key):
        try:
            body = {"key": __key}
            return MongodbModel(collection='setting', body=body).count()

        except:
            Debug.get_exception(sub_system='admin',
                                severity='error',
                                tags='mongodb > count',
                                data='collection > setting')
            return 0
Exemple #32
0
 def count_all(_type):
     try:
         return MongodbModel(collection="worker", body={
             "type": _type
         }).count()
     except:
         Debug.get_exception(sub_system='admin',
                             severity='error',
                             tags='mongodb > get_all',
                             data='collection > group')
         return 0
Exemple #33
0
    def get_one(self):
        try:
            r = MongodbModel(collection='user_group', body={'_id': self.id}).get_one()
            if r:
                access_sources = r['access_sources'] if 'access_sources' in r.keys() else False
                if access_sources is not False:
                    access_sources['agency'] = map(str, access_sources['agency'])
                    access_sources['subject'] = map(str, access_sources['subject'])
                    access_sources['geographic'] = map(str, access_sources['geographic'])
                l = dict(
                    id=str(r['_id']),
                    name=r['name'],
                    search_pattern=r['search_pattern'] if 'search_pattern' in r.keys() else False,
                    access_sources=access_sources,
                    bolton_management=r['bolton_management'] if 'bolton_management' in r.keys() else False,
                    charts_content=r['charts_content'] if 'charts_content' in r.keys() else False
                )
                self.result['value'] = l
                self.result['status'] = True

            return self.result
        except:
            Debug.get_exception(sub_system='admin', severity='error', tags='mongodb > get_one', data='collection > user_group')
            return self.result