yuanzhi_kuang 6 mesi fa
parent
commit
aed23f1b50

+ 1 - 1
src/com/kingdee/eas/custom/certification/AutoGenCertificationControllerBean.java

@@ -128,7 +128,7 @@ public class AutoGenCertificationControllerBean extends AbstractAutoGenCertifica
 				.add(new FilterItemInfo("lastUpdateTime", DateUtil.getDateStartTime(startDate), CompareType.GREATER_EQUALS));
 		filterInfo.getFilterItems()
 				.add(new FilterItemInfo("lastUpdateTime", DateUtil.getDateEndTime(endDate), CompareType.LESS_EQUALS));
-		filterInfo.getFilterItems().add(new FilterItemInfo("certificationStatus", "101", CompareType.EQUALS));
+		filterInfo.getFilterItems().add(new FilterItemInfo("certificationStatus", "103", CompareType.NOTEQUALS));
 		filterInfo.getFilterItems().add(new FilterItemInfo("isSign", true , CompareType.EQUALS));
 		filterInfo.getFilterItems().add(new FilterItemInfo("isAutoGen", true, CompareType.EQUALS));
 		filterInfo.getFilterItems().add(new FilterItemInfo("isSend", false, CompareType.EQUALS));

+ 31 - 6
src/com/kingdee/eas/custom/certification/utils/CreateCertification.java

@@ -4,7 +4,10 @@ import com.kingdee.bos.BOSException;
 import com.kingdee.bos.Context;
 import com.kingdee.bos.dao.IObjectPK;
 import com.kingdee.bos.dao.ormapping.ObjectUuidPK;
+import com.kingdee.bos.metadata.function.WfEventListenerStateManager;
 import com.kingdee.bos.util.BOSUuid;
+import com.kingdee.eas.base.permission.UserFactory;
+import com.kingdee.eas.base.permission.UserInfo;
 import com.kingdee.eas.basedata.org.AdminOrgUnitFactory;
 import com.kingdee.eas.basedata.org.AdminOrgUnitInfo;
 import com.kingdee.eas.basedata.org.PositionFactory;
@@ -12,6 +15,7 @@ import com.kingdee.eas.basedata.org.PositionInfo;
 import com.kingdee.eas.basedata.person.PersonInfo;
 import com.kingdee.eas.common.EASBizException;
 import com.kingdee.eas.custom.sendmessage.utils.SendMessageUtils;
+import com.kingdee.eas.framework.CoreBaseInfo;
 import com.kingdee.eas.hr.affair.*;
 import com.kingdee.eas.hr.base.ApproveTypeEnum;
 import com.kingdee.eas.hr.base.EmpPosOrgRelationCollection;
@@ -23,7 +27,6 @@ import com.kingdee.shr.base.syssetting.exception.SHRWebException;
 import com.kingdee.shr.base.syssetting.exception.ShrWebBizException;
 import com.kingdee.shr.certificationservice.*;
 import com.kingdee.shr.certificationservice.app.CertificateBillSource;
-import com.kingdee.shr.certificationservice.app.CertificateBillType;
 import com.kingdee.shr.certificationservice.app.CertificateStatusEnum;
 import com.kingdee.shr.certificationservice.app.CertificationDrawUpMode;
 import com.kingdee.util.StringUtils;
@@ -274,11 +277,14 @@ public class CreateCertification {
 		try {
 			for(int i = 0;i<bills.size();i++) {
 				exeSubmit(ctx,bills.get(i));
+				Thread.sleep(2000);
 			}
 		} catch (BOSException e ) {
 			e.printStackTrace();
 		} catch (EASBizException e) {
 			e.printStackTrace();
+		} catch (InterruptedException e) {
+			e.printStackTrace();
 		}
 	}
 
@@ -291,7 +297,8 @@ public class CreateCertification {
         try {
             IECertificationOptFacade eCertificationOptFacade = ECertificationOptFacadeFactory.getLocalInstance(ctx);
             for (int i = 0; i < billList.size(); i++) {
-                eCertificationOptFacade.createECertification(BOSUuid.read(billList.get(i)), true);
+            	eCertificationOptFacade.createECertification(BOSUuid.read(billList.get(i)), true);
+            	Thread.sleep(2000L);
             }
         } catch (EASBizException var15) {
             logger.error(var15.getMessage(), var15);
@@ -300,7 +307,7 @@ public class CreateCertification {
         } catch (Exception var17) {
             logger.error(var17.getMessage(), var17);
         }
-		// Thread.sleep(3000L);
+		
 
 
     }
@@ -380,10 +387,28 @@ public class CreateCertification {
 	 * 调用submit方法
 	 */
 	public static void exeSubmit(Context ctx, String billId ) throws BOSException, EASBizException {
-		IHRCertificationBill localInstance = HRCertificationBillFactory.getLocalInstance(ctx);
-		HRCertificationBillInfo billInfo = localInstance.getHRCertificationBillInfo(new ObjectUuidPK(billId));
+
 		//提交
-		localInstance.submit(billInfo);
+		try {
+			IHRCertificationBill localInstance = HRCertificationBillFactory.getLocalInstance(ctx);
+			HRCertificationBillInfo billInfo = localInstance.getHRCertificationBillInfo(new ObjectUuidPK(billId));
+//		IObjectPK userId = ctx.getCaller();
+//		UserInfo  user = UserFactory.getLocalInstance(ctx).getUserByID(userId);
+//		billInfo.setAuditor(user);
+			
+			boolean isOpen = WfEventListenerStateManager.getInstance().isEnable();           
+			//开启工作流事务  
+			if(!isOpen) {
+				WfEventListenerStateManager.getInstance().enableEventListener(); 
+			}
+			localInstance.submit(billInfo);
+			   //如果本来工作流服务状态不是关的,将它关掉   
+			if(!isOpen) {
+				WfEventListenerStateManager.getInstance().disableEventListener();    
+			}
+		} catch (Exception var4) {
+			var4.printStackTrace();
+		}
 	}