Esempio n. 1
0
        /// <summary>
        /// 发送消息给酒店
        /// </summary>
        /// <param name="order"></param>
        /// <param name="hotel"></param>
        private void SendMsg(Model.wx_hotel_dingdan order, wx_hotels_info hotel)
        {
            BLL.wx_hotel_admin   dBll       = new BLL.wx_hotel_admin();
            Model.wx_hotel_admin hotelAdmin = null;
            var users = dBll.GetModelList(String.Format(" HotelId={0}", order.hotelid));

            hotelAdmin = users.FirstOrDefault();
            if (hotelAdmin != null)
            {
                var msg = new ShortMsgDto()
                {
                    Title   = "订单管理",
                    Content = String.Format("订单编号为{0}的订单需订购{1}至{2}{3}{4}间,请您确认是否接受!",
                                            order.OrderNumber, order.arriveTime.Value.ToString("yyyy/MM/dd"),
                                            order.leaveTime.Value.ToString("yyyy/MM/dd"),
                                            order.roomType, order.orderNum
                                            ),
                    Type         = "HotelOrder",
                    MenuType     = "hotel_room",
                    IsShowButton = true,
                    ButtonText   = "马上去处理",
                    ButtonUrl    = String.Format("/admin/hotel/hotel_dingdan_cz.aspx?id={0}&hotelid={1}",
                                                 order.id, order.hotelid),
                    ButtonMutipleUrl = "/admin/hotel/hotel_dingdan_manage.aspx",
                    FromUserId       = order.openid,
                    ToUserId         = hotelAdmin.ManagerId.ToString(),
                    MsgToUserType    = MsgUserType.Hotel,
                    MsgFromUserType  = MsgUserType.WeChatCustomer
                };
                _shortMsgService.SendMsg(msg);
            }
        }
Esempio n. 2
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="dingdanbll"></param>
        /// <param name="jsonDict"></param>
        /// <param name="context"></param>
        private void GetPayUrl(wx_hotel_dingdan dingdanbll, HttpContext context)
        {
            int ddid = MyCommFun.RequestInt("dingdanidnum");

            if (ddid > 0)
            {
                var dingdan = dingdanbll.GetModel(ddid);
                if (dingdan != null)
                {
                    Model.wx_hotels_info hotelInfo = new wx_hotels_info();
                    int wid = 0;
                    if (dingdan.hotelid != null)
                    {
                        hotelInfo = new BLL.wx_hotels_info().GetModel(dingdan.hotelid.Value);
                        if (hotelInfo.wid != null)
                        {
                            wid = hotelInfo.wid.Value;
                        }
                    }
                    //总花费
                    var dateSpan   = dingdan.leaveTime.Value - dingdan.arriveTime.Value;
                    var totalPrice = dingdan.price.Value * dingdan.orderNum.Value * dateSpan.Days;

                    var port   = WebHelper.GetHostPort();
                    var url    = string.Format("{0}/weixin/KNSHotel/hotel_order_paycallback.aspx", port);
                    var entity = new UnifiedOrderEntity
                    {
                        wid          = wid,
                        total_fee    = totalPrice == null ? 0 : (int)totalPrice,
                        out_trade_no = dingdan.OrderNumber,
                        openid       = dingdan.openid,
                        OrderId      = dingdan.id.ToString(),
                        body         = string.Format("订单编号{2} {3}{1}{0}间", dingdan.orderNum, dingdan.roomType
                                                     , dingdan.OrderNumber, hotelInfo.hotelName),
                        PayModuleID = (int)PayModuleEnum.Hotel,
                        PayComplete = url
                    };

                    entity.Extra.Add("dingdanidnum", ddid.ToString());
                    entity.Extra.Add("openid", dingdan.openid);
                    entity.Extra.Add("hotelid", dingdan.hotelid.ToString());
                    entity.Extra.Add("roomid", dingdan.roomid.ToString());

                    var ticket  = EncryptionManager.CreateIV();
                    var payData = EncryptionManager.AESEncrypt(entity.ToJson(), ticket);

                    context.Response.Write(AjaxResult.Success(PayHelper.GetPayUrl(payData, ticket)));
                }
            }
            else
            {
                context.Response.Write(AjaxResult.Error("获取支付状态失败!"));
            }
        }
Esempio n. 3
0
        /// <summary>
        /// 增加一条数据
        /// </summary>
        public int Add(WeiXinPF.Model.wx_hotels_info model)
        {
            StringBuilder query = new StringBuilder();

            query.Append("Insert Into[dbo].[wx_hotels_info]");
            query.Append("     ([wid],[hotelName],[hotelAddress],[hotelPhone],[mobilPhone],[noticeEmail],[emailPws],[smtp],[coverPic],[topPic],[orderLimit],[listMode],[messageNotice],[pwd],[hotelIntroduct],[orderRemark],[createDate],[sortid],[xplace],[yplace],[HotelCode],[Operator],[HotelLevel],[Recommend])");
            query.Append(" Values");
            query.Append("     (@wid, @hotelName, @hotelAddress, @hotelPhone, @mobilPhone, @noticeEmail, @emailPws, @smtp, @coverPic, @topPic, @orderLimit, @listMode, @messageNotice, @pwd, @hotelIntroduct, @orderRemark, @createDate, @sortid, @xplace, @yplace, @HotelCode, @Operator, @HotelLevel,@Recommend);");
            query.Append("Select @Id = Scope_Identity();");
            query.Append("Update dbo.wx_hotels_info Set HotelCode=Right('0000'+Cast(@Id As Varchar(10)),4) Where Id=@Id");
            using (IDbConnection db = DbFactory.GetOpenedConnection())
            {
                DynamicParameters dynamicParameters = new DynamicParameters();
                dynamicParameters.AddDynamicParams(model);
                dynamicParameters.Add("@Id", dbType: DbType.Int32, direction: ParameterDirection.Output);

                db.Execute(query.ToString(), dynamicParameters);

                return(dynamicParameters.Get <int>("@Id"));
            }
        }
Esempio n. 4
0
        /// <summary>
        /// 更新一条数据
        /// </summary>
        public bool Update(WeiXinPF.Model.wx_hotels_info model)
        {
            StringBuilder query = new StringBuilder();

            query.Append(" Update[dbo].[wx_hotels_info]");
            query.Append("   Set[wid] = @wid");
            query.Append("     ,[hotelName] = @hotelName");
            query.Append("     ,[hotelAddress] = @hotelAddress");
            query.Append("     ,[hotelPhone] = @hotelPhone");
            query.Append("     ,[mobilPhone] = @mobilPhone");
            query.Append("     ,[noticeEmail] = @noticeEmail");
            query.Append("     ,[emailPws] = @emailPws");
            query.Append("     ,[smtp] = @smtp");
            query.Append("     ,[coverPic] = @coverPic");
            query.Append("     ,[topPic] = @topPic");
            query.Append("     ,[orderLimit] = @orderLimit");
            query.Append("     ,[listMode] = @listMode");
            query.Append("     ,[messageNotice] = @messageNotice");
            query.Append("     ,[pwd] = @pwd");
            query.Append("     ,[hotelIntroduct] = @hotelIntroduct");
            query.Append("     ,[orderRemark] = @orderRemark");
            query.Append("     ,[createDate] = @createDate");
            query.Append("     ,[sortid] = @sortid");
            query.Append("     ,[xplace] = @xplace");
            query.Append("     ,[yplace] = @yplace");
            query.Append("     ,[HotelCode] = @HotelCode");
            query.Append("     ,[Operator] = @Operator");
            query.Append("     ,[HotelLevel] = @HotelLevel");
            query.Append("     ,[Recommend]=@Recommend");
            query.Append(" Where id=@Id");

            using (IDbConnection db = DbFactory.GetOpenedConnection())
            {
                return(db.Execute(query.ToString(), model) > 0);
            }
        }
Esempio n. 5
0
 /// <summary>
 /// 得到一个对象实体
 /// </summary>
 public WeiXinPF.Model.wx_hotels_info DataRowToModel(DataRow row)
 {
     WeiXinPF.Model.wx_hotels_info model = new WeiXinPF.Model.wx_hotels_info();
     if (row != null)
     {
         if (row["id"] != null && row["id"].ToString() != "")
         {
             model.id = int.Parse(row["id"].ToString());
         }
         if (row["wid"] != null && row["wid"].ToString() != "")
         {
             model.wid = int.Parse(row["wid"].ToString());
         }
         if (row["hotelName"] != null)
         {
             model.hotelName = row["hotelName"].ToString();
         }
         if (row["hotelAddress"] != null)
         {
             model.hotelAddress = row["hotelAddress"].ToString();
         }
         if (row["hotelPhone"] != null)
         {
             model.hotelPhone = row["hotelPhone"].ToString();
         }
         if (row["mobilPhone"] != null)
         {
             model.mobilPhone = row["mobilPhone"].ToString();
         }
         if (row["noticeEmail"] != null)
         {
             model.noticeEmail = row["noticeEmail"].ToString();
         }
         if (row["emailPws"] != null)
         {
             model.emailPws = row["emailPws"].ToString();
         }
         if (row["smtp"] != null)
         {
             model.smtp = row["smtp"].ToString();
         }
         if (row["coverPic"] != null)
         {
             model.coverPic = row["coverPic"].ToString();
         }
         if (row["topPic"] != null)
         {
             model.topPic = row["topPic"].ToString();
         }
         if (row["orderLimit"] != null && row["orderLimit"].ToString() != "")
         {
             model.orderLimit = int.Parse(row["orderLimit"].ToString());
         }
         if (row["listMode"] != null && row["listMode"].ToString() != "")
         {
             if ((row["listMode"].ToString() == "1") || (row["listMode"].ToString().ToLower() == "true"))
             {
                 model.listMode = true;
             }
             else
             {
                 model.listMode = false;
             }
         }
         if (row["messageNotice"] != null && row["messageNotice"].ToString() != "")
         {
             model.messageNotice = int.Parse(row["messageNotice"].ToString());
         }
         if (row["pwd"] != null)
         {
             model.pwd = row["pwd"].ToString();
         }
         if (row["hotelIntroduct"] != null)
         {
             model.hotelIntroduct = row["hotelIntroduct"].ToString();
         }
         if (row["orderRemark"] != null)
         {
             model.orderRemark = row["orderRemark"].ToString();
         }
         if (row["createDate"] != null && row["createDate"].ToString() != "")
         {
             model.createDate = DateTime.Parse(row["createDate"].ToString());
         }
         if (row["sortid"] != null && row["sortid"].ToString() != "")
         {
             model.sortid = int.Parse(row["sortid"].ToString());
         }
         if (row["xplace"] != null && row["xplace"].ToString() != "")
         {
             model.xplace = decimal.Parse(row["xplace"].ToString());
         }
         if (row["yplace"] != null && row["yplace"].ToString() != "")
         {
             model.yplace = decimal.Parse(row["yplace"].ToString());
         }
     }
     return(model);
 }