|
@@ -7,7 +7,7 @@ import (
|
|
"fmt"
|
|
"fmt"
|
|
orm2 "github.com/beego/beego/v2/client/orm"
|
|
orm2 "github.com/beego/beego/v2/client/orm"
|
|
_ "github.com/go-sql-driver/mysql"
|
|
_ "github.com/go-sql-driver/mysql"
|
|
- "strings"
|
|
|
|
|
|
+ "strconv"
|
|
)
|
|
)
|
|
|
|
|
|
type Certificate_ struct {
|
|
type Certificate_ struct {
|
|
@@ -17,28 +17,68 @@ type Certificate_ struct {
|
|
}
|
|
}
|
|
|
|
|
|
// 获取列表
|
|
// 获取列表
|
|
-func Read_Certificate_List(T_task_id string) ([]Certificate_, error) {
|
|
|
|
|
|
+func Read_Certificate_List(T_task_id, T_sn string, page, page_z int) ([]Certificate_, int64) {
|
|
serverOrm := orm2.NewOrmUsingDB(conf.Server_AliasName)
|
|
serverOrm := orm2.NewOrmUsingDB(conf.Server_AliasName)
|
|
localOrm := orm2.NewOrmUsingDB(conf.Local_AliasName)
|
|
localOrm := orm2.NewOrmUsingDB(conf.Local_AliasName)
|
|
|
|
|
|
|
|
+ pagez := page_z
|
|
|
|
+
|
|
|
|
+ var offset int
|
|
|
|
+ if page <= 1 {
|
|
|
|
+ offset = 0
|
|
|
|
+ } else {
|
|
|
|
+ page -= 1
|
|
|
|
+ offset = page * pagez
|
|
|
|
+ }
|
|
|
|
+
|
|
var maps []Certificate_
|
|
var maps []Certificate_
|
|
snList := []string{}
|
|
snList := []string{}
|
|
- sql := "SELECT t_sn FROM z_task_data_" + T_task_id + " GROUP BY t_sn"
|
|
|
|
|
|
+ sql := "SELECT t_sn FROM z_task_data_" + T_task_id + " GROUP BY t_sn"
|
|
fmt.Println(sql)
|
|
fmt.Println(sql)
|
|
_, err := localOrm.Raw(sql).QueryRows(&snList)
|
|
_, err := localOrm.Raw(sql).QueryRows(&snList)
|
|
|
|
|
|
if err != nil {
|
|
if err != nil {
|
|
logs.Error(lib.FuncName(), err)
|
|
logs.Error(lib.FuncName(), err)
|
|
- return maps, err
|
|
|
|
|
|
+ return maps, 0
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ snListStr := ""
|
|
|
|
+ for _, id := range snList {
|
|
|
|
+ if snListStr != "" {
|
|
|
|
+ snListStr = snListStr + ","
|
|
|
|
+ }
|
|
|
|
+ snListStr = snListStr + "'" + id + "'"
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ sql_condition := " t__state=1"
|
|
|
|
+ if len(snListStr) > 0 {
|
|
|
|
+ sql_condition += " AND t_sn not in (" + snListStr + ")"
|
|
}
|
|
}
|
|
|
|
+ if len(T_sn) > 0 {
|
|
|
|
+ sql_condition += " AND t_sn='" + T_sn + "'"
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ sql = "SELECT count(*) FROM certificate WHERE" + sql_condition
|
|
|
|
|
|
- sql = "SELECT * FROM certificate WHERE t__state=1 AND t_sn not in (" + strings.Join(snList, ",") + ") ORDER BY t_layout_no"
|
|
|
|
|
|
+ fmt.Println(sql)
|
|
|
|
+ var count int64
|
|
|
|
+ err = serverOrm.Raw(sql).QueryRow(&count)
|
|
|
|
+ if err != nil {
|
|
|
|
+ return maps, 0
|
|
|
|
+ }
|
|
|
|
+ //sql = "SELECT * FROM certificate WHERE t__state=1 AND t_sn not in (" + strings.Join(snList, ",") + ") ORDER BY t_layout_no"
|
|
|
|
+
|
|
|
|
+ // fixme 冷脸验证线上更新后再部署如下代码
|
|
|
|
+ sql = "SELECT * FROM certificate WHERE" + sql_condition
|
|
|
|
+ if page_z != 9999 {
|
|
|
|
+ sql = sql + " LIMIT " + strconv.Itoa(offset) + "," + strconv.Itoa(pagez)
|
|
|
|
+ }
|
|
|
|
|
|
fmt.Println(sql)
|
|
fmt.Println(sql)
|
|
_, err = serverOrm.Raw(sql).QueryRows(&maps)
|
|
_, err = serverOrm.Raw(sql).QueryRows(&maps)
|
|
if err != nil {
|
|
if err != nil {
|
|
logs.Error(lib.FuncName(), err)
|
|
logs.Error(lib.FuncName(), err)
|
|
- return maps, err
|
|
|
|
|
|
+ return maps, 0
|
|
}
|
|
}
|
|
- return maps, nil
|
|
|
|
|
|
+ return maps, count
|
|
}
|
|
}
|