EcShop充值卡功能插件(1)

来源:互联网 发布:推广必备软件 编辑:程序博客网 时间:2024/04/25 17:04
由于插件语言包添加的时候按照ECSHOP潜规则,修改文件过多。不易在博客展示,所以我上传到服务器,

需要语言包的 留下邮箱。本人24小时内发送

下载完之后放在language下


今天的插件可能有点大,可能一天写不完!
首先我们来做准备工作:
首先在数据库建立礼品卡表名称:***_ks_cardcats


字段
cat_id  分类id    smallint(5)
cat_name    分类名称  varchar(90)
cat_mark    分类标识  varchar(20)
cat_desc    分类描述  varchar(255)
cat_sgn     选择量    smallint(5)


以UTF-8为例  写一段SQL语句创建表
CREATE TABLE `newguo`.`ecs_ks_cardcats` (
`cat_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`cat_name` VARCHAR( 90 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`cat_mark` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`cat_desc` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`cat_sgn` SMALLINT( 5 ) UNSIGNED NOT NULL
) ENGINE = MYISAM ;


礼品卡绑定商品数据表  ***_ks_cardgoods
字段
cg_id       id          smallint(5)
cg_catid    礼品卡分类  smallint(5)
cg_goodid   商品id      smallint(5)

SQL:
CREATE TABLE `newguo`.`ecs_ks_cardgoods` (
`cg_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`cg_catid` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`cg_goodid` SMALLINT( 5 ) UNSIGNED NOT NULL
) ENGINE = MYISAM ;

礼品卡数据库表名称:   ***_ks_cards
字段
card_id     礼品卡id           smallint(5)
card_type   礼品卡分类         smallint(5)
card_sn     礼品卡序号         varchar(20)
card_pwd    礼品卡密码         int(10)
add_time    创建时间           int(10)
used_time   使用时间           int(10)
order_id    订单id(未使用为0)  smallint(5)

SQL:
CREATE TABLE `newguo`.`ecs_ks_cards` (
`card_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`card_type` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`card_sn` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`card_pwd` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`add_time` INT( 10 ) UNSIGNED NOT NULL ,
`used_time` INT( 10 ) UNSIGNED NOT NULL ,
`order_id` SMALLINT( 5 ) UNSIGNED NOT NULL
) ENGINE = MYISAM ;

礼品卡订单数据表:   ***_ecs_ks_order
字段
order_id          订单id                      smallint(5)
order_sn          订单号                      varchar(20)
card_id           礼品卡id                      smallint(5)
order_goodcatid   礼品卡分类id                smallint(5)
order_user        联系人                      varchar(20)
order_address     订单地址                    varchar(255)
order_tel         联系电话                    varchar(60)
order_phone       移动电话                    varchar(60)
order_bak         特殊要求备注                varchar(255)
shipping_time     配送时间(全天,上午,下午)    varchar(20)
order_time        订单创建时间                int(10)
order_goods       选择的商品                  varchar(20)
order_status      订单状态                    tinyint(1)
ps: order_status 0正常 1确认 2配送 3完成

SQL:
CREATE TABLE `newguo`.`ecs_ks_order` (
`order_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`order_sn` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`card_id` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`order_goodcatid` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`order_user` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_address` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_tel` VARCHAR( 60 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_phone` VARCHAR( 60 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_bak` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`shipping_time` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_time` INT( 10 ) UNSIGNED NOT NULL ,
`order_goods` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_status` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'
) ENGINE = MYISAM ;

充值卡数据表:   ***_kt_bcards
字段
card_id     储值卡id        smallint(5)
card_sn     储值卡序号      int(10)
card_pwd    储值卡密码      int(10)
add_time    创建时间        int(10)
used_time   上次使用时间    int(10)
card_type   储值卡初始金额  decimal(10,2)
card_bonus  储值卡内余额    decimal(10,2)

SQL:
CREATE TABLE `newguo`.`ecs_kt_bcards` (
`card_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`card_sn` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`card_pwd` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`add_time` INT( 10 ) UNSIGNED NOT NULL ,
`used_time` INT( 10 ) UNSIGNED NOT NULL ,
`card_type` DECIMAL( 10, 2 ) NOT NULL DEFAULT '0.00',
`card_bonus` DECIMAL( 10, 2 ) NOT NULL DEFAULT '0.00'
) ENGINE = MYISAM ;

储值卡订单:   ***_kt_order
字段:
order_id       订单id                      smallint(5)
card_id        储值卡id                    smallint(5)
order_sn       订单号                      varchar(20)
order_fee      订单总价                    decimal(10,2)
order_exc      还需支付价格                decimal(10,2)   
order_clr      清空储值卡余额赠送礼品      decimal(10,2)       默认0 不赠送不清空
order_user     联系人                      varchar(20)
order_address  订单地址                    varchar(255)
order_tel      联系电话                    varchar(60)
order_phone    移动电话                    varchar(60)
order_bak      特殊要求备注                varchar(255)
shipping_time  配送时间(全天,上午,下午)    varchar(20)
order_time     订单创建时间                int(10)
order_goods    选择的商品                  varchar(255)
order_status   订单状态                    tinyint(1)
ps: order_status 0正常 1确认 2配送 3完成

SQL:
CREATE TABLE `newguo`.`ecs_kt_order` (
`order_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`card_id` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`order_sn` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_fee` DECIMAL( 10, 2 ) NOT NULL DEFAULT '0.00',
`order_exc` DECIMAL( 10, 2 ) NOT NULL DEFAULT '0.00',
`order_clr` DECIMAL( 10, 2 ) UNSIGNED NOT NULL DEFAULT '0.00',
`order_user` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_address` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_tel` VARCHAR( 60 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_phone` VARCHAR( 60 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_bak` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`shipping_time` VARCHAR( 20 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_time` INT( 10 ) UNSIGNED NOT NULL ,
`order_goods` VARCHAR( 255 ) CHARACTER SET utf8 COLLATE utf8_general_ci NOT NULL ,
`order_status` TINYINT( 1 ) UNSIGNED NOT NULL DEFAULT '0'
) ENGINE = MYISAM ;

储值卡绑定订单的商品数据表:   ***_kt_goods

字段:
bg_id        id         smallint(5)
bg_orderid   订单id     smallint(5)
bg_goodid    商品id     smallint(5)
bg_num       商品数量   smallint(5)

SQL:
CREATE TABLE `newguo`.`ecs_kt_goods` (
`bg_id` SMALLINT( 5 ) UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY ,
`bg_orderid` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`bg_goodid` SMALLINT( 5 ) UNSIGNED NOT NULL ,
`bg_num` SMALLINT( 5 ) UNSIGNED NOT NULL
) ENGINE = MYISAM ;

在后台还要加一些权限,目录
主要文件
inc_menu.php
inc_priv.php
priv_action.php

INSERT INTO `newguo`.`ecs_admin_action` (
`action_id` ,
`parent_id` ,
`action_code`
)
VALUES (
'136' , '0', 'card_and_card'
);

INSERT INTO `newguo`.`ecs_admin_action` (
`action_id` ,
`parent_id` ,
`action_code`
)
VALUES (
NULL , '136', 'ks_card_cat'
);

INSERT INTO `newguo`.`ecs_admin_action` (
`action_id` ,
`parent_id` ,
`action_code`
)
VALUES (
NULL , '136', 'ks_card_list'
);

INSERT INTO `newguo`.`ecs_admin_action` (
`action_id` ,
`parent_id` ,
`action_code`
)
VALUES (
NULL , '136', 'ks_card_order'
);

INSERT INTO `newguo`.`ecs_admin_action` (
`action_id` ,
`parent_id` ,
`action_code`
)
VALUES (
NULL , '136', 'kt_card_list'
);

INSERT INTO `newguo`.`ecs_admin_action` (
`action_id` ,
`parent_id` ,
`action_code`
)
VALUES (
NULL , '136', 'kt_card_order'
);

到现在位置  所有的准备工作都已经做完了,下一步就是页面布局,功能的实现了


修改后台目录
admin/includes/inc_menu.php

最下边添加
$modules['17_card_and_card']['ks_card_cat']               = 'ks_card.php?act=cat';
$modules['17_card_and_card']['ks_card_list']              = 'ks_card.php?act=list';
$modules['17_card_and_card']['ks_card_order']             = 'ks_card.php?act=order';
$modules['17_card_and_card']['kt_card_list']              = 'kt_card.php?act=list';
$modules['17_card_and_card']['kt_card_order']             = 'kt_card.php?act=order';


admin/includes/inc_priv.php
添加:

//礼品卡权限管理
$purview['ks_card_cat']             = 'card_and_card';
$purview['ks_card_list']            = 'card_and_card';
$purview['ks_card_order']           = 'card_and_card';
$purview['kt_card_list']            = 'card_and_card';
$purview['kt_card_order']           = 'card_and_card';