|
@ -71,6 +71,7 @@ try { |
|
|
$elev_arr[$row[5]]["floors"] = $floors; |
|
|
$elev_arr[$row[5]]["floors"] = $floors; |
|
|
$elev_arr[$row[5]]["speed"] = $speed; |
|
|
$elev_arr[$row[5]]["speed"] = $speed; |
|
|
$elev_arr[$row[5]]["option"] = []; |
|
|
$elev_arr[$row[5]]["option"] = []; |
|
|
|
|
|
$elev_arr[$row[5]]["mn"] = []; |
|
|
$elev_qty_all += $row[1]; |
|
|
$elev_qty_all += $row[1]; |
|
|
} |
|
|
} |
|
|
mysqli_free_result($res); |
|
|
mysqli_free_result($res); |
|
@ -108,20 +109,22 @@ 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); |
|
|
|
|
|
|
|
|
// 保固延長<->電梯項次 |
|
|
// 電梯所屬保固延長 |
|
|
$mn_arr = []; |
|
|
$mn_elev_arr = $mn_sel_id_arr = []; |
|
|
$sql = "select id, item_spec, item_qty, option_relate_spec from pricereview_item where mid = '$id' and item_group = 'D'"; |
|
|
$sql = "select id, item_spec, item_price_bp, option_relate_spec from pricereview_item where mid = '$id' and item_group = 'D'"; |
|
|
$res = mysqli_query($link, $sql); |
|
|
$res = mysqli_query($link, $sql); |
|
|
while ($row = mysqli_fetch_row($res)) { |
|
|
while ($row = mysqli_fetch_row($res)) { |
|
|
$mn_arr[$row[0]]["item_spec"] = $row[1]; |
|
|
$mn_elev_arr[$row[0]]["item_spec"] = $row[1]; |
|
|
$mn_arr[$row[0]]["item_qty"] = $row[2]; |
|
|
$mn_elev_arr[$row[0]]["item_price_bp"] = $row[2]; |
|
|
$tmp_arr = explode(",", $row[3]); |
|
|
$tmp_arr = explode(",", $row[3]); |
|
|
$mn_arr[$row[0]]["elev_no"] = $tmp_arr; |
|
|
$mn_elev_arr[$row[0]]["elev_no"] = $tmp_arr; |
|
|
foreach ($tmp_arr as $v) { |
|
|
foreach ($tmp_arr as $v) { |
|
|
$elev_arr[$v]["mn"][] = $row[0]; |
|
|
$elev_arr[$v]["mn"][] = $row[0]; |
|
|
|
|
|
$mn_sel_id_arr[] = $row[0]; |
|
|
} |
|
|
} |
|
|
} |
|
|
} |
|
|
mysqli_free_result($res); |
|
|
mysqli_free_result($res); |
|
|
|
|
|
$mn_nosel_id_arr = array_diff(array_keys($mn_elev_arr), $mn_sel_id_arr); |
|
|
|
|
|
|
|
|
// 除外項目平均分到每台電梯 |
|
|
// 除外項目平均分到每台電梯 |
|
|
$exarr = []; |
|
|
$exarr = []; |
|
@ -160,7 +163,7 @@ try { |
|
|
//print_r($elev_arr); |
|
|
//print_r($elev_arr); |
|
|
//print_r($opt_elev_arr); |
|
|
//print_r($opt_elev_arr); |
|
|
//print_r($opt_nosel_id_arr); |
|
|
//print_r($opt_nosel_id_arr); |
|
|
//print_r($mn_arr); |
|
|
//print_r($mn_elev_arr); |
|
|
//print_r($ex_arr);exit; |
|
|
//print_r($ex_arr);exit; |
|
|
|
|
|
|
|
|
foreach ($elev_arr as $item_no => $v) { |
|
|
foreach ($elev_arr as $item_no => $v) { |
|
@ -243,8 +246,10 @@ try { |
|
|
if (empty($todo_opt_arr)) $todo_opt_arr = $opt_nosel_id_arr; |
|
|
if (empty($todo_opt_arr)) $todo_opt_arr = $opt_nosel_id_arr; |
|
|
if (!empty($todo_opt_arr)) { |
|
|
if (!empty($todo_opt_arr)) { |
|
|
foreach ($todo_opt_arr as $val) { |
|
|
foreach ($todo_opt_arr as $val) { |
|
|
$sql4 = "select o.base_floor, o.base_floor_plus, o.price, r.equipment from option_mi o, elevator_quotation_rule r "; |
|
|
$sql4 = "select o.base_floor, o.base_floor_plus, o.price, r.equipment, p.price 'OP' "; |
|
|
$sql4 .= "where o.quotation_no = r.quotation_no and o.option_price_id = ".$opt_elev_arr[$val]["price_id"]." "; |
|
|
$sql4 .= "from option_mi o, elevator_quotation_rule r, option_price p "; |
|
|
|
|
|
$sql4 .= "where o.quotation_no = r.quotation_no and o.option_price_id = p.id "; |
|
|
|
|
|
$sql4 .= "and o.option_price_id = ".$opt_elev_arr[$val]["price_id"]." "; |
|
|
$sql4 .= "and ($v[item_weight] between o.min_weight and o.max_weight) and o.open_kind = '".$v["item_op"]."'"; |
|
|
$sql4 .= "and ($v[item_weight] between o.min_weight and o.max_weight) and o.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)) { |
|
@ -252,6 +257,7 @@ try { |
|
|
// 特例 |
|
|
// 特例 |
|
|
if ($opt_elev_arr[$val]["price_id"] == "256" && ($v["floors"] < $row_om["base_floor"])) $row_om["price"] = 9815; |
|
|
if ($opt_elev_arr[$val]["price_id"] == "256" && ($v["floors"] < $row_om["base_floor"])) $row_om["price"] = 9815; |
|
|
if ($opt_elev_arr[$val]["price_id"] == "266" && $v["floors"] >= 20) $plus += 44.8; // 15层,14.6元/层(19层内,跳20层再追加44.8元) |
|
|
if ($opt_elev_arr[$val]["price_id"] == "266" && $v["floors"] >= 20) $plus += 44.8; // 15层,14.6元/层(19层内,跳20层再追加44.8元) |
|
|
|
|
|
if ($row_om["price"] == 0) $row_om["price"] = $row_om["OP"]*0.6; // 實體且沒成本的:抓牌價6成 |
|
|
// 含此option的電梯總台數 |
|
|
// 含此option的電梯總台數 |
|
|
$myelev_qty = 0; |
|
|
$myelev_qty = 0; |
|
|
foreach ($opt_elev_arr[$val]["elev_no"] as $pval) { |
|
|
foreach ($opt_elev_arr[$val]["elev_no"] as $pval) { |
|
@ -273,10 +279,18 @@ try { |
|
|
// 保固延長 |
|
|
// 保固延長 |
|
|
$mnarr = []; |
|
|
$mnarr = []; |
|
|
$mn_fee = $j = 0; |
|
|
$mn_fee = $j = 0; |
|
|
if (!empty($v["mn"][0])) { |
|
|
$todo_mn_arr = $v["mn"]; |
|
|
foreach ($v["mn"] as $val) { |
|
|
if (!empty($todo_mn_arr[0])) { |
|
|
|
|
|
foreach ($todo_mn_arr as $val) { |
|
|
$mn_amt = 0; |
|
|
$mn_amt = 0; |
|
|
$mnarr[$j][0] = $mn_arr[$val]["item_spec"]."保養費"; |
|
|
// 含此保延的電梯總台數 |
|
|
|
|
|
$myelev_qty = 0; |
|
|
|
|
|
foreach ($mn_elev_arr[$val]["elev_no"] as $pval) { |
|
|
|
|
|
$myelev_qty += $elev_arr[$pval]["item_qty"]; |
|
|
|
|
|
} |
|
|
|
|
|
// 分配:延保總價除以電梯總台數 |
|
|
|
|
|
$mn_amt += round(0+($mn_elev_arr[$val]["item_price_bp"]/$myelev_qty), 0); |
|
|
|
|
|
$mnarr[$j][0] = $mn_elev_arr[$val]["item_spec"]."保養費"; |
|
|
$mnarr[$j][1] = $mn_amt; |
|
|
$mnarr[$j][1] = $mn_amt; |
|
|
$mn_fee += $mn_amt; |
|
|
$mn_fee += $mn_amt; |
|
|
$j++; |
|
|
$j++; |
|
|