public function queryState($struct, $state = '') { $confirm = new ConfirmStationAction(); $add = $struct["No"]; $A = array(); $B = array(); $condition = "station like '" . $add . "%' and state = '{$state}'"; //and confirm=0" ; $result = $confirm->queryUnconfirmStation($condition); for ($i = 0; $i < sizeof($result); $i++) { $state = array(); $state["place"] = $result[$i]["station"]; $state["state"] = $result[$i]["state"]; if (substr($state["place"], 4, 1) == "A") { array_push($A, $state["place"]); } else { array_push($B, $state["place"]); } } $rtn["A"] = $A; $rtn["B"] = $B; return $rtn; }
/** * 检查已挂表的表位是否全部确认完毕 * @param array $data 已经挂了表的表位 * @param string $state U 挂表 D 取表 * * @return boolean ; * */ public function checkStationConfirmComplete($data, $state) { $stations = array(); return true; try { $confirm = new ConfirmStationAction(); $result = $confirm->queryUnconfirmStation("state ='{$state}' and confirm=0 "); //如果没有记录,则表示全部确认了 if (!$result) { return true; } $temp = "'" . implode("','", $data) . "'"; $stocks = new CurrentStocksDao(); $exits = $stocks->findAll("station in (" . $temp . ")")->toResultSet(); if ($exits) { $temp = array(); for ($i = 0; $i < sizeof($exits); $i++) { array_push($temp, $exits[$i]["station"]); } $exits = $temp; } for ($i = 0; $i < sizeof($result); $i++) { $val = $result[$i]["station"]; $rtn = array_search($val, $exits); //如果已经入仓,则跳过 if (is_numeric($rtn)) { continue; } $rtn = array_search($val, $data); if (is_numeric($rtn)) { $stations[] = $val; } } //返回值 $rtn = array(); $data = implode(',', $stations); if ($data) { $data = '还有表位挂了表未确认:' . $data; array_push($rtn, $data); } //是否有两个表,确认了同一个表位 $confirm = new ConfirmStationAction(); $result = $confirm->checkWhetherDuplic(); if ($result) { for ($i = 0; $i < sizeof($result); $i++) { $err = "[" . $result[$i]["station"] . "]表位确认了多个表[" . $result[$i]['code'] . "]请更正"; array_push($rtn, $err); } } //如果没有错误信息,则返回true return $rtn ? $rtn : true; } catch (Executive $e) { system_out("StocksManager.checkStationConfirmComplete error:{$e}"); throw new Exception($e); } }