HULEI 2 сар өмнө
parent
commit
d0d701957f

+ 1 - 1
com.awspaas.user.apps.donenow_crm/com.awspaas.user.apps.donenow_crm.iml

@@ -5,7 +5,7 @@
     <content url="file://$MODULE_DIR$">
       <sourceFolder url="file://$MODULE_DIR$/src" isTestSource="false" />
     </content>
-    <orderEntry type="inheritedJdk" />
+    <orderEntry type="jdk" jdkName="temurin-11" jdkType="JavaSDK" />
     <orderEntry type="sourceFolder" forTests="false" />
     <orderEntry type="library" name="aws_lib" level="project" />
   </component>

BIN
com.awspaas.user.apps.donenow_crm/lib/com.awspaas.user.apps.donenow_crm.jar


+ 99 - 94
com.awspaas.user.apps.donenow_crm/src/com/awspaas/user/apps/donenow_crm/event/ContactFormAfterSaveEvent.java

@@ -1,5 +1,5 @@
   package com.awspaas.user.apps.donenow_crm.event;
-  
+
   import com.actionsoft.bpms.bo.engine.BO;
   import com.actionsoft.bpms.bpmn.engine.core.delegate.ProcessExecutionContext;
   import com.actionsoft.bpms.bpmn.engine.listener.ExecuteListener;
@@ -19,100 +19,105 @@ import net.sourceforge.pinyin4j.format.HanyuPinyinOutputFormat;
 import net.sourceforge.pinyin4j.format.exception.BadHanyuPinyinOutputFormatCombination;
 
 import java.util.List;
-  
-  
+
+
   public class ContactFormAfterSaveEvent
-    extends ExecuteListener
+		  extends ExecuteListener
   {
-    public String getDescription() {
-    return "表单保存后事件";
-    }
-    
-    public String getProvider() {
-     return "上海声联";
-    }
-    
-    public String getVersion() {
-    return "1.0";
-    }
-    
-    public void execute(ProcessExecutionContext process) throws Exception {
-    	 UserContext uc = process.getUserContext();
-		 String boName = process.getParameterOfString("$BONAME");
-		 System.out.println("单位boName:" + boName);
-		 BO contactBo = process.getFormData();
-		 saveContactData(uc,contactBo,boName,true);
-		   
-    }
-    
-    public String saveContactData(UserContext uc,BO contactBo,String boName,boolean type) {
-		 String roleNO = "roledn_customer";
-    	 String deptId = DBSql.getString("SELECT ID FROM ORGDEPARTMENT WHERE EXT1=?", new Object[] { contactBo.getString("ACCOUNT_ID")});
-    	 
-		   if (contactBo != null&&CrmConstant.BO_EU_DNCRM_CONTACT.equals(boName)&&StringUtils.isNotBlank(deptId)) {
-		    String roleId = DBSql.getString("SELECT ID from orgrole where roleno='"+roleNO+"'");
-		    if (StringUtils.isBlank(roleId)) {
-		      System.out.println("roleModel为空:");
-		        return "";
-		      } 
-		     RowMap map = DBSql.getMap("SELECT * FROM ORGUSER WHERE EXT5=? or (USERNAME=? AND MOBILE=?)", new Object[] { contactBo.getId(),contactBo.get("NAME"),contactBo.get("MOBILE_PHONE") });
-		     System.out.println("userMap:" +JSON.toJSONString(map));
-		     System.out.println("userMap:" + (map == null));
-		      
-		     //用户表中是否已经存在该人
-		     if (map != null) {
-		       System.out.println("用户更新:");
-		       //说明联系人姓名没有修改过
-		       if(contactBo.getString("NAME").equals(map.getString("USERNAME"))) {
-			       SDK.getORGAPI().updateUser(map.getString("USERID"), contactBo.getString("NAME"), "", contactBo.getString("EMAIL"), contactBo.getString("MOBILE_PHONE"), "", "", "", "", contactBo.getId());
-		       }
-		       //联系人姓名修改过了,要修改USERID
-		       else {
-		    	   String userId=getPinYinUserId(contactBo.getString("NAME"));
-		    	   DBSql.update("UPDATE ORGUSER SET USERID='"+userId+"' WHERE EXT5='"+contactBo.getId()+"'");
-		    	   UserCache.getCache().reload();
-			       SDK.getORGAPI().updateUser(userId, contactBo.getString("NAME"), "", contactBo.getString("EMAIL"), contactBo.getString("MOBILE_PHONE"), "", "", "", "", contactBo.getId());
-		       }
-		       
-		      } else {
-		      System.out.println("用户新增");
-		      String pinYinUserId = getPinYinUserId(contactBo.getString("NAME"));
-		      SDK.getORGAPI().createUser(deptId, pinYinUserId, contactBo.getString("NAME"), roleId, "", "", false, contactBo.getString("EMAIL"), contactBo.getString("MOBILE_PHONE"), "", "", "", "", contactBo.getId());
-		      } 
-    	
-		   }
-		   //主联系人保存需要往客户表同步联系人数据
-		   if(type&&"1".equals(contactBo.getString("IS_PRIMARY_CONTACT"))) {
-			   BO accoutnBo = SDK.getBOAPI().query(CrmConstant.BO_EU_DNCRM_ACCOUNT).detailById(contactBo.getString("ACCOUNT_ID"));
-			   if(null!=accoutnBo) {
-				   accoutnBo.set("CONTACT_NAME", contactBo.get("NAME"));  
-				   accoutnBo.set("CONTACT_SUFFIX_ID", contactBo.get("SUFFIX_ID"));  
-				   accoutnBo.set("CONTACT_TITLE", contactBo.get("TITLE"));  
-				   accoutnBo.set("CONTACT_EMAIL", contactBo.get("EMAIL"));  
-				   accoutnBo.set("PHONE", contactBo.get("MOBILE_PHONE"));  
-				   accoutnBo.set("ALTERNATE_PHONE1", contactBo.get("PHONE"));  
+	  public String getDescription() {
+		  return "琛ㄥ崟淇濆瓨鍚庝簨浠�";
+	  }
+
+	  public String getProvider() {
+		  return "涓婃捣澹拌仈";
+	  }
+
+	  public String getVersion() {
+		  return "1.0";
+	  }
+
+	  public void execute(ProcessExecutionContext process) throws Exception {
+		  UserContext uc = process.getUserContext();
+		  String boName = process.getParameterOfString("$BONAME");
+		  System.out.println("鍗曚綅boName:" + boName);
+		  BO contactBo = process.getFormData();
+		  saveContactData(uc,contactBo,boName,true);
+
+	  }
+
+	  public String saveContactData(UserContext uc,BO contactBo,String boName,boolean type) {
+		  String roleNO = "roledn_customer";
+		  String deptId = DBSql.getString("SELECT ID FROM ORGDEPARTMENT WHERE EXT1=?", new Object[] { contactBo.getString("ACCOUNT_ID")});
+
+		  if (contactBo != null&&CrmConstant.BO_EU_DNCRM_CONTACT.equals(boName)&&StringUtils.isNotBlank(deptId)) {
+			  String roleId = DBSql.getString("SELECT ID from orgrole where roleno='"+roleNO+"'");
+			  if (StringUtils.isBlank(roleId)) {
+				  System.out.println("roleModel涓虹┖:");
+				  return "";
+			  }
+			  RowMap map = DBSql.getMap("SELECT * FROM ORGUSER WHERE EXT5=? or (USERNAME=? AND MOBILE=?)", new Object[] { contactBo.getId(),contactBo.get("NAME"),contactBo.get("MOBILE_PHONE") });
+			  System.out.println("userMap:" +JSON.toJSONString(map));
+			  System.out.println("userMap:" + (map == null));
+
+			  //鐢ㄦ埛琛ㄤ腑鏄�惁宸茬粡瀛樺湪璇ヤ汉
+			  if (map != null) {
+				  System.out.println("鐢ㄦ埛鏇存柊:");
+				  //璇存槑鑱旂郴浜哄�鍚嶆病鏈変慨鏀硅繃
+				  if(contactBo.getString("NAME").equals(map.getString("USERNAME"))) {
+					  SDK.getORGAPI().updateUser(map.getString("USERID"), contactBo.getString("NAME"), "", contactBo.getString("EMAIL"), contactBo.getString("MOBILE_PHONE"), "", "", "", "", contactBo.getId());
+				  }
+				  //鑱旂郴浜哄�鍚嶄慨鏀硅繃浜嗭紝瑕佷慨鏀筓SERID
+				  else {
+					  String userId=getPinYinUserId(contactBo.getString("NAME"));
+					  DBSql.update("UPDATE ORGUSER SET USERID='"+userId+"' WHERE EXT5='"+contactBo.getId()+"'");
+					  UserCache.getCache().reload();
+					  SDK.getORGAPI().updateUser(userId, contactBo.getString("NAME"), "", contactBo.getString("EMAIL"), contactBo.getString("MOBILE_PHONE"), "", "", "", "", contactBo.getId());
+					  contactBo.set("USERID", userId);
+					  SDK.getBOAPI().update(CrmConstant.BO_EU_DNCRM_CONTACT, contactBo);
+				  }
+
+			  } else {
+				  System.out.println("鐢ㄦ埛鏂板�");
+				  String pinYinUserId = getPinYinUserId(contactBo.getString("NAME"));
+				  SDK.getORGAPI().createUser(deptId, pinYinUserId, contactBo.getString("NAME"), roleId, "", "", false, contactBo.getString("EMAIL"), contactBo.getString("MOBILE_PHONE"), "", "", "", "", contactBo.getId());
+				  contactBo.set("USERID", pinYinUserId);
+				  SDK.getBOAPI().update(CrmConstant.BO_EU_DNCRM_CONTACT, contactBo);
+			  }
+
+		  }
+		  //涓昏仈绯讳汉淇濆瓨闇€瑕佸線瀹㈡埛琛ㄥ悓姝ヨ仈绯讳汉鏁版嵁
+		  if(type&&"1".equals(contactBo.getString("IS_PRIMARY_CONTACT"))) {
+			  BO accoutnBo = SDK.getBOAPI().query(CrmConstant.BO_EU_DNCRM_ACCOUNT).detailById(contactBo.getString("ACCOUNT_ID"));
+			  if(null!=accoutnBo) {
+				  accoutnBo.set("CONTACT_NAME", contactBo.get("NAME"));
+				  accoutnBo.set("CONTACT_SUFFIX_ID", contactBo.get("SUFFIX_ID"));
+				  accoutnBo.set("CONTACT_TITLE", contactBo.get("TITLE"));
+				  accoutnBo.set("CONTACT_EMAIL", contactBo.get("EMAIL"));
+				  accoutnBo.set("PHONE", contactBo.get("MOBILE_PHONE"));
+				  accoutnBo.set("ALTERNATE_PHONE1", contactBo.get("PHONE"));
 				  SDK.getBOAPI().update(CrmConstant.BO_EU_DNCRM_ACCOUNT, accoutnBo);
-			   }
-		   }
-		return "";
-    }
-    public String getPinYinUserId(String userName) {
-    	
-  	  	HanyuPinyinOutputFormat hanyuPinyinOutputFormat=new HanyuPinyinOutputFormat();
-  	    String  tempStr=StringUtils.EMPTY;
-  		try {
-  			 tempStr =  PinyinHelper.toHanyuPinyinString(userName, hanyuPinyinOutputFormat, "").replaceAll("\\d+", "");
-  		} catch (BadHanyuPinyinOutputFormatCombination e) {
-  			// TODO Auto-generated catch block
-  			e.printStackTrace();
-  		}
-  		Integer count = DBSql.getInt("SELECT COUNT(1) FROM ORGUSER WHERE USERID LIKE CONCAT(?,'%')", new Object[] {tempStr});
-		if(count>0) {
-			return tempStr+(count+1);
-		}else {
-			return tempStr;
-		}
-    	
-    }
-    
+			  }
+		  }
+		  return "";
+	  }
+	  public String getPinYinUserId(String userName) {
+
+		  HanyuPinyinOutputFormat hanyuPinyinOutputFormat=new HanyuPinyinOutputFormat();
+		  String  tempStr=StringUtils.EMPTY;
+		  try {
+			  tempStr =  PinyinHelper.toHanyuPinyinString(userName, hanyuPinyinOutputFormat, "").replaceAll("\\d+", "");
+		  } catch (BadHanyuPinyinOutputFormatCombination e) {
+			  // TODO Auto-generated catch block
+			  e.printStackTrace();
+		  }
+		  Integer count = DBSql.getInt("SELECT COUNT(1) FROM ORGUSER WHERE USERID LIKE CONCAT(?,'%')", new Object[] {tempStr});
+		  if(count>0) {
+			  return tempStr+(count+1);
+		  }else {
+			  return tempStr;
+		  }
+
+	  }
+
   }
+