function act_updateDefectiveProducts($defectiveId, $infoId, $num, $note, $scrappedStatus) { //QC对不良品列表中进行对报废和内部处理 //$scrappedStatus表示处理方向,1为报废,2为内部处理,3为待退回 try { TransactionBaseModel::begin(); $now = time(); $select = 'startTime'; $where = "WHERE id='{$defectiveId}'"; $defectiveProductsList = DefectiveProductsModel::getDefectiveProductsList($select, $where); //修改记录前看是否是第一次插入 $set = "SET processedNum=processedNum+'{$num}' "; if (empty($defectiveProductsList[0]['startTime'])) { //如果是第一次插入则加入首次处理时间 $set .= ",startTime='{$now}' "; } DefectiveProductsModel::updateDefectiveProducts($set, $where); //先将该不良品记录的相关字段修改 $select = 'spu,sku,defectiveNum,processedNum'; $defectiveProductsList = DefectiveProductsModel::getDefectiveProductsList($select, $where); $spu = $defectiveProductsList[0]['spu']; $sku = $defectiveProductsList[0]['sku']; $defectiveNum = $defectiveProductsList[0]['defectiveNum']; //不良品记录的总数量 $processedNum = $defectiveProductsList[0]['processedNum']; //已处理数量 if ($scrappedStatus == 1 || $scrappedStatus == 2) { $set = "SET infoId='{$infoId}',spu='{$spu}',sku='{$sku}',scrappedNum='{$num}',processTypeId='{$scrappedStatus}',note='{$note}' "; ScrappedProductsModel::addScrappedProducts($set); //在报废,内部处理表中添加记录; } elseif ($scrappedStatus == 3) { $set = "SET infoId='{$infoId}',spu='{$spu}',sku='{$sku}',returnNum='{$num}',note='{$note}' "; ReturnProductsModel::addReturnProducts($set); //在退回表中表中添加记录; } else { throw new Exception("error status"); } if ($defectiveNum == $processedNum) { //检测该不良品记录是否处理完成 $set = "SET defectiveStatus='2',lastModified='{$now}' "; $where = "WHERE id='{$defectiveId}'"; DefectiveProductsModel::updateDefectiveProducts($set, $where); //先将该不良品记录的相关字段修改 } TransactionBaseModel::commit(); TransactionBaseModel::autoCommit(); return 1; } catch (Exception $e) { TransactionBaseModel::rollback(); self::$errCode = '0000'; self::$errMsg = $e; return 0; } }
function act_addScrappedProducts($set) { $list = ScrappedProductsModel::updateScrappedProducts($set); if ($list) { return $list; } else { self::$errCode = ScrappedProductsModel::$errCode; self::$errMsg = ScrappedProductsModel::$errMsg; return false; } }
/** * 根据条件更新数据 * @param $set 插入字段的值 * @return 返回插入的记录数 */ public static function addScrappedProducts($set) { self::initDB(); $sql = "INSERT INTO " . self::$table . " {$set}"; //echo $sql; if (!self::$dbConn->query($sql)) { self::$errCode = "1501"; self::$errMsg = "addScrappedProducts"; return false; } else { return self::$dbConn->affected_rows(); } }