array ( 'where' => array('platform_id' => $platform_id), 'field' => array ( //'id', 'sort' => 'input', 'name', 'uri', 'env_type', 'platform_id', 'status' => array ( 'type' => 'switch', 'show' => '{status}', 'active_value' => 1, 'inactive_value' => 2, ), ), 'data_button' => array ( '设置' => 'edit', '删除' => 'delete', ), 'button' => array ( '新增' => array('fastadd', array('platform_id' => $platform_id, 'field' => 'name,env_type,platform_id,uri')), ), 'search' => array ( 'platform_id' => array ( 'type' => 'hidden', 'default' => $platform_id, ), 'name', 'uri', 'status', ), ), 'update' => array ( 'desc' => $platform['update']['desc'], 'tab' => array ( '基本设置' => 'name,env_type,sign_col,uri,api/api_uri', '价格设置' => 'spec_type,api/sku,api/sku#', '请求参数' => 'method,post_method,api/api_request_header,api/api_request_body', '响应参数' => 'api/api_response_header,api/api_response_body', '输入输出' => 'api/api_request_input,api/api_request_output', '存储设置' => 'api/api_save', '回调设置' => 'notify_type,notify_sign_col,notify_success,notify_error,api/api_notify_body,api/api_notify_code', ), 'field' => array ( 'name', 'env_type' => 'radio', 'platform_id' => array ( 'desc' => '【提交后不能更改】', ), 'sign_col' => array ( 'type' => 'textarea', 'autosize' => array('minRows' => 2), 'desc' => '按顺序做加密,用+号隔开,为空则所有字段均参与加密,这里填写后,将替换平台中的签名加密参数', ), 'uri', 'api/api_uri' => array ( 'name' => '接口地址生成', 'where' => array('api_id' => 'id'), 'desc' => '如果需要动态生成接口地址,这里填写参数即可,同样支持变量', ), 'method' => array ( 'type' => 'radio', 'control' => true, ), 'post_method' => array ( 'type' => 'radio', 'show' => false, ), 'api/api_request_input' => array ( 'name' => '参数输入', 'where' => array('api_id' => 'id'), 'desc' => '[默认值/可选项:可以多行输入,默认值为第一行,其他行为可选项]', ), 'api/api_request_output' => array ( 'name' => '参数输出', 'where' => array('api_id' => 'id'), ), 'api/api_request_body' => array ( 'name' => '请求体', 'where' => array('api_id' => 'id'), ), 'api/api_request_header' => array ( 'name' => '请求头', 'where' => array('api_id' => 'id'), ), 'api/api_response_body' => array ( 'name' => '响应体', 'desc' => '填写后,平台中的标准响应体将失效,并且只保留填写后的响应体,格式:data[].name,不是列表则为data.name', 'where' => array('api_id' => 'id'), ), 'api/api_response_header' => array ( 'name' => '响应头', 'desc' => '填写后,平台中的标准响应头将失效,不填写不保留响应头,格式:data[].name,不是列表则为data.name', 'where' => array('api_id' => 'id'), ), 'api/api_save' => array ( 'name' => '存储设置', 'desc' => '用于将响应数据保存到数据表中,该数据表最好有api_id(int)和request_id(varchar)字段,用于区分是哪个接口哪次请求,当然也可以没有', 'where' => array('api_id' => 'id'), ), 'notify_type' => array ( 'type' => 'radio', 'control' => true, ), 'notify_success' => array ( 'type' => 'textarea', 'autosize' => array('minRows' => 2), 'desc' => '回调成功后,返回给上游的信息', ), 'notify_error' => array ( 'type' => 'textarea', 'autosize' => array('minRows' => 2), 'desc' => '回调失败后,返回给上游的信息,默认应答状态码为500,可以换行输入应答状态码', ), 'notify_sign_col' => array ( 'desc' => '填写参与回调签名的参数,不填写则使用平台设置的签名参数', ), 'api/api_notify_body' => array ( 'name' => '回调参数设置', 'where' => array('api_id' => 'id'), ), 'api/api_notify_code' => array ( 'name' => '回调状态码', 'where' => array('api_id' => 'id'), ), 'spec_type' => array ( 'type' => 'radio', 'control' => true, ), 'api/sku' => array ( 'name' => '单规格设置', 'where' => array('api_id' => 'id', 'key' => '-1'), # 默认值,如果有默认值则无法添加和删除 'default' => array ( # 默认值 array ( 'price' => '', 'num' => '', 'day_num' => '', ), ), ), 'api/sku#' => array ( 'name' => '多规格设置', 'where' => array('api_id' => 'id', 'key' => array('!=', '-1')), 'type' => 'sku', # 设置规格表名 'spec' => 'api/spec', # 设置规格表关联字段 'spec_field' => 'api_id', # 获取规格数据的接口 'spec_data' => 'api/spec.manage', ), ), 'control' => array ( 'post_method' => array ( 'method' => 2, ), 'notify_success' => array ( 'notify_type' => 1, ), 'notify_error' => array ( 'notify_type' => 1, ), 'api/api_notify_body' => array ( 'notify_type' => 1, ), 'api/api_notify_code' => array ( 'notify_type' => 1, ), 'notify_sign_col' => array ( 'notify_type' => 1, ), /* 'api/api_notify' => array ( 'notify_type' => 1, ),*/ 'api/sku' => array ( 'spec_type' => 1, ), 'api/sku#' => array ( 'spec_type' => 2, ), ), ), ); $id = Dever::input('id'); if (!$id) { unset($config['update']['tab']); } return $config;