完善系统参数配置和数据字典管理模块

This commit is contained in:
2026-09-18 17:22:56 +08:00
parent 6aca0297bb
commit 60fac00887
30 changed files with 2510 additions and 24 deletions
+27 -2
View File
@@ -1,10 +1,35 @@
using Model;
using Model.Dto.Asset;
using SqlSugar;
using System.Collections.Generic;
using System.Threading.Tasks;
namespace Service.Interface
{
/// <summary>
/// 二维码 服务接口
/// 设备二维码 服务接口
/// 编码内容为扫码直达 URL{baseUrl}/asset/ledger/equipment?id={equipmentId}
/// baseUrl 由 Controller 从 HTTP 请求构造(scheme://host)后传入,保持 Service 层框架无关
/// 生成时把 URL 写入 EquipmentEntity.QrCodeUrl;打印返回 HTML 页面(含 base64 二维码图)
/// </summary>
public interface IQrCodeService
{
// TODO: 定义 二维码 相关方法
/// <summary>生成二维码 URL 并写入设备(baseUrl 形如 http://host:port</summary>
Task<Result<QrCodeDto>> GenerateAsync(long equipmentId, string baseUrl);
/// <summary>生成二维码 PNG 图片字节(同时确保 URL 已写库)</summary>
Task<Result<byte[]>> GenerateImageAsync(long equipmentId, string baseUrl);
/// <summary>批量生成二维码 URL(逐个写库,单条失败不影响其它)</summary>
Task<Result<List<QrCodeBatchResultDto>>> BatchGenerateAsync(long[] equipmentIds, string baseUrl);
/// <summary>设备二维码列表(分页,关键字匹配 Code/NameqrOnly=1 仅看已生成)</summary>
Task<Result<List<QrCodeDto>>> GetListPagedAsync(int pageIndex, int pageSize, RefAsync<int> total, string? keyword = null, bool qrOnly = false);
/// <summary>获取打印用 HTML 页面(含二维码 base64 图 + 设备信息,浏览器 Ctrl+P 打印)</summary>
Task<Result<string>> GetPrintHtmlAsync(long equipmentId, string baseUrl);
/// <summary>绑定 RFID 编号到设备(覆盖式写入 RfidCode</summary>
Task<Result> BindRfidAsync(long equipmentId, string rfidCode);
}
}