Kaynağa Gözat

新增查询第三方写信接口

tangjiang 4 ay önce
ebeveyn
işleme
3ff3f4ae9b

+ 45 - 0
src/Hotline.Api/Controllers/WebPortalController.cs

@@ -491,6 +491,51 @@ namespace Hotline.Api.Controllers
             }
             return OpenResponse.Ok(WebPortalDeResponse<OrderListReturnDto>.Success(new OrderListReturnDto(), "成功"));
 
+        }
+
+        /// <summary>
+        /// 用户中心用户写信数据
+        /// </summary>
+        /// <param name="dto"></param>
+        /// <returns></returns>
+        [HttpPost("getorderbyuserphonelist")]
+        [AllowAnonymous]
+        public async Task<OpenResponse> GetOrderByUserPhoneList([FromBody] QueryOrderListByUserDto dto)
+        {
+            RefAsync<int> total = 0;
+            var items = await _webFlowAcceptRepository.Queryable()
+               .LeftJoin<Hotline.Orders.Order>((o, or) => o.OrderId == or.Id)
+               .Where(o => o.Mobile == dto.PhoneNum)
+           //重新构建数据
+           .Select((o, or) => new
+           {
+               FlowID = o.OrderId,
+               FlowCode = o.Code,
+               FlowPwd = o.Pwd,
+               FlowTitle = o.Title,
+               FlowFromName = or.SourceChannel,
+               FlowPurTypeName = o.PurTypeName,
+               ConTypeName = or.HotspotName,
+               FlowAddDate = o.CreationTime,
+               RSFlagName = or.Status < EOrderStatus.Filed ? "办理中" : "办理完成",
+               Mobile = o.Mobile
+           })
+           //将结果合并成一个表
+           .MergeTable()
+           .Where(p => p.Mobile == dto.PhoneNum)
+           .ToPageListAsync(dto.PageIndex, dto.PageSize, total);
+
+            //计算总页数
+            int nPageCount = Convert.ToInt32(Math.Ceiling(Convert.ToDouble(total) / dto.PageSize));
+            OrderListReturnDto returnDto = new()
+            {
+                PageNum = dto.PageIndex,
+                PageCount = nPageCount,
+                Data = _mapper.Map<IReadOnlyList<OrderListDto>>(items)
+            };
+
+            return OpenResponse.Ok(WebPortalDeResponse<OrderListReturnDto>.Success(returnDto, "成功"));
+
         }
         #endregion
 

+ 5 - 0
src/Hotline.Share/Dtos/WebPortal/GetOrderCodePwd.cs

@@ -68,6 +68,11 @@ namespace Hotline.Share.Dtos.WebPortal
         /// 信件编号
         /// </summary>
         public string? UserId { get; set; }
+
+        /// <summary>
+        /// 手机号码
+        /// </summary>
+        public string? PhoneNum { get; set; }
     }
 
     /// <summary>