master
嘉祥 詹 2024-08-19 02:30:19 +08:00
parent 09cb9d8f88
commit 955132c3e7
5 changed files with 271 additions and 4 deletions

View File

@ -23,6 +23,8 @@ namespace QuotationMaker.Controllers
this._httpContextAccessor = httpContextAccessor;
}
[Route("authModalQuotationList")]
public ActionResult AuthModalQuotationList(IFormCollection obj)
{

View File

@ -46,7 +46,7 @@
</select>
</div>
</div>
<div class="col-md-2">
<div class="col-md-2" style="visibility: hidden;">
<div class="form-group">
<label for="search_btn" style="display: block;">&nbsp; &nbsp;</label>
<button type="button" class="btn btn-info btn-sm" id="search_btn">切換單位</button>
@ -192,11 +192,13 @@
</div>
</div><!-- /.form-group -->
<!-- grid row -->
<div id="mainItem_div" class="row">
<div id="quotatiion_div" class="row">
<div class="card-body border-top">
<button id="addModelMainItemBtn" type="button" class="btn btn-primary btn-lg btn-block">新增主項目</button>
</div>
<div class="col-lg-12">
<div id="modelItem_div" class="col-lg-12">
<!-- .card -->
<div class="card card-fluid">
<div class="card-header border-bottom-0 btn-group">
@ -281,6 +283,89 @@
<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 -->
@ -291,4 +376,39 @@
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
</form><!-- /.modal -->
<!-- .modal -->
<form id="clientModelMainItemForm" name="clientModelMainItemForm">
<div class="modal fade" id="modelMainItemModal" tabindex="-1" role="dialog" aria-labelledby="modelMainItemModalLabel" data-backdrop="static"
data-keyboard="false" aria-hidden="true">
<!-- .modal-dialog -->
<div class="modal-dialog" role="document">
<!-- .modal-content -->
<div class="modal-content">
<!-- .modal-header -->
<div class="modal-header">
<h6 id="modelMainItemModalLabel" class="modal-title inline-editable">
<span class="sr-only">主項目</span> <input id="group_mainitem" type="text" class="form-control form-control-lg" value="" placeholder="主項目" readonly="readonly" required="">
</h6>
</div><!-- /.modal-header -->
<!-- .modal-body -->
<div class="modal-body">
<input type="hidden" id="modelMainItem_method" />
<input type="hidden" id="modelMainItem_uid" />
<input type="hidden" id="parent_mainItem_uid" />
<!-- .form-group -->
<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><!-- /.modal-body -->
<!-- .modal-footer -->
<div class="modal-footer">
<button type="button" id="modelMainItemDialogSaveBtn" class="btn btn-primary">Save</button> <button type="button" class="btn btn-light" data-dismiss="modal" data-target="#modelMainItemModal">Close</button>
</div><!-- /.modal-footer -->
</div><!-- /.modal-content -->
</div><!-- /.modal-dialog -->
</div>
</form><!-- /.modal -->

View File

@ -194,8 +194,12 @@
</main><!-- /.app-main -->
</div><!-- /.app -->
<!-- BEGIN BASE JS -->
<link href="http://code.jquery.com/ui/1.10.2/themes/smoothness/jquery-ui.css" rel="Stylesheet">
<script src="~/assets/vendor/jquery/jquery.min.js"></script>
<script src="~/assets/vendor/jquery.cookie/jquery.cookie.js"></script>
<script src="http://code.jquery.com/ui/1.10.2/jquery-ui.js"></script>
<script src="~/assets/javascript/custom/globalJS.js" asp-append-version="true"></script>
<script src="~/assets/vendor/popper.js/umd/popper.min.js"></script>
<script src="~/assets/vendor/bootstrap/js/bootstrap.min.js"></script> <!-- END BASE JS -->
@ -226,7 +230,9 @@
<!-- END PLUGINS JS -->
<!-- BEGIN SELECT2-->
<script src="~/assets/vendor/handlebars/handlebars.min.js"></script>
<script src="~/assets/vendor/typeahead.js/bloodhound.min.js"></script>
<script src="~/assets/vendor/typeahead.js/typeahead.bundle.min.js"></script>
<script src="~/assets/vendor/typeahead.js/typeahead.jquery.min.js"></script>
<script src="~/assets/vendor/select2/js/select2.full.min.js"></script>
<script src="~/assets/vendor/tributejs/tribute.min.js"></script>
<script src="~/assets/vendor/jquery.caret/jquery.caret.min.js"></script>

View File

@ -0,0 +1,50 @@
$('#modelMainItem_name').typeahead(
{
minLength: 0,
highlight: true,
source: function(request, response) {
var formData = {
dept_uid: $('#dept_select').val()
};
$.ajax({
url: "/AuthApi/authMainItemList",
type: "post",
data: formData,
success: function(data, textStatus, jqXHR) {
if (data.ret == "yes") {
var obj = data.mainItems;
mainItem_items = [];
function loadMainItemTypeahead() {
mainItem_map = {};
$.each(obj, function(i, item) {
var id = item.mainItem_uid;
var name = item.mainItem_name;
mainItem_map[name] = { id: id, name: name };
mainItem_items.push(name);
});
response(mainItem_items);
} else {
alert(data.message);
if (data.err_code == "99999") {
location.href = "/Root/Login";
}
}
},
error: function(jqXHR, textStatus, errorThrown) {
alert('網路或伺服器發生錯誤,請稍後重試!');
}
});
},
updater: function(item) {
$('#parent_mainItem_uid').val(mainItem_map[item].id);
return item;
}
}
);
}

View File

@ -5,10 +5,31 @@ var modelProjRowID;
var modelQuotationTable;
var modelQuotationRowPos;
var modelQuotationRowID;
var mainItem_items = [];
var mainItem_map = {};
$(document).ready(function () {
deptList();
loadModelQuotationDataTable();
$('#dept_select').on('change', function () {
$('#dt-responsive').DataTable().ajax.reload();
});
//新增主項目對話框儲存鈕
$('#modelMainItemDialogSaveBtn').on('click', function () {
});
//新增主項目鈕
$('#addModelMainItemBtn').on('click', function () {
$('#modelMainItem_name').typeahead('destroy');
loadMainItemTypeahead();
$('#modelMainItem_method').val('add');
$('#modelMainItemModal').modal('toggle');
});
//新增報價單範本視窗
$('#modelQuotationListNewBtn').on('click', function () {
$('#clientModelQuotationPreviewModal').modal('toggle');
@ -80,6 +101,74 @@ $(document).ready(function () {
});
});
function loadMainItemTypeahead() {
var formData = {
dept_uid: $('#dept_select').val()
}
$.ajax({
url: "/AuthApi/authMainItemList",
type: "post",
data: formData,
success: function (data, textStatus, jqXHR) {
if (data.ret == "yes") {
var obj = data.mainItems;
mainItem_items = [];
mainItem_map = {};
$.each(obj, function (i, item) {
var id = item.mainItem_uid;
var name = item.mainItem_name;
mainItem_map[name] = { id: id, name: name };
mainItem_items.push(name);
});
var bh = new Bloodhound({
local: mainItem_items,
queryTokenizer: Bloodhound.tokenizers.whitespace,
datumTokenizer: Bloodhound.tokenizers.whitespace
});
var nflTeamsWithDefaults = function nflTeamsWithDefaults(q, sync) {
if (q === '') {
sync(bh.index.all());
} else {
bh.search(q, sync);
}
};
$('#modelMainItem_name').typeahead(
{
minLength: 0,
highlight: false
},
{
source: nflTeamsWithDefaults
}
);
$('#modelMainItem_name').bind('typeahead:select', function (ev, suggestion) {
console.log('Selection: ' + suggestion);
console.log('Selection key: ' + mainItem_map[suggestion].id);
});
} else {
alert(data.message);
if (data.err_code == "99999") {
location.href = "/Root/Login";
}
}
},
error: function (jqXHR, textStatus, errorThrown) {
alert('網路或伺服器發生錯誤,請稍後重試!');
}
});
}
function loadModelQuotationDataTable() {
var dataTables = {
init: function init() {