Browse Source

修正編列作番 class 規則

gary
gary_chen\gary_chen 1 year ago
parent
commit
948586dc44
  1. 56
      wms/contract/api/getFacilityNo.php

56
wms/contract/api/getFacilityNo.php

@ -1,5 +1,5 @@
<?php
// ini_set('display_errors', 'on');
ini_set('display_errors', 'on');
// 汰改 前三碼 流水號 + 後兩碼 號機
// 新梯 流水號
@ -60,7 +60,7 @@ class CreateFacilityNo
/**
* 取得下一個新的作番
* @param string $facility_type : M:新梯 T:汰改 B:保養
* @param array $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param string $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param array $make_type : X:小機房 W:無機房 H:家用梯 Z:雜物梯 F:扶梯 B:部品 Q:品保對策 T:研究開發 N:設備 W:出貨現場要求購買 J:營業問題對策 Y:已出貨作番營業進行規格訂正
* @param int $num : 號機
* @return array $new_facility_arr
@ -75,7 +75,7 @@ class CreateFacilityNo
$next_seq = $this->getNextFacilitySeq("mf_vol_no") + 1;
$new_facility_arr = [];
for ($start_num = 1; $start_num <= $num; $start_num++) {
$facility_no_tmp = $Y . $sale_type[$start_num - 1] . $make_type[$start_num - 1]
$facility_no_tmp = $Y . $sale_type . $make_type[$start_num - 1]
. str_pad($next_seq, 5, "0", STR_PAD_LEFT);
array_push($new_facility_arr, $facility_no_tmp);
$next_seq++;
@ -85,7 +85,7 @@ class CreateFacilityNo
$next_seq = $this->getNextFacilitySeq("tf_vol_no");
$new_facility_arr = [];
for ($start_num = 1; $start_num <= $num; $start_num++) {
$facility_no_tmp = $Y . $sale_type[$start_num - 1] . $make_type[$start_num - 1]
$facility_no_tmp = $Y . $sale_type . $make_type[$start_num - 1]
. str_pad($next_seq + 1, 3, "0", STR_PAD_LEFT)
. str_pad($start_num, 2, "0", STR_PAD_LEFT);
array_push($new_facility_arr, $facility_no_tmp);
@ -95,7 +95,7 @@ class CreateFacilityNo
$next_seq = $this->getNextFacilitySeq("bf_vol_no");
$new_facility_arr = [];
for ($start_num = 1; $start_num <= $num; $start_num++) {
$facility_no_tmp = $Y . $sale_type[$start_num - 1] . $make_type[$start_num - 1]
$facility_no_tmp = $Y . $sale_type . $make_type[$start_num - 1]
. str_pad($next_seq + 1, 3, "0", STR_PAD_LEFT)
. str_pad($start_num, 2, "0", STR_PAD_LEFT);
array_push($new_facility_arr, $facility_no_tmp);
@ -109,7 +109,7 @@ class CreateFacilityNo
/**
* 建立新的作番
* @param string $facility_type : M:新梯 T:汰改 B:保養
* @param array $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param string $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param array $make_type : X:小機房 W:無機房 H:家用梯 Z:雜物梯 F:扶梯 B:部品 Q:品保對策 T:研究開發 N:設備 W:出貨現場要求購買 J:營業問題對策 Y:已出貨作番營業進行規格訂正
* @param string $num : 號機 (非必填)
* @return string $new_facility_no
@ -154,7 +154,7 @@ class CreateFacilityNo
$new_facility_no_arr = [];
for ($i = 1; $i <= $num; $i++) {
$new_facility_no = $Y . $sale_type[$i-1] . $make_type[$i-1]
$new_facility_no = $Y . $sale_type . $make_type[$i - 1]
. str_pad($next_seq, 5, "0", STR_PAD_LEFT);
array_push($new_facility_no_arr, $new_facility_no);
$next_seq++;
@ -184,7 +184,7 @@ class CreateFacilityNo
$new_facility_no_arr = [];
for ($i = 1; $i <= $num; $i++) {
$new_facility_no = $Y . $sale_type[$i - 1] . $make_type[$i - 1]
$new_facility_no = $Y . $sale_type . $make_type[$i - 1]
. str_pad($next_seq + 1, 3, "0", STR_PAD_LEFT)
. str_pad($i, 2, "0", STR_PAD_LEFT);
array_push($new_facility_no_arr, $new_facility_no);
@ -214,7 +214,7 @@ class CreateFacilityNo
$new_facility_no_arr = [];
for ($i = 1; $i <= $num; $i++) {
$new_facility_no = $Y . $sale_type[$i - 1] . $make_type[$i - 1]
$new_facility_no = $Y . $sale_type . $make_type[$i - 1]
. str_pad($next_seq + 1, 3, "0", STR_PAD_LEFT)
. str_pad($i, 2, "0", STR_PAD_LEFT);
array_push($new_facility_no_arr, $new_facility_no);
@ -407,14 +407,14 @@ class CreateFacilityNo
/**
* 檢查 $sale_type 是否有存在規則之中
* @param array $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param string $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @return boolean $status : true:合法代碼 false:非法代碼
*/
function checkSaleTypeStatus($sale_type)
{
foreach ($sale_type as $row)
if (!in_array($row, ['M', 'E', 'T', 'J', 'X']))
return false;
if (!in_array($sale_type, ['M', 'E', 'T', 'J', 'X']))
return false;
return true;
}
@ -449,15 +449,13 @@ class CreateFacilityNo
/**
* 建立新的新梯作番
* @param array $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param string $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param array $make_type : X:小機房 W:無機房 H:家用梯 Z:雜物梯 F:扶梯 B:部品 Q:品保對策 T:研究開發 N:設備 W:出貨現場要求購買 J:營業問題對策 Y:已出貨作番營業進行規格訂正
* @param int $seq_name : 幾個案場 0-99
* @return array $new_facilityno : 作番號
*/
function makeMFacilityNo($sale_type, $make_type, $num)
{
if (count($sale_type) !== $num)
return "陣列數量不一致!";
if (count($make_type) !== $num)
return "陣列數量不一致!";
$new_facility_no = $this->getNextFacilityNo("M", $sale_type, $make_type, $num);
@ -477,8 +475,6 @@ class CreateFacilityNo
*/
function makeTFacilityNo($sale_type, $make_type, $num)
{
if (count($sale_type) !== $num)
return "陣列數量不一致!";
if (count($make_type) !== $num)
return "陣列數量不一致!";
$new_facility_no = $this->getNextFacilityNo("T", $sale_type, $make_type, $num);
@ -491,15 +487,13 @@ class CreateFacilityNo
/**
* 建立新的保養作番
* @param array $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param string $sale_type : M:内銷 E:外銷 T:他社维保 J:汰改 X:特殊部品
* @param array $make_type : X:小機房 W:無機房 H:家用梯 Z:雜物梯 F:扶梯 B:部品 Q:品保對策 T:研究開發 N:設備 W:出貨現場要求購買 J:營業問題對策 Y:已出貨作番營業進行規格訂正
* @param int $seq_name : 幾個案場 0-99
* @return array $new_facilityno : 作番號
*/
function makeBFacilityNo($sale_type, $make_type, $num=1)
function makeBFacilityNo($sale_type, $make_type, $num = 1)
{
if (count($sale_type) !== $num)
return "陣列數量不一致!";
if (count($make_type) !== $num)
return "陣列數量不一致!";
$new_facility_no = $this->getNextFacilityNo("B", $sale_type, $make_type, $num);
@ -512,13 +506,13 @@ class CreateFacilityNo
}
// $cfn = new CreateFacilityNo;
// // 建立作番號 - 新梯
print_r($cfn->makeMFacilityNo(["M", "E"], ["X", "W"], 2));
$cfn = new CreateFacilityNo;
// 建立作番號 - 新梯
print_r($cfn->makeMFacilityNo("M", ["X", "W"], 2));
echo "<br/><br/>";
// 建立作番號 - 汰改
print_r($cfn->makeTFacilityNo("M", ["X", "W"], 2));
echo "<br/><br/>";
// 建立作番號 - 保養
print_r($cfn->makeBFacilityNo("M", ["X", "W"], 2));
echo "<br/><br/>";
// // 建立作番號 - 汰改
// print_r($cfn->makeTFacilityNo(["M", "E"], ["X", "W"], 2));
// echo "<br/><br/>";
// // 建立作番號 - 保養
// print_r($cfn->makeBFacilityNo(["M", "E"], ["X", "W"], 2));
// echo "<br/><br/>";

Loading…
Cancel
Save