Commit 5fbf8e49 authored by Jason's avatar Jason

編輯部門

parent 2aa70272
...@@ -254,6 +254,7 @@ namespace backstage.Controllers ...@@ -254,6 +254,7 @@ namespace backstage.Controllers
/// <summary> /// <summary>
/// ajax權限增加使用者 /// ajax權限增加使用者
/// /tokenvault/Permission
/// </summary> /// </summary>
/// <param name="merchant_id"></param> /// <param name="merchant_id"></param>
/// <param name="vault_id"></param> /// <param name="vault_id"></param>
...@@ -614,6 +615,7 @@ namespace backstage.Controllers ...@@ -614,6 +615,7 @@ namespace backstage.Controllers
/// <summary> /// <summary>
/// 欄位添加使用者 ajax /// 欄位添加使用者 ajax
/// /tokenvault/ListFields
/// </summary> /// </summary>
/// <param name="requestData"></param> /// <param name="requestData"></param>
/// <returns></returns> /// <returns></returns>
......
...@@ -1212,6 +1212,101 @@ namespace backstage.Controllers ...@@ -1212,6 +1212,101 @@ namespace backstage.Controllers
} }
[Authorize(Policy = "AdminOnly")]
[HttpPost]
public async Task<IActionResult> EditDepartment(Department department)
{
var url = _config["IP"] + "/merchant/mod";
string msg;
if (string.IsNullOrEmpty(department.name))
{
switch (_currentLanguage)
{
case "en":
msg = "can't be empty.";
break;
case "zh":
msg = "部門名稱不能為空";
break;
default:
msg = "部門名稱不能為空";
break;
}
ModelState.AddModelError("name", msg);
}
if (string.IsNullOrEmpty(department.phone))
{
department.phone = "null";
}
var httpMethod = HttpMethod.Post;
// 取得使用者的 "token" Claim 值
string token = User.FindFirstValue("token");
var data = new
{
name = department.name,
address = "null",
countryid = "Taiwan",
postcode = "123",
phone="null",
name_en="null",
VATID_verify="1",
enabled=1
};
var parameters = new Dictionary<string, string>
{
{ "token", token },
{ "merchant",JsonConvert.SerializeObject(data)},
{ "uid",department.merchant_id.ToString()}
};
var apiResult = await _callApi.CallAPI(url, parameters, httpMethod);
if (apiResult.IsSuccess)
{
var userAddResponse = JsonConvert.DeserializeObject<UserAddResponse>(apiResult.Data.ToString());
if (userAddResponse.r == 0)
{
switch (_currentLanguage)
{
case "en":
msg = "Edit department success.";
break;
case "zh":
msg = "編輯部門成功";
break;
default:
msg = "編輯部門成功";
break;
}
TempData["IsSuccess"] = true;
TempData["msg"] = msg;
return RedirectToAction("ListDepartments");
}
else
{
TempData["IsSuccess"] = false;
TempData["msg"] = JsonConvert.SerializeObject(userAddResponse.m);
return RedirectToAction("ListDepartments");
}
}
return RedirectToAction("ListDepartments");
}
/// <summary> /// <summary>
/// enable做兩件事情,user加入admin,並且enable=true, /// enable做兩件事情,user加入admin,並且enable=true,
...@@ -1308,8 +1403,22 @@ namespace backstage.Controllers ...@@ -1308,8 +1403,22 @@ namespace backstage.Controllers
if (Response.r == 0) if (Response.r == 0)
{ {
switch (_currentLanguage)
{
case "en":
msg = "Set permission success.";
break;
case "zh":
msg = "權限調整成功";
break;
default:
msg = "權限調整成功";
break;
}
result.IsSuccess = true; result.IsSuccess = true;
result.Message = "權限調整成功"; result.Message = msg;
return result; return result;
} }
...@@ -1331,8 +1440,23 @@ namespace backstage.Controllers ...@@ -1331,8 +1440,23 @@ namespace backstage.Controllers
} }
else else
{ {
switch (_currentLanguage)
{
case "en":
msg = "Not admin.";
break;
case "zh":
msg = "非admin";
break;
default:
msg = "非admin";
break;
}
result.IsSuccess = false; result.IsSuccess = false;
result.Message = "非admin"; result.Message = msg;
return result;
return result; return result;
} }
} }
...@@ -1355,9 +1479,24 @@ namespace backstage.Controllers ...@@ -1355,9 +1479,24 @@ namespace backstage.Controllers
if (Response.r == 0) if (Response.r == 0)
{ {
switch (_currentLanguage)
{
case "en":
msg = "Set permission success.";
break;
case "zh":
msg = "權限調整成功";
break;
default:
msg = "權限調整成功";
break;
}
result.IsSuccess = true; result.IsSuccess = true;
result.Message = "權限調整成功"; result.Message = msg;
return result; return result;
} }
else else
...@@ -1435,9 +1574,25 @@ namespace backstage.Controllers ...@@ -1435,9 +1574,25 @@ namespace backstage.Controllers
var existUser = UserResponse.Users.Where(u => u.uid == uid).FirstOrDefault(); var existUser = UserResponse.Users.Where(u => u.uid == uid).FirstOrDefault();
if (existUser == null) if (existUser == null)
{ {
switch (_currentLanguage)
{
case "en":
msg = "user_id is not exist.";
break;
case "zh":
msg = "user_id不存在";
break;
default:
msg = "user_id不存在";
break;
}
result.IsSuccess = false; result.IsSuccess = false;
result.Message = "user_id不存在"; result.Message = msg;
return result; return result;
} }
...@@ -1463,29 +1618,87 @@ namespace backstage.Controllers ...@@ -1463,29 +1618,87 @@ namespace backstage.Controllers
var response = JsonConvert.DeserializeObject<Response>(apiResult.Data.ToString()); var response = JsonConvert.DeserializeObject<Response>(apiResult.Data.ToString());
if (response.r == 0) if (response.r == 0)
{ {
switch (_currentLanguage)
{
case "en":
msg = "Set permission success.";
break;
case "zh":
msg = "權限調整成功";
break;
default:
msg = "權限調整成功";
break;
}
result.IsSuccess = true; result.IsSuccess = true;
result.Message = "權限調整成功"; result.Message = msg;
return result; return result;
} }
} }
switch (_currentLanguage)
{
case "en":
msg = "Errors occoured.";
break;
case "zh":
msg = "發生錯誤";
break;
default:
msg = "發生錯誤";
break;
}
result.IsSuccess = false; result.IsSuccess = false;
result.Message = "發生錯誤"; result.Message = msg;
return result; return result;
}
switch (_currentLanguage)
{
case "en":
msg = "Errors occoured.";
break;
case "zh":
msg = "發生錯誤";
break;
default:
msg = "發生錯誤";
break;
} }
result.IsSuccess = false; result.IsSuccess = false;
result.Message = "發生錯誤"; result.Message = msg;
return result; return result;
} }
switch (_currentLanguage)
{
case "en":
msg = "Errors occoured.";
break;
case "zh":
msg = "發生錯誤";
break;
default:
msg = "發生錯誤";
break;
}
result.IsSuccess = false; result.IsSuccess = false;
result.Message = "發生錯誤"; result.Message = msg;
return result; return result;
#endregion #endregion
......
...@@ -11,21 +11,21 @@ namespace backstage.Models.Users ...@@ -11,21 +11,21 @@ namespace backstage.Models.Users
//public int Id { get; set; } //public int Id { get; set; }
public int merchant_id { get; set; } public int merchant_id { get; set; }
public string address { get; set; } public string address { get; set; } = "null";
public string country_id { get; set; } public string country_id { get; set; } = "Taiwan";
public string postcode { get; set; } public string postcode { get; set; } = "123";
public string phone { get; set; } public string phone { get; set; }
public string fax { get; set; } public string fax { get; set; }
public string vatid { get; set; } public string vatid { get; set; }
public string name { get; set; } public string name { get; set; }
public string name_en { get; set; } public string name_en { get; set; }
public int enabled { get; set; } public int enabled { get; set; } = 1;
public DateTime creation_date { get; set; } public DateTime creation_date { get; set; }
public DateTime vatid_verify { get; set; } public DateTime VATID_verify { get; set; }
public DateTime deposit_book_verify { get; set; } public DateTime deposit_book_verify { get; set; }
public DateTime vatdeposit_book_verify { get; set; } public DateTime vatdeposit_book_verify { get; set; }
public DateTime user_natid_verify { get; set; } public DateTime user_natid_verify { get; set; }
public DateTime enabled_transaction { get; set; } public DateTime enabled_transaction { get; set; }
public string merchant_type { get; set; } public string merchant_type { get; set; }
public string merchant_level{ get; set; } public string merchant_level{ get; set; }
......
...@@ -117,13 +117,13 @@ ...@@ -117,13 +117,13 @@
<resheader name="writer"> <resheader name="writer">
<value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value>
</resheader> </resheader>
<data name="Modify the number of Token Vault Entry this month" xml:space="preserve"> <data name="Modify the number of Token Vault Entrys this month" xml:space="preserve">
<value>本月修改代碼化保險庫入口數量</value> <value>本月修改代碼化保險庫入口數量</value>
</data> </data>
<data name="Number of departments" xml:space="preserve"> <data name="Number of departments" xml:space="preserve">
<value>部門數量</value> <value>部門數量</value>
</data> </data>
<data name="Number of new Token Vault Entry added this month" xml:space="preserve"> <data name="Number of new Token Vault Entrys added this month" xml:space="preserve">
<value>本月新增代碼化保險庫入口數量</value> <value>本月新增代碼化保險庫入口數量</value>
</data> </data>
<data name="Number of Token Vaults" xml:space="preserve"> <data name="Number of Token Vaults" xml:space="preserve">
...@@ -132,7 +132,7 @@ ...@@ -132,7 +132,7 @@
<data name="Statistic" xml:space="preserve"> <data name="Statistic" xml:space="preserve">
<value>數據統計</value> <value>數據統計</value>
</data> </data>
<data name="Total number of Token Vault Entry" xml:space="preserve"> <data name="Total number of Token Vault Entrys" xml:space="preserve">
<value>代碼化保險庫入口總數量</value> <value>代碼化保險庫入口總數量</value>
</data> </data>
</root> </root>
\ No newline at end of file
...@@ -135,6 +135,9 @@ ...@@ -135,6 +135,9 @@
<data name="Allow update" xml:space="preserve"> <data name="Allow update" xml:space="preserve">
<value>允許更新</value> <value>允許更新</value>
</data> </data>
<data name="Cancel" xml:space="preserve">
<value>取消</value>
</data>
<data name="Choose department" xml:space="preserve"> <data name="Choose department" xml:space="preserve">
<value>選擇部門</value> <value>選擇部門</value>
</data> </data>
...@@ -222,6 +225,9 @@ ...@@ -222,6 +225,9 @@
<data name="Select user" xml:space="preserve"> <data name="Select user" xml:space="preserve">
<value>新增用戶</value> <value>新增用戶</value>
</data> </data>
<data name="Send out" xml:space="preserve">
<value>送出</value>
</data>
<data name="Serial number" xml:space="preserve"> <data name="Serial number" xml:space="preserve">
<value>編號</value> <value>編號</value>
</data> </data>
......
...@@ -135,7 +135,7 @@ ...@@ -135,7 +135,7 @@
<data name="Setting Backup" xml:space="preserve"> <data name="Setting Backup" xml:space="preserve">
<value>設定備份</value> <value>設定備份</value>
</data> </data>
<data name="Token Vault" xml:space="preserve"> <data name="Token Vaults" xml:space="preserve">
<value>Token Vault管理</value> <value>Token Vault管理</value>
</data> </data>
<data name="User List" xml:space="preserve"> <data name="User List" xml:space="preserve">
......
...@@ -135,9 +135,15 @@ ...@@ -135,9 +135,15 @@
<data name="enabled" xml:space="preserve"> <data name="enabled" xml:space="preserve">
<value>啟用</value> <value>啟用</value>
</data> </data>
<data name="Failed" xml:space="preserve">
<value>錯誤</value>
</data>
<data name="name" xml:space="preserve"> <data name="name" xml:space="preserve">
<value>名稱</value> <value>名稱</value>
</data> </data>
<data name="Success" xml:space="preserve">
<value>成功</value>
</data>
<data name="User count" xml:space="preserve"> <data name="User count" xml:space="preserve">
<value>使用者數量</value> <value>使用者數量</value>
</data> </data>
......
...@@ -44,7 +44,7 @@ ...@@ -44,7 +44,7 @@
<div class="col-lg-4 col-md-6 grid-margin stretch-card dashboard-card"> <div class="col-lg-4 col-md-6 grid-margin stretch-card dashboard-card">
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<h4 class="card-title">Token Vault Entry <br>@Localizer["Total number of Token Vault Entry"]</h4> <h4 class="card-title">Token Vault Entry <br>@Localizer["Total number of Token Vault Entrys"]</h4>
<div class="card-content text-center"> <div class="card-content text-center">
<img src="~/images/admin-vault-data.svg" class="img-fuild"> <img src="~/images/admin-vault-data.svg" class="img-fuild">
<p class="number text-center">200</p> <p class="number text-center">200</p>
...@@ -56,7 +56,7 @@ ...@@ -56,7 +56,7 @@
<div class="col-lg-4 col-md-6 grid-margin stretch-card dashboard-card"> <div class="col-lg-4 col-md-6 grid-margin stretch-card dashboard-card">
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<h4 class="card-title">Token Vualt Entry<br />@Localizer["Number of new Token Vault Entry added this month"]</h4> <h4 class="card-title">Token Vault Entry<br />@Localizer["Number of new Token Vault Entrys added this month"]</h4>
<div class="card-content text-center"> <div class="card-content text-center">
<img src="~/images/admin-vault-add.svg" class="img-fuild"> <img src="~/images/admin-vault-add.svg" class="img-fuild">
<p class="number text-center">10</p> <p class="number text-center">10</p>
...@@ -68,7 +68,7 @@ ...@@ -68,7 +68,7 @@
<div class="col-lg-4 col-md-6 grid-margin stretch-card dashboard-card"> <div class="col-lg-4 col-md-6 grid-margin stretch-card dashboard-card">
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<h4 class="card-title">Token Vualt Entry<br />@Localizer["Modify the number of Token Vault Entry this month"]</h4> <h4 class="card-title">Token Vault Entry<br />@Localizer["Modify the number of Token Vault Entrys this month"]</h4>
<div class="card-content text-center"> <div class="card-content text-center">
<img src="~/images/admin-vault-edit.svg" class="img-fuild"> <img src="~/images/admin-vault-edit.svg" class="img-fuild">
<p class="number text-center">7</p> <p class="number text-center">7</p>
......
...@@ -206,7 +206,7 @@ ...@@ -206,7 +206,7 @@
</li> </li>
<li class="nav-item"> <li class="nav-item">
<a class="nav-link" href="@Url.Action("List", "TokenVault")"> <a class="nav-link" href="@Url.Action("List", "TokenVault")">
<span class="menu-title">@Localizer["Token Vault"]</span> <span class="menu-title">@Localizer["Token Vaults"]</span>
<i class="mdi mdi-database menu-icon"></i> <i class="mdi mdi-database menu-icon"></i>
</a> </a>
</li> </li>
......
...@@ -21,7 +21,7 @@ ...@@ -21,7 +21,7 @@
<input id="msg" hidden value="@TempData["msg"]" /> <input id="msg" hidden value="@TempData["msg"]" />
@if (TempData["isSuccess"] != null) @if (TempData["isSuccess"] != null)
{ {
<input id="isSuccess" hidden value="@TempData["isSuccess"].ToString()" /> <input id="isSuccess" hidden value="@TempData["isSuccess"].ToString()" />
} }
<div class="floating-msg" id="msgDiv"></div> <div class="floating-msg" id="msgDiv"></div>
</div> </div>
...@@ -43,12 +43,12 @@ ...@@ -43,12 +43,12 @@
<div> <div>
<a type="button" class="btn btn-info float-right mb-2 @disabledClass" data-toggle="modal" data-target="#myModal">@Localizer["Add User"]</a> <a type="button" class="btn btn-info float-right mb-2 @disabledClass" data-toggle="modal" data-target="#new-field-user">@Localizer["Add User"]</a>
<div class="rank-table"> <div class="rank-table">
<div class="table-responsive"> <div class="table-responsive">
<table class="table table-striped expense-color"> <table class="table table-striped ">
<thead> <thead>
<tr class="expense-color"> <tr class="">
<th>@Localizer["Serial number"]</th> <th>@Localizer["Serial number"]</th>
<th>@Localizer["Name"]</th> <th>@Localizer["Name"]</th>
<th>@Localizer["Username"]</th> <th>@Localizer["Username"]</th>
...@@ -64,38 +64,38 @@ ...@@ -64,38 +64,38 @@
<tbody id="tbody"> <tbody id="tbody">
@if (Model.Count > 0) @if (Model.Count > 0)
{ {
@foreach (var i in Model) @foreach (var i in Model)
{ {
<tr id="@i.id" class="expense-color"> <tr id="@i.id" class="">
<td>@i.id</td> <td>@i.id</td>
<td>@i.name</td> <td>@i.name</td>
<td>@i.username</td> <td>@i.username</td>
<td class="custom-tooltip" data-tooltip="@i.masksSettingText">@i.masksText</td> <td class="custom-tooltip" data-tooltip="@i.masksSettingText">@i.masksText</td>
<td> <td>
@if (i.allow_decrypt == 1) @if (i.allow_decrypt == 1)
{<span>&#x2714;</span>} {<span>&#x2714;</span>}
</td> </td>
<td> <td>
@if (i.allow_new == 1) @if (i.allow_new == 1)
{<span>&#x2714;</span>} {<span>&#x2714;</span>}
</td> </td>
<td> <td>
@if (i.allow_update == 1) @if (i.allow_update == 1)
{<span>&#x2714;</span>} {<span>&#x2714;</span>}
</td> </td>
<td> <td>
@if (i.allow_del == 1) @if (i.allow_del == 1)
{<span>&#x2714;</span>} {<span>&#x2714;</span>}
</td> </td>
<td>@i.default_mask_id</td> <td>@i.default_mask_id</td>
<td> <td>
<a data-id="@i.id" class="btn btnPermission btn-sm" data-toggle="modal" data-target="#delete-field-user">@Localizer["Remove User"]</a> <a data-id="@i.id" class="btn btnPermission btn-sm" data-toggle="modal" data-target="#delete-field-user">@Localizer["Remove User"]</a>
</td> </td>
</tr> </tr>
} }
} }
...@@ -115,7 +115,7 @@ ...@@ -115,7 +115,7 @@
</div> </div>
<!-- MODAL --> <!-- MODAL -->
<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel"> <!--<div class="modal fade" id="myModal" tabindex="-1" role="dialog" aria-labelledby="myModalLabel">
<div class="modal-dialog" role="document"> <div class="modal-dialog" role="document">
<div class="modal-content"> <div class="modal-content">
<div class="modal-header"> <div class="modal-header">
...@@ -125,20 +125,173 @@ ...@@ -125,20 +125,173 @@
</button> </button>
</div> </div>
<div class="modal-body"> <div class="modal-body">
<select id="selectUser" class="form-control" asp-items="ViewBag.users"> <select id="selectUser" class="form-control" asp-items="ViewBag.users">-->
<!-- 其他用户选项 -->
<!-- 其他用户选项 --> <!--</select>
</select>
</div> </div>
<div class="modal-footer"> <div class="modal-footer">
<button type="button" class="btn btn-primary" id="confirmBtn" data-dismiss="modal">@Localizer["Confirm"]</button> <button type="button" class="btn btn-primary" id="confirmBtn" data-dismiss="modal">@Localizer["Confirm"]</button>
</div> </div>
</div> </div>
</div> </div>
</div>-->
<!--新增使用者 Popup Form-->
<div class="modal fade" id="new-field-user" tabindex="-1" style="display: none;" aria-hidden="true">
<div class="modal-dialog modalforMemberGo">
<!-- Modal content-->
<div class="modal-content">
<div class="modal-header">
<!--
<button type="button" class="close" data-dismiss="modal">&times;</button>
-->
<h3 class="modal-title">
新增使用者
</h3>
</div> <!--END of div "modal-header"-->
<div class="modal-body" style="padding-top:35px">
<form class="form-horizontal0">
<!-- <div class="form-group">
<label class="control-labe" for="name">姓名:</label>
<div class="">
<input type="text" class="form-control form-control-sm0">
</div>
</div> -->
<!-- <div class="form-group">
<label class="control-labe" for="userName">使用者名稱:</label>
<div class="">
<input type="text" class="form-control form-control-sm0">
</div>
</div> -->
<div class="form-group">
<label class="control-labe" for="userName">使用者名稱:</label>
<div class="form-group">
<div class="dropdown bootstrap-select selecter form-control -tokenization">
<select title="請選使用者名稱(單選)" class="selectpicker selecter form-control selectpicker-tokenization" tabindex="null">
<option class="bs-title-option" value=""></option>
<option>testuser</option>
<option>testuser2</option>
</select><button type="button" tabindex="-1" class="btn dropdown-toggle bs-placeholder btn-light" data-toggle="dropdown" role="combobox" aria-owns="bs-select-8" aria-haspopup="listbox" aria-expanded="false" title="請選使用者名稱(單選)"><div class="filter-option"><div class="filter-option-inner"><div class="filter-option-inner-inner">請選使用者名稱(單選)</div></div> </div></button><div class="dropdown-menu" style="max-height: 740.734px; overflow: hidden; min-height: 0px;"><div class="inner show" role="listbox" id="bs-select-8" tabindex="-1" style="max-height: 722.734px; overflow: hidden auto; min-height: 0px;"><ul class="dropdown-menu inner show" role="presentation" style="margin-top: 0px; margin-bottom: 0px;"><li><a role="option" class="dropdown-item" id="bs-select-8-0" tabindex="0"><span class=" bs-ok-default check-mark"></span><span class="text">testuser</span></a></li><li><a role="option" class="dropdown-item" id="bs-select-8-1" tabindex="0"><span class=" bs-ok-default check-mark"></span><span class="text">testuser2</span></a></li></ul></div></div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-labe" for="mask">遮罩:</label>
<div class="form-group">
<div class="dropdown bootstrap-select show-tick selecter form-control -tokenization">
<select multiple="" title="請選遮罩(複選)" class="selectpicker selecter form-control selectpicker-tokenization" tabindex="null">
<option>[]</option>
<option>[]</option>
</select><button type="button" tabindex="-1" class="btn dropdown-toggle bs-placeholder btn-light" data-toggle="dropdown" role="combobox" aria-owns="bs-select-9" aria-haspopup="listbox" aria-expanded="false" title="請選遮罩(複選)"><div class="filter-option"><div class="filter-option-inner"><div class="filter-option-inner-inner">請選遮罩(複選)</div></div> </div></button><div class="dropdown-menu" style="max-height: 654.281px; overflow: hidden; min-height: 0px;"><div class="inner show" role="listbox" id="bs-select-9" tabindex="-1" aria-multiselectable="true" style="max-height: 636.281px; overflow: hidden auto; min-height: 0px;"><ul class="dropdown-menu inner show" role="presentation" style="margin-top: 0px; margin-bottom: 0px;"><li><a role="option" class="dropdown-item" id="bs-select-9-0" tabindex="0" aria-selected="false"><span class=" bs-ok-default check-mark"></span><span class="text">[]</span></a></li><li><a role="option" class="dropdown-item" id="bs-select-9-1" tabindex="0" aria-selected="false"><span class=" bs-ok-default check-mark"></span><span class="text">[]</span></a></li></ul></div></div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-labe" for="mask">預設遮罩:</label>
<div class="form-group">
<div class="dropdown bootstrap-select selecter form-control -tokenization">
<select title="請選預設遮罩(單選)" class="selectpicker selecter form-control selectpicker-tokenization" tabindex="null">
<option class="bs-title-option" value=""></option>
<option>[]</option>
<option>[]</option>
</select><button type="button" tabindex="-1" class="btn dropdown-toggle bs-placeholder btn-light" data-toggle="dropdown" role="combobox" aria-owns="bs-select-10" aria-haspopup="listbox" aria-expanded="false" title="請選預設遮罩(單選)"><div class="filter-option"><div class="filter-option-inner"><div class="filter-option-inner-inner">請選預設遮罩(單選)</div></div> </div></button><div class="dropdown-menu" style="max-height: 567.828px; overflow: hidden; min-height: 0px;"><div class="inner show" role="listbox" id="bs-select-10" tabindex="-1" style="max-height: 549.828px; overflow: hidden auto; min-height: 0px;"><ul class="dropdown-menu inner show" role="presentation" style="margin-top: 0px; margin-bottom: 0px;"><li><a role="option" class="dropdown-item" id="bs-select-10-0" tabindex="0" aria-setsize="2" aria-posinset="1"><span class=" bs-ok-default check-mark"></span><span class="text">[]</span></a></li><li><a role="option" class="dropdown-item" id="bs-select-10-1" tabindex="0" aria-setsize="2" aria-posinset="2"><span class=" bs-ok-default check-mark"></span><span class="text">[]</span></a></li></ul></div></div>
</div>
</div>
</div>
<div class="form-group">
<label class="control-labe" for="">允許解密:</label>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowDecode" id="allowDecodeY" value="option1">
<label class="form-check-label" for="allowDecodeY">
</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowDecode" id="allowDecodeN" value="option2">
<label class="form-check-label" for="allowDecodeN">
</label>
</div>
</div>
<div class="form-group">
<label class="control-labe" for="">允許新增:</label>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowAdd" id="allowAddY" value="option1">
<label class="form-check-label" for="allowAddY">
</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowAdd" id="allowAddN" value="option2">
<label class="form-check-label" for="allowAddN">
</label>
</div>
</div>
<div class="form-group">
<label class="control-labe" for="">允許更新:</label>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowUpdate" id="allowUpdateY" value="option1">
<label class="form-check-label" for="allowUpdateY">
</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowUpdate" id="allowUpdateN" value="option2">
<label class="form-check-label" for="allowUpdateN">
</label>
</div>
</div>
<div class="form-group">
<label class="control-labe" for="">允許刪除:</label>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowDelete" id="allowDeleteY" value="option1">
<label class="form-check-label" for="allowDeleteY">
</label>
</div>
<div class="form-check form-check-inline">
<input class="form-check-input" type="radio" name="allowDelete" id="allowDeleteN" value="option2">
<label class="form-check-label" for="allowDeleteN">
</label>
</div>
</div>
<div class="SubmitBlock">
<button type="submit" class="btn btn-mainblue-solid btnSubmit">新增</button>
<button type="button" class="btn btn-mainblue-hollow btnReset" data-dismiss="modal">取消</button>
</div>
</form>
</div> <!--END of div "modal-body"-->
<div class="modal-footer modalforMemberGo">
<!--
<button type="button" class="btn btn-default" data-dismiss="modal">Close</button>
-->
</div> <!--END of div "modal-footer"-->
</div><!-- END of Modal content-->
</div><!-- END of div "modal-dialog modal-lg" -->
</div> </div>
<!--移除user Form--> <!--移除user Form-->
<!-- Modal --> <!-- Modal -->
<div class="modal fade " id="delete-field-user" tabindex="-1" style=" padding-right: 17px;" aria-modal="true" role="dialog"> <div class="modal fade " id="delete-field-user" tabindex="-1" style=" padding-right: 17px;" aria-modal="true" role="dialog">
<div class="modal-dialog modal-md modalforMemberGo"> <div class="modal-dialog modal-md modalforMemberGo">
...@@ -179,6 +332,7 @@ ...@@ -179,6 +332,7 @@
@section Scripts{ @section Scripts{
<script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script> <script src="https://code.jquery.com/ui/1.12.1/jquery-ui.js"></script>
<script nonce="KUY8VewuvyUYVEIvEFue4vwyiuf"> <script nonce="KUY8VewuvyUYVEIvEFue4vwyiuf">
......
...@@ -13,16 +13,16 @@ ...@@ -13,16 +13,16 @@
{ {
<input id="isSuccess" hidden value="@TempData["isSuccess"].ToString()" /> <input id="isSuccess" hidden value="@TempData["isSuccess"].ToString()" />
} }
<div class="floating-msg" id="msgDiv"></div> <div class="floating-msg" id="msgDiv"></div>
</div> </div>
<div class="row"> <div class="row">
<div class="col-12 grid-margin stretch-card"> <div class="col-12 grid-margin stretch-card">
<div class="card"> <div class="card">
<div class="card-body"> <div class="card-body">
<h4 class="card-title">Modify Department</h4> <h4 class="card-title">Modify Department</h4>
<div> <div>
<form class="forms-sample" method="post" asp-action="CreateDepartment" autocomplete="off"> <form class="forms-sample" method="post" asp-action="EditDepartment" autocomplete="off">
<div id="errorMsg" asp-validation-summary="All" class="text-danger"></div> <div id="errorMsg" asp-validation-summary="All" class="text-danger"></div>
<p class="form-title card-description">Basic</p> <p class="form-title card-description">Basic</p>
<div class="row"> <div class="row">
...@@ -55,7 +55,7 @@ ...@@ -55,7 +55,7 @@
<button type="submit" class="btn btn-primary mr-2">Submit</button> <button type="submit" class="btn btn-primary mr-2" id="submitButton">Submit</button>
<a type="button" class="btn btn-light" asp-action="ListDepartments">Back to list</a> <a type="button" class="btn btn-light" asp-action="ListDepartments">Back to list</a>
</form> </form>
</div> </div>
...@@ -67,15 +67,24 @@ ...@@ -67,15 +67,24 @@
@section Scripts{ @section Scripts{
<script nonce="KUY8VewuvyUYVEIvEFue4vwyiuf"> <script nonce="KUY8VewuvyUYVEIvEFue4vwyiuf">
var msg = '@TempData["msg"]';
var msg = '@TempData["msg"]';
var IsSuccess = '@TempData["IsSuccess"]'; var IsSuccess = '@TempData["IsSuccess"]';
console.log(IsSuccess + msg); console.log(IsSuccess + msg);
if (msg != '') { if (msg != '') {
showAlert(IsSuccess, msg); showAlert(IsSuccess, msg);
} }
$('#submitButton').click(function (e) {
// 先阻止表單的默認提交行為
e.preventDefault();
// 啟用所有的輸入框
$('input').prop('disabled', false);
// 最後再手動提交表單
$(this).closest('form').submit();
});
</script> </script>
......
...@@ -15,6 +15,15 @@ ...@@ -15,6 +15,15 @@
<div class="floating-msg" id="msgDiv"></div> <div class="floating-msg" id="msgDiv"></div>
</div> </div>
@section header
{
<script>
var localizationStrings = {
success: '@Localizer["成功"]',
error: '@Localizer["錯誤"]'
};
</script>
}
<div class="row"> <div class="row">
<div class="col-lg-12 grid-margin stretch-card"> <div class="col-lg-12 grid-margin stretch-card">
<div class="card"> <div class="card">
...@@ -30,12 +39,12 @@ ...@@ -30,12 +39,12 @@
<th>uid</th> <th>uid</th>
<th>@Localizer["name"]</th> <th>@Localizer["name"]</th>
@*<th>name_en</th>*@ @*<th>name_en</th>*@
<th>@Localizer["username"]</th> <th>@Localizer["username"]</th>
<th>@Localizer["Email"]</th> <th>@Localizer["Email"]</th>
@*<th>locked</th>*@ @*<th>locked</th>*@
<th>@Localizer["creation_date"]</th> <th>@Localizer["creation_date"]</th>
<th>@Localizer["enabled"]</th> <th>@Localizer["enabled"]</th>
<th>@Localizer["Admin"]</th> <th>@Localizer["Admin"]</th>
@*<th>birthdate</th> @*<th>birthdate</th>
<th>marital_status</th> <th>marital_status</th>
<th>gender</th> <th>gender</th>
...@@ -85,14 +94,14 @@ ...@@ -85,14 +94,14 @@
<td> <td>
@if (i.uid == 1) @if (i.uid == 1)
{ {
<input type="checkbox" data-uid="@i.uid" class="toggleButton isAdmin" @(i.isAdmin ? "checked" : "") disabled> <input type="checkbox" data-uid="@i.uid" class="toggleButton isAdmin" @(i.isAdmin ? "checked" : "") disabled>
} }
else else
{ {
<input type="checkbox" data-uid="@i.uid" class="toggleButton isAdmin" @(i.isAdmin ? "checked" : "")> <input type="checkbox" data-uid="@i.uid" class="toggleButton isAdmin" @(i.isAdmin ? "checked" : "")>
} }
</td> </td>
@*@if (i.isAdmin) @*@if (i.isAdmin)
{ <td>是</td>} { <td>是</td>}
...@@ -126,6 +135,7 @@ ...@@ -126,6 +135,7 @@
@section Scripts{ @section Scripts{
<script nonce="KUY8VewuvyUYVEIvEFue4vwyiuf"> <script nonce="KUY8VewuvyUYVEIvEFue4vwyiuf">
var msg = '@TempData["msg"]'; var msg = '@TempData["msg"]';
var IsSuccess = '@TempData["IsSuccess"]'; var IsSuccess = '@TempData["IsSuccess"]';
console.log(IsSuccess + msg); console.log(IsSuccess + msg);
......
...@@ -19289,8 +19289,6 @@ tbody { ...@@ -19289,8 +19289,6 @@ tbody {
} }
<<<<<<<<< Temporary merge branch 1
/*版本號樣式*/ /*版本號樣式*/
.versionNo { .versionNo {
...@@ -19299,7 +19297,6 @@ tbody { ...@@ -19299,7 +19297,6 @@ tbody {
padding: 20px 16px 10px 16px padding: 20px 16px 10px 16px
} }
=========
.floating-msg { .floating-msg {
position: fixed; position: fixed;
top: 80px; top: 80px;
......
 
//========show alert通知訊息============ //========show alert通知訊息============
function showAlert(status, msg) { function showAlert(status, msg) {
console.log('showAlert=' + status) console.log('showAlert=' + status)
color = 'alert-success'; var color = 'alert-success';
if (status !== 'True' && status !== true) { if (status !== 'True' && status !== true) {
color = 'alert-danger'; color = 'alert-danger';
status = 'Error!'; status = 'Error';
} }
else { else {
status = 'Success!'; status = 'Success';
} }
$.doTimeout('alert'); var newAlert = $('<div class="alert ' + color + ' alert-dismissible">' +
$('#msgDiv').html('<div class="alert ' + color + ' alert-dismissible">' +
'<button type="button" class="close" data-dismiss="alert">&times;</button>' + '<button type="button" class="close" data-dismiss="alert">&times;</button>' +
' <strong>' + status + '</strong> ' + msg + '</div>'); ' <strong>' + status + '</strong> ' + msg + '</div>');
$("#msgDiv").show();
$.doTimeout('alert', 4000, function () { $("#msgDiv").append(newAlert);
$("#msgDiv").slideUp(200, function () { newAlert.slideDown(200);
setTimeout(function () {
newAlert.slideUp(200, function () {
$(this).alert('close'); $(this).alert('close');
$(this).remove();
}); });
}) }, 4000);
} }
//function showAlert(status, msg) {
// console.log('showAlert=' + status)
// color = 'alert-success';
// if (status !== 'True' && status !== true) {
// color = 'alert-danger';
// status = 'Error!';
// }
// else {
// status = 'Success!';
// }
// $.doTimeout('alert');
// $('#msgDiv').append('<div class="alert ' + color + ' alert-dismissible">' +
// '<button type="button" class="close" data-dismiss="alert">&times;</button>' +
// ' <strong>' + status + '</strong> ' + msg + '</div>');
// $("#msgDiv").show();
// $.doTimeout('alert', 4000, function () {
// $("#msgDiv").slideUp(200, function () {
// $(this).alert('close');
// });
// })
//}
//========END show alert通知訊息============ //========END show alert通知訊息============
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment