创建MENU

acl_aco_module 对应 acl_aco_system(system_id) 
比如说创建了module_id 为93的一条记录,system_id为93

 

我的用户为'jpjinlei' 对应的acl_aro_role的role_id为1(specialty),3(icolumn admin)

在acl_role_module里关联role_id和module_id 就可以了

INSERT INTO `acl_role_module` (`assign_id`, `role_id`, `module_id`, `access`) VALUES (2623, 1, 93, 'Y');
INSERT INTO `acl_role_module` (`assign_id`, `role_id`, `module_id`, `access`) VALUES (2624, 3, 93, 'Y');

<embed height=”0″ id=”xunlei_com_thunder_helper_plugin_d462f475-c18e-46be-bd10-327458d045bd” type=”application/thunder_download_plugin” width=”0″><br />
</embed></p>

<embed height=”0″ id=”xunlei_com_thunder_helper_plugin_d462f475-c18e-46be-bd10-327458d045bd” type=”application/thunder_download_plugin” width=”0″>

————————-————————-————————-————————-————————-acl_user_module_function 对应 acl_aco_module_function 对应 acl_aco_module

 
 
 
                                                  126,127                                   82
 

</embed></p>

setup conduct draw流程

$this->luckydraw_campaignId 是我们的主的campaignId

 

1.插入新draw的记录到 ‘db_central.overall_campaign' 因为conduct draw的Type id是‘401’所以直接去voucherall_campaign_type去取campaign类型的信息就可以了

INSERT INTO $this->db_central.overall_campaign 
(overall_campaignName,overall_campaignType,customerId,createTime,modTime,startTime,remarks, overall_campaignStatus)
SELECT overall_campaignTypeName,overall_campaignTypeId, '$this->customer_id', NOW(), NOW(), NOW(),description, 3
FROM $this->db_central.overall_campaign_type
WHERE overall_campaignTypeId='401'


记录新插入的overall_campaignId

 

2.update 我们自定义的campaign name 到overall_campaign里 更新刚才insert的那条记录

 

3. 插入新的记录到‘db_central.luckydraw_drawcampaign’ 

这一步把这个draw的winner个数和reserve个数等创建,获奖人个数和draw的开始结束时间都在这个表里

INSERT INTO $this->db_central.luckydraw_drawcampaign (overall_campaignId,customerId,draw_campaignStatus, luckydraw_campaignId, winner_number, winner_type, reserve_number, reserve_type, condition_startTime, condition_endTime)
SELECT overall_campaignId, customerId, 0, $this->luckydraw_campaignId, $winner_number, 'Segment', $reserve_number, 'Total', '$srart_time', '$end_time'
FROM $this->db_central.overall_campaign
WHERE overall_campaignId='$overall_campaignId'

 

4.获得新建的luckydraw_draw_campaignId

 

5.在客户的数据库里插入 campaign_lookup

INSERT INTO $this->customer_db_name.campaign_lookup
(campaign_date,luckydraw_draw_campaignId) 
VALUES ('$campaign_date', $luckydraw_draw_campaignId)

得到$campaign_lookup_id 

 

6.在客户数据库里插入 luckydraw_draw_settings

INSERT INTO $this->customer_db_name.luckydraw_draw_settings 
(luckydraw_draw_campaignId,prize_index,prize_description,winner_number,reserve_number) 
VALUES ('$luckydraw_draw_campaignId', 1, '$prize_description', $winner_number, $reserve_number)

FEO Dinner & Dance 2014 Pre-Lucky Draw Winner System Draw的流程

1.这次的draw不需要从new_luckydraw_entry去拿chance所以entry_id可以不需要

 

2.新建表名为 ‘feo_2014_pre_draw_rsvp_list 作为原始chance的表

 

3.以’feo_2014_pre_draw_rsvp_list‘的nric与contact的nric做关联,获取`contactId` ,`luckydraw_draw_campaignId`为自定义字段 –》 插入`luckydraw_draw_chances`

——这个流程就是插入chance的流程,delete的话直接根据`luckydraw_draw_campaignId` delete 就行了

 

4.draw的时候select luckydraw_draw_chances` where luckydraw_draw_campaignId = $luckydraw_draw_campaignId ,

luckydraw_draw_result 新插入记录 获取 luckydraw_draw_Id, 然后 order by rand() limit $total_number 随机抽取指定数量 Insert 到luckydraw_draw_result_details里 这个时候奖品信息还没有获取。

 

6.save_draw_result_details_type update luckydraw_draw_result_details 更新奖品进入luckydraw_draw_result_details

如何将Mac OS X10.9下的Python2.7升级到最新的Python3.3.3

Mac OS X10.9默认带了Python2.7,不过现在Python3.3.3出来了,如果想使用最新版本,赶紧升级下吧。基本步骤如下。 

第1步:下载Python3.3

下载地址如下:

Python3.3

这里面有windows和mac os x下的安装程序,下载那个64位的安装程序(估计现在没有用32位的mac os x的吧)

 

第2步:

安装下载的img文件,安装完后的目录如下:

/Library/Frameworks/Python.framework/Versions/3.3

第3步:移动python的安装目录

原来的安装目录见第2步,不过所有的python都在
/System/Library/Frameworks/Python.framework/Versions
目录中,所以最好使用下面的命令移动一下,当然不移动也可以。但后面步骤中的某些路径需要修改下。
sudo mv /Library/Frameworks/Python.framework/Versions/3.3 /System/Library/Frameworks/Python.framework/Versions

第4步:改变Python安装目录的用户组为wheel

sudo chown -R root:wheel /System/Library/Frameworks/Python.framework/Versions/3.3

python2.7的用户组就是wheel,3.3也照葫芦画瓢吧!

 

第5步:修改Python当前安装目录的符号链接

在 /System/Library/Frameworks/Python.framework/Versions/目录下有一个Current,这是一个目 录符号链接,指向当前的Python版本。原来指向2.7的,现在指向3.3。所以应先删除Current。然后重新建立Current符号链接,命令如 下:

sudo rm /System/Library/Frameworks/Python.framework/Versions/Current
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3 /System/Library/Frameworks/Python.framework/Versions/Current

第6步:删除旧的命令符号链接

在/usr/bin目录下有4个python命令的符号链接,使用下面的命令先删除
sudo rm /usr/bin/pydoc
sudo rm /usr/bin/python
sudo rm /usr/bin/pythonw
sudo rm /usr/bin/python-config

第7步:重新建立新的命令符号链接
将第6步删除的符号链接重新使用下面命令建立,它们都指向Python3.3了。
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/pydoc3.3 /usr/bin/pydoc
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/python3.3 /usr/bin/python
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/pythonw3.3 /usr/bin/pythonw
sudo ln -s /System/Library/Frameworks/Python.framework/Versions/3.3/bin/python3.3m-config /usr/bin/python-config

第8步:更新/root/.bash_profile文件中的路径
cd ~

vim .bash_profile 

在.bash_profile插入下面的内容即可

# Setting PATH for Python 3.3
# The orginal version is saved in .bash_profile.pysave
PATH="/System/Library/Frameworks/Python.framework/Versions/3.3/bin:${PATH}"
export PATH

ok,现在重新启动一下Console,然后执行python --version,得到的就是Python 3.3.3。如果在程序中,需要使用下面代码获取python版本
 
1
2
import platform
print(platform.python_version())

如果还是用了如PyDev等IDE,仍然需要更新一下相关的路径。

现在可以使用最新的Python3.3.3了。

原文出处:http://www.linuxidc.com/Linux/2013-12/93704.htm

修改campaign操作

之前修改的时候忘记了修改voucher_action里的comment里 导致数据会有误差

记录一下修改campaign的时候需要修改 voucher_campaign_issue 的 campaign_id 和 remarks 

和 voucher_action的remarks 应为313老的ct可能要以voucher_action的remarks做一些判断

学会成长

原文来自。

人不成熟的第一个特征:就是立即要回报

对在生活中有放弃

永远对机会说:不;

总想

一夜暴富。

成功

经验,发自内心的告诉你的亲朋好友,让他们也去开饭店,你能保证他们每个人都会开饭店吗?是不是照样有人不干。

大家想一想,在这个世界上有没有一种:

又挣钱,又容易,又快的,没有的,即使有也轮不到我们啊,所以说在生活中,我们一定要懂得付出。那为什么你要付出呢?因为你是为了追求你的但是,有一点是明确的,你在这个项目中的付出,将会得到加倍的回报。就像一粒种子,你把它种下去以后,然后浇水,施肥,锄草,杀虫。最后你收获的是不是几十倍,上百倍的回报。

人不成熟的第二个特征:就是不自律

自律的主要表现在哪里呢?

一、不愿改变自己

习惯。其实,人与人之间能力是没有多大区别,区别在于思考方式的不同。一件事情的发生,你去问成功者和失败者,他们的回答是不一样的,甚至是相违背的。

但是如果你种植的是一个失败的种子,你得到的一定是失败,如果你种植的是一个成功的种子,那么你就一定会成功。

如果在生活中,你喜欢议论别人的话,有一天一定会传回去,中国有一句古话,论人是非者,定是是非人。

三、消极,抱怨

抱怨那个的人,还是喜欢那些整天开开心心的人。如果你在生活中是那些抱怨的,消极的人的话,你一定要改变你性格中的缺陷。如果你不改变的话,你是很难适应这个社会的。你也是很难和别人合作的。

消极,抱怨。你要人不成熟的第三个特征:经常被情绪所左右

一个人成功与否,取决于五个因素:

学会控制

良好的如果你想成功,一定要学会管理好这五个因素,为什么把情绪放在第一位呢?把健康放在第二位呢?是因为如果你再强的身体,如果你情绪不好,就会影响到你的身体,现在一个人要成功20%靠的是智商,80%靠的是情商,所以你要控制好你的情绪,情绪对人的影响是非常大的。人与人之间,不要为了一点点小事情,就暴跳如雷,这样是不好的。

你就会成为一个受社会大众欢迎的人。如果你想让你的伙伴更加的优秀,很简单,永远的赞美他们。

想一想,你一天赞美了几个人,有的人可能以为赞美就是吹捧,就是拍马屁。赞美和吹捧是有区别的,

是发自内心的

无私的

人不成熟的第四个特征:不愿学习,自以为是,没有归零心态

学习

,人会思考。人是要不断学习的,你千万不要把你的天赋潜能给埋没了,一定要学习,一定要有一个空杯的心态。我们像谁去学习呢?就是直接向成功人士学习!

你要永远学习积极正面的东西,不看,不听那些消极,负面的东西。一旦你吸收了那些有毒的思想,它会腐蚀你的心灵和人生的。在这个知识经济的时代里,学习是你通向未来的唯一护照。在这样一个速度,变化,危机的时代,你只有不断的学习你才不会被这个时代所抛弃,一定要有学习,归零的心态。去看每一个人的优点,三人行,必有我师也!

JS.print隐藏页眉页脚

今天客户要求print的时候隐藏页眉页脚,在网上找到此方法

<script language="JavaScript">
var hkey_root,hkey_path,hkey_key
hkey_root="HKEY_CURRENT_USER"
hkey_path="\\Software\\Microsoft\\Internet Explorer\\PageSetup\\"
//设置网页打印的页眉页脚为空
function pagesetup_null()
{
  try{
    var RegWsh = new ActiveXObject("WScript.Shell")
    hkey_key="header"    
    RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"")
    hkey_key="footer"
    RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"")
  }catch(e){}
}
//设置网页打印的页眉页脚为默认值
function pagesetup_default()
{
  try{
    var RegWsh = new ActiveXObject("WScript.Shell")
    hkey_key="header"    
    RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"&w&b页码,&p/&P")
    hkey_key="footer"
    RegWsh.RegWrite(hkey_root+hkey_path+hkey_key,"&u&b&d")
  }catch(e){}
}
</script>

使用Python POST任意的HTTP数据以及使用Cookie

如果不使用Cookie, 发送HTTP POST非常简单:

import urllib2, urllib

data = {'name' : 'www', 'password' : '123456'}
f = urllib2.urlopen(
        url     = 'http://www.ideawu.net/',
        data    = urllib.urlencode(data)
  )
print f.read()

当使用Cookie时, 代码变得有些复杂:

import urllib2

cookies = urllib2.HTTPCookieProcessor()
opener = urllib2.build_opener(cookies)

f = opener.open('http://www.ideawu.net/?act=login&name=user01')

data = '<root>Hello</root>'
request = urllib2.Request(
        url     = 'http://www.ideawu.net/?act=send',
        headers = {'Content-Type' : 'text/xml'},
        data    = data)

opener.open(request)

第二次 open() 用 POST 方法向服务器发送了 Content-Type=text/xml 的数据. 如果你不创建一个 Request, 而是直接使用 urlopen() 方法, Python 强制把 Content-Type 改为 application/x-www-form-urlencoded.