Blame view

src/models/Email.lua 2.71 KB
dc9d814f   zhouhaihai   邮件
1
2
3
4
5
6
7
8
9
10
11
  local Email = class("Email", require("shared.ModelBase"))
  
  function Email:ctor(properties)
  	Email.super.ctor(self, properties)
  end
  
  Email.schema = {
      key     	= {"string"}, 	-- redis key
      id 			= {"number", 0},	-- 数据库ID
      emailId		= {"number", 0},	-- 邮件csv ID
      title 		= {"string", ""},	-- 邮件标题
eb4b0152   zhouhaihai   邮件增加 stitle
12
      stitle		= {"string", ""}, 	-- 小标题
dc9d814f   zhouhaihai   邮件
13
14
15
16
17
18
19
20
      content 	= {"string", ""},	-- 邮件正文
      attachments	= {"string", ""},
      status		= {"number", 0},	-- 邮件状态: 未读, 已读, 已领取
      createtime	= {"number", skynet.timex()},
      contentPms	= {"table", {}},
      rewardPms	= {"table", {}},
  }
  
39bcd7ca   zhouhaihai   LOG
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
  function Email:log(role, action)
  	role:log("onMail", {
  		mail_action_type = action, -- 操作(1=收,2=领,3=删)
  		mail_receivetime = self:getProperty("createtime"), -- 收件时间
  		mail_textid = self:getProperty("emailId"), -- 邮件文本ID
  		mial_title = self:getProperty("title"), -- 邮件标题参数
  		mail_content = json.encode(self:getProperty("contentPms")), -- 邮件内容参数
  		mail_attach = self:getProperty("attachments"), -- 邮件附件
  		mail_reason = self:getProperty("stitle"), -- 原因
  		mail_readstatus = self:getProperty("status") >= 1 and 1 or 0, -- 邮件读取状态
  		mail_attachstatus = self:getProperty("status") >= 2 and 1 or 0, -- 邮件附件状态
  		mail_timeout = 0, -- 邮件超时时间
  		mail_friend_id = 0, -- 收件方账号id
  		mail_friend_roleid = 0, -- 收件方角色id
  	})
  end
  
dc9d814f   zhouhaihai   邮件
38
39
40
  function Email:data()
  	local emailId = self:getProperty("emailId")
  	local title = self:getProperty("title")
eb4b0152   zhouhaihai   邮件增加 stitle
41
  	local stitle = self:getProperty("stitle")
dc9d814f   zhouhaihai   邮件
42
43
44
45
46
47
48
49
50
  	local content = self:getProperty("content")
  	local attachments = self:getProperty("attachments")
  	local contentPms = self:getProperty("contentPms")
  	local rewardPms = self:getProperty("rewardPms")
  
  	local emailData = csvdb["emailCsv"][emailId]
  
  	if emailData then
  		-- 如果内容是直接插入到数据库
847f9a7b   liuzujun   兑换活动,邮件内容修改
51
52
53
54
  		--if content == "" and emailData.body ~= "" then
  		--	content = io.readfile("src/" .. emailData.body) or ""
  		--	content = content:format(table.unpack(contentPms))
  		--end
dc9d814f   zhouhaihai   邮件
55
56
57
58
  
  		if title == "" and emailData.title ~= "" then
  			title = emailData.title
  		end
eb4b0152   zhouhaihai   邮件增加 stitle
59
60
61
62
  		
  		if stitle == "" and emailData.subtitle ~= "" then
  			stitle = emailData.subtitle
  		end
dc9d814f   zhouhaihai   邮件
63
64
  
  		if attachments == "" and emailData.attachment ~= "" then
e1b5f6ec   zhouhaihai   邮件
65
66
67
68
69
  			if next(rewardPms) then
  				attachments = emailData.attachment:format(table.unpack(rewardPms))
  			else
  				attachments = emailData.attachment
  			end
dc9d814f   zhouhaihai   邮件
70
71
72
73
  		end
  	end
  
  	return {
847f9a7b   liuzujun   兑换活动,邮件内容修改
74
  		cfgId = emailId,
dc9d814f   zhouhaihai   邮件
75
76
77
78
  		id = self:getProperty("id"),
  		status = self:getProperty("status"),
  		createtime = self:getProperty("createtime"),
  		title = title,
eb4b0152   zhouhaihai   邮件增加 stitle
79
  		stitle = stitle,
dc9d814f   zhouhaihai   邮件
80
  		content = content,
847f9a7b   liuzujun   兑换活动,邮件内容修改
81
  		contentPms = contentPms,
dc9d814f   zhouhaihai   邮件
82
83
84
85
86
  		attachments = attachments,
  	}
  end
  
  return Email