예제 #1
0
    def enable(self):
        is_project_master = self.project_id in session['project_master']

        if self.project_id not in self.rollback_count:
            self.rollback_count[self.project_id] = 0
        if self.status in [self.status_doing, self.status_fail, self.status_success]:
            self.rollback_count[self.project_id] += 1

        current_app.logger.error(self.rollback_count[self.project_id])
        current_app.logger.error(self.keep_version_num)
        if self.rollback_count[self.project_id] <= self.keep_version_num \
            and self.status in [self.status_doing, self.status_fail, self.status_success] \
            and self.ex_link_id:
            enable_rollback = True
        else:
            enable_rollback = False

        return {
            'enable_view': True if self.status in [self.status_doing, self.status_fail, self.status_success] else False,
            'enable_update': (permission.enable_uid(self.user_id) or permission.role_upper_developer() or is_project_master) and (self.status in [self.status_new, self.status_reject]),
            'enable_delete': (permission.enable_uid(self.user_id) or permission.role_upper_developer() or is_project_master) and (self.status in [self.status_new, self.status_pass, self.status_reject]),
            'enable_create': False,
            'enable_online': (permission.enable_uid(self.user_id) or permission.role_upper_developer() or is_project_master) and (self.status in [self.status_pass, self.status_fail, self.status_doing]),
            'enable_audit': (permission.role_upper_developer() or is_project_master) and (self.status in [self.status_new]),
            'enable_rollback': enable_rollback
        }
예제 #2
0
 def enable(self):
     is_project_master = self.project_id in session['project_master']
     return {
         'enable_view':
         True,
         'enable_update':
         (permission.enable_uid(self.user_id)
          or permission.role_upper_developer() or is_project_master)
         and (self.status in [self.status_new, self.status_reject]),
         'enable_delete':
         (permission.enable_uid(self.user_id)
          or permission.role_upper_developer() or is_project_master)
         and (self.status
              in [self.status_new, self.status_pass, self.status_reject]),
         'enable_create':
         False,
         'enable_online':
         (permission.enable_uid(self.user_id)
          or permission.role_upper_developer() or is_project_master)
         and (self.status
              in [self.status_pass, self.status_fail, self.status_doing]),
         'enable_audit':
         (permission.role_upper_developer() or is_project_master)
         and (self.status in [self.status_new]),
         'enable_block':
         False,
     }
예제 #3
0
파일: task.py 프로젝트: wenfy2018/walle-web
 def enable(self):
     return {
         'enable_update': (permission.enable_uid(self.user_id) or permission.role_upper_developer()) and (self.status in [self.status_new, self.status_reject]),
         'enable_delete': (permission.enable_uid(self.user_id) or permission.role_upper_developer()) and (self.status in [self.status_new, self.status_pass, self.status_reject]),
         'enable_create': False,
         'enable_online': (permission.enable_uid(self.user_id) or permission.role_upper_developer()) and (self.status in [self.status_pass, self.status_fail, self.status_doing]),
         'enable_audit': permission.role_upper_developer() and (self.status in [self.status_new]),
         'enable_block': False,
     }
예제 #4
0
 def enable(self):
     return {
         'enable_update': (permission.enable_uid(self.user_id) or permission.enable_role(DEVELOPER)) and (self.status in [self.status_new, self.status_reject]),
         'enable_delete': (permission.enable_uid(self.user_id) or permission.enable_role(DEVELOPER)) and (self.status in [self.status_new]),
         'enable_create': False,
         'enable_online': (permission.enable_uid(self.user_id) or permission.enable_role(DEVELOPER)) and (self.status in [self.status_pass]),
         'enable_audit': permission.enable_role(DEVELOPER) and (self.status in [self.status_new]),
         'enable_block': False,
     }
예제 #5
0
 def enable(self):
     return {
         'enable_view': True,
         'enable_update': permission.enable_uid(self.user_id) or permission.role_upper_owner(),
         'enable_delete': permission.enable_uid(self.user_id) or permission.role_upper_owner(),
         'enable_create': False,
         'enable_online': False,
         'enable_audit': False,
         'enable_block': permission.role_upper_master(),
     }
예제 #6
0
 def enable(self):
     return {
         'enable_update':
         permission.enable_uid(self.user_id)
         or permission.enable_role(OWNER),
         'enable_delete':
         permission.enable_uid(self.user_id)
         or permission.enable_role(OWNER),
         'enable_create':
         False,
         'enable_online':
         False,
         'enable_audit':
         False,
         'enable_block':
         permission.enable_role(MASTER),
     }
예제 #7
0
파일: task.py 프로젝트: zyfking/walle-web
    def enable(self):
        is_project_master = self.project_id in session['project_master']

        if self.project_id not in self.rollback_count:
            self.rollback_count[self.project_id] = 0
        if self.status in [
                self.status_doing, self.status_fail, self.status_success
        ]:
            self.rollback_count[self.project_id] += 1

        current_app.logger.error(self.rollback_count[self.project_id])
        current_app.logger.error(self.keep_version_num)
        if self.rollback_count[self.project_id] <= self.keep_version_num \
            and self.status in [self.status_doing, self.status_fail, self.status_success] \
            and self.ex_link_id:
            enable_rollback = True
        else:
            enable_rollback = False

        return {
            'enable_view':
            True if self.status in [
                self.status_doing, self.status_fail, self.status_success
            ] else False,
            'enable_update':
            (permission.enable_uid(self.user_id)
             or permission.role_upper_developer() or is_project_master)
            and (self.status in [self.status_new, self.status_reject]),
            'enable_delete':
            (permission.enable_uid(self.user_id)
             or permission.role_upper_developer() or is_project_master)
            and (self.status
                 in [self.status_new, self.status_pass, self.status_reject]),
            'enable_create':
            False,
            'enable_online':
            (permission.enable_uid(self.user_id)
             or permission.role_upper_developer() or is_project_master)
            and (self.status
                 in [self.status_pass, self.status_fail, self.status_doing]),
            'enable_audit':
            (permission.role_upper_developer() or is_project_master)
            and (self.status in [self.status_new]),
            'enable_rollback':
            enable_rollback
        }
예제 #8
0
 def enable(self):
     current_app.logger.info(self.id)
     return {
         'enable_update': permission.is_gte_develop_or_uid(self.user_id),
         'enable_delete': permission.enable_uid(self.user_id) or permission.enable_role(DEVELOPER),
         'enable_create': False,
         'enable_online': False,
         'enable_audit': False,
         'enable_block': False,
     }
예제 #9
0
 def enable(self):
     # current_app.logger.info(dir(permission.app))
     current_app.logger.info(permission.enable_uid(3))
     return {
         'enable_update': permission.enable_role(DEVELOPER),
         # 'enable_delete': permission.enable_role(DEVELOPER),
         'enable_create': False,
         'enable_online': False,
         # 'enable_audit': permission.enable_role(OWNER),
         'enable_block': False,
     }
예제 #10
0
 def enable(self):
     return {
         'enable_update':
         permission.is_gte_develop_or_uid(self.user_id),
         'enable_delete':
         permission.enable_uid(self.user_id)
         or permission.role_upper_developer(),
         'enable_create':
         False,
         'enable_online':
         False,
         'enable_audit':
         False,
         'enable_block':
         False,
     }