邹景立 d2b499d14a refactor: 使用 BC Math 替换浮点运算以提高精度
将多处基于浮点的数值计算替换为 BC Math 字符串运算以避免浮点精度问题,涉及支付、退款、转账、比较与统计逻辑的重构。主要改动包括:

- 将比较与判断替换为 bccomp,累加与合并使用 bcadd,乘以 100 等使用 bcmul;
- 将部分初始数值与统计结果从数值类型改为字符串形式(如 '0.00'),并调整相关返回类型(如 Payment::paidAmount 改为返回 string);
- 修正订单/退款金额计算与超额校验逻辑以使用高精度算术;
- 更新微信支付相关 SDK 调用中金额乘 100 的计算以避免精度误差;
- 在若干插件中用高精度运算替换 floatval/int 转换(包括 SystemQueue、Wemall、Wuma 等);
- 更新文档(readme)添加 BC Math/高精度计算等说明并统一版权年份至 2014-2026;
- 新增 .copilot-commit-message-instructions.md(提交信息规范)。

此改动旨在增强金融/金额相关业务的计算正确性与一致性,避免因浮点运算导致的金额误差。
2026-02-01 13:27:10 +08:00

73 lines
3.5 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

# ThinkPlugsWuma for ThinkAdmin
[![Latest Stable Version](https://poser.pugx.org/zoujingli/think-plugs-wuma/v/stable)](https://packagist.org/packages/zoujingli/think-plugs-wuma)
[![Total Downloads](https://poser.pugx.org/zoujingli/think-plugs-wuma/downloads)](https://packagist.org/packages/zoujingli/think-plugs-wuma)
[![Monthly Downloads](https://poser.pugx.org/zoujingli/think-plugs-wuma/d/monthly)](https://packagist.org/packages/zoujingli/think-plugs-wuma)
[![Daily Downloads](https://poser.pugx.org/zoujingli/think-plugs-wuma/d/daily)](https://packagist.org/packages/zoujingli/think-plugs-wuma)
[![PHP Version](https://thinkadmin.top/static/icon/php-7.1.svg)](https://thinkadmin.top)
[![License](https://thinkadmin.top/static/icon/license-fee.svg)](https://thinkadmin.top/fee-introduce)
**注意:** 该插件测试版有数据库结构变化,未生成升级补丁,每次更新需要全新安装!
### 业务功能特性
**核心一物一码功能:**
- **商品溯源管理**: 提供完整的商品溯源和防伪验证功能,支持一物一码追踪
- **物码标签管理**: 完整的物码标签生成、打印、管理和验证功能
- **防伪验证**: 支持消费者扫码验证商品真伪,提升品牌信任度
- **数据统计分析**: 提供扫码数据统计和分析,了解消费者行为
- **批量操作**: 支持物码的批量生成、导入、导出等操作
- **权限控制**: 完善的权限管理,确保数据安全
- **高精度计算支持**: 集成 BC Math 高精度数学函数,确保金融计算的准确性
- **收费授权**: 作为收费授权插件,提供专业的技术支持和功能更新
**技术特性:**
- **收费授权**: 需要联系作者获取授权,未授权不可商用
- **模块化设计**: 功能模块独立封装,便于维护和扩展
- **安全防护**: 内置数据加密和权限验证,确保系统安全
- **向后兼容**: 保持与现有 ThinkAdmin 版本的兼容性,确保平滑升级
- **专业支持**: 提供专业的技术支持和定期功能更新
- **数据完整性保障**: 通过数据库约束确保业务数据的一致性和有效性
物码标签管理系统,此插件为收费授权插件,请联系作者获取授权,未授权不可商用。
### 加入我们
我们的代码仓库已移至 **Github**,而 **Gitee** 则仅作为国内镜像仓库,方便广大开发者获取和使用。若想提交 **PR****ISSUE** 请在 [ThinkAdminDeveloper](https://github.com/zoujingli/ThinkAdminDeveloper) 仓库进行操作,如果在其他仓库操作或提交问题将无法处理!.
### 安装插件
```shell
### 安装前建议尝试更新所有组件
composer update --optimize-autoloader
### 安装稳定版本 ( 插件仅支持在 ThinkAdmin v6.1 中使用 )
// 暂不可用
composer require zoujingli/think-plugs-wuma --optimize-autoloader
### 安装测试版本( 插件仅支持在 ThinkAdmin v6.1 中使用
// 暂不可用
composer require zoujingli/think-plugs-wuma dev-master --optimize-autoloader
```
### 卸载插件
```shell
// 暂不可用
composer remove zoujingli/think-plugs-wuma
```
### 插件数据
本插件涉及数据表有:--
### 版权说明
**ThinkPlugsWuma****ThinkAdmin** 收费授权插件,请联系作者获取授权,未授权不可商用。
**ThinkPlugsWuma****ThinkAdmin** 收费插件。
未获得此插件授权时仅供参考学习不可商用,了解商用授权请阅读 [《付费授权》](https://thinkadmin.top/fee-introduce.html)。
版权所有 Copyright © 2014-2026 by ThinkAdmin (https://thinkadmin.top) All rights reserved。