zoukankan      html  css  js  c++  java
  • 商品的会员价格

    商品的会员价格

     

    需求:

    1. 会员级别管理【级别名称、积分下限、积分上限】 ,比如:有注册会员、中级会员、高级会员

    实际操作:

    1. 建表

     

     

    drop table if exists p40_member_level;
    create table p40_member_level
    (
    id mediumint unsigned not null auto_increment comment 'Id',
    level_name varchar(30) not null comment '级别名称',
    jifen_bottom mediumint unsigned not null comment '积分下限',
    jifen_top mediumint unsigned not null comment '积分上限',
    primary key (id)
    )engine=InnoDB default charset=utf8 comment '会员级别';

     

     

    drop table if exists p40_member_price;
    create table p40_member_price
    (
    price decimal(10,2) not null comment '会员价格',
    level_id mediumint unsigned not null comment '级别Id',
    goods_id mediumint unsigned not null comment '商品Id',
    key level_id(level_id),
    key goods_id(goods_id)
    )engine=InnoDB default charset=utf8 comment '会员价格';

    导入 

     Gii生成代码

    1. 在添加商品时可以设置每个级别的价格:

    3.1 在添加商品的表单中列出所有的会员级别

    修改商品控制器

       

    //取出所有的品牌
    $brandModel=D('brand');
    $brandData=$brandModel->select();

    //取出所有的会员级别
    $mlModel=D('member_level');
    $mlData= $mlModel->select();
    // 设置页面信息
    $this->assign(array(
    'mlData'=>$mlData,

    'brandData'=> $brandData,
    '_page_title' => '添加新商品',
    '_page_btn_name' => '商品列表',
    '_page_btn_link' => U('lst'),
    ));

    在表单循环输出:

        

    <tr>
    <td class="label">会员价格:</td>
    <td>
    <?php foreach($mlData as $k=>$v): ?>
    <?php echo $v['level_name'] ;?> ¥<input type="text" name="member_price[]" value="" size="8"/><br>
    <?php endforeach; ?>
    </td>
    </tr>

    1. 提交表单时,把会员价格保存到 会员价格表

    现在要考虑的就是写代码把这个数组的数据插入到 【注意:四个价格就插入四条记录】:

        

    发现这个表还需要level_id,但表单中没有,所以修改一下表单:

     

    <td class="label">会员价格:</td>
    <td>
    <?php foreach($mlData as $k=>$v): ?>
    <?php echo $v['level_name'] ;?> ¥<input type="text" name="member_price[<?php echo $v['id'] ;?>]" value="" size="8"/><br>
    <?php endforeach; ?>
    </td>
    </tr>

     

    还需要一个商品ID,当这个商品插入到 数据库中之后就有商品ID了,所以代码应该写在插入之后:

    修改商品模型 :

       

    //商品添加之后会调用这个方法,其中$data['id']就是 新添加商品的ID
    protected function _after_insert($data, $option)
    {

    $mp=I('post.member_price');
    $mpModel=D('member_price');
    foreach($mp as $k=>$v)
    {
    $_v=(float)$v;
    if($_v > 0)
    {
    $mpModel->add(array(
    'price'=>$_v,
    'level_id'=>$k,
    'goods_id'=>$data['id'],

    ));
    }
    }

    }

     

    世上无难事,只怕有心人......
  • 相关阅读:
    拓端数据|R语言乘法GARCH模型对高频交易数据进行波动性预测
    拓端数据|Python中用Prophet模型对天气时间序列进行预测与异常检测
    拓端数据|R语言:状态空间模型和卡尔曼滤波预测酒精死亡人数时间序列
    拓端数据|R语言用LOESS(局部加权回归)季节趋势分解(STL)进行时间序列异常检测
    拓端数据|数据挖掘:香水电商销售策略分析
    UOJ#523. 【美团杯2020】半前缀计数 后缀自动机
    LuoguP6688 可重集 线段树+hash
    LuoguP6687 论如何玩转 Excel 表格 树状数组
    LOJ#2303. 「NOI2017」蚯蚓排队 hash+链表
    LOJ#6289. 花朵 树链剖分+分治NTT
  • 原文地址:https://www.cnblogs.com/gooderic/p/5683046.html
Copyright © 2011-2022 走看看