feat:删除绑定关系

feat:修改绑定关系权限问题
feat:学生导入饭卡
feat:学生充值导入
feat:学生用户类型增加监护人手机号
This commit is contained in:
dzc committed 2026-08-17 18:42:09 +08:00
1 parent 195756e80a
commit f7aab36210
33 files changed
+1863 -398

No files matched your search

@@ -6,6 +6,7 @@ import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.bsd.pjcloud.common.excel.annotation.ExcelLine;
import lombok.Data;
/** 默认开卡导入行,使用用户姓名和手机号精确定位已有用户。 */
@Data
public class WalletImportActiveDto {
@@ -16,28 +17,35 @@ public class WalletImportActiveDto {
@ExcelIgnore
private Long lineNum;
/** 用户姓名,必须与系统用户姓名完全一致。 */
@ColumnWidth(100)
@ExcelProperty("用户姓名")
private String username;
/** 用户手机号,与用户姓名共同作为导入定位条件。 */
@ColumnWidth(100)
@ExcelProperty("用户手机号")
private String userMobile;
/** 待写入开卡记录和饭卡钱包的卡号。 */
@ColumnWidth(100)
@ExcelProperty("卡号")
private String cardNumber;
// 开卡的id
/** 校验阶段解析出的开卡记录 ID,仅供服务端导入流程使用。 */
@ExcelIgnore
private Long id;
// 钱包id
/** 校验阶段解析出的饭卡钱包 ID,仅供服务端导入流程使用。 */
@ExcelIgnore
private Long walletId;
// 用户id
/** 校验阶段解析出的用户 ID,仅供服务端导入流程使用。 */
@ExcelIgnore
private Long userId;
// 用户部门id
/** 校验阶段解析出的用户部门 ID,仅供服务端导入流程兼容使用。 */
@ExcelIgnore
private Long userDeptId;
}
@@ -0,0 +1,60 @@
package com.bsd.pjcloud.wallet.api.dto;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.bsd.pjcloud.common.excel.annotation.ExcelDict;
import com.bsd.pjcloud.common.excel.annotation.ExcelLine;
import lombok.Data;
/**
* 学生开卡导入行。
* <p>使用学生学校和学号精确定位学生身份,再校验学生姓名,避免同名学生绑定错误。</p>
*/
@Data
@HeadRowHeight(20)
@ContentRowHeight(10)
@ExcelIgnoreUnannotated
public class WalletStudentImportActiveDto {
/** Excel 原始行号,用于向前端返回可定位的逐行校验错误。 */
@ExcelLine
@ExcelIgnore
private Long lineNum;
/** 学生姓名,必须与学校和学号定位到的系统用户姓名完全一致。 */
@ColumnWidth(100)
@ExcelProperty("学生姓名")
private String studentName;
/** 学生学校,与学号共同作为学生身份的精确定位条件。 */
@ColumnWidth(100)
@ExcelProperty("学生学校")
@ExcelDict("user_student_school")
private String schoolName;
/** 学生学号,在同一学校内唯一。 */
@ColumnWidth(100)
@ExcelProperty("学号")
private String studentNo;
/** 待写入开卡记录和饭卡钱包的卡号。 */
@ColumnWidth(100)
@ExcelProperty("卡号")
private String cardNumber;
/** 校验阶段解析出的开卡记录 ID,仅供服务端导入流程使用。 */
@ExcelIgnore
private Long id;
/** 校验阶段解析出的饭卡钱包 ID,仅供服务端导入流程使用。 */
@ExcelIgnore
private Long walletId;
/** 校验阶段解析出的学生用户 ID,仅供服务端导入流程使用。 */
@ExcelIgnore
private Long userId;
}
@@ -0,0 +1,70 @@
package com.bsd.pjcloud.wallet.api.dto.recharge.excel;
import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelIgnoreUnannotated;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.alibaba.excel.annotation.write.style.ContentRowHeight;
import com.alibaba.excel.annotation.write.style.HeadRowHeight;
import com.bsd.pjcloud.common.excel.annotation.ExcelDict;
import com.bsd.pjcloud.common.excel.annotation.ExcelLine;
import lombok.Data;
/**
* 学生充值/扣款申请 Excel 导入行。
* <p>使用学校和学号精确定位学生,再校验学生姓名,避免同名学生被错误充值或扣款。</p>
*/
@Data
@HeadRowHeight(20)
@ContentRowHeight(10)
@ExcelIgnoreUnannotated
public class WalletStudentRechargeExcelDto {
/** Excel 原始行号,用于向前端返回可定位的逐行校验错误。 */
@ExcelLine
@ExcelIgnore
private Long lineNum;
/** 学生姓名,必须与学校和学号定位到的系统用户姓名完全一致。 */
@ColumnWidth(100)
@ExcelProperty("学生姓名")
private String studentName;
/** 学校名称,与学号共同作为学生身份定位条件,并受学生学校字典约束。 */
@ColumnWidth(100)
@ExcelProperty("学校")
@ExcelDict("user_student_school")
private String schoolName;
/** 学生学号,在同一学校内用于精确定位学生身份。 */
@ColumnWidth(100)
@ExcelProperty("学号")
private String studentNo;
/** Excel 中填写的操作金额,单位元;余额重置模板中允许为空。 */
@ColumnWidth(100)
@ExcelProperty("操作金额")
private String price;
/** Excel 中展示的财务标签名称,支持英文逗号分隔多个字典标签。 */
@ColumnWidth(100)
@ExcelProperty("操作标签")
@ExcelDict(value = "wallet_transaction_tag", multiple = true)
private String tag;
/** 校验阶段解析出的财务标签字典值,多个值使用英文逗号分隔。 */
@ExcelIgnore
private String tags;
/** 校验阶段解析出的操作金额,单位分;余额重置时固定为零。 */
@ExcelIgnore
private Integer priceNumber;
/** 校验阶段按学生身份解析出的系统用户 ID。 */
@ExcelIgnore
private Long userId;
/** 校验阶段解析出的学生所属部门 ID。 */
@ExcelIgnore
private Long userDeptId;
}