|
@@ -16,8 +16,12 @@ class room_extend
|
|
|
$this->mParams = $params;
|
|
|
}
|
|
|
|
|
|
- public function bargain_count()
|
|
|
+ public function bargain_count($dateid)
|
|
|
{
|
|
|
+ if($this->dateid() != $dateid) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+
|
|
|
if(empty($this->mParams)) {
|
|
|
return 0;
|
|
|
}
|
|
@@ -25,6 +29,24 @@ class room_extend
|
|
|
return intval($this->mParams['bargain_count']);
|
|
|
}
|
|
|
}
|
|
|
+ public function dateid() {
|
|
|
+ if(empty($this->mParams)) {
|
|
|
+ return 0;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ return intval($this->mParams['dateid']);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ public function date_empty($dateid)
|
|
|
+ {
|
|
|
+ if(empty($this->mParams)) return true;
|
|
|
+ if($this->dateid() == $dateid) {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ else {
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+ }
|
|
|
}
|
|
|
|
|
|
class bargain_parameter
|
|
@@ -148,26 +170,24 @@ class bargain_manager
|
|
|
}
|
|
|
|
|
|
$mod_room = Model('room');
|
|
|
- $info = $mod_room->getRoomExtend($this->mDateId,$userid);
|
|
|
+ $info = $mod_room->getRoomExtend($userid);
|
|
|
|
|
|
$room_extend = new room_extend($info);
|
|
|
- $count = $room_extend->bargain_count();
|
|
|
-
|
|
|
+ $count = $room_extend->bargain_count($this->mDateId);
|
|
|
$value = $this->mParams->bargain($count);
|
|
|
if($value === false) {
|
|
|
return false;
|
|
|
}
|
|
|
- else {
|
|
|
- if($count > 0) {
|
|
|
- $mod_room->editExtend($this->mDateId,$userid,['bargain_count' => ['exp', 'bargain_count+1']]);
|
|
|
- }
|
|
|
- else {
|
|
|
- $mod_room->addExtend($this->mDateId,$userid,['bargain_count' => 1]);
|
|
|
+ else
|
|
|
+ {
|
|
|
+ if(!$room_extend->date_empty($this->mDateId)) {
|
|
|
+ $mod_room->editExtend($userid,['bargain_count' => ['exp', 'bargain_count+1']]);
|
|
|
+ } else {
|
|
|
+ $mod_room->addExtend($userid,['bargain_count' => 1,'dateid' => $this->mDateId]);
|
|
|
}
|
|
|
+
|
|
|
$mod_room->editBargain($this->mBargainId,['discount' => ['exp',"discount+{$value}"],'user_num' => ['exp',"user_num+1"]]);
|
|
|
$mod_room->addRoomMsg(['room_id' => $this->mRoomId,'member_id' => $userid, 'type' => proto_type::msg_type_bargain,'msg' => json_encode(['value' => $value]),'add_time' => time()]);
|
|
|
-
|
|
|
-
|
|
|
return ['value' => $value,'success' => true,'discount' => $this->mParams->discount(),'user_num' => $this->mParams->user_num()];
|
|
|
}
|
|
|
}
|