master
嘉祥 詹 2024-08-21 19:03:35 +08:00
parent 13a9152564
commit 609de62925
2 changed files with 145 additions and 219 deletions

View File

@ -23,12 +23,12 @@
<nav aria-label="breadcrumb">
<ol class="breadcrumb">
<li class="breadcrumb-item active">
<a href="#"><i class="breadcrumb-icon fa fa-angle-left mr-2"></i>主項目清單</a>
<a href="#"><i class="breadcrumb-icon fa fa-angle-left mr-2"></i>範本類型清單</a>
</li>
</ol>
</nav><!-- /.breadcrumb -->
<!-- title -->
<h1 class="page-title"> 主項目清單 </h1>
<h1 class="page-title"> 範本類型清單 </h1>
<p class="text-muted"> </p><!-- /title -->
</header><!-- /.page-title-bar -->
<!-- .page-section -->
@ -199,173 +199,7 @@
<div id="modelItem_div" class="col-lg-12">
<!-- .card -->
<div class="card card-fluid">
<div class="card-header border-bottom-0 btn-group">
Footer Menus
<div class="dd-nodrag btn-group ml-auto">
<button class="btn btn-sm btn-secondary">Edit</button> <button class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>
</div>
</div>
<!-- .dd-list -->
<ol class="dd-list">
<li class="dd-item dd-nodrag" data-id="1">
<div class="dd-handle">
<div class="list-group-item">
<div class="list-group-item-figure">
<span class="drag-indicator"></span>
</div>
<div class="list-group-item-body">
<div class="team">
<h4 class="list-group-item-title">
會員電子報上稿製作
</h4>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
協助代為租用多IP發信系統減少擋信機率
.年約優惠方案$961美元匯率$32
每月最多發送份數共60,000份
超過平台每月6萬封發報限制則以額外購買額度 0.06元/封 計算
</p>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
單價 NT$3,500, 數量 10, 單位 次
小計 NT$35,000
AC(N)
</p>
</div>
</div>
</div>
<div class="dd-nodrag btn-group ml-auto">
<button class="btn btn-sm btn-secondary">Edit</button> <button class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>
</div>
</div>
</li>
<li class="dd-item dd-nodrag" data-id="1">
<div class="dd-handle">
<div class="list-group-item">
<div class="list-group-item-figure">
<span class="drag-indicator"></span>
</div>
<div class="list-group-item-body">
<div class="team">
<h4 class="list-group-item-title">
會員電子報上稿製作
</h4>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
協助代為租用多IP發信系統減少擋信機率
.年約優惠方案$961美元匯率$32
每月最多發送份數共60,000份
超過平台每月6萬封發報限制則以額外購買額度 0.06元/封 計算
</p>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
單價 NT$3,500, 數量 10, 單位 次
小計 NT$35,000
AC(N)
</p>
</div>
</div>
</div>
<div class="dd-nodrag btn-group ml-auto">
<button class="btn btn-sm btn-secondary">Edit</button> <button class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>
</div>
</div>
</li>
</ol><!-- /.dd-list -->
<!-- .card-footer -->
<div class="card-footer">
<a href="#" class="card-footer-item justify-content-start"><span><i class="fa fa-plus-circle mr-1"></i> Add Menu Item</span></a>
</div><!-- /.card-footer -->
</div><!-- /.card -->
<!-- .card -->
<div class="card card-fluid">
<div class="card-header border-bottom-0 btn-group">
Footer Menus
<div class="dd-nodrag btn-group ml-auto">
<button class="btn btn-sm btn-secondary">Edit</button> <button class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>
</div>
</div>
<!-- .dd-list -->
<ol class="dd-list">
<li class="dd-item dd-nodrag" data-id="1">
<div class="dd-handle">
<div class="list-group-item">
<div class="list-group-item-figure">
<span class="drag-indicator"></span>
</div>
<div class="list-group-item-body">
<div class="team">
<h4 class="list-group-item-title">
會員電子報上稿製作
</h4>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
協助代為租用多IP發信系統減少擋信機率
.年約優惠方案$961美元匯率$32
每月最多發送份數共60,000份
超過平台每月6萬封發報限制則以額外購買額度 0.06元/封 計算
</p>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
單價 NT$3,500, 數量 10, 單位 次
小計 NT$35,000
AC(N)
</p>
</div>
</div>
</div>
<div class="dd-nodrag btn-group ml-auto">
<button class="btn btn-sm btn-secondary">Edit</button> <button class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>
</div>
</div>
</li>
<li class="dd-item dd-nodrag" data-id="1">
<div class="dd-handle">
<div class="list-group-item">
<div class="list-group-item-figure">
<span class="drag-indicator"></span>
</div>
<div class="list-group-item-body">
<div class="team">
<h4 class="list-group-item-title">
會員電子報上稿製作
</h4>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
協助代為租用多IP發信系統減少擋信機率
.年約優惠方案$961美元匯率$32
每月最多發送份數共60,000份
超過平台每月6萬封發報限制則以額外購買額度 0.06元/封 計算
</p>
<p class="list-group-item-text" style="white-space: pre-line; font-size: 12px;">
單價 NT$3,500, 數量 10, 單位 次
小計 NT$35,000
AC(N)
</p>
</div>
</div>
</div>
<div class="dd-nodrag btn-group ml-auto">
<button class="btn btn-sm btn-secondary">Edit</button> <button class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>
</div>
</div>
</li>
</ol><!-- /.dd-list -->
<!-- .card-footer -->
<div class="card-footer">
<a href="#" class="card-footer-item justify-content-start"><span><i class="fa fa-plus-circle mr-1"></i> Add Menu Item</span></a>
</div><!-- /.card-footer -->
</div><!-- /.card -->
</div>
</div>
</div><!-- /.modal-body -->
@ -403,7 +237,11 @@
<div class="form-group">
<label class="control-label" for="modelMainItem_name">主項目名稱</label> <input id="modelMainItem_name" maxlength="32" type="text" class="form-control" />
</div><!-- /.form-group -->
<div class="form-group">
<div class="form-label-group">
<input type="text" id="modelMainItem_ac" class="form-control" value="0" placeholder="AC" maxlength="5" required=""> <label for="modelSubItem_number">AC (輸入10代表 10% AC)</label>
</div>
</div>
</div><!-- /.modal-body -->
<!-- .modal-footer -->
@ -467,7 +305,7 @@
</div><!-- /.modal-body -->
<!-- .modal-footer -->
<div class="modal-footer">
<button type="button" id="modelSubItemDialogSaveBtn" class="btn btn-primary">Save</button> <button type="button" class="btn btn-light" data-dismiss="modal" data-target="#modelSubItemModal">Close</button>
<button type="button" id="modelSubItemDialogSaveBtn" class="btn btn-primary">Save</button> <button type="button" class="btn btn-light" data-dismiss="modal">Close</button>
</div><!-- /.modal-footer -->
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->

View File

@ -16,7 +16,7 @@ var deledMainItems = [];
var deledSubItems = [];
var preSubItem_name = '';
var hasBind = 'N';
$(document).ready(function () {
deptList();
loadModelQuotationDataTable();
@ -69,21 +69,47 @@ $(document).ready(function () {
var modelSubItem_subTotal = modelSubItem_price * modelSubItem_number;
if (method == 'edit') {
var datauid = $('#modelSubItem_uid').val();
var htmlObj = $('#modelItem_div').find('[data-uid="' + parent_data_uid + '"]').find('ol').find('[data-model-subitem-uid="' + datauid + '"]');
$(htmlObj).find('[data-name="subItem_uid"]').val(subItem_uid);
$(htmlObj).find('[data-name="model-subItem_uid"]').val(modelSubItem_uid);
$(htmlObj).find('[data-name="model-subitem-name"]').val(modelSubItem_name);
$(htmlObj).find('[data-name="model-subitem-price"]').val(modelSubItem_price);
$(htmlObj).find('[data-name="model-subitem-unitType"]').val(modelSubItem_unitType);
$(htmlObj).find('[data-name="model-subitem-number"]').val(modelSubItem_number);
$(htmlObj).find('[data-name="model-subitem-hasAC"]').val(modelSubItem_hasAC);
$(htmlObj).find('[data-name="model-subitem-subTotal"]').val(modelSubItem_subTotal);
$(htmlObj).find('[data-name="model-subitem-descript"]').val(modelSubItem_descript);
$(htmlObj).children().children().find('[data-name="subname"]').text(modelSubItem_name);
$(htmlObj).children().children().find('[data-name="subdesc"]').text(modelSubItem_descript);
var detailData = '';
detailData += '單價 NT$' + AppendComma(modelSubItem_price) + ', 數量 ' + modelSubItem_number + ', 單位 ' + modelSubItem_unitType + '\r\n';
detailData += '小計 NT$' + AppendComma(modelSubItem_subTotal) + '\r\n';
detailData += 'AC(' + modelSubItem_hasAC + ')';
$(htmlObj).children().children().find('[data-name="subsummy"]').text(detailData);
$('#modelSubItemModal').modal('toggle');
}
if (method == 'add') {
var datauid = Math.floor(Math.random() * 999999999);
var htmlCode = '';
htmlCode += ' <li class="dd-item dd-nodrag" data-model-subitem-uid="' + datauid + '" data-method="add">';
htmlCode += ' <input type="hidden" data-name="subItem_uid" value="' + subItem_uid + '"/>';
htmlCode += ' <input type="hidden" data-name="model-subitem-name" value="' + modelSubItem_name + '"/>';
htmlCode += ' <input type="hidden" data-name="model-subitem-price" value="' + modelSubItem_price + '"/>';
htmlCode += ' <input type="hidden" data-name="model-subitem-unitType" value="' + modelSubItem_unitType + '"/>';
htmlCode += ' <input type="hidden" data-name="model-subitem-number" value="' + modelSubItem_number + '"/>';
htmlCode += ' <input type="hidden" data-name="model-subitem-hasAC" value="' + modelSubItem_hasAC + '"/>';
htmlCode += ' <input type="hidden" data-name="model-subitem-subTotal" value="' + modelSubItem_subTotal + '"/>';
htmlCode += ' <textarea ndata-name="model-subitem-descript" style="display:none;">' + modelSubItem_descript + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="subItem_uid">' + subItem_uid + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subItem_uid">' + modelSubItem_uid + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subitem-name">' + modelSubItem_name + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subitem-price">' + modelSubItem_price + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subitem-unitType">' + modelSubItem_unitType + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subitem-number">' + modelSubItem_number + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subitem-hasAC">' + modelSubItem_hasAC + '</textarea>';
htmlCode += ' <textarea style="display:none;" data-name="model-subitem-subTotal">' + modelSubItem_subTotal + '</textarea>';
htmlCode += ' <textarea data-name="model-subitem-descript" style="display:none;">' + modelSubItem_descript + '</textarea>';
htmlCode += ' <div class="dd-handle">';
htmlCode += ' <div class="list-group-item">';
htmlCode += ' <div class="list-group-item-figure">';
@ -92,12 +118,12 @@ $(document).ready(function () {
htmlCode += ' <div class="list-group-item-body">';
htmlCode += ' <div class="team">';
htmlCode += ' <h4 data-name="subname" class="list-group-item-title">';
htmlCode += ' ' + modelSubItem_name + '\r\n';
htmlCode += ' ' + modelSubItem_name;
htmlCode += ' </h4><br/>';
htmlCode += ' <p class="list-group-item-text" data-name="subdesc" style="white-space: pre-line;font-size: 13px;">';
htmlCode += ' ' + modelSubItem_descript + '\r\n';
htmlCode += ' ' + modelSubItem_descript;
htmlCode += ' </p><br/>';
htmlCode += ' <p class="list-group-item-text" data-name="subsummy" style="white-space: pre-line;font-size: 12px;">';
htmlCode += ' <p class="list-group-item-text" data-name="subsummy" style="white-space: pre-line;font-size: 11px;">';
htmlCode += ' 單價 NT$' + AppendComma(modelSubItem_price) + ', 數量 ' + modelSubItem_number + ', 單位 ' + modelSubItem_unitType + '\r\n';
htmlCode += ' 小計 NT$' + AppendComma(modelSubItem_subTotal) + '\r\n';
htmlCode += ' AC(' + modelSubItem_hasAC + ')';
@ -127,6 +153,12 @@ $(document).ready(function () {
var mainItem_uid = $('#parent_mainItem_uid').val();
var method = $('#modelMainItem_method').val();
var modelMainItem_name = $('#modelMainItem_name').val();
var modelMainItem_ac = $('#modelMainItem_ac').val();
if (modelMainItem_ac.isNumber() == false) {
alert('AC必須為數字!');
return;
}
if (modelMainItem_name == "") {
alert('主項目名稱不得為空白!');
@ -138,7 +170,7 @@ $(document).ready(function () {
$(obj).prop('data-main-uid', mainItem_uid);
$(obj).find("[data-name='mainItem_name']").val(modelMainItem_name);
$(obj).find("[data-span='mainItem_name']").text(modelMainItem_name);
$(obj).find("[data-name='modelMainItem_ac']").val(modelMainItem_ac);
$('#modelMainItemModal').modal('toggle');
}
@ -150,6 +182,7 @@ $(document).ready(function () {
htmlCode += '<div class="card card-fluid" data-uid="' + datauid + '" data-main-uid="' + mainItem_uid + '" data-type="add">';
htmlCode += ' <div class="card-header border-bottom-0 btn-group">';
htmlCode += ' <input type="hidden" data-name="mainItem_name" value="' + modelMainItem_name + '" />';
htmlCode += ' <input type="hidden" data-name="modelMainItem_ac" value="' + modelMainItem_ac + '" />';
htmlCode += ' <span data-span="mainItem_name">' + modelMainItem_name + '</span>';
htmlCode += ' <div class="dd-nodrag btn-group ml-auto">';
htmlCode += ' <button type="button" class="btn btn-sm btn-secondary" onclick="editModelMainItem(this);">Edit</button> <button type="button" onclick="delModelMainItem(this);" class="btn btn-sm btn-secondary"><i class="far fa-trash-alt"></i></button>';
@ -175,6 +208,9 @@ $(document).ready(function () {
});
//新增主項目鈕
$('#addModelMainItemBtn').on('click', function () {
@ -260,6 +296,48 @@ $(document).ready(function () {
});
});
//次項目編輯鈕
function editSubItemButton(obj) {
var divObj = $(obj).parent().parent().parent();
var model_subitem_uid = $(obj).parent().parent().parent().attr('data-model-subitem-uid');
var subItem_name = $(divObj).find("[data-name='model-subitem-name']").val();
var parent_item_uid = $(divObj).find("[data-name='model-subItem_uid']").val();
var modelSubItem_price = $(divObj).find("[data-name='model-subitem-price']").val();
var modelSubItem_unitType = $(divObj).find("[data-name='model-subitem-unitType']").val();
var modelSubItem_number = $(divObj).find("[data-name='model-subitem-number']").val();
var modelSubItem_hasAC = $(divObj).find("[data-name='model-subitem-hasAC']").val();
var modelSubItem_descript = $(divObj).find("[data-name='model-subitem-descript']").val();
var modelMainItem_uid = $(divObj).parent().parent().attr("data-uid");
var parent_mainItem_uid = $(divObj).parent().parent().attr("data-main-uid");
$('#modelSubItem_method').val('edit');
$('#modelSubItem_uid').val(model_subitem_uid);
$('#parent_Item_uid').val(parent_item_uid);
$('#model_parent_data_uid').val(modelMainItem_uid);
$('#modelSubItem_name').val(subItem_name);
$('#modelSubItem_descript').val(modelSubItem_descript);
$('#modelSubItem_price').val(modelSubItem_price);
$('#modelSubItem_unitType').val(modelSubItem_unitType);
$('#modelSubItem_number').val(modelSubItem_number);
if (modelSubItem_hasAC == 'Y') {
$('#modelSubItem_hasAC').prop('checked', true).trigger('change');
} else {
$('#modelSubItem_hasAC').prop('checked', false).trigger('change');
}
$('#modelSubItem_name').typeahead('destroy');
loadSubItemTypeahead(parent_mainItem_uid);
setTimeout(function () { preSubItem_name = subItem_name; }, 1000);
$('#modelSubItemModal').modal('toggle');
}
function addSubItem(obj) {
var modelMainItem_uid = $(obj).parent().parent().attr("data-uid");
var modelMainItem_name = $(obj).parent().parent().find("[data-name='mainItem_name']").val();
@ -366,41 +444,12 @@ function loadSubItemTypeahead(mainItem_uid) {
);
preSubItem_name = '';
$('#modelSubItem_name').bind('typeahead:select', function (ev, suggestion) {
var modelSubItem_descript = $('#modelSubItem_descript').val();
if (preSubItem_name != '') {
if (suggestion != preSubItem_name) {
if (confirm('確定要用新項目覆蓋目前資料?')) {
$('#parent_Item_uid').val(subItem_map[suggestion].id);
preSubItem_name = suggestion;
$('#modelSubItem_price').val(subItem_map[suggestion].price).trigger('change');
$('#modelSubItem_unitType').val(subItem_map[suggestion].unitType).trigger('change');
$('#modelSubItem_descript').val(subItem_map[suggestion].descript).trigger('change');
} else {
$('#modelSubItem_name').typeahead('val', preSubItem_name);
//suggestion = preSubItem_name;
//$('#modelSubItem_name').val(preSubItem_name).trigger('change');;
}
}
} else {
$('#parent_Item_uid').val(subItem_map[suggestion].id);
preSubItem_name = suggestion;
$('#modelSubItem_price').val(subItem_map[suggestion].price).trigger('change');
$('#modelSubItem_unitType').val(subItem_map[suggestion].unitType).trigger('change');
$('#modelSubItem_descript').val(subItem_map[suggestion].descript).trigger('change');
}
console.log('Selection: ' + suggestion);
console.log('Selection key: ' + subItem_map[suggestion].id);
});
if (hasBind == 'N') {
bindTypeHead();
hasBind = 'Y';
}
//$('#modelMainItem_name').bind('typeahead:autocomplete', function (ev, suggestion) {
// console.log('Selection: ' + suggestion);
// console.log('Selection key: ' + mainItem_map[suggestion].id);
@ -421,6 +470,45 @@ function loadSubItemTypeahead(mainItem_uid) {
});
}
function bindTypeHead() {
$('#modelSubItem_name').bind('typeahead:select', function (ev, suggestion) {
var modelSubItem_descript = $('#modelSubItem_descript').val();
if (preSubItem_name != '') {
if (suggestion != preSubItem_name) {
if (confirm('確定要用新項目覆蓋目前資料?')) {
$('#parent_Item_uid').val(subItem_map[suggestion].id);
preSubItem_name = suggestion;
$('#modelSubItem_price').val(subItem_map[suggestion].price).trigger('change');
$('#modelSubItem_unitType').val(subItem_map[suggestion].unitType).trigger('change');
$('#modelSubItem_descript').val(subItem_map[suggestion].descript).trigger('change');
$('#modelSubItem_number').val('').trigger('change');
} else {
$('#modelSubItem_name').typeahead('val', preSubItem_name);
//suggestion = preSubItem_name;
//$('#modelSubItem_name').val(preSubItem_name).trigger('change');;
}
}
} else {
$('#parent_Item_uid').val(subItem_map[suggestion].id);
preSubItem_name = suggestion;
$('#modelSubItem_price').val(subItem_map[suggestion].price).trigger('change');
$('#modelSubItem_unitType').val(subItem_map[suggestion].unitType).trigger('change');
$('#modelSubItem_descript').val(subItem_map[suggestion].descript).trigger('change');
}
console.log('Selection: ' + suggestion);
console.log('Selection key: ' + subItem_map[suggestion].id);
});
}
function loadMainItemTypeahead() {
var formData = {
dept_uid: $('#dept_select').val()