劲创营---任务项目
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

hdl_operator.go 17 KiB

2 weeks ago
123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481
  1. package hdl
  2. import (
  3. "applet/app/comm/db"
  4. "applet/app/comm/e"
  5. "applet/app/comm/svc"
  6. "applet/app/comm/utils"
  7. md2 "applet/app/operator/md"
  8. "applet/app/store/md"
  9. "code.fnuoos.com/go_rely_warehouse/zyos_model.git/src/implement"
  10. "code.fnuoos.com/go_rely_warehouse/zyos_model.git/src/models"
  11. "fmt"
  12. "github.com/gin-gonic/gin"
  13. "time"
  14. )
  15. func CenterBase(c *gin.Context) {
  16. user := svc.GetUser(c)
  17. allTaskCount, _ := svc.MasterDb(c).Where("uid=?", user.Info.Uid).Count(&models.CampTaskOperatorTask{})
  18. sql := `SELECT SUM(ctupor.amount) as amount,SUM(IF(ctupor.uid=%d,ctupo.payment,0)) as own_payment,SUM(IF(ctupor.uid=%d,1,0)) as own_count,SUM(IF(ctupor.uid=%d,ctupor.amount,0)) as own_amount,ctupor.level FROM camp_task_user_promotion_order_relate ctupor
  19. LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
  20. WHERE ctupor.oid in(select oid from camp_task_user_promotion_order_relate where uid=%d ) GROUP BY ctupor.level`
  21. sql = fmt.Sprintf(sql, user.Info.Uid, user.Info.Uid, user.Info.Uid, user.Info.Uid)
  22. nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  23. var firstAmount float64 = 0
  24. var secondAmount float64 = 0
  25. var ownAmount float64 = 0
  26. var count = 0
  27. var sum float64 = 0
  28. for _, v := range nativeString {
  29. if v["level"] == "0" {
  30. firstAmount += utils.StrToFloat64(v["amount"])
  31. }
  32. if v["level"] == "1" {
  33. secondAmount += utils.StrToFloat64(v["amount"])
  34. }
  35. ownAmount += utils.StrToFloat64(v["own_amount"])
  36. sum += utils.StrToFloat64(v["own_payment"])
  37. count += utils.StrToInt(v["own_count"])
  38. }
  39. firstLv := "0"
  40. secondLv := "0"
  41. thirdLv := "0"
  42. sql1 := `SELECT COUNT(*) as count,u.level FROM user_relate ur
  43. LEFT JOIN user u on u.uid=ur.uid
  44. WHERE ur.parent_uid=%d GROUP BY u.level`
  45. sql1 = fmt.Sprintf(sql1, user.Info.Uid)
  46. nativeString1, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  47. for _, v := range nativeString1 {
  48. if v["level"] == "0" {
  49. firstLv = v["count"]
  50. }
  51. if v["level"] == "1" {
  52. secondLv = v["count"]
  53. }
  54. if v["level"] == "2" {
  55. thirdLv = v["count"]
  56. }
  57. }
  58. totalList := []map[string]string{
  59. {"name": "名下团长", "value": secondLv, "unit": "人", "type": "", "is_light": "0"},
  60. {"name": "名下普通用户", "value": firstLv, "unit": "人", "type": "", "is_light": "0"},
  61. {"name": "佣金总金额", "value": utils.Float64ToStr(sum), "unit": "¥", "type": "", "is_light": "1"},
  62. {"name": "推广总订单数", "value": utils.IntToStr(count), "unit": "", "type": "", "is_light": "0"},
  63. {"name": "我的分成", "value": utils.Float64ToStr(ownAmount), "unit": "¥", "type": "", "is_light": "1"},
  64. }
  65. if user.Info.Level == 3 {
  66. totalList = []map[string]string{
  67. {"name": "名下运营商", "value": thirdLv, "unit": "人", "type": "operator_detail", "is_light": "0"},
  68. {"name": "佣金总金额", "value": utils.Float64ToStr(sum), "unit": "¥", "type": "", "is_light": "1"},
  69. {"name": "推广总订单数", "value": utils.IntToStr(count), "unit": "", "type": "", "is_light": "0"},
  70. {"name": "我的分成", "value": utils.Float64ToStr(ownAmount), "unit": "¥", "type": "", "is_light": "1"},
  71. {"name": "项目数据", "value": "", "unit": "", "type": "project_detail", "is_light": "0"},
  72. }
  73. }
  74. myTask := make([]map[string]string, 0)
  75. NewCampTaskOperatorTaskDb := implement.NewCampTaskOperatorTaskDb(svc.MasterDb(c))
  76. myTaskList, _, _ := NewCampTaskOperatorTaskDb.FindCampTaskOperatorTaskGroup(user.Info.Uid, 1, 5, "")
  77. if myTaskList != nil {
  78. for _, v := range myTaskList {
  79. tmp := map[string]string{
  80. "id": utils.IntToStr(v.CampTaskOperatorTask.TaskId),
  81. "name": v.Name,
  82. "icon": svc.ImageFormat(c, v.Logo),
  83. }
  84. myTask = append(myTask, tmp)
  85. }
  86. }
  87. res := map[string]interface{}{
  88. "total_list": totalList,
  89. "my_task_count": utils.Int64ToStr(allTaskCount),
  90. "my_task": myTask,
  91. }
  92. e.OutSuc(c, res, nil)
  93. return
  94. }
  95. func CenterList(c *gin.Context) {
  96. var args md2.OperatorTaskReq
  97. if err := c.ShouldBindJSON(&args); err != nil {
  98. e.OutErr(c, e.ERR_INVALID_ARGS)
  99. return
  100. }
  101. user := svc.GetUser(c)
  102. where := ""
  103. if args.SettleStateType != "" {
  104. where += " and ctupo.settle_state=" + args.SettleStateType
  105. }
  106. if args.Cid != "" {
  107. where += " and ctl.first_cid=" + args.Cid
  108. }
  109. if args.TaskId != "" {
  110. where += " and ctupo.task_id=" + args.TaskId
  111. }
  112. if args.ApplyType != "" {
  113. where += " and ctupo.state=" + args.ApplyType
  114. }
  115. if args.StartTime != "" {
  116. where += " and ctupo.create_time>='" + args.StartTime + "'"
  117. }
  118. if args.EndTime != "" {
  119. where += " and ctupo.create_time<>>='" + args.EndTime + "'"
  120. }
  121. sqlCount := `select count(*) as count from FROM camp_task_user_promotion_order_relate ctupor
  122. LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
  123. LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
  124. WHERE ctupor.uid=%d %s`
  125. sqlCount = fmt.Sprintf(sqlCount, user.Info.Uid, where)
  126. nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sqlCount)
  127. var total = 0
  128. hotTask := make([]map[string]string, 0)
  129. for _, v := range nativeStringCount {
  130. total = utils.StrToInt(v["count"])
  131. }
  132. 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,
  133. ctupo.state,ctupo.settle_state,ctupo.create_time,ctupor.amount
  134. from FROM camp_task_user_promotion_order_relate ctupor
  135. LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
  136. LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
  137. LEFT JOIN user_level ul on ctupo.user_lv=ul.id
  138. LEFT JOIN camp_task_cate ctc on ctl.first_cid=ctc.id
  139. WHERE ctupor.uid=%d %s order by ctupo.id desc %s`
  140. sql = fmt.Sprintf(sql, user.Info.Uid, where, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
  141. nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  142. stateType := []string{"审核中", "审核通过", "审核拒绝"}
  143. settleStateType := []string{"未结算", "结算成功", "结算失败"}
  144. for _, v := range nativeString {
  145. tmp := map[string]string{
  146. "task_name": v["task_name"],
  147. "level_name": v["level_name"],
  148. "cate_name": v["cate_name"],
  149. "oid": v["oid"],
  150. "user_name": v["user_name"],
  151. "user_phone": v["user_phone"],
  152. "state": v["state"],
  153. "state_str": stateType[utils.StrToInt(v["state"])],
  154. "settle_state_str": settleStateType[utils.StrToInt(v["settle_state"])],
  155. "settle_state": v["settle_state"],
  156. "create_time": v["create_time"],
  157. "amount": v["amount"],
  158. }
  159. hotTask = append(hotTask, tmp)
  160. }
  161. task := make([]map[string]string, 0)
  162. taskList := make([]models.CampTaskList, 0)
  163. svc.MasterDb(c).Where("state=?", 1).OrderBy("sort desc,id desc").Find(&taskList)
  164. for _, v := range taskList {
  165. tmp := map[string]string{
  166. "name": v.Name, "value": utils.IntToStr(v.Id),
  167. }
  168. task = append(task, tmp)
  169. }
  170. taskCate := make([]map[string]string, 0)
  171. taskCateList := make([]models.CampTaskCate, 0)
  172. svc.MasterDb(c).Where(" is_show=?", 1).OrderBy("sort desc,id desc").Find(&taskCateList)
  173. for _, v := range taskCateList {
  174. if v.Pid > 0 {
  175. continue
  176. }
  177. tmp := map[string]string{
  178. "name": v.Name, "value": utils.IntToStr(v.Id),
  179. }
  180. taskCate = append(taskCate, tmp)
  181. }
  182. res := map[string]interface{}{
  183. "cate_list": taskCate,
  184. "task_cate_list": task,
  185. "settle_state_type": []map[string]string{
  186. {"name": "未结算", "value": "0"},
  187. {"name": "已结算", "value": "1"},
  188. {"name": "结算拒绝", "value": "2"},
  189. },
  190. "state_type": []map[string]string{
  191. {"name": "未审核", "value": "0"},
  192. {"name": "审核成功", "value": "1"},
  193. {"name": "审核拒绝", "value": "2"},
  194. },
  195. "total": total, "list": hotTask,
  196. }
  197. e.OutSuc(c, res, nil)
  198. return
  199. }
  200. func CenterOperatorList(c *gin.Context) {
  201. var args md2.OperatorTaskReq
  202. if err := c.ShouldBindJSON(&args); err != nil {
  203. e.OutErr(c, e.ERR_INVALID_ARGS)
  204. return
  205. }
  206. user := svc.GetUser(c)
  207. total := 0
  208. hotTask := make([]map[string]string, 0)
  209. sql := `SELECT u.nickname,u.uid,u.level_expire_at,u.level_arrive_at
  210. (select count(*) as count from user_relate ur1
  211. LEFT JOIN user u1 on u1.uid=ur1.uid where ur1.parent_uid=ur.uid and u1.level=0 ) as firstLv,
  212. (select count(*) as count from user_relate ur1
  213. LEFT JOIN user u1 on u1.uid=ur1.uid where ur1.parent_uid=ur.uid and u1.level=1 ) as secondLv
  214. FROM user_relate ur
  215. LEFT JOIN user u on u.uid=ur.uid
  216. WHERE ur.parent_uid=%d and u.level=2 order by u.uid desc %s`
  217. sql = fmt.Sprintf(sql, user.Info.Uid, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
  218. nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  219. for _, v := range nativeString {
  220. timer := "0天"
  221. leave := utils.TimeStdParseUnix(v["level_expire_at"]) - time.Now().Unix()
  222. if leave > 0 {
  223. timer = utils.Int64ToStr(leave/86400) + "天"
  224. }
  225. if v["level_expire_at"] == v["level_arrive_at"] {
  226. timer = "永久"
  227. }
  228. commission, _ := svc.MasterDb(c).Where("uid=?", v["uid"]).Sum(&models.CampTaskUserPromotionOrderRelate{}, "amount")
  229. orderCount, _ := svc.MasterDb(c).Where("uid=?", v["uid"]).Count(&models.CampTaskUserPromotionOrderRelate{})
  230. tmp := map[string]string{
  231. "uid": v["uid"],
  232. "nickname": v["nickname"],
  233. "timer": timer,
  234. "first_lv_count": v["firstLv"],
  235. "second_lv_count": v["secondLv"],
  236. "order_count": utils.Int64ToStr(orderCount),
  237. "commission": utils.Float64ToStr(commission),
  238. }
  239. hotTask = append(hotTask, tmp)
  240. }
  241. sqlCount := `SELECT COUNT(*) as count,u.level FROM user_relate ur
  242. LEFT JOIN user u on u.uid=ur.uid
  243. WHERE ur.parent_uid=%d and u.level=2`
  244. sqlCount = fmt.Sprintf(sqlCount, user.Info.Uid)
  245. nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  246. for _, v := range nativeStringCount {
  247. total = utils.StrToInt(v["count"])
  248. }
  249. res := map[string]interface{}{
  250. "total": total, "list": hotTask,
  251. }
  252. e.OutSuc(c, res, nil)
  253. return
  254. }
  255. func CenterOperatorDetailList(c *gin.Context) {
  256. var args md2.OperatorTaskReq
  257. if err := c.ShouldBindJSON(&args); err != nil {
  258. e.OutErr(c, e.ERR_INVALID_ARGS)
  259. return
  260. }
  261. total := 0
  262. hotTask := make([]map[string]string, 0)
  263. sql := `SELECT u.nickname,u.uid,u.phone,u.create_at
  264. FROM user_relate ur
  265. LEFT JOIN user u on u.uid=ur.uid
  266. WHERE ur.parent_uid=%d and u.level=%s order by u.uid desc %s`
  267. sql = fmt.Sprintf(sql, args.Uid, args.Level, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
  268. nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  269. for _, v := range nativeString {
  270. tmp := map[string]string{
  271. "uid": v["uid"],
  272. "nickname": v["nickname"],
  273. "phone": v["phone"],
  274. "create_time": v["create_at"],
  275. }
  276. hotTask = append(hotTask, tmp)
  277. }
  278. sqlCount := `SELECT COUNT(*) as count,u.level FROM user_relate ur
  279. LEFT JOIN user u on u.uid=ur.uid
  280. WHERE ur.parent_uid=%d and u.level=%s`
  281. sqlCount = fmt.Sprintf(sqlCount, args.Uid, args.Level)
  282. nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  283. for _, v := range nativeStringCount {
  284. total = utils.StrToInt(v["count"])
  285. }
  286. res := map[string]interface{}{
  287. "total": total, "list": hotTask,
  288. }
  289. e.OutSuc(c, res, nil)
  290. return
  291. }
  292. func CenterOperatorDetailTaskList(c *gin.Context) {
  293. var args md2.OperatorTaskReq
  294. if err := c.ShouldBindJSON(&args); err != nil {
  295. e.OutErr(c, e.ERR_INVALID_ARGS)
  296. return
  297. }
  298. where := ""
  299. if args.SettleStateType != "" {
  300. where += " and ctupo.settle_state=" + args.SettleStateType
  301. }
  302. if args.Cid != "" {
  303. where += " and ctl.first_cid=" + args.Cid
  304. }
  305. if args.TaskId != "" {
  306. where += " and ctupo.task_id=" + args.TaskId
  307. }
  308. if args.ApplyType != "" {
  309. where += " and ctupo.state=" + args.ApplyType
  310. }
  311. if args.StartTime != "" {
  312. where += " and ctupo.create_time>='" + args.StartTime + "'"
  313. }
  314. if args.EndTime != "" {
  315. where += " and ctupo.create_time<>>='" + args.EndTime + "'"
  316. }
  317. sqlCount := `select count(*) as count from FROM camp_task_user_promotion_order_relate ctupor
  318. LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
  319. LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
  320. WHERE ctupor.uid=%d %s`
  321. sqlCount = fmt.Sprintf(sqlCount, args.Uid, where)
  322. nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sqlCount)
  323. var total = 0
  324. hotTask := make([]map[string]string, 0)
  325. for _, v := range nativeStringCount {
  326. total = utils.StrToInt(v["count"])
  327. }
  328. 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,
  329. ctupo.state,ctupo.settle_state,ctupo.create_time,ctupor.amount
  330. from FROM camp_task_user_promotion_order_relate ctupor
  331. LEFT JOIN camp_task_user_promotion_order ctupo on ctupo.oid=ctupor.oid
  332. LEFT JOIN camp_task_list ctl on ctupo.task_id=ctl.id
  333. LEFT JOIN user_level ul on ctupo.user_lv=ul.id
  334. LEFT JOIN camp_task_cate ctc on ctl.first_cid=ctc.id
  335. WHERE ctupor.uid=%d %s order by ctupo.id desc %s`
  336. sql = fmt.Sprintf(sql, args.Uid, where, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
  337. nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  338. stateType := []string{"审核中", "审核通过", "审核拒绝"}
  339. settleStateType := []string{"未结算", "结算成功", "结算失败"}
  340. for _, v := range nativeString {
  341. tmp := map[string]string{
  342. "task_name": v["task_name"],
  343. "level_name": v["level_name"],
  344. "cate_name": v["cate_name"],
  345. "oid": v["oid"],
  346. "user_name": v["user_name"],
  347. "user_phone": v["user_phone"],
  348. "state": v["state"],
  349. "state_str": stateType[utils.StrToInt(v["state"])],
  350. "settle_state_str": settleStateType[utils.StrToInt(v["settle_state"])],
  351. "settle_state": v["settle_state"],
  352. "create_time": v["create_time"],
  353. "amount": v["amount"],
  354. }
  355. hotTask = append(hotTask, tmp)
  356. }
  357. task := make([]map[string]string, 0)
  358. taskList := make([]models.CampTaskList, 0)
  359. svc.MasterDb(c).Where("state=?", 1).OrderBy("sort desc,id desc").Find(&taskList)
  360. for _, v := range taskList {
  361. tmp := map[string]string{
  362. "name": v.Name, "value": utils.IntToStr(v.Id),
  363. }
  364. task = append(task, tmp)
  365. }
  366. taskCate := make([]map[string]string, 0)
  367. taskCateList := make([]models.CampTaskCate, 0)
  368. svc.MasterDb(c).Where(" is_show=?", 1).OrderBy("sort desc,id desc").Find(&taskCateList)
  369. for _, v := range taskCateList {
  370. if v.Pid > 0 {
  371. continue
  372. }
  373. tmp := map[string]string{
  374. "name": v.Name, "value": utils.IntToStr(v.Id),
  375. }
  376. taskCate = append(taskCate, tmp)
  377. }
  378. res := map[string]interface{}{
  379. "cate_list": taskCate,
  380. "task_cate_list": task,
  381. "settle_state_type": []map[string]string{
  382. {"name": "未结算", "value": "0"},
  383. {"name": "已结算", "value": "1"},
  384. {"name": "结算拒绝", "value": "2"},
  385. },
  386. "state_type": []map[string]string{
  387. {"name": "未审核", "value": "0"},
  388. {"name": "审核成功", "value": "1"},
  389. {"name": "审核拒绝", "value": "2"},
  390. },
  391. "total": total, "list": hotTask,
  392. }
  393. e.OutSuc(c, res, nil)
  394. return
  395. }
  396. func CenterOperatorProjectList(c *gin.Context) {
  397. var args md2.OperatorTaskReq
  398. if err := c.ShouldBindJSON(&args); err != nil {
  399. e.OutErr(c, e.ERR_INVALID_ARGS)
  400. return
  401. }
  402. user := svc.GetUser(c)
  403. where := ""
  404. if args.ApplyType != "" {
  405. where += " and ctpul.state=" + args.ApplyType
  406. }
  407. if args.StartTime != "" {
  408. where += " and ctpul.create_time>='" + args.StartTime + "'"
  409. }
  410. if args.EndTime != "" {
  411. where += " and ctpul.create_time<>>='" + args.EndTime + "'"
  412. }
  413. sqlCount := `select count(*) as count from FROM camp_task_project_user_like ctpul
  414. WHERE uid in(select uid from user_relate where parent_uid=%d) %s`
  415. sqlCount = fmt.Sprintf(sqlCount, user.Info.Uid, where)
  416. nativeStringCount, _ := db.QueryNativeString(svc.MasterDb(c), sqlCount)
  417. var total = 0
  418. hotTask := make([]map[string]string, 0)
  419. for _, v := range nativeStringCount {
  420. total = utils.StrToInt(v["count"])
  421. }
  422. sql := `select ctpul.state,ctpl.name as project_name,u.nickname,u.phone,ctpul.create_time,ctpul.remark,ctpul.id
  423. from FROM camp_task_project_user_like ctpul
  424. LEFT JOIN camp_task_project_list ctpl on ctpul.project_id=ctpl.id
  425. LEFT JOIN user u on ctpul.uid=u.uid
  426. WHERE ctpul.uid in(select uid from user_relate where parent_uid=%d) %s order by ctpul.id desc %s`
  427. sql = fmt.Sprintf(sql, args.Uid, where, "limit "+utils.IntToStr((utils.StrToInt(args.P)-1)*utils.StrToInt(args.Size))+","+args.Size)
  428. nativeString, _ := db.QueryNativeString(svc.MasterDb(c), sql)
  429. stateType := []string{"审核中", "审核通过", "审核拒绝"}
  430. for _, v := range nativeString {
  431. tmp := map[string]string{
  432. "project_name": v["project_name"],
  433. "id": v["id"],
  434. "user_name": v["nickname"],
  435. "user_phone": v["phone"],
  436. "state": v["state"],
  437. "state_str": stateType[utils.StrToInt(v["state"])],
  438. "create_time": v["create_time"],
  439. "remark": v["remark"],
  440. }
  441. hotTask = append(hotTask, tmp)
  442. }
  443. res := map[string]interface{}{
  444. "state_type": []map[string]string{
  445. {"name": "未审核", "value": "0"},
  446. {"name": "审核成功", "value": "1"},
  447. {"name": "审核拒绝", "value": "2"},
  448. },
  449. "total": total, "list": hotTask,
  450. }
  451. e.OutSuc(c, res, nil)
  452. return
  453. }
  454. func CenterOperatorProjectDel(c *gin.Context) {
  455. var args md.DirectorDelReq
  456. if err := c.ShouldBindJSON(&args); err != nil {
  457. e.OutErr(c, e.ERR_INVALID_ARGS)
  458. return
  459. }
  460. svc.MasterDb(c).In("id", args.Ids).Delete(&models.CampTaskProjectUserLike{})
  461. e.OutSuc(c, "success", nil)
  462. return
  463. }
  464. func CenterOperatorProjectRemark(c *gin.Context) {
  465. var args md.DirectorDelReq
  466. if err := c.ShouldBindJSON(&args); err != nil {
  467. e.OutErr(c, e.ERR_INVALID_ARGS)
  468. return
  469. }
  470. svc.MasterDb(c).In("id", args.Ids).Cols("remark").Update(&models.CampTaskProjectUserLike{Remark: args.Remark})
  471. e.OutSuc(c, "success", nil)
  472. return
  473. }