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;
 }
Exemple #2
0
 /**
  * 检查已挂表的表位是否全部确认完毕
  * @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);
     }
 }