From 478a1d70702b12222832500cbf3604a6cf198621 Mon Sep 17 00:00:00 2001 From: "gary_chen\\gary_chen" Date: Tue, 14 Nov 2023 15:06:50 +0800 Subject: [PATCH] =?UTF-8?q?=E5=A4=A7=E6=97=A5=E7=A8=8B=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E8=87=AA=E5=8B=95=E5=B8=B6=E5=85=A5=E9=A0=90=E8=A8=88=E7=99=BC?= =?UTF-8?q?=E5=8C=85=E6=97=A5=E6=9C=9F=E5=8A=9F=E8=83=BD=20=E4=BF=AE?= =?UTF-8?q?=E6=AD=A3=E7=87=9F=E6=A5=AD=E7=84=A1=E6=B3=95=E8=AA=BF=E6=95=B4?= =?UTF-8?q?=E7=A7=BB=E4=BA=A4=E6=97=A5bug=20=E6=96=B0=E5=A2=9E=E5=AE=89?= =?UTF-8?q?=E8=A3=9D=E5=A4=A7=E6=97=A5=E7=A8=8B=E8=AD=A6=E7=A4=BA=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- wms/wipwhole-index-function.php | 62 ++++- wms/wipwhole-rec-invoice-edit-submit.php | 46 ++-- wms/wipwhole-rec-invoice-edit.php | 87 +++++-- wms/wipwhole-rec-invoice.php | 6 +- wms/wipwhole-rec-renovate-invoice.php | 6 +- ...whole-renovate-rec-invoice-edit-submit.php | 46 ++-- wms/wipwhole-renovate-rec-invoice-edit.php | 235 +++++++++++++++--- wms/wipwholeinstall-index-function.php | 97 ++++++++ wms/wipwholeinstall-index-table-html.php | 2 + ...ipwholeinstall-renovate-index-function.php | 100 +++++++- ...wholeinstall-renovate-index-table-html.php | 2 + 11 files changed, 579 insertions(+), 110 deletions(-) diff --git a/wms/wipwhole-index-function.php b/wms/wipwhole-index-function.php index 3f8c6d67..66d0e67b 100644 --- a/wms/wipwhole-index-function.php +++ b/wms/wipwhole-index-function.php @@ -831,18 +831,68 @@ function getWarehouseStatus($link, $user_department_id, $role_id, $status) } // 取得營業或契約的欄位權限 -function getMarketingStatus($link, $user_department_id, $role_id) +function getMarketingStatus($link, $user_department_id, $role_id, $status) { if ($user_department_id == 220) return ""; - if ($user_department_id == 311 || $user_department_id == 312 || $user_department_id == 313 || $user_department_id == 314 || $user_department_id == 315) - return checkNowFormYDStatus($link) == 'A' ? "" : "disabled"; - if ($user_department_id == 501 || $user_department_id == 511 || $user_department_id == 512 || $user_department_id == 513 || $user_department_id == 514) - return checkNowFormYDStatus($link) == 'A' ? "" : "disabled"; - + if ($user_department_id == 311 || $user_department_id == 312 || $user_department_id == 313 || $user_department_id == 314 || $user_department_id == 315) { + if ($status == 1) { + return checkNowFormStatus($link) == 'A' ? "" : "disabled"; + } else { + return ""; + } + } + if ($user_department_id == 501 || $user_department_id == 511 || $user_department_id == 512 || $user_department_id == 513 || $user_department_id == 514) { + if ($status == 1) { + return checkNowFormStatus($link) == 'A' ? "" : "disabled"; + } else { + return ""; + } + } return "disabled"; } +// 確認目前狀態 +function checkNowFormStatus($link) +{ + if (isset($_GET['id']) || isset($_GET['form_key'])) { + $id = isset($_GET['id']) ? $_GET['id'] : getId($link, $_GET['form_key']); + $form_key = getForm_key($link, $id); + } + $sql = " + SELECT + flow_code + FROM flow + WHERE form_id = '$id' + AND form_key = '$form_key' + AND system_id = 'wws' + AND flow_id = 'wws01' + "; + $result = mysqli_query($link, $sql); + $row = mysqli_fetch_array($result); + return $row['0']; +} + +// 取得本次簽核的表單form_key值 +function getForm_key($link, $form_id) +{ + $sql = " + SELECT + f.form_key + FROM flow AS f + LEFT JOIN subflow AS s + ON f.form_key = s.form_key + WHERE 1=1 + AND f.form_id = '$form_id' + AND f.flow_code IN ('A','B','C','D','E') + AND f.system_id = 'wws' + AND f.flow_id = 'wws01' + "; + $result = mysqli_query($link, $sql); + $row = mysqli_fetch_array($result); + return $row['form_key']; +} + // 取得設計的欄位權限 function getDesinStatus($link, $user_department_id, $role_id) { diff --git a/wms/wipwhole-rec-invoice-edit-submit.php b/wms/wipwhole-rec-invoice-edit-submit.php index a9456aab..af4823a0 100644 --- a/wms/wipwhole-rec-invoice-edit-submit.php +++ b/wms/wipwhole-rec-invoice-edit-submit.php @@ -154,6 +154,7 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { $delivery_date_owner = $_POST['delivery_date_owner'] ?: $row['delivery_date_owner']; // 工務助理 + $outsourcer_type = $_POST['outsourcer_type']; $install_outsourcer = $_POST['install_outsourcer']; $install_outsourcer_owner = $_POST['install_outsourcer_owner']; $install_outsourcer_date = $_POST['install_outsourcer_date']; @@ -511,24 +512,25 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { // 工務助理 if (in_array($user_id, ['M0164', 'M0165', 'M0127', 'M0193', 'M0170', 'M0188'])) { $updatesql .= " - install_outsourcer = '$install_outsourcer', - install_outsourcer_owner = '$install_outsourcer_owner', - install_outsourcer_date = '$install_outsourcer_date', - install_outsourcer_date_owner = '$install_outsourcer_date_owner', - estimate_install_start_date = '$estimate_install_start_date', - estimate_install_start_date_owner = '$estimate_install_start_date_owner', - estimate_install_end_date = '$estimate_install_end_date', - estimate_install_end_date_owner = '$estimate_install_end_date_owner', - tryrun_outsourcer = '$tryrun_outsourcer', - tryrun_outsourcer_owner = '$tryrun_outsourcer_owner', - tryrun_outsourcer_date = '$tryrun_outsourcer_date', - tryrun_outsourcer_date_owner = '$tryrun_outsourcer_date_owner', - estimate_tryrun_start_date = '$estimate_tryrun_start_date', - estimate_tryrun_start_date_owner = '$estimate_tryrun_start_date_owner', - estimate_tryrun_end_date = '$estimate_tryrun_end_date', - estimate_tryrun_end_date_owner = '$estimate_tryrun_end_date_owner', - warehouse_assistant_remark = '$warehouse_assistant_remark', - "; + outsourcer_type = '$outsourcer_type', + install_outsourcer = '$install_outsourcer', + install_outsourcer_owner = '$install_outsourcer_owner', + install_outsourcer_date = '$install_outsourcer_date', + install_outsourcer_date_owner = '$install_outsourcer_date_owner', + estimate_install_start_date = '$estimate_install_start_date', + estimate_install_start_date_owner = '$estimate_install_start_date_owner', + estimate_install_end_date = '$estimate_install_end_date', + estimate_install_end_date_owner = '$estimate_install_end_date_owner', + tryrun_outsourcer = '$tryrun_outsourcer', + tryrun_outsourcer_owner = '$tryrun_outsourcer_owner', + tryrun_outsourcer_date = '$tryrun_outsourcer_date', + tryrun_outsourcer_date_owner = '$tryrun_outsourcer_date_owner', + estimate_tryrun_start_date = '$estimate_tryrun_start_date', + estimate_tryrun_start_date_owner = '$estimate_tryrun_start_date_owner', + estimate_tryrun_end_date = '$estimate_tryrun_end_date', + estimate_tryrun_end_date_owner = '$estimate_tryrun_end_date_owner', + warehouse_assistant_remark = '$warehouse_assistant_remark', + "; if (!empty($plan_diagram_file)) { $updatesql .= "plan_diagram_file = '$plan_diagram_file', "; @@ -823,6 +825,8 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach ($_POST as $k => $v) $$k = htmlspecialchars(stripslashes(trim($v))); + $change_all_contractno = $_POST['change_all_contractno']; + $contractno = $_POST['contractno2']; $install_start_date = $_POST['install_start_date']; $install_start_date_owner = $_POST['install_start_date_owner']; $install_end_date = $_POST['install_end_date']; @@ -843,8 +847,12 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { tryrun_start_date_owner = '$tryrun_start_date_owner', tryrun_end_date = '$tryrun_end_date', tryrun_end_date_owner = '$tryrun_end_date_owner' - WHERE id = '$id' "; + if (empty($change_all_contractno)) { + $updatesql .= "WHERE id = '$id' "; + } else { + $updatesql .= "WHERE contractno = '$contractno' "; + } // echo $updatesql; // exit; mysqli_query($link, $updatesql); diff --git a/wms/wipwhole-rec-invoice-edit.php b/wms/wipwhole-rec-invoice-edit.php index 945ef6ec..c4398a84 100644 --- a/wms/wipwhole-rec-invoice-edit.php +++ b/wms/wipwhole-rec-invoice-edit.php @@ -1,5 +1,5 @@ 合約號 - " > + " > 移交日
- > + > - +
@@ -507,10 +508,10 @@ include "wipwhole-rec-invoice-edit-submit.php"; if (checkNowFormYDStatus($link) == 'A' && ($user_department_id == 220 || $user_department_id == 311 || $user_department_id == 312 || $user_department_id == 313 || $user_department_id == 314 || $user_department_id == 315)) { ?> - + @@ -953,8 +954,11 @@ include "wipwhole-rec-invoice-edit-submit.php"; 存檔"; + echo ""; + echo ""; + } ?> @@ -1337,17 +1341,20 @@ include "wipwhole-rec-invoice-edit-submit.php"; 發包類型 - + /> - + /> - + /> - - + + @@ -1356,7 +1363,7 @@ include "wipwhole-rec-invoice-edit-submit.php"; 安裝發包廠商 - /> + /> 確認人 @@ -1423,7 +1430,7 @@ include "wipwhole-rec-invoice-edit-submit.php"; 試車發包廠商 - /> + /> 確認人 @@ -1546,6 +1553,8 @@ include "wipwhole-rec-invoice-edit-submit.php";
+ + @@ -1897,15 +1906,33 @@ include "wipwhole-rec-invoice-edit-submit.php"; function saveInstallData() { if (confirm('確定要更改實際安裝日程嗎?') == true) { - $("#install_start_date").val($("#install_start_date_tmp").val()); - $("#install_start_date_owner").val($("#install_start_date_owner_tmp").val()); - $("#install_end_date").val($("#install_end_date_tmp").val()); - $("#install_end_date_owner").val($("#install_end_date_owner_tmp").val()); - $("#tryrun_start_date").val($("#tryrun_start_date_tmp").val()); - $("#tryrun_start_date_owner").val($("#tryrun_start_date_owner_tmp").val()); - $("#tryrun_end_date").val($("#tryrun_end_date_tmp").val()); - $("#tryrun_end_date_owner").val($("#tryrun_end_date_owner_tmp").val()); - $('#update_install_date_form').submit(); + if ($("#change_all_contractno_tmp").prop('checked')) { + if ($("#contractno").val() == '' || $("#contractno").val() == null) { + alert("合約號空白"); + } else { + $("#change_all_contractno").val($("#change_all_contractno_tmp").prop('checked')); + $("#contractno2").val($("#contractno").val()); + $("#install_start_date").val($("#install_start_date_tmp").val()); + $("#install_start_date_owner").val($("#install_start_date_owner_tmp").val()); + $("#install_end_date").val($("#install_end_date_tmp").val()); + $("#install_end_date_owner").val($("#install_end_date_owner_tmp").val()); + $("#tryrun_start_date").val($("#tryrun_start_date_tmp").val()); + $("#tryrun_start_date_owner").val($("#tryrun_start_date_owner_tmp").val()); + $("#tryrun_end_date").val($("#tryrun_end_date_tmp").val()); + $("#tryrun_end_date_owner").val($("#tryrun_end_date_owner_tmp").val()); + $('#update_install_date_form').submit(); + } + } else { + $("#install_start_date").val($("#install_start_date_tmp").val()); + $("#install_start_date_owner").val($("#install_start_date_owner_tmp").val()); + $("#install_end_date").val($("#install_end_date_tmp").val()); + $("#install_end_date_owner").val($("#install_end_date_owner_tmp").val()); + $("#tryrun_start_date").val($("#tryrun_start_date_tmp").val()); + $("#tryrun_start_date_owner").val($("#tryrun_start_date_owner_tmp").val()); + $("#tryrun_end_date").val($("#tryrun_end_date_tmp").val()); + $("#tryrun_end_date_owner").val($("#tryrun_end_date_owner_tmp").val()); + $('#update_install_date_form').submit(); + } } } @@ -1955,7 +1982,9 @@ include "wipwhole-rec-invoice-edit-submit.php"; } } else { const errrMessage = { - '2': '請選擇發包種類' + '2': '請選擇發包種類', + '3': '樓停未填寫', + '4': '預計交期(到工地)未填寫' } if ((errrMessage[getSetOutSourcerDateStatus()] !== 'undefined')) { alert(errrMessage[getSetOutSourcerDateStatus()]); @@ -1975,7 +2004,15 @@ include "wipwhole-rec-invoice-edit-submit.php"; if (typeof outsourcer_type == 'undefined') return 2; - return 0; + if (typeof numberofstop == 'undefined') + return 3; + if (numberofstop == 0 || numberofstop == '' || numberofstop == '0') + return 3; + if (typeof real_contract_arrival_date == 'undefined') + return 4; + if (real_contract_arrival_date == 0 || real_contract_arrival_date == '' || real_contract_arrival_date == '0') + return 4; + return 1; } diff --git a/wms/wipwhole-rec-invoice.php b/wms/wipwhole-rec-invoice.php index 787a92d6..033a370c 100644 --- a/wms/wipwhole-rec-invoice.php +++ b/wms/wipwhole-rec-invoice.php @@ -542,7 +542,7 @@ if ($department_id == "321" || $department_id == "220") { '$facility_kind', '$address', '$contract_arrival_date', - '$real_contract_arrival_date', + '$contract_arrival_date', '$sales_spec_verify', '$sales_spec_verify_file', '$sales_spec_verify_at', @@ -772,10 +772,10 @@ if ($department_id == "321" || $department_id == "220") { - 預計交期
(到工地) + 工地負責人 diff --git a/wms/wipwhole-rec-renovate-invoice.php b/wms/wipwhole-rec-renovate-invoice.php index 6878f90a..1550676d 100644 --- a/wms/wipwhole-rec-renovate-invoice.php +++ b/wms/wipwhole-rec-renovate-invoice.php @@ -540,7 +540,7 @@ if ($department_id == "321" || $department_id == "220") { '$facility_kind', '$address', '$contract_arrival_date', - '$real_contract_arrival_date', + '$contract_arrival_date', '$sales_spec_verify', '$sales_spec_verify_file', '$sales_spec_verify_at', @@ -771,10 +771,10 @@ if ($department_id == "321" || $department_id == "220") { - 預計交期
(到工地) + 工地負責人 diff --git a/wms/wipwhole-renovate-rec-invoice-edit-submit.php b/wms/wipwhole-renovate-rec-invoice-edit-submit.php index 17c21cb5..a7133eb6 100644 --- a/wms/wipwhole-renovate-rec-invoice-edit-submit.php +++ b/wms/wipwhole-renovate-rec-invoice-edit-submit.php @@ -94,6 +94,7 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { $old_site_survey_contact_verify = $_POST['old_site_survey_contact_verify']; // 工務助理 + $outsourcer_type = $_POST['outsourcer_type']; $install_outsourcer = $_POST['install_outsourcer']; $install_outsourcer_owner = $_POST['install_outsourcer_owner']; $install_outsourcer_date = $_POST['install_outsourcer_date']; @@ -491,24 +492,25 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { // 工務助理 if (in_array($user_id, ['M0164', 'M0165', 'M0127', 'M0193', 'M0170', 'M0188'])) { $updatesql .= " - install_outsourcer = '$install_outsourcer', - install_outsourcer_owner = '$install_outsourcer_owner', - install_outsourcer_date = '$install_outsourcer_date', - install_outsourcer_date_owner = '$install_outsourcer_date_owner', - estimate_install_start_date = '$estimate_install_start_date', - estimate_install_start_date_owner = '$estimate_install_start_date_owner', - estimate_install_end_date = '$estimate_install_end_date', - estimate_install_end_date_owner = '$estimate_install_end_date_owner', - tryrun_outsourcer = '$tryrun_outsourcer', - tryrun_outsourcer_owner = '$tryrun_outsourcer_owner', - tryrun_outsourcer_date = '$tryrun_outsourcer_date', - tryrun_outsourcer_date_owner = '$tryrun_outsourcer_date_owner', - estimate_tryrun_start_date = '$estimate_tryrun_start_date', - estimate_tryrun_start_date_owner = '$estimate_tryrun_start_date_owner', - estimate_tryrun_end_date = '$estimate_tryrun_end_date', - estimate_tryrun_end_date_owner = '$estimate_tryrun_end_date_owner', - warehouse_assistant_remark = '$warehouse_assistant_remark', - "; + outsourcer_type = '$outsourcer_type', + install_outsourcer = '$install_outsourcer', + install_outsourcer_owner = '$install_outsourcer_owner', + install_outsourcer_date = '$install_outsourcer_date', + install_outsourcer_date_owner = '$install_outsourcer_date_owner', + estimate_install_start_date = '$estimate_install_start_date', + estimate_install_start_date_owner = '$estimate_install_start_date_owner', + estimate_install_end_date = '$estimate_install_end_date', + estimate_install_end_date_owner = '$estimate_install_end_date_owner', + tryrun_outsourcer = '$tryrun_outsourcer', + tryrun_outsourcer_owner = '$tryrun_outsourcer_owner', + tryrun_outsourcer_date = '$tryrun_outsourcer_date', + tryrun_outsourcer_date_owner = '$tryrun_outsourcer_date_owner', + estimate_tryrun_start_date = '$estimate_tryrun_start_date', + estimate_tryrun_start_date_owner = '$estimate_tryrun_start_date_owner', + estimate_tryrun_end_date = '$estimate_tryrun_end_date', + estimate_tryrun_end_date_owner = '$estimate_tryrun_end_date_owner', + warehouse_assistant_remark = '$warehouse_assistant_remark', + "; if (!empty($plan_diagram_file)) { $updatesql .= "plan_diagram_file = '$plan_diagram_file', "; $updatesql .= " @@ -797,6 +799,8 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { foreach ($_POST as $k => $v) $$k = htmlspecialchars(stripslashes(trim($v))); + $change_all_contractno = $_POST['change_all_contractno']; + $contractno = $_POST['contractno2']; $install_start_date = $_POST['install_start_date']; $install_start_date_owner = $_POST['install_start_date_owner']; $install_end_date = $_POST['install_end_date']; @@ -817,8 +821,12 @@ if ($_SERVER["REQUEST_METHOD"] == "POST") { tryrun_start_date_owner = '$tryrun_start_date_owner', tryrun_end_date = '$tryrun_end_date', tryrun_end_date_owner = '$tryrun_end_date_owner' - WHERE id = '$id' "; + if (empty($change_all_contractno)) { + $updatesql .= "WHERE id = '$id' "; + } else { + $updatesql .= "WHERE contractno = '$contractno' "; + } // echo $updatesql; // exit; mysqli_query($link, $updatesql); diff --git a/wms/wipwhole-renovate-rec-invoice-edit.php b/wms/wipwhole-renovate-rec-invoice-edit.php index acba025d..a47ed372 100644 --- a/wms/wipwhole-renovate-rec-invoice-edit.php +++ b/wms/wipwhole-renovate-rec-invoice-edit.php @@ -99,7 +99,7 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; 合約號 - " > + " > 作番號 - " > + " > 汰改種類 - > @@ -134,21 +134,21 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; 合約交期
(到工地) - > + > 客戶名稱 - " > + " > 號機 - " > + " > 工地負責人 - " > + " > 預計交期(到工地)
@@ -158,21 +158,21 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; ?> - + 經度 - " > + " > 緯度 - " > + " > 地址 - " > + " > 工地地址
載重 - " > + " > 人乘 - " > + " > 樓停 - " > + " > 樓層 - " > + " > 機型 - " > + " > 開門方式 - > 速度 - " > + " > 簽核狀況 @@ -550,8 +550,11 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; 存檔"; + echo ""; + echo ""; + } ?> @@ -689,9 +692,9 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; 移交日
- > + > - +
@@ -1146,8 +1149,7 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; + + 發包類型 + + /> + + /> + + /> + + + + + + + 安裝發包廠商 - /> + /> 確認人 @@ -1402,7 +1426,7 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; 試車發包廠商 - /> + /> 確認人 @@ -1525,6 +1549,8 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php";
+ + @@ -1906,15 +1932,156 @@ include "wipwhole-renovate-rec-invoice-edit-submit.php"; function saveInstallData() { if (confirm('確定要更改實際安裝日程嗎?') == true) { - $("#install_start_date").val($("#install_start_date_tmp").val()); - $("#install_start_date_owner").val($("#install_start_date_owner_tmp").val()); - $("#install_end_date").val($("#install_end_date_tmp").val()); - $("#install_end_date_owner").val($("#install_end_date_owner_tmp").val()); - $("#tryrun_start_date").val($("#tryrun_start_date_tmp").val()); - $("#tryrun_start_date_owner").val($("#tryrun_start_date_owner_tmp").val()); - $("#tryrun_end_date").val($("#tryrun_end_date_tmp").val()); - $("#tryrun_end_date_owner").val($("#tryrun_end_date_owner_tmp").val()); - $('#update_install_date_form').submit(); + if ($("#change_all_contractno_tmp").prop('checked')) { + if ($("#contractno").val() == '' || $("#contractno").val() == null) { + alert("合約號空白"); + } else { + $("#change_all_contractno").val($("#change_all_contractno_tmp").prop('checked')); + $("#contractno2").val($("#contractno").val()); + $("#install_start_date").val($("#install_start_date_tmp").val()); + $("#install_start_date_owner").val($("#install_start_date_owner_tmp").val()); + $("#install_end_date").val($("#install_end_date_tmp").val()); + $("#install_end_date_owner").val($("#install_end_date_owner_tmp").val()); + $("#tryrun_start_date").val($("#tryrun_start_date_tmp").val()); + $("#tryrun_start_date_owner").val($("#tryrun_start_date_owner_tmp").val()); + $("#tryrun_end_date").val($("#tryrun_end_date_tmp").val()); + $("#tryrun_end_date_owner").val($("#tryrun_end_date_owner_tmp").val()); + $('#update_install_date_form').submit(); + } + } else { + $("#install_start_date").val($("#install_start_date_tmp").val()); + $("#install_start_date_owner").val($("#install_start_date_owner_tmp").val()); + $("#install_end_date").val($("#install_end_date_tmp").val()); + $("#install_end_date_owner").val($("#install_end_date_owner_tmp").val()); + $("#tryrun_start_date").val($("#tryrun_start_date_tmp").val()); + $("#tryrun_start_date_owner").val($("#tryrun_start_date_owner_tmp").val()); + $("#tryrun_end_date").val($("#tryrun_end_date_tmp").val()); + $("#tryrun_end_date_owner").val($("#tryrun_end_date_owner_tmp").val()); + $('#update_install_date_form').submit(); + } + } + } + + + function setOutSourcerDate() { + + // 發包類型 + let outsourcer_type = $("input[name^='outsourcer_type']:checked").val(); + // 預計出貨日(到工地) + let real_contract_arrival_date = $("#real_contract_arrival_date").val(); + // 樓停 + let numberofstop = $("#numberofstop").val(); + // 目前操作者 + let user_id = ''; + + if (getSetOutSourcerDateStatus() == '1') { + if (outsourcer_type === 'I') { + resetTOutSourcerDate(); + $("#estimate_install_start_date").val(dateAddDays(real_contract_arrival_date, 5)); + $("#estimate_install_start_date_owner").val(user_id); + $("#estimate_install_end_date").val( + dateAddDays($("#estimate_install_start_date").val(), specificationDayFormula(numberofstop)) + ); + $("#estimate_install_end_date_owner").val(user_id); + } + if (outsourcer_type === 'T') { + resetIOutSourcerDate(); + $("#estimate_tryrun_start_date").val(dateAddDays(real_contract_arrival_date, 5)); + $("#estimate_tryrun_start_date_owner").val(user_id); + $("#estimate_tryrun_end_date").val( + dateAddDays($("#estimate_tryrun_start_date").val(), specificationDayFormula(numberofstop)) + ); + $("#estimate_tryrun_end_date_owner").val(user_id); + } + if (outsourcer_type === 'IT') { + $("#estimate_install_start_date").val(dateAddDays(real_contract_arrival_date, 5)); + $("#estimate_install_start_date_owner").val(user_id); + $("#estimate_install_end_date").val( + dateAddDays($("#estimate_install_start_date").val(), specificationDayFormula(numberofstop)) + ); + $("#estimate_install_end_date_owner").val(user_id); + $("#estimate_tryrun_start_date").val(dateAddDays($("#estimate_install_end_date").val(), 1)); + $("#estimate_tryrun_start_date_owner").val(user_id); + $("#estimate_tryrun_end_date").val( + dateAddDays($("#estimate_tryrun_start_date").val(), specificationDayFormula(numberofstop)) + ); + $("#estimate_tryrun_end_date_owner").val(user_id); + } + } else { + const errrMessage = { + '2': '請選擇發包種類', + '3': '樓停未填寫', + '4': '預計交期(到工地)未填寫' + } + if ((errrMessage[getSetOutSourcerDateStatus()] !== 'undefined')) { + alert(errrMessage[getSetOutSourcerDateStatus()]); + } else { + alert("不明錯誤"); + } + } + + } + + function getSetOutSourcerDateStatus() { + let outsourcer_type = $("input[name^='outsourcer_type']:checked").val(); + let real_contract_arrival_date = $("#real_contract_arrival_date").val(); + let numberofstop = $("#numberofstop").val(); + let user_id = ''; + + if (typeof outsourcer_type == 'undefined') + return 2; + if (typeof numberofstop == 'undefined') + return 3; + if (numberofstop == 0 || numberofstop == '' || numberofstop == '0') + return 3; + if (typeof real_contract_arrival_date == 'undefined') + return 4; + if (real_contract_arrival_date == 0 || real_contract_arrival_date == '' || real_contract_arrival_date == '0') + return 4; + return 1; + + } + + function resetIOutSourcerDate() { + $("#estimate_install_start_date").val(""); + $("#estimate_install_end_date").val(""); + } + + function resetTOutSourcerDate() { + $("#estimate_tryrun_start_date").val(""); + $("#estimate_tryrun_end_date").val(""); + } + + + function resetAllOutSourcerDate() { + resetIOutSourcerDate(); + resetTOutSourcerDate(); + } + + function specificationDayFormula(numberofstop) { + if (numberofstop > 0 && numberofstop <= 7) + return 7; + if (numberofstop > 7 && numberofstop < 14) + return numberofstop; + if (numberofstop >= 14) + return 14; + return 0 + } + + function dateAddDays(dateString, daysToAdd = 0) { + daysToAdd = Number(daysToAdd); + // 將日期字串轉換為日期物件 + var initialDate = new Date(dateString); + // 增加指定天數 + initialDate.setDate(initialDate.getDate() + daysToAdd); + + // 將結果轉換為所需的日期格式(例如:yyyy-mm-dd) + var year = initialDate.getFullYear(); + var month = String(initialDate.getMonth() + 1).padStart(2, "0"); // 月份從0開始,需要加1 + var day = String(initialDate.getDate()).padStart(2, "0"); + var resultDateString = year + "-" + month + "-" + day; + + return resultDateString; } \ No newline at end of file diff --git a/wms/wipwholeinstall-index-function.php b/wms/wipwholeinstall-index-function.php index 2596cf3d..fea088b3 100644 --- a/wms/wipwholeinstall-index-function.php +++ b/wms/wipwholeinstall-index-function.php @@ -1051,3 +1051,100 @@ function getShengguanokOptions($link) "; return mysqli_query($link, $sql); } + +function warningMessage($data) +{ + $waringMessageArr = array( + '1' => '', + '2' => '沒有預計出貨日(到工地)', + '3' => '有實際完工工日,實際開工日未填寫', + '4' => '有實際完工工日,未填寫QC日', + '5' => '有實際完工工日,移交日未填寫', + '6' => '官檢日未填寫', + '7' => '官檢日不在移交日的60天內', + '8' => '移交日不是實際完工日+14天', + ); + if (getWarningMessageStatus($data) !== 1) + return $waringMessageArr[getWarningMessageStatus($data)]; + return ""; +} + +function getWarningMessageStatus($data) +{ + $real_contract_arrival_date = $data['real_contract_arrival_date']; + + $install_start_date = $data['install_start_date']; + $install_end_date = $data['install_end_date']; + $tryrun_start_date = $data['tryrun_start_date']; + $tryrun_end_date = $data['tryrun_end_date']; + $tryrun_end_date_owner = $data['tryrun_end_date_owner']; + $estimate_install_start_date = $data['estimate_install_start_date']; + $estimate_install_end_date = $data['estimate_install_end_date']; + $estimate_tryrun_start_date = $data['estimate_tryrun_start_date']; + $estimate_tryrun_end_date = $data['estimate_tryrun_end_date']; + $official_check_date = $data['official_check_date']; + $delivery_date = $data['delivery_date']; + $qc_date = $data['qc_date']; + $end_qc_date = $data['end_qc_date']; + + // 有任何開工/完工日期,卻沒有預計出貨日(到工地) + if (empty($real_contract_arrival_date)) { + $tmp_arr = [ + 'install_start_date', + 'install_end_date', + 'tryrun_start_date', + 'tryrun_end_date', + 'tryrun_end_date_owner', + 'estimate_install_start_date', + 'estimate_install_end_date', + 'estimate_tryrun_start_date', + 'estimate_tryrun_end_date' + ]; + foreach ($tmp_arr as $row) { + if (!empty($data[$row])) { + return "2"; + } + } + } + // 有實際完工日,要有實際開工日 + if (!empty($install_end_date)) { + if (empty($install_start_date)) + return "3"; + } + if (!empty($tryrun_end_date)) { + if (empty($tryrun_start_date)) + return "3"; + } + // 有實際完工工日,要有QC日 + if (!empty($install_end_date) || !empty($tryrun_end_date)) { + if (empty($qc_date) && empty($end_qc_date)) + return "4"; + } + // 有實際完工工日,移交日未填寫 + if (!empty($install_end_date) || !empty($tryrun_end_date)) { + if (empty($delivery_date)) { + return "5"; + } + } + // 有移交日,官檢日未填寫 + if (!empty($delivery_date)) { + if (empty($official_check_date)) + return "6"; + } + + // 有移交日,官檢日若不是移交日+60日 + // if (!empty($delivery_date) && !empty($official_check_date)) { + // $date = floor((strtotime($official_check_date) - strtotime($delivery_date)) / 86400); + // if ($date <= 0 || $date > 60) + // return "7"; + // } + + // 有實際完工工日,移交日若不是實際完工日+14天 + // if (!empty($install_end_date) || !empty($tryrun_end_date)) { + // $date = floor((strtotime($install_end_date) - strtotime($delivery_date)) / 86400); + // if ($date <= 0 || $date > 14) + // return "5"; + // } + + return "1"; +} diff --git a/wms/wipwholeinstall-index-table-html.php b/wms/wipwholeinstall-index-table-html.php index 5cfe2e93..4a262fac 100644 --- a/wms/wipwholeinstall-index-table-html.php +++ b/wms/wipwholeinstall-index-table-html.php @@ -5,6 +5,7 @@ 客戶姓名 合約地址 地工地址 + 警示 預計出貨日 發包廠商(工勘) 發包日期(工勘) @@ -54,6 +55,7 @@ + $val) { diff --git a/wms/wipwholeinstall-renovate-index-function.php b/wms/wipwholeinstall-renovate-index-function.php index 58f48d6d..36aa79bf 100644 --- a/wms/wipwholeinstall-renovate-index-function.php +++ b/wms/wipwholeinstall-renovate-index-function.php @@ -230,7 +230,7 @@ function getDataSql($department_id, $role_id, $user_id) AND status = '1' AND contract_type = '$contract_type' " . getWipwholeSearchSql() . " - AND SUBSTR(address,1,2) in ('台南','臺南','嘉義','屏東','高雄') + AND SUBSTR(address,1,2) in ('宜蘭','花蓮','台東','臺東') ORDER BY real_contract_arrival_date DESC "; return $sql; @@ -1072,3 +1072,101 @@ function getShengguanokOptions($link) "; return mysqli_query($link, $sql); } + + +function warningMessage($data) +{ + $waringMessageArr = array( + '1' => '', + '2' => '沒有預計出貨日(到工地)', + '3' => '有實際完工工日,實際開工日未填寫', + '4' => '有實際完工工日,未填寫QC日', + '5' => '有實際完工工日,移交日未填寫', + '6' => '官檢日未填寫', + '7' => '官檢日不在移交日的60天內', + '8' => '移交日不是實際完工日+14天', + ); + if (getWarningMessageStatus($data) !== 1) + return $waringMessageArr[getWarningMessageStatus($data)]; + return ""; +} + +function getWarningMessageStatus($data) +{ + $real_contract_arrival_date = $data['real_contract_arrival_date']; + + $install_start_date = $data['install_start_date']; + $install_end_date = $data['install_end_date']; + $tryrun_start_date = $data['tryrun_start_date']; + $tryrun_end_date = $data['tryrun_end_date']; + $tryrun_end_date_owner = $data['tryrun_end_date_owner']; + $estimate_install_start_date = $data['estimate_install_start_date']; + $estimate_install_end_date = $data['estimate_install_end_date']; + $estimate_tryrun_start_date = $data['estimate_tryrun_start_date']; + $estimate_tryrun_end_date = $data['estimate_tryrun_end_date']; + $official_check_date = $data['official_check_date']; + $delivery_date = $data['delivery_date']; + $qc_date = $data['qc_date']; + $end_qc_date = $data['end_qc_date']; + + // 有任何開工/完工日期,卻沒有預計出貨日(到工地) + if (empty($real_contract_arrival_date)) { + $tmp_arr = [ + 'install_start_date', + 'install_end_date', + 'tryrun_start_date', + 'tryrun_end_date', + 'tryrun_end_date_owner', + 'estimate_install_start_date', + 'estimate_install_end_date', + 'estimate_tryrun_start_date', + 'estimate_tryrun_end_date' + ]; + foreach ($tmp_arr as $row) { + if (!empty($data[$row])) { + return "2"; + } + } + } + // 有實際完工日,要有實際開工日 + if (!empty($install_end_date)) { + if (empty($install_start_date)) + return "3"; + } + if (!empty($tryrun_end_date)) { + if (empty($tryrun_start_date)) + return "3"; + } + // 有實際完工工日,要有QC日 + if (!empty($install_end_date) || !empty($tryrun_end_date)) { + if (empty($qc_date) && empty($end_qc_date)) + return "4"; + } + // 有實際完工工日,移交日未填寫 + if (!empty($install_end_date) || !empty($tryrun_end_date)) { + if (empty($delivery_date)) { + return "5"; + } + } + // 有移交日,官檢日未填寫 + if (!empty($delivery_date)) { + if (empty($official_check_date)) + return "6"; + } + + // 有移交日,官檢日若不是移交日+60日 + // if (!empty($delivery_date) && !empty($official_check_date)) { + // $date = floor((strtotime($official_check_date) - strtotime($delivery_date)) / 86400); + // if ($date <= 0 || $date > 60) + // return "7"; + // } + + // 有實際完工工日,移交日若不是實際完工日+14天 + // if (!empty($install_end_date) || !empty($tryrun_end_date)) { + // $date = floor((strtotime($install_end_date) - strtotime($delivery_date)) / 86400); + // if ($date <= 0 || $date > 14) + // return "5"; + // } + + return "1"; +} diff --git a/wms/wipwholeinstall-renovate-index-table-html.php b/wms/wipwholeinstall-renovate-index-table-html.php index c87fc54f..7846457c 100644 --- a/wms/wipwholeinstall-renovate-index-table-html.php +++ b/wms/wipwholeinstall-renovate-index-table-html.php @@ -6,6 +6,7 @@ 客戶姓名 合約地址 地工地址 + 警示 預計出貨日 發包廠商(工勘) 發包日期(工勘) @@ -37,6 +38,7 @@ + $val) {