|
|
@@ -93,14 +93,10 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
|
|
|
|
|
|
//用户objid3为列表内的内容才为DIY人员
|
|
|
Set<String> diyObjid3Set = getConfigValueSet("libang_diyobjid3");
|
|
|
- //用户岗位名称为列表的内容才是区公司级别人员
|
|
|
- Set<String> companySet = getConfigValueSet("libang_company_level_postname");
|
|
|
//用户岗位名称为列表的内容才是销售大区级别人员
|
|
|
Set<String> saledeptSet = getConfigValueSet("libang_saledept_level_postname");
|
|
|
//用户岗位名称为列表的内容才是销售部级别人员
|
|
|
Set<String> officeSet = getConfigValueSet("libang_office_level_postname");
|
|
|
- //用户岗位名称为列表的内容才是销售分部级别人员
|
|
|
- Set<String> subofficeSet = getConfigValueSet("libang_suboffice_level_postname");
|
|
|
//用户岗位名称为列表的内容才是销售员级别人员
|
|
|
Set<String> empSet = getConfigValueSet("libang_emp_level_postname");
|
|
|
Map<Integer,Map<String,Map<String,String>>> salesTreeMap = getDiySalesOrgTree();
|
|
|
@@ -145,51 +141,31 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
|
|
|
|
|
|
String fildName ="";
|
|
|
String fildCode = "";
|
|
|
- if(m.getStext6()!=null){
|
|
|
+ if(m.getStext4()!=null){
|
|
|
if(empSet.contains(m.getEmployeePostName())){
|
|
|
userExt.setSalesLevel("emp_level");
|
|
|
- userExt.setOrgName(m.getStext6());
|
|
|
- setExtOrgCode(salesTreeMap,6,userExt);
|
|
|
+ userExt.setOrgName(m.getStext4());
|
|
|
+ setExtOrgCode(salesTreeMap,4,userExt);
|
|
|
fildName = "Org6name";
|
|
|
fildCode = "Org6code";
|
|
|
- }else if(subofficeSet.contains(m.getEmployeePostName())){
|
|
|
- userExt.setSalesLevel("suboffice_level");
|
|
|
- userExt.setOrgName(m.getStext6());
|
|
|
- setExtOrgCode(salesTreeMap,6,userExt);
|
|
|
+ }else if(officeSet.contains(m.getEmployeePostName())){
|
|
|
+ userExt.setSalesLevel("office_level");
|
|
|
+ userExt.setOrgName(m.getStext4());
|
|
|
+ setExtOrgCode(salesTreeMap,4,userExt);
|
|
|
fildName = "Org6name";
|
|
|
fildCode = "Org6code";
|
|
|
}else{
|
|
|
- throw new OutOfDIYPostNameException(m,6);
|
|
|
+ throw new OutOfDIYPostNameException(m,4);
|
|
|
}
|
|
|
- }else if(m.getStext5()!=null){
|
|
|
+ }else if(m.getStext3()!=null){
|
|
|
|
|
|
- if(officeSet.contains(m.getEmployeePostName())){
|
|
|
- userExt.setSalesLevel("office_level");
|
|
|
- userExt.setOrgName(m.getStext5());
|
|
|
- setExtOrgCode(salesTreeMap,5,userExt);
|
|
|
- fildName = "Org5name";
|
|
|
- fildCode = "Org5code";
|
|
|
- }else{
|
|
|
- throw new OutOfDIYPostNameException(m,5);
|
|
|
- }
|
|
|
- }else if(m.getStext4()!=null){
|
|
|
if(saledeptSet.contains(m.getEmployeePostName())){
|
|
|
userExt.setSalesLevel("saledept_level");
|
|
|
- userExt.setOrgName(m.getStext4());
|
|
|
- setExtOrgCode(salesTreeMap,4,userExt);
|
|
|
- fildName = "Org4name";
|
|
|
- fildCode = "Org4code";
|
|
|
- } else{
|
|
|
- throw new OutOfDIYPostNameException(m,4);
|
|
|
- }
|
|
|
- }else if(m.getStext3()!=null){
|
|
|
- if(companySet.contains(m.getEmployeePostName())){
|
|
|
- userExt.setSalesLevel("company_level");
|
|
|
userExt.setOrgName(m.getStext3());
|
|
|
setExtOrgCode(salesTreeMap,3,userExt);
|
|
|
- fildName = "Org3name";
|
|
|
- fildCode = "Org3code";
|
|
|
- } else{
|
|
|
+ fildName = "Org5name";
|
|
|
+ fildCode = "Org5code";
|
|
|
+ }else{
|
|
|
throw new OutOfDIYPostNameException(m,3);
|
|
|
}
|
|
|
}else{
|
|
|
@@ -299,14 +275,11 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
|
|
|
*/
|
|
|
public Map<Integer,Map<String,Map<String,String>>> getDiySalesOrgTree(){
|
|
|
Map<String,Map<String,String>> map3= metaDiySalesorgtreeMapper.selectSalesTreeByLevel(3);
|
|
|
+
|
|
|
Map<String,Map<String,String>> map4= metaDiySalesorgtreeMapper.selectSalesTreeByLevel(4);
|
|
|
- Map<String,Map<String,String>> map5= metaDiySalesorgtreeMapper.selectSalesTreeByLevel(5);
|
|
|
- Map<String,Map<String,String>> map6= metaDiySalesorgtreeMapper.selectSalesTreeByLevel(6);
|
|
|
Map<Integer,Map<String,Map<String,String>>>res = new HashMap<>();
|
|
|
res.put(3,map3);
|
|
|
res.put(4,map4);
|
|
|
- res.put(5,map5);
|
|
|
- res.put(6,map6);
|
|
|
return res;
|
|
|
}
|
|
|
|
|
|
@@ -322,11 +295,12 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
|
|
|
return false;
|
|
|
}
|
|
|
String orgname = userExt.getOrgName();
|
|
|
- for(;level<7;level++){
|
|
|
+ for(;level<5;level++){
|
|
|
if(salesTree.containsKey(level)){
|
|
|
Map<String,Map<String,String>> temp = salesTree.get(level);
|
|
|
- if(temp.containsKey(orgname)){
|
|
|
- userExt.setOrgCode(temp.get(orgname).get("orgcode"));
|
|
|
+ String code = getLikeKey(temp,orgname);
|
|
|
+ if(code!=null){
|
|
|
+ userExt.setOrgCode(code);
|
|
|
return true;
|
|
|
}else{
|
|
|
continue;
|
|
|
@@ -337,6 +311,29 @@ public class AnalysisSysUserService implements IAnalysisSysUserService {
|
|
|
|
|
|
}
|
|
|
|
|
|
+ public String getLikeKey( Map<String,Map<String,String>> map,String key){
|
|
|
+ if(map.containsKey(key)){
|
|
|
+ return map.get(key).get("orgcode");
|
|
|
+ }else{
|
|
|
+ Iterator it = map.entrySet().iterator();
|
|
|
+ while(it.hasNext()) {
|
|
|
+ Map.Entry<String, Map<String,String>> entry = (Map.Entry<String, Map<String,String>>)it.next();
|
|
|
+ if (entry.getKey().indexOf(key) != -1) {
|
|
|
+ Map<String,String> t =entry.getValue();
|
|
|
+ String value = t.get("orgcode");
|
|
|
+ map.put(key,t);
|
|
|
+ return value;
|
|
|
+ }else if(key.indexOf(entry.getKey())!=-1){
|
|
|
+ Map<String,String> t =entry.getValue();
|
|
|
+ String value = t.get("orgcode");
|
|
|
+ map.put(key,t);
|
|
|
+ return value;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
|
|
|
|
|
|
}
|