Browse Source

merge main

gary
Cheng 1 year ago
parent
commit
3c66b11f2f
  1. 0
      wms/T8-purReceive-submit.php
  2. 0
      wms/T8-purchase-submit.php
  3. 8
      wms/T8_Authorization.php
  4. 6
      wms/T8_Authorization_from_bpm.php
  5. BIN
      wms/WriteOff.xlsx
  6. 174
      wms/account-receivable-index-ing.php
  7. 24
      wms/account-receivable-index.php
  8. 773
      wms/account-receivable-renovate-index-ing.php
  9. 115
      wms/account-receivable-renovate-index.php
  10. 2
      wms/contract-repair/prviewPdf.php
  11. 2
      wms/contract/js/alpine.js
  12. BIN
      wms/contract/mi/mi7.xlsx
  13. 2
      wms/contract/prviewPdf.php
  14. 32
      wms/fun_global.php
  15. 6
      wms/mkt/assets/js/alpine.js
  16. 5
      wms/mkt/assets/js/alpinejs/cdn.min.js
  17. 7
      wms/mkt/assets/js/pricereviewAlpine.js
  18. 10
      wms/mkt/conn.php
  19. 90
      wms/mkt/css/pricereview.css
  20. 1
      wms/mkt/css/pricereview.css.map
  21. 98
      wms/mkt/css/pricereview.scss
  22. 4
      wms/mkt/price_option-index.php
  23. 4
      wms/mkt/price_option-select.php
  24. 3
      wms/mkt/pricereview-check.php
  25. 25
      wms/mkt/pricereview-create.php
  26. 12
      wms/mkt/pricereview-index.php
  27. 516
      wms/mkt/pricereviewCreate.php
  28. 9
      wms/mkt/pricereview_mi-api.php
  29. 3
      wms/rib01-check.php
  30. 22
      wms/rib01-edit.php
  31. 150
      wms/rib01-index.php
  32. 2
      wms/rib02-create.php
  33. 109
      wms/rib02-edit.php
  34. 18
      wms/rib02-submit.php
  35. 44
      wms/schedule-index.php

0
wms/rib02-purReceive-submit.php → wms/T8-purReceive-submit.php

0
wms/rib02-purchase-submit.php → wms/T8-purchase-submit.php

8
wms/T8_Authorization.php

@ -14,12 +14,13 @@ $sign = hash_hmac('SHA256', $data, 'B2D6395D2883E26C', false);
var validation = ""; var validation = "";
// var corsurl = 'http://cors-anywhere.herokuapp.com/'; // var corsurl = 'http://cors-anywhere.herokuapp.com/';
// var apiurl = 'http://60.244.87.101:880//twWebAPI/GetAuth'; // var apiurl = 'http://60.244.87.101:880//twWebAPI/GetAuth';
var apiurl = 'https://erp.masada.com.tw:780/twWebAPI/GetAuth' // var apiurl = 'https://erp.masada.com.tw:780/twWebAPI/GetAuth'
headerParam = { headerParam = {
UserId: 'M0000', UserId: 'M0000',
Pwd: 'M012290493119', Pwd: 'M012290493119',
TimestampUTC: <?= $now ?>, TimestampUTC: <?= $now ?>,
Sign: '<?= $sign ?>' Sign: '<?= $sign ?>',
GroupId: 'TEST',
}; };
obj = { obj = {
type: 'get', type: 'get',
@ -30,7 +31,7 @@ $sign = hash_hmac('SHA256', $data, 'B2D6395D2883E26C', false);
success: function(res) { success: function(res) {
validation = res.Data['CHI_Authorization']; validation = res.Data['CHI_Authorization'];
console.log(validation); console.log(validation);
// console.log(res); console.log(res);
// console.log() // console.log()
// window.parent.postMessage(validation,'http://localhost:3000'); // window.parent.postMessage(validation,'http://localhost:3000');
// window.parent.postMessage(validation,'https://masada.com.tw'); // window.parent.postMessage(validation,'https://masada.com.tw');
@ -40,4 +41,5 @@ $sign = hash_hmac('SHA256', $data, 'B2D6395D2883E26C', false);
jQuery.ajax(obj); jQuery.ajax(obj);
// return jQuery.ajax(obj); // return jQuery.ajax(obj);
} }
get_Auth();
</script> </script>

6
wms/T8_Authorization_from_bpm.php

@ -24,11 +24,13 @@ function get_Auth($user_id = "M0000", $user_password = "M012290493119")
// $apiurl = 'http://10.10.145.2:880//twWebAPI/GetAuth'; // $apiurl = 'http://10.10.145.2:880//twWebAPI/GetAuth';
// $apiurl = 'https://erp.masada.com.tw:780/twWebAPI/GetAuth'; // $apiurl = 'https://erp.masada.com.tw:780/twWebAPI/GetAuth';
//GroupId : TEST測試區 ; MASADA正式區
$headerParam = [ $headerParam = [
"UserId: $user_id", "UserId: $user_id",
"Pwd: $user_password", "Pwd: $user_password",
"TimestampUTC: $now", "TimestampUTC: $now",
"Sign: $sign" "Sign: $sign",
"GroupId: TEST"
]; ];
$ch = curl_init(); $ch = curl_init();
@ -51,4 +53,4 @@ function get_Auth($user_id = "M0000", $user_password = "M012290493119")
curl_close($ch); curl_close($ch);
} }
// $data = []; // $data = [];
// get_Auth(); get_Auth();

BIN
wms/WriteOff.xlsx

Binary file not shown.

174
wms/account-receivable-index-ing.php

@ -2158,9 +2158,14 @@ include "./footer.php";
//[合約號]['facility'] [作番號][款別]0 款項名稱 1 合約金額 2 應收日期 3 應收金額 4 已收金額 5 催收金額 6 催收次數 //[合約號]['facility'] [作番號][款別]0 款項名稱 1 合約金額 2 應收日期 3 應收金額 4 已收金額 5 催收金額 6 催收次數
?> ?>
<div>
<div style="width: 20%;float: right; margin-right: 5%;">
<label>查詢條件</label>
<input type="text" id="search" name="search" class="form-control" placeholder="請輸入合約號/作番號/客戶名稱" oninput="searchData()">
</div>
</div>
<div style="width:98%;margin:1% ;overflow-x: auto;"> <div style="width:98%;margin:1% ;overflow-x: auto;">
<table class="table table-striped table-bordered" style="width:100%;"> <table class="table table-striped table-bordered" style="width:100%;">
<thead> <thead>
<tr> <tr>
<th style="width: 120px;">合約號</th> <th style="width: 120px;">合約號</th>
@ -2180,7 +2185,7 @@ include "./footer.php";
<?php <?php
foreach ($arrayData as $key => $value) { foreach ($arrayData as $key => $value) {
?> ?>
<tr> <tr class="data-row" style="display: '';">
<td onclick="toggleContent(this)"><?= $key ?> </td> <td onclick="toggleContent(this)"><?= $key ?> </td>
<td><?= $value[1] ?></td> <td><?= $value[1] ?></td>
<td><?= $value[4] ?></td> <td><?= $value[4] ?></td>
@ -2246,6 +2251,21 @@ include "./footer.php";
</table> </table>
</div> </div>
<script> <script>
function searchData() {
var searchTerm = document.getElementById('search').value.toLowerCase();
var rows = document.getElementsByClassName('data-row');
for (var i = 0; i < rows.length; i++) {
var rowText = rows[i].textContent.toLowerCase();
// var rowText = rows[i].id.toLowerCase();
if (rowText.includes(searchTerm)) {
console.log(rowText);
rows[i].style.display = '';
} else {
rows[i].style.display = 'none';
}
}
}
function toggleContent(element) { function toggleContent(element) {
var parentRow = element.parentNode; var parentRow = element.parentNode;
var contentRow = parentRow.nextElementSibling; var contentRow = parentRow.nextElementSibling;
@ -2391,80 +2411,80 @@ $table = "";
// [合約號]['facility'][作番號]['no'] // [合約號]['facility'][作番號]['no']
//['receivable_budget'] / ['total_facility_num'] / ['total_budget'] //['receivable_budget'] / ['total_facility_num'] / ['total_budget']
//('sign', 'second', 'arrive', 'install', 'tryrun', 'check', 'delivery', 'final'); //('sign', 'second', 'arrive', 'install', 'tryrun', 'check', 'delivery', 'final');
foreach ($arrayData as $key => $value) { // foreach ($arrayData as $key => $value) {
if (isset($value['facility']) && !empty($value['facility'])) { // if (isset($value['facility']) && !empty($value['facility'])) {
foreach ($value['facility'] as $fakey => $facility) { // foreach ($value['facility'] as $fakey => $facility) {
foreach ($contractstage as $stage) { // foreach ($contractstage as $stage) {
switch ($stage) { // switch ($stage) {
case 'sign': // case 'sign':
$stageno = 0; // $stageno = 0;
break; // break;
case 'second': // case 'second':
$stageno = 1; // $stageno = 1;
break; // break;
case 'arrive': // case 'arrive':
$stageno = 2; // $stageno = 2;
break; // break;
case 'install': // case 'install':
$stageno = 3; // $stageno = 3;
break; // break;
case 'tryrun': // case 'tryrun':
$stageno = 4; // $stageno = 4;
break; // break;
case 'check': // case 'check':
$stageno = 5; // $stageno = 5;
break; // break;
case 'delivery': // case 'delivery':
$stageno = 6; // $stageno = 6;
break; // break;
case 'final': // case 'final':
$stageno = 7; // $stageno = 7;
break; // break;
} // }
if (isset($value[$stage]) && isset($value[$stage][0]) && !empty($value[$stage][0])) { // if (isset($value[$stage]) && isset($value[$stage][0]) && !empty($value[$stage][0])) {
if ($value[$stage][3] > 0) { // if ($value[$stage][3] > 0) {
$stage3 = 1; // $stage3 = 1;
} else { // } else {
$stage3 = 0; // $stage3 = 0;
} // }
if ($value[$stage][7] > 0) { // if ($value[$stage][7] > 0) {
$stage7 = 1; // $stage7 = 1;
} else { // } else {
$stage7 = 0; // $stage7 = 0;
} // }
$invoice_budget = $value[$stage][7]; // $invoice_budget = $value[$stage][7];
$received_budget = $value[$stage][4]; // $received_budget = $value[$stage][4];
$budget = $value[$stage][1]; // $budget = $value[$stage][1];
$receivable_date = $value[$stage][2]; // $receivable_date = $value[$stage][2];
$table .= "INSERT INTO account_receivable ( // $table .= "INSERT INTO account_receivable (
`contract_no`, // `contract_no`,
`facility_no`, // `facility_no`,
`stage`, // `stage`,
`budget`, // `budget`,
`receivable_date`, // `receivable_date`,
`receivable`, // `receivable`,
`invoice`, // `invoice`,
`invoice_budget`, // `invoice_budget`,
`received_budget`"; // `received_budget`";
if ($value[$stage][7] > 0) { // if ($value[$stage][7] > 0) {
$table .= ",`invoice_state`"; // $table .= ",`invoice_state`";
} // }
$table .= ") VALUES ('$key','$fakey',$stageno,$budget,$receivable_date,$stage3,$stage7,$invoice_budget,$received_budget "; // $table .= ") VALUES ('$key','$fakey',$stageno,$budget,$receivable_date,$stage3,$stage7,$invoice_budget,$received_budget ";
if ($value[$stage][7] > 0) { // if ($value[$stage][7] > 0) {
$table .= ",0"; // $table .= ",0";
} // }
$table .= "); \n"; // $table .= "); \n";
} // }
} // }
} // }
} // }
} // }
$file_path = 'account_receivable_sql_file.sql'; // $file_path = 'account_receivable_sql_file.sql';
if (file_put_contents($file_path, $table) !== false) { // if (file_put_contents($file_path, $table) !== false) {
echo "SQL文件已成功生成:{$file_path}"; // echo "SQL文件已成功生成:{$file_path}";
} else { // } else {
echo "生成SQL文件时出现错误。"; // echo "生成SQL文件时出现错误。";
} // }
// echo $table; // echo $table;

24
wms/account-receivable-index.php

@ -2401,6 +2401,12 @@ include "./footer.php";
<th style="width: 120px;">營業員</th> <th style="width: 120px;">營業員</th>
<th style="width: 180px;">客戶名稱</th> <th style="width: 180px;">客戶名稱</th>
<th style="width: 300px;">作番狀態</th>
<th style="width: 150px;">合約-設備金額</th>
<th style="width: 150px;">合約-安裝金額</th>
<th style="width: 150px;">作番總金額</th>
<th style="width: 150px;">作番目前應收</th>
<th style="width: 120px;">訂金 <br>名稱</th> <th style="width: 120px;">訂金 <br>名稱</th>
<th style="width: 120px;">訂金<br>合約金額</th> <th style="width: 120px;">訂金<br>合約金額</th>
<th style="width: 120px;">訂金<br>應收日期</th> <th style="width: 120px;">訂金<br>應收日期</th>
@ -2481,11 +2487,7 @@ include "./footer.php";
<th style="width: 120px;">尾款<br>催收金額</th> <th style="width: 120px;">尾款<br>催收金額</th>
<th style="width: 120px;">尾款<br>催收次數</th> <th style="width: 120px;">尾款<br>催收次數</th>
<th style="width: 300px;">作番狀態</th>
<th style="width: 150px;">合約-設備金額</th>
<th style="width: 150px;">合約-安裝金額</th>
<th style="width: 150px;">作番總金額</th>
<th style="width: 150px;">作番目前應收</th>
</tr> </tr>
</thead> </thead>
@ -2501,6 +2503,12 @@ include "./footer.php";
<td style="text-align: center;"><?= $value[5] ?></td> <td style="text-align: center;"><?= $value[5] ?></td>
<td style="text-align: center;"><?= $value[6] ?></td> <td style="text-align: center;"><?= $value[6] ?></td>
<td style="text-align: end;"><?= $value[82] ?></td>
<td style="text-align: end;"><?= $value[83] ?></td>
<td style="text-align: end;"><?= $value[84] ?></td>
<td style="text-align: end;"><?= $value[85] ?></td>
<td style="text-align: end;"><?= $value[86] ?></td>
<td style="text-align: end;"><?= $value[10] ?></td> <td style="text-align: end;"><?= $value[10] ?></td>
<td style="text-align: end;"><?= $value[11] ?></td> <td style="text-align: end;"><?= $value[11] ?></td>
<td style="text-align: end;"><?= $value[12] ?></td> <td style="text-align: end;"><?= $value[12] ?></td>
@ -2585,12 +2593,6 @@ include "./footer.php";
<td style="text-align: end;"><?= $value[80] ?></td> <td style="text-align: end;"><?= $value[80] ?></td>
<td style="text-align: end;"><?= $value[81] ?></td> <td style="text-align: end;"><?= $value[81] ?></td>
<td style="text-align: end;"><?= $value[82] ?></td>
<td style="text-align: end;"><?= $value[83] ?></td>
<td style="text-align: end;"><?= $value[84] ?></td>
<td style="text-align: end;"><?= $value[85] ?></td>
<td style="text-align: end;"><?= $value[86] ?></td>
</tr> </tr>
<?php <?php
} }

773
wms/account-receivable-renovate-index-ing.php

@ -0,0 +1,773 @@
<?php
include "header.php";
$sum_facility = 0;
// M1
$sum_A40002 = 0;
// 設備
$sum_A40009 = 0;
// 安裝
$sum_A40010 = 0;
$sum_total_budget = 0;
$average_budget = 0;
$average_A40002 = 0;
$average_A40009 = 0;
$average_A40010 = 0;
$follower = find_follow($user_id);
$arrayData = [];
$receivable_array = [];
// T8所有合約號
$sql_contractNumber = "SELECT Distinct BillNo FROM salSalesOrder WHERE ModeId = 'T' AND (CurrentState=2 OR CurrentState=4) ";
// T8發票 (有專案的發票)
$sql_invoice = "SELECT DISTINCT
a.InvoiceNo, a.InvoiceTime,a.OAmountWithTax,a.InvoiceState,
b.FromSalSalesOrder
FROM arSellInvoice as a
LEFT JOIN (SELECT CH.FromSalSalesOrder, SE.* FROM arSellInvoiceMaterial AS SE
LEFT JOIN arCheckBillDetail AS CH ON SE.FromBillNo=CH.BillNo) as b
ON a.BillNo=b.BillNo
WHERE DATALENGTH(b.FromSalSalesOrder)>0
ORDER BY InvoiceTime ASC";
// T8核銷
$sql_received = "SELECT
a.BillNo, a.WriteOffBizPartnerId,a.PayWriteOffOAmount,
b.FromBillDate AS ReceivedDate,b.CurrWOFeeOAmt AS Fee,
c.OrderBillNo, c.checkBillNo, c.InvoiceNo, c.BillDate AS CheckBillDate
FROM arWriteOffBill AS a
LEFT JOIN arWriteOffBillRec AS b ON a.BillNo=b.BillNo
LEFT JOIN
(SELECT temp1.*,arWriteOffBillDetail.* FROM arWriteOffBillDetail
LEFT JOIN
(SELECT
arCheckBill.BillNo AS checkBillNo, arCheckBill.BillDate,arCheckBillInvInfo.InvoiceNo
FROM arCheckBill
LEFT JOIN arCheckBillInvInfo
ON arCheckBill.InvoiceBillNo=arCheckBillInvInfo.InvoiceBillNo) AS temp1
ON temp1.checkBillNo = arWriteOffBillDetail.FromBillNo) AS c
ON a.BillNo=c.BillNo
WHERE DATALENGTH(c.OrderBillNo) >0";
// 期初收款資訊
$sql_opening = "
SELECT * FROM account_received ";
// 設定權限:看到自己的/下屬的,資訊處跟財會處可以看全部的
if ((in_array($user_id, array('M0060', 'M0175'))) || (in_array(accountidToDepartId($user_id), array('220', '210')))) {
} else {
$sql_opening .= " OR person_id = '$user_id'";
$sql_contractNumber .= " AND (PersonId = '$user_id'";
if (count($follower) > 0) {
$column_str = "('$user_id'" . ",'";
$column_str .= implode("','", $follower);
$column_str .= "')";
$sql_contractNumber .= " OR PersonId IN $column_str)";
$sql_opening .= " OR person_id IN $column_str)";
} else {
$sql_opening .= ")";
$sql_contractNumber .= ")";
};
}
$contractNumbers = array();
$query_contract_number = $conn->query($sql_contractNumber);
foreach ($query_contract_number as $contract_numbers) {
array_push($contractNumbers, $contract_numbers['BillNo']);
$str_numbers = "('" . implode("','", $contractNumbers) . "')";
}
//作番大日程
$sql = "SELECT
tmp2.*,
d.name AS depart_name
FROM(
SELECT
a.manager,
a2.name as manager_name,
a.name,
a.department_id,
w.salesid,
w.contractno,
w.facilityno,
w.estimated_shipping_date,
w.real_contract_arrival_date,
w.actual_tofactory_date,
w.real_arrival_date,
w.install_end_date,
w.tryrun_end_date,
w.official_check_date,
w.delivery_date
from wipwholestatus AS w
left join account AS a
ON w.salesid = a.accountid
left join account AS a2
ON a2.accountid = a.manager
where w.status = '1' AND w.contract_type='B'
)AS tmp2
left join (
SELECT DISTINCT
department_id,
name
FROM department
) AS d
ON d.department_id = tmp2.department_id";
//T8 銷售訂單 階段收款計畫
$sql_contract = "SELECT a.BillNo,s.BillDate, a.RowNo, a.PayStage, a.PlanPayAmt, a.PlanPayDate,s.BizPartnerId,c.BizPartnerName, s.PersonId, s.DeptId, s.DeptName,
c.EnterpriseName, c.TaxNo, c.ContactAddress FROM salOrderStagePay AS a
LEFT JOIN (SELECT O.*, DE.DeptName FROM salSalesOrder AS O LEFT JOIN comDepartment AS DE ON O.DeptId=DE.DeptId) AS s on a.BillNo = s.BillNo
LEFT JOIN comBusinessPartner AS c ON s.BizPartnerId=c.BizPartnerId ";
if (isset($str_numbers)) {
$sql_contract .= "WHERE s.BillNo IN $str_numbers ";
}
// T8 銷售訂單 作番金額
$sql_contract_budget = "SELECT A.BillNo,A.MaterialId, A.OAmountWithTax,A.CU_MaterialId FROM salSalesOrderDetail AS A
LEFT JOIN salSalesOrder AS B ON A.BillNo=B.BillNo
WHERE B.ModeId='T' AND A.ItemType=1 ";
if (isset($str_numbers)) {
$sql_contract_budget .= "AND A.BillNo IN $str_numbers ";
}
$contract = $conn->query($sql_contract);
$contract_data = array();
// 將T8合約收款階段資料依據款別分類放進arraData裡
foreach ($contract as $cont) {
$BillNo = $cont['BillNo'];
$BillDate = $cont['BillDate'];
$PayStage = $cont['PayStage'];
$PlanPayDate = $cont['PlanPayDate'];
$PayAmount = $cont['PlanPayAmt'];
$partnerName = $cont['BizPartnerName'];
$EnterpriseName = $cont['EnterpriseName'];
$TaxNo = $cont['TaxNo'];
$ContactAddress = $cont['ContactAddress'];
$RowNo = $cont['RowNo'];
$salesId = $cont['PersonId'];
//['type'] A:比照新梯、B:純分期、C:其他
//['sign'] 0 款項名稱 1 簽約金額 2 簽約日期 3 應收金額 min 最早應收月份 max 最晚應收月份 ['second'] 0 二次款名 1 二次款金額 2 收款日期 ['arrive'] 0 貨抵工地款名稱 1 貨抵工地款金額 2 貨抵工地收款日期 ['install'] 0 安裝款名 1 安裝金額 2 安裝收款日期
//['tryrun'] 0 試車款名 1試車金額 2 試車收款日期 ['check'] 0 官檢款名 1 官檢金額 2 官檢收款日期 ['delivery'] 0 交車款名 1 交車金額 2 交車收款日期 ['final'] 0 尾款名 1 尾款金額 2 尾款收款日期
//['facility'] [作番號][款別]0 款項名稱 1 合約金額 2 應收日期 3 應收金額 4 已收金額 5 催收金額 6 催收次數
if (!(isset($arrayData[$BillNo]))) {
// 0 部門id 1 部門名稱 2 經理名稱 3 營業員id 4 營業員名稱 5 客戶名稱 6 抬頭 7 統編 8 通訊地址 9 T8單據日期 10 合約號
$arrayData[$BillNo] = [0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0];
$arrayData[$BillNo][0] = $cont['DeptId'];
$arrayData[$BillNo][1] = $cont['DeptName'];
$arrayData[$BillNo][3] = $salesId;
$arrayData[$BillNo][5] = $partnerName;
$arrayData[$BillNo][6] = $EnterpriseName;
$arrayData[$BillNo][7] = $TaxNo;
$arrayData[$BillNo][8] = $ContactAddress;
$arrayData[$BillNo][9] = $BillDate;
$arrayData[$BillNo][10] = $BillNo;
$arrayData[$BillNo]['total_budget'] = 0;
$arrayData[$BillNo]['invoice'] = array();
$arrayData[$BillNo]['received_budget'] = 0;
$arrayData[$BillNo]['invoice_budget'] = 0;
$arrayData[$BillNo]['A40002'] = $arrayData[$BillNo]['A40009'] = $arrayData[$BillNo]['A40010'] = 0;
$arrayData[$BillNo]['total_facility_num'] = 0;
}
$arrayData[$BillNo]['PayStage'][$RowNo]['type'] = 0;
$arrayData[$BillNo]['PayStage'][$RowNo]['name'] = $PayStage;
$arrayData[$BillNo]['PayStage'][$RowNo]['PlanPayDate'] = $PlanPayDate;
$arrayData[$BillNo]['PayStage'][$RowNo]['PayAmount'] = $PayAmount;
// 判斷type
$wipStage = ['簽約', '訂金', '貨抵工地', '完工', '試車', '安裝', '驗收', '完工', '交車', '尾款', '合約'];
foreach ($wipStage as $wipstage) {
if (strpos($PayStage, $wipstage) !== false) {
$arrayData[$BillNo]['PayStage'][$RowNo]['type'] = "A";
}
}
$haveNumber = (int) filter_var(str_replace('-', '', $PayStage), FILTER_SANITIZE_NUMBER_INT);
if ($haveNumber > 0 && $arrayData[$BillNo]['PayStage'][$RowNo]['type'] === 0) {
$arrayData[$BillNo]['PayStage'][$RowNo]['type'] = "B";
} elseif ($haveNumber > 0 && $arrayData[$BillNo]['PayStage'][$RowNo]['type'] == 'A') {
$arrayData[$BillNo]['PayStage'][$RowNo]['type'] = "C";
}
}
$received_array = $conn->query($sql_received);
$opening_data = mysqli_query($link, $sql_opening);
$invoice_data = $conn->query($sql_invoice);
$contract_budget_data = $conn->query($sql_contract_budget);
// 查WMS 契約員主管
$sql_manager = "SELECT A.accountid, A.name, A.manager, B.name AS manager_name FROM account AS A
LEFT JOIN account AS B ON A.manager = B.accountid ";
$managers = mysqli_query($link, $sql_manager);
$find_manager = array();
foreach ($managers as $manager) {
$find_manager[$manager['accountid']] = $manager;
}
// 將T8銷售訂單明細 每個作番金額存入arrayData
$contract_budget = array();
foreach ($contract_budget_data as $cont) {
$BillNo = $cont['BillNo'];
if (isset($arrayData[$BillNo])) {
$salesid = $arrayData[$BillNo][3];
if (isset($find_manager[$salesid])) {
$arrayData[$BillNo][2] = $find_manager[$salesid]['manager_name'];
$arrayData[$BillNo][4] = $find_manager[$salesid]['name'];
$arrayData[$BillNo][11] = $find_manager[$salesid]['manager'];
}
$arrayData[$BillNo]['total_budget'] += $cont['OAmountWithTax'];
$sum_total_budget += $cont['OAmountWithTax'];
$arrayData[$BillNo][$cont['MaterialId']] += $cont['OAmountWithTax'];
switch ($cont['MaterialId']) {
case "A40002":
$sum_A40002 += $cont['OAmountWithTax'];
break;
case "A40009":
$sum_A40009 += $cont['OAmountWithTax'];
break;
case "A40010":
$sum_A40010 += $cont['OAmountWithTax'];
break;
}
if (isset($arrayData[$BillNo]['facility'][$cont['CU_MaterialId']])) {
$arrayData[$BillNo]['facility'][$cont['CU_MaterialId']]['total_budget'] += $cont['OAmountWithTax'];
$arrayData[$BillNo]['facility'][$cont['CU_MaterialId']][$cont['MaterialId']] += $cont['OAmountWithTax'];
} else {
$sum_facility += 1;
$arrayData[$BillNo]['total_facility_num'] += 1;
$arrayData[$BillNo]['facility'][$cont['CU_MaterialId']]['total_budget'] = $cont['OAmountWithTax'];
$arrayData[$BillNo]['facility'][$cont['CU_MaterialId']]['A40002'] = $arrayData[$BillNo]['facility'][$cont['CU_MaterialId']]['A40009'] = $arrayData[$BillNo]['facility'][$cont['CU_MaterialId']]['A40010'] = 0;
$arrayData[$BillNo]['facility'][$cont['CU_MaterialId']][$cont['MaterialId']] = $cont['OAmountWithTax'];
}
}
if (isset($contract_budget[$cont['BillNo']])) {
$contract_budget[$cont['BillNo']]['total'] += $cont['OAmountWithTax'];
} else {
$contract_budget[$cont['BillNo']]['total'] = $cont['OAmountWithTax'];
}
if (isset($contract_budget[$cont['BillNo']][$cont['MaterialId']])) {
$contract_budget[$cont['BillNo']][$cont['MaterialId']] += $cont['OAmountWithTax'];
} else {
$contract_budget[$cont['BillNo']][$cont['MaterialId']] = $cont['OAmountWithTax'];
}
if (isset($contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']])) {
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']]['total'] += $cont['OAmountWithTax'];
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']][$cont['MaterialId']] += $cont['OAmountWithTax'];
} else {
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']]['total'] = $cont['OAmountWithTax'];
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']]['A40002'] = 0;
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']]['A40009'] = 0;
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']]['A40010'] = 0;
$contract_budget[$cont['BillNo']]['facility'][$cont['CU_MaterialId']][$cont['MaterialId']] = $cont['OAmountWithTax'];
};
}
/*計算作番佔合約的金額比例
@param $facility_no string => 作番號
@param $contract_budget_billno array => $contract_budget[合約號]
return float */
function get_contract_ratio($facility_no, $contract_budget_billno)
{
$ratio = 0;
if (isset($contract_budget_billno['facility'][$facility_no])) {
if (empty($contract_budget_billno['total'])) {
} else {
$ratio += $contract_budget_billno['facility'][$facility_no]['total'] / $contract_budget_billno['total'];
}
}
return $ratio;
}
/* 比較應收日期
@param $a array
@param $b array
return int */
function comparePlanPayDate($a, $b)
{
return strtotime($a['PlanPayDate']) - strtotime($b['PlanPayDate']);
}
//取作番大日程作番與時程 進arrayData
// real_contract_arrival_date 預計出貨日
// real_arrival_date 實際出貨日
$today = strtotime(date('Ymd'));
$wipwhole_array = mysqli_query($link, $sql);
$wipwhole_status = array();
foreach ($wipwhole_array as $wip) {
//[合約號]['facility'] [作番號][款別]0 款項名稱 1 合約金額 2 應收日期 3 應收金額 4 已收金額 5 催收金額 6 催收次數
if (isset($arrayData[$wip['contractno']])) {
// 整理合約資料
// $arrayData[$wip['contractno']][0] = $wip['department_id'];;
// $arrayData[$wip['contractno']][1] = $wip['depart_name'];
// $arrayData[$wip['contractno']][2] = $wip['manager_name'];
// $arrayData[$wip['contractno']][3] = $wip['salesid'];
// $arrayData[$wip['contractno']][4] = $wip['name'];
$arrayData[$wip['contractno']][10] = $wip['contractno'];
$arrayData[$wip['contractno']]['A40002'] = (isset($contract_budget[$wip['contractno']]['A40002']) && !is_null($contract_budget[$wip['contractno']]['A40002'])) ? $contract_budget[$wip['contractno']]['A40002'] : 0;
$arrayData[$wip['contractno']]['A40009'] = (isset($contract_budget[$wip['contractno']]['A40009']) && !is_null($contract_budget[$wip['contractno']]['A40009'])) ? $contract_budget[$wip['contractno']]['A40009'] : 0;
// [合約號]['facility'][作番號]['no']
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['no'] = $wip['facilityno'];
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['status'] = "";
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['total_budget'] = 0;
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['receivable_budget'] = 0;
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['collect_budget'] = 0;
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['A40002'] = (isset($contract_budget[$wip['contractno']][$wip['facilityno']]['A40002']) && !is_null($contract_budget[$wip['contractno']][$wip['facilityno']]['A40002'])) ? $contract_budget[$wip['contractno']][$wip['facilityno']]['A40002'] : 0;
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['A40009'] = (isset($contract_budget[$wip['contractno']][$wip['facilityno']]['A40009']) && !is_null($contract_budget[$wip['contractno']][$wip['facilityno']]['A40009'])) ? $contract_budget[$wip['contractno']][$wip['facilityno']]['A40009'] : 0;
$arrayData[$wip['contractno']]['facility'][$wip['facilityno']]['A40010'] = (isset($contract_budget[$wip['contractno']][$wip['facilityno']]['A40010']) && !is_null($contract_budget[$wip['contractno']][$wip['facilityno']]['A40010'])) ? $contract_budget[$wip['contractno']][$wip['facilityno']]['A40010'] : 0;
}
$wipwhole_status[$wip['facilityno']] = $wip;
}
// 整理arrayData[合約]['PayStage']進 (新增) arrayData[合約]['facility'][作番號][PayStage]
$sign_array = ['訂金', '簽約', '合約'];
// 將所有facility的paystage放入一個array以便計算順序
$allPayStages = [];
foreach ($arrayData as &$value) {
if (isset($value['facility']) && is_iterable($value['facility'])) {
foreach ($value['facility'] as $fakey => &$facility) {
if (isset($contract_budget[$value[10]])) {
$ratio = get_contract_ratio($fakey, $contract_budget[$value[10]]);
for ($stage = 1; $stage < (count($value['PayStage']) + 1); $stage++) {
$facility['PayStage'][$stage] = $value['PayStage'][$stage];
$facility['PayStage'][$stage]['facilityno'] = $fakey;
//算每個作番的金額
$facility['PayStage'][$stage]['PayAmount'] = $value['PayStage'][$stage]['PayAmount'] * $ratio;
//算每個作番每個收款階段的收款時間
switch ($facility['PayStage'][$stage]['type']) {
case "A":
switch ($facility['PayStage'][$stage]['name']) {
case (stristr($facility['PayStage'][$stage]['name'], '試車')):
if (isset($wipwhole_status[$fakey]['tryrun_end_date']) && $wipwhole_status[$fakey]['tryrun_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['tryrun_end_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['tryrun_end_date']));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '完工')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['delivery_date']));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '尾款')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['delivery_date']));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '交車')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['delivery_date']));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '驗收')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['delivery_date']));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '安裝')):
if (isset($wipwhole_status[$fakey]['install_end_date']) && $wipwhole_status[$fakey]['install_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['install_end_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['install_end_date']));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '貨抵工地')):
if (isset($wipwhole_status[$fakey]['real_arrival_date']) && $wipwhole_status[$fakey]['real_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_arrival_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['real_arrival_date']));
} elseif (isset($wipwhole_status[$fakey]['real_contract_arrival_date']) && $wipwhole_status[$fakey]['real_contract_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_contract_arrival_date'])) {
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime($wipwhole_status[$fakey]['real_contract_arrival_date']));
}
break;
default:
break;
};
case "B":
break;
case "C":
switch ($facility['PayStage'][$stage]['name']) {
case (stristr($facility['PayStage'][$stage]['name'], '試車')):
if (isset($wipwhole_status[$fakey]['tryrun_end_date']) && $wipwhole_status[$fakey]['tryrun_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['tryrun_end_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['tryrun_end_date'])));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '完工')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '尾款')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '交車')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '驗收')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '安裝')):
if (isset($wipwhole_status[$fakey]['install_end_date']) && $wipwhole_status[$fakey]['install_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['install_end_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['install_end_date'])));
}
break;
case (stristr($facility['PayStage'][$stage]['name'], '貨抵工地')):
if (isset($wipwhole_status[$fakey]['real_arrival_date']) && $wipwhole_status[$fakey]['real_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_arrival_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_arrival_date'])));
} elseif (isset($wipwhole_status[$fakey]['real_contract_arrival_date']) && $wipwhole_status[$fakey]['real_contract_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_contract_arrival_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_contract_arrival_date'])));
}
break;
default:
break;
};
default:
break;
}
}
if (isset($allPayStages[$value[10]])) {
$allPayStages[$value[10]] = array_merge($allPayStages[$value[10]], $facility['PayStage']);
} else {
$allPayStages[$value[10]] = $facility['PayStage'];
}
}
}
}
}
foreach ($allPayStages as $paykey => $pay) {
uasort($allPayStages[$paykey], 'comparePlanPayDate');
}
foreach ($allPayStages as &$payStage) {
$sequenceNumber = 1;
foreach ($payStage as $tk => &$pstage) {
$pstage['sequenceNumber'] = $sequenceNumber;
$sequenceNumber += 1;
}
}
// 整理好的收款階段
$final_paystage = array();
foreach ($allPayStages as $key => &$payStage) {
if (is_iterable($payStage)) {
foreach ($payStage as $key2 => $pstage) {
$final_paystage[$key][$pstage['sequenceNumber']] = $pstage;
}
}
}
// [invoice][發票號碼][0 發票日期, 1 發票金額, 2 發票狀態, 3 收款日期, 4 收款金額, 5 手續費, 6 核銷單號]
foreach ($invoice_data as $invoice) {
if (isset($arrayData[$invoice['FromSalSalesOrder']])) {
$arrayData[$invoice['FromSalSalesOrder']]['invoice_budget'] += intval($invoice['OAmountWithTax']);
$arrayData[$invoice['FromSalSalesOrder']]['invoice'][$invoice['InvoiceNo']] = [date("Ymd", strtotime($invoice['InvoiceTime'])), $invoice['OAmountWithTax'], $invoice['InvoiceState']];
}
}
// 把核銷單的內容補到發票資料中
foreach ($received_array as $received) {
$BillNo = $received['OrderBillNo'];
if (isset($arrayData[$BillNo])) {
if (isset($arrayData[$BillNo]['invoice'][$received['InvoiceNo']])) {
$arrayData[$BillNo]['received_budget'] += $received['PayWriteOffOAmount'];
array_push($arrayData[$BillNo]['invoice'][$received['InvoiceNo']], date($received['ReceivedDate']), $received['PayWriteOffOAmount'], $received['Fee'], $received['BillNo']);
}
}
}
// $final_paystage ['type'] ['PlanPayDate'] ['PayAmount'] ['facilityno'] ['sequenceNumber'] ['name'] ['InvoiceAmount'] ['receivedAmount']
foreach ($final_paystage as $key => &$payStage) {
if (isset($arrayData[$key]['invoice_budget']) && isset($arrayData[$key]['received_budget'])) {
$tmpInvoice = $arrayData[$key]['invoice_budget'];
$tmpReceived = $arrayData[$key]['received_budget'];
for ($sequence = 1; $sequence <= count($payStage); $sequence++) {
$collect_month = collect_month(strtotime($payStage[$sequence]['PlanPayDate']));
if ($tmpInvoice > $payStage[$sequence]['PayAmount']) {
$payStage[$sequence]['InvoiceAmount'] = $payStage[$sequence]['PayAmount'];
$tmpInvoice -= $payStage[$sequence]['PayAmount'];
} else {
$payStage[$sequence]['InvoiceAmount'] = $tmpInvoice;
$tmpInvoice = 0;
}
if ($tmpReceived > $payStage[$sequence]['PayAmount']) {
$payStage[$sequence]['receivedAmount'] = $payStage[$sequence]['PayAmount'];
$tmpReceived -= $payStage[$sequence]['PayAmount'];
} else {
$payStage[$sequence]['receivedAmount'] = $tmpReceived;
$tmpReceived = 0;
}
if ($collect_month > 0) {
// $arrayData[$key]['facility'][$payStage[$sequence]['facilityno']]['receivable_budget']+=$payStage[$sequence]['PayAmount'];
}
if ($collect_month > 0 && $payStage[$sequence]['PayAmount'] > $payStage[$sequence]['receivedAmount']) {
$payStage[$sequence]['collect_month'] = $collect_month;
} else {
$payStage[$sequence]['collect_month'] = 0;
}
}
}
}
// 0 部門id 1 部門名稱 2 經理名稱 3 營業員id 4 營業員名稱 5 客戶名稱 6 抬頭 7 統編 8 通訊地址 9 T8單據日期 10 合約號
// 0 合約號 1 作番號 2 部門id 3 部門名稱 4 經理名稱 5 營業員id 6 營業員名稱 7 客戶名稱 8 抬頭 9 統編 10 通訊地址
// 11 收款階段名稱 12 應收日期 13 收款金額 14 已開金額 15 已收金額 16 催收次數
$excel_aray = array();
$today = strtotime(date('Ymt'));
foreach ($arrayData as $key => $value) {
if (isset($final_paystage[$key])) {
for ($sequence = 1; $sequence <= count($final_paystage[$key]); $sequence++) {
$value[4] = (isset($value[4]) && !empty($value[4])) ? $value[4] : '--';
$value[5] = (isset($value[5]) && !empty($value[5])) ? $value[5] : '--';
$value[6] = (isset($value[6]) && !empty($value[6])) ? $value[6] : '--';
$value[7] = (isset($value[7]) && !empty($value[7])) ? $value[7] : '--';
$value[8] = (isset($value[8]) && !empty($value[8])) ? $value[8] : '--';
$value[11] = (isset($value[11]) && !empty($value[11])) ? $value[11] : '--';
$value[12] = (isset($value[12]) && !empty($value[12])) ? date('Y/m/d', strtotime($value[12])) : '--';
$thisPayStage = $final_paystage[$key][$sequence];
$keyname = $key . "/" . $final_paystage[$key][$sequence]['facilityno'] . "/" . $value[5];
$havetopay = ($today >= strtotime($thisPayStage['PlanPayDate'])) ? "V" : "--";
switch ($havetopay) {
case "V":
$unInvoiceAmount = $thisPayStage['PayAmount'] - $thisPayStage['InvoiceAmount'];
$unReceivedAmount = $thisPayStage['PayAmount'] - $thisPayStage['receivedAmount'];
break;
default:
$unInvoiceAmount = 0;
$unReceivedAmount = 0;
break;
}
$excel_aray[$keyname] = [
$value[10], $thisPayStage['facilityno'], $value[0], $value[1], $value[11], $value[2], $value[3], $value[4], $value[5], $value[6], $value[7], $value[8],
$thisPayStage['name'], $thisPayStage['PlanPayDate'], $havetopay,
number_format(round($thisPayStage['PayAmount'])),
number_format(round($thisPayStage['InvoiceAmount'])), number_format(round($unInvoiceAmount)),
number_format(round($thisPayStage['receivedAmount'])), number_format(round($unReceivedAmount)),
number_format(round($thisPayStage['collect_month']))
];
}
}
}
$total_data = json_encode($excel_aray);
//計算總作番數、金額、A40002、A40009、A40010金額與平均
$average_budget = round($sum_total_budget / $sum_facility);
$average_A40002 = round($sum_A40002 / $sum_facility);
$average_A40009 = round($sum_A40009 / $sum_facility);
$average_A40010 = round($sum_A40010 / $sum_facility);
foreach($arrayData as $key=> $data){
echo $key."<br>";
print_r($data);
echo "<br>-----------------------------<br>";
}
exit();
?>
<style>
table {
table-layout: fixed;
width: 100%;
}
td {
word-wrap: break-word;
}
img {
width: 125px;
}
.width_style_1 {
width: 125px;
}
table {
width: 100%;
}
#table_index_filter {
float: right;
}
#table_index_paginate {
float: right;
}
label {
display: inline-flex;
margin-bottom: .5rem;
margin-top: .5rem;
}
.hiddenTable {
display: none;
}
.hidden {
display: none;
}
</style>
<div style="width: 98%;margin: 1%;">
<div class="btn-group btn-group-md " style="padding:10 px; width: 100%;">
<button type="button" style="width: 12%;" onclick="downloadData()" class="btn btn-success">下載 <span class="glyphicon glyphicon-download-alt"></span></button>
</div>
</div>
<div class="container">
<div class="text-center" style="margin-bottom: 20px;">
<h3><strong>合約 (汰改)統整資訊</strong></h3>
</div>
<form class="form-horizontal">
<div class="form-group">
<div class="col-md-3">
<label for="sum_total_budget">合約總金額</label>
<input type="text" class="form-control" id="sum_total_budget" name="sum_total_budget" value="<?= number_format($sum_total_budget) ?>" disabled>
</div>
<div class="col-md-3">
<label for="sum_A40002">M1總金額</label>
<input type="text" class="form-control" id="sum_A40002" name="sum_A40002" value="<?= number_format($sum_A40002) ?>" disabled>
</div>
<div class="col-md-3">
<label for="sum_A40009">設備總金額</label>
<input type="text" class="form-control" id="sum_A40009" name="sum_A40009" value="<?= number_format($sum_A40009) ?>" disabled>
</div>
<div class="col-md-3">
<label for="sum_A40010">安裝總金額</label>
<input type="text" class="form-control" id="sum_A40010" name="sum_A40010" value="<?= number_format($sum_A40010) ?>" disabled>
</div>
</div>
<div class="form-group">
<div class="col-md-6">
<label for="sum_facility">總台數</label>
<input type="text" class="form-control" id="sum_facility" name="sum_facility" value="<?= number_format($sum_facility) ?>" disabled>
</div>
</div>
<div class="form-group">
<div class="col-md-3">
<label for="average_budget">平均金額</label>
<input type="text" class="form-control" id="average_budget" name="average_budget" value="<?= number_format($average_budget) ?>" disabled>
</div>
<div class="col-md-3">
<label for="average_A40002">M1平均金額</label>
<input type="text" class="form-control" id="average_A40002" name="average_A40002" value="<?= number_format($average_A40002) ?>" disabled>
</div>
<div class="col-md-3">
<label for="average_A40009">設備平均金額</label>
<input type="text" class="form-control" id="average_A40009" name="average_A40009" value="<?= number_format($average_A40009) ?>" disabled>
</div>
<div class="col-md-3">
<label for="average_A40010">安裝平均金額</label>
<input type="text" class="form-control" id="average_A40010" name="average_A40010" value="<?= number_format($average_A40010) ?>" disabled>
</div>
</div>
</form>
</div>
<?php
include "./footer.php";
?>
<div style="width: 20%;float:right;margin-right:5%; ">
<label>查詢條件</label>
<input type="text" id="search" name="search" class="form-control" placeholder="請輸入合約號/作番號/客戶名稱" oninput="searchData()">
</div>
<div style="width: 98%; margin:1%;" style="overflow-x:auto;">
<table class="table table-striped table-bordered" style="width:100%">
<thead>
<tr>
<th style='text-align:center;vertical-align: middle;width:120px'>合約號</th>
<th style='text-align:center;vertical-align: middle;width:120px'>作番號</th>
<th style='text-align:center;vertical-align: middle;width:110px'>部門</th>
<th style='text-align:center;vertical-align: middle;'>主管</th>
<th style='text-align:center;vertical-align: middle;'>契約員</th>
<th style='text-align:center;vertical-align: middle;width:130px'>客戶名稱</th>
<th style='text-align:center;vertical-align: middle;'>收款階段</th>
<th style='text-align:center;vertical-align: middle;'>應收日期</th>
<th style='text-align:center;vertical-align: middle;'>是否應收</th>
<th style='text-align:end;vertical-align: middle;'>應收金額</th>
<th style='text-align:end;vertical-align: middle;'>已開金額</th>
<th style='text-align:end;vertical-align: middle;'>未開金額</th>
<th style='text-align:end;vertical-align: middle;'>已收金額</th>
<th style='text-align:end;vertical-align: middle;'>催收金額</th>
<th style='text-align:center;vertical-align: middle;'>催收次數</th>
</tr>
</thead>
<tbody>
<?php foreach ($excel_aray as $key => $row) { ?>
<tr class="data-row" style="display: '';" id="<?= $key; ?>">
<td><?= $row[0]; ?></td>
<td><?= $row[1]; ?></td>
<td><?= $row[2] . "<br>" . $row[3]; ?></td>
<td><?= $row[4] . "<br>" . $row[5]; ?></td>
<td><?= $row[6] . "<br>" . $row[7]; ?></td>
<td><?= $row[8]; ?></td>
<td><?= $row[12]; ?></td>
<td><?= $row[13]; ?></td>
<td><?= $row[14]; ?></td>
<td><?= $row[15]; ?></td>
<td><?= $row[16]; ?></td>
<td><?= $row[17]; ?></td>
<td><?= $row[18]; ?></td>
<td><?= $row[19]; ?></td>
<td><?= $row[20]; ?></td>
</tr>
<?php } ?>
</tbody>
</table>
</div>
<script>
function searchData() {
var searchTerm = document.getElementById('search').value.toLowerCase();
var rows = document.getElementsByClassName('data-row');
for (var i = 0; i < rows.length; i++) {
var rowText = rows[i].textContent.toLowerCase();
// var rowText = rows[i].id.toLowerCase();
if (rowText.includes(searchTerm)) {
console.log(rowText);
rows[i].style.display = '';
} else {
rows[i].style.display = 'none';
}
}
}
function downloadData() {
var xhr = new XMLHttpRequest();
var url = window.location.origin + "/wms/account-receivable-renovate-excel.php?type=all&<?= $token_link ?>";
xhr.open('POST', url, true);
xhr.setRequestHeader('Content-Type', 'application/json');
xhr.onreadystatechange = function() {
if (xhr.readyState === 4 && xhr.status === 200) {
var file_path = xhr.responseText;
var link = document.createElement('a');
var name = "汰改應收帳款" + "<?= date('Y-m-d-Hm') ?>" + ".xlsx";
link.setAttribute('href', window.location.origin + "/wms/account-receivable-renovate.xlsx");
link.setAttribute('download', name);
link.style.display = 'none';
document.body.appendChild(link);
link.click();
document.body.removeChild(link);
}
}
xhr.send(JSON.stringify({
Bill: <?= $total_data ?>
}));
}
function check(searchname) {
console.log(searchname);
}
</script>

115
wms/account-receivable-renovate-index.php

@ -53,16 +53,16 @@ ON a.BillNo=c.BillNo
WHERE DATALENGTH(c.OrderBillNo) >0"; WHERE DATALENGTH(c.OrderBillNo) >0";
//ORDER BY contractno
// 期初收款資訊 // 期初收款資訊
$sql_opening = " $sql_opening = "
SELECT * FROM account_received "; SELECT * FROM account_received ";
// 設定權限:看到自己的/下屬的,資訊處跟財會處可以看全部的 // 設定權限:看到自己的/下屬的,資訊處跟財會處可以看全部的
if ((in_array($user_id, array('M0060', 'M0175'))) || (in_array(accountidToDepartId($user_id), array('220', '210')))) { if ((in_array($user_id, array('M0060', 'M0175'))) || (in_array(accountidToDepartId($user_id), array('220', '210')))) {
} else { } else {
<<<<<<< HEAD
// $sql_received .= " AND (PersonId = '$user_id'"; // $sql_received .= " AND (PersonId = '$user_id'";
=======
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$sql_opening .= " OR person_id = '$user_id'"; $sql_opening .= " OR person_id = '$user_id'";
$sql_contractNumber .= " AND (PersonId = '$user_id'"; $sql_contractNumber .= " AND (PersonId = '$user_id'";
if (count($follower) > 0) { if (count($follower) > 0) {
@ -70,15 +70,14 @@ if ((in_array($user_id, array('M0060', 'M0175'))) || (in_array(accountidToDepart
$column_str .= implode("','", $follower); $column_str .= implode("','", $follower);
$column_str .= "')"; $column_str .= "')";
$sql_contractNumber .= " OR PersonId IN $column_str)"; $sql_contractNumber .= " OR PersonId IN $column_str)";
// $sql_contract .= " OR s.PersonId IN $column_str)";
// $sql_received .= " OR PersonId IN $column_str)";
$sql_opening .= " OR person_id IN $column_str)"; $sql_opening .= " OR person_id IN $column_str)";
// $sql_contract_budget .= " OR PersonId IN $column_str )ORDER BY BillNo, CU_MaterialId";
} else { } else {
<<<<<<< HEAD
// $sql_received .= ")"; // $sql_received .= ")";
=======
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$sql_opening .= ")"; $sql_opening .= ")";
$sql_contractNumber .= ")"; $sql_contractNumber .= ")";
// $sql_contract_budget .= ")";
}; };
} }
@ -387,46 +386,77 @@ foreach ($arrayData as &$value) {
switch ($facility['PayStage'][$stage]['name']) { switch ($facility['PayStage'][$stage]['name']) {
case (stristr($facility['PayStage'][$stage]['name'], '試車')): case (stristr($facility['PayStage'][$stage]['name'], '試車')):
if (isset($wipwhole_status[$fakey]['tryrun_end_date']) && $wipwhole_status[$fakey]['tryrun_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['tryrun_end_date'])) { if (isset($wipwhole_status[$fakey]['tryrun_end_date']) && $wipwhole_status[$fakey]['tryrun_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['tryrun_end_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['tryrun_end_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['tryrun_end_date'])));
} }
break; break;
case (stristr($facility['PayStage'][$stage]['name'], '完工')): case (stristr($facility['PayStage'][$stage]['name'], '完工')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) { if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
} }
break; break;
case (stristr($facility['PayStage'][$stage]['name'], '尾款')): case (stristr($facility['PayStage'][$stage]['name'], '尾款')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) { if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
} }
break; break;
case (stristr($facility['PayStage'][$stage]['name'], '交車')): case (stristr($facility['PayStage'][$stage]['name'], '交車')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) { if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
} }
break; break;
case (stristr($facility['PayStage'][$stage]['name'], '驗收')): case (stristr($facility['PayStage'][$stage]['name'], '驗收')):
if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) { if (isset($wipwhole_status[$fakey]['delivery_date']) && $wipwhole_status[$fakey]['delivery_date'] !== NULL && !empty($wipwhole_status[$fakey]['delivery_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['delivery_date'])));
} }
break; break;
case (stristr($facility['PayStage'][$stage]['name'], '安裝')): case (stristr($facility['PayStage'][$stage]['name'], '安裝')):
if (isset($wipwhole_status[$fakey]['install_end_date']) && $wipwhole_status[$fakey]['install_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['install_end_date'])) { if (isset($wipwhole_status[$fakey]['install_end_date']) && $wipwhole_status[$fakey]['install_end_date'] !== NULL && !empty($wipwhole_status[$fakey]['install_end_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['install_end_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['install_end_date'])));
} }
break; break;
case (stristr($facility['PayStage'][$stage]['name'], '貨抵工地')): case (stristr($facility['PayStage'][$stage]['name'], '貨抵工地')):
if (isset($wipwhole_status[$fakey]['real_arrival_date']) && $wipwhole_status[$fakey]['real_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_arrival_date'])) { if (isset($wipwhole_status[$fakey]['real_arrival_date']) && $wipwhole_status[$fakey]['real_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_arrival_date'])) {
<<<<<<< HEAD
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_arrival_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_arrival_date'])));
} elseif (isset($wipwhole_status[$fakey]['real_contract_arrival_date']) && $wipwhole_status[$fakey]['real_contract_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_contract_arrival_date'])) { } elseif (isset($wipwhole_status[$fakey]['real_contract_arrival_date']) && $wipwhole_status[$fakey]['real_contract_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_contract_arrival_date'])) {
$haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT); $haveNumber = (int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT);
=======
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_arrival_date'])));
} elseif (isset($wipwhole_status[$fakey]['real_contract_arrival_date']) && $wipwhole_status[$fakey]['real_contract_arrival_date'] !== NULL && !empty($wipwhole_status[$fakey]['real_contract_arrival_date'])) {
$haveNumber = ((int) filter_var(str_replace('-', '', $facility['PayStage'][$stage]['name']), FILTER_SANITIZE_NUMBER_INT)) - 1;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_contract_arrival_date']))); $facility['PayStage'][$stage]['PlanPayDate'] = date("Ymd", strtotime("+ $haveNumber months", strtotime($wipwhole_status[$fakey]['real_contract_arrival_date'])));
} }
break; break;
@ -519,15 +549,8 @@ foreach ($final_paystage as $key => &$payStage) {
} }
} }
} }
// foreach($final_paystage as $key => $payStage){
// echo $key."<br>";
// for($sequence = 1; $sequence <= count($payStage); $sequence++){
// print_r($payStage[$sequence]);
// echo "<br>";
// }
// echo "---------------------<br>";
// }
<<<<<<< HEAD
// foreach ($arrayData as &$value) { // foreach ($arrayData as &$value) {
// if (is_iterable($value['facility'])) { // if (is_iterable($value['facility'])) {
// foreach ($value['facility'] as $fakey => &$facility) { // foreach ($value['facility'] as $fakey => &$facility) {
@ -554,6 +577,8 @@ foreach ($final_paystage as $key => &$payStage) {
// echo "---------------------<br>"; // echo "---------------------<br>";
// } // }
// exit(); // exit();
=======
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
// 0 部門id 1 部門名稱 2 經理名稱 3 營業員id 4 營業員名稱 5 客戶名稱 6 抬頭 7 統編 8 通訊地址 9 T8單據日期 10 合約號 // 0 部門id 1 部門名稱 2 經理名稱 3 營業員id 4 營業員名稱 5 客戶名稱 6 抬頭 7 統編 8 通訊地址 9 T8單據日期 10 合約號
// 0 合約號 1 作番號 2 部門id 3 部門名稱 4 經理名稱 5 營業員id 6 營業員名稱 7 客戶名稱 8 抬頭 9 統編 10 通訊地址 // 0 合約號 1 作番號 2 部門id 3 部門名稱 4 經理名稱 5 營業員id 6 營業員名稱 7 客戶名稱 8 抬頭 9 統編 10 通訊地址
// 11 收款階段名稱 12 應收日期 13 收款金額 14 已開金額 15 已收金額 16 催收次數 // 11 收款階段名稱 12 應收日期 13 收款金額 14 已開金額 15 已收金額 16 催收次數
@ -562,7 +587,10 @@ $today = strtotime(date('Ymt'));
foreach ($arrayData as $key => $value) { foreach ($arrayData as $key => $value) {
if (isset($final_paystage[$key])) { if (isset($final_paystage[$key])) {
for ($sequence = 1; $sequence <= count($final_paystage[$key]); $sequence++) { for ($sequence = 1; $sequence <= count($final_paystage[$key]); $sequence++) {
<<<<<<< HEAD
$keyname = $key . $final_paystage[$key][$sequence]['sequenceNumber']; $keyname = $key . $final_paystage[$key][$sequence]['sequenceNumber'];
=======
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$value[4] = (isset($value[4]) && !empty($value[4])) ? $value[4] : '--'; $value[4] = (isset($value[4]) && !empty($value[4])) ? $value[4] : '--';
$value[5] = (isset($value[5]) && !empty($value[5])) ? $value[5] : '--'; $value[5] = (isset($value[5]) && !empty($value[5])) ? $value[5] : '--';
$value[6] = (isset($value[6]) && !empty($value[6])) ? $value[6] : '--'; $value[6] = (isset($value[6]) && !empty($value[6])) ? $value[6] : '--';
@ -571,13 +599,23 @@ foreach ($arrayData as $key => $value) {
$value[11] = (isset($value[11]) && !empty($value[11])) ? $value[11] : '--'; $value[11] = (isset($value[11]) && !empty($value[11])) ? $value[11] : '--';
$value[12] = (isset($value[12]) && !empty($value[12])) ? date('Y/m/d', strtotime($value[12])) : '--'; $value[12] = (isset($value[12]) && !empty($value[12])) ? date('Y/m/d', strtotime($value[12])) : '--';
$thisPayStage = $final_paystage[$key][$sequence]; $thisPayStage = $final_paystage[$key][$sequence];
<<<<<<< HEAD
$havetopay = ($today >= $thisPayStage['PlanPayDate']) ? "V" : "--"; $havetopay = ($today >= $thisPayStage['PlanPayDate']) ? "V" : "--";
=======
$keyname = $key . "/" . $final_paystage[$key][$sequence]['facilityno'] . "/" . $value[5];
$havetopay = ($today >= strtotime($thisPayStage['PlanPayDate'])) ? "V" : "--";
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
switch ($havetopay) { switch ($havetopay) {
case "V": case "V":
$unInvoiceAmount = $thisPayStage['PayAmount'] - $thisPayStage['InvoiceAmount']; $unInvoiceAmount = $thisPayStage['PayAmount'] - $thisPayStage['InvoiceAmount'];
$unReceivedAmount = $thisPayStage['PayAmount'] - $thisPayStage['receivedAmount']; $unReceivedAmount = $thisPayStage['PayAmount'] - $thisPayStage['receivedAmount'];
break; break;
default: default:
<<<<<<< HEAD
=======
$unInvoiceAmount = 0;
$unReceivedAmount = 0;
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
break; break;
} }
$excel_aray[$keyname] = [ $excel_aray[$keyname] = [
@ -635,6 +673,10 @@ $total_data = json_encode($excel_aray);
.hiddenTable { .hiddenTable {
display: none; display: none;
} }
.hidden {
display: none;
}
</style> </style>
<div style="width: 98%;margin: 1%;"> <div style="width: 98%;margin: 1%;">
@ -647,9 +689,21 @@ $total_data = json_encode($excel_aray);
<h3><strong>合約 (汰改)統整資訊</strong></h3> <h3><strong>合約 (汰改)統整資訊</strong></h3>
</div> </div>
</div> </div>
<<<<<<< HEAD
<div style="overflow-x:auto;"> <div style="overflow-x:auto;">
<table id="table_index" class="table table-striped table-bordered" style="width:100%"> <table id="table_index" class="table table-striped table-bordered" style="width:100%">
=======
<?php
include "./footer.php";
?>
<div style="width: 20%;float:right;margin-right:5%; ">
<label>查詢條件</label>
<input type="text" id="search" name="search" class="form-control" placeholder="請輸入合約號/作番號/客戶名稱" oninput="searchData()">
</div>
<div style="width: 98%; margin:1%;" style="overflow-x:auto;">
<table class="table table-striped table-bordered" style="width:100%">
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
<thead> <thead>
<tr> <tr>
<th style='text-align:center;vertical-align: middle;width:120px'>合約號</th> <th style='text-align:center;vertical-align: middle;width:120px'>合約號</th>
@ -670,8 +724,13 @@ $total_data = json_encode($excel_aray);
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<<<<<<< HEAD
<?php foreach ($excel_aray as $row) { ?> <?php foreach ($excel_aray as $row) { ?>
<tr> <tr>
=======
<?php foreach ($excel_aray as $key => $row) { ?>
<tr class="data-row" style="display: '';" id="<?= $key; ?>">
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
<td><?= $row[0]; ?></td> <td><?= $row[0]; ?></td>
<td><?= $row[1]; ?></td> <td><?= $row[1]; ?></td>
<td><?= $row[2] . "<br>" . $row[3]; ?></td> <td><?= $row[2] . "<br>" . $row[3]; ?></td>
@ -694,6 +753,24 @@ $total_data = json_encode($excel_aray);
</div> </div>
<script> <script>
<<<<<<< HEAD
=======
function searchData() {
var searchTerm = document.getElementById('search').value.toLowerCase();
var rows = document.getElementsByClassName('data-row');
for (var i = 0; i < rows.length; i++) {
var rowText = rows[i].textContent.toLowerCase();
// var rowText = rows[i].id.toLowerCase();
if (rowText.includes(searchTerm)) {
console.log(rowText);
rows[i].style.display = '';
} else {
rows[i].style.display = 'none';
}
}
}
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
function downloadData() { function downloadData() {
var xhr = new XMLHttpRequest(); var xhr = new XMLHttpRequest();
var url = window.location.origin + "/wms/account-receivable-renovate-excel.php?type=all&<?= $token_link ?>"; var url = window.location.origin + "/wms/account-receivable-renovate-excel.php?type=all&<?= $token_link ?>";
@ -717,4 +794,12 @@ $total_data = json_encode($excel_aray);
})); }));
} }
<<<<<<< HEAD
=======
function check(searchname) {
console.log(searchname);
}
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
</script> </script>

2
wms/contract-repair/prviewPdf.php

@ -509,7 +509,7 @@ if ($_POST['list']) {
</tr> </tr>
</table> </table>
</td> </td>
<td style="border:none">&nbsp;臺北市中山區敬業一路128巷39號3樓之1</td> <td style="border:none">&nbsp;桃園市觀音區崙坪村8鄰140號</td>
</tr> </tr>
</table> </table>
<p>&nbsp;</p> <p>&nbsp;</p>

2
wms/contract/js/alpine.js

@ -948,7 +948,7 @@ const contractInput = () => {
}, },
cities: [], cities: [],
data: { data: {
contractno: 'B23100060', contractno: 'B24010030',
total_price: '', //合約總價 total_price: '', //合約總價
vat: '', //統一編號 vat: '', //統一編號
mtype: 'A', //維修型態 mtype: 'A', //維修型態

BIN
wms/contract/mi/mi7.xlsx

Binary file not shown.

2
wms/contract/prviewPdf.php

@ -495,7 +495,7 @@ if($_POST['list']){
</tr> </tr>
</table> </table>
</td> </td>
<td style="border:none">&nbsp;臺北市中山區敬業一路128巷39號3樓之1</td> <td style="border:none">&nbsp;桃園市觀音區崙坪村8鄰140號</td>
</tr> </tr>
</table> </table>
<p>&nbsp;</p> <p>&nbsp;</p>

32
wms/fun_global.php

@ -99,6 +99,7 @@ function pricereview_class($rate, $user_id, &$ret = [], $special_fee, $i = 0)
return $ret; return $ret;
exit; exit;
} else { } else {
<<<<<<< HEAD
// // 若為第一層且使用者ID為區經理,直接訂好接下來的簽核人員並跳出。 // // 若為第一層且使用者ID為區經理,直接訂好接下來的簽核人員並跳出。
// if ($i == 0 && ($user_id == 'M0033' || $user_id == "M0137" || $user_id == 'M0029' || $user_id == 'M0054' || $user_id == "M0086")) { // if ($i == 0 && ($user_id == 'M0033' || $user_id == "M0137" || $user_id == 'M0029' || $user_id == 'M0054' || $user_id == "M0086")) {
// $ret[1] = $user_id . ",,"; // $ret[1] = $user_id . ",,";
@ -128,6 +129,37 @@ function pricereview_class($rate, $user_id, &$ret = [], $special_fee, $i = 0)
$ret[3] = "M0060,,"; // 業務協理 $ret[3] = "M0060,,"; // 業務協理
if ($rate < 80 || $special_fee > 0) { if ($rate < 80 || $special_fee > 0) {
$ret[4] = "M0006,,"; // 總經理 $ret[4] = "M0006,,"; // 總經理
=======
// 若為第一層且使用者ID為區經理,直接訂好接下來的簽核人員並跳出。
if ($i == 0 && ($user_id == 'M0033' || $user_id == "M0137" || $user_id == 'M0029' || $user_id == 'M0054' || $user_id == "M0086")) {
$ret[1] = $user_id . ",,";
// $ret[2] = "M0107,,<##>M0175,,"; // 業務部專員:M0175陳君敏、M0107許紓晴(第2關有多位審核人)
$ret[3] = "M0060,,"; // 業務協理
if ($rate < 80 || $special_fee > 0) {
$ret[4] = "M0006,,"; // 總經理
}
return $ret;
exit;
}
if ($row["manager"] != "M0060" && $row["manager"] != "M0006" && $row["manager"] != "M0008") {
// 新梯的部分 桃竹本該給陳家文,改為劉永德
if ($row["manager"] == 'M0029') {
$ret[1] = "M0137,,";
$i++;
pricereview_class($rate, $row["manager"], $ret, $special_fee, $i);
} else {
$ret[1] = $row["manager"] . ",,";
$i++;
pricereview_class($rate, $row["manager"], $ret, $special_fee, $i);
}
} else {
// $ret[2] = "M0107,,<##>M0175,,"; // 業務部專員:M0175陳君敏、M0107許紓晴(第2關有多位審核人)
$ret[3] = "M0060,,"; // 業務協理
if ($rate < 80 || $special_fee > 0) {
$ret[4] = "M0006,,"; // 總經理
}
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
} }
// } // }

6
wms/mkt/assets/js/alpine.js

@ -84,7 +84,7 @@ const priceOptionIndex = () => {
if (item.spec == null) item.spec = '' if (item.spec == null) item.spec = ''
if (item.memo == null) item.memo = '' if (item.memo == null) item.memo = ''
if (item.price == null) item.price = 0 if (item.price == null) item.price = 0
return (item.group_name.toLowerCase().includes(text.toLowerCase()) || item.spec.toLowerCase().includes(text.toLowerCase()) || item.memo.toLowerCase().includes(text.toLowerCase()) || String(item.price).includes(text.toLowerCase())); return (item.id.includes(text.toLowerCase()) ||item.group_name.toLowerCase().includes(text.toLowerCase()) || item.spec.toLowerCase().includes(text.toLowerCase()) || item.memo.toLowerCase().includes(text.toLowerCase()) || String(item.price).includes(text.toLowerCase()));
} }
}).slice((Number(this.currentpage) - 1) * Number(this.pageLength), (Number(this.currentpage) - 1) * Number(this.pageLength) + Number(this.pageLength)) }).slice((Number(this.currentpage) - 1) * Number(this.pageLength), (Number(this.currentpage) - 1) * Number(this.pageLength) + Number(this.pageLength))
this.dataLangth = this.options.length this.dataLangth = this.options.length
@ -165,7 +165,7 @@ const priceOptionSelect = () => {
if (item.spec == null) item.spec = '' if (item.spec == null) item.spec = ''
if (item.memo == null) item.memo = '' if (item.memo == null) item.memo = ''
if (item.price == null) item.price = 0 if (item.price == null) item.price = 0
return (item.group_name.toLowerCase().includes(text.toLowerCase()) || item.spec.toLowerCase().includes(text.toLowerCase()) || item.memo.toLowerCase().includes(text.toLowerCase()) || String(item.price).includes(text.toLowerCase())); return (item.id.includes(text.toLowerCase()) || item.group_name.toLowerCase().includes(text.toLowerCase()) || item.spec.toLowerCase().includes(text.toLowerCase()) || item.memo.toLowerCase().includes(text.toLowerCase()) || String(item.price).includes(text.toLowerCase()));
}).slice((Number(this.currentpage) - 1) * Number(this.pageLength), (Number(this.currentpage) - 1) * Number(this.pageLength) + Number(this.pageLength)) }).slice((Number(this.currentpage) - 1) * Number(this.pageLength), (Number(this.currentpage) - 1) * Number(this.pageLength) + Number(this.pageLength))
this.dataLangth = this.options.length this.dataLangth = this.options.length
} else { } else {
@ -304,7 +304,7 @@ const pricereviewOptionSelect = () => {
if(option.memo == null) option.memo = '' if(option.memo == null) option.memo = ''
if(option.price == null) option.price = 0 if(option.price == null) option.price = 0
if(option.unit == null) option.unit = '' if(option.unit == null) option.unit = ''
if(option.group_name.includes(val) || option.memo.toLowerCase().includes(val) || option.spec.toLowerCase().includes(val) || option.unit.includes(val) || String(option.price).includes(val)){ if(option.id.includes(val) || option.group_name.includes(val) || option.memo.toLowerCase().includes(val) || option.spec.toLowerCase().includes(val) || option.unit.includes(val) || String(option.price).includes(val)){
option.status = "Y" option.status = "Y"
}else{ }else{
option.status = "N" option.status = "N"

5
wms/mkt/assets/js/alpinejs/cdn.min.js

File diff suppressed because one or more lines are too long

7
wms/mkt/assets/js/pricereviewAlpine.js

@ -0,0 +1,7 @@
const pricereviewCreate = ()=>{
return {
init(){
console.log(123)
}
}
}

10
wms/mkt/conn.php

@ -20,11 +20,11 @@ $db_name = getenv('DB_DATABASE'); //使用的資料庫
$db_charset = 'utf8'; //設定字元編碼 $db_charset = 'utf8'; //設定字元編碼
// $db_hostname = 'localhost'; //資料庫主機名稱 $db_hostname = 'localhost'; //資料庫主機名稱
// $db_username = 'masadaroot'; //登入資料庫的管理者的帳號 $db_username = 'root'; //登入資料庫的管理者的帳號
// $db_password = 'x6h5E5p#u8y'; //登入密碼 $db_password = ''; //登入密碼
// $db_name = 'appwms'; //使用的資料庫 $db_name = 'appwms'; //使用的資料庫
// $db_charset = 'utf8'; //設定字元編碼 $db_charset = 'utf8'; //設定字元編碼
//建立PDO的指定工作 //建立PDO的指定工作
$dsn = "mysql:host=$db_hostname;dbname=$db_name;charset=$db_charset"; $dsn = "mysql:host=$db_hostname;dbname=$db_name;charset=$db_charset";

90
wms/mkt/css/pricereview.css

@ -0,0 +1,90 @@
#pricereviewCreate table, #pricereviewCreate th, #pricereviewCreate td {
border: 1px #ccc solid;
padding: 15px;
}
#pricereviewCreate table thead th {
background-color: #6D9EEB;
}
#pricereviewCreate table tbody td input {
font-size: 14px;
}
#pricereviewCreate table tbody th {
background-color: #CCE4F8;
font-size: 14px;
padding: 15px 2px;
min-width: 100px;
text-align: center;
}
#pricereviewCreate table input {
font-size: 13px;
}
#pricereviewCreate .pricreviewmain {
background-color: #F2F2F2;
padding: 20px;
border-radius: 6px;
}
#pricereviewCreate .pricreviewmain button {
color: #fff;
width: 55px;
height: 30px;
padding: 0;
margin-left: 10px;
font-size: 13px;
}
#pricereviewCreate .pricreviewmain button.addbtn {
background-color: #337AB7;
width: 30px;
}
#pricereviewCreate .pricreviewmain button.deleteBtn {
background-color: #D9534F;
color: #fff;
font-size: 12px;
width: 30px;
}
#pricereviewCreate .pricreviewmain button.selectElevator {
background-color: #D9534F;
color: #fff;
}
#pricereviewCreate .pricreviewmain > .divitem {
border: 1px #ccc solid;
padding: 10px;
border-radius: 4px;
}
#pricereviewCreate .pricreviewmain > .divitem .title {
display: flex;
align-items: center;
border-bottom: 1px #ccc solid;
padding: 10px 0;
margin-bottom: 10px;
}
#pricereviewCreate .pricreviewmain > .divitem .title h6 {
font-weight: 600;
}
#pricereviewCreate .pricreviewmain > .divitem table, #pricereviewCreate .pricreviewmain > .divitem th, #pricereviewCreate .pricreviewmain > .divitem td {
font-size: 14px;
background-color: transparent;
}
#pricereviewCreate .pricreviewmain > .divitem table input, #pricereviewCreate .pricreviewmain > .divitem table select, #pricereviewCreate .pricreviewmain > .divitem table textarea, #pricereviewCreate .pricreviewmain > .divitem th input, #pricereviewCreate .pricreviewmain > .divitem th select, #pricereviewCreate .pricreviewmain > .divitem th textarea, #pricereviewCreate .pricreviewmain > .divitem td input, #pricereviewCreate .pricreviewmain > .divitem td select, #pricereviewCreate .pricreviewmain > .divitem td textarea {
font-size: 13px;
}
#pricereviewCreate .pricreviewmain > .divitem table input[type=number]::-webkit-outer-spin-button,
#pricereviewCreate .pricreviewmain > .divitem table input[type=number]::-webkit-inner-spin-button, #pricereviewCreate .pricreviewmain > .divitem th input[type=number]::-webkit-outer-spin-button,
#pricereviewCreate .pricreviewmain > .divitem th input[type=number]::-webkit-inner-spin-button, #pricereviewCreate .pricreviewmain > .divitem td input[type=number]::-webkit-outer-spin-button,
#pricereviewCreate .pricreviewmain > .divitem td input[type=number]::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
#pricereviewCreate .pricreviewmain > .divitem table tr:hover .deleteBtn {
opacity: 1;
}
#pricereviewCreate .pricreviewmain > .divitem table .saletd {
position: relative;
}
#pricereviewCreate .pricreviewmain > .divitem table .saletd > .deleteBtn {
position: absolute;
top: 50%;
transform: translateY(-50%);
right: 2px;
opacity: 0;
transition: 0.3s;
}/*# sourceMappingURL=pricereview.css.map */

1
wms/mkt/css/pricereview.css.map

@ -0,0 +1 @@
{"version":3,"sources":["pricereview.scss","pricereview.css"],"names":[],"mappings":"AACI;EACI,sBAAA;EACA,aAAA;ACAR;ADGQ;EACI,yBAAA;ACDZ;ADIY;EACI,eAAA;ACFhB;ADIY;EACI,yBAAA;EACA,eAAA;EACA,iBAAA;EACA,gBAAA;EACA,kBAAA;ACFhB;ADKQ;EACI,eAAA;ACHZ;ADMI;EACI,yBAAA;EACA,aAAA;EACA,kBAAA;ACJR;ADKQ;EACI,WAAA;EACA,WAAA;EACA,YAAA;EACA,UAAA;EACA,iBAAA;EACA,eAAA;ACHZ;ADIY;EACI,yBAAA;EACA,WAAA;ACFhB;ADIY;EACI,yBAAA;EACA,WAAA;EACA,eAAA;EACA,WAAA;ACFhB;ADIY;EACI,yBAAA;EACA,WAAA;ACFhB;ADMQ;EACI,sBAAA;EACA,aAAA;EACA,kBAAA;ACJZ;ADKY;EACI,aAAA;EACA,mBAAA;EACA,6BAAA;EACA,eAAA;EACA,mBAAA;ACHhB;ADIgB;EACI,gBAAA;ACFpB;ADMY;EACI,eAAA;EACA,6BAAA;ACJhB;ADKgB;EACI,eAAA;ACHpB;ADKgB;;;;EAEA,wBAAA;EACA,SAAA;ACDhB;ADKgB;EACI,UAAA;ACHpB;ADKgB;EACI,kBAAA;ACHpB;ADIoB;EACI,kBAAA;EACA,QAAA;EACA,2BAAA;EACA,UAAA;EACA,UAAA;EACA,gBAAA;ACFxB","file":"pricereview.css"}

98
wms/mkt/css/pricereview.scss

@ -0,0 +1,98 @@
#pricereviewCreate{
table, th, td{
border:1px #ccc solid;
padding: 15px;
}
table{
thead th{
background-color: #6D9EEB;
}
tbody {
td input{
font-size: 14px;
}
th{
background-color: #CCE4F8;
font-size: 14px;
padding: 15px 2px;
min-width: 100px;
text-align: center;
}
}
input{
font-size: 13px;
}
}
.pricreviewmain{
background-color: #F2F2F2;
padding: 20px;
border-radius: 6px ;
button{
color:#fff;
width: 55px;
height: 30px;
padding: 0;
margin-left: 10px;
font-size: 13px;
&.addbtn{
background-color: #337AB7;
width: 30px;
}
&.deleteBtn{
background-color: #D9534F;
color:#fff;
font-size: 12px;
width: 30px;
}
&.selectElevator{
background-color: #D9534F;
color:#fff;
}
}
>.divitem{
border:1px #ccc solid;
padding: 10px;
border-radius: 4px ;
.title{
display: flex;
align-items: center;
border-bottom: 1px #ccc solid;
padding: 10px 0;
margin-bottom: 10px;
h6{
font-weight: 600;
}
}
table, th, td{
font-size: 14px;
background-color: transparent;
input, select, textarea{
font-size: 13px;
}
input[type=number]::-webkit-outer-spin-button,
input[type=number]::-webkit-inner-spin-button {
-webkit-appearance: none;
margin: 0;
}
}
table {
tr:hover .deleteBtn{
opacity: 1;
}
.saletd{
position: relative;
>.deleteBtn{
position: absolute;
top: 50%;
transform: translateY(-50%);
right:2px;
opacity: 0;
transition: .3s;
}
}
}
}
}
}

4
wms/mkt/price_option-index.php

@ -74,7 +74,7 @@ $optional_arr = [1 => '標', 2 => '選'];
<th scope="col" nowrap>配置</th> <th scope="col" nowrap>配置</th>
<th scope="col" nowrap>單位</th> <th scope="col" nowrap>單位</th>
<th scope="col" nowrap>定價</th> <th scope="col" nowrap>定價</th>
<?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225") : ?> <?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225" || $user_id =="M0060" || $user_id =="M0061") : ?>
<th scope="col" nowrap>MI</th> <th scope="col" nowrap>MI</th>
<?php endif; ?> <?php endif; ?>
</tr> </tr>
@ -96,7 +96,7 @@ $optional_arr = [1 => '標', 2 => '選'];
<td x-text="options_arr[option.optional]"></td> <td x-text="options_arr[option.optional]"></td>
<td x-text="option.unit"></td> <td x-text="option.unit"></td>
<td x-html="option.price!=null ? '$'+Number(option.price).toLocaleString() : '$0'"></td> <td x-html="option.price!=null ? '$'+Number(option.price).toLocaleString() : '$0'"></td>
<?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225") : ?> <?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225" || $user_id =="M0060" || $user_id =="M0061") : ?>
<td x-html="option.mi!=null ? '$'+Number(option.mi).toLocaleString() : ''"></td> <td x-html="option.mi!=null ? '$'+Number(option.mi).toLocaleString() : ''"></td>
<?php endif; ?> <?php endif; ?>
</tr> </tr>

4
wms/mkt/price_option-select.php

@ -58,7 +58,7 @@ $optional_arr = [1 => '標配', 2 => '選配',3=>'加價'];
<th scope="col" nowrap>配置</th> <th scope="col" nowrap>配置</th>
<th scope="col" nowrap>單位</th> <th scope="col" nowrap>單位</th>
<th scope="col" nowrap>定價</th> <th scope="col" nowrap>定價</th>
<?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225") : ?> <?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225" || $user_id =="M0061" || $user_id == "M0060") : ?>
<th scope="col" nowrap>MI</th> <th scope="col" nowrap>MI</th>
<?php endif; ?> <?php endif; ?>
</tr> </tr>
@ -80,7 +80,7 @@ $optional_arr = [1 => '標配', 2 => '選配',3=>'加價'];
<td x-text="options_arr[option.optional]"></td> <td x-text="options_arr[option.optional]"></td>
<td x-text="option.unit"></td> <td x-text="option.unit"></td>
<td x-html="option.price!=null ? '$'+Number(option.price).toLocaleString() : '$0'"></td> <td x-html="option.price!=null ? '$'+Number(option.price).toLocaleString() : '$0'"></td>
<?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225") : ?> <?php if ($user_id == 'M0174' || $user_id == 'M0107' || $user_id == "M0225" || $user_id =="M0060" || $user_id =="M0061") : ?>
<td x-html="option.mi!=null ? '$'+Number(option.mi).toLocaleString() : '$0'"></td> <td x-html="option.mi!=null ? '$'+Number(option.mi).toLocaleString() : '$0'"></td>
<?php endif; ?> <?php endif; ?>
</tr> </tr>

3
wms/mkt/pricereview-check.php

@ -52,6 +52,7 @@ $res = mysqli_query($link, $db_query);
foreach ($res as $data) { foreach ($res as $data) {
// 上層主管 // 上層主管
$sql = "select manager from account where accountid = '" . $data["person"] . "'"; $sql = "select manager from account where accountid = '" . $data["person"] . "'";
echo $sql;
$res_a = mysqli_query($link, $sql); $res_a = mysqli_query($link, $sql);
$row_a = mysqli_fetch_row($res_a); $row_a = mysqli_fetch_row($res_a);
$manager = $row_a[0]; $manager = $row_a[0];
@ -662,7 +663,7 @@ foreach ($res as $data) {
?> ?>
<tr> <tr>
<td><?php echo $idx; ?></td> <td><?php echo $idx; ?></td>
<td><input type="text" name="option_seat" class="form-control" size="30" value="<?= $val['item_spec']; ?>"></td> <td><input type="text" name="option_seat" class="form-control" size="30" value="<?= str_replace("()", "", str_replace("&amp;", "", str_replace("&lt;br&gt;", "", str_replace("&amp;lt;br&amp;gt;", "", $val['item_spec'])))); ?>"></td>
<td><input type="text" name="option_unit_price" class="form-control dollar-right" size="8" value="<?= number_format($val["item_unit_price"]); ?>"></td> <td><input type="text" name="option_unit_price" class="form-control dollar-right" size="8" value="<?= number_format($val["item_unit_price"]); ?>"></td>
<td><input type="text" name="option_qty" class="form-control" size="2" value="<?= number_format($val["item_qty"]); ?>"></td> <td><input type="text" name="option_qty" class="form-control" size="2" value="<?= number_format($val["item_qty"]); ?>"></td>
<td><input type="text" name="option_price_bp" class="form-control dollar-right" size="8" value="<?= number_format($val["item_price_bp"]); ?>"></td> <td><input type="text" name="option_price_bp" class="form-control dollar-right" size="8" value="<?= number_format($val["item_price_bp"]); ?>"></td>

25
wms/mkt/pricereview-create.php

@ -2550,18 +2550,19 @@ include "../footer.php";
<script> <script>
const options = [...<?php echo json_encode($options); ?>]; const options = [...<?php echo json_encode($options); ?>];
function selectOptionFn(pobj, jobj) { function selectOptionFn(pobj, jobj){
// var pobj = $(this).closest('td').parent(); // var pobj = $(this).closest('td').parent();
console.log(pobj); console.log(pobj);
// console.log(pobj.find('input[name=optionID]').val()); // console.log(pobj.find('input[name=optionID]').val());
// console.log(jobj.html(pobj.find('td').eq(0).html() + ' ' + pobj.find('td').eq(1).html())); // console.log(jobj.html(pobj.find('td').eq(0).html() + ' ' + pobj.find('td').eq(1).html()));
console.log(pobj.find('td').eq(0).html()); console.log(pobj.find('td').eq(0).html());
jobj.html(pobj.find('td').eq(1).html() + " " + pobj.find('td').eq(2).html() + '<br />(' + pobj.find('td').eq(3).html() + ')'); let sepc = pobj.find('td').eq(2).html() + '<br />(' + pobj.find('td').eq(3).html() + ')';
jobj.closest('td').parent().find('input[name=option_unit_price]').val(pobj.find('td').eq(6).html()); sepc = sepc.replace("()", "")
jobj.closest('td').parent().find('input[name=option_price_bp]').val(commafy(pobj.find('td').eq(6).html().replace(/[,]+/g, "") * jobj.closest('td').parent().find('input[name=option_qty]').val().replace(/[,]+/g, ""))); jobj.html(pobj.find('td').eq(1).html() + " " );
jobj.closest('td').parent().find('input[name=op_id]').val(pobj.find('td').eq(0).html()); jobj.closest('td').parent().find('input[name=option_unit_price]').val(pobj.find('td').eq(6).html());
$("#optionModal").modal('hide'); jobj.closest('td').parent().find('input[name=option_price_bp]').val(commafy(pobj.find('td').eq(6).html().replace(/[,]+/g, "") * jobj.closest('td').parent().find('input[name=option_qty]').val().replace(/[,]+/g, "")));
jobj.closest('td').parent().find('input[name=op_id]').val(pobj.find('td').eq(0).html());
$("#optionModal").modal('hide');
} }
function checkSubmit() { function checkSubmit() {

12
wms/mkt/pricereview-index.php

@ -358,7 +358,7 @@ if ($data) :
</style> </style>
<link rel="stylesheet" href="common.css"> <link rel="stylesheet" href="common.css">
<div style="overflow-x:auto; white-space:nowrap;"> <div style="overflow-x:auto; white-space:nowrap;">
<<<<<<< HEAD <?php if (($user_id === "M0060" || $user_id === "M0107" || $user_id === "M0175" || $user_id === "M0174" || $user_id === "M0225")) { ?> <a href="/wms/mkt/pricereview-index.php?&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (!isset($_GET['system_id']) && !isset($_GET['check'])) ? "btn btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 所有價審</a> <?php if (($user_id === "M0060" || $user_id === "M0107" || $user_id === "M0175" || $user_id === "M0174" || $user_id === "M0225")) { ?> <a href="/wms/mkt/pricereview-index.php?&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (!isset($_GET['system_id']) && !isset($_GET['check'])) ? "btn btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 所有價審</a>
<?php if (count($result) > 0) : ?> <?php if (count($result) > 0) : ?>
<a href="/wms/mkt/pricereview-index.php?system_id=<?= $result[1]['sid'] ?>&flow_id=<?= $result[1]['fid'] ?>&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['system_id'])) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 待我簽核</a> <a href="/wms/mkt/pricereview-index.php?system_id=<?= $result[1]['sid'] ?>&flow_id=<?= $result[1]['fid'] ?>&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['system_id'])) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 待我簽核</a>
<?php else : ?> <?php else : ?>
@ -368,15 +368,7 @@ if ($data) :
<a href="/wms/mkt/pricereview-index.php?check=2&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 2) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 結案同意</a> <a href="/wms/mkt/pricereview-index.php?check=2&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 2) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 結案同意</a>
<a href="/wms/mkt/pricereview-index.php?check=3&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 3) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 結案不同意</a> <a href="/wms/mkt/pricereview-index.php?check=3&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 3) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 結案不同意</a>
<?php } ?> <?php } ?>
=======
<?php if ($user_id === "M0060" || $user_id === "M0107" || $user_id === "M0175" || $user_id === "M0174" || $user_id === "M0225") { ?>
<a href="/wms/mkt/pricereview-index.php?&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (!isset($_GET['system_id']) && !isset($_GET['check'])) ? "btn btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 所有價審</a>
<a href="/wms/mkt/pricereview-index.php?system_id=<?= $result[1]['sid'] ?>&flow_id=<?= $result[1]['fid'] ?>&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['system_id'])) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 待我簽核</a>
<a href="/wms/mkt/pricereview-index.php?check=1&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 1) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 簽核完畢</a>
<a href="/wms/mkt/pricereview-index.php?check=2&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 2) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 結案同意</a>
<a href="/wms/mkt/pricereview-index.php?check=3&function_name=pricereview&token=<?php echo $token; ?>" class=" btn <?php echo (isset($_GET['check']) && $_GET['check'] == 3) ? "btn-primary" : "btn-secondary"; ?> btn-sm categoryBtn"> 結案不同意</a>
<?php } ?>
>>>>>>> c91540c2 (0125)
<table id="table_index" class="table table-striped table-bordered" style="width:100%"> <table id="table_index" class="table table-striped table-bordered" style="width:100%">
<thead> <thead>
<tr> <tr>

516
wms/mkt/pricereviewCreate.php

@ -0,0 +1,516 @@
<?php
// include "../header.php";
require_once("./conn.php");
?>
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.2/dist/css/bootstrap.min.css">
<link rel="stylesheet" href="./css/pricereview.css">
<script src="./assets/js/alpinejs/cdn.min.js"></script>
<script src="./assets/js/pricereviewAlpine.js"></script>
<div id="pricereviewCreate" x-data="pricereviewCreate()">
<div class="container">
<table class="table" border="1">
<thead >
<tr class="" >
<th scope="col" class="text-center " colspan="8">有望客戶基本資料</th>
</tr>
</thead>
<tbody>
<tr>
<th >卷號</th>
<td><input class="form-control" type="text" disabled value="B123456789" /></td>
<th>客戶名稱</th>
<td><input class="form-control" type="text" disabled value="中華民國" /></td>
<th>負責人</th>
<td><input class="form-control" type="text" disabled value="馬英九" /></td>
<th>客戶來源</th>
<td><input class="form-control" type="text" disabled value="朋友介紹" /></td>
</tr>
<tr>
<th>地址</th>
<td><input class="form-control" type="text" disabled value="嘉義市東區日新街55巷13號" /></td>
<th>案件名稱</th>
<td><input class="form-control" type="text" disabled value="川勝開發營造(興美七街)" /></td>
<th>統編/身份證</th>
<td><input class="form-control" type="text" disabled value="83557587" /></td>
<th>業主方聯係人</th>
<td><input class="form-control" type="text" disabled value="曾祈達" /></td>
</tr>
<tr>
<th>市話/手機</th>
<td><input class="form-control" type="text" disabled value="0921361700" /></td>
<th>營業員</th>
<td><input class="form-control" type="text" disabled value="林易增" /></td>
<th>台數</th>
<td><input class="form-control" type="number" disabled value="1" /></td>
<th>預定成交日</th>
<td><input class="form-control" type="text" disabled value="2024/02/01" /></td>
</tr>
<tr>
<th>有望客戶狀態</th>
<td><input class="form-control" type="text" disabled value="有望簽約(已報價)" /></td>
<th>汰改</th>
<td><input class="form-control" type="text" disabled value="否" /></td>
</tr>
</tbody>
</table>
<table class="table" border="1">
<thead >
<tr class="" >
<th scope="col" class="text-center " colspan="8">洽商進度</th>
</tr>
</thead>
<tbody>
<tr>
<td colspan=8>
<textarea class="form-control" name="progress" id="progress" cols="20" rows="5" disabled ></textarea>
</td>
</tr>
</tbody>
</table>
<table class="table" border="1">
<thead >
<tr class="" >
<th scope="col" class="text-center " colspan="8">電梯規格訊息</th>
</tr>
</thead>
<tbody>
<tr>
<th >序號</th>
<th >規格</th>
<th >人乘/載重</th>
<th >停數</th>
<th >開門方式</th>
<th >速度(m/min)</th>
<th >數量</th>
<th >單價</th>
</tr>
<tr>
<td ><input type="text" disabled class="form-control disabled" value="1"></td>
<td ><input type="text" disabled class="form-control disabled" value="MAH100(家庭梯)"></td>
<td ><input type="text" disabled class="form-control disabled" value="6人"></td>
<td ><input type="text" disabled class="form-control disabled" value="4人"></td>
<td ><input type="text" disabled class="form-control disabled" value="2S"></td>
<td ><input type="text" disabled class="form-control disabled" value="45"></td>
<td ><input type="text" disabled class="form-control disabled" value="1"></td>
<td ><input type="text" disabled class="form-control disabled" value="100000"></td>
</tr>
</tbody>
</table>
<div class="pricreviewmain container">
<div class="divitem">
<div class="title">
<h6>整機單價</h6>
<button class="addbtn btn" x-ref="addElevatorBtn">+</button>
</div>
<table class="table" border=1>
<thead>
<tr>
<td>電梯</td>
<td>人乘/載重</td>
<td>停數</td>
<td>速度(m/min)</td>
<td>開門方式</td>
<td>規格</td>
<td>單價</td>
<td>數量</td>
<td>複價</td>
<td>售價 </td>
</tr>
</thead>
<tbody>
<tr>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="MAE100">MAE100有機房</option>
<option value="MAM200">MAM200無機房</option>
<option value="MAH100">MAH100小電梯</option>
<option value="MAF100">MAE100貨梯(有機房)</option>
<option value="MAQ100">MAQ100強趨梯</option>
<option value="MAP100">MAP100平台梯</option>
</select>
</td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="6">6</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="15">15</option>
<option value="17">17</option>
<option value="20">20</option>
<option value="24">24</option>
</select>
</td>
<td>
<input class="form-control" type="number" style="width:50px;padding-left:5px" />
</td>
<td>
<select name="" id="" class="form-control" style="width:80px">
<option value="">請選擇</option>
<option value="9">9</option>
<option value="24">24</option>
<option value="30">30</option>
<option value="45">45</option>
<option value="60">60</option>
<option value="90">90</option>
<option value="105">105</option>
<option value="120">120</option>
<option value="150">150</option>
</select>
</td>
<td>
<select name="" id="" class="form-control" style="width:80px">
<option value="CO">CO</option>
<option value="2S">2S</option>
<option value="2U">CO</option>
<option value="4PCO">4PCO</option>
<option value="6PCO">6PCO</option>
</select>
</td>
<td>
<input type="text" class="form-control" disabled value="MAE100-6*7-CO45">
</td>
<td><input type="text" class="form-control" disabled value="750000" style="width:100px"></td>
<td><input type="number" class="form-control " disabled value="1" style="width:40px;padding-left:5px"></td>
<td><input type="number" class="form-control " disabled value="750000" style="width:100px"></td>
<td class="saletd">
<input type="number" class="form-control " disabled value="690000" style="width:100px">
<button class="deleteBtn btn btn-danger">X</button>
</td>
</tr>
<tr>
<td colspan=7>小計</td>
<td><input type="number" class="form-control" disabled value="1" style="width:40px;padding-left:5px"></td>
<td><input type="text" class="form-control" disabled value="750000" style="width:100px"></td>
<td><input type="text" class="form-control" disabled value="690000" style="width:100px"></td>
</tr>
</tbody>
</table>
</div>
<div class="divitem">
<div class="title">
<h6>Option加價</h6>
<button class="addbtn btn" x-ref="addElevatorBtn">+</button>
</div>
<table class="table" border=1>
<thead>
<tr>
<td>選配規格</td>
<td>單價</td>
<td>數量</td>
<td>複價</td>
<td>備註</td>
<td>所屬電梯</td>
<td>功能</td>
</tr>
</thead>
<tbody>
<tr>
<td><button class="btn btn-success">選擇</button></td>
<td><input type="text" class="form-control" value="35000"></td>
<td><input type="number" class="form-control" value="1"></td>
<td><input type="text" class="form-control" disabled value="35000"></td>
<td><input type="text" class="form-control"></td>
<td>MAE100-6*7-CO45</td>
<td>
<div class="d-flex">
<button class="selectElevator btn btn-danger">電梯</button>
<button class="deleteBtn btn btn-danger">X</button>
</div>
</td>
</tr>
<tr>
<td colspan=3>小計</td>
<td colspan=1 ><input type="number" class="form-control" disabled value="350000" ></td>
<td colspan=4 ></td>
</tr>
</tbody>
</table>
</div>
<div class="divitem">
<div class="title">
<h6>除外項目</h6>
<button class="addbtn btn" x-ref="addElevatorBtn">+</button>
</div>
<table class="table" border=1>
<thead>
<tr>
<td>詢價單號</td>
<td>名稱</td>
<td>單價</td>
<td>數量</td>
<td>複價</td>
<td>所屬電梯</td>
<td>功能</td>
</tr>
</thead>
<tbody>
<tr>
<td><input type="text" class="form-control" value=""></td>
<td><input type="text" class="form-control" value=""></td>
<td><input type="text" class="form-control" value=""></td>
<td><input type="number" class="form-control" value=""></td>
<td><input type="text" class="form-control" disabled></td>
<td>MAE100-6*7-CO45</td>
<td>
<div class="d-flex">
<button class="selectElevator btn btn-danger">電梯</button>
<button class="deleteBtn btn btn-danger">X</button>
</div>
</td>
</tr>
<tr>
<td colspan=3>小計</td>
<td colspan=1 ><input type="number" class="form-control" disabled value="0" ></td>
<td colspan=1 ><input type="number" class="form-control" disabled value="0" ></td>
<td colspan=3 ></td>
</tr>
</tbody>
</table>
</div>
<div class="divitem">
<div class="title">
<h6>保固延長</h6>
<button class="addbtn btn" x-ref="addElevatorBtn">+</button>
</div>
<table class="table" border=1>
<thead>
<tr>
<td>電梯</td>
<td>人乘/載重</td>
<td>停數</td>
<td>速度</td>
<td>單價</td>
<td>數量(月)</td>
<td>複價</td>
<td>備註</td>
<td>所屬電梯</td>
<td>功能</td>
</tr>
</thead>
<tbody>
<tr>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="MAE100">MAE100有機房</option>
<option value="MAM200">MAM200無機房</option>
<option value="MAH100">MAH100小電梯</option>
<option value="MAF100">MAE100貨梯(有機房)</option>
<option value="MAQ100">MAQ100強趨梯</option>
<option value="MAP100">MAP100平台梯</option>
</select>
</td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="6">6</option>
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
<option value="12">12</option>
<option value="13">13</option>
<option value="15">15</option>
<option value="17">17</option>
<option value="20">20</option>
<option value="24">24</option>
</select>
</td>
<td>
<input class="form-control" type="number" style="width:50px;padding-left:5px" />
</td>
<td>
<select name="" id="" class="form-control" style="width:80px">
<option value="">請選擇</option>
<option value="9">9</option>
<option value="24">24</option>
<option value="30">30</option>
<option value="45">45</option>
<option value="60">60</option>
<option value="90">90</option>
<option value="105">105</option>
<option value="120">120</option>
<option value="150">150</option>
</select>
</td>
<td><input type="text" class="form-control"></td>
<td><input type="number" class="form-control " value="1" style="width:40px;padding-left:5px"></td>
<td><input type="number" class="form-control " disabled value="750000" style="width:100px"></td>
<td><input type="text" class="form-control"></td>
<td>MAE100-6*7-CO45</td>
<td>
<div class="d-flex">
<button class="selectElevator btn btn-danger">電梯</button>
<button class="deleteBtn btn btn-danger">X</button>
</div>
</td>
</tr>
<tr>
<td colspan=5>小計</td>
<td colspan=1 ><input type="number" class="form-control" disabled value="0" ></td>
<td colspan=1 ><input type="number" class="form-control" disabled value="0" ></td>
<td colspan=3 ></td>
</tr>
</tbody>
</table>
</div>
<div class="divitem">
<table style="width:800px" class="table" border=1>
<thead>
<tr>
<td>付款辦法</td>
<td>款別</td>
<td >比例(%)</td>
<td>金額</td>
<td>票期</td>
</tr>
</thead>
<tbody>
<tr>
<td rowspan="4">材料</td>
<td >1.訂金</td>
<td ><input type="number" class="form-control" value="20"></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td >2.二次款</td>
<td ><input type="number" class="form-control" ></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td >3.貨到工地款</td>
<td ><input type="number" class="form-control" value="50"></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td >4.其他</td>
<td ><input type="number" class="form-control"></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td rowspan="3">安裝</td>
<td >5.安裝完畢款</td>
<td ><input type="number" class="form-control" value="20"></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td >6.驗收款</td>
<td ><input type="number" class="form-control" value="10"></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td >7.其他</td>
<td ><input type="number" class="form-control"></td>
<td><input type="number" class="form-control" disabled></td>
<td>
<select name="" id="" class="form-control">
<option value="">請選擇</option>
<option value="7">7天</option>
<option value="30" selected>30天</option>
<option value="60">60天</option>
<option value="90">90天</option>
<option value="120">120天</option>
<option value="180">180天</option>
<option value="">其他</option>
</select>
</td>
</tr>
<tr>
<td colspan=2>合計</td>
<td colspan=1 ><input type="number" class="form-control" disabled value="0" ></td>
<td colspan=1 ><input type="number" class="form-control" disabled value="0" ></td>
<td colspan=3 ></td>
</tr>
<tr>
<td colspan=2>備註</td>
<td colspan=4 >
<textarea name="" class="form-control" id="" cols="30" rows="5"></textarea>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>

9
wms/mkt/pricereview_mi-api.php

@ -105,6 +105,7 @@ try {
$opt_elev_arr[$row[0]]["item_qty"] = $row[3]; $opt_elev_arr[$row[0]]["item_qty"] = $row[3];
$tmp_arr = explode(",", $row[4]); $tmp_arr = explode(",", $row[4]);
$opt_elev_arr[$row[0]]["elev_no"] = $tmp_arr; $opt_elev_arr[$row[0]]["elev_no"] = $tmp_arr;
if (!empty($opt_elev_arr[$row[0]]["elev_no"][0])) { if (!empty($opt_elev_arr[$row[0]]["elev_no"][0])) {
foreach ($tmp_arr as $v) { foreach ($tmp_arr as $v) {
$elev_arr[$v]["option"][] = $row[0]; $elev_arr[$v]["option"][] = $row[0];
@ -124,6 +125,7 @@ try {
} }
*/ */
} }
mysqli_free_result($res); mysqli_free_result($res);
$opt_nosel_id_arr = array_diff(array_keys($opt_elev_arr), $opt_sel_id_arr); $opt_nosel_id_arr = array_diff(array_keys($opt_elev_arr), $opt_sel_id_arr);
@ -334,6 +336,7 @@ try {
AND option_mi.open_kind = '" . $v["item_op"] . "'"; AND option_mi.open_kind = '" . $v["item_op"] . "'";
$res_om = mysqli_query($link, $sql4); $res_om = mysqli_query($link, $sql4);
if ($row_om = mysqli_fetch_assoc($res_om)) { if ($row_om = mysqli_fetch_assoc($res_om)) {
$row_om['price'] = (int)ceil($row_om['price']); $row_om['price'] = (int)ceil($row_om['price']);
$plus = ($v["floors"] > $row_om["base_floor"]) ? ($v["floors"] - $row_om["base_floor"]) * $row_om["base_floor_plus"] : 0; $plus = ($v["floors"] > $row_om["base_floor"]) ? ($v["floors"] - $row_om["base_floor"]) * $row_om["base_floor_plus"] : 0;
@ -485,7 +488,13 @@ try {
} }
} }
// $rarr["content"][] = $exceptArr; // $rarr["content"][] = $exceptArr;
<<<<<<< HEAD
foreach ($rarr["content"] as $idx => &$item) { foreach ($rarr["content"] as $idx => &$item) {
=======
print_r($rarr["content"]);
exit;
foreach($rarr["content"] as $idx=>&$item){
>>>>>>> ea503fbee65cc2bb5ce9442e618db9c6878a09cb
$newTotal = 0; $newTotal = 0;
$item[16] = []; $item[16] = [];
$item[14] = []; $item[14] = [];

3
wms/rib01-check.php

@ -358,7 +358,8 @@ $feetype = mysqli_fetch_all($feetype_query, MYSQLI_ASSOC);
</tr> </tr>
</thead> </thead>
<tbody> <tbody>
<?php foreach ($pay_data as $pay) : ?> <?php
foreach ($pay_data as $pay) : ?>
<tr> <tr>
<td><?= $pay['FeeDate'] ?></td> <td><?= $pay['FeeDate'] ?></td>
<td><?= round($pay['Quantity']) ?></td> <td><?= round($pay['Quantity']) ?></td>

22
wms/rib01-edit.php

@ -159,11 +159,13 @@ if ($pay_data) {
<select name="WriteOffId" id="WriteOffId" class="form-control" required> <select name="WriteOffId" id="WriteOffId" class="form-control" required>
<option value="" id="WriteOffOption">請選擇報銷人</option> <option value="" id="WriteOffOption">請選擇報銷人</option>
<?php <?php
foreach ($member as $key => $value) { ?> if (is_iterable($member)) {
<option value="<?php echo $key; ?>" id="<?= 'WriteOff' . $value[1] . $value[0] ?>" <?php if ($key == $data['WriteOffId']) { foreach ($member as $key => $value) { ?>
echo "selected"; <option value="<?php echo $key; ?>" id="<?= 'WriteOff' . $value[1] . $value[0] ?>" <?php if ($key == $data['WriteOffId']) {
} ?>> <?php echo $value[0]; ?> </option> echo "selected";
} ?>> <?php echo $value[0]; ?> </option>
<?php } <?php }
}
?> ?>
</select> </select>
</div> </div>
@ -187,12 +189,14 @@ if ($pay_data) {
echo "disabled"; echo "disabled";
} ?>> } ?>>
<?php <?php
foreach ($member as $key => $value) { if (is_iterable($member)) {
foreach ($member as $key => $value) {
?> ?>
<option value="<?php echo $key; ?>" id="<?= 'Gathering' . $value[1] . $value[0] ?>" <?php if ($key == $data['GatheringPersonId']) { <option value="<?php echo $key; ?>" id="<?= 'Gathering' . $value[1] . $value[0] ?>" <?php if ($key == $data['GatheringPersonId']) {
echo "selected"; echo "selected";
} ?>> <?php echo $value[0]; ?> </option> } ?>> <?php echo $value[0]; ?> </option>
<?php }; ?> <?php }
}; ?>
</select> </select>
</div> </div>

150
wms/rib01-index.php

@ -105,81 +105,87 @@ if ($data) :
</thead> </thead>
<tbody> <tbody>
<?php foreach ($data as $data) : ?> <?php
<tr> if (is_iterable($data)) {
<td><?php echo $data['BillNo']; ?></td> foreach ($data as $data) : ?>
<td><?php echo substr($data['BillDate'], 0, 10); ?></td> <tr>
<td><?php if ($data['pay_type'] == 0) { <td><?php echo $data['BillNo']; ?></td>
echo "現金"; <td><?php echo substr($data['BillDate'], 0, 10); ?></td>
} elseif ($data['pay_type'] == 1) { <td><?php if ($data['pay_type'] == 0) {
echo "銀行轉帳"; echo "現金";
}; ?></td> } elseif ($data['pay_type'] == 1) {
<td><?php echo accountidToName($data['TransactId']); ?></td> echo "銀行轉帳";
<td><?php foreach ($deptype as $dept) { }; ?></td>
if ($data["DeptId"] == $dept['department_id']) { <td><?php echo accountidToName($data['TransactId']); ?></td>
echo $dept['name']; <td><?php
break; if (is_iterable($deptype)) {
} foreach ($deptype as $dept) {
} ?></td> if ($data["DeptId"] == $dept['department_id']) {
<td><?php echo accountidToName($data['WriteOffId']); ?></td> echo $dept['name'];
<td><?php if ($data['CurrId'] == "USD") : echo "美金"; break;
elseif ($data['CurrId'] == "TWD") : echo "台幣"; }
elseif ($data['CurrId'] == "CNY") : echo "人民幣"; }
elseif ($data['CurrId'] == "HKD") : echo "港幣"; } ?></td>
elseif ($data['CurrId'] == "EUR") : echo "歐元"; <td><?php echo accountidToName($data['WriteOffId']); ?></td>
endif; ?> </td> <td><?php if ($data['CurrId'] == "USD") : echo "美金";
<?php elseif ($data['CurrId'] == "TWD") : echo "台幣";
if (($user_id == "M0056" || $user_id == "M0209")) { ?> elseif ($data['CurrId'] == "CNY") : echo "人民幣";
<td><?php echo $data['OAmountWithTax']; ?> </td> elseif ($data['CurrId'] == "HKD") : echo "港幣";
<?php } ?> elseif ($data['CurrId'] == "EUR") : echo "歐元";
<td><?php if ($data['CurrentState'] == 0) : echo "草稿"; endif; ?> </td>
elseif ($data['CurrentState'] == 1) : echo "審核中"; <?php
elseif ($data['CurrentState'] == 2) : echo "通過"; if (($user_id == "M0056" || $user_id == "M0209")) { ?>
elseif ($data['CurrentState'] == 3) : echo "作廢"; <td><?php echo $data['OAmountWithTax']; ?> </td>
elseif ($data['CurrentState'] == 5) : echo "退回"; <?php } ?>
else : echo "結案"; <td><?php if ($data['CurrentState'] == 0) : echo "草稿";
endif ?> elseif ($data['CurrentState'] == 1) : echo "審核中";
</td> elseif ($data['CurrentState'] == 2) : echo "通過";
<td> elseif ($data['CurrentState'] == 3) : echo "作廢";
<p> elseif ($data['CurrentState'] == 5) : echo "退回";
<?php if (($user_id == "M0056" || $user_id == "M0209") && $data['CurrentState'] == 1) { else : echo "結案";
?> endif ?>
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=1&<?= $token_link ?>" class="btn btn-success btn-sm"> </td>
<span class="glyphicon glyphicon-pawn"></span> <td>
</a> <p>
<?php <?php if (($user_id == "M0056" || $user_id == "M0209") && $data['CurrentState'] == 1) {
} else { ?> ?>
<?php if ($data['CurrentState'] == 0) : ?> <a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=1&<?= $token_link ?>" class="btn btn-success btn-sm">
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=0&<?= $token_link ?>" class="btn btn-warning btn-sm"> <span class="glyphicon glyphicon-pawn"></span>
<span class="glyphicon glyphicon-pencil"></span>
</a> </a>
<?php elseif ($data['CurrentState'] == 1) : ?> <?php
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=1&<?= $token_link ?>" class="btn btn-primary btn-sm"> } else { ?>
<span class=" glyphicon glyphicon-search"></span> <?php if ($data['CurrentState'] == 0) : ?>
</a> <a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=0&<?= $token_link ?>" class="btn btn-warning btn-sm">
<button type="button" onclick="download(<?= $data['rib_id'] ?>)" class="btn btn-info btn-sm"><span class="glyphicon glyphicon-download-alt"></span></button> <span class="glyphicon glyphicon-pencil"></span>
<!-- <a href="rib03-download.php?id=<?php echo $data['rib_id'] ?>&<?= $token_link ?>" class="btn btn-info btn-sm"> </a>
<?php elseif ($data['CurrentState'] == 1) : ?>
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=1&<?= $token_link ?>" class="btn btn-primary btn-sm">
<span class=" glyphicon glyphicon-search"></span>
</a>
<button type="button" onclick="download(<?= $data['rib_id'] ?>)" class="btn btn-info btn-sm"><span class="glyphicon glyphicon-download-alt"></span></button>
<!-- <a href="rib03-download.php?id=<?php echo $data['rib_id'] ?>&<?= $token_link ?>" class="btn btn-info btn-sm">
<span class="glyphicon glyphicon-download-alt"></span> <span class="glyphicon glyphicon-download-alt"></span>
</a> --> </a> -->
<?php elseif ($data['CurrentState'] == 2) : ?> <?php elseif ($data['CurrentState'] == 2) : ?>
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=2&<?= $token_link ?>" class="btn btn-info btn-sm"> <a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=2&<?= $token_link ?>" class="btn btn-info btn-sm">
<span class=" glyphicon glyphicon-ok"></span> <span class=" glyphicon glyphicon-ok"></span>
</a> </a>
<?php elseif ($data['CurrentState'] == 3) : ?> <?php elseif ($data['CurrentState'] == 3) : ?>
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=2&<?= $token_link ?>" class="btn btn-primary btn-sm"> <a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=2&<?= $token_link ?>" class="btn btn-primary btn-sm">
<span class="glyphicon glyphicon-search"></span> <span class="glyphicon glyphicon-search"></span>
</a> </a>
<?php elseif ($data['CurrentState'] == 5) : ?> <?php elseif ($data['CurrentState'] == 5) : ?>
<a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=2&<?= $token_link ?>" class="btn btn-primary btn-sm"> <a href="rib01-check.php?id=<?php echo $data['rib_id'] ?>&state=2&<?= $token_link ?>" class="btn btn-primary btn-sm">
<span class="glyphicon glyphicon-search"></span> <span class="glyphicon glyphicon-search"></span>
</a> </a>
<?php endif; <?php endif;
} ?> } ?>
</p> </p>
</td> </td>
</tr> </tr>
<?php endforeach; ?> <?php endforeach;
} ?>
</tbody> </tbody>
</table> </table>
</div> </div>

2
wms/rib02-create.php

@ -157,7 +157,7 @@ $materials = $conn->query($sql_Material);
</div> </div>
<div class="col-md-3"> <div class="col-md-3">
<label for="FeeDate" style="color: red;">發票日期</label> <label for="FeeDate" style="color: red;">費用日期</label>
<input class="form-control" type="int" name="FeeDate" id="FeeDate" placeholder="西元年(4碼)+月(2碼)+日(2碼)" required> <input class="form-control" type="int" name="FeeDate" id="FeeDate" placeholder="西元年(4碼)+月(2碼)+日(2碼)" required>
</div> </div>

109
wms/rib02-edit.php

@ -17,10 +17,12 @@ $member = array();
$sql_mydept = "SELECT UserId, Username FROM capMembership"; $sql_mydept = "SELECT UserId, Username FROM capMembership";
$deptmem = $conn->query($sql_mydept); $deptmem = $conn->query($sql_mydept);
foreach ($deptmem as $mem) { if (is_iterable($deptmem)) {
$userid = $mem['UserId']; foreach ($deptmem as $mem) {
$username = $mem['Username']; $userid = $mem['UserId'];
$member["$userid"] = [$username]; $username = $mem['Username'];
$member["$userid"] = [$username];
}
}; };
$sql_dept = "SELECT DeptId, PersonId FROM comPerson WHERE DeptId!='0001'"; $sql_dept = "SELECT DeptId, PersonId FROM comPerson WHERE DeptId!='0001'";
$allpeople = $conn->query($sql_dept); $allpeople = $conn->query($sql_dept);
@ -61,10 +63,11 @@ $rib_id = $ribsub['rib_id'];
$sql_invoiceNo = "SELECT DISTINCT InvoiceNo FROM rib_sub WHERE rib_id !== $rib_id"; $sql_invoiceNo = "SELECT DISTINCT InvoiceNo FROM rib_sub WHERE rib_id !== $rib_id";
$invoiceNo = mysqli_query($link, $sql_invoiceNo); $invoiceNo = mysqli_query($link, $sql_invoiceNo);
$invoiceNo_array = array(); $invoiceNo_array = array();
foreach ($invoiceNo as $invoice) { if (is_iterable($invoiceNo)) {
array_push($invoiceNo_array, $invoice['InvoiceNo']); foreach ($invoiceNo as $invoice) {
array_push($invoiceNo_array, $invoice['InvoiceNo']);
}
} }
$BizJSON = json_encode($BusinessPartner); $BizJSON = json_encode($BusinessPartner);
$InvoiceJSON = json_encode($invoiceNo_array); $InvoiceJSON = json_encode($invoiceNo_array);
$sql_Project = "SELECT * FROM comProject"; $sql_Project = "SELECT * FROM comProject";
@ -96,7 +99,7 @@ $materials = $conn->query($sql_Material);
</div> </div>
<div class="col-md-3"> <div class="col-md-3">
<label for="FeeDate" style="color: red;">發票日期</label> <label for="FeeDate" style="color: red;">費用日期</label>
<input class="form-control" type="int" name="FeeDate" id="FeeDate" placeholder="西元年(4碼)+月(2碼)+日(2碼)" value="<?= $ribsub['FeeDate'] ?>" required> <input class="form-control" type="int" name="FeeDate" id="FeeDate" placeholder="西元年(4碼)+月(2碼)+日(2碼)" value="<?= $ribsub['FeeDate'] ?>" required>
</div> </div>
@ -105,11 +108,13 @@ $materials = $conn->query($sql_Material);
<label for="FeeTypeId" style="color: red;">費用項目代碼</label> <label for="FeeTypeId" style="color: red;">費用項目代碼</label>
<select name="FeeTypeId" class="form-control" required> <select name="FeeTypeId" class="form-control" required>
<?php <?php
foreach ($feetype as $key => $value) { ?> if (is_iterable($feetype)) {
<option value="<?php echo $value['FeeTypeId']; ?>" <?php if ($value['FeeTypeId'] == $ribsub['FeeTypeId']) { foreach ($feetype as $key => $value) { ?>
echo "selected"; <option value="<?php echo $value['FeeTypeId']; ?>" <?php if ($value['FeeTypeId'] == $ribsub['FeeTypeId']) {
} ?>><?php echo $value['FeeTypeName']; ?></option> echo "selected";
<?php }; } ?>><?php echo $value['FeeTypeName']; ?></option>
<?php }
};
?> ?>
</select> </select>
</div> </div>
@ -171,11 +176,13 @@ $materials = $conn->query($sql_Material);
<label for="FeeTypeId" style="color: red;">費用項目代碼</label> <label for="FeeTypeId" style="color: red;">費用項目代碼</label>
<select name="FeeTypeId" id="FeeTypeId" class="form-control" required> <select name="FeeTypeId" id="FeeTypeId" class="form-control" required>
<?php <?php
foreach ($feetype as $key => $value) { ?> if (is_iterable($feetype)) {
<option value="<?php echo $value['FeeTypeId']; ?>" <?php if ($value['FeeTypeId'] == $ribsub['FeeTypeId']) { foreach ($feetype as $key => $value) { ?>
echo "selected"; <option value="<?php echo $value['FeeTypeId']; ?>" <?php if ($value['FeeTypeId'] == $ribsub['FeeTypeId']) {
} ?>><?php echo $value['FeeTypeName']; ?></option> echo "selected";
<?php }; } ?>><?php echo $value['FeeTypeName']; ?></option>
<?php }
};
?> ?>
</select> </select>
</div> </div>
@ -188,12 +195,14 @@ $materials = $conn->query($sql_Material);
<label for="FeeDeptId" style="color: red;">歸屬部門</label> <label for="FeeDeptId" style="color: red;">歸屬部門</label>
<select name="FeeDeptId" id="FeeDeptId" class="form-control" required> <select name="FeeDeptId" id="FeeDeptId" class="form-control" required>
<?php <?php
foreach ($deptype as $dept) { ?> if (is_iterable($deptype)) {
<option value="<?php echo $dept['DeptId']; ?>" <?php foreach ($deptype as $dept) { ?>
if ($dept['DeptId'] == $ribsub['FeeDeptId']) { <option value="<?php echo $dept['DeptId']; ?>" <?php
echo "selected"; if ($dept['DeptId'] == $ribsub['FeeDeptId']) {
} ?>><?php echo $dept['DeptName']; ?></option> echo "selected";
<?php }; } ?>><?php echo $dept['DeptName']; ?></option>
<?php }
};
?> ?>
</select> </select>
@ -207,11 +216,13 @@ $materials = $conn->query($sql_Material);
<select name="WriteOffId" id="WriteOffId" class="form-control"> <select name="WriteOffId" id="WriteOffId" class="form-control">
<option value="" id="WriteOddOption"> </option> <option value="" id="WriteOddOption"> </option>
<?php <?php
foreach ($member as $key => $value) { ?> if (is_iterable($member)) {
<option value="<?php echo $key; ?>" style="display:none" id="<?= 'WriteOff' . $value[1] . '-' . $value[0] ?>" <?php if ($key == $ribsub['WriteOffId']) { foreach ($member as $key => $value) { ?>
echo "selected"; <option value="<?php echo $key; ?>" style="display:none" id="<?= 'WriteOff' . $value[1] . '-' . $value[0] ?>" <?php if ($key == $ribsub['WriteOffId']) {
} ?>> <?php echo $value[0]; ?> </option> echo "selected";
<?php }; ?> } ?>> <?php echo $value[0]; ?> </option>
<?php }
}; ?>
</select> </select>
</div> </div>
@ -224,12 +235,14 @@ $materials = $conn->query($sql_Material);
<select name="ProjectId" id="ProjectId"> <select name="ProjectId" id="ProjectId">
<option value=""></option> <option value=""></option>
<?php <?php
foreach ($projects as $Project) { if (is_iterable($projects)) {
foreach ($projects as $Project) {
?> ?>
<option value="<?= $Project['ProjectId'] ?>" <?php if ($Project['ProjectId'] == $ribsub['ProjectId']) { <option value="<?= $Project['ProjectId'] ?>" <?php if ($Project['ProjectId'] == $ribsub['ProjectId']) {
echo "selected"; echo "selected";
} ?>><?= $Project['ProjectId'] . $Project['ProjectName'] ?></option> } ?>><?= $Project['ProjectId'] . $Project['ProjectName'] ?></option>
<?php <?php
}
} }
?> ?>
</select> </select>
@ -240,12 +253,14 @@ $materials = $conn->query($sql_Material);
<select name="CU_MaterialId" id="CU_MaterialId"> <select name="CU_MaterialId" id="CU_MaterialId">
<option value=""></option> <option value=""></option>
<?php <?php
foreach ($materials as $material) { if (is_iterable($materials)) {
foreach ($materials as $material) {
?> ?>
<option value="<?= $material['MaterialId'] ?>" <?php if ($material['MaterialId'] == $ribsub['CU_MaterialId']) { <option value="<?= $material['MaterialId'] ?>" <?php if ($material['MaterialId'] == $ribsub['CU_MaterialId']) {
echo "selected"; echo "selected";
} ?>><?= $material['MaterialId'] . $material['MaterialName'] ?></option> } ?>><?= $material['MaterialId'] . $material['MaterialName'] ?></option>
<?php <?php
}
} }
?> ?>
</select> </select>
@ -285,11 +300,13 @@ $materials = $conn->query($sql_Material);
<label for="UnitId" style="color: red;">計量單位</label> <label for="UnitId" style="color: red;">計量單位</label>
<select name="UnitId" class="form-control" required> <select name="UnitId" class="form-control" required>
<?php <?php
foreach ($unit as $key => $value) { ?> if (is_iterable($unit)) {
<option value="<?php echo $value['UnitId']; ?>" <?php if ($value['UnitId'] == $ribsub['UnitId']) { foreach ($unit as $key => $value) { ?>
echo "selected"; <option value="<?php echo $value['UnitId']; ?>" <?php if ($value['UnitId'] == $ribsub['UnitId']) {
} ?>><?php echo $value['UnitName']; ?></option> echo "selected";
<?php }; } ?>><?php echo $value['UnitName']; ?></option>
<?php }
};
?> ?>
</select> </select>
</div> </div>
@ -694,11 +711,13 @@ $materials = $conn->query($sql_Material);
window.open('rib02-invoice.php', '新視窗的名稱', config = 'height=600, width=600'); window.open('rib02-invoice.php', '新視窗的名稱', config = 'height=600, width=600');
} }
function checkInvoice(){
function checkInvoice() {
var invoiceArray = <?= $InvoiceJSON ?>; var invoiceArray = <?= $InvoiceJSON ?>;
if($.inArray($("#InvoiceNo").val().replace("-", ""),invoiceArray) !== -1) { if ($.inArray($("#InvoiceNo").val().replace("-", ""), invoiceArray) !== -1) {
alert("此發票已報銷過"); alert("此發票已報銷過");
$("#InvoiceNo").val('');} $("#InvoiceNo").val('');
}
} }
function changeWriteOffId(SelectedDept) { function changeWriteOffId(SelectedDept) {

18
wms/rib02-submit.php

@ -50,7 +50,7 @@ $OAmount = $CurrId == "TWD" ? round($_POST['OAmount']) : round($_POST['OAmount']
$TaxId = $_POST['TaxId']; $TaxId = $_POST['TaxId'];
$IsCounteract = $_POST['IsCounteract']; $IsCounteract = $_POST['IsCounteract'];
$InvoiceId = $_POST['InvoiceId']; $InvoiceId = $_POST['InvoiceId'];
$VoucherCount = empty($_POST['VoucherCount']) ? 1 : $_POST['VoucherCount']; $VoucherCount = isset($_POST['VoucherCount']) ? $_POST['VoucherCount']:0;
$VoucherType = isset($_POST['VoucherType']) ? $_POST['VoucherType'] : 0; $VoucherType = isset($_POST['VoucherType']) ? $_POST['VoucherType'] : 0;
$InvoiceNo = empty($_POST['InvoiceNo']) ? " " : (in_array(str_replace("-", "", $_POST['InvoiceNo']), $invoiceNo_array) ? " " : str_replace("-", "", $_POST['InvoiceNo'])); $InvoiceNo = empty($_POST['InvoiceNo']) ? " " : (in_array(str_replace("-", "", $_POST['InvoiceNo']), $invoiceNo_array) ? " " : str_replace("-", "", $_POST['InvoiceNo']));
@ -106,12 +106,11 @@ if ($submit == "add") {
$SQL1 = "INSERT INTO rib_sub (`RowCode`,`rib_id`,`RowNo`,`FeeDate`,`FeeTypeId`,`WriteOffType`, $SQL1 = "INSERT INTO rib_sub (`RowCode`,`rib_id`,`RowNo`,`FeeDate`,`FeeTypeId`,`WriteOffType`,
`BizOrgId`,`WriteOffId`,`FeeOrgId`,`FeeDeptId`,`FeeCompanyId`,`UnitId`,`Quantity`, `BizOrgId`,`WriteOffId`,`FeeOrgId`,`FeeDeptId`,`FeeCompanyId`,`UnitId`,`Quantity`,
`Price`,`OAmount`,`FeeNoteShow`,`CurrId`,`SupplyOrgId`,`CurrOAmount`,`FromSourceTag`,`TaxId`,`IsCounteract`,`InvoiceId`,`TaxRate`,`CreatorId`,`TaxNo`,`OTax`,`LTax`, `Price`,`OAmount`,`FeeNoteShow`,`CurrId`,`SupplyOrgId`,`CurrOAmount`,`FromSourceTag`,`TaxId`,`IsCounteract`,`InvoiceId`,`TaxRate`,`CreatorId`,`TaxNo`,`OTax`,`LTax`,
`OAmountUnWithTax`,`LAmountUnWithTax`,`LAmount`"; `OAmountUnWithTax`,`LAmountUnWithTax`,`LAmount`,`VoucherCount`";
$SQL1 .= isset($CurrLAmount) ? ",`CurrentLAmount`" : ""; $SQL1 .= isset($CurrLAmount) ? ",`CurrentLAmount`" : "";
$SQL1 .= empty($ProjectId) ? "" : ",`ProjectId`"; $SQL1 .= empty($ProjectId) ? "" : ",`ProjectId`";
$SQL1 .= isset($FeeTypeGen) ? ",`FeeTypeGen`" : ""; $SQL1 .= isset($FeeTypeGen) ? ",`FeeTypeGen`" : "";
$SQL1 .= empty($CU_MaterialId) ? "" : ",`CU_MaterialId`"; $SQL1 .= empty($CU_MaterialId) ? "" : ",`CU_MaterialId`";
$SQL1 .= empty($VoucherCount) ? "" : ",`VoucherCount`";
$SQL1 .= isset($VoucherType) ? ",`VoucherType`" : ""; $SQL1 .= isset($VoucherType) ? ",`VoucherType`" : "";
$SQL1 .= empty($InvoiceNo) ? "" : ",`InvoiceNo`"; $SQL1 .= empty($InvoiceNo) ? "" : ",`InvoiceNo`";
$SQL1 .= empty($comSupplierName) ? "" : ",`comSupplierName`"; $SQL1 .= empty($comSupplierName) ? "" : ",`comSupplierName`";
@ -120,12 +119,11 @@ if ($submit == "add") {
$SQL2 = ") VALUES ($RowCode, $rib_id, $RowCode,$FeeDate,'$FeeTypeId',2, $SQL2 = ") VALUES ($RowCode, $rib_id, $RowCode,$FeeDate,'$FeeTypeId',2,
'1000','$WriteOffId','1000','$FeeDeptId','1000','$UnitId',$Quantity, '1000','$WriteOffId','1000','$FeeDeptId','1000','$UnitId',$Quantity,
$Price,$OAmount,'$FeeNoteShow','$CurrId','1000',1,0,'$TaxId',$IsCounteract,'$InvoiceId',$TaxRate,'$user_id','$TaxNo',$OTax,$LTax, $Price,$OAmount,'$FeeNoteShow','$CurrId','1000',1,0,'$TaxId',$IsCounteract,'$InvoiceId',$TaxRate,'$user_id','$TaxNo',$OTax,$LTax,
$OAmountUnWithTax,$LAmountUnWithTax,$LAmount"; $OAmountUnWithTax,$LAmountUnWithTax,$LAmount,$VoucherCount";
$SQL2 .= isset($CurrLAmount) ? "," . $CurrLAmount : ""; $SQL2 .= isset($CurrLAmount) ? "," . $CurrLAmount : "";
$SQL2 .= empty($ProjectId) ? "" : ",'" . $ProjectId . "'"; $SQL2 .= empty($ProjectId) ? "" : ",'" . $ProjectId . "'";
$SQL2 .= isset($FeeTypeGen) ? "," . $FeeTypeGen : ""; $SQL2 .= isset($FeeTypeGen) ? "," . $FeeTypeGen : "";
$SQL2 .= empty($CU_MaterialId) ? "" : ",'" . $CU_MaterialId . "'"; $SQL2 .= empty($CU_MaterialId) ? "" : ",'" . $CU_MaterialId . "'";
$SQL2 .= empty($VoucherCount) ? "" : "," . $VoucherCount;
$SQL2 .= isset($VoucherType) ? "," . $VoucherType : ""; $SQL2 .= isset($VoucherType) ? "," . $VoucherType : "";
$SQL2 .= empty($InvoiceNo) ? "" : ",'" . $InvoiceNo . "'"; $SQL2 .= empty($InvoiceNo) ? "" : ",'" . $InvoiceNo . "'";
$SQL2 .= empty($comSupplierName) ? "" : ",'" . $comSupplierName . "'"; $SQL2 .= empty($comSupplierName) ? "" : ",'" . $comSupplierName . "'";
@ -134,11 +132,10 @@ if ($submit == "add") {
} else { } else {
$SQL1 = "INSERT INTO rib_sub (`RowCode`,`rib_id`,`RowNo`,`FeeDate`,`FeeTypeId`,`WriteOffType`, $SQL1 = "INSERT INTO rib_sub (`RowCode`,`rib_id`,`RowNo`,`FeeDate`,`FeeTypeId`,`WriteOffType`,
`BizOrgId`,`WriteOffId`,`FeeOrgId`,`FeeDeptId`,`FeeCompanyId`,`UnitId`,`Quantity`, `BizOrgId`,`WriteOffId`,`FeeOrgId`,`FeeDeptId`,`FeeCompanyId`,`UnitId`,`Quantity`,
`Price`,`OAmount`,`FeeNoteShow`,`CurrId`,`SupplyOrgId`,`CurrOAmount`,`FromSourceTag`,`TaxId`,`IsCounteract`,`InvoiceId`,`TaxRate`,`CreatorId`,`TaxNo`"; `Price`,`OAmount`,`FeeNoteShow`,`CurrId`,`SupplyOrgId`,`CurrOAmount`,`FromSourceTag`,`TaxId`,`IsCounteract`,`InvoiceId`,`TaxRate`,`CreatorId`,`TaxNo`,`VoucherCount`";
$SQL1 .= empty($ProjectId) ? "" : ",`ProjectId`"; $SQL1 .= empty($ProjectId) ? "" : ",`ProjectId`";
$SQL1 .= isset($FeeTypeGen) ? ",`FeeTypeGen`" : ""; $SQL1 .= isset($FeeTypeGen) ? ",`FeeTypeGen`" : "";
$SQL1 .= empty($CU_MaterialId) ? "" : ",`CU_MaterialId`"; $SQL1 .= empty($CU_MaterialId) ? "" : ",`CU_MaterialId`";
$SQL1 .= empty($VoucherCount) ? "" : ",`VoucherCount`";
$SQL1 .= isset($VoucherType) ? ",`VoucherType`" : ""; $SQL1 .= isset($VoucherType) ? ",`VoucherType`" : "";
$SQL1 .= empty($InvoiceNo) ? "" : ",`InvoiceNo`"; $SQL1 .= empty($InvoiceNo) ? "" : ",`InvoiceNo`";
$SQL1 .= empty($comSupplierName) ? "" : ",`comSupplierName`"; $SQL1 .= empty($comSupplierName) ? "" : ",`comSupplierName`";
@ -146,11 +143,10 @@ if ($submit == "add") {
$SQL2 = ") VALUES ($RowCode, $rib_id, $RowCode,$FeeDate,'$FeeTypeId',2, $SQL2 = ") VALUES ($RowCode, $rib_id, $RowCode,$FeeDate,'$FeeTypeId',2,
'1000','$WriteOffId','1000','$FeeDeptId','1000','$UnitId',$Quantity, '1000','$WriteOffId','1000','$FeeDeptId','1000','$UnitId',$Quantity,
$Price,$OAmount,'$FeeNoteShow','$CurrId','1000',1,0,'$TaxId',$IsCounteract,'$InvoiceId',$TaxRate,'$user_id','$TaxNo'"; $Price,$OAmount,'$FeeNoteShow','$CurrId','1000',1,0,'$TaxId',$IsCounteract,'$InvoiceId',$TaxRate,'$user_id','$TaxNo',$VoucherCount";
$SQL2 .= empty($ProjectId) ? "" : ",'" . $ProjectId . "'"; $SQL2 .= empty($ProjectId) ? "" : ",'" . $ProjectId . "'";
$SQL2 .= isset($FeeTypeGen) ? "," . $FeeTypeGen : ""; $SQL2 .= isset($FeeTypeGen) ? "," . $FeeTypeGen : "";
$SQL2 .= empty($CU_MaterialId) ? "" : ",'" . $CU_MaterialId . "'"; $SQL2 .= empty($CU_MaterialId) ? "" : ",'" . $CU_MaterialId . "'";
$SQL2 .= empty($VoucherCount) ? "" : "," . $VoucherCount;
$SQL2 .= isset($VoucherType) ? "," . $VoucherType : ""; $SQL2 .= isset($VoucherType) ? "," . $VoucherType : "";
$SQL2 .= empty($InvoiceNo) ? "" : ",'" . $InvoiceNo . "'"; $SQL2 .= empty($InvoiceNo) ? "" : ",'" . $InvoiceNo . "'";
$SQL2 .= empty($comSupplierName) ? "" : ",'" . $comSupplierName . "'"; $SQL2 .= empty($comSupplierName) ? "" : ",'" . $comSupplierName . "'";
@ -177,11 +173,11 @@ if ($submit == "add") {
<?php <?php
} elseif ($submit == "edit") { } elseif ($submit == "edit") {
$SQL1 = "UPDATE rib_sub SET RowCode=$RowCode, RowNo=$RowCode,FeeDate=$FeeDate,FeeTypeId=$FeeTypeId,FeeDeptId=$FeeDeptId,WriteOffId='$WriteOffId',FeeNoteShow='$FeeNoteShow', $SQL1 = "UPDATE rib_sub SET RowCode=$RowCode, RowNo=$RowCode,FeeDate=$FeeDate,FeeTypeId=$FeeTypeId,FeeDeptId=$FeeDeptId,WriteOffId='$WriteOffId',FeeNoteShow='$FeeNoteShow',
UnitId='$UnitId', Price=$Price,Quantity=$Quantity, OAmount=$OAmount, TaxId='$TaxId', IsCounteract=$IsCounteract,InvoiceId= '$InvoiceId', TaxRate=$TaxRate,LastOperatorId='$user_id',TaxNo='$TaxNo',LastOperatorId='$user_id'"; UnitId='$UnitId', Price=$Price,Quantity=$Quantity, OAmount=$OAmount, TaxId='$TaxId', IsCounteract=$IsCounteract,InvoiceId= '$InvoiceId',
TaxRate=$TaxRate,LastOperatorId='$user_id',TaxNo='$TaxNo',LastOperatorId='$user_id',VoucherCount=$VoucherCount";
$SQL1 .= empty($ProjectId) ? "" : ",ProjectId='$ProjectId'"; $SQL1 .= empty($ProjectId) ? "" : ",ProjectId='$ProjectId'";
$SQL1 .= isset($FeeTypeGen) ? ",FeeTypeGen=$FeeTypeGen" : ""; $SQL1 .= isset($FeeTypeGen) ? ",FeeTypeGen=$FeeTypeGen" : "";
$SQL1 .= empty($CU_MaterialId) ? "" : ",CU_MaterialId='$CU_MaterialId'"; $SQL1 .= empty($CU_MaterialId) ? "" : ",CU_MaterialId='$CU_MaterialId'";
$SQL1 .= empty($VoucherCount) ? "" : ",VoucherCount=$VoucherCount";
$SQL1 .= isset($VoucherType) ? ",VoucherType=$VoucherType" : ""; $SQL1 .= isset($VoucherType) ? ",VoucherType=$VoucherType" : "";
$SQL1 .= empty($InvoiceNo) ? " " : ",InvoiceNo='$InvoiceNo'"; $SQL1 .= empty($InvoiceNo) ? " " : ",InvoiceNo='$InvoiceNo'";
$SQL1 .= empty($comSupplierName) ? ",comSupplierName=' '" : ",comSupplierName='$comSupplierName'"; $SQL1 .= empty($comSupplierName) ? ",comSupplierName=' '" : ",comSupplierName='$comSupplierName'";

44
wms/schedule-index.php

@ -24,7 +24,7 @@ $data = array();
// sql語法存在變數中 // sql語法存在變數中
$page_close = 0; $page_close = 0;
$sql_cmd2 = ""; $sql_cmd2 = "";
$sql_cmd = sql_myself($user_id, "repairedid"); $sql_cmd = sql_myself($user_id, "repairerid");
if ($user_department_id == "501" || $user_department_id == "322" || $user_id == "M0012" || $user_id == "M0105") $sql_cmd = ""; if ($user_department_id == "501" || $user_department_id == "322" || $user_id == "M0012" || $user_id == "M0105") $sql_cmd = "";
if (in_array($user_department_id . $user_role_id, $dr_arr)) $sql_cmd = ""; if (in_array($user_department_id . $user_role_id, $dr_arr)) $sql_cmd = "";
//if (empty($sql_cmd)) $sql_cmd = "where "; //if (empty($sql_cmd)) $sql_cmd = "where ";
@ -177,17 +177,17 @@ if ($data) :
<th>保養人員姓名</th> <th>保養人員姓名</th>
<th>應保養日期</th> <th>應保養日期</th>
<th>實際保養日期</th> <th>實際保養日期</th>
<th>保養項目編號</th> <!-- <th>保養項目編號</th>
<th>保養項目內容</th> <th>保養項目內容</th> -->
<th>保養結果</th> <th>保養結果</th>
<th>上傳照片</th> <th>保養照片/保養品質</th>
<th>說明</th> <th>說明</th>
<th>客戶評價登入帳號</th> <!-- <th>客戶評價登入帳號</th> -->
<th>客戶姓名</th> <th>客戶姓名</th>
<th>評價/保養品質</th> <!-- <th>評價/保養品質</th>
<th>評價/服務態度</th> <th>評價/服務態度</th> -->
<th>內容</th> <!-- <th>內容</th>
<th>簽名檔</th> <th>簽名檔</th> -->
<th>建檔人</th> <th>建檔人</th>
<th>建檔時間</th> <th>建檔時間</th>
<?php if ($user_auth & 2) { ?> <?php if ($user_auth & 2) { ?>
@ -208,16 +208,22 @@ if ($data) :
<td><?php echo $data['repairername']; ?></td> <td><?php echo $data['repairername']; ?></td>
<td><?php echo $data['duedate']; ?></td> <td><?php echo $data['duedate']; ?></td>
<td><?php echo $data['actualdate']; ?></td> <td><?php echo $data['actualdate']; ?></td>
<td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['item']; ?></td> <!-- <td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['item']; ?></td>
<td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['item_detail']; ?></td> <td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['item_detail']; ?></td> -->
<td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['result']; ?></td> <td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;">
<td><?php if ($data['evidences']) { <?php //echo $data['result']; ?>
echo "<a href=\"/app/" . $data['evidences'] . "\">瀏覽</a>"; <a href="/app/app-maintenance-uploadsuccess-survey.php?id_schedule=<?php echo $data['id']; ?>&<?php echo $token_link; ?>">查看明細</a>
</td>
<td>
<a href="/app/app-maintenance-uploadsuccess-photo-review_v2.php?id_schedule=<?php echo $data['id']; ?>&<?php echo $token_link; ?>">瀏覽</a>
<?php if ($data['evidences']) {
// echo "<a href=\"/app/" . $data['evidences'] . "\">瀏覽</a>";
} ?></td> } ?></td>
<td><?php echo $data['descriptons']; ?></td> <td><?php echo $data['descriptons']; ?></td>
<td><?php echo $data['customer_login_id']; ?></td> <!-- <td><?php echo $data['customer_login_id']; ?></td> -->
<td><?php echo $data['customer_login_name']; ?></td> <td><?php echo $data['customer_login_name']; ?></td>
<td> <!-- <td>
<?php <?php
$stars_1 = ($data['stars_c1']) ? $data['stars_c1'] : $data['stars']; $stars_1 = ($data['stars_c1']) ? $data['stars_c1'] : $data['stars'];
echo $stars_1; echo $stars_1;
@ -228,9 +234,9 @@ if ($data) :
$stars_2 = ($data['stars_c2']) ? $data['stars_c2'] : $data['stars_b2']; $stars_2 = ($data['stars_c2']) ? $data['stars_c2'] : $data['stars_b2'];
echo $stars_2; echo $stars_2;
?> ?>
</td> </td> -->
<td><?php echo $data['details']; ?></td> <!-- <td><?php echo $data['details']; ?></td>
<td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['customer_signature']; ?></td> <td style="white-space:nowrap;overflow:hidden;text-overflow: ellipsis;"><?php echo $data['customer_signature']; ?></td> -->
<td><?php echo $data['creater']; ?></td> <td><?php echo $data['creater']; ?></td>
<td><?php echo $data['create_at']; ?></td> <td><?php echo $data['create_at']; ?></td>
<?php if ($user_auth & 2) { ?> <?php if ($user_auth & 2) { ?>

Loading…
Cancel
Save