def post(self, request, *args, **kwargs): """ 新增状态 :param request: :param args: :param kwargs: :return: """ json_str = request.body.decode('utf-8') if not json_str: return api_response(-1, 'post参数为空', {}) request_data_dict = json.loads(json_str) app_name = request.META.get('HTTP_APPNAME') username = request.META.get('HTTP_USERNAME') name = request_data_dict.get('name', '') chiefs = request_data_dict.get('chiefs', []) chiefs = ','.join(map(str, chiefs)) module = request_data_dict.get('module', '') is_hidden = request_data_dict.get('is_hidden', 0) order_id = int(request_data_dict.get('order_id', 0)) type_id = int(request_data_dict.get('type_id', 0)) remember_last_man_enable = int( request_data_dict.get('remember_last_man_enable', 1)) enable_retreat = int(request_data_dict.get('enable_retreat', 1)) participant_type_id = int( request_data_dict.get('participant_type_id', 1)) participant = request_data_dict.get('participant', []) participant = ','.join(map(str, participant)) distribute_type_id = int(request_data_dict.get('distribute_type_id', 1)) description = request_data_dict.get('description', '') deadline = int(request_data_dict.get('deadline', 1)) label = {} for field in ['has_report', 'has_excel']: if field in request_data_dict: label[field] = request_data_dict[field] label = json.dumps(label) flag, result = workflow_state_service_ins.edit_workflow_state( 0, name, is_hidden, order_id, type_id, remember_last_man_enable, participant_type_id, participant, distribute_type_id, label, username, enable_retreat, chiefs, app_name, module, description, deadline) if flag is False: code, msg, data = -1, result, {} else: code, msg, data = 0, '', { 'state_id': result.get('workflow_state_id') } return api_response(code, msg, data)
def patch(self, request, *args, **kwargs): """ 编辑状态 :param request: :param args: :param kwargs: :return: """ json_str = request.body.decode('utf-8') if not json_str: return api_response(-1, 'post参数为空', {}) request_data_dict = json.loads(json_str) workflow_data = {} app_name = request.META.get('HTTP_APPNAME') username = request.META.get('HTTP_USERNAME') name = request_data_dict.get('name', '') is_hidden = request_data_dict.get('is_hidden', 0) order_id = int(request_data_dict.get('order_id', 0)) type_id = int(request_data_dict.get('type_id', 0)) remember_last_man_enable = int( request_data_dict.get('remember_last_man_enable', 0)) enable_retreat = int(request_data_dict.get('enable_retreat', 0)) participant_type_id = int( request_data_dict.get('participant_type_id', 0)) participant = request_data_dict.get('participant', '') distribute_type_id = int(request_data_dict.get('distribute_type_id', 1)) state_field_str = request_data_dict.get('state_field_str', '') label = request_data_dict.get('label', '') workflow_id = kwargs.get('workflow_id') state_id = kwargs.get('state_id') flag, result = workflow_state_service_ins.edit_workflow_state( state_id, workflow_id, name, is_hidden, order_id, type_id, remember_last_man_enable, participant_type_id, participant, distribute_type_id, state_field_str, label, enable_retreat) if flag is False: code, msg, data = -1, result, {} else: code, msg, data = 0, '', {} return api_response(code, msg, data)