Blame view

src/models/Email.lua 2.97 KB
2ca93972   liuzujun   添加邮件表
1
  local Email = class("Email", require("shared.ModelBaseMysql"))
dc9d814f   zhouhaihai   邮件
2
3
4
5
6
7
  
  function Email:ctor(properties)
  	Email.super.ctor(self, properties)
  end
  
  Email.schema = {
2ca93972   liuzujun   添加邮件表
8
9
      id 			= {"number", 0, "pri_auto"},	-- 数据库ID
      roleId		= {"number", 0, "index"},	-- 角色 ID
dc9d814f   zhouhaihai   邮件
10
11
      emailId		= {"number", 0},	-- 邮件csv ID
      title 		= {"string", ""},	-- 邮件标题
eb4b0152   zhouhaihai   邮件增加 stitle
12
      stitle		= {"string", ""}, 	-- 小标题
dc9d814f   zhouhaihai   邮件
13
      content 	= {"string", ""},	-- 邮件正文
2ca93972   liuzujun   添加邮件表
14
      attachments	= {"string", "", 512},
dc9d814f   zhouhaihai   邮件
15
16
17
18
19
20
      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
  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
  	})
e84a1beb   liuzujun   gm后台查询日志,公告相关协议
36
37
  	role:mylog("mail_action", {desc = "onMail", int1 = self:getProperty("id"), int2 = self:getProperty("status"), cint1 = self:getProperty("emailId"), 
      short1 = action, key1=self:getProperty("title"), key2=self:getProperty("attachments")})
39bcd7ca   zhouhaihai   LOG
38
39
  end
  
dc9d814f   zhouhaihai   邮件
40
41
42
  function Email:data()
  	local emailId = self:getProperty("emailId")
  	local title = self:getProperty("title")
eb4b0152   zhouhaihai   邮件增加 stitle
43
  	local stitle = self:getProperty("stitle")
dc9d814f   zhouhaihai   邮件
44
45
46
47
48
49
50
51
52
  	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   兑换活动,邮件内容修改
53
54
55
56
  		--if content == "" and emailData.body ~= "" then
  		--	content = io.readfile("src/" .. emailData.body) or ""
  		--	content = content:format(table.unpack(contentPms))
  		--end
dc9d814f   zhouhaihai   邮件
57
58
59
60
  
  		if title == "" and emailData.title ~= "" then
  			title = emailData.title
  		end
eb4b0152   zhouhaihai   邮件增加 stitle
61
62
63
64
  		
  		if stitle == "" and emailData.subtitle ~= "" then
  			stitle = emailData.subtitle
  		end
dc9d814f   zhouhaihai   邮件
65
66
  
  		if attachments == "" and emailData.attachment ~= "" then
e1b5f6ec   zhouhaihai   邮件
67
68
69
70
71
  			if next(rewardPms) then
  				attachments = emailData.attachment:format(table.unpack(rewardPms))
  			else
  				attachments = emailData.attachment
  			end
dc9d814f   zhouhaihai   邮件
72
73
74
75
  		end
  	end
  
  	return {
847f9a7b   liuzujun   兑换活动,邮件内容修改
76
  		cfgId = emailId,
dc9d814f   zhouhaihai   邮件
77
78
79
80
  		id = self:getProperty("id"),
  		status = self:getProperty("status"),
  		createtime = self:getProperty("createtime"),
  		title = title,
eb4b0152   zhouhaihai   邮件增加 stitle
81
  		stitle = stitle,
dc9d814f   zhouhaihai   邮件
82
  		content = content,
847f9a7b   liuzujun   兑换活动,邮件内容修改
83
  		contentPms = contentPms,
dc9d814f   zhouhaihai   邮件
84
85
86
87
88
  		attachments = attachments,
  	}
  end
  
  return Email