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();
     }
 }