/// <summary> /// 获取订单退款失败原因 /// </summary> /// <param name="orderId"></param> /// <returns></returns> public ActionResult GetOutOrderFailRemark(int aid = 0, int orderId = 0) { Return_Msg returnData = new Return_Msg(); try { QiyeGoodsOrder order = QiyeGoodsOrderBLL.SingleModel.GetModel(orderId); CityMorders ctiyMorder = new CityMordersBLL().GetModel(order.OrderId); ReFundResult outOrderRsult = RefundResultBLL.SingleModel.GetModelByTradeno(ctiyMorder.trade_no); if (outOrderRsult == null) { returnData.Msg = "未知原因!"; } else { returnData.Msg = outOrderRsult.err_code_des ?? outOrderRsult.return_msg; returnData.isok = true; } } catch (Exception ex) { returnData.Msg = ex.Message; } return(Json(returnData)); }
public ActionResult OrderEdit(int appid = 0) { int id = Context.GetRequestInt("id", 0); if (id <= 0) { return(Redirect("/base/PageError?type=5")); } ViewBag.appId = appid; QiyeGoodsOrder order = QiyeGoodsOrderBLL.SingleModel.GetModel(id); if (order == null) { return(Redirect("/base/PageError?type=4")); } return(View(order)); }
public List <QiyeCustomer> GetDataList(int aid, string name, int pageSize, int pageIndex, ref int count) { List <QiyeCustomer> list = new List <QiyeCustomer>(); string sql = $"select {"{0}"} from QiyeCustomer c left join QiyeEmployee e on c.staffid=e.id"; string sqlList = string.Format(sql, "c.*,e.name employeename"); string sqlCount = string.Format(sql, "count(*)"); string sqlWhere = $" where c.aid={aid} and c.state>=0"; string sqlPage = $" limit {(pageIndex - 1) * pageSize},{pageSize}"; if (!string.IsNullOrEmpty(name)) { XcxAppAccountRelation xcxrelation = XcxAppAccountRelationBLL.SingleModel.GetModel(aid); if (xcxrelation == null) { return(list); } List <C_UserInfo> userList = C_UserInfoBLL.SingleModel.GetListByName(xcxrelation.AppId, name); if (userList == null || userList.Count <= 0) { return(list); } string userids = string.Join(",", userList.Select(s => s.Id)); sqlWhere += $" and c.userid in ({userids})"; } count = base.GetCountBySql(sqlCount + sqlWhere); using (MySqlDataReader dr = SqlMySql.ExecuteDataReaderMaster(connName, CommandType.Text, sqlList + sqlWhere + sqlPage)) { while (dr.Read()) { QiyeCustomer model = base.GetModel(dr); model.EmployeeName = dr["employeename"].ToString(); list.Add(model); } } if (count > 0) { string userIds = string.Join(",", list.Select(s => s.UserId)); List <C_UserInfo> userList = C_UserInfoBLL.SingleModel.GetListByIds(userIds); //用户咨询发送私信数量 List <ImMessage> imMessageList = ImMessageBLL.SingleModel.GetListByQiyeCustomerUserIds(userIds); //用户买单集合 List <QiyeGoodsOrder> orderList = QiyeGoodsOrderBLL.SingleModel.GetOrderResult(aid, userIds); foreach (QiyeCustomer item in list) { //访问次数和咨询次数 ImMessage imMessageModel = imMessageList?.FirstOrDefault(f => f.fuserId == item.UserId); if (imMessageModel != null) { item.AskCount = imMessageModel.storeId; } C_UserInfo userInfo = userList.FirstOrDefault(f => f.Id == item.UserId); if (userInfo != null) { item.Name = userInfo.NickName; item.Phone = userInfo.TelePhone; item.HeadImgUrl = userInfo.HeadImgUrl; } //总订单数和总订单金额 QiyeGoodsOrder order = orderList?.FirstOrDefault(f => f.UserId == item.UserId); if (order != null) { item.OrderCount = order.QtyCount; item.OrderTotalPrice = order.BuyPrice; } } } return(list); }
/// <summary> /// 变更订单状态 /// </summary> /// <param name="state"></param> /// <param name="oldState"></param> /// <param name="orderId"></param> /// <returns></returns> public ActionResult UpdteOrderState() { Return_Msg returnData = new Return_Msg(); int state = Context.GetRequestInt("state", 0); int oldState = Context.GetRequestInt("oldState", 0); int id = Context.GetRequestInt("orderId", 0); string attachData = Context.GetRequest("attachData", ""); if (id <= 0) { returnData.Msg = "参数错误"; return(Json(returnData)); } if (!Enum.IsDefined(typeof(QiyeOrderState), state)) { returnData.Msg = "无效状态,请刷新再试"; return(Json(returnData)); } QiyeGoodsOrder order = QiyeGoodsOrderBLL.SingleModel.GetModel(id); if (order == null || order.State != oldState) { returnData.Msg = "无效订单,请刷新再试"; return(Json(returnData)); } ServiceResult result = new ServiceResult(); string msg = ""; switch (state) { case (int)QiyeOrderState.已取消: //取消订单 QiyeGoodsOrderBLL.SingleModel.CancelOrder(order, ref msg); returnData.Msg = msg; break; case (int)QiyeOrderState.待收货: QiyeGoodsOrderBLL.SingleModel.SendGoods(order, attachData, ref msg); returnData.Msg = msg; break; case (int)QiyeOrderState.已完成: QiyeGoodsOrderBLL.SingleModel.ReceiptGoods(order, ref msg); returnData.Msg = msg; break; case (int)QiyeOrderState.退款中: //退款 QiyeGoodsOrderBLL.SingleModel.ReturnOrder(order, ref msg); returnData.Msg = msg; break; case (int)QiyeOrderState.退款失败: //退款 QiyeGoodsOrderBLL.SingleModel.ReturnOrderAgain(order, ref msg); returnData.Msg = msg; break; default: returnData.Msg = "无效操作类型"; break; } returnData.isok = returnData.Msg.Length <= 0; returnData.Msg = returnData.isok?"保存成功":"保存失败"; return(Json(returnData)); }
/// <summary> /// 修改订单 /// </summary> /// <returns></returns> public ActionResult UpdateOrderMaterial() { Return_Msg returnData = new Return_Msg(); string orderJson = Context.GetRequest("orderJson", string.Empty); if (string.IsNullOrWhiteSpace(orderJson)) { returnData.Msg = "服务器繁忙,未接收到订单数据"; return(Json(returnData)); } string columnstr = "Address,AccepterName,AccepterTelePhone"; QiyeGoodsOrder order = null; //要修改成的订单数据 QiyeGoodsOrder dbOrder = null; //数据库订单 try { //订单 order = Newtonsoft.Json.JsonConvert.DeserializeObject <QiyeGoodsOrder>(orderJson); if (order == null || order.Id <= 0) { returnData.Msg = $"订单数据出现异常"; return(Json(returnData)); } } catch (Exception) { returnData.Msg = "订单数据存在异常"; return(Json(returnData)); } dbOrder = QiyeGoodsOrderBLL.SingleModel.GetModel(order.Id); if (dbOrder == null) { returnData.Msg = "订单数据有异常"; return(Json(returnData)); } dbOrder.Address = order.Address; dbOrder.AccepterName = order.AccepterName; dbOrder.AccepterTelePhone = order.AccepterTelePhone; //微信支付,金额不等才去重新生成微信订单并关闭原有订单 if (dbOrder.OrderId > 0 && dbOrder.BuyPrice != order.BuyPrice) { columnstr += ",OrderId"; //关闭原微信订单 string errorMsg = ""; dbOrder.OrderId = new JsApiPay(HttpContext).updateWxOrderMoney(dbOrder.OrderId, order.BuyPrice, ref errorMsg); if (dbOrder.OrderId <= 0 || errorMsg.Length > 0) { returnData.Msg = errorMsg; return(Json(returnData)); } columnstr += ",BuyPrice,ReducedPrice"; dbOrder.ReducedPrice += dbOrder.BuyPrice - order.BuyPrice;//重新累计优惠金额 dbOrder.BuyPrice = order.BuyPrice; } bool isSuccess = QiyeGoodsOrderBLL.SingleModel.Update(dbOrder, columnstr); if (isSuccess) { returnData.isok = true; returnData.Msg = "修改订单资料成功"; } else { returnData.Msg = "修改订单资料失败"; } return(Json(returnData)); }