package console import ( "fmt" "github.com/qit-team/snow-core/command" "qteam/app/constants/errorcode" "qteam/app/models/ordersmodel" "qteam/app/third/youchu" "qteam/app/utils" "qteam/config" "strconv" "strings" "time" ) func RegisterCommand(c *command.Command) { c.AddFunc("test", test) } func ClearUnpayOrder() { var expire = time.Now().Add(-15 * time.Minute).Format(time.DateTime) var orders []ordersmodel.Orders ordersmodel.GetInstance().GetDb().Where("state = 1 and create_time <= ?", expire).Select("id,product_id").Find(&orders) var ids = make([]int, 0) var prodIds = make([]string, 0) for _, v := range orders { ids = append(ids, v.Id) prodIds = append(prodIds, strconv.Itoa(v.ProductId)) } if len(prodIds) > 0 { var session = ordersmodel.GetInstance().GetDb().NewSession() session.Begin() _, err := session.In("id", ids).Update(&ordersmodel.Orders{State: 9}) if err == nil { _, err = session.Exec("update products set stock=stock+1 where id in (" + strings.Join(prodIds, ",") + ")") if err == nil { session.Commit() } else { session.Rollback() } } else { session.Rollback() } } } func DownLoadAccountBill() { utils.Log(nil, "down load bill") client := youchu.NewYouChuClient(config.GetConf().YouChu) code, rs := client.AccountBillQuery() fmt.Println(rs) if code == errorcode.Success { if len(rs.Files) > 0 { for k, v := range rs.Files { fileId := v["fileId"].(string) client.AccountBillDownload(fileId, k) } } } }