huangjiajun 4 天前
父节点
当前提交
243198f851
共有 5 个文件被更改,包括 101 次插入29 次删除
  1. +15
    -2
      app/custom/svc/svc_order.go
  2. +4
    -0
      app/custom/svc/svc_project.go
  3. +73
    -26
      app/store/svc/svc_index.go
  4. +1
    -1
      app/store/svc/svc_task.go
  5. +8
    -0
      app/store/svc/svc_task_order.go

+ 15
- 2
app/custom/svc/svc_order.go 查看文件

@@ -171,7 +171,8 @@ func TaskQrcodeSubmit(c *gin.Context) {
return
}
campTask.Num--
update, err := sess.Where("id=?", campTask.Id).Cols("num").Update(&campTask)
campTask.SuccessNum++
update, err := sess.Where("id=?", campTask.Id).Cols("num,success_num").Update(&campTask)
if update == 0 || err != nil {
sess.Rollback()
e.OutErr(c, 400, e.NewErr(400, "任务提交失败"))
@@ -289,7 +290,7 @@ func TaskQrcodeList(c *gin.Context) {
for _, v := range data {
var task models.CampTaskList
svc.MasterDb(c).Where("id=?", v.TaskId).Get(&task)
QrCode := qrcode.GetPNGBase64(h5Domain + "/#/zy-base-widget-sub/pages/jcy-task-page/order-detail-page?qr_id=" + utils.IntToStr(v.Id))
QrCode := qrcode.GetPNGBase64(h5Domain + "/#/zy-base-widget-sub/pages/jcy-task-page/task-upload-page?qr_id=" + utils.IntToStr(v.Id))
QrCode = strings.ReplaceAll(QrCode, "\u0000", "")
tmp := map[string]string{
"name": v.Name,
@@ -323,6 +324,18 @@ func TaskQrcodeApply(c *gin.Context) {
e.OutErr(c, 400, e.NewErr(400, "任务不存在"))
return
}
var CampTaskTask models.CampTaskList
svc.MasterDb(c).Where("id=?", CampTaskOperatorTask.TaskId).Get(&CampTaskTask)
if CampTaskTask.UpDownState != 1 {
e.OutErr(c, 400, e.NewErr(400, "任务已下架"))
return
}
if CampTaskTask.Num-1 < 0 {
e.OutErr(c, 400, e.NewErr(400, "任务已领完"))
return
}
CampTaskTask.ExtendNum++
svc.MasterDb(c).Where("id=?", CampTaskTask.Id).Cols("extend_num").Update(&CampTaskTask)
count, _ := svc.MasterDb(c).Where("uid=? and task_id=? and phone=?", user.Info.Uid, CampTaskOperatorTask.TaskId, args["phone"]).Count(&models.CampTaskUserPromotionQrcode{})
if count > 0 {
e.OutErr(c, 400, e.NewErr(400, "当前号码重复,请重新输入"))


+ 4
- 0
app/custom/svc/svc_project.go 查看文件

@@ -73,6 +73,10 @@ func ProjectLike(c *gin.Context) {
CreateTime: time.Now(),
}
svc.MasterDb(c).Insert(&data)
var CampTaskProject models.CampTaskProject
svc.MasterDb(c).Where("id=?", args.Id).Get(&CampTaskProject)
CampTaskProject.SuccessNum++
svc.MasterDb(c).Where("id=?", CampTaskProject.Id).Cols("success_num").Update(&CampTaskProject)
e.OutSuc(c, "success", nil)
return



+ 73
- 26
app/store/svc/svc_index.go 查看文件

@@ -32,28 +32,54 @@ func UserInfo(c *gin.Context) {
func Index(c *gin.Context) {
storeId := svc.GetCampStoreId(c)
//TODO 要根据账号
allTaskCount, _ := svc.MasterDb(c).Where("store_id=? and is_delete=0", storeId).Count(&models.CampTaskList{})
orderCount, _ := svc.MasterDb(c).Where("store_id=? and state=1", storeId).Count(&models.CampTaskUserPromotionOrder{})
settleCount, _ := svc.MasterDb(c).Where("store_id=? and settle_time is not null", storeId).Sum(&models.CampTaskUserPromotionOrder{}, "payment")
store := svc.GetCampStore(c)
taskIds := make([]int, 0)
contact := 0
if store.Pid > 0 {
var task = make([]models.CampTaskList, 0)
svc.MasterDb(c).Where("store_id=? and is_delete=0 and contact=?", storeId, store.Id).Find(&task)
for _, v := range task {
taskIds = append(taskIds, v.Id)
}
contact = store.Id
}
taskSee := svc.MasterDb(c).Where("store_id=? and is_delete=0", storeId)
if contact > 0 {
taskSee.And("contact=?", contact)
}
allTaskCount, _ := taskSee.Count(&models.CampTaskList{})
orderSee := svc.MasterDb(c).Where("store_id=? and state=1", storeId)
if store.Pid > 0 {
orderSee.In("task_id", taskIds)
}
orderCount, _ := orderSee.Count(&models.CampTaskUserPromotionOrder{})
settleSee := svc.MasterDb(c).Where("store_id=? and settle_time is not null", storeId)
if store.Pid > 0 {
settleSee.In("task_id", taskIds)
}
settleCount, _ := settleSee.Sum(&models.CampTaskUserPromotionOrder{}, "payment")
totalList := []map[string]string{
{"name": "发布总的任务数", "value": utils.Int64ToStr(allTaskCount), "unit": "(个)"},
{"name": "已完成的订单总数", "value": utils.Int64ToStr(orderCount), "unit": "(单)"},
{"name": "已结算的总金额", "value": utils.Float64ToStr(settleCount), "unit": "(元)"},
}
myTask := make([]map[string]string, 0)
NewCampTaskListDb := implement.NewCampTaskListDb(svc.MasterDb(c))
myTaskList, _ := NewCampTaskListDb.FindCampTaskList(utils.IntToStr(storeId), "", "", 1, 5, "apply_time desc")
if myTaskList != nil {
for _, v := range *myTaskList {
tmp := map[string]string{
"id": utils.IntToStr(v.Id),
"name": v.Name,
"icon": svc.ImageFormat(c, v.Logo),
}
myTask = append(myTask, tmp)
var myTaskList []models.CampTaskList
sess := svc.MasterDb(c).Where("store_id=?", storeId)
if contact > 0 {
sess.And("contact=?", contact)
}
sess.Limit(5).OrderBy("apply_time desc,id desc").Find(&myTaskList)
for _, v := range myTaskList {
tmp := map[string]string{
"id": utils.IntToStr(v.Id),
"name": v.Name,
"icon": svc.ImageFormat(c, v.Logo),
}
myTask = append(myTask, tmp)
}
hotTask := make([]map[string]string, 0)
NewCampTaskListDb := implement.NewCampTaskListDb(svc.MasterDb(c))
hotTaskList, _ := NewCampTaskListDb.FindCampTaskList(utils.IntToStr(storeId), "", "1", 1, 5, "success_num desc,id desc")
if hotTaskList != nil {
for _, v := range *hotTaskList {
@@ -79,9 +105,28 @@ func Index(c *gin.Context) {
}
func StoreIndex(c *gin.Context) {
storeId := svc.GetCampStoreId(c)
allTaskCount, _ := svc.MasterDb(c).Where("store_id=? and is_delete=0", storeId).Count(&models.CampTaskList{})
orderCount, _ := svc.MasterDb(c).Where("store_id=? and settle_time is null", storeId).Count(&models.CampTaskUserPromotionOrder{})
orderMoney, _ := svc.MasterDb(c).Where("store_id=? and settle_time is null", storeId).Sum(&models.CampTaskUserPromotionOrder{}, "payment")
store := svc.GetCampStore(c)
taskIds := make([]int, 0)
contact := 0
if store.Pid > 0 {
var task = make([]models.CampTaskList, 0)
svc.MasterDb(c).Where("store_id=? and is_delete=0 and contact=?", storeId, store.Id).Find(&task)
for _, v := range task {
taskIds = append(taskIds, v.Id)
}
contact = store.Id
}
taskSee := svc.MasterDb(c).Where("store_id=? and is_delete=0", storeId)
if contact > 0 {
taskSee.And("contact=?", contact)
}
allTaskCount, _ := taskSee.Count(&models.CampTaskList{})
orderSee := svc.MasterDb(c).Where("store_id=? and settle_time is null", storeId)
if store.Pid > 0 {
orderSee.In("task_id", taskIds)
}
orderCount, _ := orderSee.Count(&models.CampTaskUserPromotionOrder{})
orderMoney, _ := orderSee.Sum(&models.CampTaskUserPromotionOrder{}, "payment")
settleCount, _ := svc.MasterDb(c).Where("store_id=?", storeId).Sum(&models.CampTaskStoreUserAmount{}, "amount")
totalList := []map[string]string{
{"name": "当前待结算订单", "value": utils.Int64ToStr(orderCount)},
@@ -89,17 +134,19 @@ func StoreIndex(c *gin.Context) {
{"name": "当前剩余预存金额", "value": "¥" + utils.Float64ToStr(settleCount)},
}
myTask := make([]map[string]string, 0)
NewCampTaskListDb := implement.NewCampTaskListDb(svc.MasterDb(c))
myTaskList, _ := NewCampTaskListDb.FindCampTaskList(utils.IntToStr(storeId), "", "", 1, 5, "apply_time desc")
if myTaskList != nil {
for _, v := range *myTaskList {
tmp := map[string]string{
"id": utils.IntToStr(v.Id),
"name": v.Name,
"icon": svc.ImageFormat(c, v.Logo),
}
myTask = append(myTask, tmp)
var myTaskList []models.CampTaskList
sess := svc.MasterDb(c).Where("store_id=?", storeId)
if contact > 0 {
sess.And("contact=?", contact)
}
sess.Limit(5).OrderBy("apply_time desc,id desc").Find(&myTaskList)
for _, v := range myTaskList {
tmp := map[string]string{
"id": utils.IntToStr(v.Id),
"name": v.Name,
"icon": svc.ImageFormat(c, v.Logo),
}
myTask = append(myTask, tmp)
}
res := map[string]interface{}{
"total_list": totalList,


+ 1
- 1
app/store/svc/svc_task.go 查看文件

@@ -47,7 +47,7 @@ func TaskList(c *gin.Context) {
sess.And("apply_time<=?", args.EndTime)
}
count, _ := sess.Limit(utils.StrToInt(args.Size), (utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size)).OrderBy("apply_time desc,id desc").FindAndCount(&data)
applyType := []string{"", "下架申请", "上架申请"}
applyType := []string{"", "下架申请", "上架申请", "数量调整"}
stateType := []string{"审核中", "审核通过", "审核拒绝"}
taskCate := make([]map[string]string, 0)
taskCateList := make([]models.CampTaskCate, 0)


+ 8
- 0
app/store/svc/svc_task_order.go 查看文件

@@ -21,6 +21,7 @@ func TaskWaitAuditOrder(c *gin.Context) {
return
}
storeId := svc.GetCampStoreId(c)
store := svc.GetCampStore(c)
list := make([]map[string]interface{}, 0)
var data = make([]md.TaskWaitAuditOrderRes, 0)
sess := svc.MasterDb(c).Table("camp_task_user_promotion_order").Where("camp_task_user_promotion_order.store_id=?", storeId)
@@ -42,6 +43,9 @@ func TaskWaitAuditOrder(c *gin.Context) {
if args.EndTime != "" {
sess.And("camp_task_user_promotion_order.create_time<=?", args.EndTime)
}
if store.Pid > 0 {
sess.And("camp_task_list.contact=?", store.Id)
}
sess.Join("LEFT", "camp_task_user_promotion_qrcode", "camp_task_user_promotion_qrcode.id = camp_task_user_promotion_order.qrcode_id")
sess.Join("LEFT", "camp_task_list", "camp_task_list.id = camp_task_user_promotion_order.task_id")
sess.Join("LEFT", "camp_task_cate", "camp_task_cate.id = camp_task_list.first_cid")
@@ -122,6 +126,7 @@ func TaskWaitSettleOrder(c *gin.Context) {
return
}
storeId := svc.GetCampStoreId(c)
store := svc.GetCampStore(c)
list := make([]map[string]interface{}, 0)
var data = make([]md.TaskWaitAuditOrderRes, 0)
sess := svc.MasterDb(c).Table("camp_task_user_promotion_order").Where("camp_task_user_promotion_order.store_id=?", storeId)
@@ -144,6 +149,9 @@ func TaskWaitSettleOrder(c *gin.Context) {
if args.EndTime != "" {
sess.And("camp_task_user_promotion_order.create_time<=?", args.EndTime)
}
if store.Pid > 0 {
sess.And("camp_task_list.contact=?", store.Id)
}
sess.Join("LEFT", "camp_task_user_promotion_qrcode", "camp_task_user_promotion_qrcode.id = camp_task_user_promotion_order.qrcode_id")
sess.Join("LEFT", "camp_task_list", "camp_task_list.id = camp_task_user_promotion_order.task_id")
sess.Join("LEFT", "camp_task_cate", "camp_task_cate.id = camp_task_list.first_cid")


正在加载...
取消
保存