| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356 | <?php# 定义几个常用的选项$type = array(	1 => '未领取',	2 => '已领取',	3 => '已使用',	4 => '已作废',);$status = array(	1 => '不可用',	2 => '可用',);$product = Dever::load('journal/api.data');$seller = function(){	return Dever::db('code/seller')->state();};# 获取小刊分类权限$auth = Dever::tops();$cate = function() use ($auth){    $array = array();    if ($auth) {        $info = Dever::db('journal/cate')->getIds(array('ids' => $auth));    } else {        $info = Dever::db('journal/cate')->state();    }    if($info)    {        $array += $info;    }    return $array;};$name = 'info';$create = Dever::config('database')->create;$data = Dever::input('search_linkage_product');if (isset($data[1])) {	$product_id = $data[1];} else {	$product_id = Dever::input('set_product_id');}if ($product_id && $product_id > 0) {	$name .= '_' . $product_id;	$create = false;}return array(	# 表名	'name' => $name,	# 显示给用户看的名称	'lang' => '兑换码列表',	'menu' => 'journal',	'order' => 1,	'create' => $create,	'auto' => 10000000,	# 数据结构	'struct' => array	(			'id' 		=> array		(			'type' 		=> 'int-11',			'name' 		=> 'ID',			'default' 	=> '',			'desc' 		=> '',			'match' 	=> 'is_numeric',			'search'	=> 'order',			'order'		=> 'desc',			//'list'		=> true,		),		'create_uid'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '创建人',			'default' 	=> '-1',			'desc' 		=> '创建人',			'match' 	=> 'is_numeric',			'search'    => array            (                'api' => 'passport/user-all',                'col' => 'username',                'result' => 'id',            ),			//'list'		=> 'Dever::load("code/lib/manage.showUserInfo", "{uid}", "{ldate}")',		),		'product'     => array        (            'name'      => '小刊',            'default'   => '',            'desc'      => '小刊',            'search'	=> 'linkage',            'search_col' => 'cate_id,product_id',			'option'	=> Dever::url('lib/manage.search_cate_journal', 'journal'),        ),		'cate_id'       => array        (            'type'      => 'int-11',            'name'      => '小刊分类',            'default'   => '1',            'desc'      => '小刊分类',            'match'     => 'is_numeric',            'update'    => 'select',            'option'    => $cate,            //'search'    => 'select',            'list'      => true,        ),		'product_id'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '小刊',			'default' 	=> '',			'desc' 		=> '小刊',			'match' 	=> 'is_numeric',			'update'	=> 'select',			'option'	=> $product,			//'search'	=> 'select',			'list'		=> '{product_id} > 0 ? Dever::load("journal/info-one#name", {product_id}) : "通用"',		),		'code'		=> array		(			'type' 		=> 'varchar-32',			'name' 		=> '兑换码',			'default' 	=> '',			'desc' 		=> '兑换码',			'match' 	=> 'is_string',			'update'	=> 'text',			'search'	=> 'fulltext',			'list'		=> 'Dever::load("code/lib/manage.showCode", "{id}")',			//'list'		=> true,		),		'score'         => array        (            'type'      => 'varchar-80',            'name'      => '增加积分数-直接填写积分数,设置之后,积分规则里的设置及小刊兑换码中的设置将失效,当设置为0时,直接使用积分规则中的设置。当设置为-1时,不增加积分数',            'default'   => '',            'desc'      => '增加积分数',            'match'     => 'is_string',            //'update'    => 'text',        ),		'product_num'      => array        (            'type'      => 'int-11',            'name'      => '兑换本数',            'default'   => '0',            'desc'      => '兑换本数',            'match'     => 'option',            'update'    => 'text',            'search'    => 'fulltext',            'list'      => true,        ),		'type'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '使用状态',			'default' 	=> '1',			'desc' 		=> '使用状态',			'match' 	=> 'is_numeric',			'option' 	=> $type,			'search'	=> 'select',			'update'	=> 'select',			'list'		=> true,			'mul'		=> array(1 => '恢复使用', 4 => '已作废'),		),		'seller_id'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '销售商',			'default' 	=> '1',			'desc' 		=> '销售商',			'match' 	=> 'is_numeric',			'update'	=> 'select',			'option'	=> $seller,			'search'	=> 'select',			'list'		=> true,		),		'uid'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '用户信息',			'default' 	=> '0',			'desc' 		=> '用户信息',			'match' 	=> 'is_numeric',			'list'		=> 'Dever::load("code/lib/manage.showUserInfo", "{create_uid}", "{uid}", "{ldate}")',		),		'order_id'      => array        (            'type'      => 'varchar-100',            'name'      => '付款订单id',            'default'   => '',            'desc'      => '付款订单id',            'match'     => 'is_string',            'update'    => 'text',            'search'	=> 'fulltext',            'list'        => true,            //'list'        => '"{order_id}" ? "{order_id}" : "{code}"',        ), 		'state'		=> array		(			'type' 		=> 'tinyint-1',			'name' 		=> '状态',			'default' 	=> '1',			'desc' 		=> '请选择状态',			'match' 	=> 'is_numeric',		),		'ldate'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '领取时间',			'match' 	=> 'option',			'default' 	=> '',			'desc' 		=> '',			//'search'	=> 'date',		),				'cdate'		=> array		(			'type' 		=> 'int-11',			'name' 		=> '生成时间',			'match' 	=> array('is_numeric', time()),			'desc' 		=> '',			# 只有insert时才生效			'insert'	=> true,			'search'	=> 'date',			'list'		=> 'date("Y-m-d H:i:s", {cdate})',		),	),	//'top' => Dever::config('base')->top,    # 增加这个,为了给当前的list增加一个option    'top_option' => array    (        'value' => $auth,        'col' => 'cate_id',    ),    # 更新表结构	'alter' => array	(		2 => array		(			array('update', 'product_num', 'product_num', 'varchar-32 0 兑换本数'),			//array('add', 'config', 'config', 'int-11 1 配置'),		),		'version' => 2,	),	# 索引	'index' => array	(		4 => array		(			'order_id' => 'order_id',		),				# 版本号 更改版本号会更新当前表的索引		'version' => 4,	),	'manage' => array	(		'excel'	=> true,		'delete' => false,		'edit' => false,		'insert' => false,		'mul' => '{type} == 1 || {type} == 4',		# 自定义快捷新增和编辑        'button' => array        (            '新增兑换码' => array('fast', 1, 'config&where_id=1'),            '销售商列表' => array('list', 'seller&project=code&oper_parent=info&oper_project=code'),            '新增销售商' => array('fast', 1, 'seller'),        ),        'list_button' => array		(			'oper' => array('作废', 'code/lib/manage.drop?id={id}&journal_id={product_id}&code={code}', '{type} == 1'),			'oper2' => array('恢复使用', 'code/lib/manage.recovery?id={id}&journal_id={product_id}&code={code}', '{type} == 4'),		),	),	'request' => array    (        'getAll' => array        (            # 匹配的正则或函数 选填项            'option' => array            (                'cate_id' => 'yes',                'create_uid' => 'yes',                'order_id' => 'yes',                'type' => array('yes', '!='),                'state' => 1,            ),            'type' => 'all',            'order' => array('type' => 'asc', 'id' => 'desc'),            'page' => array(30, 'list'),            'col' => '*',        ),        'getMyAll' => array        (            # 匹配的正则或函数 选填项            'option' => array            (                'order_id' => 'yes',                'create_uid' => 'yes',                'type' => array('yes', '!='),                'state' => 1,            ),            'type' => 'all',            'order' => array('type' => 'asc', 'id' => 'desc'),            'page' => array(10, 'list'),            'col' => 'id,code,type,create_uid',        ),        'getData' => array        (            # 匹配的正则或函数 选填项            'option' => array            (                'order_id' => 'yes',                'type' => array('yes', '!='),                'state' => 1,            ),            'type' => 'all',            'order' => array('type' => 'asc', 'id' => 'desc'),            'col' => '*',        ),    ));
 |