97c95c0ea74b8083b54425038edd83af0469fa71.svn-base 4.4 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104
  1. package com.kingdee.shr.compensation.app.integrate;
  2. import java.util.List;
  3. import java.util.Map;
  4. import org.slf4j.Logger;
  5. import org.slf4j.LoggerFactory;
  6. import com.kingdee.bos.BOSException;
  7. import com.kingdee.bos.Context;
  8. import com.kingdee.bos.dao.IObjectPK;
  9. import com.kingdee.bos.util.BOSUuid;
  10. import com.kingdee.eas.base.core.util.EmptyUtil;
  11. import com.kingdee.eas.common.EASBizException;
  12. import com.kingdee.eas.framework.CoreBaseInfo;
  13. import com.kingdee.eas.util.app.DbUtil;
  14. import com.kingdee.shr.cmpdesign.web.handler.BatchAdjustSalaryEntryGridHandler;
  15. import com.kingdee.shr.compensation.util.integrate.CmpIntegrateSqlUtils;
  16. import com.kingdee.shr.compensation.util.integrate.CmpIntegrateUtilsNew;
  17. import com.kingdee.util.NumericExceptionSubItem;
  18. /**
  19. * 广以生成9999表
  20. * @author dengzhouhong
  21. *
  22. */
  23. public class BatchSubmitSchemeBillControllerBeanExt extends BatchSubmitShemeBillControllerBean{
  24. private static Logger logger = LoggerFactory.getLogger(BatchSubmitSchemeBillControllerBeanExt.class);
  25. /**
  26. * 提报项目汇总
  27. */
  28. private static String All_TMP_TABLE="CT_COM_SubmitItemSumEntry";
  29. @Override
  30. public IObjectPK save(Context ctx, CoreBaseInfo model) throws BOSException,
  31. EASBizException {
  32. logger.error("into.BatchSubmitSchemeBillControllerBeanExt.save.method...");
  33. IObjectPK pk = super.save(ctx, model);
  34. BatchSubmitShemeBillInfo info = (BatchSubmitShemeBillInfo)model;
  35. String billId = info.getId().toString();
  36. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.billId:"+billId);
  37. //checkBillExists(ctx, info);
  38. //IObjectPK pk =doSaveOrUpdate(ctx, info);
  39. String submitSchemeId = info.getSubmitScheme().getId().toString();
  40. Map map = CmpIntegrateUtilsNew.getBillColumnListAndBillEntryTableName(ctx, submitSchemeId);//。。。
  41. //动态列的集合
  42. List colNames = (List)map.get("colNames");
  43. List colTypes = (List)map.get("colTypes");
  44. String billEntryTable = map.get("fBillEntryTableName").toString();
  45. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.billEntryTable:"+billEntryTable);
  46. if(!EmptyUtil.isEmpty(billId)&&!EmptyUtil.isEmpty(billId)) {
  47. //先删除当前总表数据在保存,不考虑更新处理
  48. /*String sql ="delete "+All_TMP_TABLE+" where fparentid ='"+billId+"'";
  49. DbUtil.execute(ctx, sql);*/
  50. /*String insertCol = CmpIntegrateSqlUtils.assembleInsertSql(ctx, billEntryTable, colNames, info.getId().toString());
  51. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.insertCol:"+insertCol);
  52. String str = insertCol.split("values")[0];
  53. String fileds = insertCol.substring(str.indexOf("(")+1, str.lastIndexOf(")"));
  54. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.fileds:"+fileds); */
  55. /* String fields01Str = CmpIntegrateUtilsNew.getAssembleField1Sql(ctx, billEntryTable, colNames, info.getId().toString());
  56. String fileds1 = fields01Str.substring(fields01Str.indexOf("(")+1, fields01Str.lastIndexOf(")"));
  57. String fields02Str = CmpIntegrateUtilsNew.getAssembleField2Sql(ctx, billEntryTable, colNames, info.getId().toString());
  58. String fileds2 = fields02Str.substring(fields02Str.indexOf("(")+1, fields02Str.lastIndexOf(")"));
  59. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.fileds1:"+fileds1);
  60. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.fileds2:"+fileds2);
  61. String insertSql="insert into "+All_TMP_TABLE+"("+fileds1+") (select "+fileds2+" from "+billEntryTable+" where fbillid ='"+info.getId().toString()+"')";
  62. */
  63. if(colNames == null){
  64. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.colNames为空");
  65. return pk;
  66. }
  67. //获取该方案的所有项目
  68. List<Map<String,Object>> sValuelist = CmpIntegrateUtilsNew.getAssembleListByCmp(ctx, billEntryTable, colNames, info.getId().toString());
  69. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.sValuelist。size:"+sValuelist.size());
  70. if(sValuelist == null){
  71. logger.error("BatchSubmitSchemeBillControllerBeanExt.save.sValuelist为空");
  72. return pk;
  73. }
  74. for(int i = 0;i<sValuelist.size();i++){
  75. Map<String,Object> sValue = sValuelist.get(i);
  76. //更新提报分录的s值
  77. CmpIntegrateUtilsNew.updateSchemeBillEntryByCmpS(ctx, colNames,sValue);
  78. }
  79. /*logger.error("BatchSubmitSchemeBillControllerBeanExt.save.insertSql:"+insertSql);
  80. //addTempAllTable(ctx, info,All_TMP_TABLE,coll);
  81. DbUtil.execute(ctx, insertSql);*/
  82. }
  83. return pk;
  84. }
  85. }