$id, 'all_contractno_change' => $all_contractno_change, 'real_contract_arrival_date' => $real_contract_arrival_date, 'contract_arrival_date' => $contract_arrival_date, 'real_address' => $real_address, 'old_real_address' => $old_real_address, 'contractno' => $contractno, 'tds' => $tds, 'form_key' => getFomkeySeq($link), 'user_id' => $user_id, 'change_status' => $_POST['assign_status'] ); // 寫入表單主檔 addWipwholeChangeContractdateDetails($link, $data_arr); // 取得寫入後表單seq $data_arr['last_id'] = $link->insert_id; // 寫入待簽 addFlow($link, $data_arr); $data_arr['seq'] = '0'; $data_arr['current_assigner'] = $user_id; addSubflow($link, $data_arr); $data_arr['seq'] = '1'; $data_arr['current_assigner'] = $next_users; addSubflow($link, $data_arr); } // 批次申請 if (($_POST['assign_status'] == 'A' || $_POST['assign_status'] == 'B') && !empty($all_contractno_change)) { $wipwholestatus_id_arr = getWipwholestatusIdByConstractNo($link, $contractno); foreach ($wipwholestatus_id_arr as $wipwholestatus_id) { $data_arr = array( 'id' => $wipwholestatus_id[0], 'all_contractno_change' => $all_contractno_change, 'real_contract_arrival_date' => $real_contract_arrival_date, 'contract_arrival_date' => $contract_arrival_date, 'real_address' => $real_address, 'old_real_address' => $old_real_address, 'contractno' => $contractno, 'tds' => $tds, 'form_key' => getFomkeySeq($link), 'user_id' => $user_id ); // 寫入表單主檔 addWipwholeChangeContractdateDetails($link, $data_arr); // 取得寫入後表單seq $data_arr['last_id'] = $link->insert_id; // 寫入待簽 addFlow($link, $data_arr); $data_arr['seq'] = '0'; $data_arr['current_assigner'] = $user_id; addSubflow($link, $data_arr); $data_arr['seq'] = '1'; $data_arr['current_assigner'] = $next_users; addSubflow($link, $data_arr); } } } } // 單次申請 營業 if ($_POST['assign_status'] == 'D') { $tds = date("Y-m-d H:i:s"); $next_users = $_POST['next_users']; $seq = $_POST['seq']; $sql = " UPDATE wipwhole_change_contractdate_details SET change_status = 'D' WHERE id = '$cid' "; mysqli_query($link, $sql); $sql = " UPDATE flow SET flow_code = 'D' WHERE form_key = '$form_key' "; mysqli_query($link, $sql); $sql = " INSERT into subflow ( form_key, seq, current_assigner, create_date ) VALUES ( '$form_key', '2', '$next_users', '$tds' ) "; mysqli_query($link, $sql); } // 取消 if ($_POST['assign_status'] == 'C') { $tds = date("Y-m-d H:i:s"); $next_users = "00000"; if (accountidToDepartId($user_id) == "250" && in_array(accountidToRoleId($user_id), ["1", "4"])) { if (getChangeStatus($link, $cid) == 'D' || getChangeStatus($link, $cid) == 'A') { $seq = $_POST['seq']; } $sql = " INSERT into subflow ( form_key, seq, current_assigner, create_date ) VALUES ( '$form_key', '$seq', '$next_users', '$tds' ) "; mysqli_query($link, $sql); } else if (accountidToDepartId($user_id) == "521" || accountidToDepartId($user_id) == "531") { if (getChangeStatus($link, $cid) == 'D') { $sql = " UPDATE subflow SET current_assigner = '$next_users', create_date = '$tds' WHERE form_key = '$form_key' AND seq = '$seq' "; mysqli_query($link, $sql); } else if (getChangeStatus($link, $cid) == 'A') { $seq = $_POST['seq']; $sql = " UPDATE subflow SET current_assigner = '$next_users', create_date = '$tds' WHERE form_key = '$form_key' AND seq = '$seq' "; mysqli_query($link, $sql); } else { $seq = $_POST['seq']; $sql = " INSERT into subflow ( form_key, seq, current_assigner, create_date ) VALUES ( '$form_key', '$seq', '$next_users', '$tds' ) "; mysqli_query($link, $sql); } } else { $seq = $_POST['seq']; $sql = " UPDATE subflow SET current_assigner = '$next_users', create_date = '$tds' WHERE form_key = '$form_key' AND seq = '$seq' "; mysqli_query($link, $sql); } $sql = " UPDATE wipwhole_change_contractdate_details SET change_status = 'C' WHERE id = '$cid' "; mysqli_query($link, $sql); $sql = " UPDATE flow SET flow_code = 'Z' WHERE form_key = '$form_key' "; mysqli_query($link, $sql); } // 通過 if ($_POST['assign_status'] == 'Z') { $contract_arrival_date_tmp = empty($contract_arrival_date) ? $real_contract_arrival_date : $contract_arrival_date; $real_address_tmp = empty($real_address) ? $old_real_address : $real_address; if (accountidToDepartId($user_id) == "250" && in_array(accountidToRoleId($user_id), ["1", "4"])) { $tds = date("Y-m-d H:i:s"); $next_users = $_POST['next_users']; $seq = $_POST['seq'] + 1; $sql = " UPDATE wipwhole_change_contractdate_details SET change_status = 'Z' WHERE id = '$cid' "; mysqli_query($link, $sql); $sql = " UPDATE flow SET flow_code = 'Z' WHERE form_key = '$form_key' "; mysqli_query($link, $sql); $sql = " INSERT into subflow ( form_key, seq, current_assigner, create_date ) VALUES ( '$form_key', '$seq', '$next_users', '$tds' ) "; mysqli_query($link, $sql); $sql = " UPDATE wipwholestatus SET real_contract_arrival_date = '$contract_arrival_date_tmp', real_address = '$real_address_tmp' WHERE id = '$id' "; mysqli_query($link, $sql); // 發送系統通知 $contractno = $_POST['contractno']; $facilityno = $_POST['facilityno']; $real_contract_arrival_date = $_POST['real_contract_arrival_date']; $salesid = $_POST['salesid']; $gongWuokid = $_POST['gongWuokid']; $old_real_address = $_POST['old_real_address']; $real_address = $_POST['real_address']; $content = "合約號 : $contractno 作番號 : $facilityno 出貨日期微調: " . substr($real_contract_arrival_date, 0, 10) . " => " . substr($contract_arrival_date_tmp, 0, 10) . " 工地地址微調: " . $old_real_address . " => " . $real_address_tmp; // 大日程出貨日調整 通知營業人員 $noticeData = array( 'related_id' => $cid, 'title' => '作番大日程(新梯)出貨日調整通知 > ' . $facilityno, 'content' => $content, 'permission' => $salesid, ); addNotice($link, $noticeData); // 大日程出貨日調整 通知工務人員 $noticeData = array( 'related_id' => $cid, 'title' => '作番大日程(新梯)出貨日調整通知 > ' . $facilityno, 'content' => $content, 'permission' => $gongWuokid, ); addNotice($link, $noticeData); $shengguano_arr = getShengguanokOptions($link); foreach ($shengguano_arr as $row) : $contractno = $_POST['contractno']; $facilityno = $_POST['facilityno']; $real_contract_arrival_date = $_POST['real_contract_arrival_date']; $gongWuokid = $_POST['gongWuokid']; $old_real_address = $_POST['old_real_address']; $real_address = $_POST['real_address']; $content = "合約號 : $contractno 作番號 : $facilityno 出貨日期微調: " . substr($real_contract_arrival_date, 0, 10) . " => " . substr($contract_arrival_date_tmp, 0, 10) . " 工地地址微調: " . $old_real_address . " => " . $real_address_tmp; // 大日程出貨日調整 通知營業人員 $noticeData = array( 'related_id' => $cid, 'title' => '作番大日程(新梯)出貨日調整通知 > ' . $facilityno, 'content' => $content, 'permission' => $row['val'], ); addNotice($link, $noticeData); endforeach; } } }