public function act_changeStatus() { $retrunData = array('code' => 0, 'msg' => ''); $orderId = isset($_GET['orderId']) ? intval($_GET['orderId']) : NULL; $status = isset($_GET['status']) ? intval($_GET['status']) : NULL; if (empty($orderId) || empty($status)) { $retrunData['msg'] = '缺少参数!'; return $retrunData; } if (!PreGoodsOrdderManageModel::validateStatusCode($status)) { //不合法的订单状态 $retrunData['msg'] = '不合法的订单状态!'; return $retrunData; } $preGood_OBJ = new PreGoodsOrdderManageModel(); $orderInfo = $preGood_OBJ->getOrderInfroByid($orderId); if (FALSE === $orderInfo) { $retrunData['msg'] = '备货单不存在!'; return $retrunData; } $chageResult = $preGood_OBJ->changeOrderStatus($orderId, $status, $_SESSION['userId']); if (true === $chageResult) { //更新成功 $retrunData['code'] = 1; return $retrunData; } else { $retrunData['msg'] = '更新状态失败!'; return $retrunData; } }
public function act_modifyPreGoodsSku() { $returnData = array('code' => 'fial', 'msg' => '', 'num' => 0); $orderSn = isset($_GET['ordersn']) ? trim($_GET['ordersn']) : ''; //备货单号 $sku = isset($_GET['sku']) ? trim($_GET['sku']) : ''; //sku $amount = isset($_GET['amount']) ? trim($_GET['amount']) : ''; //修改数据 $operator = isset($_GET['operator']) ? intval($_GET['operator']) : ''; //修改人Id // print_r($_GET);exit; if (empty($orderSn) || empty($sku) || empty($operator)) { $returnData['code'] = 'fail'; $returnData['msg'] = '缺少参数'; return $returnData; } $preGoods_obj = new PreGoodsOrdderManageModel(); $orderInfo = $preGoods_obj->getOrderInfo($orderSn); if (FALSE === $orderInfo) { $returnData['code'] = 'fail'; $returnData['msg'] = '不存在的备货单号!'; return $returnData; } $skuInfo = $preGoods_obj->getSKUinfo($orderInfo['id'], $sku); if (FALSE === $skuInfo) { $returnData['code'] = 'fail'; $returnData['msg'] = 'sku不存在!'; return $returnData; } if (intval($skuInfo['scantnum']) > $amount) { //如果修改的数量小于已经配货的数量 则报错 $returnData['code'] = 'fail'; $returnData['msg'] = '已配货数量大于修改数量!'; return $returnData; } $reuslt = $preGoods_obj->updateSkuAmount($orderInfo['id'], $sku, $amount, $orderSn, $operator); if (FALSE === $reuslt) { $returnData['code'] = 'fail'; $returnData['msg'] = PreGoodsOrdderManageModel::$errMsg; return $returnData; } else { $preGoods_obj->updPreOrderStatus($orderSn); //修改数量后验证备货单号是否已配货完成 $returnData['code'] = 'success'; $returnData['msg'] = ''; $returnData['num'] = $amount; return $returnData; } }
public function view_prePlenOrderApply() { $returnData = array('code' => 0, 'msg' => ''); if (empty($_SESSION['userId'])) { $returnData['msg'] = '登陆过期,请重新登陆!'; echo json_encode($returnData); exit; } $pre_obj = new PreGoodsOrdderManageModel(); $result = $pre_obj->createNewPreOrder($_SESSION['userId']); if (FALSE === $result) { $returnData['msg'] = '生成失败,可能已存在此单号'; echo json_encode($returnData); exit; } else { $returnData['code'] = 1; echo json_encode($returnData); exit; } }
public function changeOrderStatus($orderId, $status, $opUser) { $orderInf = $this->getOrderInfroByid($orderId); if (FALSE === $orderInf) { self::$errMsg = '不存在订单信息!'; return FALSE; } $originStatus = $orderInf['status']; $optime = time(); $updataSql = "update wh_prepGoodsOrder set status='{$status}' where id='{$orderId}'"; $logSql = "\n insert into wh_preGoodsStatusChLog (orderId, originalStatus, changedStatus, opuser, optime) values (\n '{$orderId}', '{$originStatus}', '{$status}', '{$opUser}', '{$optime}'\n )\n "; $this->dbConn->begin(); $changeQuery = $this->dbConn->query($updataSql); //更新状态 if (FALSE === $changeQuery) { $this->dbConn->rollback(); self::$errMsg = '更新状态出错!'; return FALSE; } $logQuery = $this->dbConn->query($logSql); //记录操作日志 if (FALSE === $logQuery) { $this->dbConn->rollback(); self::$errMsg = '记录日志失败!'; return FALSE; } $this->dbConn->commit(); return TRUE; }
public function view_recheckSubmit() { $returnData = array('code' => 0, 'msg' => ''); if (empty($_SESSION['userId'])) { //未登陆 $returnData['msg'] = '登陆超时 请重新登陆!'; echo json_encode($returnData); exit; } $orderSn = isset($_GET['orderSn']) ? trim($_GET['orderSn']) : NULL; //备货单号 $sku = isset($_GET['sku']) ? trim($_GET['sku']) : NULL; //sku $num = isset($_GET['num']) ? intval($_GET['num']) : NULL; //数量 if (empty($orderSn) || empty($sku) || empty($num)) { $returnData['msg'] = '参数不完整!'; echo json_encode($returnData); exit; } $sku = get_goodsSn($sku); $preGoods_Obj = new PreGoodsOrdderManageModel(); $orderInfo = $preGoods_Obj->getOrderInfo($orderSn); if (FALSE === $orderInfo) { $returnData['code'] = '备货单不存在'; $returnData['sku'] = $sku; echo json_encode($returnData); exit; } /* if ($orderInfo['status'] != 3) { $returnData['msg'] = '该备货待不是复核货配货单!'; $returnData['sku'] = $sku; echo json_encode($returnData); exit; }*/ $skuInfo = $preGoods_Obj->getSKUinfo($orderInfo['id'], $sku); if (FALSE === $skuInfo) { $returnData['msg'] = 'sku不存在!'; $returnData['sku'] = $sku; echo json_encode($returnData); exit; } if ($skuInfo['scantnum'] != $num) { //如果订单数量和扫描数量一致 则表示该料号已经扫描完成 $returnData['msg'] = 'sku数量不匹配!'; $returnData['sku'] = $sku; echo json_encode($returnData); exit; } $isend = FALSE; $orecheck = new OwOutReviewModel(); $result = $orecheck->addNewRecheckRecord($orderSn, $orderInfo['id'], $sku, $num, $_SESSION['userId'], $isend); if (FALSE === $result) { $returnData['msg'] = OwPreGoodsOutStockModel::$errmsg; $returnData['sku'] = $sku; echo json_encode($returnData); exit; } else { $returnData['msg'] = '更新成功!'; $returnData['code'] = $isend ? 2 : 1; $returnData['sku'] = $sku; echo json_encode($returnData); exit; } }
public function view_printOrder() { @session_start(); $orderId = isset($_GET['orderId']) ? trim($_GET['orderId']) : NULL; if (empty($orderId)) { goErrMsgPage(array('data' => array('缺少参数!'), 'link' => 'index.php?mod=owGoodsReplenishManage&act=showOrderList')); exit; } $preObj = new PreGoodsOrdderManageModel(); $idar = explode(",", $orderId); $idar = array_map('intval', $idar); $finalAr = array(); foreach ($idar as $id) { $newData = array(); $orderInf = $preObj->getOrderInfroByid($id); if (FALSE == $orderInf) { continue; } //如果备货单状态为待处理更状态为待配货状态 if ($orderInf['status'] == 1) { $preObj->changeOrderStatus($id, 2, $_SESSION['userId']); } $tempAr = array('orderInf' => $orderInf); $deatil = $preObj->getSKUDetailByStatus($id); $skuArr = ''; foreach ($deatil as $k => $v) { $sku = $v['sku']; $skuArr .= "'" . $sku . "',"; } $skuArr = substr($skuArr, 0, strlen($skuArr) - 1); $paramArr['method'] = 'wh.OverSeaGetSkuStock'; //API名称 $paramArr['sku'] = $skuArr; $rtnInfo = UserCacheModel::callOpenSystem2($paramArr); $code = $rtnInfo['errCode']; $data = array(); $printArr = array(); $skuStock = array(); if ($code == 200) { $data = $rtnInfo['data']; foreach ($data as $m => $n) { $sku = $n['sku']; $qty = $n['qty']; //B仓库存 if ($qty > 0) { if (!in_array($sku, $printArr)) { $printArr[] = $sku; $skuStock[$sku] = $qty; } } } } $detail = array(); $num = 0; foreach ($deatil as $kk => $vv) { $sku = $vv['sku']; if (in_array($sku, $printArr)) { $detail[$num]['id'] = $vv['id']; $detail[$num]['sku'] = $vv['sku']; $detail[$num]['amount'] = $vv['amount']; $detail[$num]['qtyB'] = $skuStock[$sku]; $num++; } } $tempAr['skulist'] = $detail; $finalAr[] = $tempAr; } include WEB_PATH . 'html/template/v1/pregoodsprint.htm'; }
public function outStock($sku, $num, $opuser, $orderid, &$isEnd, $waitScan, $orderSn) { $isLastOne = true; //是否为最后一个待配货sku $preGoods_Obj = new PreGoodsOrdderManageModel(); $allSkuInfo = $preGoods_Obj->getSKUDetail($orderid); //订单的全部sku列表 foreach ($allSkuInfo as $row) { //判断该料号配完以后是否可以终结该备货单 if ($row['amount'] != $row['scantnum'] && $row['sku'] != $sku) { $isLastOne = FALSE; } } if ($waitScan != $num) { $isLastOne = FALSE; } $isEnd = $isLastOne; //$this->logRequest(" sku==> $sku 数量==> $num"); //记录请求日志 $paramArr['method'] = 'ow_pregood_changestock'; //API名称 $paramArr['sku'] = $sku; $paramArr['num'] = $num; $paramArr['orderSn'] = $orderSn; $paramArr['operUser'] = getUserNameById($opuser); $messageInfo = UserCacheModel::callOpenSystem2($paramArr); //先到老系统扣库存 if (FALSE === $messageInfo) { //请求开发系统出错 self::$errmsg = '请求开放系统出错!'; return FALSE; } $code = isset($messageInfo['code']) ? trim($messageInfo['code']) : ''; if ($code !== 'success') { //扣库存失败 self::$errmsg = $messageInfo['msg']; return FALSE; } $sku = mysql_real_escape_string($sku); $this->dbConn->begin(); $rcordInfo = $this->getSkuInboxRecords($sku); if (FALSE === $rcordInfo) { //还没有封箱库存记录 则新增一条记录 $insertResult = $this->insertNewInboxRecords($sku, $num); if (FALSE === $insertResult) { //插入失败 回滚 $this->dbConn->rollback(); self::$errmsg = "新增封箱库存记录失败!"; return FALSE; } } else { //追加库存 $updateSql = "update wh_inboxStock set num=num+{$num} where sku='{$sku}'"; $updateQuery = $this->dbConn->query($updateSql); if (FALSE === $updateQuery) { //更新封箱库存失败 回滚 $this->dbConn->rollback(); self::$errmsg = "更新封箱库存失败!"; return FALSE; } } $time = time(); $updateOrder = "\n update wh_prepDetail set scantnum=scantnum+{$num}, scantime={$time}, scanuser='******' where \n sku='{$sku}' and orderid='{$orderid}'\n "; $upOrderQuery = $this->dbConn->query($updateOrder); //更新备货单的扫描数量 if (FALSE === $upOrderQuery) { $this->dbConn->rollback(); self::$errmsg = '更新备货单数据失败!'; return FALSE; } if (TRUE === $isLastOne) { //配货完成 修改备货单状态 $upStatusSql = "update wh_prepGoodsOrder set status=3 where id='{$orderid}'"; $upStatusQuery = $this->dbConn->query($upStatusSql); if (FALSE === $upStatusQuery) { $this->dbConn->rollback(); self::$errmsg = '更新备货单状态失败!'; return FALSE; } } $originNum = isset($rcordInfo['num']) ? $rcordInfo['num'] : 0; $logSql = "insert into wh_skuscanLog (orderId, sku, scanNum, originNum, opuser, scanTime) values\n ({$orderid}, '{$sku}', '{$num}', '{$originNum}', '{$opuser}', '{$time}')\n "; $logResult = $this->dbConn->query($logSql); //记录操作日志 if (FALSE === $logResult) { //写日志失败 回滚 $this->dbConn->rollback(); self::$errmsg = '写入操作日志失败!'; return FALSE; } $this->dbConn->commit(); return TRUE; }
public function view_editOrder() { $orderId = isset($_GET['orderId']) ? intval($_GET['orderId']) : FALSE; if (empty($orderId)) { goErrMsgPage(array('data' => array('缺少参数!'), 'link' => 'index.php?mod=owGoodsReplenishManage&act=showOrderList')); exit; } $preGoods = new PreGoodsOrdderManageModel(); $orderInfo = $preGoods->getOrderInfroByid($orderId); if (empty($orderInfo)) { goErrMsgPage(array('data' => array('不存在的订单!'), 'link' => 'index.php?mod=owGoodsReplenishManage&act=showOrderList')); exit; } $navlist = array(array('url' => '', 'title' => '海外仓备货'), array('url' => '', 'title' => '编辑备货单')); $toplevel = 2; //顶层菜单 $this->smarty->assign('toplevel', $toplevel); $secondlevel = '214'; //当前的二级菜单 $this->smarty->assign('navlist', $navlist); $this->smarty->assign('orderInfo', $orderInfo); $this->smarty->assign('secondlevel', $secondlevel); $this->smarty->display('editpregoodsorder.htm'); }