/********************************************
* 后台管理 - 资源评价 *
*******************************************/
//控制器:ResEvaluationController
//------------------------------------------
//F1.定义Ext列表实体字段
//F2.获取Ext列表数据
//F3.Ext加载后创建建列表
//F4.获取查询条件
//F5.页面初始化
//F6.查询
//F7.清除
//F8.关闭审核评价对话框
//F9.保存评价
//F10.查看评价内容
//------------------------------------------
//F1.定义Ext列表实体字段
Ext.define('ResModel', {
extend: 'Ext.data.Model',
fields:[
'resourceid','title','evalid','starrating','evaluserid','evaltime','auditresult','audituserid'
],
idProperty: 'evalid'
});
//F2.获取Ext列表数据
var ResStore = new Ext.data.Store({
autoDestroy: true,
pageSize: 10,
model: 'ResModel',
proxy: {
type: 'ajax',
url: '/res/manage/evaluation/getlist',
reader: {
root: 'topics',
totalProperty: 'totalCount'
},
simpleSortMode: true
},
remoteSort: true
});
//F3.Ext加载后创建建列表
var formdata = {};
Ext.onReady(function () {
Ext.state.Manager.setProvider(new Ext.state.CookieProvider());
Ext.tip.QuickTipManager.init();
Ext.Ajax.timeout = 900000;
Ext.require([
'Ext.ux.PagingToolbar'
]);
Ext.create('Ext.grid.Panel', {
id: 'gridexample',
renderTo: 'grid',
// width: 2400,
// height: 420,
layout: 'fit',
autoScroll: false,
//bodyStyle: 'width:100%',
store: ResStore,
stateful: false,
stateId: 'ZYMLZiYuan-Grid',
viewConfig: {
forceFit: true,
enableTextSelection: true //列表数据可复制
},
columns: [
{ xtype: 'rownumberer', text: "序号", width: '5%', align: 'center' },
{ text: "资源名称", dataIndex: 'title', width: '25%', sortable: false, align: 'center', filter: { type: 'string' },
renderer: function (value, p, record) {
var ziYuanId = record.getData()["resourceid"];
var tit = htmlEncodeByRegExp(value);
return Ext.String.format(
'{2}',
ziYuanId, value, tit
);
}
},
{ text: "评价星级", dataIndex: 'starrating', width: '16%', sortable: true, align: 'center', filter: { type: 'string' } },
{ text: "评价人", dataIndex: 'evaluserid', width: '12%', sortable: false, align: 'center' },
{ text: "评价日期", dataIndex: 'evaltime', width: '18%', sortable: true, align: 'center' },
{ text: "评价内容", width: '12%', sortable: false, align: 'center' ,
renderer: function (value, p, record) {
var evalid = record.getData()["evalid"];
return Ext.String.format(
'查看',
evalid
);
}
},
{ text: "审核", dataIndex: 'auditresult', width: '12%', sortable: false, align: 'center',
renderer: function (value, p, record) {
if(value == null || value == 'null' || value == '' || value == 0){
var evalid = record.getData()["evalid"];
return Ext.String.format(
'通过 不通过',
evalid
);
} else {
if( value == 1 ){
return '通过
';
}
else if( value == 2 ){
return '不通过
';
}
}
}
}
],
bbar: Ext.create('Ext.ux.PagingToolbar', {
id: "Page",
name: "Page",
store: ResStore,
displayInfo: true,
firstText: "首页",
prevText: "上一页",
nextText: "下一页",
lastText: "尾页",
refreshText: '刷新',
beforePageText: '第',
afterPageText: '页,共 {0} 页',
displayMsg: '显示 {0} - {1} 条,共 {2} 条',
emptyMsg: "没有数据显示",
items: [
{
xtype: 'label',
text: ''
}
]
})
});
ResStore.on('beforeload', function () {
GetSearchWhere("SearchForm");
ResStore.proxy.extraParams = [];
Ext.apply(ResStore.proxy.extraParams, formdata);
});
ResStore.on('load', function (store, records, successful, eOpts) {
var totalCount = store.totalCount;
if (totalCount == "") totalCount = "0";
});
ResStore.load();
//添加resize监听防止切换tab或者收起左栏导致grid不自适应宽度
$(window).resize(function () {
Ext.getCmp('gridexample').doLayout();//panel重新布局
});
});
//F4.获取查询条件
function GetSearchWhere(formId) {
var form = document.forms[formId];
for (var i = 0; i < form.elements.length; i++) {
var strID = form.elements[i].id;
var value = form.elements[i].value;
if (form.elements[i].type == "checkbox") {
if (form.elements[i].checked == true)
value = "on";
else
value = "";
}
if (form.elements[i].type == "radio") {
if (form.elements[i].checked == true) {
strID = form.elements[i].name;
value = form.elements[i].value;
}
}
formdata[strID] = (value == "全部" || value == "None" ? "" : value + "");
}
}
//F5.页面初始化
$(function () {
$(".date-picker").datepicker({
language: 'zh-CN',
format: 'yyyy-mm-dd'
});
});
//F6.查询
function Search() {
if(!checkDateEval()) {
$("#evaltimeEnd").focus();
$("#evaltimeEnd").focus();
return false;
}
Ext.getCmp('gridexample').dockedItems.items[1].store.currentPage = 1;
ResStore.load();
}
//F7.清除
function Clear() {
document.getElementById("SearchForm").reset();
}
//F8.关闭审核评价对话框
function Close() {
$("#myModal").modal("hide");
}
//F9.保存评价
function Save(evalid, status) {
$("#EVALID").val(evalid);
$("#Status").val(status);
$.ajax({
url: '/res/manage/evaluation/save',
type: 'post',
dataType: "text",
data: {'evalid': evalid, 'auditresult': status},
success: function (data) {
var json = eval('(' + data + ')');
if (json.result == '1') {
alert("审核完成!");
Close();
Search();
} else {
alert("审核失败!");
Close();
}
},
error: function (e) {
alert(e);
}
});
}
//F10.查看评价内容
function ShowContent(id) {
layer.open({
type: 2,
title: "评价内容",
shadeClose: true,
area: ["600px", "250px"],
content: 'content?evalid='+id
});
}
//判断发布时间选择框,后一个时间是否小于前一个时间
function checkDateEval() {
var pubdateBegin = $("#evaltimeBeg").val();
var pubdatefinish = $("#evaltimeEnd").val();
if(pubdateBegin != "" && pubdatefinish != ""){
var pubdatestart = new Date(pubdateBegin.replace(/-/g,"/"));
var pubdateend = new Date(pubdatefinish.replace(/-/g,"/"));
if(pubdatestart > pubdateend){
alert("结束时间不能小于开始时间!");
return false;
}
else {
return true;
}
}
else {
return true;
}
}