Commit 4f40cc1a09cc26f6bf871d2c713b501ce1d52143

Authored by chenyueqi
1 parent 1691ca06

付费钻区分ios钻和android钻

@@ -18,6 +18,8 @@ START_RESET_TIME = START_RESET_TIME_BASE - TIME_ZONE * 3600 @@ -18,6 +18,8 @@ START_RESET_TIME = START_RESET_TIME_BASE - TIME_ZONE * 3600
18 18
19 STRUCT_VERSION = 3 -- 数据结构版本 19 STRUCT_VERSION = 3 -- 数据结构版本
20 20
  21 +IOS_SID = 4 -- 判断是不是ios设备
  22 +
21 MAX_ROLE_NUM = 1000000 23 MAX_ROLE_NUM = 1000000
22 -- 属性枚举 24 -- 属性枚举
23 AttsEnum = { 25 AttsEnum = {
src/actions/GmAction.lua
@@ -669,6 +669,7 @@ end @@ -669,6 +669,7 @@ end
669 669
670 function _M.cz(role, pms) 670 function _M.cz(role, pms)
671 local id = tonum(pms.pm1) 671 local id = tonum(pms.pm1)
  672 + local sid = tonum(pms.pm2) or 0
672 local csvData = csvdb["shop_rechargeCsv"][id] 673 local csvData = csvdb["shop_rechargeCsv"][id]
673 if not csvData then 674 if not csvData then
674 return "充值id错误, 查看shop_recharge.csv" 675 return "充值id错误, 查看shop_recharge.csv"
@@ -678,6 +679,7 @@ function _M.cz(role, pms) @@ -678,6 +679,7 @@ function _M.cz(role, pms)
678 transactionId = "GM", 679 transactionId = "GM",
679 order = "GM", 680 order = "GM",
680 pay_time = skynet.timex(), 681 pay_time = skynet.timex(),
  682 + sid = sid == 1 and IOS_SID or 0,
681 }) 683 })
682 role:mylog("gm_action", {desc = "recharge", int1 = id, key1 = pms.sender}) 684 role:mylog("gm_action", {desc = "recharge", int1 = id, key1 = pms.sender})
683 return "指令成功" 685 return "指令成功"
src/models/Order.lua
@@ -12,6 +12,7 @@ Order.schema = { @@ -12,6 +12,7 @@ Order.schema = {
12 createTime = {"number", skynet.timex()}, -- 订单创建时间 12 createTime = {"number", skynet.timex()}, -- 订单创建时间
13 finishTime = {"number", 0}, -- 服务端验证完成时间 13 finishTime = {"number", 0}, -- 服务端验证完成时间
14 status = {"string", "create"}, 14 status = {"string", "create"},
  15 + sid = {"number",0}, -- 创建单号的设备的sid
15 } 16 }
16 17
17 Order.fields = { 18 Order.fields = {
@@ -21,6 +22,7 @@ Order.fields = { @@ -21,6 +22,7 @@ Order.fields = {
21 createTime = true, 22 createTime = true,
22 finishTime = true, 23 finishTime = true,
23 status = true, 24 status = true,
  25 + sid = true,
24 } 26 }
25 27
26 return Order 28 return Order
27 \ No newline at end of file 29 \ No newline at end of file
src/models/Role.lua
@@ -59,8 +59,9 @@ Role.schema = { @@ -59,8 +59,9 @@ Role.schema = {
59 ignoreMt = {"number", 0}, -- 忽略维护拦截 59 ignoreMt = {"number", 0}, -- 忽略维护拦截
60 sversion = {"number", STRUCT_VERSION or 0}, -- 重整数据版本 60 sversion = {"number", STRUCT_VERSION or 0}, -- 重整数据版本
61 timeReset = {"table", {}}, --重置轮回记录 61 timeReset = {"table", {}}, --重置轮回记录
62 - diamond = {"number", 0},  
63 - reDiamond = {"number", 0}, 62 + diamond = {"number", 0}, -- 免费钻
  63 + reDiamond = {"number", 0}, -- android充值钻
  64 + reDiamondIos = {"number", 0}, -- ios充值钻
64 setting = {"table", {}}, --设置 65 setting = {"table", {}}, --设置
65 codeStr = {"string", ""}, --已经领过的礼包码 66 codeStr = {"string", ""}, --已经领过的礼包码
66 -- roleInfo 67 -- roleInfo
src/models/RolePlugin.lua
@@ -442,7 +442,8 @@ function RolePlugin.bind(Role) @@ -442,7 +442,8 @@ function RolePlugin.bind(Role)
442 end 442 end
443 443
444 function Role:getAllDiamond() 444 function Role:getAllDiamond()
445 - return self:getProperty("diamond") + self:getProperty("reDiamond") 445 + local diamond = self:getProperty("sid") == IOS_SID and self:getProperty("reDiamondIos") or self:getProperty("reDiamond")
  446 + return self:getProperty("diamond") + diamond
446 end 447 end
447 448
448 function Role:gainDiamond(params) 449 function Role:gainDiamond(params)
@@ -452,10 +453,14 @@ function RolePlugin.bind(Role) @@ -452,10 +453,14 @@ function RolePlugin.bind(Role)
452 return false 453 return false
453 end 454 end
454 local origind = self:getProperty("diamond") 455 local origind = self:getProperty("diamond")
455 - local originr = self:getProperty("reDiamond") 456 + local originr = self:getProperty("sid") == IOS_SID and self:getProperty("reDiamondIos") or self:getProperty("reDiamond")
456 local origin = origind + originr 457 local origin = origind + originr
457 if params.isRecharge then 458 if params.isRecharge then
458 - self:incrProperty("reDiamond", count) 459 + if params.sid == IOS_SID then
  460 + self:incrProperty("reDiamondIos", count)
  461 + else
  462 + self:incrProperty("reDiamond", count)
  463 + end
459 else 464 else
460 self:incrProperty("diamond", count) 465 self:incrProperty("diamond", count)
461 end 466 end
@@ -486,8 +491,9 @@ function RolePlugin.bind(Role) @@ -486,8 +491,9 @@ function RolePlugin.bind(Role)
486 if count <= 0 then 491 if count <= 0 then
487 return false 492 return false
488 end 493 end
  494 + local isIos = self:getProperty("sid") == IOS_SID
489 local origind = self:getProperty("diamond") 495 local origind = self:getProperty("diamond")
490 - local originr = self:getProperty("reDiamond") 496 + local originr = isIos and self:getProperty("reDiamondIos") or self:getProperty("reDiamond")
491 local origin = origind + originr 497 local origin = origind + originr
492 498
493 if origin < 0 then 499 if origin < 0 then
@@ -497,9 +503,9 @@ function RolePlugin.bind(Role) @@ -497,9 +503,9 @@ function RolePlugin.bind(Role)
497 return false 503 return false
498 end 504 end
499 local last = count 505 local last = count
500 - local costFirst = {"diamond", "reDiamond"} 506 + local costFirst = isIos and {"diamond", "reDiamondIos"} or {"diamond", "reDiamond"}
501 if params.isRecharge then 507 if params.isRecharge then
502 - costFirst = {"reDiamond", "diamond"} 508 + costFirst = isIos and {"reDiamondIos", "diamond"} or {"reDiamond", "diamond"}
503 end 509 end
504 last = math.max(last - self:getProperty(costFirst[1]), 0) 510 last = math.max(last - self:getProperty(costFirst[1]), 0)
505 if last < count then 511 if last < count then
@@ -1750,6 +1756,7 @@ function RolePlugin.bind(Role) @@ -1750,6 +1756,7 @@ function RolePlugin.bind(Role)
1750 rechargeId = rechargeId, 1756 rechargeId = rechargeId,
1751 createTime = skynet.timex(), 1757 createTime = skynet.timex(),
1752 transactionId = transactionId, 1758 transactionId = transactionId,
  1759 + sid = role:getProperty("sid"),
1753 }) 1760 })
1754 order:create() 1761 order:create()
1755 -- 正在进行中的订单 缓存 1762 -- 正在进行中的订单 缓存
@@ -1780,6 +1787,7 @@ function RolePlugin.bind(Role) @@ -1780,6 +1787,7 @@ function RolePlugin.bind(Role)
1780 1787
1781 local rechargeId = orderObject:getProperty("rechargeId") 1788 local rechargeId = orderObject:getProperty("rechargeId")
1782 local dataSet = csvdb["shop_rechargeCsv"][rechargeId] 1789 local dataSet = csvdb["shop_rechargeCsv"][rechargeId]
  1790 + local sid = orderObject:getProperty("sid")
1783 1791
1784 if orderObject:getProperty("finishTime") > 0 then 1792 if orderObject:getProperty("finishTime") > 0 then
1785 skynet.error(string.format("[recharge] is a finish order cpOrder: %s, platformOrder : %s, hadPlatformOrder: %s, id: %s, overTime : %s", 1793 skynet.error(string.format("[recharge] is a finish order cpOrder: %s, platformOrder : %s, hadPlatformOrder: %s, id: %s, overTime : %s",
@@ -1817,7 +1825,7 @@ function RolePlugin.bind(Role) @@ -1817,7 +1825,7 @@ function RolePlugin.bind(Role)
1817 }) 1825 })
1818 end 1826 end
1819 1827
1820 - return true, rechargeId 1828 + return true, rechargeId, sid
1821 end 1829 end
1822 1830
1823 -- 充值 -- 1831 -- 充值 --
@@ -1835,7 +1843,7 @@ function RolePlugin.bind(Role) @@ -1835,7 +1843,7 @@ function RolePlugin.bind(Role)
1835 local roleId = self:getProperty("id") 1843 local roleId = self:getProperty("id")
1836 local partnerOrderStr = params.order 1844 local partnerOrderStr = params.order
1837 1845
1838 - local status, back = self:updatePurchaseOrder(partnerOrderStr, params.transactionId, "finsh") 1846 + local status, back, sid = self:updatePurchaseOrder(partnerOrderStr, params.transactionId, "finsh")
1839 if not status then 1847 if not status then
1840 if back == "finsh" then 1848 if back == "finsh" then
1841 -- 订单已经处理 1849 -- 订单已经处理
@@ -1857,6 +1865,7 @@ function RolePlugin.bind(Role) @@ -1857,6 +1865,7 @@ function RolePlugin.bind(Role)
1857 transactionId = params.transactionId, 1865 transactionId = params.transactionId,
1858 pay_time = params.pay_time, 1866 pay_time = params.pay_time,
1859 order = partnerOrderStr, 1867 order = partnerOrderStr,
  1868 + sid = sid,
1860 }) 1869 })
1861 1870
1862 if not status then 1871 if not status then
@@ -1893,7 +1902,7 @@ function RolePlugin.bind(Role) @@ -1893,7 +1902,7 @@ function RolePlugin.bind(Role)
1893 rechargeF[id] = 1 1902 rechargeF[id] = 1
1894 self:updateProperty({field = "rechargeF", value = rechargeF}) 1903 self:updateProperty({field = "rechargeF", value = rechargeF})
1895 end 1904 end
1896 - self:gainDiamond({count = diamondCount, isRecharge = true, log = {desc = "recharge", int1 = id}}) 1905 + self:gainDiamond({count = diamondCount, isRecharge = true, sid = params.sid, log = {desc = "recharge", int1 = id}})
1897 elseif rechargeData.shop == 2 then --通行证商店 1906 elseif rechargeData.shop == 2 then --通行证商店
1898 reward, _ = self:award(rechargeData.itemFirst, {isRecharge = true, log = {desc = "recharge", int1 = id}}) 1907 reward, _ = self:award(rechargeData.itemFirst, {isRecharge = true, log = {desc = "recharge", int1 = id}})
1899 self.storeData:onBuyCard(rechargeData.type, rechargeData.time, rechargeData.id, rechargeData.activity_id) 1908 self.storeData:onBuyCard(rechargeData.type, rechargeData.time, rechargeData.id, rechargeData.activity_id)