Пример #1
0
    def post(self, request, *args, **kwargs):
        """
        新增工作流自定义字段
        :param request:
        :param args:
        :param kwargs:
        :return:
        """
        app_name = request.META.get('HTTP_APPNAME')
        username = request.META.get('HTTP_USERNAME')
        state_id = kwargs.get('state_id')
        # 判断是否有工作流的权限
        app_permission, msg = account_base_service_ins.app_state_permission_check(
            app_name, state_id)
        if not app_permission:
            return api_response(
                -1,
                'APP:{} have no permission to get this workflow info'.format(
                    app_name), '')
        json_str = request.body.decode('utf-8')
        if not json_str:
            return api_response(-1, 'post参数为空', {})
        request_data_dict = json.loads(json_str)
        field_key = str(uuid.uuid1())
        field_name = request_data_dict.get('field_name', '')
        field_type_id = request_data_dict.get('field_type_id', '')
        order_id = int(request_data_dict.get('order_id', 0))
        label = request_data_dict.get('label', '')
        description = request_data_dict.get('description', '')
        field_template = request_data_dict.get('field_template', '')
        default_value = request_data_dict.get('default_value', '')
        boolean_field_display = request_data_dict.get('boolean_field_display',
                                                      '')
        field_choice = request_data_dict.get('field_choice', '')
        is_necessary = request_data_dict.get('is_necessary', False)
        is_show = request_data_dict.get('is_show', False)
        flag, result = workflow_custom_field_service_ins.edit_record(
            0, field_type_id, field_name, order_id, default_value, description,
            field_template, boolean_field_display, field_choice, label,
            username, is_necessary, is_show, field_key, state_id)

        if flag is not False:
            data = dict(
                value={'custom_field_id': result.get('custom_field_id')})
            code, msg, = 0, ''
        else:
            code, data, msg = -1, {}, result
        return api_response(code, msg, data)
Пример #2
0
    def patch(self, request, *args, **kwargs):
        """
        更新自定义字段
        :param request: 
        :param args: 
        :param kwargs: 
        :return: 
        """
        custom_field_id = kwargs.get('custom_field_id')
        app_name = request.META.get('HTTP_APPNAME')
        username = request.META.get('HTTP_USERNAME')
        workflow_id = kwargs.get('workflow_id')
        # 判断是否有工作流的权限
        app_permission, msg = account_base_service_ins.app_workflow_permission_check(
            app_name, workflow_id)
        if not app_permission:
            return api_response(
                -1,
                'APP:{} have no permission to get this workflow info'.format(
                    app_name), '')
        json_str = request.body.decode('utf-8')
        if not json_str:
            return api_response(-1, 'post参数为空', {})
        request_data_dict = json.loads(json_str)
        field_key = request_data_dict.get('field_key', '')
        field_name = request_data_dict.get('field_name', '')
        field_type_id = request_data_dict.get('field_type_id', '')
        order_id = int(request_data_dict.get('order_id', 0))
        label = request_data_dict.get('label', '')
        description = request_data_dict.get('description', '')
        field_template = request_data_dict.get('field_template', '')
        default_value = request_data_dict.get('default_value', '')
        boolean_field_display = request_data_dict.get('boolean_field_display',
                                                      '')
        field_choice = request_data_dict.get('field_choice', '')
        result, msg = workflow_custom_field_service_ins.edit_record(
            custom_field_id, workflow_id, field_type_id, field_key, field_name,
            order_id, default_value, description, field_template,
            boolean_field_display, field_choice, label)

        if result is not False:
            code, msg, data = 0, '', {}
        else:
            code, data = -1, ''
        return api_response(code, msg, data)