69.资金管理-税率表管理extjs 页面
1.
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
<%
String path = request.getContextPath();
String basePath = request.getScheme()+"://"+request.getServerName()+":"+request.getServerPort()+path+"/";
%> <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<base href="<%=basePath%>"> <title>培训信息</title> <script type="text/javascript">
var revenue = new Revenue();
var tabId = Ext.getCmp('mainTab').getActiveTab().id.split('_')[1];
juage(tabId,"reve",revenue, "revenue");
</script> </head>
<body>
<div id="revenue" ></div>
</body>
</html>
2.税率表js
/**
* 税率信息
*
* @author sux 2011-02-22
* @memberOf {TypeName}
*/
var Revenue = Ext.extend(Ext.grid.EditorGridPanel, {
id : 'revenueId',
constructor : function() {
// 实现统一的提示方式
Ext.form.Field.prototype.msgTarget = 'title';
var number = new Ext.grid.RowNumberer();
var sm = new Ext.grid.CheckboxSelectionModel();
var revenueStore = new Ext.data.JsonStore({
url : 'revenue_edit.action',
root : 'root',
totalProperty : 'totalProperty',
fields : [ 'reId', 'reMin', 'reMax', 'rePercent', 'reMinus' ]
});
var cm = new Ext.grid.ColumnModel([ number, sm, {
header : '编号',
dataIndex : 'reId',
align : 'center'
}, {
header : '最小值',
dataIndex : 'reMin',
align : 'center',
//设置在编辑状态下,指定编辑器
//Ext_数字输入框_Ext.form.NumberField
editor : new Ext.form.NumberField({
allowBlank : false,
blankText : '不能为空'
})
}, {
header : '最大值',
dataIndex : 'reMax',
align : 'center',
editor : new Ext.form.NumberField({
allowBlank : false,
blankText : '不能为空'
})
}, {
header : '税率',
dataIndex : 'rePercent',
align : 'center',
editor : new Ext.form.NumberField({
allowBlank : false,
blankText : '不能为空'
})
}, {
header : '速算减值',
dataIndex : 'reMinus',
align : 'center',
editor : new Ext.form.NumberField({
allowBlank : false,
blankText : '不能为空'
})
} ]); Revenue.superclass.constructor.call(this, {
width: Ext.getCmp('mainTab').getActiveTab().getInnerWidth(),
height: Ext.getCmp('mainTab').getActiveTab().getInnerHeight(),
/**表格高度自适应 document.body.clientHeight浏览器页面高度 start**/
monitorResize: true,
doLayout: function() {
this.setWidth(document.body.clientWidth-205);
this.setHeight(document.body.clientHeight-140);
Ext.grid.GridPanel.prototype.doLayout.call(this);
} ,
viewConfig: {
forceFit: true
},
sm: sm,
cm: cm,
store: revenueStore,
tbar: new Ext.Toolbar({
items: [{
text: '删除',
iconCls: 'delete',
id: 'reve_delete',
handler: delRevenueFn
},{
text: '新增',
iconCls: 'add',
id: 'reve_add',
handler: newRevenueFn
},{
text: '保存或修改',
iconCls: 'save',
id: 'reve_saveorupdate',
handler: modifyRevenueFn
}]
}),
bbar: new PagingToolbar(revenueStore, 20)
});
revenueStore.load({
params: {
start: 0,
limit: 20
}
});
}
});
//删除
delRevenueFn = function(){
gridDel('revenueId', 'reId','revenue_delete.action');
};
//新增
newRevenueFn = function(){ var DefaultRecord = new Ext.data.Record.create([{name: 'reId', mapping: 0},{name: 'reMin', mapping: 1},
{name: 'reMax', mapping: 2},{name: 'rePercent', mapping: 3},{name: 'reMinus', mapping: 4}]);
//Store.getCount()返回的是store中的所有数据记录,然后使用for循环遍历整个store,从而得到每条记录。
var num = Ext.getCmp('revenueId').getStore().getCount();
var newRecord = new DefaultRecord({
reId: num+1,
reMin: '',
reMax: '',
rePercent: '',
reMinus: ''
});
Ext.getCmp('revenueId').getStore().insert(0,newRecord);
};
//保存或修改
modifyRevenueFn=function(){
//获取以后都是第一次修改的值
var modifiedRecords = Ext.getCmp('revenueId').getStore().getModifiedRecords(); var revenues = reRevenueJson(modifiedRecords);
Ext.Ajax.request({
url: 'revenue_modify.action',
waitTitle: '提示',
waitMsg: '正在保存数据...',
method: 'post',
params: {
json: revenues
},
success: reModifySuccessFn,
failure: reModifyfailureFn
})
};
//保存成功后处理
reModifySuccessFn = function(response, options){
var datas = Ext.util.JSON.decode(response.responseText);
Ext.Msg.alert('提示',datas.msg,function(){
Ext.getCmp('revenueId').getStore().load({
params: {
start: 0,
limit: 20
}
});
});
};
//删除成功后处理
reModifyfailureFn = function(response, options){
Ext.Msg.alert('提示','连接失败',function(){})
};
//转化json
reRevenueJson = function(modifiedRecords){
var count = modifiedRecords.length;
var revenues='';
//有修改
if(count > 0){
revenues = "[";
for(i=0; i<count; i++){
revenues += "{";
var reId = modifiedRecords[i].get('reId');
var reMin = modifiedRecords[i].get('reMin');
var reMax = modifiedRecords[i].get('reMax');
var rePercent = modifiedRecords[i].get('rePercent');
var reMinus = modifiedRecords[i].get('reMinus');
revenues += '"reId":'+reId+', "reMin":'+reMin+',"reMax":'+reMax+',"rePercent":'+rePercent+',"reMinus":'+reMinus+'}';
if( i != count-1)
revenues += ","
}
revenues += "]"
}
return revenues;
}
69.资金管理-税率表管理extjs 页面的更多相关文章
- 70.资金管理-福利表管理 Extjs 页面
1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&quo ...
- 80.用户管理 Extjs 页面
1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8" ...
- 74.资金管理-员工工资配置 extjs 页面
1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&quo ...
- 82.角色管理Extjs 页面
1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&quo ...
- SNF开发平台WinForm之四-开发-主细表管理页面-SNF快速开发平台3.3-Spring.Net.Framework
4.1运行效果: 4.2开发实现: 4.2.1 有了第一个程序的开发,代码生成器的配置应该是没有问题了,我们只要在对应的数据库中创建我们需要的表结构就可以了,如下: 主表结构如下: ...
- SQLSERVER新建表的时候页面分配情况是怎样的?
SQLSERVER新建表的时候页面分配情况是怎样的? 再次感谢sqlskill网站和转载sqlskill网站文章并翻译的人,因为您们的转载和翻译让小弟又学习到新的东西o(∩_∩)o 文章中用到的工具: ...
- 给ecshop后台增加管理功能页面
给ecshop后台增加管理功能页面 比如我们增加一个统计报表叫做 物流费用统计报表 放在后台“报表统计”栏目中 具体操作步骤: 第一步,我们要添加一个菜单到后台,然后设置语言项,最后设置权限,这样,后 ...
- django学习-22.admi管理后台页面的文案展示等相关配置
目录结果 1.前言 2.完整的操作步骤 2.1.第一步:对[settings.py]里的相关常量的值做如下修改 2.2.第二步:重启django项目[helloworld]的服务 2.3.第三步:重新 ...
- OracleDBA之表管理
下面是Oracle表管理的部分,用到的测试表是oracle数据库中scott用户下的表做的测试,有的实验也用到了hr用户的数据,以下这些东西是我的麦库上存的当时学Oracle的学习笔记今天拿出来和大家 ...
随机推荐
- JAVA基础——链表结构之单链表
链表:一种数据存储结构.学链表首先要搞懂数组,按朋友的话说,数组和链表的关系就相当于QQ2008和QQ2009. 除非要通过索引频繁访问各个数据,不然大多数情况下都可以用链表代替数组. 链表部分主要要 ...
- 搜索--P1605 迷宫
题目背景 迷宫 [问题描述] 给定一个N*M方格的迷宫,迷宫里有T处障碍,障碍处不可通过.给定起点坐标和 终点坐标,问: 每个方格最多经过1次,有多少种从起点坐标到终点坐标的方案.在迷宫 中移动有上下 ...
- 电子笔记本的思考(1)(ver0.2)
章节:电子笔记本的思考(1) 陶哲轩在<解题·成长·快乐——陶哲轩教你学数学>中着重强调,用纸笔来“缓存”思维对于数学解题的重要性: 用选定的符号表达你所知道的信息,并画一个示意图.把 ...
- 为什么map对象不能使用stl中的sort函数
STL所提供的各式各样算法中,sort()是最复杂最庞大的一个.这个算法接受两个RandomAccestlerators(随机存取迭代器),然后将区间内的所有元素以渐增方式由小到大重新排列.第二个版本 ...
- 使用yolo3模型训练自己的数据集
使用yolo3模型训练自己的数据集 本项目地址:https://github.com/Cw-zero/Retrain-yolo3 一.运行环境 1. Ubuntu16.04. 2. TensorFlo ...
- Pygame游戏开发入门(1)-开发框架
pygame库的安装 pip install pygame pygame最小开发框架 #Pygame Hello World Game import pygame,sys #引入pygame和sys( ...
- 洛谷 2434 [SDOI2005]区间
[题解] 鲜活的大水题... 把区间排个序然后瞎搞就可以了,发现现在区间的左端点比之前区间的最大的右端点还大,那就增加一个答案区间.每次更新目前最大右区间. #include<cstdio> ...
- 【模板】Lca倍增法
Codevs 1036 商务旅行 #include<cstdio> #include<cmath> #include<algorithm> using namesp ...
- mysql数据库变更监控(canal)
背景: 1. 一些项目的基础功能会有Audit Trace, 以记录系统用户所做过的所有记录. 2. 实时备份数据,比如mysql主从复制,一个用于面向应用,一个用于对应用数据库的实时备份. 3. 实 ...
- vue 添加axios解决post传参数为null问题
本文主要参考: https://www.npmjs.com/package/axios http://jingyan.baidu.com/article/29697b916d6a7bab20de3cf ...