bill_service.go 2.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879
  1. package service
  2. import (
  3. "errors"
  4. "youngee_b_api/app/dao"
  5. "youngee_b_api/app/entity"
  6. "youngee_b_api/app/vo"
  7. )
  8. type BillService struct{}
  9. // 电商带货账单支付
  10. func (p BillService) PaySelection(param *vo.PayParam) error {
  11. selectionId := param.ObjectId
  12. selectionInfo, err1 := dao.SelectionInfoDAO{}.GetSelectionInfoById(selectionId)
  13. if err1 != nil {
  14. return err1
  15. }
  16. selectionStatus := selectionInfo.SelectionStatus
  17. if selectionStatus != 4 {
  18. return errors.New("状态异常")
  19. }
  20. _, err2 := dao.EnterpriseDao{}.UpdateEnterpriseBalanceAndFrozen(selectionInfo.EnterpriseID, selectionInfo.EstimatedCost)
  21. if err2 != nil {
  22. return err2
  23. }
  24. err3 := dao.SelectionInfoDAO{}.UpdateSelectionInfo(entity.SelectionInfo{SelectionID: selectionId, SelectionStatus: 6})
  25. if err3 != nil {
  26. return err3
  27. }
  28. return nil
  29. }
  30. // 品牌种草账单支付
  31. func (p BillService) PayProject(param *vo.PayParam) error {
  32. projectId := param.ObjectId
  33. projectInfo, err1 := dao.ProjectDAO{}.GetProjectById(projectId)
  34. if err1 != nil {
  35. return err1
  36. }
  37. projectStatus := projectInfo.ProjectStatus
  38. if projectStatus != 6 {
  39. return errors.New("状态异常")
  40. }
  41. _, err2 := dao.EnterpriseDao{}.UpdateEnterpriseBalanceAndFrozen(projectInfo.EnterpriseID, projectInfo.PaymentAmount)
  42. if err2 != nil {
  43. return err2
  44. }
  45. err3 := dao.ProjectDAO{}.UpdateProject(entity.Project{ProjectId: projectId, ProjectStatus: 8})
  46. if err3 != nil {
  47. return err3
  48. }
  49. return nil
  50. }
  51. // 本地生活账单支付
  52. func (p BillService) PayLocalLife(param *vo.PayParam) error {
  53. localId := param.ObjectId
  54. localInfo, err1 := dao.LocalLifeDao{}.GetLocalById(localId)
  55. if err1 != nil {
  56. return err1
  57. }
  58. localStatus := localInfo.TaskStatus
  59. if localStatus != 6 {
  60. return errors.New("状态异常")
  61. }
  62. _, err2 := dao.EnterpriseDao{}.UpdateEnterpriseBalanceAndFrozen(localInfo.EnterpriseID, localInfo.PaymentAmount)
  63. if err2 != nil {
  64. return err2
  65. }
  66. err3 := dao.LocalLifeDao{}.UpdateLocal(entity.LocalLifeInfo{LocalID: localId, TaskStatus: 8})
  67. if err3 != nil {
  68. return err3
  69. }
  70. return nil
  71. }