业务(一)贷款产品管理

一、贷款产品管理,贷款标签管理,办卡产品管理

cfg_product_v3产品表

cfg_url_v3链接表

a.每个产品可能有多个链接;

b.每个链接可能有多个展示渠道,展示渠道还可以选择是否默认,存成如下字符串格式,其中id是渠道id

$default_channel = [{"id":1,"is_default":1},{"id":47,"is_default":0}];

cfg_channel_v3渠道表

cfg_label_v3营销标签表

cfg_label_product_link_v3每个产品可以关联多个营销标签

cfg_product_price_v3产品价格配置表,每个产品可能有多个价格配置

a、price存成了如下格式,ladder有阶梯制概念

$price1 = [{"price":20,"ladder":0},{"price":20,"ladder":3},{"price":3,"ladder":4}];
$price2 = [{"price":15,"ladder":"0"}];

sys_bank_card_v3办卡产品管理表

channel字段存储json字符串,主要channelNumber里键名对应展示渠道名称,键值对应权重

二、操作日志

cfg_operation_log_v3操作日志表

CREATE TABLE `cfg_operation_log_v3` (
  `id` int(11) NOT NULL AUTO_INCREMENT,
  `operator_id` int(11) NOT NULL DEFAULT '0' COMMENT '操作人id',
  `operator_name` varchar(16) NOT NULL DEFAULT '' COMMENT '操作人名字',
  `operation_target_type` tinyint(1) NOT NULL DEFAULT '0' COMMENT '操作的目标  1 贷款产品  2 贷款链接 
3 贷款产品关联的标签 4 弹窗管理 5 banner管理 6 公告管理 7 频道管理 8 产品列表管理 9 产品价格配置',
  `target_id` int(11) NOT NULL DEFAULT '0' COMMENT '操作目标的id',
  `product_id` int(11) NOT NULL DEFAULT '0' COMMENT '最后关联的产品id',
  `target_name` varchar(20) NOT NULL DEFAULT '' COMMENT '操作目标的名称',
  `save_content` text NOT NULL COMMENT '从前端传过来的json字符串',
  `type` char(5) NOT NULL DEFAULT '0' COMMENT "操作类型,包括 '标签设置','新增','修改','删除','价格配置'"
  `field` varchar(20) NOT NULL DEFAULT '' COMMENT '修改的字段',
  `field_before` varchar(50) NOT NULL DEFAULT '' COMMENT '被修改字段修改前内容',
  `field_after` varchar(50) NOT NULL DEFAULT '' COMMENT '被修改字段修改后内容',
  `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间',
  `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP 
COMMENT '更新时间',
  PRIMARY KEY (`id`) USING BTREE,
  KEY `index_targettype_productid` (`operation_target_type`,`product_id`) USING BTREE,
  KEY `create_time` (`create_time`) USING BTREE
) ENGINE=InnoDB AUTO_INCREMENT=828 DEFAULT CHARSET=utf8 ROW_FORMAT=COMPACT COMMENT='操作日志表';

1、新增产品时,会有新增记录、标签设置、url新增(此时target_id对应的id)、价格配置的记录

2、列表页(或编辑页)更改上下架状态或更改权重时

注:下架某个产品时判断该产品下的链接是否有被某些资源位使用

3、不管有没有更改,只要编辑提交,都会产生三条记录(感觉不完美);

      而新增或删除价格模板时,产生价格配置的记录类似这里的记录

4、编辑页新增或删除链接时

5、编辑页修改链接上下架状态、修改链接展示渠道和渠道默认链接时

三、渠道配置 

cfg_channel_onoff_log_v3 渠道操作日志记录表

a、渠道新增时日志记录,主要记录is_create = 1;

      如果新增时下架状态,记录'is_create_off' = 1

b、上下架状态改变的日志记录

四、前期收获

1、$set = elements( array_intersect(Cfg_Channel_V3::get_fields() , array_keys($this->input_params) ),$this->input_params );

防止用户发送额外数据写入数据库

2、新增,编辑,下架,写到一个方法里,新增与编辑通过是否有id区分;

关联产品的添加和删除,将数据加到product_list参数里,有该参数时,先删除 cfg_label_product_link_v3 表中该标签id的关联数据,再批量添加入库。

3、 

//join后面还可以加where条件
$v['product_list'] = get_read_db()->from(Cfg_Label_Product_Link_V3::$table_name.' as a')
    ->select('b.id,b.product_name')
    ->order_by('b.id desc')
    ->join(Cfg_Product_V3::$table_name.' as b', 'a.product_id=b.id', 'left join')->where($linkWhere)->get()->result_array();
//添加新的关联产品时排除这些已有的产品id
$v['eliminate'] = array_column($v['product_list'], 'id');
$v['product_num'] = count($v['eliminate']);
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值