예제 #1
0
 public static function changeschstatus($data)
 {
     $arr = PapQuotationScheme::model()->updateByPK($data['SchID'], array('Status' => $data['status']));
     return $arr;
 }
예제 #2
0
 public static function editscheme($params)
 {
     $organID = Yii::app()->user->getOrganID();
     $time = $_SERVER['REQUEST_TIME'];
     //更新报价单
     $quoID = self::ifsendquo(array('inqid' => $params['inqid']));
     $quodatas['UpdateTime'] = $time;
     $quodatas['Title'] = $params['quoname'];
     $result = Yii::app()->papdb->createCommand()->update('pap_quotation', $quodatas, 'QuoID=' . $quoID);
     $SchID = $params['schid'];
     $datas['TotalFee'] = $params['quoprices'];
     $datas['GoodFee'] = $params['totalprices'];
     $datas['ShipFee'] = $params['shipprices'];
     $datas['ShipFee'] = $params['shipprices'];
     $datas['UpdateTime'] = $time;
     //保存附件
     if ($params['fileurl']) {
         $datas['FileName'] = $params['filename'];
         $datas['FileUrl'] = $params['fileurl'];
         //删除之前附件
         $quo_data = PapQuotationScheme::model()->findByPk($SchID);
         if (!empty($quo_data['FileName'])) {
             $ftp = new Ftp();
             $res = $ftp->delete_file($quo_data->FileUrl);
             $ftp->close();
         }
     }
     $result = Yii::app()->papdb->createCommand()->update('pap_quotation_scheme', $datas, 'SchID=:SchID', array(':SchID' => $SchID));
     //获取商品信息
     $goodsinfo = array();
     $goodsids = explode(',', $params['quoids']);
     $goodsnum = explode(',', $params['quonum']);
     $goodsprice = explode(',', $params['quoprice']);
     //获取以前的商品信息
     $oldgoodsinfo = PapQuotationGoods::model()->findAll('SchID=' . $SchID);
     $newgoodsinfo = array();
     foreach ($goodsids as $key => $v) {
         if ($v) {
             $newgoodsinfo[$key]['GoodsID'] = $goodsids[$key];
             $newgoodsinfo[$key]['Num'] = $goodsnum[$key];
             $newgoodsinfo[$key]['Price'] = $goodsprice[$key];
             $version = QuotationService::getgoodsversion($goodsids[$key]);
             $newgoodsinfo[$key]['Version'] = $version ? $version : 0;
         }
     }
     $insertid = array();
     //将报价单商品插入报价单商品表中
     if ($SchID) {
         foreach ($newgoodsinfo as $nkey => $new) {
             $newids[] = $new['GoodsID'];
         }
         if ($oldgoodsinfo) {
             foreach ($oldgoodsinfo as $okey => $old) {
                 $oldids[] = $old['GoodsID'];
             }
         } else {
             $oldids = array();
         }
         foreach ($oldids as $id) {
             if (!in_array($id, $newids)) {
                 //删除商品
                 $delcount = Yii::app()->papdb->createCommand()->delete('pap_quotation_goods', 'SchID=:SchID and GoodsID=:goodsid', array(':SchID' => $SchID, ':goodsid' => $id));
             }
         }
         foreach ($newids as $key => $id) {
             if (in_array($id, $oldids)) {
                 //更新商品
                 $update['Num'] = $newgoodsinfo[$key]['Num'];
                 $update['Price'] = $newgoodsinfo[$key]['Price'];
                 $update['Version'] = $newgoodsinfo[$key]['Version'];
                 $result = Yii::app()->papdb->createCommand()->update('pap_quotation_goods', $update, 'SchID=:SchID and GoodsID=:goodsid', array(':SchID' => $SchID, ':goodsid' => $id));
                 if ($result == 1) {
                     $res = 1;
                 }
             } else {
                 //插入商品
                 $goodsdatas['SchID'] = $SchID;
                 $goodsdatas['GoodsID'] = $newgoodsinfo[$key]['GoodsID'];
                 $goodsdatas['Num'] = $newgoodsinfo[$key]['Num'];
                 $goodsdatas['Price'] = $newgoodsinfo[$key]['Price'];
                 $goodsdatas['Version'] = $newgoodsinfo[$key]['Version'];
                 $result = Yii::app()->papdb->createCommand()->insert('pap_quotation_goods', $goodsdatas);
                 $insertid[] = Yii::app()->papdb->getLastInsertID();
             }
         }
     }
     if ($res = 1 || count($insertid) > 0 || $delcount > 0) {
         echo json_encode(array('count' => 1, 'schid' => $SchID, 'success' => true));
     } else {
         echo json_encode(array('count' => 0));
     }
 }
예제 #3
0
 public static function cancelquo($params)
 {
     $quoid = $params['quoid'];
     if ($params['inqid']) {
         //查询询价单状态
         $sta = 'select Status from pap_inquiry where InquiryID=' . $params['inqid'];
         $r = Yii::app()->papdb->createCommand($sta)->queryRow();
         if ($r['Status'] > 1) {
             echo json_encode(array('count' => -1, 'msg' => '只能取消待报价或待确认的询价单'));
             die;
         }
     } else {
         //查询报价单状态
         $sta = 'select Status from pap_quotation where QuoID=' . $quoid;
         $r = Yii::app()->papdb->createCommand($sta)->queryRow();
         if ($r['Status'] != '1') {
             echo json_encode(array('count' => -1, 'msg' => '只能取消待确认的报价单'));
             die;
         }
     }
     $sql = 'select SchID from pap_quotation_scheme where QuoID=' . $quoid;
     $result = Yii::app()->papdb->createCommand($sql)->queryAll();
     $schids = array();
     foreach ($result as $r) {
         $schids[] = $r['SchID'];
     }
     $schstr = implode(',', $schids);
     if ($schids) {
         $goods = PapQuotationGoods::model()->deleteAll('SchID in (' . $schstr . ')');
     }
     $sch = PapQuotationScheme::model()->deleteAll('QuoID=' . $quoid);
     $quo = PapQuotation::model()->deleteByPk($quoid);
     if ($params['inqid']) {
         //查询询价单是否报价
         $quosql = 'select QuoID from pap_quotation where IfSend="2" and InquiryID=' . $params['inqid'];
         $quos = Yii::app()->papdb->createCommand($quosql)->queryRow();
         if (!$quos) {
             $update = 'update pap_inquiry set Status=0 where InquiryID=' . $params['inqid'];
             Yii::app()->papdb->createCommand($update)->execute();
         }
     }
     echo json_encode(array('count' => $quo + $sch + $goods));
 }