orderService.go 6.0 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167
  1. package service
  2. import (
  3. "app.yhyue.com/moapp/jyOrder/entity"
  4. "app.yhyue.com/moapp/jyOrder/rpc/jyOrder"
  5. "app.yhyue.com/moapp/jyOrder/util"
  6. "log"
  7. )
  8. type OrderService struct{}
  9. func (s OrderService) CreateOrder(in *jyOrder.Request) (int64, string, int64) {
  10. orm := entity.Engine.NewSession()
  11. defer orm.Close()
  12. err0 := orm.Begin()
  13. if err0 != nil {
  14. log.Panicln("事务开启失败:", err0)
  15. }
  16. order := &entity.Order{}
  17. order.Pay_money = in.PayMoney
  18. order.Order_money = in.OrderMoney
  19. order.User_nickname = in.UserNickname
  20. order.Pay_time = util.ConversionDateTime(in.PayTime)
  21. order.Order_status = in.OrderStatus
  22. order.Create_time = util.ConversionDateTime(in.CreateTime)
  23. order.User_openid = in.UserOpenid
  24. order.Service_status = in.ServiceStatus
  25. order.Filter = in.Filter
  26. order.Prepay_id = in.PrepayId
  27. order.Code_url = in.CodeUrl
  28. order.Out_trade_no = in.OutTradeNo
  29. order.Filter_keys = in.FilterKeys
  30. order.Filter_publishtime = util.ConversionDateTime(in.FilterPublishtime)
  31. order.Data_count = in.DataCount
  32. order.User_mail = in.UserMail
  33. order.Data_spec = in.DataSpec
  34. order.Original_price = in.OriginalPrice
  35. order.Order_code = in.OrderCode
  36. order.Prepay_time = util.ConversionDateTime(in.PrepayTime)
  37. order.Product_type = in.ProductType
  38. order.Filter_id = in.FilterId
  39. order.Pay_way = in.PayWay
  40. order.User_phone = in.UserPhone
  41. order.Applybill_status = in.ApplybillStatus
  42. order.Download_url = in.DownloadUrl
  43. order.Applybill_type = in.ApplybillType
  44. order.Applybill_taxnum = in.ApplybillTaxnum
  45. order.Applybill_company = in.ApplybillCompany
  46. order.User_id = in.UserId
  47. order.Vip_starttime = util.ConversionDateTime(in.VipStarttime)
  48. order.Vip_endtime = util.ConversionDateTime(in.VipEndtime)
  49. order.Vip_type = in.VipType
  50. order.Course_status = in.CourseStatus
  51. order.Dis_word = in.DisWord
  52. order.Discount_price = in.DiscountPrice
  53. order.D_relation_id = in.DRelationId
  54. order.Return_status = in.ReturnStatus
  55. order.Refund_status = in.RefundStatus
  56. order.Is_backstage_order = in.IsBackstageOrder
  57. order.Salesperson = in.Salesperson
  58. order.Company_name = in.CompanyName
  59. order.BillingMode = in.BillingMode
  60. order.Sale_time = util.ConversionDateTime(in.SaleTime)
  61. if in.EntryTime != "" {
  62. order.Entry_time = util.ConversionDateTime(in.EntryTime)
  63. }
  64. order.Commission = in.Commission
  65. order.ProceduresMoney = in.ProceduresMoney
  66. order.DistributionChannel = in.SalesChannel
  67. order.OrderChannel = in.OrderChannel
  68. order.SigningSubject = in.PaybackCompany
  69. order.SalespersonId = in.SalespersonId
  70. order.CreatePerson = in.CreatePerson
  71. order.LastUpdateTime = in.EntryTime
  72. numb, err := orm.Table("dataexport_order").Insert(order)
  73. log.Println(numb, err)
  74. if err != nil || numb == int64(0) {
  75. log.Panicln("创建订单失败:", err)
  76. orm.Rollback()
  77. return entity.ErrorCode, "创建订单失败", entity.ErrorCode
  78. }
  79. _ = orm.Commit()
  80. log.Println("order.Id:", order.Id)
  81. return entity.SuccessCode, "创建订单成功", order.Id
  82. }
  83. func (s OrderService) CreateOrderDetailed(in *jyOrder.RequestDetailed) (int64, string, int64) {
  84. orm := entity.Engine.NewSession()
  85. defer orm.Close()
  86. err0 := orm.Begin()
  87. if err0 != nil {
  88. log.Panicln("事务开启失败:", err0)
  89. }
  90. orderDetailed := &entity.OrderDetailed{}
  91. orderDetailed.Order_id = in.OrderId
  92. orderDetailed.Relation_id = in.RelationId
  93. orderDetailed.Operator = in.Operator
  94. orderDetailed.Sale_time = util.ConversionDateTime(in.SaleTime)
  95. numb, err := orm.Table("dataexport_order_detailed").Insert(orderDetailed)
  96. if err != nil || numb == int64(0) {
  97. log.Panicln("创建订单明细失败:", err)
  98. _ = orm.Rollback()
  99. return entity.ErrorCode, "创建订单明细失败", entity.ErrorCode
  100. }
  101. _ = orm.Commit()
  102. return entity.SuccessCode, "创建订单明细成功", orderDetailed.Id
  103. }
  104. func (s OrderService) UpdateOrder(in *jyOrder.Request) (int64, string) {
  105. orm := entity.Engine.NewSession()
  106. defer orm.Close()
  107. err0 := orm.Begin()
  108. if err0 != nil {
  109. log.Panicln("事务开启失败:", err0)
  110. }
  111. order := map[string]interface{}{}
  112. order["pay_money"] = in.PayMoney
  113. order["order_money"] = in.OrderMoney
  114. order["user_nickname"] = in.UserNickname
  115. order["order_status"] = in.OrderStatus
  116. order["create_time"] = util.If(in.CreateTime == "", nil, in.CreateTime)
  117. order["user_openid"] = in.UserOpenid
  118. order["service_status"] = in.ServiceStatus
  119. order["filter"] = in.Filter
  120. order["prepay_id"] = in.PrepayId
  121. order["code_url"] = in.CodeUrl
  122. order["filter_keys"] = in.FilterKeys
  123. order["filter_publishtime"] = util.If(in.FilterPublishtime == "", nil, in.FilterPublishtime)
  124. order["data_count"] = in.DataCount
  125. order["user_mail"] = in.UserMail
  126. order["data_spec"] = in.DataSpec
  127. order["product_type"] = in.ProductType
  128. order["filter_id"] = in.FilterId
  129. order["user_phone"] = in.UserPhone
  130. order["download_url"] = in.DownloadUrl
  131. order["applybill_taxnum"] = in.ApplybillTaxnum
  132. order["applybill_company"] = in.ApplybillCompany
  133. order["user_id"] = in.UserId
  134. order["vip_starttime"] = util.If(in.VipStarttime == "", nil, in.VipStarttime)
  135. order["vip_endtime"] = util.If(in.VipEndtime == "", nil, in.VipEndtime)
  136. order["vip_type"] = in.VipType
  137. //order["course_status"] = in.CourseStatus
  138. order["salesperson"] = in.Salesperson
  139. order["company_name"] = in.CompanyName
  140. order["billingMode"] = in.BillingMode
  141. order["sale_time"] = util.If(in.SaleTime == "", nil, in.SaleTime)
  142. order["commission"] = in.Commission
  143. order["procedures_money"] = in.ProceduresMoney
  144. order["distribution_channel"] = in.SalesChannel
  145. order["order_channel"] = in.OrderChannel
  146. order["signing_subject"] = in.PaybackCompany
  147. order["salesperson_id"] = in.SalespersonId
  148. order["create_person"] = in.CreatePerson
  149. order["last_update_time"] = util.If(in.LastUpdateTime == "", nil, in.LastUpdateTime)
  150. order["last_update_person"] = in.LastUpdatePerson
  151. numb, err := orm.Table("dataexport_order").Where(map[string]interface{}{
  152. "order_code": in.OrderCode,
  153. }).Update(order)
  154. log.Println(numb, err)
  155. if err != nil {
  156. log.Panicln("订单修改失败:", err)
  157. orm.Rollback()
  158. return entity.ErrorCode, "订单修改失败"
  159. }
  160. orm.Commit()
  161. return entity.SuccessCode, "订单修改成功"
  162. }