jsp
<EF:EFSelect ename="inqu_status-0-dep1" cname="部门/中心" filter="contains"
optionLabel="请选择">
</EF:EFSelect>
<EF:EFSelect ename="inqu_status-0-dep2" cname="车间/区域" filter="contains"
optionLabel="请选择">
</EF:EFSelect>
<EF:EFSelect ename="inqu_status-0-dep3" cname="班组/车站" filter="contains"
optionLabel="请选择">
</EF:EFSelect>
</div>
js
$(window).load(function () {
setTimeout(function () {
getDep1();
getDep2();
getDep3();
}, 100);
});
$("#inqu_status-0-dep1").on("change", function (e) {
getDep2();
getDep3();
});
$("#inqu_status-0-dep2").on("change", function (e) {
getDep3();
});
function selectOption(obj1, obj2, obj3, obj4) {
var eiInfo = new EiInfo();
eiInfo.set("dep1", $("#inqu_status-0-dep1").val());
eiInfo.set("dep2", $("#inqu_status-0-dep2").val());
eiInfo.set("formEname",obj4);
EiCommunicator.send("AQTS0201", obj1, eiInfo,
{
onSuccess: function (ei) {
var place = ei.getBlock("result").getRows();
var dataJson = {};
var data = [];
var stringdata = null;
var tojson = null;
for (var a = 0; a < place.length; a++) {
stringdata = '{"textField":"' + place[a][1] + '", "valueField":"' + place[a][0] + '"}';
tojson = $.parseJSON(stringdata);
data.push(tojson);
stringdata = null;
tojson = null;
}
dataJson['data'] = data;
var dataSource = new kendo.data.DataSource(dataJson);
if (obj2 == 0) {
IPLAT.EFSelect.setDataSource($("#inqu_status-0-" + obj3), dataSource);
} else {
var multiselect = $("#inqu_status-0-" + obj3).data("kendoMultiSelect");
multiselect.setDataSource(dataSource);
}
},
onFail: function (ei) {
IPLAT.NotificationUtil("获取数据失败", "error");
}
})
}
servlet
public EiInfo queryDep1(EiInfo inInfo){
String loginName = UserSession.getLoginName();
Map<String, String> userOrg123 = UserBelong.queryOrg123(loginName);
String orgName = userOrg123.get("orgName");
String orgCode = userOrg123.get("orgCode");
String dep1Ename = userOrg123.get("dep1Ename");
String dep1Cname = userOrg123.get("dep1Cname");
String dep2Ename = userOrg123.get("dep2Ename");
String dep2Cname = userOrg123.get("dep2Cname");
String dep3Ename = userOrg123.get("dep3Ename");
String dep3Cname = userOrg123.get("dep3Cname");
Map map = new HashMap();
Map<String,String> depInfo = new HashMap<String,String>();
List list = new ArrayList();
if(!UserBelong.isAdmin(inInfo)){
Integer queryPower = UserBelong.getRoleQuery(loginName, inInfo.getString("formEname"));
if(queryPower == null){
return inInfo;
}else{
if(OtherConstants.ringAndBelow.equals(queryPower)){
list = dao.query("AQTS0201.queryDep1", map, 0, -999999);
}
if(OtherConstants.cnmpanyAndBelow.equals(queryPower)){
list = dao.query("AQTS0201.queryDep1", map, 0, -999999);
}
if(OtherConstants.depAndBelow.equals(queryPower)){
depInfo.put("iid", dep1Ename);
depInfo.put("name", dep1Cname);
list.add(depInfo);
}
if(OtherConstants.rankAndBelow.equals(queryPower)){
depInfo.put("iid", dep1Ename);
depInfo.put("name", dep1Cname);
list.add(depInfo);
}
if(OtherConstants.rank.equals(queryPower)){
depInfo.put("iid", dep1Ename);
depInfo.put("name", dep1Cname);
list.add(depInfo);
}
if(OtherConstants.personal.equals(queryPower)){
list = dao.query("AQTS0201.queryDep1", map, 0, -999999);
}
}
}else{
list = dao.query("AQTS0201.queryDep1", map, 0, -999999);
}
EiBlock block = new EiBlock("result");
block.addRows(list);
inInfo.addBlock(block);
return inInfo;
}
public EiInfo queryDep2(EiInfo inInfo){
String dep1 = inInfo.getString("dep1");
if (dep1 == null || "null".equals(dep1) || "".equals(dep1.trim())) {
dep1 = "";
}
List list = new ArrayList();
String loginName = UserSession.getLoginName();
Map<String, String> userOrg123 = UserBelong.queryOrg123(loginName);
String orgName = userOrg123.get("orgName");
String orgCode = userOrg123.get("orgCode");
String dep1Ename = userOrg123.get("dep1Ename");
String dep1Cname = userOrg123.get("dep1Cname");
String dep2Ename = userOrg123.get("dep2Ename");
String dep2Cname = userOrg123.get("dep2Cname");
String dep3Ename = userOrg123.get("dep3Ename");
String dep3Cname = userOrg123.get("dep3Cname");
Map map = new HashMap();
map.put("dep1", dep1);
Map<String,String> depInfo = new HashMap<String,String>();
if(!UserBelong.isAdmin(inInfo)){
Integer queryPower = UserBelong.getRoleQuery(loginName, inInfo.getString("formEname"));
if(queryPower == null){
}else{
if(OtherConstants.ringAndBelow.equals(queryPower)){
list = dao.query("AQTS0201.queryDep2", map, 0, -999999);
}
if(OtherConstants.cnmpanyAndBelow.equals(queryPower)){
list = dao.query("AQTS0201.queryDep2", map, 0, -999999);
}
if(OtherConstants.depAndBelow.equals(queryPower)){
map.put("dep1", dep1Ename);
list = dao.query("AQTS0201.queryDep2", map, 0, -999999);
}
if(OtherConstants.rankAndBelow.equals(queryPower)){
if(dep2Ename == null || "".equals(dep2Ename.trim())){
map.put("dep1", dep1Ename);
list = dao.query("AQTS0201.queryDep2", map, 0, -999999);
}else{
depInfo.put("iid", dep2Ename);
depInfo.put("name", dep2Cname);
list.add(depInfo);
}
}
if(OtherConstants.rank.equals(queryPower)){
if(dep2Ename == null || "".equals(dep2Ename.trim())){
}else{
depInfo.put("iid", dep2Ename);
depInfo.put("name", dep2Cname);
list.add(depInfo);
}
}
if(OtherConstants.personal.equals(queryPower)){
list = dao.query("AQTS0201.queryDep2", map, 0, -999999);
}
}
}else{
list = dao.query("AQTS0201.queryDep2", map, 0, -999999);
}
EiBlock block = new EiBlock("result");
block.addRows(list);
inInfo.addBlock(block);
return inInfo;
}
public EiInfo queryDep3(EiInfo inInfo){
String dep1 = inInfo.getString("dep1");
String dep2 = inInfo.getString("dep2");
if (dep1 == null || "null".equals(dep1) || "".equals(dep1.trim())) {
dep1 = "";
}
if (dep2 == null || "null".equals(dep2) || "".equals(dep2.trim())) {
dep2 = "";
}
String loginName = UserSession.getLoginName();
Map<String, String> userOrg123 = UserBelong.queryOrg123(loginName);
String orgName = userOrg123.get("orgName");
String orgCode = userOrg123.get("orgCode");
String dep1Ename = userOrg123.get("dep1Ename");
String dep1Cname = userOrg123.get("dep1Cname");
String dep2Ename = userOrg123.get("dep2Ename");
String dep2Cname = userOrg123.get("dep2Cname");
String dep3Ename = userOrg123.get("dep3Ename");
String dep3Cname = userOrg123.get("dep3Cname");
Map map = new HashMap();
map.put("dep1", dep1);
map.put("dep2", dep2);
Map<String,String> depInfo = new HashMap<String,String>();
List list = new ArrayList();
if(!UserBelong.isAdmin(inInfo)){
Integer queryPower = UserBelong.getRoleQuery(loginName, inInfo.getString("formEname"));
if(queryPower == null){
inInfo.addBlock("result");
return inInfo;
}else{
if(OtherConstants.ringAndBelow.equals(queryPower)){
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}
if(OtherConstants.cnmpanyAndBelow.equals(queryPower)){
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}
if(OtherConstants.depAndBelow.equals(queryPower)){
map.put("dep1", dep1Ename);
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}
if(OtherConstants.rankAndBelow.equals(queryPower)){
if(dep2Ename == null || "".equals(dep2Ename.trim())){
map.put("dep1", dep1Ename);
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}else{
if(dep3Ename == null || "".equals(dep3Ename.trim())){
map.put("dep2", dep2Ename);
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}else{
depInfo.put("iid", dep3Ename);
depInfo.put("name", dep3Cname);
list.add(depInfo);
}
}
}
if(OtherConstants.rank.equals(queryPower)){
if(dep2Ename == null || "".equals(dep2Ename.trim())){
}else{
if(dep3Ename == null || "".equals(dep3Ename.trim())){
}else{
depInfo.put("iid", dep3Ename);
depInfo.put("name", dep3Cname);
list.add(depInfo);
}
}
}
if(OtherConstants.personal.equals(queryPower)){
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}
}
}else{
list = dao.query("AQTS0201.queryDep3", map, 0, -999999);
}
EiBlock block = new EiBlock("result");
block.addRows(list);
inInfo.addBlock(block);
return inInfo;
}