feat: 同步 huangguo2-server 的 11 个非基线提交

按意图重做在 huakui 代码底:
- 删除数据埋点逻辑:移除 pub/dataReport、reportser、srv_report、
  eventmod、上报定时任务及注册/登录/点赞/收藏/评论/解锁/订单处的
  上报调用和 reportSdkConfig 配置下发
- app 认证改为按设备ID识别用户:去掉 token 校验、Register/Login/
  ResetPassword/GuestLogin 接口,新增 ResolveDeviceUser 和设备缓存
- 广告改为按 AppId 从媒资中心拉取:pub/storage 新增 QueryAdvitise,
  UpdateAdvitiseData 替代 UpdateAdvitiseDataFromJt
- 后台登录取消谷歌二次验证,密码正确即登录
- 短剧/专题 slug 改为 10 位大小写字母+数字混合
- 本地 app.yaml/web.yaml 保留 HKDJNET_* 模板(不提交生产凭据)

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
This commit is contained in:
2026-10-16 12:59:14 +08:00
co-authored by Claude Opus 4.7
parent 85c0071fd8
commit e7179da072
48 changed files with 346 additions and 2933 deletions
-53
View File
@@ -2,22 +2,14 @@ package coinser
import (
"context"
"crypto/md5"
"encoding/hex"
"encoding/json"
"fmt"
"hkdj-web-server/app/service/rechargeser/jiahua"
"hkdj-web-server/pub/common/log"
"hkdj-web-server/pub/common/srvdef"
"hkdj-web-server/pub/common/useragent"
"hkdj-web-server/pub/dataReport"
"hkdj-web-server/pub/models/eventmod"
"hkdj-web-server/pub/models/rechargepackagemod"
"hkdj-web-server/pub/models/usermod"
"hkdj-web-server/pub/models/vipordermod"
"hkdj-web-server/pub/mongos"
"hkdj-web-server/pub/pubdef"
"strconv"
"strings"
"time"
@@ -115,8 +107,6 @@ func CreateCoinOrder(ctx context.Context,
return nil, serr
}
go reportCoinOrderCreated(order, pkg, ip)
return &BuyCoinResp{
TradeNo: tradeNo,
PayUrl: payInfo.PayUrl,
@@ -125,49 +115,6 @@ func CreateCoinOrder(ctx context.Context,
}, nil
}
func reportCoinOrderCreated(order *vipordermod.VipOrder, pkg *rechargepackagemod.RechargePackage, ip string) {
ctx := context.Background()
user, _ := usermod.FindOneUser(ctx, bson.M{usermod.FN.User.Id: order.UserId})
districtCode := order.DistrictCode
if user != nil && strings.TrimSpace(user.DistrictCode) != "" {
districtCode = user.DistrictCode
}
ua := useragent.UA{SysType: order.SysType}
eventId := newEventId(pubdef.TrackerAppId(), order.UserId, order.TradeNo, order.CreatedAt.Unix())
commonField := dataReport.NewCommonField(eventId, dataReport.EventTypeOrderCreated, districtCode, ua, strconv.FormatInt(order.UserId, 10), ip)
commonField.Payload = dataReport.JsonRawMessage(&dataReport.OrderCreatedEvent{
OrderID: order.TradeNo,
OrderType: "coin_purchase",
ProductID: strconv.FormatInt(pkg.Id, 10),
ProductName: pkg.Name,
Amount: dataReport.JsonNumber(order.Amount),
Currency: "CNY",
CoinQuantity: dataReport.JsonNumber(order.Coin),
CreateTime: dataReport.JsonNumber(order.CreatedAt.Unix()),
})
eventData, _ := json.Marshal(commonField)
if err := eventmod.InsertOneEvent(ctx, &eventmod.Event{
EventId: commonField.EventID,
EventType: commonField.Event,
Data: string(eventData),
Status: eventmod.Default,
CreatedAt: time.Now(),
UpdatedAt: time.Now(),
}); err != nil {
log.Error("reportCoinOrderCreated InsertOneEvent failed",
log.Any("tradeNo", order.TradeNo), log.E(err))
}
}
func newEventId(appId string, uid int64, orderId interface{}, createTime int64) string {
input := fmt.Sprintf("%v%v%v%v", appId, uid, orderId, createTime)
h := md5.New()
h.Write([]byte(input))
return hex.EncodeToString(h.Sum(nil))
}
// GetCoinOrderHistory 查询用户金币购买记录
func GetCoinOrderHistory(ctx context.Context, userId int64, page, pageSize int64) (vipordermod.VipOrderList, int64, *srvdef.SrvErr) {
filter := bson.M{