瀏覽代碼

后台代码提交

yuanzhi_kuang 1 月之前
父節點
當前提交
c4a08b7d28

+ 14 - 8
src/com/kingdee/eas/custom/calcdailypay/task/AutoSubDayDetailFacadeControllerBean.java

@@ -190,14 +190,20 @@ public class AutoSubDayDetailFacadeControllerBean extends AbstractAutoSubDayDeta
     
     
     
-    protected void udpSubmitTime(Context ctx, String billId) throws BOSException {
-    	String sql = "update T_HR_SBatchSubmitShemeBill set FSubmitTime = ? where FID = ?";
-    	Object[] param = new Object[]{new Date((new Date()).getTime()), billId};
-    	DbUtil.execute(ctx, sql, param);
-    }
-		
-		
-		
+//  protected void udpSubmitTime(Context ctx, String billId) throws BOSException {
+//		String sql = "update T_HR_SBatchSubmitShemeBill set FSubmitTime = ? where FID = ?";
+//		Object[] param = new Object[]{new Date((new Date()).getTime()), billId};
+//		DbUtil.execute(ctx, sql, param);
+//	}
+
+	protected void udpSubmitTime(Context ctx, String billId) throws BOSException {
+		String sql = "update T_HR_SBatchSubmitShemeBill set FSubmitTime = ? where FID = ?";
+		// ʹÓÃjava.sql.TimestampÌæ´újava.util.Date
+		Object[] param = new Object[]{new java.sql.Timestamp(System.currentTimeMillis()), billId};
+		DbUtil.execute(ctx, sql, param);
+	}
+
+
 }
 
 

+ 34 - 3
src/com/kingdee/shr/compensation/app/integrate/BatchSubmitShemeBillControllerBeanEx.java

@@ -3,7 +3,7 @@ package com.kingdee.shr.compensation.app.integrate;
  
 import com.kingdee.bos.BOSException;
 import com.kingdee.bos.Context;
- 
+import com.kingdee.bos.util.BOSUuid;
 import com.kingdee.bos.util.EASResource;
 import com.kingdee.eas.common.EASBizException;
 import com.kingdee.eas.hr.base.HRBillStateEnum;
@@ -76,16 +76,46 @@ public class BatchSubmitShemeBillControllerBeanEx extends BatchSubmitShemeBillCo
 		}
 	}
 
-	 
+
 
 	/**
 	 * 设置点检率数据
-	 * @param request
+	 * @param ctx
+	 * @param info
 	 * @param entrys
+	 * @param mesData
 	 */
 	public static void upMesData(Context ctx,BatchSubmitShemeBillInfo info, BatchSubmitShemeBillEntryCollection entrys,  HashMap<String, HashMap> mesData)  {
 		try {
+			//获取方案的字段
+			CalSubmitSchemeInfo calSubmitSchemeInfo  =  info.getSubmitScheme();
+			if(null == calSubmitSchemeInfo) {
+				return;
+			}
+			//提报项目字段提取,用于后面做判断;
+			Set<String> itemSet = new HashSet();
+			String subSchemeId = calSubmitSchemeInfo.getId().toString();
+			CalSubmitSchemeItemCollection calSubmitSchemeItemCollection = CalSubmitSchemeItemFactory.getLocalInstance(ctx).getCalSubmitSchemeItemCollection(" select calSubmitItem.number  where  calSubmitScheme  = '"+subSchemeId+"'" ); 
+			for(int i = 0;i<calSubmitSchemeItemCollection.size();i++) {
+				CalSubmitSchemeItemInfo calSubmitSchemeItemInfo = calSubmitSchemeItemCollection.get(i);
+				CalSubmitItemInfo calSubmitItem = calSubmitSchemeItemInfo.getCalSubmitItem();
+				String  itemNum = calSubmitItem.getNumber();
+				itemSet.add(itemNum);
+			}
+
 			String[] itemNums = SubConstants.ITEMNUMS;
+			//如果itemNums不包含itemSet 说明没有提报项目,则从itemNums中删除此元素;
+			// 使用ArrayList作为中间容器
+			List<String> tempList = new ArrayList<>();
+			for (String item : itemNums) {
+				if (itemSet.contains(item)) {
+					tempList.add(item);
+				}
+			}
+			//如果不存在提报项目则不添加,以免报错
+			itemNums = tempList.toArray(new String[0]);
+			logger.error("日提报赋值的字段"+itemNums.toString());
+
 			if(ObjectUtils.isEmpty(FEILDS)) {
 				FEILDS = SubmitShemeUtils.getFeilds(ctx);
 			}
@@ -124,6 +154,7 @@ public class BatchSubmitShemeBillControllerBeanEx extends BatchSubmitShemeBillCo
 			logger.error("提交赋值成功");
 			//更新MES单据的状态
 			SubmitShemeUtils.updateInspectionRate(ctx, info, checkbillIds);
+			logger.error("点检率状态反写成功");
 		} catch (BOSException e) {
 			e.printStackTrace();
 		}

+ 3 - 0
src/com/kingdee/shr/compensation/app/utils/SubmitShemeUtils.java

@@ -250,6 +250,9 @@ public class SubmitShemeUtils {
 	 */
 	public  static void updateInspectionRate(  Context ctx, BatchSubmitShemeBillInfo info,Set<String> checkbillIds ) {
 		//¸üеã¼ìÂÊÊý¾Ý
+		if(ObjectUtils.isEmpty(checkbillIds) || checkbillIds.size() == 0) {
+			return;
+		}
 		FilterInfo filter = new FilterInfo();
 		filter.getFilterItems().add(new FilterItemInfo("id", checkbillIds, CompareType.INCLUDE));
 		EntityViewInfo viewInfo = new EntityViewInfo( ) ;