order.go 18 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592
  1. package cygx
  2. import (
  3. "encoding/json"
  4. "github.com/rdlucklib/rdluck_tools/paging"
  5. "hongze/hz_crm_api/controllers"
  6. "hongze/hz_crm_api/models"
  7. "hongze/hz_crm_api/models/cygx"
  8. cygxService "hongze/hz_crm_api/services/cygx"
  9. "hongze/hz_crm_api/utils"
  10. "strconv"
  11. "time"
  12. )
  13. // 产品内测
  14. type OrderController struct {
  15. controllers.BaseAuthController
  16. }
  17. // @Title 列表
  18. // @Description 列表接口
  19. // @Param PageSize query int true "每页数据条数"
  20. // @Param CurrentIndex query int true "当前页页码,从1开始"
  21. // @Param StartDate query string false "开始时间 ,列如2021-03-06 "
  22. // @Param EndDate query string false "结束时间,列如2021-03-06 "
  23. // @Param AdminId query string false "销售ID "
  24. // @Param ShareId query string false "推荐人ID "
  25. // @Param PaymentType query string false "支付渠道 取值范围:1微信小程序,2微信扫码支付,3微信H5支付。 "
  26. // @Param OrderType query int false "订单类型 1:畅读卡订单,2:单场付费订单"
  27. // @Param OrderStatus query int false "订单状态,0:已取消、1:待支付、2:已支付、3:退款成功、4:退款处理中、5:退款异常、6:退款关闭"
  28. // @Param PaymentProject query string false "付款项目"
  29. // @Param UserCardType query string false "会员卡类型 ,日卡、月卡"
  30. // @Param OrderCode query string false "订单编号"
  31. // @Param KeyWord query string false "搜索关键词"
  32. // @Success Ret=200 {object} cygx.GetCygxTacticsTimeLineResp
  33. // @router /order/list [get]
  34. func (this *OrderController) OrderList() {
  35. br := new(models.BaseResponse).Init()
  36. defer func() {
  37. this.Data["json"] = br
  38. this.ServeJSON()
  39. }()
  40. sysUser := this.SysUser
  41. if sysUser == nil {
  42. br.Msg = "请登录"
  43. br.ErrMsg = "请登录,SysUser Is Empty"
  44. br.Ret = 408
  45. return
  46. }
  47. resp := new(cygx.UserOrderListResp)
  48. pageSize, _ := this.GetInt("PageSize")
  49. currentIndex, _ := this.GetInt("CurrentIndex")
  50. orderType, _ := this.GetInt("OrderType", 1)
  51. orderStatus, _ := this.GetInt("OrderStatus", -1)
  52. startDate := this.GetString("StartDate")
  53. endDate := this.GetString("EndDate")
  54. adminId := this.GetString("AdminId")
  55. shareId := this.GetString("ShareId")
  56. paymentType, _ := this.GetInt("PaymentType")
  57. orderCode := this.GetString("OrderCode")
  58. keyWord := this.GetString("KeyWord")
  59. paymentProject := this.GetString("PaymentProject")
  60. userCardType := this.GetString("UserCardType")
  61. var startSize int
  62. if pageSize <= 0 {
  63. pageSize = utils.PageSize20
  64. }
  65. if currentIndex <= 0 {
  66. currentIndex = 1
  67. }
  68. startSize = utils.StartIndex(currentIndex, pageSize)
  69. var condition string
  70. var pars []interface{}
  71. if orderType > 0 { //订单类型 1:畅读卡订单,2:单场付费订单
  72. condition += ` AND order_type = ? `
  73. pars = append(pars, orderType)
  74. }
  75. if startDate != "" && endDate != "" { //时间范围
  76. condition += ` AND create_time BETWEEN ? AND ? `
  77. pars = append(pars, startDate+" 00:00:01", endDate+" 23:59:59")
  78. }
  79. if adminId != "" { //所属销售筛选
  80. condition += ` AND seller_id IN (` + adminId + `) `
  81. }
  82. if shareId != "" { //推荐人ID
  83. condition += ` AND share_id IN (` + shareId + `) `
  84. }
  85. if paymentType > 0 { // 支付渠道
  86. var tradeType string
  87. switch paymentType {
  88. case 1:
  89. tradeType = "JSAPI"
  90. case 2:
  91. tradeType = "NATIVE"
  92. case 3:
  93. tradeType = "MWEB"
  94. }
  95. condition += ` AND trade_type = ? `
  96. pars = append(pars, tradeType)
  97. }
  98. if orderStatus > -1 { //订单状态
  99. condition += ` AND order_status = ? `
  100. pars = append(pars, orderStatus)
  101. }
  102. if orderCode != "" { //订单编号
  103. orderCode = "%" + orderCode + "%"
  104. condition += ` AND order_code LIKE ? `
  105. pars = append(pars, orderCode)
  106. }
  107. if paymentProject != "" { //付款项目
  108. condition += ` AND goods_name = ? `
  109. pars = append(pars, paymentProject)
  110. }
  111. if userCardType != "" { //日卡月卡, 前端不好区分这里用了两个字段
  112. condition += ` AND goods_name = ? `
  113. pars = append(pars, userCardType)
  114. }
  115. if keyWord != "" { //用户姓名,手机号
  116. keyWord = "%" + keyWord + "%"
  117. condition += ` AND (mobile LIKE ? OR real_name LIKE ? ) `
  118. pars = append(pars, keyWord, keyWord)
  119. }
  120. total, err := cygx.GetCygxOrderCount(condition, pars)
  121. if err != nil {
  122. br.Msg = "获取失败"
  123. br.ErrMsg = "获取失败,Err:" + err.Error()
  124. return
  125. }
  126. condition += " ORDER BY order_id DESC "
  127. list, err := cygx.GetCygxOrderList(condition, pars, startSize, pageSize)
  128. if err != nil {
  129. br.Msg = "获取失败"
  130. br.ErrMsg = "获取失败,Err:" + err.Error()
  131. return
  132. }
  133. var mobiles []string
  134. for _, v := range list {
  135. mobiles = append(mobiles, v.Mobile)
  136. }
  137. inviteNameMap := cygxService.GetCygxUserBusinessCardMap(mobiles) // 根据手机号获取邀请人
  138. for _, v := range list {
  139. item := new(cygx.OrderListResp)
  140. item.OrderCode = v.OrderCode
  141. item.OrderMoney = v.OrderMoney
  142. item.SourceId = v.SourceId
  143. item.Source = v.Source
  144. item.SourceTitle = v.SourceTitle
  145. switch v.Source {
  146. case utils.CYGX_OBJ_ARTICLE: //文章详情
  147. item.HttpUrl = utils.CYGX_MFYX_URL + "/material/info/" + strconv.Itoa(v.SourceId)
  148. case utils.CYGX_OBJ_ACTIVITY: //活动详情
  149. item.HttpUrl = utils.CYGX_MFYX_URL + "/activity/detail/" + strconv.Itoa(v.SourceId)
  150. case utils.CYGX_OBJ_YANXUANSPECIAL: //专栏详情
  151. item.HttpUrl = utils.CYGX_MFYX_URL + "/column/detail/" + strconv.Itoa(v.SourceId)
  152. }
  153. item.OrderStatus = v.OrderStatus
  154. switch item.OrderStatus {
  155. case 0:
  156. item.OrderStatusText = "已取消"
  157. case 1:
  158. item.OrderStatusText = "待支付"
  159. case 2:
  160. item.OrderStatusText = "已支付"
  161. case 3:
  162. item.OrderStatusText = "退款成功"
  163. case 4:
  164. item.OrderStatusText = "退款处理中"
  165. case 5:
  166. item.OrderStatusText = "退款异常"
  167. case 6:
  168. item.OrderStatusText = "退款关闭"
  169. }
  170. //TradeType string `comment:"交易类型,枚举值:JSAPI:公众号支付 、 NATIVE:扫码支付 、 App:App支付 、 MICROPAY:付款码支付 、 MWEB:H5支付 、 FACEPAY:刷脸支付"`
  171. switch v.TradeType {
  172. case "JSAPI":
  173. item.PaymentTypeText = "小程序"
  174. case "NATIVE":
  175. item.PaymentTypeText = "PC"
  176. case "MWEB":
  177. item.PaymentTypeText = "H5"
  178. }
  179. item.UserId = v.UserId
  180. item.RealName = v.RealName
  181. item.Mobile = v.Mobile
  182. item.Email = v.Email
  183. item.CompanyId = v.CompanyId
  184. item.CompanyName = v.CompanyName
  185. item.SellerName = v.SellerName
  186. if v.ShareName != "" {
  187. item.InviteName = v.ShareName
  188. } else {
  189. item.InviteName = inviteNameMap[v.Mobile]
  190. }
  191. item.PaymentProject = v.GoodsName
  192. if v.OrderStatus != 0 && v.OrderStatus != 1 {
  193. item.PayTime = v.PayTime.Format(utils.FormatDateTime)
  194. }
  195. if orderType == 1 && v.OrderStatus != 0 && v.OrderStatus != 1 {
  196. if v.GoodsId == 1 {
  197. item.StartDate = v.StartDate.Format(utils.FormatDateTime)
  198. item.EndDate = v.EndDate.Format(utils.FormatDateTime)
  199. } else {
  200. item.StartDate = v.StartDate.Format(utils.FormatDate)
  201. item.EndDate = v.EndDate.Format(utils.FormatDate)
  202. }
  203. }
  204. item.CreateTime = v.CreateTime.Format(utils.FormatDateTime)
  205. resp.List = append(resp.List, item)
  206. }
  207. if len(resp.List) == 0 {
  208. resp.List = make([]*cygx.OrderListResp, 0)
  209. }
  210. page := paging.GetPaging(currentIndex, pageSize, total)
  211. resp.Paging = page
  212. br.Ret = 200
  213. br.Success = true
  214. br.Msg = "获取成功"
  215. br.Data = resp
  216. }
  217. // @Title 退款
  218. // @Description 退款接口
  219. // @Param request body cygx.UserRemarAddReq true "type json string"
  220. // @Success 200 操作成功
  221. // @router /order/refund [post]
  222. func (this *UserController) OrderRefund() {
  223. br := new(models.BaseResponse).Init()
  224. defer func() {
  225. this.Data["json"] = br
  226. this.ServeJSON()
  227. }()
  228. sysUser := this.SysUser
  229. if sysUser == nil {
  230. br.Msg = "请登录"
  231. br.ErrMsg = "请登录,SysUser Is Empty"
  232. br.Ret = 408
  233. return
  234. }
  235. var req cygx.CygxOrderRefundReq
  236. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  237. if err != nil {
  238. br.Msg = "参数解析异常!"
  239. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  240. return
  241. }
  242. orderCode := req.OrderCode
  243. remark := req.Remark
  244. if remark == "" {
  245. br.Msg = "请填写退款原因"
  246. return
  247. }
  248. orderDetail, err := cygx.GetCygxOrderDetailByOrderCode(orderCode)
  249. if err != nil {
  250. br.Msg = "获取失败"
  251. br.ErrMsg = "获取失败, Err:" + err.Error()
  252. return
  253. }
  254. if orderDetail.OrderStatus != 2 {
  255. br.Msg = "订单状态异常!"
  256. br.ErrMsg = "订单状态异常,orderCode:" + orderCode
  257. return
  258. }
  259. //订单状态,0:已取消、1:待支付、2:已支付、3:退款成功、4:退款处理中、5:退款异常、6:退款关闭
  260. statusCode, err := cygxService.RefundsApiService(orderDetail)
  261. var orderStatus int
  262. if statusCode == 200 && err == nil {
  263. orderStatus = 4
  264. } else {
  265. orderStatus = 5
  266. }
  267. item := new(cygx.CygxOrderRefund)
  268. item.OrderCode = orderCode
  269. item.RefundMoney = orderDetail.OrderMoney
  270. item.RefundWay = 1
  271. item.Remark = remark
  272. item.CreateTime = time.Now()
  273. item.RefundTime = time.Now()
  274. item.AdminId = sysUser.AdminId
  275. item.AdminName = sysUser.RealName
  276. err = cygx.AddCygxOrderRefund(item, orderStatus)
  277. if err != nil {
  278. br.Msg = "新增失败."
  279. br.ErrMsg = "新增失败,Err:" + err.Error()
  280. return
  281. }
  282. br.Ret = 200
  283. br.Success = true
  284. br.Msg = "已提交退款,请到退款记录页面查看"
  285. }
  286. // @Title 退款记录列表
  287. // @Description 退款记录列表接口
  288. // @Param PageSize query int true "每页数据条数"
  289. // @Param CurrentIndex query int true "当前页页码,从1开始"
  290. // @Param StartDate query string false "开始时间 ,列如2021-03-06 "
  291. // @Param EndDate query string false "结束时间,列如2021-03-06 "
  292. // @Param AdminId query string false "销售ID "
  293. // @Param ShareId query string false "推荐人ID "
  294. // @Param PaymentType query string false "支付渠道 取值范围:1微信小程序,2微信扫码支付,3微信H5支付。 "
  295. // @Param OrderType query int false "订单类型 1:畅读卡订单,2:单场付费订单"
  296. // @Param OrderStatus query int false "订单状态,0:已取消、1:待支付、2:已支付、3:退款成功、4:退款处理中、5:退款异常、6:退款关闭"
  297. // @Param PaymentProject query string false "付款项目"
  298. // @Param UserCardType query string false "会员卡类型 ,日卡、月卡"
  299. // @Param OrderCode query string false "订单编号"
  300. // @Param KeyWord query string false "搜索关键词"
  301. // @Success Ret=200 {object} cygx.GetCygxTacticsTimeLineResp
  302. // @router /order/refund/list [get]
  303. func (this *OrderController) OrderRefundList() {
  304. br := new(models.BaseResponse).Init()
  305. defer func() {
  306. this.Data["json"] = br
  307. this.ServeJSON()
  308. }()
  309. sysUser := this.SysUser
  310. if sysUser == nil {
  311. br.Msg = "请登录"
  312. br.ErrMsg = "请登录,SysUser Is Empty"
  313. br.Ret = 408
  314. return
  315. }
  316. resp := new(cygx.UserOrderListResp)
  317. pageSize, _ := this.GetInt("PageSize")
  318. currentIndex, _ := this.GetInt("CurrentIndex")
  319. orderType, _ := this.GetInt("OrderType", 1)
  320. orderStatus, _ := this.GetInt("OrderStatus", -1)
  321. startDate := this.GetString("StartDate")
  322. endDate := this.GetString("EndDate")
  323. adminId := this.GetString("AdminId")
  324. shareId := this.GetString("ShareId")
  325. paymentType, _ := this.GetInt("PaymentType")
  326. orderCode := this.GetString("OrderCode")
  327. keyWord := this.GetString("KeyWord")
  328. paymentProject := this.GetString("PaymentProject")
  329. userCardType := this.GetString("UserCardType")
  330. var startSize int
  331. if pageSize <= 0 {
  332. pageSize = utils.PageSize20
  333. }
  334. if currentIndex <= 0 {
  335. currentIndex = 1
  336. }
  337. startSize = utils.StartIndex(currentIndex, pageSize)
  338. var condition string
  339. var pars []interface{}
  340. condition += ` AND order_status IN (3,4,5,6) `
  341. if orderType > 0 { //订单类型 1:畅读卡订单,2:单场付费订单
  342. condition += ` AND order_type = ? `
  343. pars = append(pars, orderType)
  344. }
  345. if startDate != "" && endDate != "" { //时间范围
  346. condition += ` AND create_time BETWEEN ? AND ? `
  347. pars = append(pars, startDate+" 00:00:01", endDate+" 23:59:59")
  348. }
  349. if adminId != "" { //所属销售筛选
  350. condition += ` AND seller_id IN (` + adminId + `) `
  351. }
  352. if shareId != "" { //推荐人ID
  353. condition += ` AND share_id IN (` + shareId + `) `
  354. }
  355. if paymentType > 0 { // 支付渠道
  356. var tradeType string
  357. switch paymentType {
  358. case 1:
  359. tradeType = "JSAPI"
  360. case 2:
  361. tradeType = "NATIVE"
  362. case 3:
  363. tradeType = "MWEB"
  364. }
  365. condition += ` AND trade_type = ? `
  366. pars = append(pars, tradeType)
  367. }
  368. if orderStatus > -1 { //订单状态
  369. condition += ` AND order_status = ? `
  370. pars = append(pars, orderStatus)
  371. }
  372. if orderCode != "" { //订单编号
  373. orderCode = "%" + orderCode + "%"
  374. condition += ` AND order_code LIKE ? `
  375. pars = append(pars, orderCode)
  376. }
  377. if paymentProject != "" { //付款项目
  378. condition += ` AND goods_name = ? `
  379. pars = append(pars, paymentProject)
  380. }
  381. if userCardType != "" { //日卡月卡, 前端不好区分这里用了两个字段
  382. condition += ` AND goods_name = ? `
  383. pars = append(pars, userCardType)
  384. }
  385. if keyWord != "" { //用户姓名,手机号
  386. keyWord = "%" + keyWord + "%"
  387. condition += ` AND (mobile LIKE ? OR real_name LIKE ? ) `
  388. pars = append(pars, keyWord, keyWord)
  389. }
  390. total, err := cygx.GetCygxOrderCount(condition, pars)
  391. if err != nil {
  392. br.Msg = "获取失败"
  393. br.ErrMsg = "获取失败,Err:" + err.Error()
  394. return
  395. }
  396. condition += " ORDER BY order_id DESC "
  397. list, err := cygx.GetCygxOrderList(condition, pars, startSize, pageSize)
  398. if err != nil {
  399. br.Msg = "获取失败"
  400. br.ErrMsg = "获取失败,Err:" + err.Error()
  401. return
  402. }
  403. var mobiles []string
  404. for _, v := range list {
  405. mobiles = append(mobiles, v.Mobile)
  406. }
  407. inviteNameMap := cygxService.GetCygxUserBusinessCardMap(mobiles) // 根据手机号获取邀请人
  408. for _, v := range list {
  409. item := new(cygx.OrderListResp)
  410. item.OrderCode = v.OrderCode
  411. item.OrderMoney = v.OrderMoney
  412. item.SourceId = v.SourceId
  413. item.Source = v.Source
  414. item.SourceTitle = v.SourceTitle
  415. switch v.Source {
  416. case utils.CYGX_OBJ_ARTICLE: //文章详情
  417. item.HttpUrl = utils.CYGX_MFYX_URL + "/material/info/" + strconv.Itoa(v.SourceId)
  418. case utils.CYGX_OBJ_ACTIVITY: //活动详情
  419. item.HttpUrl = utils.CYGX_MFYX_URL + "/activity/detail/" + strconv.Itoa(v.SourceId)
  420. case utils.CYGX_OBJ_YANXUANSPECIAL: //专栏详情
  421. item.HttpUrl = utils.CYGX_MFYX_URL + "/column/detail/" + strconv.Itoa(v.SourceId)
  422. }
  423. //OrderStatus int `comment:"订单状态,0:已取消、1:待支付、2:已支付、3:退款成功、4:退款处理中、5:退款异常、6:退款关闭"`
  424. item.OrderStatus = v.OrderStatus
  425. switch item.OrderStatus {
  426. case 3:
  427. item.OrderStatusText = "退款成功"
  428. case 4:
  429. item.OrderStatusText = "退款处理中"
  430. case 5:
  431. item.OrderStatusText = "退款异常"
  432. case 6:
  433. item.OrderStatusText = "退款关闭"
  434. }
  435. //TradeType string `comment:"交易类型,枚举值:JSAPI:公众号支付 、 NATIVE:扫码支付 、 App:App支付 、 MICROPAY:付款码支付 、 MWEB:H5支付 、 FACEPAY:刷脸支付"`
  436. switch v.TradeType {
  437. case "JSAPI":
  438. item.PaymentTypeText = "小程序"
  439. case "NATIVE":
  440. item.PaymentTypeText = "PC"
  441. case "MWEB":
  442. item.PaymentTypeText = "H5"
  443. }
  444. item.UserId = v.UserId
  445. item.RealName = v.RealName
  446. item.Mobile = v.Mobile
  447. item.Email = v.Email
  448. item.CompanyId = v.CompanyId
  449. item.CompanyName = v.CompanyName
  450. item.SellerName = v.SellerName
  451. if v.ShareName != "" {
  452. item.InviteName = v.ShareName
  453. } else {
  454. item.InviteName = inviteNameMap[v.Mobile]
  455. }
  456. item.PaymentProject = v.GoodsName
  457. switch v.GoodsId {
  458. case 1:
  459. item.PaymentProject = "日卡"
  460. case 2:
  461. item.PaymentProject = "月卡"
  462. }
  463. item.RefundTime = v.RefundTime.Format(utils.FormatDateTime)
  464. item.RefundRemark = v.RefundRemark
  465. //if v.OrderStatus == 2 {
  466. item.PayTime = v.PayTime.Format(utils.FormatDateTime)
  467. //}
  468. if orderType == 1 {
  469. if v.GoodsId == 1 {
  470. item.StartDate = v.StartDate.Format(utils.FormatDateTime)
  471. item.EndDate = v.EndDate.Format(utils.FormatDateTime)
  472. } else {
  473. item.StartDate = v.StartDate.Format(utils.FormatDate)
  474. item.EndDate = v.EndDate.Format(utils.FormatDate)
  475. }
  476. }
  477. item.CreateTime = v.CreateTime.Format(utils.FormatDateTime)
  478. resp.List = append(resp.List, item)
  479. }
  480. if len(resp.List) == 0 {
  481. resp.List = make([]*cygx.OrderListResp, 0)
  482. }
  483. page := paging.GetPaging(currentIndex, pageSize, total)
  484. resp.Paging = page
  485. br.Ret = 200
  486. br.Success = true
  487. br.Msg = "获取成功"
  488. br.Data = resp
  489. }
  490. // @Title 退款撤销
  491. // @Description 退款撤销接口
  492. // @Param request body cygx.UserRemarAddReq true "type json string"
  493. // @Success 200 操作成功
  494. // @router /order/refund_revoke [post]
  495. func (this *UserController) OrderRefundRevoke() {
  496. br := new(models.BaseResponse).Init()
  497. defer func() {
  498. this.Data["json"] = br
  499. this.ServeJSON()
  500. }()
  501. sysUser := this.SysUser
  502. if sysUser == nil {
  503. br.Msg = "请登录"
  504. br.ErrMsg = "请登录,SysUser Is Empty"
  505. br.Ret = 408
  506. return
  507. }
  508. var req cygx.CygxOrderRefundReq
  509. err := json.Unmarshal(this.Ctx.Input.RequestBody, &req)
  510. if err != nil {
  511. br.Msg = "参数解析异常!"
  512. br.ErrMsg = "参数解析失败,Err:" + err.Error()
  513. return
  514. }
  515. orderCode := req.OrderCode
  516. orderDetail, err := cygx.GetCygxOrderDetailByOrderCode(orderCode)
  517. if err != nil {
  518. br.Msg = "获取失败"
  519. br.ErrMsg = "获取失败, Err:" + err.Error()
  520. return
  521. }
  522. if orderDetail.OrderStatus != 4 {
  523. br.Msg = "订单状态异常!"
  524. br.ErrMsg = "订单状态异常,orderCode:" + orderCode
  525. return
  526. }
  527. item := new(cygx.CygxOrderAction)
  528. item.Action = "关闭退款"
  529. item.OrderStatus = 6
  530. item.OrderStatusText = "关闭退款"
  531. item.OrderCode = orderDetail.OrderCode
  532. item.UserId = orderDetail.UserId
  533. item.RealName = orderDetail.RealName
  534. item.Mobile = orderDetail.Mobile
  535. item.Email = orderDetail.Email
  536. item.CompanyId = orderDetail.CompanyId
  537. item.CompanyName = orderDetail.CompanyName
  538. item.SellerName = orderDetail.SellerName
  539. item.CreateTime = time.Now()
  540. item.ModifyTime = time.Now()
  541. item.AdminId = sysUser.AdminId
  542. item.AdminName = sysUser.RealName
  543. err = cygx.AddCygxOrderRefundRevoke(item)
  544. if err != nil {
  545. br.Msg = "新增失败."
  546. br.ErrMsg = "新增失败,Err:" + err.Error()
  547. return
  548. }
  549. br.Ret = 200
  550. br.Success = true
  551. br.Msg = "操作成功"
  552. }