update from old git
This commit is contained in:
52
web/admin/guadan/guadantime/edit.aspx
Normal file
52
web/admin/guadan/guadantime/edit.aspx
Normal file
@@ -0,0 +1,52 @@
|
||||
<%@ Page Title="" Language="C#" MasterPageFile="~/admin/Templates/TBS5ADM001/MasterPage.master" AutoEventWireup="true" CodeFile="edit.aspx.cs" Inherits="admin_guadan_guadantime_edit" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="page_header" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="page_nav" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
|
||||
<div class="container mt-4">
|
||||
<h3 class="mb-4">编辑挂单时间设置</h3>
|
||||
|
||||
<asp:Panel CssClass="card p-4 shadow-sm">
|
||||
<!-- 最早入住时间 -->
|
||||
<div class="mb-3 row align-items-center">
|
||||
<label class="col-sm-3 col-form-label">最早入住时间:</label>
|
||||
<div class="col-sm-3">
|
||||
<asp:DropDownList ID="ddlEarliestCheckIn" runat="server" CssClass="form-select"></asp:DropDownList>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 最晚退房时间 -->
|
||||
<div class="mb-3 row align-items-center">
|
||||
<label class="col-sm-3 col-form-label">最晚退房时间:</label>
|
||||
<div class="col-sm-3">
|
||||
<asp:DropDownList ID="ddlLatestCheckOut" runat="server" CssClass="form-select"></asp:DropDownList>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 是否可用 -->
|
||||
<div class="mb-3 row align-items-center">
|
||||
<label class="col-sm-3 col-form-label">是否可用:</label>
|
||||
<div class="col-sm-3">
|
||||
<asp:CheckBox ID="chkIsActive" runat="server" CssClass="form-check-input" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<!-- 按钮 -->
|
||||
<div class="mt-4">
|
||||
<asp:Button ID="btnSave" runat="server" Text="保存" CssClass="btn btn-primary me-2" OnClick="btnSave_Click" />
|
||||
<asp:HyperLink ID="hlBack" runat="server" NavigateUrl="timeindex.aspx" Text="返回列表" CssClass="btn btn-secondary" />
|
||||
</div>
|
||||
|
||||
<!-- 消息提示 -->
|
||||
<div id="divMessage" runat="server" class="mt-3 text-success"></div>
|
||||
</asp:Panel>
|
||||
</div>
|
||||
</asp:Content>
|
||||
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="offCanvasRight" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content5" ContentPlaceHolderID="footer_script" Runat="Server">
|
||||
</asp:Content>
|
||||
|
||||
100
web/admin/guadan/guadantime/edit.aspx.cs
Normal file
100
web/admin/guadan/guadantime/edit.aspx.cs
Normal file
@@ -0,0 +1,100 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
public partial class admin_guadan_guadantime_edit : MyWeb.config
|
||||
{
|
||||
private Model.ezEntities _db = new Model.ezEntities();
|
||||
private Guid SettingId
|
||||
{
|
||||
get
|
||||
{
|
||||
if (Guid.TryParse(Request.QueryString["id"], out Guid id))
|
||||
return id;
|
||||
else
|
||||
return Guid.Empty;
|
||||
}
|
||||
}
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindTimeDropdowns();
|
||||
|
||||
if (SettingId != Guid.Empty)
|
||||
{
|
||||
LoadSetting();
|
||||
}
|
||||
else
|
||||
{
|
||||
divMessage.InnerText = "未指定要编辑的记录。";
|
||||
btnSave.Enabled = false;
|
||||
}
|
||||
}
|
||||
}
|
||||
private void BindTimeDropdowns()
|
||||
{
|
||||
ddlEarliestCheckIn.Items.Clear();
|
||||
ddlLatestCheckOut.Items.Clear();
|
||||
|
||||
for (int h = 0; h < 24; h++)
|
||||
{
|
||||
ddlEarliestCheckIn.Items.Add($"{h:D2}:00");
|
||||
ddlEarliestCheckIn.Items.Add($"{h:D2}:30");
|
||||
|
||||
ddlLatestCheckOut.Items.Add($"{h:D2}:00");
|
||||
ddlLatestCheckOut.Items.Add($"{h:D2}:30");
|
||||
}
|
||||
}
|
||||
|
||||
private void LoadSetting()
|
||||
{
|
||||
var setting = _db.GuadanTimeSetting.FirstOrDefault(x => x.Id == SettingId);
|
||||
if (setting != null)
|
||||
{
|
||||
ddlEarliestCheckIn.SelectedValue = setting.EarliestCheckIn;
|
||||
ddlLatestCheckOut.SelectedValue = setting.LatestCheckOut;
|
||||
chkIsActive.Checked = setting.IsActive;
|
||||
}
|
||||
else
|
||||
{
|
||||
divMessage.InnerText = "找不到指定记录。";
|
||||
btnSave.Enabled = false;
|
||||
}
|
||||
}
|
||||
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
if (SettingId == Guid.Empty)
|
||||
return;
|
||||
|
||||
try
|
||||
{
|
||||
{
|
||||
var setting = _db.GuadanTimeSetting.FirstOrDefault(x => x.Id == SettingId);
|
||||
if (setting != null)
|
||||
{
|
||||
setting.EarliestCheckIn = ddlEarliestCheckIn.SelectedValue;
|
||||
setting.LatestCheckOut = ddlLatestCheckOut.SelectedValue;
|
||||
setting.IsActive = chkIsActive.Checked;
|
||||
setting.UpdatedAt = DateTime.Now;
|
||||
|
||||
_db.SaveChanges();
|
||||
|
||||
divMessage.InnerText = "保存成功!";
|
||||
}
|
||||
else
|
||||
{
|
||||
divMessage.InnerText = "记录不存在,保存失败。";
|
||||
}
|
||||
}
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
divMessage.InnerText = "保存失败:" + ex.Message;
|
||||
}
|
||||
}
|
||||
}
|
||||
40
web/admin/guadan/guadantime/timeindex.aspx
Normal file
40
web/admin/guadan/guadantime/timeindex.aspx
Normal file
@@ -0,0 +1,40 @@
|
||||
<%@ Page Title="" Language="C#" MasterPageFile="~/admin/Templates/TBS5ADM001/MasterPage.master" AutoEventWireup="true" CodeFile="timeindex.aspx.cs" Inherits="admin_guadan_guadantime_timeindex" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="page_header" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="page_nav" Runat="Server">
|
||||
<nav>
|
||||
<a href="timeset.aspx" class="btn btn-primary">
|
||||
新建时间参数
|
||||
</a>
|
||||
</nav>
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
|
||||
<h3>挂单时间设置列表</h3>
|
||||
<div id="divMessage" runat="server" style="color:red; margin-top:10px;"></div>
|
||||
|
||||
<asp:GridView ID="gvTimeSettings" runat="server" AutoGenerateColumns="False"
|
||||
CssClass="table table-bordered" OnRowCommand="gvTimeSettings_RowCommand">
|
||||
<Columns>
|
||||
<asp:BoundField DataField="EarliestCheckIn" HeaderText="最早入住时间" />
|
||||
<asp:BoundField DataField="LatestCheckOut" HeaderText="最晚退房时间" />
|
||||
<asp:BoundField DataField="IsActive" HeaderText="是否可用" />
|
||||
<asp:BoundField DataField="CreatedAt" HeaderText="创建时间" DataFormatString="{0:yyyy-MM-dd HH:mm}" />
|
||||
<asp:TemplateField HeaderText="操作">
|
||||
<ItemTemplate>
|
||||
<asp:HyperLink ID="hlEdit" runat="server" Text="编辑"
|
||||
NavigateUrl='<%# "edit.aspx?id=" + Eval("Id") %>' CssClass="btn btn-sm btn-primary"></asp:HyperLink>
|
||||
<asp:Button ID="btnDelete" runat="server" Text="删除" CommandName="DeleteItem"
|
||||
CommandArgument='<%# Eval("Id") %>' CssClass="btn btn-sm btn-danger"
|
||||
OnClientClick="return confirm('确定删除这条记录吗?');" />
|
||||
</ItemTemplate>
|
||||
</asp:TemplateField>
|
||||
</Columns>
|
||||
</asp:GridView>
|
||||
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="offCanvasRight" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content5" ContentPlaceHolderID="footer_script" Runat="Server">
|
||||
</asp:Content>
|
||||
|
||||
59
web/admin/guadan/guadantime/timeindex.aspx.cs
Normal file
59
web/admin/guadan/guadantime/timeindex.aspx.cs
Normal file
@@ -0,0 +1,59 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Runtime.Remoting.Messaging;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
public partial class admin_guadan_guadantime_timeindex : MyWeb.config
|
||||
{
|
||||
private Model.ezEntities _db = new Model.ezEntities();
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
BindTimeSettings();
|
||||
}
|
||||
}
|
||||
private void BindTimeSettings()
|
||||
{
|
||||
{
|
||||
// 取得最近所有挂单时间设置
|
||||
var list = _db.GuadanTimeSetting
|
||||
.OrderByDescending(x => x.CreatedAt)
|
||||
.ToList();
|
||||
|
||||
gvTimeSettings.DataSource = list;
|
||||
gvTimeSettings.DataBind();
|
||||
}
|
||||
}
|
||||
protected void gvTimeSettings_RowCommand(object sender, GridViewCommandEventArgs e)
|
||||
{
|
||||
if (e.CommandName == "DeleteItem")
|
||||
{
|
||||
Guid id = Guid.Parse(e.CommandArgument.ToString());
|
||||
|
||||
try
|
||||
{
|
||||
{
|
||||
var setting = _db.GuadanTimeSetting.FirstOrDefault(x => x.Id == id);
|
||||
if (setting != null)
|
||||
{
|
||||
_db.GuadanTimeSetting.Remove(setting);
|
||||
_db.SaveChanges();
|
||||
}
|
||||
}
|
||||
|
||||
// 重新绑定列表
|
||||
BindTimeSettings();
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
// 显示错误信息
|
||||
divMessage.InnerText = "删除失败:" + ex.Message;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
36
web/admin/guadan/guadantime/timeset.aspx
Normal file
36
web/admin/guadan/guadantime/timeset.aspx
Normal file
@@ -0,0 +1,36 @@
|
||||
<%@ Page Title="" Language="C#" MasterPageFile="~/admin/Templates/TBS5ADM001/MasterPage.master" AutoEventWireup="true" CodeFile="timeset.aspx.cs" Inherits="admin_guadan_guadantime_timeset" %>
|
||||
|
||||
<asp:Content ID="Content1" ContentPlaceHolderID="page_header" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content2" ContentPlaceHolderID="page_nav" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content3" ContentPlaceHolderID="ContentPlaceHolder1" Runat="Server">
|
||||
<div>
|
||||
<h3>入住时间設定</h3>
|
||||
|
||||
<div>
|
||||
<label>最早入住時間:</label>
|
||||
<asp:DropDownList ID="ddlEarliestCheckIn" runat="server"></asp:DropDownList>
|
||||
</div>
|
||||
|
||||
<div>
|
||||
<label>最晚退房時間:</label>
|
||||
<asp:DropDownList ID="ddlLatestCheckOut" runat="server"></asp:DropDownList>
|
||||
</div>
|
||||
|
||||
<div style="margin-top:10px;">
|
||||
<asp:Button ID="btnSave" runat="server" Text="保存" OnClick="btnSave_Click" />
|
||||
</div>
|
||||
|
||||
<div id="divMessage" runat="server" style="color:green; margin-top:10px;"></div>
|
||||
</div>
|
||||
</asp:Content>
|
||||
|
||||
|
||||
|
||||
<asp:Content ID="Content4" ContentPlaceHolderID="offCanvasRight" Runat="Server">
|
||||
</asp:Content>
|
||||
<asp:Content ID="Content5" ContentPlaceHolderID="footer_script" Runat="Server">
|
||||
|
||||
</asp:Content>
|
||||
|
||||
65
web/admin/guadan/guadantime/timeset.aspx.cs
Normal file
65
web/admin/guadan/guadantime/timeset.aspx.cs
Normal file
@@ -0,0 +1,65 @@
|
||||
using Model;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Web;
|
||||
using System.Web.UI;
|
||||
using System.Web.UI.WebControls;
|
||||
|
||||
public partial class admin_guadan_guadantime_timeset : MyWeb.config
|
||||
{
|
||||
private Model.ezEntities _db = new Model.ezEntities();
|
||||
protected void Page_Load(object sender, EventArgs e)
|
||||
{
|
||||
if (!IsPostBack)
|
||||
{
|
||||
// 預設時間
|
||||
// 初始化半小时间隔
|
||||
for (int h = 0; h < 24; h++)
|
||||
{
|
||||
ddlEarliestCheckIn.Items.Add(new System.Web.UI.WebControls.ListItem($"{h:D2}:00"));
|
||||
ddlEarliestCheckIn.Items.Add(new System.Web.UI.WebControls.ListItem($"{h:D2}:30"));
|
||||
|
||||
ddlLatestCheckOut.Items.Add(new System.Web.UI.WebControls.ListItem($"{h:D2}:00"));
|
||||
ddlLatestCheckOut.Items.Add(new System.Web.UI.WebControls.ListItem($"{h:D2}:30"));
|
||||
}
|
||||
|
||||
// 預設值
|
||||
ddlEarliestCheckIn.SelectedValue = "08:00";
|
||||
ddlLatestCheckOut.SelectedValue = "14:00";
|
||||
}
|
||||
}
|
||||
|
||||
protected void btnSave_Click(object sender, EventArgs e)
|
||||
{
|
||||
try
|
||||
{
|
||||
if(_db.GuadanTimeSetting.Where( a => a.IsActive == true).Count() > 0)
|
||||
{
|
||||
divMessage.InnerText = "已经存在有效的时间设置";
|
||||
return;
|
||||
}
|
||||
string earliest = ddlEarliestCheckIn.SelectedValue;
|
||||
string latest = ddlLatestCheckOut.SelectedValue;
|
||||
|
||||
var setting = new GuadanTimeSetting
|
||||
{
|
||||
Id = Guid.NewGuid(),
|
||||
EarliestCheckIn = earliest,
|
||||
LatestCheckOut = latest,
|
||||
IsActive = true,
|
||||
CreatedAt = DateTime.Now
|
||||
};
|
||||
|
||||
_db.GuadanTimeSetting.Add(setting);
|
||||
_db.SaveChanges();
|
||||
// TODO: 保存到資料庫
|
||||
divMessage.InnerText = $"保存成功!最早入住:{earliest}, 最晚退房:{latest}";
|
||||
}
|
||||
catch (Exception ex)
|
||||
{
|
||||
divMessage.InnerText = "保存失败:" + ex.Message;
|
||||
}
|
||||
}
|
||||
|
||||
}
|
||||
Reference in New Issue
Block a user