function act_allPass() { $userCnName = $_SESSION['userCnName']; $id_arr = $_POST['id']; $f_count = count($id_arr); $id = implode(',', $id_arr); $where = "where id in(" . $id . ") and auditStatus=0"; $record_list = InvRecordModel::getInvRecordList("*", $where); $s_count = count($record_list); if ($f_count != $s_count) { self::$errCode = "401"; self::$errMsg = "当前包含有不用审核的订单,请确认!"; return false; } OmAvailableModel::begin(); foreach ($record_list as $record) { $data = array(); $id = $record['id']; $data = array('auditStatus' => 1); $Inv_info = InvRecordModel::getInvRecordList("*", "where id='{$id}'"); $position_info = OmAvailableModel::getTNameList("wh_position_distribution", "id", "where pName='{$Inv_info[0]['location']}'"); $skuinfo = whShelfModel::selectSku(" where sku='{$Inv_info[0]['sku']}'"); $updatedata = InvRecordModel::update($data, "and id='{$id}'"); if (!$updatedata) { self::$errCode = "402"; self::$errMsg = "更新通过状态失败!"; return false; } $tName = 'wh_product_position_relation'; $set = "SET nums='{$Inv_info[0]['invNums']}'"; $where = "WHERE pId='{$skuinfo['id']}' AND positionId='{$position_info[0]['id']}' AND is_delete=0 AND storeId=1"; $affectRow = OmAvailableModel::updateTNameRow($tName, $set, $where); //库存变化 if ($affectRow === false) { self::$errCode = "403"; self::$errMsg = "更新具体仓位库存失败!"; OmAvailableModel::rollback(); return false; } $adjustNums = $Inv_info[0]['adjustNums']; if ($Inv_info[0]['invType'] == 2) { $adjustNums = "-" . $adjustNums; } $tName = 'wh_sku_location'; $set = "SET actualStock=actualStock+'{$adjustNums}'"; $where = "WHERE sku='{$Inv_info[0]['sku']}' AND storeId=1"; $affectRow = WhIoRecordsModel::updateTNameRow($tName, $set, $where); //库存变化 if ($affectRow === false) { self::$errCode = "404"; self::$errMsg = "更新总库存失败!"; OmAvailableModel::rollback(); return false; } /**** 插入出入库记录 *****/ if ($Inv_info[0]['invType'] == 2) { $ioType = 1; $ioTypeId = 11; $reason = '盘点出库'; } else { $ioType = 2; $ioTypeId = 10; $reason = '盘点入库'; } if ($adjustNums != 0) { $update_onhand = CommonModel::adjustInventory($Inv_info[0]['sku'], $adjustNums, $userCnName); if ($update_onhand == 0) { self::$errCode = 415; self::$errMsg = "更新旧erp库存失败"; OmAvailableModel::rollback(); return false; } $skuinfo = whShelfModel::selectSku(" where sku = '{$Inv_info[0]['sku']}'"); $paraArr = array('sku' => $Inv_info[0]['sku'], 'amount' => abs($adjustNums), 'positionId' => $position_info[0]['id'], 'purchaseId' => $skuinfo['purchaseId'], 'ioType' => $ioType, 'ioTypeId' => $ioTypeId, 'userId' => $_SESSION['userId'], 'reason' => $reason); $record = CommonModel::addIoRecores($paraArr); //出库记录 if (!$record) { OmAvailableModel::rollback(); return false; } } //更新申请盘点表 $waitInf = WaitInventoryModel::updateInv($Inv_info[0]['sku'], $_SESSION['userId']); if (!$waitInf) { self::$errCode = 414; self::$errMsg = "跟新申请盘点表失败!"; TransactionBaseModel::rollback(); return false; } } OmAvailableModel::commit(); return true; }