public function actionPrintList() { $orderId = Yii::app()->request->getParam('orderId', 0); //$companyId = Yii::app()->request->getParam('companyId'); $padId = Yii::app()->request->getParam('padId'); $typeId = Yii::app()->request->getParam('typeId'); Until::validOperate($companyId, $this); $order = Order::model()->with('company')->find('t.lid=:id and t.dpid=:dpid', array(':id' => $orderId, ':dpid' => $this->companyId)); $pad = Pad::model()->find(' dpid=:dpid and lid=:lid', array(':dpid' => $order->dpid, 'lid' => $padId)); //前面加 barcode if (!empty($pad)) { $precode = ""; //$precode="1D6B450B".strtoupper(implode('',unpack('H*', 'A'.$order->lid)))."0A".strtoupper(implode('',unpack('H*', 'A'.$order->lid)))."0A"; //Yii::app()->end(json_encode(Helper::printList($order , $padid))); $printserver = "1"; $memo = ""; $ret = Helper::printList($order, $pad, $precode, $printserver, $memo); } else { $ret = array('status' => false, 'dpid' => $order->dpid, 'jobid' => "0", 'type' => 'none', 'msg' => yii::t('app', 'PAD不存在!')); } //exit; $this->renderPartial('printlist', array('orderId' => $orderId, 'ret' => $ret, 'typeId' => $typeId)); }
public function actionCharge() { $model = new MemberRecharge(); $model->dpid = $this->companyId; //Until::validOperate($model->dpid, $this); if (Yii::app()->request->isPostRequest) { $model->attributes = Yii::app()->request->getPost('MemberRecharge'); $rfid = Yii::app()->request->getPost('rfid'); $transaction = Yii::app()->db->beginTransaction(); try { $member = MemberCard::model()->find('rfid=:rfid and selfcode=:selfcode and dpid=:dpid', array(':rfid' => $rfid, ':selfcode' => $model->member_card_id, ':dpid' => $this->companyId)); Until::validOperate($member->lid, $this); //var_dump($member);exit; $member->all_money = $member->all_money + $model->reality_money + $model->give_money; $se = new Sequence("member_recharge"); $model->lid = $se->nextval(); $model->update_at = date('Y-m-d H:i:s', time()); $model->create_at = date('Y-m-d H:i:s', time()); $model->delete_flag = '0'; if ($model->save() && $member->update()) { $transaction->commit(); Yii::app()->user->setFlash('success', yii::t('app', '充值成功')); } else { $transaction->rollback(); Yii::app()->user->setFlash('error', yii::t('app', '充值失败')); } } catch (Exception $e) { Yii::app()->user->setFlash('error', yii::t('app', '充值失败')); $transaction->rollback(); } $this->redirect(array('member/index', 'companyId' => $this->companyId)); } $this->renderPartial('charge', array('model' => $model)); }
public function actionUnionsite() { if (Yii::app()->request->isPostRequest) { $sid = Yii::app()->request->getPost('sid'); $companyId = Yii::app()->request->getPost('companyId'); $istemp = Yii::app()->request->getPost('istemp', '0'); $ssid = Yii::app()->request->getPost('ssid', 0); $sistemp = Yii::app()->request->getPost('sistemp', '0'); Until::validOperate($companyId, $this); //echo json_encode(array('status'=>0,'message'=>$sid.'dd'.$companyId.'dd'.$istemp.'dd'.$ssid.'dd'.$sistemp));exit; $db = Yii::app()->db; $transaction = $db->beginTransaction(); try { $number = 0; $status = '1'; $smodelsn = SiteNo::model()->find('dpid=:companyId and delete_flag=0 and site_id=:lid and is_temp=:istemp and status in ("1","2")', array(':companyId' => $companyId, ':lid' => $ssid, ':istemp' => $sistemp)); if ($sistemp == '0') { $smodel = Site::model()->find('dpid=:companyId and delete_flag=0 and lid=:lid', array(':companyId' => $companyId, ':lid' => $ssid)); $number = $smodel->number; $status = $smodel->status; } else { $number = $smodelsn->number; $status = $smodelsn->status; } //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; if ($istemp == "0") { $sqlsite = "update nb_site set status=IF(:sstatus>status,:sstatus,status),number=number+:snumber where lid=:sid and dpid=:companyId"; $commandsite = $db->createCommand($sqlsite); $commandsite->bindValue(":snumber", $number); $commandsite->bindValue(":sstatus", $status); $commandsite->bindValue(":sid", $sid); $commandsite->bindValue(":companyId", $companyId); $commandsite->execute(); } if ($sistemp == "0") { $sqlsite = "update nb_site set status='5' where lid=:sid and dpid=:companyId"; $commandsite = $db->createCommand($sqlsite); $commandsite->bindValue(":sid", $ssid); $commandsite->bindValue(":companyId", $companyId); $commandsite->execute(); } //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; //更新目标site_no人数和状态 $modelsn = SiteNo::model()->find('dpid=:companyId and delete_flag=0 and site_id=:lid and is_temp=:istemp and status in ("1","2")', array(':companyId' => $companyId, ':lid' => $sid, ':istemp' => $istemp)); if ($status > $modelsn->status) { $modelsn->status = $status; } $modelsn->number = $modelsn->number + $number; $modelsn->save(); //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; //更新源site_no,让上网密码code 指向目标订单 $smodelsn->status = '5'; $smodelsn->site_id = $modelsn->site_id; $smodelsn->is_temp = $modelsn->is_temp; $smodelsn->save(); //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; //更新目标订单状态和人数 $tocriteria = new CDbCriteria(); $tocriteria->condition = ' t.order_status in ("1","2") and t.dpid=' . $companyId . ' and t.site_id=' . $sid . ' and t.is_temp=' . $istemp; $tocriteria->order = ' t.lid desc '; $torder = Order::model()->find($tocriteria); if (empty($torder)) { //新生成订单 $torder = new Order(); $se = new Sequence("order"); $torder->lid = $se->nextval(); $torder->dpid = $companyId; $torder->username = Yii::app()->user->name; $torder->create_at = date('Y-m-d H:i:s', time()); $torder->lock_status = '0'; $torder->site_id = $sid; $torder->is_temp = $istemp; $torder->order_status = $status; $torder->number = $modelsn->number + $number; $torder->save(); } else { if ($status > $torder->order_status) { $torder->order_status = $status; } $torder->number = $torder->number + $number; $torder->save(); } //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; //... //更新源订单状态 $socriteria = new CDbCriteria(); $socriteria->condition = ' t.order_status in ("1","2") and t.dpid=' . $companyId . ' and t.site_id=' . $ssid . ' and t.is_temp=' . $sistemp; $socriteria->order = ' t.lid desc '; $sorder = Order::model()->find($socriteria); if (!empty($sorder)) { $sorder->order_status = "5"; $sorder->save(); } //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; //... //更新源订单明细,指向目标订单。 if (!empty($sorder)) { $sqlorder = "update nb_order_product set order_id=:torderid where dpid=:companyId and order_id=:sorderid"; $commandorder = $db->createCommand($sqlorder); $commandorder->bindValue(":torderid", $torder->lid); $commandorder->bindValue(":sorderid", $sorder->lid); $commandorder->bindValue(":companyId", $companyId); $commandorder->execute(); } //echo json_encode(array('status'=>0,'message'=>$number.'dd'.$status));exit; // $sqlorder="update nb_order set is_temp=:istemp,site_id=:sid where site_id=:ssid and is_temp=:sistemp and dpid=:companyId and order_status in ('1','2','3')"; // $commandorder=$db->createCommand($sqlorder); // $commandorder->bindValue(":sid" , $sid); // $commandorder->bindValue(":istemp" , $istemp); // $commandorder->bindValue(":ssid" , $ssid); // $commandorder->bindValue(":sistemp" , $sistemp); // $commandorder->bindValue(":companyId" , $companyId); // $commandorder->execute(); $transaction->commit(); //提交事务会真正的执行数据库操作 echo json_encode(array('status' => 1, 'message' => yii::t('app', '并台成功'))); return true; } catch (Exception $e) { $transaction->rollback(); //如果操作失败, 数据回滚 echo json_encode(array('status' => 0, 'message' => yii::t('app', '并台失败'))); //echo json_encode(array('status'=>0,'message'=> var_dump($e))); return false; } } }