/// <summary>
        /// 根据状态跳转不同页面
        /// </summary>
        /// <param name="payStatus"></param>
        private void JumpUrl(string payStatus)
        {
            var url = string.Empty;

            switch (payStatus)
            {
            case "success":
                if (!string.IsNullOrEmpty(hotelid))
                {
                    var id           = WeiXinPF.Common.Utils.StrToInt(hotelid, 0);
                    var wxHotelsInfo = new BLL.wx_hotels_info().GetModel(id);
                    url = "hotel_order.aspx?openid=" + openid +
                          "&wid=" + wxHotelsInfo.wid + "&hotelid=" + hotelid;
                }

                break;

            case "fail":
            case "cancel":
                url = "hotel_order_xianshi.aspx?dingdanid=" + dingdanidnum + "&openid=" + openid +
                      "&hotelid=" + hotelid + "&roomid=" + roomid;
                break;
            }
            newUrl = url;
//            Response.Redirect(url);
        }
Beispiel #2
0
        private void RptBind(string _strWhere, string _orderby)
        {
            Model.wx_userweixin weixin = GetWeiXinCode();

            //判断是否已经设置了微留言基本信息
            BLL.wx_hotels_info sbll = new BLL.wx_hotels_info();


            _strWhere        = "wid=" + weixin.id + " " + _strWhere;
            this.page        = MXRequest.GetQueryInt("page", 1);
            txtKeywords.Text = this.keywords;
            DataSet ds = gbll.GetList(this.pageSize, this.page, _strWhere, _orderby, out this.totalCount);

            // DataSet ds = gbll.GetList( _strWhere);
            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                DataRow dr;

                int count = ds.Tables[0].Rows.Count;
                for (int i = 0; i < count; i++)
                {
                    dr = ds.Tables[0].Rows[i];
                }
                ds.AcceptChanges();
            }
            this.rptList.DataSource = ds;
            this.rptList.DataBind();

            //绑定页码
            txtPageNum.Text = this.pageSize.ToString();
            string pageUrl = Utils.CombUrlTxt("hotel_list.aspx", "keywords={0}&page={1}", this.keywords, "__id__");

            PageContent.InnerHtml = Utils.OutPageList(this.pageSize, this.page, this.totalCount, pageUrl, 8);
        }
Beispiel #3
0
        /// <summary>
        /// 获取验证码剩余数量
        /// </summary>
        /// <returns></returns>
        private int GetCodeCount(wx_hotel_dingdan dingdan)
        {
            var count = 0;

            var wxHotelsInfo = new BLL.wx_hotels_info().GetModel(dingdan.hotelid.Value);
            var listCodes    = IdentifyingCodeService.GetIdentifyingCodeInfoByOrderId
                                   (dingdan.hotelid.Value, "hotel",
                                   dingdan.id.ToString(), wxHotelsInfo.wid.Value);

            //查询状态为已使用的
            var usedCode = listCodes.Where(t => t.Status == 2);

            if (usedCode.Any())
            {
                count = dingdan.orderNum.Value - usedCode.Count();
            }
            else
            {
                count = dingdan.orderNum.Value;
            }

            if (count <= 0)
            {
                //                ordermsg = "房间已全部入住";
                //                ordermsg = string.Format(@"  <div class='alert alert-warning' role='alert'>
                //      <strong> 提示!</strong>  {0}
                //         </div>", ordermsg);
            }
            else
            {
            }
            return(count);
        }
Beispiel #4
0
        private void GetUserMsg(Model.wx_hotel_dingdan manage)
        {
            //订单信息
            if (manage != null)
            {
                var createTime = string.Format("{0:yyyy/MM/dd HH:mm}", dingdan.createDate);
                var hotel      = new BLL.wx_hotels_info().GetModel(manage.hotelid.Value);
                Dingdanren += "<tr> <td>酒店商户或门店:" + hotel.hotelName + "</td></tr>";
                Dingdanren += "<tr> <td>商户或门店编号:" + hotel.HotelCode + "</td></tr>";
                Dingdanren += "<tr><td width=\"70\">订单编号: " + manage.orderNum + "</td></tr>";
                Dingdanren += "<tr> <td>交易日期:" + createTime + "</td></tr>";
                Dingdanren += "<tr><td>预定人:" + manage.oderName + "</td></tr>";
                Dingdanren += "<tr><td>电话:" + manage.tel + "</td></tr>";
                //                dingdanren += "<tr><td>地址:" + manage.address + "</td></tr>";
                //                dingdanren += "<tr><td>备注 :" + manage.oderRemark + "</td></tr>";

                status      = HotelStatusManager.OrderStatus.GetStatusDict(manage.orderStatus.Value);
                Dingdanren += "<tr><td>订单状态:<em  style='width:70px;' class='" + status.CssClass
                              + "'>" + status.StatusName + "</em></td></tr>";
            }
            else
            {
                Dingdanren += "<tr> <td>酒店商户或门店:</td></tr>";
                Dingdanren += "<tr> <td>商户或门店编号:</td></tr>";
                Dingdanren += "<tr><td width=\"70\">订单编号:</td></tr>";
                Dingdanren += "<tr> <td>交易日期:</td></tr>";
                Dingdanren += "<tr><td>预定人:</td></tr>";
                Dingdanren += "<tr><td>电话:</td></tr>";

                Dingdanren += "<tr><td>订单状态:<em  style='width:70px;' class='no'>未处理</em></td></tr>";
            }
        }
        protected void Page_Load(object sender, EventArgs e)
        {
            hotelid   = MyCommFun.RequestInt("hotelid");
            openid    = MyCommFun.QueryString("openid");
            dingdanid = MyCommFun.QueryString("dingdanid");
            roomid    = MyCommFun.RequestInt("roomid");

            if (!IsPostBack)
            {
                BLL.wx_hotels_info   infobll = new BLL.wx_hotels_info();
                Model.wx_hotels_info info    = new Model.wx_hotels_info();
                info  = infobll.GetModel(hotelid);
                image = info.topPic;

                BLL.wx_hotel_dingdan dingdanbll = new BLL.wx_hotel_dingdan();
                DataSet dr = dingdanbll.GetList(openid, hotelid);
                if (dr.Tables[0].Rows.Count > 0)
                {
                    numdingdan = dr.Tables[0].Rows.Count;
                }
                else
                {
                    numdingdan = 0;
                }
                this.dingdanidnum.Value = dingdanid;


                getdingdan(dingdanid);
            }
        }
Beispiel #6
0
        /// <summary>
        /// 取得当前微信帐号信息
        /// </summary>
        public Model.wx_userweixin GetWeiXinCode()
        {
            if (IsWeiXinCode())
            {
                Model.wx_userweixin model = Session["nowweixin"] as Model.wx_userweixin;
                if (model != null)
                {
                    return(model);
                }
            }
            else
            {
                int shopid = GetShopId();
                if (shopid != 0)
                {
                    BLL.wx_diancai_shopinfo   shopBll = new BLL.wx_diancai_shopinfo();
                    Model.wx_diancai_shopinfo shop    = shopBll.GetModel(shopid);

                    return(new BLL.wx_userweixin().GetModel(shop.wid.Value));
                }

                int hotelid = GetHotelId();
                if (hotelid != 0)
                {
                    BLL.wx_hotels_info   hotelBll = new BLL.wx_hotels_info();
                    Model.wx_hotels_info hotel    = hotelBll.GetModel(hotelid);

                    return(new BLL.wx_userweixin().GetModel(hotel.wid.Value));
                }
                Response.Write("<script>parent.location.href='http://" + HttpContext.Current.Request.Url.Authority + "/admin/weixin/myweixinlist.aspx'</script>");
                Response.End();
            }
            return(null);
        }
Beispiel #7
0
        /// <summary>
        /// 获取周边酒店列表
        /// </summary>
        /// <param name="wid"></param>
        /// <param name="keywords"></param>
        /// <param name="recommend"></param>
        /// <returns></returns>
        public List <POIDto> GetHotels(int wid, string keywords, bool recommend = false)
        {
            BLL.wx_hotels_info bll = new BLL.wx_hotels_info();

            string strWhere = string.Format("wid={0} ", wid);

            if (!string.IsNullOrEmpty(keywords))
            {
                strWhere += string.Format("  And hotelName Like '%{0}%'", keywords);
            }

            if (recommend)
            {
                strWhere += " And Recommend=1";
            }

            var hotels = bll.GetModelList(strWhere);

            if (hotels.Any())
            {
                return(hotels.Select(h => new POIDto
                {
                    Id = h.id,
                    Name = h.hotelName,
                    Introduction = h.hotelIntroduct,
                    Logo = h.topPic,
                    Lat = (double)(h.xplace.HasValue ? h.xplace.Value : 0),
                    Lng = (double)(h.yplace.HasValue ? h.yplace.Value : 0),
                    PoiType = "hotel"
                }).ToList());
            }

            return(null);
        }
Beispiel #8
0
        protected void btnSaveRefund_OnClick(object sender, EventArgs e)
        {
            var wxUserweixin = GetAdminInfo();

            if (wxUserweixin == null)
            {
                throw new Exception("用户不能为空!");
            }
            if (chkIsRefund.Checked)
            {
                double money        = MyCommFun.Str2Float(txtAmount.Text);
                var    hotelService = new HotelService();
                dingdan = dingdanbll.GetModel(dingdanid);

                var hotel = new BLL.wx_hotels_info().GetModel(dingdan.hotelid.Value);

                using (var scope = new TransactionScope())
                {
                    var dto = new TuidanDto()
                    {
                        dingdanid    = dingdan.id,
                        hotelid      = dingdan.hotelid.Value,
                        roomid       = dingdan.roomid.Value,
                        openid       = dingdan.openid,
                        wid          = hotel.wid.Value,
                        operateUser  = wxUserweixin.id,
                        refundAmount = money,
                        refundTime   = DateTime.Now,
                        remarks      = this.remarks.InnerText,
                        refundCode   = "HT" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + Utils.Number(5)
                    };
                    hotelService.AddTuidan(dto);

                    string return_msg = String.Empty;

                    if (WeChatRefund(dingdan, dto, hotel.wid.Value, out return_msg))//
                    {
                        new BLL.wx_hotel_dingdan().RefundComplete(dingdan.OrderNumber);

                        AddAdminLog(MXEnums.ActionEnum.Edit.ToString(), "修改酒店状态为" +
                                    HotelStatusManager.OrderStatus.Refunding.StatusName
                                    + HotelStatusManager.OrderStatus.Refunding.StatusId + ",主键为" + dingdanid); //记录日志
                        JscriptMsg("退款成功!", "hotel_dingdan_manage.aspx?hotelid=" + hotelid + "", "Success");
                    }
                    else
                    {
                        Response.Write(return_msg);
                        GetData(dingdanid);
                    }
                    //                    dingdanbll.Update(dingdan.id, HotelStatusManager.OrderStatus.Refunding.StatusId.ToString());



                    scope.Complete();
                }
            }
        }
Beispiel #9
0
        public MapDTO GetHotel(int id)
        {
            MapDTO result = null;

            var hotel = new BLL.wx_hotels_info().GetModel(id);

            result = Mapper.Map <Model.wx_hotels_info, MapDTO>(hotel);

            return(result);
        }
Beispiel #10
0
        /// <summary>
        /// 获取验证码
        /// todo:添加功能
        /// </summary>
        /// <param name="wxHotelDingdan"></param>
        private void GetVerificationCode(wx_hotel_dingdan wxHotelDingdan)
        {
            if (wxHotelDingdan.orderStatus == HotelStatusManager.OrderStatus.Payed.StatusId

                || wxHotelDingdan.orderStatus == HotelStatusManager.OrderStatus.Refunded.StatusId ||
                wxHotelDingdan.orderStatus == HotelStatusManager.OrderStatus.Refunding.StatusId
                )
            {
                var wxHotelsInfo = new BLL.wx_hotels_info().GetModel(wxHotelDingdan.hotelid.Value);
                var list         = IdentifyingCodeService.GetIdentifyingCodeInfoByOrderId
                                       (wxHotelDingdan.hotelid.Value, "hotel",
                                       wxHotelDingdan.id.ToString(), wxHotelsInfo.wid.Value);
                foreach (var code in list)
                {
                    //根据验证码状态, 显示在界面的状态
                    int showStatus = 0;
                    switch (code.Status)
                    {
                    case 0:
                    case 1:
                        showStatus = 1;
                        if (wxHotelDingdan.orderStatus == HotelStatusManager.OrderStatus.Payed.StatusId)
                        {
                            VerificationCode += string.Format(@"<div class='swiper-slide swiper-image'>
                                  <input type ='hidden' value='{0}' status='{1}' />
                                   </div>", code.IdentifyingCode, showStatus);
                        }
                        else
                        {
                            VerificationCode += string.Format(@"<div class='swiper-slide swiper-image'>
                                 <img class='img-ercode' src='../restaurant/images/orderRefunded.png' value='{0}' status='{1}'>
                                   </div>", code.IdentifyingCode, showStatus);
                        }

                        break;

                    case 2:
                        showStatus        = 2;
                        VerificationCode += string.Format(@"<div class='swiper-slide swiper-image'>
                                 <img class='img-ercode' src='../restaurant/images/orderUsed.png' value='{0}' status='{1}'>
                                   </div>", code.IdentifyingCode, showStatus);
                        break;

                    case 3:
                    case 4:
                        showStatus = 3;
                        break;
                    }
                }
            }
        }
Beispiel #11
0
        protected void Page_Load(object sender, EventArgs e)
        {
//            hotelid = MyCommFun.RequestInt("hotelid");
            openid = MyCommFun.QueryString("openid");
            roomid = MyCommFun.RequestInt("roomid");
            wid    = MyCommFun.RequestInt("wid");
            if (!string.IsNullOrEmpty(MyCommFun.QueryString("type")))
            {
                type = MyCommFun.QueryString("type");
            }
            var userbll = new BLL.wx_userweixin();

            Model.wx_userweixin uWeiXinModel = userbll.GetModel(wid);
            OAuth2BaseProc(uWeiXinModel, "hotel_userOrder", Request.Url.AbsoluteUri);

            if (!Page.IsPostBack)
            {
                menuStr = GetMenuStr(openid, wid, type);
                BLL.wx_hotels_info   infobll = new BLL.wx_hotels_info();
                Model.wx_hotels_info info    = new Model.wx_hotels_info();



                BLL.wx_hotel_dingdan dingdanbll = new BLL.wx_hotel_dingdan();
                DataSet dr = dingdanbll.GetUserOrderList(openid, wid, type);
                if (dr.Tables[0].Rows.Count > 0)
                {
                    numdingdan = dr.Tables[0].Rows.Count;
                }
                else
                {
                    numdingdan = 0;
                }


                List(openid, wid);
            }
        }
Beispiel #12
0
        protected void Page_Load(object sender, EventArgs e)
        {
            hotelid   = MyCommFun.RequestInt("hotelid");
            openid    = MyCommFun.QueryString("openid");
            dingdanid = MyCommFun.QueryString("dingdanid");
            roomid    = MyCommFun.RequestInt("roomid");

            if (!IsPostBack)
            {
                var info = new BLL.wx_hotels_info().GetModel(hotelid);

                if (info != null)
                {
                    image = info.topPic;
                }

                //this.dingdanidnum.Value = dingdanid;
                //this.roomidnum.Value = roomid.ToString();
                //this.hotelidnum.Value = hotelid.ToString();
                //this.openidnum.Value = openid.ToString();

                getdingdan(dingdanid);
            }
        }
Beispiel #13
0
        private void RptBind(string _strWhere, string _orderby)
        {

            Model.wx_userweixin weixin = GetWeiXinCode();

            //判断是否已经设置了微留言基本信息
            BLL.wx_hotels_info sbll = new BLL.wx_hotels_info();


            _strWhere = "wid=" + weixin.id + " " + _strWhere;
            this.page = MXRequest.GetQueryInt("page", 1);
            txtKeywords.Text = this.keywords;
            DataSet ds = gbll.GetList(this.pageSize, this.page, _strWhere, _orderby, out this.totalCount);
            // DataSet ds = gbll.GetList( _strWhere);
            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                DataRow dr;

                int count = ds.Tables[0].Rows.Count;
                for (int i = 0; i < count; i++)
                {
                    dr = ds.Tables[0].Rows[i];

                }
                ds.AcceptChanges();
            }
            this.rptList.DataSource = ds;
            this.rptList.DataBind();

            //绑定页码
            txtPageNum.Text = this.pageSize.ToString();
            string pageUrl = Utils.CombUrlTxt("hotel_list.aspx", "keywords={0}&page={1}", this.keywords, "__id__");
            PageContent.InnerHtml = Utils.OutPageList(this.pageSize, this.page, this.totalCount, pageUrl, 8);


        }
        protected void Page_Load(object sender, EventArgs e)
        {
            hotelid    = MyCommFun.RequestInt("hotelid");
            openid     = MyCommFun.QueryString("openid");
            this.title = this.GetTitle();
            string thisUrl = MyCommFun.getWebSite() + "/weixin/KNSHotel/index.aspx" + Request.Url.Query;
            var    bll     = new BLL.wx_userweixin();

            this.wid = MyCommFun.RequestWid();
            Model.wx_userweixin uWeiXinModel = bll.GetModel(wid);
            OAuth2BaseProc(uWeiXinModel, "index", thisUrl);

            if (!Page.IsPostBack)
            {
                if (!string.IsNullOrEmpty(this.openid) && this.hotelid > 0)
                {
                    var dingdanbll = new BLL.wx_hotel_dingdan();
                    var hotelInfo  = new BLL.wx_hotels_info().GetModel(this.hotelid);

                    if (hotelInfo != null)
                    {
                        this.wid = hotelInfo.wid.Value;
                    }

                    DataSet dr = dingdanbll.GetList(this.openid, this.hotelid);
                    if (dr.Tables[0].Rows.Count > 0)
                    {
                        this.dingdannum = dr.Tables[0].Rows.Count;
                    }
                    else
                    {
                        this.dingdannum = 0;
                    }
                }
            }
        }
        protected void save_room_Click(object sender, EventArgs e)
        {
             
            Model.wx_hotel_room room = new Model.wx_hotel_room();
            if (action == MXEnums.ActionEnum.Add.ToString())
            {
                room.hotelid = hotelid;
                room.roomType = this.roomType.Text;
                room.RoomCode = roomBll.GetRoomCode(hotelid);
                room.indroduce = this.indroduce.InnerText;
                room.roomPrice = Convert.ToDecimal(this.roomPrice.Text);
                room.salePrice = Convert.ToDecimal(this.salePrice.Text);
                room.facilities = this.facilities.Value;
                room.UseInstruction = txtUsueIntroduction.Value;
                room.RefundRule = this.txtRefundRule.Value;
                room.createDate = DateTime.Now;
                room.Status = Model.RoomStatus.Submit;

                //room.ExpiryDate_Begin = DateTime.Parse(txtExpiryDate_Begin.Text);
                //room.ExpiryDate_End = DateTime.Parse(txtExpiryDate_End.Text);

                //if (DateTime.Compare(room.ExpiryDate_Begin.Value, room.ExpiryDate_End.Value) > 0)
                //{
                //    JscriptMsg("使用有效期开始时间不能大于结束时间。", "", "error");
                //}

                roomid = roomBll.Add(room);


                for (int i = 1; i <= 6; i++)
                {
                    title = this.FindControl("title" + i) as TextBox;
                    sortpicid = this.FindControl("sortpicid" + i) as TextBox;
                    roomPic = this.FindControl("roomPic" + i) as TextBox;
                    roomPictz = this.FindControl("roomPictz" + i) as TextBox;

                    if (title.Text.Trim() != "" && sortpicid.Text.Trim() != "")
                    {

                        pic.roomid = roomid;
                        pic.title = title.Text.ToString();
                        pic.sortpicid = MyCommFun.Str2Int(sortpicid.Text.ToString());
                        pic.roomPic = roomPic.Text.ToString();
                        pic.roomPictz = roomPictz.Text.ToString();
                        pic.createDate = DateTime.Now;
                        pic.hotelid = hotelid;
                        picBll.Add(pic);

                    }
                }
                AddAdminLog(MXEnums.ActionEnum.Add.ToString(), "添加房间类型,主键为" + roomid); //记录日志
                JscriptMsg("添加成功!", "hotel_room.aspx?action=" + MXEnums.ActionEnum.Edit.ToString() + "&hotelid=" + hotelid + "", "Success");

                

            }

            else if (action == MXEnums.ActionEnum.Edit.ToString())
            {
                if (roomid == 0)
                {
                    return;
                }
                 

                room = roomBll.GetModel(roomid);

                room.hotelid = hotelid;
                room.roomType = this.roomType.Text;
                room.indroduce = this.indroduce.InnerText;
                room.roomPrice = Convert.ToDecimal(this.roomPrice.Text);
                room.salePrice = Convert.ToDecimal(this.salePrice.Text);
                room.facilities = this.facilities.Value;
                room.Status = Model.RoomStatus.Submit;

                //room.ExpiryDate_Begin = DateTime.Parse(txtExpiryDate_Begin.Text);
                //room.ExpiryDate_End = DateTime.Parse(txtExpiryDate_End.Text);

                //if (DateTime.Compare(room.ExpiryDate_Begin.Value, room.ExpiryDate_End.Value) > 0)
                //{
                //    JscriptMsg("使用有效期开始时间不能大于结束时间。", "", "error");
                //}

                roomBll.Update(room);

                picBll.Deletepic(roomid);

                for (int i = 1; i <= 6; i++)
                {
                    title = this.FindControl("title" + i) as TextBox;
                    sortpicid = this.FindControl("sortpicid" + i) as TextBox;
                    roomPic = this.FindControl("roomPic" + i) as TextBox;
                    roomPictz = this.FindControl("roomPictz" + i) as TextBox;

                    if (title.Text.Trim() != "" && sortpicid.Text.Trim() != "")
                    {
                        pic.hotelid = hotelid;
                        pic.roomid = roomid;
                        pic.title = title.Text.ToString();
                        pic.sortpicid = MyCommFun.Str2Int(sortpicid.Text.ToString());
                        pic.roomPic = roomPic.Text.ToString();
                        pic.roomPictz = roomPictz.Text.ToString();
                        pic.createDate = DateTime.Now;
                        picBll.Add(pic);

                    }
                }
                AddAdminLog(MXEnums.ActionEnum.Edit.ToString(), "修改房间类型设置,主键为" + hotelid); //记录日志
                JscriptMsg("修改成功!", "hotel_room.aspx?action=" + MXEnums.ActionEnum.Edit.ToString() + "&hotelid=" + hotelid + "", "Success");
            }


            if (action== MXEnums.ActionEnum.Add.ToString()||
                action == MXEnums.ActionEnum.Edit.ToString() )
            {
                //发送消息:提交审核

                var scenicUser = GetWeiXinCode();
                if (scenicUser != null)
                {
                    var manager = GetAdminInfo();
                    var hotelsInfo = new BLL.wx_hotels_info().GetModel(hotelid);

                    var msg = new ShortMsgDto()
                    {
                        Title = hotelsInfo.hotelName,
                        Content = String.Format("编号为[{0}]的商品[{1}]请您审核!", room.RoomCode, room.roomType),
                        Type = "HotelRoom",
                        DetailType = "Audit",
                        MenuType = "wHotel",
                        IsShowButton = true,
                        ButtonText = "马上去审核",
                        ButtonUrl = String.Format("/admin/hotel/hotel_room_info.aspx?action=Audit&hotelid={0}&roomid={1}",
                   hotelid, roomid),
                        ButtonMutipleUrl = String.Format("/admin/hotel/hotel_room.aspx?hotelid={0}&action=Audit", hotelid),
                        FromUserId = manager.id.ToString(),
                        ToUserId = scenicUser.uId.ToString(),
                        MsgToUserType = MsgUserType.Scenic,
                        MsgFromUserType = MsgUserType.Hotel
                    };
                    _shortMsgService.SendMsg(msg);
                }
            }
        }
Beispiel #16
0
        protected void save_room_Click(object sender, EventArgs e)
        {
            Model.wx_hotel_room room = new Model.wx_hotel_room();
            if (action == MXEnums.ActionEnum.Add.ToString())
            {
                room.hotelid        = hotelid;
                room.roomType       = this.roomType.Text;
                room.RoomCode       = roomBll.GetRoomCode(hotelid);
                room.indroduce      = this.indroduce.InnerText;
                room.roomPrice      = Convert.ToDecimal(this.roomPrice.Text);
                room.salePrice      = Convert.ToDecimal(this.salePrice.Text);
                room.facilities     = this.facilities.Value;
                room.UseInstruction = txtUsueIntroduction.Value;
                room.RefundRule     = this.txtRefundRule.Value;
                room.createDate     = DateTime.Now;
                room.Status         = Model.RoomStatus.Submit;

                //room.ExpiryDate_Begin = DateTime.Parse(txtExpiryDate_Begin.Text);
                //room.ExpiryDate_End = DateTime.Parse(txtExpiryDate_End.Text);

                //if (DateTime.Compare(room.ExpiryDate_Begin.Value, room.ExpiryDate_End.Value) > 0)
                //{
                //    JscriptMsg("使用有效期开始时间不能大于结束时间。", "", "error");
                //}

                roomid = roomBll.Add(room);


                for (int i = 1; i <= 6; i++)
                {
                    title     = this.FindControl("title" + i) as TextBox;
                    sortpicid = this.FindControl("sortpicid" + i) as TextBox;
                    roomPic   = this.FindControl("roomPic" + i) as TextBox;
                    roomPictz = this.FindControl("roomPictz" + i) as TextBox;

                    if (title.Text.Trim() != "" && sortpicid.Text.Trim() != "")
                    {
                        pic.roomid     = roomid;
                        pic.title      = title.Text.ToString();
                        pic.sortpicid  = MyCommFun.Str2Int(sortpicid.Text.ToString());
                        pic.roomPic    = roomPic.Text.ToString();
                        pic.roomPictz  = roomPictz.Text.ToString();
                        pic.createDate = DateTime.Now;
                        pic.hotelid    = hotelid;
                        picBll.Add(pic);
                    }
                }
                AddAdminLog(MXEnums.ActionEnum.Add.ToString(), "添加房间类型,主键为" + roomid); //记录日志
                JscriptMsg("添加成功!", "hotel_room.aspx?action=" + MXEnums.ActionEnum.Edit.ToString() + "&hotelid=" + hotelid + "", "Success");
            }

            else if (action == MXEnums.ActionEnum.Edit.ToString())
            {
                if (roomid == 0)
                {
                    return;
                }


                room = roomBll.GetModel(roomid);

                room.hotelid    = hotelid;
                room.roomType   = this.roomType.Text;
                room.indroduce  = this.indroduce.InnerText;
                room.roomPrice  = Convert.ToDecimal(this.roomPrice.Text);
                room.salePrice  = Convert.ToDecimal(this.salePrice.Text);
                room.facilities = this.facilities.Value;
                room.Status     = Model.RoomStatus.Submit;

                //room.ExpiryDate_Begin = DateTime.Parse(txtExpiryDate_Begin.Text);
                //room.ExpiryDate_End = DateTime.Parse(txtExpiryDate_End.Text);

                //if (DateTime.Compare(room.ExpiryDate_Begin.Value, room.ExpiryDate_End.Value) > 0)
                //{
                //    JscriptMsg("使用有效期开始时间不能大于结束时间。", "", "error");
                //}

                roomBll.Update(room);

                picBll.Deletepic(roomid);

                for (int i = 1; i <= 6; i++)
                {
                    title     = this.FindControl("title" + i) as TextBox;
                    sortpicid = this.FindControl("sortpicid" + i) as TextBox;
                    roomPic   = this.FindControl("roomPic" + i) as TextBox;
                    roomPictz = this.FindControl("roomPictz" + i) as TextBox;

                    if (title.Text.Trim() != "" && sortpicid.Text.Trim() != "")
                    {
                        pic.hotelid    = hotelid;
                        pic.roomid     = roomid;
                        pic.title      = title.Text.ToString();
                        pic.sortpicid  = MyCommFun.Str2Int(sortpicid.Text.ToString());
                        pic.roomPic    = roomPic.Text.ToString();
                        pic.roomPictz  = roomPictz.Text.ToString();
                        pic.createDate = DateTime.Now;
                        picBll.Add(pic);
                    }
                }
                AddAdminLog(MXEnums.ActionEnum.Edit.ToString(), "修改房间类型设置,主键为" + hotelid); //记录日志
                JscriptMsg("修改成功!", "hotel_room.aspx?action=" + MXEnums.ActionEnum.Edit.ToString() + "&hotelid=" + hotelid + "", "Success");
            }


            if (action == MXEnums.ActionEnum.Add.ToString() ||
                action == MXEnums.ActionEnum.Edit.ToString())
            {
                //发送消息:提交审核

                var scenicUser = GetWeiXinCode();
                if (scenicUser != null)
                {
                    var manager    = GetAdminInfo();
                    var hotelsInfo = new BLL.wx_hotels_info().GetModel(hotelid);

                    var msg = new ShortMsgDto()
                    {
                        Title        = hotelsInfo.hotelName,
                        Content      = String.Format("编号为[{0}]的商品[{1}]请您审核!", room.RoomCode, room.roomType),
                        Type         = "HotelRoom",
                        DetailType   = "Audit",
                        MenuType     = "wHotel",
                        IsShowButton = true,
                        ButtonText   = "马上去审核",
                        ButtonUrl    = String.Format("/admin/hotel/hotel_room_info.aspx?action=Audit&hotelid={0}&roomid={1}",
                                                     hotelid, roomid),
                        ButtonMutipleUrl = String.Format("/admin/hotel/hotel_room.aspx?hotelid={0}&action=Audit", hotelid),
                        FromUserId       = manager.id.ToString(),
                        ToUserId         = scenicUser.uId.ToString(),
                        MsgToUserType    = MsgUserType.Scenic,
                        MsgFromUserType  = MsgUserType.Hotel
                    };
                    _shortMsgService.SendMsg(msg);
                }
            }
        }
        protected void btnSaveRefund_OnClick(object sender, EventArgs e)
        {
            var wxUserweixin = GetAdminInfo();
            if (wxUserweixin == null)
            {
                throw new Exception("用户不能为空!");
            }
            if (chkIsRefund.Checked)
            {
                double money = MyCommFun.Str2Float(txtAmount.Text);
                var hotelService = new HotelService();
                Order = _hotelOrderService.GetModel(dingdanid);

                var hotel = new BLL.wx_hotels_info().GetModel(Order.hotelid.Value);

                using (var scope = new TransactionScope())
                {
                    var dto = new TuidanDto()
                    {

                        dingdanid = Order.id,
                        hotelid = Order.hotelid.Value,
                        roomid = Order.roomid.Value,
                        openid = Order.openid,
                        wid = hotel.wid.Value,
                        operateUser = wxUserweixin.id,
                        refundAmount = money,
                        refundTime = DateTime.Now,
                        remarks = this.remarks.InnerText,
                        refundCode = "HT" + DateTime.Now.ToString("yyyyMMddHHmmssffff") + Utils.Number(5)

                    };
                    hotelService.AddTuidan(dto);

                    string return_msg = String.Empty;

                    if (WeChatRefund(Order, dto, hotel.wid.Value, out return_msg))//
                    {
                        new BLL.wx_hotel_dingdan().RefundComplete(Order.OrderNumber);

                        AddAdminLog(MXEnums.ActionEnum.Edit.ToString(), "修改酒店状态为" +
                    HotelStatusManager.OrderStatus.Refunding.StatusName
                    + HotelStatusManager.OrderStatus.Refunding.StatusId + ",主键为" + dingdanid); //记录日志
                        JscriptMsg("退款成功!", "hotel_dingdan_manage.aspx?hotelid=" + hotelid + "", "Success");
                    }
                    else
                    {
                        Response.Write(return_msg);
                        GetData(dingdanid);
                    }
                    //                    _hotelOrderService.Update(Order.id, HotelStatusManager.OrderStatus.Refunding.StatusId.ToString());



                    scope.Complete();
                }










            }
        }
Beispiel #18
0
        /// <summary>
        /// 获取查询结果
        /// </summary>
        /// <param name="hotelid"></param>
        /// <param name="_strWhere"></param>
        /// <param name="_orderby"></param>
        /// <returns></returns>
        private DataSet GetQueryData()
        {
            var hotelService = new HotelService();
            var bllhotel     = new BLL.wx_hotels_info();
            var hotel        = bllhotel.GetModel(hotelid);


            this.page = MXRequest.GetQueryInt("page", 1);
            //            txtKeywords.Text = this.keywords;
            DataSet ds = gbll.GetList(this.pageSize, this.page, _strWhere, _orderby, out this.totalCount);

            if (ds != null && ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
            {
                ds.Tables[0].Columns.Add("isRefund", typeof(System.String));

                ds.Tables[0].Columns.Add("hotelName", typeof(System.String));
                ds.Tables[0].Columns.Add("totalPrice", typeof(System.Decimal));
                ds.Tables[0].Columns.Add("statusName", typeof(System.String));
                ds.Tables[0].Columns.Add("strisRefund", typeof(System.String));

                DataRow dr;

                int count = ds.Tables[0].Rows.Count;
                for (int i = 0; i < count; i++)
                {
                    dr = ds.Tables[0].Rows[i];

                    int id      = dr.Field <int>("id");
                    int hotelId = dr.Field <int>("hotelId");
                    var status  = HotelStatusManager.OrderStatus.GetStatusDict(
                        MyCommFun.Obj2Int(dr["orderStatus"]));
                    dr["payStatusStr"] = "<em  style='width:70px;' class='status " + status.CssClass
                                         + "'>" + status.StatusName + "</em>";
                    dr["statusName"] = status.StatusName;
                    if (status.StatusId == HotelStatusManager.OrderStatus.Refunding.StatusId ||
                        status.StatusId == HotelStatusManager.OrderStatus.Refunded.StatusId)
                    {
                        dr["isRefund"]    = "<em  style='width:70px;' class='status ok'>是</em>";
                        dr["strisRefund"] = "是";
                    }
                    else if (status.StatusId == HotelStatusManager.OrderStatus.Completed.StatusId)
                    {
                        var tuidanDto = hotelService.GetModel(id, hotelId);
                        if (tuidanDto != null)
                        {
                            dr["isRefund"]    = "<em  style='width:70px;' class='status ok'>是</em>";
                            dr["strisRefund"] = "是";
                        }
                        else
                        {
                            dr["isRefund"]    = "<em  style='width:70px;' class='status no'>否</em>";
                            dr["strisRefund"] = "否";
                        }
                    }
                    else
                    {
                        dr["isRefund"]    = "<em  style='width:70px;' class='status no'>否</em>";
                        dr["strisRefund"] = "否";
                    }
                    dr["hotelName"] = hotel.hotelName;
                    //总花费
                    var dateSpan   = dr.Field <DateTime>("leaveTime") - dr.Field <DateTime>("arriveTime");
                    var totalPrice = MyCommFun.Str2Decimal(dr["price"].ToString()) * dr.Field <int>("orderNum") * dateSpan.Days;
                    dr["totalPrice"] = totalPrice;
                }
                ds.AcceptChanges();
            }


            return(ds);
        }