huangjiajun 2 settimane fa
parent
commit
21b40d0fff
8 ha cambiato i file con 84 aggiunte e 44 eliminazioni
  1. +12
    -11
      app/comm/svc/svc_file_img_upload.go
  2. +26
    -20
      app/operator/hdl/hdl_operator.go
  3. +3
    -0
      app/operator/hdl/hdl_task.go
  4. +1
    -0
      app/operator/md/md_task.go
  5. +0
    -8
      app/operator/svc/svc_project.go
  6. +39
    -3
      app/operator/svc/svc_task.go
  7. +2
    -1
      app/router/router.go
  8. +1
    -1
      go.mod

+ 12
- 11
app/comm/svc/svc_file_img_upload.go Vedi File

@@ -19,19 +19,20 @@ func ImgReqUpload(c *gin.Context, uid, dirName, fname, callbackUrl string, fsize
if err := initStg(c, fsize, ext); err != nil {
return nil, err
}
// logx.Warn(uid)
newName := dirName + "_" + fmt.Sprintf("%010s", uid)

// if dirName == md.FILE_DIR_FEEDBACK || dirName == md.FILE_DIR_STYLE {
// newName += "_" + utils.FormatNanoUnix() + utils.RandString(4, "0123456789")
// }
// 默认都加时间戳
newName += "_" + utils.FormatNanoUnix() + utils.RandString(4, "0123456789")
newName += ".png" // 因为可能存在多种图像格式,这里统一后缀为png

ex := strings.Split(fname, ".")
fmt.Println(ex)
fileType := ""
if len(ex) > 1 {
fileType = ex[len(ex)-1]
}
if dirName == "" {
dirName = "任务"
}
newName := c.GetString("mid") + "/" + dirName + "/" + strings.ReplaceAll(fname, "."+fileType, "")
newName += "_" + utils.RandString(4, "0123456789")
newName += "." + fileType // 因为可能存在多种图像格式,这里统一后缀为png
f := &md.FileCallback{
Uid: uid,
DirId: md.FileUserDir[dirName],
FileName: newName,
}
// logx.Warn(f.Uid)


+ 26
- 20
app/operator/hdl/hdl_operator.go Vedi File

@@ -120,7 +120,7 @@ func CenterList(c *gin.Context) {
if args.EndTime != "" {
where += " and ctupo.create_time<>>='" + args.EndTime + "'"
}
sqlCount := `select count(*) as count from FROM camp_task_user_promotion_order_relate ctupor
sqlCount := `select count(*) as count FROM camp_task_user_promotion_order_relate ctupor
LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
WHERE ctupor.uid=%d %s`
@@ -134,7 +134,7 @@ WHERE ctupor.uid=%d %s`
}
sql := `select ctl.name as task_name,ul.level_name,ctc.name as cate_name,ctupo.payment,ctupor.oid,ctupo.name as user_name,ctupo.phone as user_phone,
ctupo.state,ctupo.settle_state,ctupo.create_time,ctupor.amount
from FROM camp_task_user_promotion_order_relate ctupor
FROM camp_task_user_promotion_order_relate ctupor
LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
LEFT JOIN user_level ul on ctupo.user_lv=ul.id
@@ -163,7 +163,7 @@ WHERE ctupor.uid=%d %s order by ctupo.id desc %s`
}
task := make([]map[string]string, 0)
taskList := make([]models.CampTaskList, 0)
svc.MasterDb(c).Where("state=?", 1).OrderBy("sort desc,id desc").Find(&taskList)
svc.MasterDb(c).Where("is_delete=?", 0).OrderBy("sort desc,id desc").Find(&taskList)
for _, v := range taskList {
tmp := map[string]string{
"name": v.Name, "value": utils.IntToStr(v.Id),
@@ -210,14 +210,20 @@ func CenterOperatorList(c *gin.Context) {
user := svc.GetUser(c)
total := 0
hotTask := make([]map[string]string, 0)
sql := `SELECT u.nickname,u.uid,u.level_expire_at,u.level_arrive_at
(select count(*) as count from user_relate ur1
LEFT JOIN user u1 on u1.uid=ur1.uid where ur1.parent_uid=ur.uid and u1.level=0 ) as firstLv,
(select count(*) as count from user_relate ur1
LEFT JOIN user u1 on u1.uid=ur1.uid where ur1.parent_uid=ur.uid and u1.level=1 ) as secondLv
sql := `SELECT
u.nickname,
u.uid,
u.level_expire_at,
u.level_arrive_at,
COUNT(CASE WHEN u1.level = 0 THEN 1 END) as firstLv,
COUNT(CASE WHEN u1.level = 1 THEN 1 END) as secondLv
FROM user_relate ur
LEFT JOIN user u on u.uid=ur.uid
WHERE ur.parent_uid=%d and u.level=2 order by u.uid desc %s`
LEFT JOIN user u ON u.uid = ur.uid
LEFT JOIN user_relate ur1 ON ur1.parent_uid = ur.uid
LEFT JOIN user u1 ON u1.uid = ur1.uid
WHERE ur.parent_uid = %d AND u.level = 2
GROUP BY u.uid, u.nickname, u.level_expire_at, u.level_arrive_at
ORDER BY u.uid DESC %s`
sql = fmt.Sprintf(sql, user.Info.Uid, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
for _, v := range nativeString {
@@ -267,7 +273,7 @@ func CenterOperatorDetailList(c *gin.Context) {
sql := `SELECT u.nickname,u.uid,u.phone,u.create_at
FROM user_relate ur
LEFT JOIN user u on u.uid=ur.uid
WHERE ur.parent_uid=%d and u.level=%s order by u.uid desc %s`
WHERE ur.parent_uid=%s and u.level=%s order by u.uid desc %s`
sql = fmt.Sprintf(sql, args.Uid, args.Level, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
for _, v := range nativeString {
@@ -281,9 +287,9 @@ WHERE ur.parent_uid=%d and u.level=%s order by u.uid desc %s`
}
sqlCount := `SELECT COUNT(*) as count,u.level FROM user_relate ur
LEFT JOIN user u on u.uid=ur.uid
WHERE ur.parent_uid=%d and u.level=%s`
WHERE ur.parent_uid=%s and u.level=%s`
sqlCount = fmt.Sprintf(sqlCount, args.Uid, args.Level)
nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sql)
nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sqlCount)
for _, v := range nativeStringCount {
total = utils.StrToInt(v["count"])
}
@@ -318,10 +324,10 @@ func CenterOperatorDetailTaskList(c *gin.Context) {
if args.EndTime != "" {
where += " and ctupo.create_time<>>='" + args.EndTime + "'"
}
sqlCount := `select count(*) as count from FROM camp_task_user_promotion_order_relate ctupor
sqlCount := `select count(*) as count FROM camp_task_user_promotion_order_relate ctupor
LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
WHERE ctupor.uid=%d %s`
WHERE ctupor.uid=%s %s`

sqlCount = fmt.Sprintf(sqlCount, args.Uid, where)
nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sqlCount)
@@ -332,12 +338,12 @@ WHERE ctupor.uid=%d %s`
}
sql := `select ctl.name as task_name,ul.level_name,ctc.name as cate_name,ctupo.payment,ctupor.oid,ctupo.name as user_name,ctupo.phone as user_phone,
ctupo.state,ctupo.settle_state,ctupo.create_time,ctupor.amount
from FROM camp_task_user_promotion_order_relate ctupor
FROM camp_task_user_promotion_order_relate ctupor
LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
LEFT JOIN user_level ul on ctupo.user_lv=ul.id
LEFT JOIN camp_task_cate ctc on ctl.first_cid=ctc.id
WHERE ctupor.uid=%d %s order by ctupo.id desc %s`
WHERE ctupor.uid=%s %s order by ctupo.id desc %s`
sql = fmt.Sprintf(sql, args.Uid, where, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
stateType := []string{"审核中", "审核通过", "审核拒绝"}
@@ -361,7 +367,7 @@ WHERE ctupor.uid=%d %s order by ctupo.id desc %s`
}
task := make([]map[string]string, 0)
taskList := make([]models.CampTaskList, 0)
svc.MasterDb(c).Where("state=?", 1).OrderBy("sort desc,id desc").Find(&taskList)
svc.MasterDb(c).Where("is_delete=?", 0).OrderBy("sort desc,id desc").Find(&taskList)
for _, v := range taskList {
tmp := map[string]string{
"name": v.Name, "value": utils.IntToStr(v.Id),
@@ -416,7 +422,7 @@ func CenterOperatorProjectList(c *gin.Context) {
if args.EndTime != "" {
where += " and ctpul.create_time<>>='" + args.EndTime + "'"
}
sqlCount := `select count(*) as count from FROM camp_task_project_user_like ctpul
sqlCount := `select count(*) as count FROM camp_task_project_user_like ctpul
WHERE uid in(select uid from user_relate where parent_uid=%d) %s`

sqlCount = fmt.Sprintf(sqlCount, user.Info.Uid, where)
@@ -427,7 +433,7 @@ WHERE uid in(select uid from user_relate where parent_uid=%d) %s`
total = utils.StrToInt(v["count"])
}
sql := `select ctpul.state,ctpl.name as project_name,u.nickname,u.phone,ctpul.create_time,ctpul.remark,ctpul.id
from FROM camp_task_project_user_like ctpul
FROM camp_task_project_user_like ctpul
LEFT JOIN camp_task_project_list ctpl on ctpul.project_id=ctpl.id
LEFT JOIN user u on ctpul.uid=u.uid
WHERE ctpul.uid in(select uid from user_relate where parent_uid=%d) %s order by ctpul.id desc %s`


+ 3
- 0
app/operator/hdl/hdl_task.go Vedi File

@@ -18,3 +18,6 @@ func TaskDown(c *gin.Context) {
func TaskUpList(c *gin.Context) {
svc.TaskUpList(c)
}
func TaskDetail(c *gin.Context) {
svc.TaskDetail(c)
}

+ 1
- 0
app/operator/md/md_task.go Vedi File

@@ -5,6 +5,7 @@ type TaskListReq struct {
Size string `json:"size"`
Cid string `json:"cid"`
SettleType string `json:"settle_type"`
Id string `json:"id"`
}
type OperatorTaskReq struct {
P string `json:"p"`


+ 0
- 8
app/operator/svc/svc_project.go Vedi File

@@ -108,8 +108,6 @@ func ProjectList(c *gin.Context) {
}
detailInfo := make([]string, 0)
json.Unmarshal([]byte(v.DetailInfo), &detailInfo)
label := make([]string, 0)
json.Unmarshal([]byte(v.Label), &label)
tmp := map[string]interface{}{
"year": v.CreateTime.Format("2006") + "年",
"id": utils.IntToStr(v.Id),
@@ -124,8 +122,6 @@ func ProjectList(c *gin.Context) {
"enterprise_info": enterpriseInfo1,
"cate_name": "",
"adv_word": v.AdvWord,
"label": label,
"is_check": "0",
"is_must": utils.IntToStr(v.IsMust),
}
for _, v1 := range cate {
@@ -133,10 +129,6 @@ func ProjectList(c *gin.Context) {
tmp["cate_name"] = v1.Name
}
}
counts, _ := svc.MasterDb(c).Where("uid=? and task_id=?", user.Info.Uid, v.Id).Count(&models.CampTaskOperatorTask{})
if counts > 0 {
tmp["is_check"] = "1"
}
hotTask = append(hotTask, tmp)
}
taskCate := make([]map[string]string, 0)


+ 39
- 3
app/operator/svc/svc_task.go Vedi File

@@ -125,6 +125,42 @@ func TaskList(c *gin.Context) {
e.OutSuc(c, res, nil)
return
}
func TaskDetail(c *gin.Context) {
var args md.TaskListReq
if err := c.ShouldBindJSON(&args); err != nil {
e.OutErr(c, e.ERR_INVALID_ARGS)
return
}
user := svc.GetUser(c)
var hotTaskList models.CampTaskList
svc.MasterDb(c).Where("id=?", args.Id).Get(&hotTaskList)
label := make([]string, 0)
DetailInfo := make([]string, 0)
tmp := map[string]interface{}{
"id": utils.IntToStr(hotTaskList.Id),
"is_check": "0",
"name": hotTaskList.Name,
"price": hotTaskList.Price,
"num": utils.IntToStr(hotTaskList.Num),
"icon": svc.ImageFormat(c, hotTaskList.Logo),
"timer": hotTaskList.StartTime.Format("2006-01-02") + "至" + hotTaskList.EndTime.Format("2006-01-02"),
"detail_info": DetailInfo,
"label": label,
}
taskDetailDb := implement.NewCampTaskDetailDb(svc.MasterDb(c))
taskDetail, _ := taskDetailDb.GetCampTaskDetailById(utils.IntToStr(hotTaskList.Id))
if taskDetail != nil {
json.Unmarshal([]byte(taskDetail.DetailInfo), &DetailInfo)
tmp["detail_info"] = DetailInfo
}
json.Unmarshal([]byte(hotTaskList.Label), &label)
counts, _ := svc.MasterDb(c).Where("uid=? and task_id=?", user.Info.Uid, hotTaskList.Id).Count(&models.CampTaskOperatorTask{})
if counts > 0 {
tmp["is_check"] = "1"
}
e.OutSuc(c, tmp, nil)
return
}
func TaskUpList(c *gin.Context) {
var args md.OperatorTaskReq
if err := c.ShouldBindJSON(&args); err != nil {
@@ -132,7 +168,7 @@ func TaskUpList(c *gin.Context) {
return
}
user := svc.GetUser(c)
sqlCount := `select count(*) as count from FROM camp_task_operator_task
sqlCount := `select count(*) as count FROM camp_task_operator_task
WHERE uid=%d `

sqlCount = fmt.Sprintf(sqlCount, user.Info.Uid)
@@ -143,7 +179,7 @@ WHERE uid=%d `
total = utils.StrToInt(v["count"])
}
sql := `select ctl.name as task_name,ctl.price as price,ctot.create_time,ctl.up_down_state,ctl.is_delete,ctot.id,ctot.task_id
from FROM camp_task_operator_task ctot
FROM camp_task_operator_task ctot
LEFT JOIN camp_task_list ctl on ctot.task_id=ctl.id
WHERE ctot.uid=%d order by ctot.id desc %s`
sql = fmt.Sprintf(sql, user.Info.Uid, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
@@ -164,7 +200,7 @@ WHERE ctot.uid=%d order by ctot.id desc %s`
orderCount := "0"
commission := "0"
sql1 := `select COUNT(*) as count,SUM(ctupor.amount) as amount
from FROM camp_task_user_promotion_order_relate ctupor
FROM camp_task_user_promotion_order_relate ctupor
LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
WHERE ctupor.uid=%d and ctupo.task_id=%s`
sql1 = fmt.Sprintf(sql1, user.Info.Uid, v["task_id"])


+ 2
- 1
app/router/router.go Vedi File

@@ -123,7 +123,7 @@ func routeCustom(r *gin.RouterGroup) {
func routeOperator(r *gin.RouterGroup) {
r.Use(mw.DB) // 以下接口需要用到数据库
r.Use(mw.Checker) // 以下接口需要检查Header: platform
r.POST("/base", operatorHdl.Base) //账号密码登陆
r.GET("/base", operatorHdl.Base) //账号密码登陆
r.POST("/login", operatorHdl.Login) //账号密码登陆
r.POST("/sms", operatorHdl.Sms) //发验证码
r.POST("/fastLogin", operatorHdl.FastLogin) //快捷登陆
@@ -131,6 +131,7 @@ func routeOperator(r *gin.RouterGroup) {
r.GET("/userInfo", operatorHdl.UserInfo) //首页数据
r.GET("/index", operatorHdl.Index)
r.POST("/taskCenter", operatorHdl.TaskList)
r.POST("/taskCenter/detail", operatorHdl.TaskDetail)
r.POST("/taskCenter/upList", operatorHdl.TaskUpList)
r.POST("/taskCenter/up", operatorHdl.TaskUp)
r.POST("/taskCenter/down", operatorHdl.TaskDown)


+ 1
- 1
go.mod Vedi File

@@ -48,7 +48,7 @@ require (
require code.fnuoos.com/go_rely_warehouse/zyos_go_third_party_api.git v1.1.21-0.20250801053019-55ac588e769e

require (
code.fnuoos.com/go_rely_warehouse/zyos_model.git v0.0.4-0.20250910023150-2ede529c0221 // indirect
code.fnuoos.com/go_rely_warehouse/zyos_model.git v0.0.4-0.20250911040453-a1190e8eb8ed // indirect
github.com/KyleBanks/depth v1.2.1 // indirect
github.com/PuerkitoBio/goquery v1.6.1 // indirect
github.com/PuerkitoBio/purell v1.1.1 // indirect


Caricamento…
Annulla
Salva