/********************************************
|
* 后台管理 - 问题反馈 *
|
*******************************************/
|
|
//控制器:ResProblemFeedbackController
|
|
//------------------------------------------
|
//F1.定义Ext列表实体字段
|
//F2.获取Ext列表数据
|
//F3.Ext加载后创建建列表
|
//F4.获取查询条件
|
//F5.页面初始化
|
//F6.查询
|
//F7.清除
|
//F8.查看反馈说明
|
//------------------------------------------
|
|
//F1.定义Ext列表实体字段
|
Ext.define('ResModel', {
|
extend: 'Ext.data.Model',
|
fields:[
|
'resourceid','title','objectid','addtime','remark','createusername','feedbacktype','feedbackstatus','serverstatus'
|
],
|
idProperty: 'objectid'
|
});
|
|
//F2.获取Ext列表数据
|
var ResStore = new Ext.data.Store({
|
autoDestroy: true,
|
pageSize: 10,
|
model: 'ResModel',
|
proxy: {
|
type: 'ajax',
|
url: '/res/manage/problemfeedback/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: '4%', align: 'center' },
|
{ text: "资源名称", dataIndex: 'title', width: '25%', sortable: true, align: 'center', filter: { type: 'string' },
|
renderer: function (value, p, record) {
|
var ziYuanId = record.getData()["resourceid"];
|
var tit = htmlEncodeByRegExp(value);
|
return Ext.String.format(
|
'<span style="text-decoration: underline;cursor:pointer;line-height: 25px;" title="{2}" onclick="OpenZiYuan(\'{0}\')" >{2}</span>',
|
ziYuanId, value, tit
|
);
|
}
|
},
|
{text: "问题类型", dataIndex: 'feedbackstatus', width: '10%', sortable: true, align: 'center', filter: { type: 'string' }},
|
{ text: "反馈说明", dataIndex: 'remark', width: '25%', sortable: true, align: 'center', filter: { type: 'string' },
|
renderer: function (value, p, record) {
|
//var appid = record.getData()["appid"];
|
var tit = value.replace(/\'/g,"%#39;%");
|
return Ext.String.format(
|
'<span style="text-decoration: underline;cursor:pointer;" onclick="showRemark(\'{1}\')" >'+value+'</span>',
|
value, tit
|
);
|
}
|
},
|
{text: "反馈方式", dataIndex: 'feedbacktype', width: '8%', sortable: true, align: 'center', filter: { type: 'string' }},
|
{text: "反馈人", dataIndex: 'createusername', width: '8%', sortable: true, align: 'center', filter: { type: 'string' }},
|
{text: "反馈时间", dataIndex: 'addtime', width: '10%', sortable: true, align: 'center', filter: { type: 'string' }},
|
{text: "服务状态", dataIndex: 'serverstatus', width: '10%', sortable: true, align: 'center', filter: { type: 'string' }}
|
],
|
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(!checkDatePro()) {
|
$("#addtimeEnd").focus();
|
$("#addtimeEnd").focus();
|
return false;
|
}
|
Ext.getCmp('gridexample').dockedItems.items[1].store.currentPage = 1;
|
ResStore.load();
|
}
|
|
//F7.清除
|
function Clear() {
|
document.getElementById("SearchForm").reset();
|
}
|
|
//F8.查看反馈说明
|
function showRemark(remark) {
|
remark = remark.replace(/%#39;%/g, "'");
|
layer.open({
|
type: 1,
|
title: "反馈说明",
|
shadeClose: true,
|
area: ["600px", "287px"],
|
content: "<div style='padding:5px;'>" + remark + "</div>"
|
});
|
}
|
|
//判断发布时间选择框,后一个时间是否小于前一个时间
|
function checkDatePro() {
|
var pubdateBegin = $("#addtimeBeg").val();
|
var pubdatefinish = $("#addtimeEnd").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;
|
}
|
}
|