1. 新增跨平台磁盘空间监控能力,每日7点自动检测附件目录剩余空间,触发阈值告警 2. 重构附件存储方案为年/月/日/文件类型分层结构,统一MES与WMS的附件管理逻辑 3. 对齐物料档案与入库单的质量状态校验规则,仅合格品计入库存与出库 4. 实现入库单作废功能与区域库位的多级父子结构管理 5. 删除物料简称字段,补充规格型号与单位必填项,统一系统数据口径 6. 新增附件中心与磁盘状态查询接口,完善权限控制与操作日志
20 lines
541 B
Go
20 lines
541 B
Go
//go:build !windows
|
|
|
|
package handler
|
|
|
|
import "golang.org/x/sys/unix"
|
|
|
|
// diskUsage 返回指定目录所在磁盘的已用百分比(0-100)、可用字节、总字节。
|
|
func diskUsage(path string) (usedPercent int, freeBytes, totalBytes uint64, err error) {
|
|
var st unix.Statfs_t
|
|
if err := unix.Statfs(path, &st); err != nil {
|
|
return 0, 0, 0, err
|
|
}
|
|
total := st.Blocks * uint64(st.Bsize)
|
|
free := st.Bavail * uint64(st.Bsize)
|
|
if total == 0 {
|
|
return 0, free, total, nil
|
|
}
|
|
return int((total - free) * 100 / total), free, total, nil
|
|
}
|