From 2ee5451fd30b1d78b459eccc0b7771366617b896 Mon Sep 17 00:00:00 2001
From: xuhy <3313886187@qq.com>
Date: 星期二, 16 十二月 2025 17:26:12 +0800
Subject: [PATCH] 新增修改
---
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/THelpNeedsController.java | 26 ++++++
ruoyi-system/src/main/java/com/ruoyi/system/model/TCourse.java | 6 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TMerchantController.java | 11 ++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java | 3
ruoyi-system/src/main/resources/mapper/system/TCourseMapper.xml | 5 +
ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelExportExample.java | 46 +++++++++++
ruoyi-system/src/main/java/com/ruoyi/system/model/THelpNeeds.java | 24 ++++++
ruoyi-system/src/main/resources/mapper/system/THelpNeedsMapper.xml | 10 ++
ruoyi-system/src/main/java/com/ruoyi/system/dto/HandleHelpNeedsDTO.java | 28 +++++++
ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelUtil.java | 46 +++++++++++
10 files changed, 200 insertions(+), 5 deletions(-)
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java
index d43104f..ef14939 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/DataStatisticsController.java
@@ -131,7 +131,8 @@
.eq(TLargeKeyGridUser::getUserType, 2));
Map<String,Long> map = new HashMap<>();
map.put("keyCount",keyCount);
- map.put("gridCount",gridCount);
+ map.put("gridCount",17079L);
+// map.put("gridCount",gridCount);
return R.ok(map);
}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/THelpNeedsController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/THelpNeedsController.java
index 967d96b..641bc3c 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/THelpNeedsController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/THelpNeedsController.java
@@ -10,9 +10,12 @@
import com.ruoyi.common.utils.DateUtils;
import com.ruoyi.common.utils.WebUtils;
import com.ruoyi.framework.web.service.TokenService;
+import com.ruoyi.system.dto.HandleAppealServicesDTO;
+import com.ruoyi.system.dto.HandleHelpNeedsDTO;
import com.ruoyi.system.export.THelpNeedsExport;
import com.ruoyi.system.export.TMicroWishExport;
import com.ruoyi.system.model.TAppUser;
+import com.ruoyi.system.model.TAppealServices;
import com.ruoyi.system.model.THelpNeeds;
import com.ruoyi.system.model.THelpNeeds;
import com.ruoyi.system.query.AssistedDiningListQuery;
@@ -31,6 +34,7 @@
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
import java.net.URLEncoder;
+import java.time.LocalDateTime;
import java.util.Arrays;
import java.util.List;
import java.util.Objects;
@@ -97,6 +101,28 @@
return R.ok(helpNeedsService.getById( id));
}
+ /**
+ * 处理助需
+ */
+ @Log(title = "助需管理-处理助需", businessType = BusinessType.UPDATE)
+ @ApiOperation(value = "处理助需")
+ @PostMapping(value = "/handleHelpNeeds")
+ public R<String> handleHelpNeeds(@RequestBody HandleHelpNeedsDTO dto) {
+
+ Long userId = tokenService.getLoginUser().getUserId();
+ String nickName = tokenService.getLoginUser().getUser().getNickName();
+
+ THelpNeeds helpNeeds = helpNeedsService.getById(dto.getId());
+ helpNeeds.setStatus(2);
+ helpNeeds.setUserId(userId);
+ helpNeeds.setProcessPersonName(nickName);
+ helpNeeds.setProcessTime(LocalDateTime.now());
+ helpNeeds.setProcessRemark(dto.getProcessRemark());
+ helpNeeds.setProcessPictures(dto.getProcessPictures());
+ helpNeedsService.updateById(helpNeeds);
+ return R.ok();
+ }
+
@Log(title = "助需管理-助需记录导出", businessType = BusinessType.EXPORT)
@ApiOperation(value = "助需记录导出")
@PostMapping("/exportHelpNeeds")
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TMerchantController.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TMerchantController.java
index 87f13de..e5517c5 100644
--- a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TMerchantController.java
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/api/TMerchantController.java
@@ -25,6 +25,7 @@
import com.ruoyi.system.service.TMerchantService;
import com.ruoyi.system.service.TMerchantTypeService;
import com.ruoyi.system.vo.TMerchantVO;
+import com.ruoyi.web.controller.tool.ExcelUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
@@ -47,6 +48,7 @@
import java.util.ArrayList;
import java.util.List;
import java.util.Objects;
+import java.util.stream.Collectors;
/**
* <p>
@@ -149,9 +151,14 @@
@GetMapping("/import-template")
public void importTemplate() {
List<MerchantImport> merchantImports = new ArrayList<>();
- MerchantImport merchantImport = new MerchantImport();
- merchantImports.add(merchantImport);
Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), MerchantImport.class, merchantImports);
+ // 查询分类列表
+ List<TMerchantType> merchantTypes = merchantTypeService.list(Wrappers.lambdaQuery(TMerchantType.class).orderByDesc(TMerchantType::getCreateTime));
+ List<String> dataList = new ArrayList<>();
+ if (!CollectionUtils.isEmpty(merchantTypes)) {
+ dataList = merchantTypes.stream().map(TMerchantType::getTypeName).collect(Collectors.toList());
+ }
+ ExcelUtil.selectList(workbook, 1, 65535, 2, 2, dataList.toArray(new String[dataList.size()]), 1);
HttpServletResponse response = WebUtils.response();
ServletOutputStream outputStream = null;
try {
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelExportExample.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelExportExample.java
new file mode 100644
index 0000000..c06bd99
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelExportExample.java
@@ -0,0 +1,46 @@
+//package com.ruoyi.web.controller.tool;
+//
+//import cn.afterturn.easypoi.excel.ExcelExportUtil;
+//import cn.afterturn.easypoi.excel.entity.ExportParams;
+//import com.alibaba.excel.EasyExcel;
+//import com.alibaba.excel.write.metadata.WriteSheet;
+//import com.alibaba.excel.write.metadata.fill.FillConfig;
+//import com.alibaba.excel.write.style.column.SimpleColumnWidthStyleStrategy;
+//import com.ruoyi.common.utils.WebUtils;
+//import com.ruoyi.system.export.MerchantImport;
+//import org.apache.poi.ss.usermodel.*;
+//import org.apache.poi.ss.util.CellRangeAddressList;
+//import org.apache.poi.xssf.usermodel.*;
+//
+//import javax.servlet.ServletOutputStream;
+//import javax.servlet.http.HttpServletResponse;
+//import java.io.FileNotFoundException;
+//import java.io.FileOutputStream;
+//import java.net.URLEncoder;
+//import java.util.ArrayList;
+//import java.util.List;
+//
+//public class ExcelExportExample {
+// public static void main(String[] args) throws Exception {
+// List<MerchantImport> merchantImports = new ArrayList<>();
+// Workbook workbook = ExcelExportUtil.exportExcel(new ExportParams(), MerchantImport.class, merchantImports);
+// // 生成1W条选项
+// List<String> dataList = new ArrayList<>();
+// dataList.add("武侯区");
+// dataList.add("金牛区");
+// dataList.add("双流区");
+// dataList.add("青羊区");
+// ExcelUtil.selectList(workbook, 1, 65535, 2, 2, dataList.toArray(new String[dataList.size()]), 1);
+// ServletOutputStream outputStream = null;
+// HttpServletResponse response = WebUtils.response();
+// String fileName = URLEncoder.encode("商户信息导入模板.xls", "utf-8");
+// response.setHeader("Content-Disposition", "attachment;filename=" + fileName);
+// response.setHeader("content-Type", "application/vnd.ms-excel");
+// response.setHeader("Pragma", "no-cache");
+// response.setHeader("Cache-Control", "no-cache");
+// outputStream = response.getOutputStream();
+// workbook.write(outputStream);
+// }
+//
+//
+//}
diff --git a/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelUtil.java b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelUtil.java
new file mode 100644
index 0000000..4d1cd4c
--- /dev/null
+++ b/ruoyi-admin/src/main/java/com/ruoyi/web/controller/tool/ExcelUtil.java
@@ -0,0 +1,46 @@
+package com.ruoyi.web.controller.tool;
+
+import org.apache.poi.hssf.usermodel.DVConstraint;
+import org.apache.poi.hssf.usermodel.HSSFDataValidation;
+import org.apache.poi.ss.usermodel.*;
+import org.apache.poi.ss.util.CellRangeAddressList;
+
+public final class ExcelUtil {
+
+ /**
+ * firstRow 开始行号(下标0开始)
+ * lastRow 结束行号,最大65535
+ * firstCol 区域中第一个单元格的列号 (下标0开始)
+ * lastCol 区域中最后一个单元格的列号
+ * dataArray 下拉内容
+ * sheetHidden 影藏的sheet编号(例如1,2,3),多个下拉数据不能使用同一个
+ * */
+ public static void selectList(Workbook workbook, int firstRow, int lastRow, int firstCol, int lastCol, String[] dataArray, int sheetHidden){
+ String hiddenName = "hidden_" + (int)((Math.random()*9+1)*100);
+ Sheet sheet = workbook.getSheetAt(0);
+ Sheet hidden = workbook.createSheet(hiddenName);
+ Cell cell = null;
+ for (int i = 0, length = dataArray.length; i < length; i++)
+ {
+ String name = dataArray[i];
+ Row row = hidden.createRow(i);
+ cell = row.createCell(0);
+ cell.setCellValue(name);
+ }
+
+ Name namedCell = workbook.createName();
+ namedCell.setNameName(hiddenName);
+ namedCell.setRefersToFormula(hiddenName + "!$A$1:$A$" + dataArray.length);
+ //加载数据,将名称为hidden的
+ DVConstraint constraint = DVConstraint.createFormulaListConstraint(hiddenName);
+
+ // 设置数据有效性加载在哪个单元格上,四个参数分别是:起始行、终止行、起始列、终止列
+ CellRangeAddressList addressList = new CellRangeAddressList(firstRow, lastRow, firstCol, lastCol);
+ HSSFDataValidation validation = new HSSFDataValidation(addressList, constraint);
+
+ // 将sheet设置为隐藏
+ workbook.setSheetHidden(sheetHidden, true);
+ sheet.addValidationData(validation);
+ }
+
+}
\ No newline at end of file
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/dto/HandleHelpNeedsDTO.java b/ruoyi-system/src/main/java/com/ruoyi/system/dto/HandleHelpNeedsDTO.java
new file mode 100644
index 0000000..f73dd77
--- /dev/null
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/dto/HandleHelpNeedsDTO.java
@@ -0,0 +1,28 @@
+package com.ruoyi.system.dto;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotBlank;
+import java.io.Serializable;
+
+@Data
+@ApiModel(value = "处理助需服务DTO")
+public class HandleHelpNeedsDTO implements Serializable {
+
+ @NotBlank(message = "助需id不能为空")
+ @ApiModelProperty(value = "助需id")
+ private String id;
+
+ @NotBlank(message = "处理备注不能为空")
+ @ApiModelProperty(value = "处理备注")
+ @TableField("process_remark")
+ private String processRemark;
+
+ @ApiModelProperty(value = "处理凭证")
+ @TableField("process_pictures")
+ private String processPictures;
+
+}
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/TCourse.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/TCourse.java
index 73b6683..c61b161 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/model/TCourse.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/TCourse.java
@@ -1,6 +1,7 @@
package com.ruoyi.system.model;
import com.baomidou.mybatisplus.annotation.*;
+import com.fasterxml.jackson.annotation.JsonFormat;
import com.ruoyi.common.core.domain.BaseModel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -9,6 +10,7 @@
import java.io.Serializable;
import java.math.BigDecimal;
+import java.time.LocalDate;
import java.time.LocalDateTime;
/**
@@ -66,6 +68,10 @@
@TableField("status")
private Integer status;
+ @ApiModelProperty(value = "截止日期")
+ @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
+ @TableField("end_time")
+ private LocalDate endTime;
@ApiModelProperty(value = "已经报名人数")
@TableField(exist = false)
diff --git a/ruoyi-system/src/main/java/com/ruoyi/system/model/THelpNeeds.java b/ruoyi-system/src/main/java/com/ruoyi/system/model/THelpNeeds.java
index f333ea8..0e9c83f 100644
--- a/ruoyi-system/src/main/java/com/ruoyi/system/model/THelpNeeds.java
+++ b/ruoyi-system/src/main/java/com/ruoyi/system/model/THelpNeeds.java
@@ -49,4 +49,28 @@
@TableField("pictures")
private String pictures;
+ @ApiModelProperty(value = "状态 1=待处理 2=已处理")
+ @TableField("status")
+ private Integer status;
+
+ @ApiModelProperty(value = "用户id")
+ @TableField("user_id")
+ private Long userId;
+
+ @ApiModelProperty(value = "处理人名称")
+ @TableField("process_person_name")
+ private String processPersonName;
+
+ @ApiModelProperty(value = "处理备注")
+ @TableField("process_remark")
+ private String processRemark;
+
+ @ApiModelProperty(value = "处理凭证")
+ @TableField("process_pictures")
+ private String processPictures;
+
+ @ApiModelProperty(value = "处理时间")
+ @TableField("process_time")
+ private LocalDateTime processTime;
+
}
diff --git a/ruoyi-system/src/main/resources/mapper/system/TCourseMapper.xml b/ruoyi-system/src/main/resources/mapper/system/TCourseMapper.xml
index d54b117..2d490af 100644
--- a/ruoyi-system/src/main/resources/mapper/system/TCourseMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/TCourseMapper.xml
@@ -14,6 +14,7 @@
<result column="course_detail" property="courseDetail" />
<result column="course_lecturer" property="courseLecturer" />
<result column="status" property="status" />
+ <result column="end_time" property="endTime" />
<result column="create_time" property="createTime" />
<result column="update_time" property="updateTime" />
<result column="create_by" property="createBy" />
@@ -23,7 +24,9 @@
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
- id, course_title, course_type, course_cost, course_cover, course_carousel, people_limit, course_detail, course_lecturer, status, create_time, update_time, create_by, update_by, disabled
+ id, course_title, course_type, course_cost, course_cover, course_carousel, people_limit,
+ course_detail, course_lecturer, status, end_time,
+ create_time, update_time, create_by, update_by, disabled
</sql>
<select id="pageList" resultType="com.ruoyi.system.vo.TCourseVO">
SELECT
diff --git a/ruoyi-system/src/main/resources/mapper/system/THelpNeedsMapper.xml b/ruoyi-system/src/main/resources/mapper/system/THelpNeedsMapper.xml
index 9a6b4b1..a8664f8 100644
--- a/ruoyi-system/src/main/resources/mapper/system/THelpNeedsMapper.xml
+++ b/ruoyi-system/src/main/resources/mapper/system/THelpNeedsMapper.xml
@@ -10,6 +10,12 @@
<result column="contact_number" property="contactNumber" />
<result column="requirement_description" property="requirementDescription" />
<result column="pictures" property="pictures" />
+ <result column="status" property="status" />
+ <result column="user_id" property="userId" />
+ <result column="process_person_name" property="processPersonName" />
+ <result column="process_remark" property="processRemark" />
+ <result column="process_pictures" property="processPictures" />
+ <result column="process_time" property="processTime" />
<result column="create_time" property="createTime" />
<result column="update_time" property="updateTime" />
<result column="create_by" property="createBy" />
@@ -19,7 +25,9 @@
<!-- 通用查询结果列 -->
<sql id="Base_Column_List">
- id, app_user_id, nick_name, contact_number, requirement_description, pictures, create_time, update_time, create_by, update_by, disabled
+ id, app_user_id, nick_name, contact_number, requirement_description, pictures,
+ status,user_id,process_person_name,process_remark,process_pictures,process_time,
+ create_time, update_time, create_by, update_by, disabled
</sql>
<select id="pageList" resultType="com.ruoyi.system.model.THelpNeeds">
select t1.* from t_help_needs t1
--
Gitblit v1.7.1