837 lines
32 KiB
JavaScript
837 lines
32 KiB
JavaScript
|
|
var mainTable;
|
|
var mainRowID;
|
|
var mainPos;
|
|
$(document).ready(function () {
|
|
loadDataTable();
|
|
loadPrm();
|
|
loadyearmonth();
|
|
|
|
flatpickr("#dateStart", {
|
|
"plugins": [
|
|
new monthSelectPlugin({
|
|
shorthand: true, //defaults to false
|
|
dateFormat: "Y/m", //defaults to "F Y"
|
|
altFormat: "Y M", //defaults to "F Y"
|
|
theme: "light" // defaults to "light"
|
|
})
|
|
]
|
|
});
|
|
|
|
flatpickr("#dateEnd", {
|
|
"plugins": [
|
|
new monthSelectPlugin({
|
|
shorthand: true, //defaults to false
|
|
dateFormat: "Y/m", //defaults to "F Y"
|
|
altFormat: "Y M", //defaults to "F Y"
|
|
theme: "light" // defaults to "light"
|
|
})
|
|
]
|
|
});
|
|
|
|
|
|
$('#resetBtn').on('click', function () {
|
|
|
|
|
|
$.ajax({
|
|
url: "/Api/projectList",
|
|
type: "post",
|
|
data: null,
|
|
success: function (data, textStatus, jqXHR) {
|
|
var obj = data.projectList;
|
|
if (data.ret == "yes") {
|
|
$('#adv-search-btn').trigger('click');
|
|
|
|
$('#dateStart').val('');
|
|
$('#dateEnd').val('');
|
|
|
|
|
|
|
|
$('#dt-responsive').dataTable().fnClearTable();
|
|
if (data.projectList.length > 0) {
|
|
|
|
$('#dt-responsive').dataTable().fnAddData(data.projectList);
|
|
|
|
|
|
}
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "99999") {
|
|
location.href = "/Root/Login";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
});
|
|
|
|
$('#filiterBtn').on('click', function () {
|
|
var start = $('#dateStart').val();
|
|
var end = $('#dateEnd').val();
|
|
var isExec = $('input[name="rdGroup1[]"]:checked').val();
|
|
|
|
if (!((start == "" && end == "") || (start != "" && end != ""))) {
|
|
alert('起訖時間未輸入完全!');
|
|
return;
|
|
}
|
|
|
|
var formData = {
|
|
is_filiter: 'Y',
|
|
start: start,
|
|
end: end,
|
|
isExec: isExec
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/projectList",
|
|
type: "post",
|
|
data: formData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
var obj = data.projectList;
|
|
if (data.ret == "yes") {
|
|
|
|
$('#dt-responsive').dataTable().fnClearTable();
|
|
if (data.projectList.length > 0) {
|
|
|
|
$('#dt-responsive').dataTable().fnAddData(data.projectList);
|
|
|
|
|
|
}
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "99999") {
|
|
location.href = "/Root/Login";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
});
|
|
|
|
$('#projectSaveBtn').on('click', function () {
|
|
var method = $('#method').val();
|
|
var project_isPrm = $('input:radio[name="project_isExec[]"]:checked').val();
|
|
var project_year = $('#project_year').val();
|
|
var project_month = $('#project_month').val();
|
|
var project_name = $('#project_name').val();
|
|
var prm_serial = $('#select2-data-remote').val();
|
|
var prm_name = $('#select2-data-remote').find(':selected').text();
|
|
var project_uid = $('#project_uid').val();
|
|
|
|
if (typeof project_isPrm === "undefined") {
|
|
alert('請先選擇已執行或僅提案!');
|
|
return;
|
|
}
|
|
|
|
if (project_isPrm == 'no' && project_name == '') {
|
|
alert('請輸入專案名稱!');
|
|
return;
|
|
}
|
|
|
|
if (project_isPrm == 'yes' && prm_serial == '') {
|
|
alert('請選擇已執行的PRM專案!');
|
|
return;
|
|
}
|
|
|
|
if (project_isPrm == 'yes' && prm_serial == null) {
|
|
alert('請選擇已執行的PRM專案!');
|
|
return;
|
|
}
|
|
|
|
if (project_isPrm == 'yes') {
|
|
project_isPrm = 'Y';
|
|
project_name = prm_name.replace('(' + prm_serial + ') ', "");
|
|
project_year = "20" + prm_serial.substr(0, 2);
|
|
project_month = parseInt(prm_serial.substr(2, 2));
|
|
} else {
|
|
project_isPrm = 'N';
|
|
}
|
|
|
|
mainTable = $('#dt-responsive').dataTable();
|
|
|
|
var formData = {
|
|
method: method,
|
|
project_isPrm: project_isPrm,
|
|
project_prmSerial: prm_serial,
|
|
project_name: project_name,
|
|
project_year: project_year,
|
|
project_month: project_month,
|
|
project_uid: project_uid
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/projectAddEditDelGet",
|
|
type: "post",
|
|
data: formData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
var obj = data.data;
|
|
if (data.ret == "yes") {
|
|
|
|
if (method == "add") {
|
|
mainTable.fnAddData(obj);
|
|
}
|
|
|
|
if (method == "edit") {
|
|
mainTable.fnUpdate(obj, mainPos);
|
|
}
|
|
|
|
$('#clientNewModal').modal('toggle');
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "99999") {
|
|
location.href = "/Root/Login";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
});
|
|
|
|
$('#projectNewModal').on('click', function () {
|
|
//var src = $('#fileupload-avatar').parent().children('img').prop('src');
|
|
//var origin = location.origin;
|
|
//src = src.replace(origin, '');
|
|
//alert(src);
|
|
$('#file_div').hide();
|
|
$("#select2-data-remote").val(null).trigger('change');
|
|
$('input:radio[name="project_isExec[]"]').prop('checked', false);
|
|
$('#project_name').val('');
|
|
$('#prm_project_serial').hide();
|
|
$('#project_year_month_div').hide();
|
|
$('#project_name_div').hide();
|
|
$('#method').val('add');
|
|
$('#clientNewModal').modal('toggle');
|
|
});
|
|
|
|
$('input:radio[name="project_isExec[]"]').change(
|
|
function () {
|
|
if ($(this).is(':checked') && $(this).val() == 'yes') {
|
|
// append goes here
|
|
$('#prm_project_serial').show();
|
|
$('#project_year_month_div').hide();
|
|
$('#project_name_div').hide();
|
|
}
|
|
|
|
if ($(this).is(':checked') && $(this).val() == 'no') {
|
|
// append goes here
|
|
$('#prm_project_serial').hide();
|
|
$('#project_year_month_div').show();
|
|
$('#project_name_div').show();
|
|
}
|
|
|
|
|
|
});
|
|
|
|
function loadyearmonth() {
|
|
var actualDate = new Date(); // convert to actual date
|
|
|
|
var nowYear = actualDate.getFullYear();
|
|
|
|
for (tmpY = nowYear; tmpY >= 2019; tmpY--) {
|
|
$("#project_year").append($("<option></option>").attr("value", tmpY).text(tmpY + " 年度"));
|
|
}
|
|
|
|
for (tmpM = 1; tmpM <= 12; tmpM++) {
|
|
$("#project_month").append($("<option></option>").attr("value", tmpM).text(tmpM + " 月"));
|
|
|
|
}
|
|
|
|
}
|
|
function loadPrm() {
|
|
$('#select2-data-remote').select2({
|
|
language: 'zh-TW',
|
|
width: '100%',
|
|
// 最多字元限制
|
|
maximumInputLength: 12,
|
|
// 最少字元才觸發尋找, 0 不指定
|
|
minimumInputLength: 1,
|
|
// 當找不到可以使用輸入的文字
|
|
// tags: true,
|
|
placeholder: '請輸入案號或專案名稱...',
|
|
ajax: {
|
|
url: '/Api/queryPrm',
|
|
dataType: 'json',
|
|
delay: 500,
|
|
type: 'post',
|
|
// 要送出的資料
|
|
data: function (params) {
|
|
// 在伺服器會得到一個 POST 'search'
|
|
return {
|
|
search: params.term
|
|
};
|
|
},
|
|
processResults: function (data, params) {
|
|
console.log(data.data)
|
|
|
|
// 一定要返回 results 物件
|
|
return {
|
|
results: data.data,
|
|
// 可以啟用無線捲軸做分頁
|
|
pagination: {
|
|
more: params.page * 30 < data.total_count
|
|
}
|
|
}
|
|
}
|
|
}
|
|
});
|
|
}
|
|
function loadDataTable() {
|
|
var dataTables = {
|
|
init: function init() {
|
|
|
|
this.bindUIActions();
|
|
},
|
|
bindUIActions: function bindUIActions() {
|
|
|
|
// event handlers
|
|
this.table = this.handleDataTables();
|
|
|
|
// add buttons
|
|
//this.table.buttons().container().appendTo('#dt-buttons').unwrap();
|
|
},
|
|
handleDataTables: function handleDataTables() {
|
|
//$('#myTable').append("<tfoot><tr><td></td><td></td><td></td><td></td><td></td><td></td><td></td></tr></tfoot>");
|
|
return $('#dt-responsive').DataTable({
|
|
dom: '<\'text-muted\'Bif>\n <\'table-responsive\'trl>\n <\'mt-4\'p>',
|
|
lengthChange: true,
|
|
lengthMenu: [[25, 50, 100, -1], [25, 50, 100, "All"]],
|
|
pageLength: 25,
|
|
buttons: [
|
|
//{
|
|
// text: '休假設定',
|
|
// action: function (e, dt, node, config) {
|
|
// vacationBtnFun();
|
|
|
|
// }
|
|
//},
|
|
//'excelHtml5'
|
|
],
|
|
language: {
|
|
paginate: {
|
|
previous: '<i class="fa fa-lg fa-angle-left"></i>',
|
|
next: '<i class="fa fa-lg fa-angle-right"></i>'
|
|
},
|
|
buttons: {
|
|
copyTitle: 'Data copied',
|
|
copyKeys: 'Use your keyboard or menu to select the copy command'
|
|
}
|
|
},
|
|
autoWidth: false,
|
|
ajax: {
|
|
url: '/Api/projectList',
|
|
type: 'POST',
|
|
data: function (d) {
|
|
Object.assign(d, {
|
|
bar_area: $('#bar_area').val(),
|
|
is_lottery: $('#isLottery').val()
|
|
});
|
|
|
|
return d;
|
|
},
|
|
dataSrc: 'projectList'
|
|
},
|
|
rowId: 'project_uid',
|
|
deferRender: true,
|
|
initComplete: function () {
|
|
$('#dt-responsive').on('click', 'a', function () {
|
|
buttonClick2(this);
|
|
});
|
|
|
|
$('#dt-responsive').on('click', 'button', function () {
|
|
buttonClick2(this);
|
|
});
|
|
|
|
$('#dt-responsive').on('click', 'input[name="selectedRow[]"]', function () {
|
|
checkboxClick(this);
|
|
});
|
|
},
|
|
order: [[5, 'desc']],
|
|
info: true,
|
|
search: "搜尋:",
|
|
searching: true,
|
|
columns: [{ data: 'project_year', className: 'align-top', orderable: false, searchable: false },
|
|
{ data: 'project_prmSerial', className: 'align-top text-left', orderable: true, searchable: true },
|
|
{ data: 'project_name', className: 'align-top text-left', orderable: true, searchable: true },
|
|
{ data: 'project_isExec', className: 'align-top text-left', orderable: false, searchable: true },
|
|
{ data: 'project_uid', className: 'align-top text-left', orderable: false, searchable: true },
|
|
{ data: 'project_modifydate', className: 'align-top text-left', orderable: false, searchable: true },
|
|
{ data: 'project_uid', className: 'align-top text-center', orderable: false, searchable: false }],
|
|
columnDefs: [
|
|
{
|
|
targets: 2,
|
|
orderable: false,
|
|
searchable: true,
|
|
render: function render(data, type, row, meta) {
|
|
return '<a href="javascript: void(0);" data-uid="' + row.project_uid + '" data-method="preview">' + row.project_name + '</a>';
|
|
}
|
|
}
|
|
,
|
|
{
|
|
targets: 3,
|
|
className: 'align-middle text-center',
|
|
orderable: false,
|
|
searchable: false,
|
|
render: function render(data, type, row, meta) {
|
|
if (row.project_isExec == 'Y') {
|
|
return "執行";
|
|
}
|
|
|
|
if (row.project_isExec == 'N') {
|
|
|
|
if (row.project_reason == '') {
|
|
return "未執行";
|
|
} else {
|
|
return "未執行,原因:" + row.project_reason;
|
|
}
|
|
}
|
|
|
|
return '';
|
|
//return row.gift_city + row.gift_area + row.gift_address;
|
|
//var editRet = '<a id="table-btn" class="btn btn-sm btn-secondary" href="javascript: void(0);" data-method="edit" data-uid="' + row.quotation_serial + '"><i class="fa fa-pencil-alt"></i></a> <a id="table-btn" class="btn btn-sm btn-secondary" href="javascript: void(0);" data-method="setting" data-uid="' + row.quotation_serial + '"><i class="fas fa-cog"></i></a>';
|
|
|
|
//if (row.quotationUser_perm == "A" || row.quotationUser_perm == "D" || row.quotationUser_perm == "admin" || row.quotationUser_perm == "pro") {
|
|
// editRet = editRet + ' <a id="table-btn" class="btn btn-sm btn-secondary" href="javascript: void(0);" data-method="del" data-uid="' + row.quotation_serial + '"><i class="far fa-trash-alt"></i></a>';
|
|
//}
|
|
//return editRet;
|
|
}
|
|
}
|
|
, {
|
|
targets: 4,
|
|
orderable: false,
|
|
searchable: false,
|
|
render: function render(data, type, row, meta) {
|
|
|
|
var ret = '';
|
|
|
|
$.each(row.kolList, function (key, value) {
|
|
var isExec = '未執行';
|
|
|
|
if (value.kolProject_isExec == 'Y') {
|
|
isExec = '執行';
|
|
|
|
ret += '<span class="badge badge-pill badge-info">' + value.kol_name + ' (' + isExec + ')</span><br/>';
|
|
} else {
|
|
isExec = '未執行';
|
|
|
|
if (value.kolProject_noExecReason != '') {
|
|
isExec += ':' + value.kolProject_noExecReason;
|
|
}
|
|
|
|
ret += '<span class="badge badge-pill badge-warning">' + value.kol_name + ' (' + isExec + ')</span><br/>';
|
|
}
|
|
|
|
|
|
});
|
|
|
|
//ret = ret.replace(/^\/+|\/+$/g, '');
|
|
//ret = '尚在開發中';
|
|
|
|
return ret;
|
|
|
|
//return '<a href="javascript: void(0); " data-method="edit" data-uid="' + row.company_uid + '">' + row.company_name + '</a>';
|
|
}
|
|
}
|
|
, {
|
|
targets: 5,
|
|
orderable: false,
|
|
searchable: false,
|
|
render: function render(data, type, row, meta) {
|
|
return (new Date(row.project_modifydate)).format("yyyy/MM/dd hh:mm:ss");
|
|
}
|
|
}
|
|
, {
|
|
targets: 6,
|
|
orderable: false,
|
|
searchable: false,
|
|
render: function render(data, type, row, meta) {
|
|
var ret = '';
|
|
|
|
ret += '<button type="button" data-uid="' + row.project_uid + '" data-method="edit" class="btn btn-sm btn-icon btn-secondary" ><i class="fa fa-pencil-alt"></i> <span class="sr-only">Edit</span></button>';
|
|
ret += '<button type="button" data-uid="' + row.project_uid + '" data-method="del" class="btn btn-sm btn-icon btn-secondary"><i class="far fa-trash-alt"></i> <span class="sr-only">Remove</span></button>';
|
|
return ret;
|
|
}
|
|
}
|
|
],
|
|
|
|
});
|
|
},
|
|
handleSearchRecords: function handleSearchRecords() {
|
|
var self = this;
|
|
|
|
$('#table-search, #filterBy').on('keyup change focus', function (e) {
|
|
var filterBy = $('#filterBy').val();
|
|
var hasFilter = filterBy !== '';
|
|
var value = $('#table-search').val();
|
|
|
|
self.table.search('').columns().search('').draw();
|
|
|
|
if (hasFilter) {
|
|
self.table.columns(filterBy).search(value).draw();
|
|
} else {
|
|
self.table.search(value).draw();
|
|
}
|
|
|
|
});
|
|
}
|
|
}
|
|
|
|
dataTables.init();
|
|
}
|
|
|
|
|
|
});
|
|
|
|
function kolProjectPreview(obj) {
|
|
var uid = obj.getAttribute('data-uid');
|
|
//alert(uid);
|
|
|
|
var formData = {
|
|
method: "get",
|
|
kolProject_uid: uid
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/kolProjectAddEditDelGet",
|
|
type: "post",
|
|
data: formData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
if (data.ret == "yes") {
|
|
var trList = $("#previewPrice_table").find("tbody").find("tr");
|
|
$.each(trList, function (index, item) {
|
|
$(item).remove();
|
|
});
|
|
|
|
var trList = $("#previewFile_table").find("tbody").find("tr");
|
|
$.each(trList, function (index, item) {
|
|
$(item).remove();
|
|
});
|
|
|
|
var trList = $("#previewLink_table").find("tbody").find("tr");
|
|
$.each(trList, function (index, item) {
|
|
$(item).remove();
|
|
});
|
|
|
|
var trList = $("#previewCut_table").find("tbody").find("tr");
|
|
$.each(trList, function (index, item) {
|
|
$(item).remove();
|
|
});
|
|
|
|
var obj = data.data;
|
|
|
|
|
|
$('#previewProject_name').val('(' + obj.project.project_year + '年度' + obj.project.project_month + '月) ' + obj.project.project_name);
|
|
|
|
var cooperStr = '';
|
|
|
|
$.each(obj.kolCooperateTypeDetails, function () {
|
|
cooperStr += this.optionItem_name + '/';
|
|
});
|
|
|
|
cooperStr = cooperStr.replace(/\/+$/, '');
|
|
|
|
$('#previewProject_Cooper').val(cooperStr);
|
|
|
|
$.each(obj.kolProjectPrices, function () {
|
|
var trHtml = "";
|
|
trHtml += '<tr>';
|
|
trHtml += ' <td class="align-middle"> ' + this.optionItem_name + ' </td>';
|
|
trHtml += ' <td class="align-middle"> ' + this.mediaItem_name + ' </td>';
|
|
trHtml += ' <td class="align-middle" style="text-align: right;"> ' + this.kolProjectPrice_num + ' </td>';
|
|
trHtml += ' <td class="align-middle" style="text-align: right;"> ' + AppendComma(this.kolProjectPrice_cost) + ' </td>';
|
|
trHtml += ' <td class="align-middle"> ' + this.kolProjectPrice_date + ' </td>';
|
|
|
|
trHtml += '</tr>';
|
|
|
|
$('#previewPrice_table tbody').append(trHtml);
|
|
});
|
|
|
|
if (obj.kolProject.kolProject_isExec == 'Y') {
|
|
$('#previewProject_isCooper').val('是');
|
|
} else {
|
|
$('#previewProject_isCooper').val('否');
|
|
|
|
if (obj.kolProject.kolProject_noExecReason != '') {
|
|
$('#previewProject_isCooper').val('否,原因【' + obj.kolProject.kolProject_noExecReason + '】');
|
|
}
|
|
}
|
|
|
|
$.each(obj.kolProjectFiles, function () {
|
|
var ret = '';
|
|
|
|
ret += ' <a href="' + this.kolProjectFile_path + '" target="_blank">' + this.kolProjectFile_originFileName + '</a>';
|
|
|
|
|
|
var trHtml = "";
|
|
trHtml += '<tr>';
|
|
trHtml += ' <td class="align-middle"> ' + ret + ' </td>';
|
|
trHtml += '</tr>';
|
|
|
|
$('#previewFile_table tbody').append(trHtml);
|
|
});
|
|
|
|
var qualityStr = '';
|
|
|
|
$.each(obj.kolProjectEvaluates, function (key, value) {
|
|
qualityStr += value.kolProjectEvaluate_text + "/";
|
|
});
|
|
|
|
qualityStr = qualityStr.replace(/\/+$/, '');
|
|
|
|
$('#previewProject_Quality').val(qualityStr);
|
|
|
|
$.each(obj.kolProjectLinks, function () {
|
|
var trHtml = "";
|
|
trHtml += '<tr>';
|
|
trHtml += ' <td class="align-middle"> <a href="' + this.kolProjectLink_url + '" target="_blank" class="link">' + this.kolProjectLink_text + '</a></td>';
|
|
|
|
trHtml += '</tr>';
|
|
|
|
$('#previewLink_table tbody').append(trHtml);
|
|
});
|
|
|
|
$.each(obj.kolProjectImages, function () {
|
|
var ret = '';
|
|
ret += '<div class="user-avatar user-avatar-xxl">';
|
|
ret += ' <a href="' + this.kolProjectImage_photo + '" target="_blank"><img style="border: 0;" src="' + this.kolProjectImage_photo + '" alt=""></a>';
|
|
ret += '</div>';
|
|
|
|
var trHtml = "";
|
|
trHtml += '<tr>';
|
|
trHtml += ' <td class="align-middle"> ' + ret + ' </td>';
|
|
|
|
trHtml += ' <td class="align-middle"> ' + this.kolProjectImage_desc + ' </td>';
|
|
|
|
trHtml += '</tr>';
|
|
|
|
$('#previewCut_table tbody').append(trHtml);
|
|
});
|
|
|
|
|
|
$('#previewkolProject_memo').val(obj.kolProject.kolProject_memo);
|
|
|
|
|
|
|
|
|
|
|
|
$('#clientCasePreviewModal').modal('toggle');
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "9999") {
|
|
location.href = "/Home/Index";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
}
|
|
|
|
function buttonClick2(obj) {
|
|
var type = obj.getAttribute('data-method');
|
|
var uid = obj.getAttribute('data-uid');
|
|
|
|
mainTable = $('#dt-responsive').dataTable();
|
|
mainRowID = $('#' + uid);
|
|
|
|
mainPos = mainTable.fnGetPosition($('#' + uid)[0]);
|
|
|
|
if (type == "preview") {
|
|
var formData = {
|
|
project_uid: uid
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/projectKolViewList",
|
|
type: "post",
|
|
data: formData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
if (data.ret == "yes") {
|
|
var trList = $("#preview_kol_table").find("tbody").find("tr");
|
|
$.each(trList, function (index, item) {
|
|
$(item).remove();
|
|
});
|
|
|
|
$.each(data.detail.kolList, function () {
|
|
var trHtml = "";
|
|
trHtml += '<tr>';
|
|
trHtml += ' <td class="align-middle"> <a href="javascript: void(0);" data-uid="' + this.kolProject_uid + '" onclick="kolProjectPreview(this);">' + this.kol_name + ' </td>';
|
|
|
|
var execStr = '';
|
|
|
|
if (this.kolProject_isExec == 'N') {
|
|
|
|
if (this.kolProject_noExecReason == '') {
|
|
execStr = "未執行";
|
|
} else {
|
|
execStr = "未執行,原因:" + this.kolProject_noExecReason;
|
|
}
|
|
} else {
|
|
execStr = "執行";
|
|
}
|
|
trHtml += ' <td class="align-middle"> ' + execStr + ' </td>';
|
|
|
|
|
|
var evaStr = '';
|
|
|
|
$.each(this.kolProjectEvaluates, function () {
|
|
evaStr += this.kolProjectEvaluate_text + ", ";
|
|
});
|
|
|
|
evaStr = evaStr.trim().replace(/,+$/, '');
|
|
|
|
trHtml += ' <td class="align-middle"> ' + evaStr + ' </td>';
|
|
|
|
trHtml += '</tr>';
|
|
|
|
$('#preview_kol_table tbody').append(trHtml);
|
|
});
|
|
|
|
$('#clientPreviewModal').modal('toggle');
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "9999") {
|
|
location.href = "/Home/Index";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
}
|
|
|
|
if (type == "del") {
|
|
if (confirm('確定刪除此筆資料? 刪除後將無任何方法回復!')) {
|
|
var formData = {
|
|
method: "del",
|
|
project_uid: uid
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/projectAddEditDelGet",
|
|
type: "post",
|
|
data: formData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
if (data.ret == "yes") {
|
|
var row = mainTable.api().row(mainRowID).remove().draw(false);
|
|
alert('刪除完成!');
|
|
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "9999") {
|
|
location.href = "/Home/Index";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
}
|
|
}
|
|
|
|
if (type == "edit") {
|
|
$('#file_div').hide();
|
|
$('#method').val('edit');
|
|
$('#project_uid').val(uid);
|
|
|
|
var formData = {
|
|
method: "get",
|
|
project_uid: uid
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/projectAddEditDelGet",
|
|
type: "post",
|
|
data: formData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
if (data.ret == "yes") {
|
|
$("#select2-data-remote").val(null).trigger('change');
|
|
$('input:radio[name="project_isExec[]"]').prop('checked', false);
|
|
$('#project_name').val('');
|
|
$('#prm_project_serial').hide();
|
|
$('#project_year_month_div').hide();
|
|
$('#project_name_div').hide();
|
|
|
|
|
|
var obj = data.data;
|
|
|
|
$('#method').val('edit');
|
|
$('#project_uid').val(uid);
|
|
|
|
if (obj.project_isPrm == 'Y') {
|
|
$("#rd1").prop("checked", true).trigger("click");
|
|
$('#prm_project_serial').show();
|
|
$('#project_year_month_div').hide();
|
|
$('#project_name_div').hide();
|
|
|
|
var fileData = {
|
|
quotation_serial: obj.project_prmSerial
|
|
}
|
|
|
|
$.ajax({
|
|
url: "/Api/queryPrmFile",
|
|
type: "post",
|
|
data: fileData,
|
|
success: function (data, textStatus, jqXHR) {
|
|
if (data.hasFile == 'Y') {
|
|
$('#file_div').show();
|
|
|
|
$('#fileUrl').text(data.fileName);
|
|
$('#fileUrl').prop('href', data.fileUrl);
|
|
} else {
|
|
$('#file_div').hide();
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
|
|
var appendName = "(" + obj.project_prmSerial + ") " + obj.project_name;
|
|
|
|
var newOption = new Option(appendName, obj.project_prmSerial, true, true);
|
|
|
|
$("#select2-data-remote").append(newOption).trigger('change');
|
|
//$("#select2-data-remote").trigger('change.select2');
|
|
} else {
|
|
$("#rd2").prop("checked", true).trigger("click");
|
|
$('#prm_project_serial').hide();
|
|
$('#project_year_month_div').show();
|
|
$('#project_name_div').show();
|
|
|
|
$("#project_year").val(obj.project_year);
|
|
$("#project_month").val(obj.project_month);
|
|
$("#project_name").val(obj.project_name).trigger('change');;
|
|
}
|
|
|
|
|
|
|
|
$('#clientNewModal').modal('toggle');
|
|
} else {
|
|
alert(data.message);
|
|
|
|
if (data.err_code == "9999") {
|
|
location.href = "/Home/Index";
|
|
}
|
|
}
|
|
},
|
|
error: function (jqXHR, textStatus, errorThrown) {
|
|
alert('網路或伺服器發生錯誤,請稍後重試!');
|
|
}
|
|
});
|
|
}
|
|
} |