苹果cms教程

苹果CMS V10用户下载记录页面模板制作与功能开发教程

发布时间:2025-03-23共11人阅读

一、用户下载记录模板概述

苹果CMS V10 用户中心的下载历史记录由专属模板文件承载,文件路径为 html/user/downs.html。该页面用于展示用户所有历史下载行为数据,包含下载内容名称、分类、消费积分、资源编号等信息,同时集成重新下载、单条删除、批量删除、一键清空记录等实用功能,是用户中心核心功能页面之一。

页面所有下载数据统一存放于系统 $list 数组中,通过官方 volist 标签循环遍历渲染列表内容。

二、基础数据遍历语法

下载记录依托系统固定数据结构实现循环输出,基础遍历代码简洁高效,可快速调取记录核心标识数据。

{volist name="list"}
    {$vo.ulog_id}
    {$vo.ulog_points}
{/volist}

循环内 $vo 变量代表单条下载记录对象,可延伸调用各类详情字段,适配页面多样化展示需求。

三、下载记录页面完整源码

以下为可直接部署使用的完整版下载记录模板代码,采用表格规整布局,整合数据展示、重新下载、多选删除、批量清空全套功能。

<table width="770" border="0" cellspacing="1" cellpadding="0" class="table">
    <tr>
        <td width="66" height="36" align="center" valign="middle" bgcolor="#f7f7f7">选择</td>
        <td width="80" align="center" valign="middle" bgcolor="#f7f7f7">编号</td>
        <td width="317" align="center" valign="middle" bgcolor="#f7f7f7">名称</td>
        <td width="120" align="center" valign="middle" bgcolor="#f7f7f7">进度</td>
        <td width="100" align="center" valign="middle" bgcolor="#f7f7f7">消费积分</td>
        <td width="80" align="center" valign="middle" bgcolor="#f7f7f7">操作</td>
    </tr>
    <form name="form1" method="post">
        {volist name="list"}
        <tr>
            <td height="36" align="center" valign="middle" bgcolor="#FFFFFF"><input name="ids[]" type="checkbox" value="{$vo.ulog_id}"></td>
            <td align="center" valign="middle" bgcolor="#FFFFFF">{$vo.ulog_id}</td>
            <td align="left" valign="middle" bgcolor="#FFFFFF" class="pad">[{$vo.data.type.type_name}] {$vo.data.name} [{$vo.ulog_rid}-{$vo.ulog_sid}-{$vo.ulog_nid}]</td>
            <td align="center" valign="middle" bgcolor="#FFFFFF"><a href="{$vo.data.link}" class="fen">重新下载</a></td>
            <td align="center" valign="middle" bgcolor="#FFFFFF">{$vo.ulog_points}</td>
            <td align="center" valign="middle" bgcolor="#FFFFFF"><a href="" class="delete">删除</a></td>
        </tr>
        {/volist}
    </form>
</table>
<!-- 删除记录脚本 -->
<script>
	function delData(ids,all){
		var msg ='删除';
		if(all==1){
			msg='清空';
		}
		if(confirm('确定要'+msg+'记录吗')){
			$.post("{:url('user/ulog_del')}",{ids:ids,type:5,all:all},function(data) {
				if (data.code == '1') {
					alert('删除成功');
					location.reload();
				}else {
					alert('删除失败:' + data.msg);
				}
			}, 'json')
		}
	}
	$("#btnClear").click(function(){
		delData('',1);
	});
	$("#btnDel").click(function(){
		var ids = MAC.CheckBox.Ids('ids[]');
		if(ids==''){
			alert("请至少选择一个数据");
			return;
		}
		delData(ids,0);
	});
</script>

四、下载记录核心字段功能详解

模板所有下载数据均通过 $vo 及其附属 $vo.data 对象调取,各字段用途固定、适配系统原生数据结构,核心字段说明如下:

字段名称具体作用
$vo.ulog_id单条下载记录唯一编号,用于数据标识、多选删除参数传递
$vo.data.type.type_name调取下载资源对应的分类名称,完善内容信息展示
$vo.data.name展示用户下载的资源标题名称
$vo.ulog_rid下载记录关联的资源唯一ID
$vo.ulog_sid对应资源的下载/播放线路编号
$vo.ulog_nid资源下载节点编号
$vo.data.link生成历史资源的重新下载链接
$vo.ulog_points展示本次下载消耗的用户积分数量

五、重新下载功能实现

页面内置重新下载功能,依托资源原始链接实现二次下载跳转,无需用户重新搜索资源。核心调用代码如下:

<a href="{$vo.data.link}" class="fen">重新下载</a>

该功能自动绑定当前下载记录对应的资源地址,需注意若站点资源删除、链接失效或配置变更,重新下载功能将无法正常使用。

六、下载记录删除功能原理

1. 核心删除接口

所有下载记录的删除、清空操作,统一调用系统专属接口,通过 type:5 参数精准匹配下载记录数据类型,避免误操作其他用户日志。

{:url('user/ulog_del')}

2. 单条与批量删除

页面通过复选框收集多条记录ID,借助系统 MAC.CheckBox.Ids 方法批量获取选中数据,搭配空值校验,规避无效操作。参数 all:0 代表仅删除指定记录。

$("#btnDel").click(function(){
    var ids = MAC.CheckBox.Ids('ids[]');
    if(ids==''){
        alert("请至少选择一个数据");
        return;
    }
    delData(ids,0);
});

3. 一键清空全部记录

清空功能通过修改请求参数 all:1 实现,自动切换操作提示文案,支持一次性清除用户所有下载记录。

$("#btnClear").click(function(){
    delData('',1);
});

4. 删除核心函数

统一封装删除逻辑,通过AJAX异步提交请求,根据后端返回状态弹窗提示操作结果,并自动刷新页面同步最新数据。

function delData(ids,all){
    var msg ='删除';
    if(all==1){
        msg='清空';
    }
    if(confirm('确定要'+msg+'记录吗')){
        $.post("{:url('user/ulog_del')}",{
            ids:ids,
            type:5,
            all:all
        },function(data) {
            if (data.code == '1') {
                alert('删除成功');
                location.reload();
            }else {
                alert('删除失败:' + data.msg);
            }
        }, 'json')
    }
}

七、模板修改与使用注意事项

  • 下载记录模板固定存放于 html/user/downs.html,修改前建议备份原文件,防止功能异常。

  • 数据渲染依赖 $list 数组与 volist 遍历标签,不可随意修改变量名称与循环语法。

  • 删除功能依赖 jQuery 与苹果CMS自带 MAC.CheckBox 组件,需保证页面正常加载对应脚本。

  • 批量删除、清空功能需搭配页面对应ID按钮(#btnDel、#btnClear)使用,否则功能无法触发。

  • 页面样式、布局可自由美化调整,核心接口、字段、脚本逻辑禁止随意修改。

八、功能总结

苹果CMS V10用户下载记录页面依托原生模板文件与系统数据接口,实现了下载数据展示、二次下载、记录管理全套功能。模板通过 $vo 系列字段精准调取各类下载信息,搭配成熟的AJAX删除逻辑,兼顾实用性与稳定性,可直接用于站点搭建,也可基于原有结构进行个性化样式优化。