function act_getPendingProductsList($select, $where) { $list = PendingProductsModel::getPendingProductsList($select, $where); if ($list) { return $list; } else { self::$errCode = PendingProductsModel::$errCode; self::$errMsg = PendingProductsModel::$errMsg; return false; } }
function act_operatePendingProducts() { //QC对待定列表中进行修改图片,正常回测,待退回(全部,不分部分) //$pendingId表示待定表中的记录ID,$status表示修改图片,正常回测或待退回 try { $cTime1 = time() + microtime(); $pendingId = isset($_GET['pendingId']) ? post_check($_GET['pendingId']) : ''; $status = isset($_GET['status']) ? post_check($_GET['status']) : ''; $tracktime = isset($_GET['tracktime']) ? post_check($_GET['tracktime']) : ''; //echo $pendingId.' '.$status; $select = '*'; $where = "WHERE id='{$pendingId}'"; $pendingProductsList = PendingProductsModel::getPendingProductsList($select, $where); if (empty($pendingProductsList)) { throw new Exception("error"); } TransactionBaseModel::begin(); $selectStatus = $pendingProductsList[0]['pendingStatus']; if ($selectStatus != 0 && $selectStatus != 2) { //如果该条待定记录中的状态不是0或2(待处理或者是图片修改完成时,报错) throw new Exception("error"); } $startTime = $pendingProductsList[0]['startTime']; $pendingNum = $pendingProductsList[0]['pendingNum']; $pendingId = $pendingProductsList[0]['id']; $infoId = $pendingProductsList[0]['infoId']; // $spu = $pendingProductsList[0]['spu']; $sku = $pendingProductsList[0]['sku']; $now = time(); if ($status == 1) { //修改图片 $set = "SET pendingStatus='1',processedNum='{$pendingNum}',startTime='{$now}' "; //状态改为需要修改图片 $where = "WHERE id='{$pendingId}'"; PendingProductsModel::updatePendingProducts($set, $where); //先将该待定记录的相关字段修改 //这里还要调用API在产品中心待修改列表中添加一条记录// //先略过,到时处理 } elseif ($status == 2) { //正常回测 $set = "SET pendingStatus='3',processedNum='{$pendingNum}',lastModified='{$now}' "; //状态改为已处理pendingStatus='3' if (empty($startTime)) { //如果不是从修改完图片进行回测的话(即开始处理时间为空),要加上开始处理时间 $set .= ",startTime='{$now}' "; } $where = "WHERE id='{$pendingId}'"; //echo $set; PendingProductsModel::updatePendingProducts($set, $where); //先将该待定记录的相关字段修改 //这里还要在wh_sample_info中将$infoId这条记录的detectStatus状态改为1(待检测),pid=$pendingId $select = 'id'; $where = "WHERE id='{$infoId}'"; $whInfoList = PendingProductsModel::getWhInfo($select, "WHERE id='{$infoId}'"); //取出wh_info表中关联pendingId的记录 if (empty($whInfoList)) { //如果该infoid在whInfo中找不到记录的话 throw new Exception("error infoId"); } $set = "set detectStatus='1',pid='{$pendingId}' "; $affectRow = PendingProductsModel::updateWhInfo($set, $where); //更新原来的wh_info表中的该记录 if ($affectRow != 1) { //如果更新记录数不是唯一的,也报错 throw new Exception("update error"); } } elseif ($status == 3) { //待退回 $set = "SET pendingStatus='3',processedNum='{$pendingNum}',startTime='{$now}',lastModified='{$now}' "; $where = "WHERE id='{$pendingId}'"; PendingProductsModel::updatePendingProducts($set, $where); //先将该待定记录的相关字段修改 $note = '待定移至待退回'; $set = "SET infoId='{$infoId}',sku='{$sku}',note='{$note}',returnNum='{$pendingNum}'"; ReturnProductsModel::addReturnProducts($set); //在退回表中表中添加记录; } else { throw new Exception("error status"); } TransactionBaseModel::commit(); TransactionBaseModel::autoCommit(); $cTime2 = time() + microtime(); self::$errCode = $cTime2 . ' ' . $cTime1; self::$errMsg = 'Success'; return 1; } catch (Exception $e) { TransactionBaseModel::rollback(); $cTime2 = time() + microtime(); self::$errCode = $cTime2 . ' ' . $cTime1; self::$errMsg = $e->getMessage(); return 0; } }
function act_getSkuInfo() { global $memc_obj; $sku_name = ''; $cate = ''; $sku = $_POST['sku']; if (is_numeric($sku) && $sku > 1000000) { //此sku为goods_code $goods_codes = WhStandardModel::goods_codeTosku($sku); $sku = $goods_codes['sku']; } //读取数据库 $categoryStr = ""; //$time1 = time(); //SKU信息API接口 $OmAvailableApiAct = new OmAvailableApiAct(); $skuInfo = $OmAvailableApiAct->act_getGoodsInfoBySku($sku); $skuInfo = $skuInfo['data']; //$skuInfo = $memc_obj->get_extral('pc_goods_'.$sku); $reSku = $skuInfo['sku']; //接口返回SKU $reSpu = $skuInfo['spu']; //接口返回SKU $skuName = $skuInfo['goodsName']; //产品描述 $purchaseId = $skuInfo['purchaseId']; //采购人ID $goodsCategory = $skuInfo['goodsCategory']; //SKU分类path $qcCategoryListAct = new qcCategoryListAct(); $where = 'WHERE is_delete=0 and path= "' . $goodsCategory . '"'; $categoryList = $qcCategoryListAct->act_getCategoryList('*', $where); $getCategoryArr = $qcCategoryListAct->act_getCategoryArr(); //获取产品类别列表信息 $sampleTypeListId = empty($categoryList) ? 1 : $categoryList[0]['sampleTypeId']; $qcStandard = new qcStandardAct(); $skuTypeQcArrList = $qcStandard->act_skuTypeQcList(''); $sampleTypeList = array(); $categoryInfo_ids = array(); $categoryInfo = array(); foreach ($skuTypeQcArrList as $skuTypeQcArrListValue) { $categoryInfo[$skuTypeQcArrListValue['id']] = $skuTypeQcArrListValue['typeName']; $sampleTypeList[$skuTypeQcArrListValue['id']] = $skuTypeQcArrListValue['typeName'] . " " . $skuTypeQcArrListValue['describe']; } $goodsCategoryNameArray = explode("-", $goodsCategory); $goodsCategoryName = array(); foreach ($goodsCategoryNameArray as $cvalue) { $goodsCategoryName[] = $getCategoryArr[$cvalue]; } $goodsCategoryNameStr = join('-', $goodsCategoryName); //$categoryInfo_ids = array_keys($categoryInfo_ids); //$categoryStr = $sampleTypeList[$sampleTypeListId]; //$img_return = $OmAvailableApiAct->act_getAllPic($reSpu, 'F');//图片接口 //var_dump($img_return); exit; $data = UserCacheModel::qccenterGetErpGoodscount($sku); $goods_count = $data['goods_count']; /*$goods_location = $data['goods_location']; $cguser = $data['cguser'];*/ //$categoryL = explode('-',$goodsCategory); /*foreach($category as $c_key=>$categoryArr){ if(in_array($categoryL[0],$categoryArr)){ if($c_key == '1'){ //SKU分类信息API接口 $cate = 1; $goodsCategorySt = $memc_obj->get_extral('pc_goods_category_'.$goodsCategory); $categoryStr = "{$goodsCategorySt['name']}:功能检测"; break; }else if($c_key == '2'){ //SKU分类信息API接口 $cate = 2; $goodsCategorySt = $memc_obj->get_extral('pc_goods_category_'.$goodsCategory); $categoryStr = "{$goodsCategorySt['name']}:尺寸质量检测"; break; }else if($c_key == '3'){ //SKU分类信息API接口 $cate = 3; $goodsCategorySt = $memc_obj->get_extral('pc_goods_category_'.$goodsCategory); $categoryStr = "{$goodsCategorySt['name']}:对图检测"; break; } }else{ continue; } }*/ $where = "where sku='{$sku}' and is_delete=0 and sellerId=1 and getUserId='{$_SESSION['sysUserId']}' and detectStatus=1 order by getTime asc limit 1"; $list = WhStandardModel::getNowWhList("*", $where); $num = $list[0]['num']; $infoid = $list[0]['id']; $goods_location = $list[0]['location']; $cguser = UserModel::getUsernameById($list[0]['purchaseId']); //$goods_count = 'TEST'; $where2 = "where sampleTypeId='{$sampleTypeListId}' and minimumLimit<='{$num}' and maximumLimit>='{$num}' limit 1"; $list2 = DetectStandardModel::getNowStandardList("*", $where2); //如果是正常回测,获取待定回测信息备注 $pendingInfo = PendingProductsModel::getPendingProductsList('backNote', ' WHERE infoId=' . $infoid); if ($pendingInfo) { $backNote = $pendingInfo[0]['backNote']; } //$time2 = time(); //echo ($time2-$time1); if ($list) { self::$errCode = "200"; $info = array(); $info['info'] = "{$reSku} {$skuName} <br> 产品分类: {$goodsCategoryNameStr} <br>【 来货 {$num} 个,现有库存 " . $goods_count . " 个,仓位:" . $goods_location . ",采购:{$cguser} 】"; $info['category'] = $sampleTypeListId; $info['categoryInfo'] = $categoryInfo; $info['sku'] = $reSku; $info['spu'] = $reSpu; $info['num'] = $num; $info['infoid'] = $infoid; $info['cate'] = $list2; $info['images'] = $img_return['data']['Description'][0]; $info['backNote'] = !empty($backNote) ? $backNote : ''; return $info; } else { self::$errCode = "003"; self::$errMsg = "未找到该料号[{$sku}]对于的{$_SESSION['userName']}领取记录!"; return false; } }