Commit f66891bea5913b24c7ee4179b53085197cd40215

Authored by zhangqijia
1 parent da20e384

fix: 一番赏 打开激励奖导致抽奖逻辑性阻塞的bug

Showing 2 changed files with 12 additions and 8 deletions   Show diff stats
src/actions/CapsuleAction.lua
... ... @@ -216,7 +216,7 @@ function _M.specialRewardRpc(agent, data)
216 216 local role = agent.role
217 217 local msg = MsgPack.unpack(data)
218 218 local capsuleId = msg.capsule_id
219   - local typ = msg.typ --0=独享,1= 公开
  219 + local typ = msg.typ or 1 --0=独享,1= 公开
220 220 local roleId = role:getProperty("id")
221 221  
222 222 local ret
... ...
src/models/Capsule.lua
... ... @@ -428,12 +428,11 @@ function Capsule:getCore(record, recordAmount,now)
428 428  
429 429  
430 430  
431   - local np = special["np"]
432   - if np > recordAmount then return nil end
  431 + local count = special["np"]
  432 + if count > recordAmount then return nil end
433 433  
434 434  
435   - local left = math.ceil((np - recordAmount)/2) or 0
436   - local count = np
  435 + local left = math.ceil((count - recordAmount)/2) or 0
437 436 local roleRecord = {}
438 437 for i, v in ipairs(record) do
439 438 if count <= 0 then break end
... ... @@ -475,8 +474,7 @@ function Capsule:getLast(record,now)
475 474  
476 475 table.sort(record, function(a, b) return a.create_time > b.create_time end)
477 476  
478   - local np = special["np"]
479   - local count = np
  477 + local count = special["np"]
480 478 local roleRecord = {}
481 479 for _, v in ipairs(record) do
482 480 if count <= 0 then break end
... ... @@ -665,7 +663,13 @@ function Capsule:checkIncentive(roleId, name, now)
665 663  
666 664 end
667 665 end
668   - table.insert(incentiveByRole, notify)
  666 + for k, v in pairs(notify) do
  667 + if not incentiveByRole[k] then
  668 + incentiveByRole[k] = v
  669 + else
  670 + incentiveByRole[k].amount = incentiveByRole[k].amount + v.amount
  671 + end
  672 + end
669 673 incentiveRecord[roleId] = incentiveByRole
670 674 self:setProperty("incentiveRecord", incentiveRecord)
671 675  
... ...