項目選項維護功能完成
parent
b845ec25e7
commit
6c66b16c2e
|
|
@ -57,6 +57,80 @@ namespace Journeys_WantHome.Controllers
|
|||
this._httpContextAccessor = httpContextAccessor;
|
||||
}
|
||||
|
||||
[Route("optionItemOrder")]
|
||||
public ActionResult OptionItemOrder(IFormCollection obj) {
|
||||
signinResult ret = new signinResult();
|
||||
|
||||
authToken token = new authToken(this._httpContextAccessor);
|
||||
if (token.user_isLogin == false)
|
||||
{
|
||||
HttpContext.Response.Cookies.Delete("token_key");
|
||||
ret.ret = "no";
|
||||
ret.err_code = "99999";
|
||||
ret.message = "非登入狀態!";
|
||||
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||
}
|
||||
|
||||
if (token.user_perm != "system")
|
||||
{
|
||||
ret.ret = "no";
|
||||
ret.err_code = "90001";
|
||||
ret.message = "此帳號無此api使用權限!";
|
||||
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||
}
|
||||
|
||||
string option_uid = obj["option_uid"].ToString();
|
||||
string orderJson = obj["order_json"].ToString();
|
||||
|
||||
if (option_uid == "")
|
||||
{
|
||||
ret.ret = "no";
|
||||
ret.err_code = "00001";
|
||||
ret.message = "無option_uid資料!";
|
||||
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||
}
|
||||
|
||||
if (orderJson == "") {
|
||||
ret.ret = "no";
|
||||
ret.err_code = "00002";
|
||||
ret.message = "無order_json資料!";
|
||||
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||
}
|
||||
|
||||
dynamic orderObj;
|
||||
|
||||
try {
|
||||
orderObj = JsonConvert.DeserializeObject<dynamic>(orderJson);
|
||||
} catch (Exception ex)
|
||||
{
|
||||
ret.ret = "no";
|
||||
ret.err_code = "00003";
|
||||
ret.message = "json文字轉成物件失敗 " + ex.Message;
|
||||
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||
|
||||
}
|
||||
|
||||
int intOrder = 1;
|
||||
|
||||
foreach (dynamic tmpObj in orderObj) {
|
||||
string optionItem_uid = tmpObj.id;
|
||||
|
||||
optionItem tmpItem = conn.QueryFirstOrDefault<optionItem>("select * from optionItem where option_uid = @option_uid and optionItem_uid = @optionItem_uid", new { option_uid = option_uid, optionItem_uid = optionItem_uid});
|
||||
|
||||
if (tmpItem != null)
|
||||
{
|
||||
tmpItem.optionItem_order = intOrder;
|
||||
conn.Update<optionItem>(tmpItem);
|
||||
}
|
||||
|
||||
intOrder++;
|
||||
}
|
||||
|
||||
ret.ret = "yes";
|
||||
|
||||
return Content(JsonConvert.SerializeObject(ret), "application/json;charset=utf-8");
|
||||
}
|
||||
|
||||
[Route("addEditDelItem")]
|
||||
public ActionResult AddEditDelItem(IFormCollection obj) {
|
||||
optionItemResult ret = new optionItemResult();
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@
|
|||
@section Script {
|
||||
<script src="~/assets/vendor/sortablejs/Sortable.min.js"></script>
|
||||
<script src="~/assets/vendor/nestable2/jquery.nestable.min.js"></script>
|
||||
<script src="~/assets/javascript/custom/optionlist.js?v=1"></script>
|
||||
<script src="~/assets/javascript/custom/optionlist.js?v=3"></script>
|
||||
}
|
||||
<!-- .page-inner -->
|
||||
<div class="page-inner">
|
||||
|
|
|
|||
|
|
@ -1,4 +1,5 @@
|
|||
var tmpNestableObj;
|
||||
var tmpNestableItem;
|
||||
|
||||
$(document).ready(function () {
|
||||
loadKolMakeupList();
|
||||
|
|
@ -50,6 +51,47 @@ $(document).ready(function () {
|
|||
}
|
||||
});
|
||||
}
|
||||
|
||||
if (method == 'edit') {
|
||||
if (optionItem_name == '') {
|
||||
alert('請輸入項目名稱!');
|
||||
return;
|
||||
}
|
||||
|
||||
var formData = {
|
||||
option_uid: option_uid,
|
||||
optionItem_uid: optionItem_uid,
|
||||
optionItem_name: optionItem_name,
|
||||
method: method
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "/AuthApi/addEditDelItem",
|
||||
type: "post",
|
||||
data: formData,
|
||||
success: function (data, textStatus, jqXHR) {
|
||||
if (data.ret == "yes") {
|
||||
var obj = data.optionItem;
|
||||
|
||||
tmpNestableItem.text(obj.optionItem_name);
|
||||
|
||||
$('#optionItemModal').modal('toggle');
|
||||
|
||||
} else {
|
||||
alert(data.message);
|
||||
|
||||
if (data.err_code == "99999") {
|
||||
location.href = "/Root/Login";
|
||||
}
|
||||
}
|
||||
},
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('網路或伺服器發生錯誤,請稍後重試!');
|
||||
}
|
||||
});
|
||||
}
|
||||
|
||||
|
||||
});
|
||||
});
|
||||
|
||||
|
|
@ -218,8 +260,37 @@ function loadKolStyleList() {
|
|||
});
|
||||
}
|
||||
function nestableChange(obj) {
|
||||
alert($(obj).attr("data-type"));
|
||||
alert(window.JSON.stringify($(obj).nestable('serialize')));
|
||||
//alert($(obj).attr("data-type"));
|
||||
//alert(window.JSON.stringify($(obj).nestable('serialize')));
|
||||
|
||||
var option_uid = $(obj).attr("data-type");
|
||||
var order_json = window.JSON.stringify($(obj).nestable('serialize'));
|
||||
|
||||
var formData = {
|
||||
option_uid: option_uid,
|
||||
order_json: order_json
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "/AuthApi/optionItemOrder",
|
||||
type: "post",
|
||||
data: formData,
|
||||
success: function (data, textStatus, jqXHR) {
|
||||
if (data.ret == "yes") {
|
||||
|
||||
|
||||
} else {
|
||||
//alert(data.message);
|
||||
|
||||
if (data.err_code == "99999") {
|
||||
location.href = "/Root/Login";
|
||||
}
|
||||
}
|
||||
},
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('網路或伺服器發生錯誤,請稍後重試!');
|
||||
}
|
||||
});
|
||||
}
|
||||
function loadKolMakeupList() {
|
||||
var formData = {
|
||||
|
|
@ -267,13 +338,13 @@ function optionItemHtml(item) {
|
|||
}
|
||||
|
||||
function editBtnClick(obj) {
|
||||
|
||||
tmpNestableItem = $(obj).parent().parent().find("[data-name='option_name']");
|
||||
var optionItem_name = $(obj).parent().parent().find("[data-name='option_name']").text();
|
||||
var option_name = $(obj).parent().parent().parent().parent().parent().parent().find('.card-header.border-bottom-0').text();
|
||||
|
||||
$('#method').val('edit');
|
||||
$('#option_name').val();
|
||||
$('#option_uid').val($(obj).attr("data-parent-type"));
|
||||
$('#option_uid').val($(obj).attr("data-parent-uid"));
|
||||
$('#optionItem_uid').val($(obj).attr("data-uid"));
|
||||
$('#optionItemModal').modal('toggle');
|
||||
|
||||
|
|
@ -285,7 +356,44 @@ function editBtnClick(obj) {
|
|||
}
|
||||
|
||||
function delBtnClick(obj) {
|
||||
alert($(obj).attr("data-parent-uid"));
|
||||
|
||||
|
||||
if (confirm('確定刪除此筆資料? 刪掉後,網紅中有勾選此項目的此項目紀錄會消失,新增一筆相同名稱的項目也無法復原!')) {
|
||||
if (confirm('再次確認要刪除此筆資料?')) {
|
||||
tmpNestableItem = $(obj).parent().parent().find("[data-name='option_name']");
|
||||
var optionItem_name = $(obj).parent().parent().find("[data-name='option_name']").text();
|
||||
var option_name = $(obj).parent().parent().parent().parent().parent().parent().find('.card-header.border-bottom-0').text();
|
||||
var option_uid = $(obj).attr("data-parent-uid");
|
||||
var optionItem_uid = $(obj).attr("data-uid");
|
||||
|
||||
var formData = {
|
||||
option_uid: option_uid,
|
||||
optionItem_uid: optionItem_uid,
|
||||
method: 'del'
|
||||
}
|
||||
|
||||
$.ajax({
|
||||
url: "/AuthApi/addEditDelItem",
|
||||
type: "post",
|
||||
data: formData,
|
||||
success: function (data, textStatus, jqXHR) {
|
||||
if (data.ret == "yes") {
|
||||
tmpNestableItem.parent().remove();
|
||||
|
||||
} else {
|
||||
alert(data.message);
|
||||
|
||||
if (data.err_code == "99999") {
|
||||
location.href = "/Root/Login";
|
||||
}
|
||||
}
|
||||
},
|
||||
error: function (jqXHR, textStatus, errorThrown) {
|
||||
alert('網路或伺服器發生錯誤,請稍後重試!');
|
||||
}
|
||||
});
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
function addItem(obj) {
|
||||
|
|
|
|||
Loading…
Reference in New Issue