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 salaryBasic = new SalaryBasic();
var tabId = Ext.getCmp('mainTab').getActiveTab().id.split('_')[1];
juage(tabId,"salb",salaryBasic,"salaryBasic");
</script> </head>
<body>
<div id="salaryBasic" ></div>
</body>
</html>

2、

 /**
* 员工工资基本信息管理
* @author sux 2011-02-23
* @memberOf {TypeName}
* @return {TypeName}
*/
var SalaryBasic = Ext.extend(Ext.grid.EditorGridPanel,{
id: 'salaryBasicId',
constructor: function(){
Ext.form.Field.prototype.msgTarget = 'title';
var number = new Ext.grid.RowNumberer();
var sm = new Ext.grid.CheckboxSelectionModel();
var salBasicStore = new Ext.data.JsonStore({
url: 'salBasic_list.action',
root: 'root',
totalProperty: 'totalProperty',
fields: ['sbId','employee','sbBasic','sbEndowment','sbHospitalization','sbUnemployment','sbInjury',
'sbMaternity','sbHousing','sbTraffic','sbEatery','sbTelephone']
})
var cm = new Ext.grid.ColumnModel([
number, sm,
{
header: '编号',
dataIndex: 'sbId',
align: 'center'
},{
header: '员工工号',
dataIndex: 'employee',
align: 'center',
renderer: function(value){
//判断其类型是否为object类型
if(typeof(value) == "object"){
return value.empId;
}else{
return value;
}
},
editor: new Ext.form.TextField({
allowBlank: false,
blankText: '不能为空',
id: 'salaryBasicEmp',
listeners: {'blur':this.uniqueEmp}
})
},{
header: '员工姓名',
dataIndex: 'employee',
align: 'center',
renderer: function(value){
if(value)
return value.empName;
}
},{
header: '基本工资',
dataIndex: 'sbBasic',
align: 'center',
editor: new Ext.form.TextField()
},{
header: '养老保险',
dataIndex: 'sbEndowment',
align: 'center',
editor: new Ext.form.ComboBox({
mode: 'local',
triggerAction: 'all',
editable: false,
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [['是','1'],['否','0']]
}),
displayField: 'name',
valueField: 'value'
}),
renderer: function(value){
if(value == '1') return '是';
return '否';
}
},{
header: '医疗保险',
dataIndex: 'sbHospitalization',
align: 'center',
editor: new Ext.form.ComboBox({
mode: 'local',
triggerAction: 'all',
editable: false,
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [['是','1'],['否','0']]
}),
displayField: 'name',
valueField: 'value'
}),
renderer: function(value){
if(value == '1') return '是';
return '否';
}
},{
header: '失业保险',
dataIndex: 'sbUnemployment',
align: 'center',
editor: new Ext.form.ComboBox({
mode: 'local',
editable: false,
triggerAction: 'all',
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [['是','1'],['否','0']]
}),
displayField: 'name',
valueField: 'value'
}),
renderer: function(value){
if(value == '1') return '是';
return '否';
}
},{
header: '工伤保险',
dataIndex: 'sbInjury',
align: 'center',
editor: new Ext.form.ComboBox({
mode: 'local',
triggerAction: 'all',
editable: false,
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [['是','1'],['否','0']]
}),
displayField: 'name',
valueField: 'value'
}),
renderer: function(value){
if(value == '1') return '是';
return '否';
}
},{
header: '生育保险',
dataIndex: 'sbMaternity',
align: 'center',
editor: new Ext.form.ComboBox({
mode: 'local',
triggerAction: 'all',
editable: false,
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [['是','1'],['否','0']]
}),
displayField: 'name',
valueField: 'value'
}),
renderer: function(value){
if(value == '1') return '是';
return '否';
}
},{
header: '住房公积金',
dataIndex: 'sbHousing',
align: 'center',
editor: new Ext.form.ComboBox({
mode: 'local',
editable: false,
triggerAction: 'all',
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [['是','1'],['否','0']]
}),
displayField: 'name',
valueField: 'value'
}),
renderer: function(value){
if(value) return '是';
return '否';
}
},{
header: '交通补贴',
dataIndex: 'sbTraffic',
align: 'center',
editor: new Ext.form.NumberField()
},{
header: '餐费补贴',
dataIndex: 'sbEatery',
align: 'center',
editor: new Ext.form.NumberField()
},{
header: '通迅补贴',
dataIndex: 'sbTelephone',
align: 'center',
editor: new Ext.form.NumberField()
}])
SalaryBasic.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: salBasicStore,
tbar: new Ext.Toolbar({
items: ['条目:',{
xtype: 'combo',
width: 80,
triggerAction: 'all',
editable: false,
mode: 'local',
store: new Ext.data.SimpleStore({
fields: ['name','value'],
data: [[" "," "],["empId","员工工号"],["empName","员工姓名"]]
}),
id: 'sb_condition',
displayField: 'value',
valueField: 'name'
},'内容',{
xtype: 'textfield',
id: 'sb_conditionValue',
width: 80
},{
text: '查看',
handler: salViewFn,
iconCls: 'search'
},{
text: '删除',
handler: salDelFn,
id: 'salb_delete',
iconCls: 'delete'
},{
text: '新增',
id: 'salb_add',
handler: salNewFn,
iconCls: 'add'
},{
text: '修改或保存',
iconCls: 'save',
id: 'salb_saveorupdate',
handler: salUpdateOrSaveFn
}]
}),
bbar: new PagingToolbar(salBasicStore, 20)
})
salBasicStore.load({
params: {
start: 0,
limit: 20
}
});
},
//员工工号
uniqueEmp: function(obj){
var empId = obj.getValue();
Ext.Ajax.request({
url: 'salBasic_uniqueEmp.action',
success: function(response, options){
var obj = Ext.util.JSON.decode(response.responseText);
if(obj.msg == false){
Ext.Msg.alert("提示","此员工的工资已配置");
}
},
failure: hrmsys.util.common.failure,
params: {
empId: empId
}
})
}
});
//查看
salViewFn = function(){
var condition = Ext.getCmp("sb_condition").getValue();
var conditionValue = Ext.getCmp("sb_conditionValue").getValue();
Ext.getCmp('salaryBasicId').getStore().load({
params: {
type: 'query',
condition: condition,
conditionValue: conditionValue,
start: 0,
limit: 20
}
});
};
//删除
salDelFn = function(){
gridDel('salaryBasicId','sbId', 'salBasic_delete.action');
};
//新增
salNewFn = function(){
var DefaultRecord = new Ext.data.Record.create([{name: 'sbId', mapping: 0},{name: 'employee', mapping: 1},
{name: 'empName', mapping:2},{name: 'sbBasic', mapping: 3},{name: 'sbEndowment', mapping: 4},
{name: 'sbHospitalization', mapping: 5},{name: 'sbUnemployment', mapping: 6},{name: 'sbInjury', mapping: 7},
{name: 'sbMaternity', mapping: 8},{name: 'sbHousing', mapping:9},{name: 'sbTraffic', mapping: 10},
{name: 'sbEatery', mapping: 11},{name: 'sbTelephone', mapping: 12}]);
var num = Ext.getCmp('salaryBasicId').getStore().getCount();
var newRecord = new DefaultRecord({
sbId: num+1
});
Ext.getCmp('salaryBasicId').getStore().insert(0,newRecord);
}; //保存或者修改
salUpdateOrSaveFn = function(){
var modifiedRecords = Ext.getCmp('salaryBasicId').getStore().getModifiedRecords();
var salBasics = reSalBasicJson(modifiedRecords);
//alert(salBasics);
Ext.Ajax.request({
url: 'salBasic_save.action',
method: 'post',
waitTitle: '提示',
waitMsg: '正在保存数据...',
params: {
json: salBasics
},
success: salBasicSuccessFn,
failure: boonModifyfailureFn
})
};
//保存成功保存
salBasicSuccessFn = function(response, options){
var datas = Ext.util.JSON.decode(response.responseText);
Ext.Msg.alert('提示',datas.msg,function(){
Ext.getCmp('salaryBasicId').getStore().load({
params: {
start: 0,
limit: 20
}
});
});
};
//json
reSalBasicJson = function(modifiedRecords){
var count = modifiedRecords.length;
var salBasics='';
//有修改或保存
if(count > 0){
salBasics = "[";
for(i=0; i<count; i++){
salBasics += "{";
var sbId = modifiedRecords[i].get('sbId');
var employee = modifiedRecords[i].get('employee');
if(typeof(employee) == "object"){
var empId = employee.empId;
}else{
var empId = employee;
}
//var empName = modifiedRecords[i].get('empName');
var sbBasic = modifiedRecords[i].get('sbBasic');
var sbEndowment = modifiedRecords[i].get('sbEndowment');
var sbHospitalization = modifiedRecords[i].get('sbHospitalization');
var sbUnemployment = modifiedRecords[i].get('sbUnemployment');
var sbInjury = modifiedRecords[i].get('sbInjury');
var sbEatery = modifiedRecords[i].get('sbEatery');
var sbMaternity = modifiedRecords[i].get('sbMaternity');
var sbHousing = modifiedRecords[i].get('sbHousing');
var sbTraffic = modifiedRecords[i].get('sbTraffic');
var sbTelephone = modifiedRecords[i].get('sbTelephone');
salBasics += '"sbId":'+sbId+', "empId":"'+empId+'","sbBasic":'+sbBasic+
',"sbEndowment":'+sbEndowment+', "sbHospitalization":'+sbHospitalization+', "sbUnemployment":'+sbUnemployment+
', "sbInjury":'+sbInjury+', "sbEatery":'+sbEatery+', "sbMaternity":'+sbMaternity+', "sbHousing":'+sbHousing+
', "sbTraffic":'+sbTraffic+', "sbTelephone":'+sbTelephone+'}';
if( i != count-1)
salBasics += ","
}
salBasics += "]"
}
return salBasics;
}

74.资金管理-员工工资配置 extjs 页面的更多相关文章

  1. 70.资金管理-福利表管理 Extjs 页面

    1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&quo ...

  2. 69.资金管理-税率表管理extjs 页面

    1. <%@ page language="java" import="java.util.*" pageEncoding="UTF-8&quo ...

  3. 79.员工薪水报表 Extjs 页面

    1 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8" ...

  4. HR开发 读取员工工资

    1.使用函数读取员工工资. ①数据结构工资结果 DATA: GT_RGDIR TYPE TABLE OF PC261 , GS_RGDIR TYPE PC261 , GT_PAYRESULT TYPE ...

  5. web.config配置aspx页面默认引用的namespace

    如果我们在aspx页面上使用<%%>的方式使用某些类的时候很多都没办法直接使用,我们必须要在页面上引用命名空间, 如:如果我们要使用DataTable类的时候,我们必须先使用<%@ ...

  6. Eclipse(非J2EE版本)配置Extjs环境以及安装部署Tomcat

    Eclipse(非J2EE版本)配置Extjs环境(Spket) 1. 安装spket插件,帮助->安装新软件->http://www.agpad.com/update. 2. 设置Spk ...

  7. Webpack 2 视频教程 019 - Webpack 2 中配置多页面编译

    原文发表于我的技术博客 这是我免费发布的高质量超清「Webpack 2 视频教程」. Webpack 作为目前前端开发必备的框架,Webpack 发布了 2.0 版本,此视频就是基于 2.0 的版本讲 ...

  8. SpringMVC 实现文件上传与下载,并配置异常页面

    目录 上传文件的表单要求 Spring MVC实现上传文件 需要导入的jar包 配置MultipartResolver解析器 编写接收上传文件的控制器 Spring MVC实现文件下载 下载文件时的h ...

  9. SpringMVC项目配置欢迎页面为index.html

    一.问题 在web.xml中添加如下配置无效 <welcome-file-list> <welcome-file>index.html</welcome-file> ...

随机推荐

  1. java 操作clob

    之前在学校的时候做的都是练习,小儿科,遇到的情况完全都在自己的设想范围内.最近老是遇到字段溢出的情况,但是varchar2好像最长也只有4000个字符.所以不得不另辟蹊径,就找上了clob字段. pa ...

  2. easyui 使用笔记

    http://www.easyui.info/archives/1435.html datagrid 服务端分页 服务端分页,高效,快捷!强力推荐! easyui的datagrid服务端分页,通过设置 ...

  3. 删数据ORA-02292主键约束问题

    通常在删除某个表A的时候,会出现这个错误.原因是另一个表B的某个字段引用了A表的某个字段作为约束(这个的另一个说法是外键). 假如引用的字段叫field,当B.field = A.field , 而你 ...

  4. pandas写入多组数据到excel不同的sheet

    今天朋友问了我个需求,就是如何将多个分析后的结果,也就是多个DataFrame,写入同一个excel工作簿中呢? 之前我只写过放在一个sheet中,但是怎么放在多个sheet中呢?下面我在本地wind ...

  5. Web 常用

    System.Web.Hosting.HostingEnvironment.MapPath(); HttpUtility.UrlEncode();

  6. HDU 3152 Obstacle Course(优先队列,广搜)

    题目 用优先队列优化普通的广搜就可以过了. #include<stdio.h> #include<string.h> #include<algorithm> usi ...

  7. python 单元测试中处理用例失败的情况

    今天有一个需求, 在单元测试失败的时候打印一些日志, 我们管他叫 dosomething 吧 ,反正就是做一些操作 查了下并没有查到相关的方法, 于是研究了一波unittest 的源码 发现了这个东西 ...

  8. Python学习【第6篇】:Python之常用模块1

    常用模块一. collocations 模块 时间模块 random模块 os模块 sys模块 序列化模块 re模块 常用模块二:这些模块和面向对象有关 hashlib模块 configparse模块 ...

  9. css3部分注意事项

    CSS 选择符有哪些?哪些属性可以继承?优先级算法如何计算? CSS3新增伪类有那些? 1.选择器 id选择器( # myid) 类选择器(.myclassname) 标签选择器(div, h1, p ...

  10. Luogu P1187 3D模型

    题目描述 一座城市建立在规则的n×m网格上,并且网格均由1×1正方形构成.在每个网格上都可以有一个建筑,建筑由若干个1×1×1的立方体搭建而成(也就是所有建筑的底部都在同一平面上的).几个典型的城市模 ...