解决成长奖励BUG、周礼包每天都能领取BUG、芯片槽解锁没同步BUG

This commit is contained in:
hujiabin 2023-05-29 16:49:32 +08:00
parent a05b0539c7
commit b55b03521b
4 changed files with 103 additions and 79 deletions

View File

@ -410,82 +410,85 @@ class BaseAuthedController extends BaseController {
Bag::addItem($item['item_id'], $item['item_num']);
$propertyService->addBagChg();
} else {
switch ($itemMeta['type']) {
case mt\Item::HERO_TYPE:
{
Hero::addHero($itemMeta);
$propertyService->addHeroChg();
$propertyService->addUserChg();
}
break;
case mt\Item::HERO_SKIN_TYPE:
{
HeroSkin::addSkin($itemMeta);
$propertyService->addHeroSkinChg();
}
break;
case mt\Item::HEAD_TYPE:
{
array_push($heads, $itemMeta['id']);
$propertyService->addUserChg();
}
break;
case mt\Item::HEAD_FRAME_TYPE:
{
array_push($headFrames, $itemMeta['id']);
$propertyService->addUserChg();
}
break;
case mt\Item::GUN_TYPE:
{
Gun::addGun($itemMeta);
$propertyService->addGunChg();
}
break;
case mt\Item::GUN_SKIN_TYPE:
{
GunSkin::addSkin($itemMeta['id']);
$propertyService->addGunSkinChg();
}
break;
case mt\Item::FRAGMENT_BOX_TYPE:
{
Bag::addItem($item['item_id'], $item['item_num']);
$propertyService->addBagChg();
}
break;
case mt\Item::RING_TYPE:
{
UserSeasonRing::addRing($itemMeta);
$propertyService->addUserChg();
}
break;
case mt\Item::PARACHUTE_TYPE:
{
Parachute::addParachute($itemMeta);
$propertyService->addUserChg();
}
break;
case mt\Item::CHIP_TYPE:
{
Chip::addChip($itemMeta);
$propertyService->addChip();
}
break;
case mt\Item::RANDOM_BOX_TYPE:
{
$this->_openRandomBox($itemMeta,$awardService,$propertyService);
}
break;
default:
{
$this->_addLog('additems', 'invalid_item', array(
'param1' => $item['item_id'],
'param2' => $item['item_num'],
));
}
break;
for ($i=0; $i<$item['item_num']; $i++){
switch ($itemMeta['type']) {
case mt\Item::HERO_TYPE:
{
Hero::addHero($itemMeta);
$propertyService->addHeroChg();
$propertyService->addUserChg();
}
break;
case mt\Item::HERO_SKIN_TYPE:
{
HeroSkin::addSkin($itemMeta);
$propertyService->addHeroSkinChg();
}
break;
case mt\Item::HEAD_TYPE:
{
array_push($heads, $itemMeta['id']);
$propertyService->addUserChg();
}
break;
case mt\Item::HEAD_FRAME_TYPE:
{
array_push($headFrames, $itemMeta['id']);
$propertyService->addUserChg();
}
break;
case mt\Item::GUN_TYPE:
{
Gun::addGun($itemMeta);
$propertyService->addGunChg();
}
break;
case mt\Item::GUN_SKIN_TYPE:
{
GunSkin::addSkin($itemMeta['id']);
$propertyService->addGunSkinChg();
}
break;
case mt\Item::FRAGMENT_BOX_TYPE:
{
Bag::addItem($item['item_id'], $item['item_num']);
$propertyService->addBagChg();
}
break;
case mt\Item::RING_TYPE:
{
UserSeasonRing::addRing($itemMeta);
$propertyService->addUserChg();
}
break;
case mt\Item::PARACHUTE_TYPE:
{
Parachute::addParachute($itemMeta);
$propertyService->addUserChg();
}
break;
case mt\Item::CHIP_TYPE:
{
Chip::addChip($itemMeta);
$propertyService->addChip();
}
break;
case mt\Item::RANDOM_BOX_TYPE:
{
$this->_openRandomBox($itemMeta,$awardService,$propertyService);
}
break;
default:
{
$this->_addLog('additems', 'invalid_item', array(
'param1' => $item['item_id'],
'param2' => $item['item_num'],
));
}
break;
}
}
}
}
}

View File

@ -50,6 +50,11 @@ class BaseController {
return phpcommon\getMondaySeconds($this->_getNowTime(), $this->timeZone);
}
public function _getMondaySecondsByTime($time)
{
return phpcommon\getMondaySeconds($time, $this->timeZone);
}
public function _getZid()
{
$net = getReqVal('_net', '');

View File

@ -30,6 +30,9 @@ class ChipPageController extends BaseAuthedController
$this->_rspErr(1,'page parameter error');
return ;
}
$obj = new services\ChipPageService();
$obj->refreshSlotState($chipPageDb);
$chipPageDb = ChipPage::find($page);
$chipPageDto = ChipPage::toDtoInfo($chipPageDb);
$this->_rspData(array(
'data' => $chipPageDto,

View File

@ -113,11 +113,24 @@ class MissionService extends BaseService {
);
if ($missionDb) {
if ($missionMeta['type'] == mt\Task::DAILY_MISSON_TYPE) {
if (myself()->_getDaySeconds($missionDb['modifytime']) == myself()->_getNowDaySeconds()) {
$missionDto['current'] = $missionDto['target'];
$missionDto['state'] = Mission::RECEIVED_STATE;
return $missionDto;
switch ($missionMeta['subtype']){
case mt\Task::DAILY_ACTIVE_VALUE_MISSON_SUBTYPE : {
if (myself()->_getDaySeconds($missionDb['modifytime']) == myself()->_getNowDaySeconds()) {
$missionDto['current'] = $missionDto['target'];
$missionDto['state'] = Mission::RECEIVED_STATE;
return $missionDto;
}
}
break;
case mt\Task::WEAKLY_ACTIVE_VALUE_MISSON_SUBTYPE : {
if (myself()->_getMondaySecondsByTime($missionDb['modifytime']) == myself()->_getMondaySeconds()) {
$missionDto['current'] = $missionDto['target'];
$missionDto['state'] = Mission::RECEIVED_STATE;
return $missionDto;
}
}
}
} else {
if ($missionMeta['condition'] != mt\Task::OFFER_REWARD_COND) {
$missionDto['current'] = $missionDto['target'];