Compare commits
2 Commits
bc4355cad5
...
de68151539
| Author | SHA1 | Date | |
|---|---|---|---|
| de68151539 | |||
| 04b46d8025 |
@@ -3,6 +3,7 @@
|
|||||||
1. 你可以访问 http://localhost:8080/ 进入我的前端界面, 前端项目是另一个项目, 但接入的是当前项目对应的后端平台, 如果需要登录账号密码都是huang
|
1. 你可以访问 http://localhost:8080/ 进入我的前端界面, 前端项目是另一个项目, 但接入的是当前项目对应的后端平台, 如果需要登录账号密码都是huang
|
||||||
2. 你可以阅读 config/config.yml 了解我的配置信息, 包括数据库的连接地址和账号密码, 本平台监听的端口等, 后端的swagger界面在 http://localhost:8086/swagger/index.html
|
2. 你可以阅读 config/config.yml 了解我的配置信息, 包括数据库的连接地址和账号密码, 本平台监听的端口等, 后端的swagger界面在 http://localhost:8086/swagger/index.html
|
||||||
3. 项目根目录有project_structure.txt, 你需要先阅读此文件了解项目目录结构
|
3. 项目根目录有project_structure.txt, 你需要先阅读此文件了解项目目录结构
|
||||||
|
4. 项目中有config/presets-data目录, 里面有一些预设数据, 可以间接看作数据库内的数据, 在测试环境中他们一般会和数据库的数据保持一致
|
||||||
|
|
||||||
# 权限管理
|
# 权限管理
|
||||||
|
|
||||||
|
|||||||
@@ -223,7 +223,7 @@ func (g *GeneralDeviceService) Collect(ctx context.Context, areaControllerID uin
|
|||||||
logger.Errorf("创建待采集请求失败 (CorrelationID: %s): %v", correlationID, err)
|
logger.Errorf("创建待采集请求失败 (CorrelationID: %s): %v", correlationID, err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
logger.Infof("成功创建待采集请求 (CorrelationID: %s, DeviceID: %d)", correlationID, areaController.ID)
|
logger.Debugf("成功创建待采集请求 (CorrelationID: %s, DeviceID: %d)", correlationID, areaController.ID)
|
||||||
|
|
||||||
// 5. 构建最终的空中载荷
|
// 5. 构建最终的空中载荷
|
||||||
batchCmd := &proto.BatchCollectCommand{
|
batchCmd := &proto.BatchCollectCommand{
|
||||||
@@ -240,12 +240,12 @@ func (g *GeneralDeviceService) Collect(ctx context.Context, areaControllerID uin
|
|||||||
logger.Errorf("序列化采集指令失败 (CorrelationID: %s): %v", correlationID, err)
|
logger.Errorf("序列化采集指令失败 (CorrelationID: %s): %v", correlationID, err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
logger.Infof("构造空中载荷成功: networkID: %v, payload: %v", networkID, instruction)
|
logger.Debugf("构造空中载荷成功: networkID: %v, payload: %v", networkID, instruction)
|
||||||
if _, err := g.comm.Send(serviceCtx, networkID, payload); err != nil {
|
if _, err := g.comm.Send(serviceCtx, networkID, payload); err != nil {
|
||||||
logger.DPanicf("待采集请求 (CorrelationID: %s) 已创建,但发送到设备失败: %v。数据可能不一致!", correlationID, err)
|
logger.DPanicf("待采集请求 (CorrelationID: %s) 已创建,但发送到设备失败: %v。数据可能不一致!", correlationID, err)
|
||||||
return err
|
return err
|
||||||
}
|
}
|
||||||
|
|
||||||
logger.Infof("成功将采集请求 (CorrelationID: %s) 发送到设备 %s", correlationID, networkID)
|
logger.Debugf("成功将采集请求 (CorrelationID: %s) 发送到设备 %s", correlationID, networkID)
|
||||||
return nil
|
return nil
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -169,7 +169,8 @@ func (r *recipeServiceImpl) GenerateRecipeWithPrioritizedStockRawMaterials(ctx c
|
|||||||
for _, mat := range stockMaterials {
|
for _, mat := range stockMaterials {
|
||||||
adjustedMat := mat // 复制一份
|
adjustedMat := mat // 复制一份
|
||||||
// 大幅调低有库存原料的参考价格,诱导生成器优先使用
|
// 大幅调低有库存原料的参考价格,诱导生成器优先使用
|
||||||
adjustedMat.ReferencePrice = 0.01 // 设置一个非常小的价格
|
// TODO 按理说应该尽量优先使用已有原料, 但如果搭配后购买缺失原料花的钱还不如不用已有原料的另一个组合钱少怎么办
|
||||||
|
adjustedMat.ReferencePrice = adjustedMat.ReferencePrice * 0.1
|
||||||
materialsForGeneration = append(materialsForGeneration, adjustedMat)
|
materialsForGeneration = append(materialsForGeneration, adjustedMat)
|
||||||
logger.Debugf("原料 '%s' (ID: %d) 有库存,生成配方时参考价格调整为 %.2f", mat.Name, mat.ID, adjustedMat.ReferencePrice)
|
logger.Debugf("原料 '%s' (ID: %d) 有库存,生成配方时参考价格调整为 %.2f", mat.Name, mat.ID, adjustedMat.ReferencePrice)
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -266,7 +266,7 @@ func (t *LoRaMeshUartPassthroughTransport) executeSend(ctx context.Context, req
|
|||||||
frame.WriteByte(currentChunk) // 当前包序号
|
frame.WriteByte(currentChunk) // 当前包序号
|
||||||
frame.Write(chunk) // 数据块
|
frame.Write(chunk) // 数据块
|
||||||
|
|
||||||
logger.Infof("构建LoRa数据包: %v", frame.Bytes())
|
logger.Debugf("构建LoRa数据包: %v", frame.Bytes())
|
||||||
_, err := t.port.Write(frame.Bytes())
|
_, err := t.port.Write(frame.Bytes())
|
||||||
if err != nil {
|
if err != nil {
|
||||||
return nil, fmt.Errorf("写入串口失败: %w", err)
|
return nil, fmt.Errorf("写入串口失败: %w", err)
|
||||||
|
|||||||
Reference in New Issue
Block a user