From b55b03521b4a42d705f8537c7446e2fd7fca407e Mon Sep 17 00:00:00 2001 From: hujiabin <519660157@qq.com> Date: Mon, 29 May 2023 16:49:32 +0800 Subject: [PATCH] =?UTF-8?q?=E8=A7=A3=E5=86=B3=E6=88=90=E9=95=BF=E5=A5=96?= =?UTF-8?q?=E5=8A=B1BUG=E3=80=81=E5=91=A8=E7=A4=BC=E5=8C=85=E6=AF=8F?= =?UTF-8?q?=E5=A4=A9=E9=83=BD=E8=83=BD=E9=A2=86=E5=8F=96BUG=E3=80=81?= =?UTF-8?q?=E8=8A=AF=E7=89=87=E6=A7=BD=E8=A7=A3=E9=94=81=E6=B2=A1=E5=90=8C?= =?UTF-8?q?=E6=AD=A5BUG?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../controller/BaseAuthedController.class.php | 153 +++++++++--------- webapp/controller/BaseController.class.php | 5 + .../controller/ChipPageController.class.php | 3 + webapp/services/MissionService.php | 21 ++- 4 files changed, 103 insertions(+), 79 deletions(-) diff --git a/webapp/controller/BaseAuthedController.class.php b/webapp/controller/BaseAuthedController.class.php index e010dada..5c53bb33 100644 --- a/webapp/controller/BaseAuthedController.class.php +++ b/webapp/controller/BaseAuthedController.class.php @@ -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; + } } + } } } diff --git a/webapp/controller/BaseController.class.php b/webapp/controller/BaseController.class.php index 7376f0fa..4ab5a416 100644 --- a/webapp/controller/BaseController.class.php +++ b/webapp/controller/BaseController.class.php @@ -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', ''); diff --git a/webapp/controller/ChipPageController.class.php b/webapp/controller/ChipPageController.class.php index 680a745b..6b3548b9 100644 --- a/webapp/controller/ChipPageController.class.php +++ b/webapp/controller/ChipPageController.class.php @@ -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, diff --git a/webapp/services/MissionService.php b/webapp/services/MissionService.php index 66466cb3..8278241e 100644 --- a/webapp/services/MissionService.php +++ b/webapp/services/MissionService.php @@ -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'];