package com.controller; import java.io.File; import java.io.FileNotFoundException; import java.io.IOException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Calendar; import java.util.Date; import java.util.HashMap; import java.util.List; import java.util.Map; import javax.servlet.http.HttpServletRequest; import org.apache.commons.lang3.StringUtils; import org.json.JSONObject; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.util.ResourceUtils; import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestParam; import org.springframework.web.bind.annotation.RestController; import com.annotation.IgnoreAuth; import com.baidu.aip.face.AipFace; import com.baidu.aip.face.MatchRequest; import com.baidu.aip.util.Base64Util; import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.entity.ConfigEntity; import com.service.CommonService; import com.service.ConfigService; import com.utils.BaiduUtil; import com.utils.FileUtil; import com.utils.R; import com.utils.CommonUtil; /** * 通用功能控制器 * *
提供系统中跨模块的通用功能接口,包括: *
设计原则: *
功能说明: * 根据表名和列名获取该列的所有去重值,常用于前端下拉框选项加载 * *
使用场景: *
参数说明: *
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| tableName | 路径参数 | 是 | 目标表名 |
| columnName | 路径参数 | 是 | 目标列名 |
| level | 请求参数 | 否 | 层级(用于多级联动) |
| parent | 请求参数 | 否 | 父级值(用于多级联动) |
| conditionColumn | 请求参数 | 否 | 附加条件列 |
| conditionValue | 请求参数 | 否 | 附加条件值 |
功能说明: * 根据表名、列名和列值获取匹配的单条记录 * *
典型应用: *
功能说明: * 修改指定表中记录的审核状态 * *
参数要求: * 请求体必须包含以下字段: *
功能说明: * 根据时间条件统计需要提醒的记录数量 * *
参数说明: *
| 参数 | 类型 | 必填 | 说明 |
|---|---|---|---|
| tableName | 路径参数 | 是 | 目标表名 |
| columnName | 路径参数 | 是 | 时间列名 |
| type | 路径参数 | 是 | 统计类型(1:数字,2:日期) |
| remindstart | 请求参数 | 否 | 开始提醒天数偏移(负数表示之前) |
| remindend | 请求参数 | 否 | 结束提醒天数偏移 |
日期类型处理逻辑:
* 当类型为2(日期)时,会将remindstart/remindend参数转换为具体日期范围
*
* @param tableName 表名(路径变量)
* @param columnName 列名(路径变量)
* @param type 统计类型(路径变量)
* @param map 包含时间条件的请求参数
* @return 包含提醒数量的响应对象
*/
@IgnoreAuth
@RequestMapping("/remind/{tableName}/{columnName}/{type}")
public R remindCount(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName,
@PathVariable("type") String type,@RequestParam Map 功能说明:
* 对指定表中的数值列进行求和计算
*
* 典型应用:
* 功能说明:
* 对指定表按指定列进行分组统计
*
* 输出格式:
*
*
*
* @param tableName 表名(路径变量)
* @param columnName 列名(路径变量)
* @return 包含计算结果的响应对象
*/
@IgnoreAuth
@RequestMapping("/cal/{tableName}/{columnName}")
public R cal(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
// 构建查询参数
Map
* [
* {"分组列值1": 统计结果1},
* {"分组列值2": 统计结果2},
* ...
* ]
*
*
* @param tableName 表名(路径变量)
* @param columnName 分组列名(路径变量)
* @return 包含分组统计结果的响应对象
*/
@IgnoreAuth
@RequestMapping("/group/{tableName}/{columnName}")
public R group(@PathVariable("tableName") String tableName, @PathVariable("columnName") String columnName) {
// 构建查询参数
Map