1、导出excel路径调整,从migu.admin.deovo.com改成migu.admin.2016js.com;

2、注释核对咪咕钻石会员退费数据(暂时用不上);
This commit is contained in:
chenlin 2025-09-11 09:42:22 +08:00
parent 4eec56d3cc
commit eebdf7b80f
2 changed files with 90 additions and 2 deletions

View File

@ -38,7 +38,7 @@ const (
SKUCODE = "miguyouxizuanshihuiyuan-yy"
ExportFile = "/www/server/images/export/"
MiGuExportUrl = "https://migu.admin.deovo.com/load/export/"
MiGuExportUrl = "https://migu.admin.2016js.com/load/export/"
//MiGuExportUrl = "/Users/max/Documents/" // 本地环境
)
@ -2316,3 +2316,85 @@ func CalculateDailySummaryFromRealtime(db *gorm.DB, startTime, endTime, channelC
return results, nil
}
const SheetName = "25年4月明细"
const OutExcelName = "/Users/max/Documents/output_25_4.xlsx"
func ProcessExcelAndUpdate() error {
if database.Db == nil {
log.Println("Database connection is nil")
fmt.Println("Database connection is nil")
return nil
}
path := "/Users/max/Documents/test.xlsx"
f, err := excelize.OpenFile(path)
if err != nil {
return err
}
rows, err := f.GetRows(SheetName) // 假设工作表为 Sheet1
if err != nil {
return err
}
for i, row := range rows {
// 跳过表头
if i == 0 || len(row) < 2 {
continue
}
//phoneNumber := row[1] // 第2列“受理号码”
phoneNumber := row[2] // 第3列“订购号码”
var order MgOrder
err := database.Db.Where("phone_number = ?", phoneNumber).First(&order).Error
if err != nil {
fmt.Printf("未找到手机号 %s 对应的记录\n", phoneNumber)
continue
}
// 从第9列开始写入数据
rowIndex := i + 1
cellState := fmt.Sprintf("J%d", rowIndex)
cellCancel := fmt.Sprintf("K%d", rowIndex)
cellSubTime := fmt.Sprintf("L%d", rowIndex)
cellUnsubTime := fmt.Sprintf("M%d", rowIndex)
// 状态中文
var stateText string
switch order.State {
case 1:
stateText = "订阅成功"
case 2:
stateText = "已取消订阅"
default:
stateText = "未知"
}
// 是否1小时退订中文
cancelText := "否"
if order.IsOneHourCancel == 1 {
cancelText = "是"
}
f.SetCellValue(SheetName, cellState, stateText)
f.SetCellValue(SheetName, cellCancel, cancelText)
if order.SubscribeTime != nil {
f.SetCellValue(SheetName, cellSubTime, order.SubscribeTime.Format("2006-01-02 15:04:05"))
} else {
f.SetCellValue(SheetName, cellSubTime, "")
}
if order.UnsubscribeTime != nil {
f.SetCellValue(SheetName, cellUnsubTime, order.UnsubscribeTime.Format("2006-01-02 15:04:05"))
} else {
f.SetCellValue(SheetName, cellUnsubTime, "")
}
}
// 保存新文件
return f.SaveAs(OutExcelName)
}

View File

@ -4,6 +4,7 @@ import (
"context"
"fmt"
"github.com/go-admin-team/go-admin-core/sdk/runtime"
"github.com/jasonlvhit/gocron"
"log"
"net/http"
"os"
@ -18,7 +19,6 @@ import (
"github.com/go-admin-team/go-admin-core/sdk/pkg"
"github.com/spf13/cobra"
"github.com/jasonlvhit/gocron"
"go-admin/app/admin/models"
"go-admin/app/admin/router"
"go-admin/app/jobs"
@ -183,6 +183,12 @@ func run() error {
// fmt.Println("err:", err)
//}
//// 核对咪咕钻石会员退费数据
//err := s.Every(1).Day().At("10:44").Do(models.ProcessExcelAndUpdate)
//if err != nil {
// fmt.Println("err:", err)
//}
<-s.Start()
}()