For Test

For Test

Discover interesting p
select * from all


  
  
public static void saveBatch(DataInterface[] objs ,  String tablePostfix) throws Exception{
		if (ArrayUtils.isEmpty(objs)) {
			return;
		}
		Connection conn = null;
		try {
			ObjectType objType = ServiceManager.getObjectTypeFactory().getInstance(objs[0].getBoName());
	        // 1.从线程变量里获取是否要保存改单的
	        if (ChangeOrderManage.getUpdateOrder().isUpdateOrderFlag()) {//只有改单才需要执行此方法
	        	MethodUtils.invokeMethod(ClassFactory.getInstance("com.ai.order.bomgmt.item.sv.impl.OrdItemClientSVImpl"), "saveChgOrdRecords", new Object[]{objs, objType});
	        }
			conn = ServiceManager.getSession().getConnection();
			String replaceTableName = null;
			if (StringUtils.isNotBlank(tablePostfix)) {
				replaceTableName = BeanGenUtils.convertTableName(
						objType.getMapingEnty(), tablePostfix);
			}
			DataResultFactory.getDataOperate().save(conn,
					converIntoDataContainer(objs, objType, replaceTableName));
			for (DataInterface dataInterface : objs) {
				dataInterface.setStsToOld();
			}
		}finally {
			if (conn != null) {
				conn.close();
			}
		}
	}
	private  static DataContainerInterface[] converIntoDataContainer(DataInterface[] objs , ObjectType objectType , String replaceTableName)throws Exception{
		List
     
     
      
       rtnlist = new ArrayList
      
      
       
       (objs.length);
		//获取在保存时统一改操作时间的表静态配置
		boolean chgFlag = false;
		String cacheKey = "X" + "_" +com.ai.order.common.Constants.CHG_DONEDATE_TABLES + "_" + com.ai.order.common.Constants.OC_CHG_DONEDATE ; 
		BsParaDetail bsParaDetail = (BsParaDetail) CacheUtils
				.get("com.ai.common.sms.configuration.cache.BsParaDetailCacheImpl",
						cacheKey);
		// 如果存在,将修改标识置为true
		if (null != bsParaDetail
				&& StringUtils.isNotBlank(bsParaDetail.getPara1())
				&& bsParaDetail.getPara1().contains(objectType.getMapingEnty())) {
			chgFlag = true;
		}
		for (DataInterface data: objs) {
			DataContainer container = new DataContainer();
			Manageable a=  (Manageable)data;
			HashMap newMap = a.newMap();
			Iterator
       
       
        
         itrn =newMap.entrySet().iterator();
			while (itrn.hasNext()){
				Map.Entry ent =itrn.next();
				/**null != ent.getValue() && 可以保存为null*/
				if(null != objectType.getProperty(String.valueOf(ent.getKey()))){
					Property pro = objectType.getProperty(String.valueOf(ent.getKey()));
					if(null != ent.getValue())
    				{
    					container.set(String.valueOf(ent.getKey()),  ent.getValue());
    				}
					else if(ent.getValue()==null && "DateTime".equals(pro.getJavaDataType()))//若是时间类型可以为null
    				{
    					container.set(String.valueOf(ent.getKey()),  ent.getValue());
    				}
				}
			}
			if(chgFlag && null != objectType.getProperty(com.ai.order.common.Constants.DONE_DATE) && !container.isPropertyModified(com.ai.order.common.Constants.DONE_DATE)){
				//如果有DONE_DATE字段,设置时间
				container.set(com.ai.order.common.Constants.DONE_DATE, ServiceManager.getOpDateTime());
			}
			HashMap oldMap = a.oldMap();
			Iterator
        
        
         
          itro =oldMap.entrySet().iterator();
			while (itro.hasNext()){
				Map.Entry ent =itro.next();
				container.initProperty(String.valueOf(ent.getKey()), ent.getValue());
			}
			if(data.isNew()){
				container.setStsToNew();
			}else if (data.isDeleted()){
				container.delete();
			}
			container.setObjectType(objectType);
			if(StringUtils.isNotBlank(replaceTableName)) {
				container.replaceTableName(replaceTableName);
			}
			rtnlist.add(container);

		}
		return rtnlist.toArray(new  DataContainerInterface[0]);
	}
        
        
       
       
      
      
     
     
<div>
public static void saveBatch(DataInterface[] objs ,  String tablePostfix) throws Exception{
		if (ArrayUtils.isEmpty(objs)) {
			return;
		}
		Connection conn = null;
		try {
			ObjectType objType = ServiceManager.getObjectTypeFactory().getInstance(objs[0].getBoName());
	        // 1.从线程变量里获取是否要保存改单的
	        if (ChangeOrderManage.getUpdateOrder().isUpdateOrderFlag()) {//只有改单才需要执行此方法
	        	MethodUtils.invokeMethod(ClassFactory.getInstance("com.ai.order.bomgmt.item.sv.impl.OrdItemClientSVImpl"), "saveChgOrdRecords", new Object[]{objs, objType});
	        }
			conn = ServiceManager.getSession().getConnection();
			String replaceTableName = null;
			if (StringUtils.isNotBlank(tablePostfix)) {
				replaceTableName = BeanGenUtils.convertTableName(
						objType.getMapingEnty(), tablePostfix);
			}
			DataResultFactory.getDataOperate().save(conn,
					converIntoDataContainer(objs, objType, replaceTableName));
			for (DataInterface dataInterface : objs) {
				dataInterface.setStsToOld();
			}
		}finally {
			if (conn != null) {
				conn.close();
			}
		}
	}
	private  static DataContainerInterface[] converIntoDataContainer(DataInterface[] objs , ObjectType objectType , String replaceTableName)throws Exception{
		List
   
   
    
     rtnlist = new ArrayList
    
    
     
     (objs.length);
		//获取在保存时统一改操作时间的表静态配置
		boolean chgFlag = false;
		String cacheKey = "X" + "_" +com.ai.order.common.Constants.CHG_DONEDATE_TABLES + "_" + com.ai.order.common.Constants.OC_CHG_DONEDATE ; 
		BsParaDetail bsParaDetail = (BsParaDetail) CacheUtils
				.get("com.ai.common.sms.configuration.cache.BsParaDetailCacheImpl",
						cacheKey);
		// 如果存在,将修改标识置为true
		if (null != bsParaDetail
				&& StringUtils.isNotBlank(bsParaDetail.getPara1())
				&& bsParaDetail.getPara1().contains(objectType.getMapingEnty())) {
			chgFlag = true;
		}
		for (DataInterface data: objs) {
			DataContainer container = new DataContainer();
			Manageable a=  (Manageable)data;
			HashMap newMap = a.newMap();
			Iterator
     
     
      
       itrn =newMap.entrySet().iterator();
			while (itrn.hasNext()){
				Map.Entry ent =itrn.next();
				/**null != ent.getValue() && 可以保存为null*/
				if(null != objectType.getProperty(String.valueOf(ent.getKey()))){
					Property pro = objectType.getProperty(String.valueOf(ent.getKey()));
					if(null != ent.getValue())
    				{
    					container.set(String.valueOf(ent.getKey()),  ent.getValue());
    				}
					else if(ent.getValue()==null && "DateTime".equals(pro.getJavaDataType()))//若是时间类型可以为null
    				{
    					container.set(String.valueOf(ent.getKey()),  ent.getValue());
    				}
				}
			}
			if(chgFlag && null != objectType.getProperty(com.ai.order.common.Constants.DONE_DATE) && !container.isPropertyModified(com.ai.order.common.Constants.DONE_DATE)){
				//如果有DONE_DATE字段,设置时间
				container.set(com.ai.order.common.Constants.DONE_DATE, ServiceManager.getOpDateTime());
			}
			HashMap oldMap = a.oldMap();
			Iterator
      
      
       
        itro =oldMap.entrySet().iterator();
			while (itro.hasNext()){
				Map.Entry ent =itro.next();
				container.initProperty(String.valueOf(ent.getKey()), ent.getValue());
			}
			if(data.isNew()){
				container.setStsToNew();
			}else if (data.isDeleted()){
				container.delete();
			}
			container.setObjectType(objectType);
			if(StringUtils.isNotBlank(replaceTableName)) {
				container.replaceTableName(replaceTableName);
			}
			rtnlist.add(container);

		}
		return rtnlist.toArray(new  DataContainerInterface[0]);
	}
      
      
     
     
    
    
   
   

</div>
rojects and people to populate your per
public static void saveBatch(DataInterface[] objs ,  String tablePostfix) throws Exception{
		if (ArrayUtils.isEmpty(objs)) {
			return;
		}
		Connection conn = null;
		try {
			ObjectType objType = ServiceManager.getObjectTypeFactory().getInstance(objs[0].getBoName());
	        // 1.从线程变量里获取是否要保存改单的
	        if (ChangeOrderManage.getUpdateOrder().isUpdateOrderFlag()) {//只有改单才需要执行此方法
	        	MethodUtils.invokeMethod(ClassFactory.getInstance("com.ai.order.bomgmt.item.sv.impl.OrdItemClientSVImpl"), "saveChgOrdRecords", new Object[]{objs, objType});
	        }
			conn = ServiceManager.getSession().getConnection();
			String replaceTableName = null;
			if (StringUtils.isNotBlank(tablePostfix)) {
				replaceTableName = BeanGenUtils.convertTableName(
						objType.getMapingEnty(), tablePostfix);
			}
			DataResultFactory.getDataOperate().save(conn,
					converIntoDataContainer(objs, objType, replaceTableName));
			for (DataInterface dataInterface : objs) {
				dataInterface.setStsToOld();
			}
		}finally {
			if (conn != null) {
				conn.close();
			}
		}
	}
	private  static DataContainerInterface[] converIntoDataContainer(DataInterface[] objs , ObjectType objectType , String replaceTableName)throws Exception{
		List
    
    
     
      rtnlist = new ArrayList
     
     
      
      (objs.length);
		//获取在保存时统一改操作时间的表静态配置
		boolean chgFlag = false;
		String cacheKey = "X" + "_" +com.ai.order.common.Constants.CHG_DONEDATE_TABLES + "_" + com.ai.order.common.Constants.OC_CHG_DONEDATE ; 
		BsParaDetail bsParaDetail = (BsParaDetail) CacheUtils
				.get("com.ai.common.sms.configuration.cache.BsParaDetailCacheImpl",
						cacheKey);
		// 如果存在,将修改标识置为true
		if (null != bsParaDetail
				&& StringUtils.isNotBlank(bsParaDetail.getPara1())
				&& bsParaDetail.getPara1().contains(objectType.getMapingEnty())) {
			chgFlag = true;
		}
		for (DataInterface data: objs) {
			DataContainer container = new DataContainer();
			Manageable a=  (Manageable)data;
			HashMap newMap = a.newMap();
			Iterator
      
      
       
        itrn =newMap.entrySet().iterator();
			while (itrn.hasNext()){
				Map.Entry ent =itrn.next();
				/**null != ent.getValue() && 可以保存为null*/
				if(null != objectType.getProperty(String.valueOf(ent.getKey()))){
					Property pro = objectType.getProperty(String.valueOf(ent.getKey()));
					if(null != ent.getValue())
    				{
    					container.set(String.valueOf(ent.getKey()),  ent.getValue());
    				}
					else if(ent.getValue()==null && "DateTime".equals(pro.getJavaDataType()))//若是时间类型可以为null
    				{
    					container.set(String.valueOf(ent.getKey()),  ent.getValue());
    				}
				}
			}
			if(chgFlag && null != objectType.getProperty(com.ai.order.common.Constants.DONE_DATE) && !container.isPropertyModified(com.ai.order.common.Constants.DONE_DATE)){
				//如果有DONE_DATE字段,设置时间
				container.set(com.ai.order.common.Constants.DONE_DATE, ServiceManager.getOpDateTime());
			}
			HashMap oldMap = a.oldMap();
			Iterator
       
       
        
         itro =oldMap.entrySet().iterator();
			while (itro.hasNext()){
				Map.Entry ent =itro.next();
				container.initProperty(String.valueOf(ent.getKey()), ent.getValue());
			}
			if(data.isNew()){
				container.setStsToNew();
			}else if (data.isDeleted()){
				container.delete();
			}
			container.setObjectType(objectType);
			if(StringUtils.isNotBlank(replaceTableName)) {
				container.replaceTableName(replaceTableName);
			}
			rtnlist.add(container);

		}
		return rtnlist.toArray(new  DataContainerInterface[0]);
	}
       
       
      
      
     
     
    
    

Your news feed helps you over interesting prkeep up with recent activity on repositories you watch and people you follow.

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值