浏览代码

平衡项目添加字段“是否平衡”,平衡项目数据添加字段“均摊值”

zhangy 2 年之前
父节点
当前提交
23e884dffa

+ 19 - 17
src/main/java/com/steerinfo/ems/trmactitem/controller/TRmActItemController.java

@@ -56,19 +56,19 @@ public class TRmActItemController extends BaseRESTfulController {
 
     @Autowired
     IFormulaService formulaService;
-    
+
     @Autowired
     ITRmActValueService tRmActValueService;
-    
+
     @Autowired
     ITRmBalanceValueService tRmBalanceValueService;
-    
+
     @Autowired
     ITRmPlanValueService tRmPlanValueService;
-    
+
     @Autowired
     ITRmDwValueService tRmDwValueService;
-    
+
     @Autowired
     ITRmDfValueService tRmDfValueService;
 
@@ -101,7 +101,7 @@ public class TRmActItemController extends BaseRESTfulController {
                 parmas.put("energyid", energyid);
             }
         }
-    	
+
     	if(parmas.containsKey("workprocid") && parmas.get("workprocid") != null && !"".equals(parmas.get("workprocid").toString())){
             String workprocid = parmas.get("workprocid").toString();
             if(workprocid.indexOf(",") == -1){
@@ -111,7 +111,7 @@ public class TRmActItemController extends BaseRESTfulController {
                 parmas.put("workprocid", workprocid);
             }
         }
-    	
+
     	if(parmas.containsKey("propertyid") && parmas.get("propertyid") != null && !"".equals(parmas.get("propertyid").toString())){
             String propertyid = parmas.get("propertyid").toString();
             if(propertyid.indexOf(",") == -1){
@@ -126,9 +126,9 @@ public class TRmActItemController extends BaseRESTfulController {
               if(!itemid.startsWith("'")){
               	itemid = "'" + itemid.replaceAll(",", "','").replaceAll(",", "','") + "'";
               }
-              parmas.put("itemid", itemid); 
+              parmas.put("itemid", itemid);
           }
-    	
+
         PageList<TRmActItem> list = tRmActItemService.queryLikeForPage(parmas, pageNum, pageSize);
         return success(list);
     }
@@ -184,6 +184,8 @@ public class TRmActItemController extends BaseRESTfulController {
         TRmActItem  tRmActItem = new TRmActItem();
         tRmActItem.setId(itemid);
         tRmActItem.setItemname(itemname);
+        //是否平衡,默认平衡
+        tRmActItem.setBalflag(maps.get("balflag")!=null ? (String) maps.get("balflag") :"1");
         tRmActItem.setItemdesc(itemdesc);
         tRmActItem.setItemtype(itemtype);
         tRmActItem.setPropertyid(trmenergypropertyId);
@@ -509,7 +511,7 @@ public class TRmActItemController extends BaseRESTfulController {
         PageList<Map<String, Object>> planitemDetalts = tRmActItemService.getPlanitemDetalts(parmas, pageNum, pageSize);
         return  success(planitemDetalts);
     }
-    
+
     @ApiOperation(value = "查询平衡数据")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
@@ -555,7 +557,7 @@ public class TRmActItemController extends BaseRESTfulController {
         PageList<Map<String, Object>> blist = tRmActItemService.getBalanceDataForPage(parmas, pageNum, pageSize);
         return  success(blist);
     }
-    
+
     @ApiOperation(value="重新计算生成项目数据")
     @GetMapping(value = "/reData")
     public RESTfulResult reData(@RequestParam HashMap<String, Object> parmas, String clock, String clocke, String timegranid, String itemtype){
@@ -659,13 +661,13 @@ public class TRmActItemController extends BaseRESTfulController {
               if(!itemid.startsWith("'")){
               	itemid = "'" + itemid.replaceAll(",", "','").replaceAll(",", "','") + "'";
               }
-              parmas.put("itemid", itemid); 
+              parmas.put("itemid", itemid);
           }
-    	
+
         PageList<TRmActItem> list = tRmActItemService.queryLikewForPage(parmas, pageNum, pageSize);
         return success(list);
     }
-    
+
     @ApiOperation(value="获取财务项目列表", notes="分页模糊查询")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
@@ -706,13 +708,13 @@ public class TRmActItemController extends BaseRESTfulController {
               if(!itemid.startsWith("'")){
               	itemid = "'" + itemid.replaceAll(",", "','").replaceAll(",", "','") + "'";
               }
-              parmas.put("itemid", itemid); 
+              parmas.put("itemid", itemid);
           }
-    	
+
         PageList<TRmActItem> list = tRmActItemService.queryLikefForPage(parmas, pageNum, pageSize);
         return success(list);
     }
-    
+
     @ApiOperation(value="获取上报产量确认数据", notes="分页模糊查询")
     @ApiImplicitParams({
             @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),

+ 77 - 60
src/main/java/com/steerinfo/ems/trmactitem/mapper/TRmActItemMapper.xml

@@ -11,6 +11,7 @@
     <result column="ENERGYID" jdbcType="VARCHAR" property="energyid" />
     <result column="UNITID" jdbcType="VARCHAR" property="unitid" />
     <result column="USEFLAG" jdbcType="VARCHAR" property="useflag" />
+    <result column="BALFLAG" jdbcType="VARCHAR" property="balflag" />
     <result column="ISSETTLE" jdbcType="VARCHAR" property="issettle" />
     <result column="DIGITS" jdbcType="DECIMAL" property="digits" />
     <result column="STATE" jdbcType="VARCHAR" property="state" />
@@ -29,21 +30,21 @@
     <result column="RTPITEMID" jdbcType="VARCHAR" property="rtpitemid" />
   </resultMap>
   <sql id="columns">
-    ITEMID, ITEMNAME, ITEMDESC, ITEMTYPE, PROPERTYID, WORKPROCID, ENERGYID, UNITID, USEFLAG, 
-    ISSETTLE, DIGITS, STATE, CLOCK, USERID, MODIFICATIONTIME, DEFAULTVALUE, SHOWNO, ISUP, 
-    FID, ASSOCIATEID, DEFAULMAN, MINTIMEGRANID, SEQNO, BZ
+    ITEMID, ITEMNAME, ITEMDESC, ITEMTYPE, PROPERTYID, WORKPROCID, ENERGYID, UNITID, USEFLAG,
+    ISSETTLE, DIGITS, STATE, CLOCK, USERID, MODIFICATIONTIME, DEFAULTVALUE, SHOWNO, ISUP,
+    FID, ASSOCIATEID, DEFAULMAN, MINTIMEGRANID, SEQNO, BZ,BALFLAG
   </sql>
   <sql id="columns_alias">
-    t.ITEMID, t.ITEMNAME, t.ITEMDESC, t.ITEMTYPE, t.PROPERTYID, t.WORKPROCID, t.ENERGYID, 
-    t.UNITID, t.USEFLAG, t.ISSETTLE, t.DIGITS, t.STATE, t.CLOCK, t.USERID, t.MODIFICATIONTIME, 
-    t.DEFAULTVALUE, t.SHOWNO, t.ISUP, t.FID, t.ASSOCIATEID, t.DEFAULMAN, t.MINTIMEGRANID, 
-    t.SEQNO, t.BZ
+    t.ITEMID, t.ITEMNAME, t.ITEMDESC, t.ITEMTYPE, t.PROPERTYID, t.WORKPROCID, t.ENERGYID,
+    t.UNITID, t.USEFLAG, t.ISSETTLE, t.DIGITS, t.STATE, t.CLOCK, t.USERID, t.MODIFICATIONTIME,
+    t.DEFAULTVALUE, t.SHOWNO, t.ISUP, t.FID, t.ASSOCIATEID, t.DEFAULMAN, t.MINTIMEGRANID,
+    t.SEQNO, t.BZ,t.BALFLAG
   </sql>
   <sql id="select">
-    SELECT <include refid="columns"/> FROM T_RM_ACT_ITEM t 
+    SELECT <include refid="columns"/> FROM T_RM_ACT_ITEM t
   </sql>
   <sql id="select_alias">
-    SELECT <include refid="columns_alias"/> FROM T_RM_ACT_ITEM t 
+    SELECT <include refid="columns_alias"/> FROM T_RM_ACT_ITEM t
   </sql>
   <sql id="where">
     <where>
@@ -71,6 +72,9 @@
       <if test="useflag != null and useflag != ''">
         and USEFLAG = #{useflag}
       </if>
+        <if test="balflag != null and balflag != ''">
+            and BALFLAG = #{balflag}
+        </if>
       <if test="issettle != null and issettle != ''">
         and ISSETTLE = #{issettle}
       </if>
@@ -183,7 +187,7 @@
   </delete>
   <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
     delete from T_RM_ACT_ITEM
-    where 1!=1 
+    where 1!=1
       <if test="itemname != null and itemname != ''">
         or ITEMNAME = #{itemname}
       </if>
@@ -255,23 +259,23 @@
       </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.ems.trmactitem.model.TRmActItem">
-    insert into T_RM_ACT_ITEM (ITEMID, ITEMNAME, ITEMDESC, 
-      ITEMTYPE, PROPERTYID, WORKPROCID, 
-      ENERGYID, UNITID, USEFLAG, 
-      ISSETTLE, DIGITS, STATE, 
-      CLOCK, USERID, MODIFICATIONTIME, 
-      DEFAULTVALUE, SHOWNO, ISUP, 
-      FID, ASSOCIATEID, DEFAULMAN, 
-      MINTIMEGRANID, SEQNO, BZ
+    insert into T_RM_ACT_ITEM (ITEMID, ITEMNAME, ITEMDESC,
+      ITEMTYPE, PROPERTYID, WORKPROCID,
+      ENERGYID, UNITID, USEFLAG,
+      ISSETTLE, DIGITS, STATE,
+      CLOCK, USERID, MODIFICATIONTIME,
+      DEFAULTVALUE, SHOWNO, ISUP,
+      FID, ASSOCIATEID, DEFAULMAN,
+      MINTIMEGRANID, SEQNO, BZ, BALFLAG
       )
-    values (#{itemid,jdbcType=VARCHAR}, #{itemname,jdbcType=VARCHAR}, #{itemdesc,jdbcType=VARCHAR}, 
-      #{itemtype,jdbcType=VARCHAR}, #{propertyid,jdbcType=VARCHAR}, #{workprocid,jdbcType=VARCHAR}, 
-      #{energyid,jdbcType=VARCHAR}, #{unitid,jdbcType=VARCHAR}, #{useflag,jdbcType=VARCHAR}, 
-      #{issettle,jdbcType=VARCHAR}, #{digits,jdbcType=DECIMAL}, #{state,jdbcType=VARCHAR}, 
-      #{clock,jdbcType=VARCHAR}, #{userid,jdbcType=VARCHAR}, #{modificationtime,jdbcType=VARCHAR}, 
-      #{defaultvalue,jdbcType=DECIMAL}, #{showno,jdbcType=DECIMAL}, #{isup,jdbcType=VARCHAR}, 
-      #{fid,jdbcType=VARCHAR}, #{associateid,jdbcType=VARCHAR}, #{defaulman,jdbcType=VARCHAR}, 
-      #{mintimegranid,jdbcType=VARCHAR}, #{seqno,jdbcType=DECIMAL}, #{bz,jdbcType=VARCHAR}
+    values (#{itemid,jdbcType=VARCHAR}, #{itemname,jdbcType=VARCHAR}, #{itemdesc,jdbcType=VARCHAR},
+      #{itemtype,jdbcType=VARCHAR}, #{propertyid,jdbcType=VARCHAR}, #{workprocid,jdbcType=VARCHAR},
+      #{energyid,jdbcType=VARCHAR}, #{unitid,jdbcType=VARCHAR}, #{useflag,jdbcType=VARCHAR},
+      #{issettle,jdbcType=VARCHAR}, #{digits,jdbcType=DECIMAL}, #{state,jdbcType=VARCHAR},
+      #{clock,jdbcType=VARCHAR}, #{userid,jdbcType=VARCHAR}, #{modificationtime,jdbcType=VARCHAR},
+      #{defaultvalue,jdbcType=DECIMAL}, #{showno,jdbcType=DECIMAL}, #{isup,jdbcType=VARCHAR},
+      #{fid,jdbcType=VARCHAR}, #{associateid,jdbcType=VARCHAR}, #{defaulman,jdbcType=VARCHAR},
+      #{mintimegranid,jdbcType=VARCHAR}, #{seqno,jdbcType=DECIMAL}, #{bz,jdbcType=VARCHAR}, #{balflag,jdbcType=VARCHAR}
       )
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.ems.trmactitem.model.TRmActItem">
@@ -349,6 +353,9 @@
       <if test="bz != null">
         BZ,
       </if>
+        <if test="balflag != null">
+            BALFLAG,
+        </if>
     </trim>
     <trim prefix="values (" suffix=")" suffixOverrides=",">
       <if test="itemid != null">
@@ -423,6 +430,9 @@
       <if test="bz != null">
         #{bz,jdbcType=VARCHAR},
       </if>
+        <if test="balflag != null">
+        #{balflag,jdbcType=VARCHAR},
+        </if>
     </trim>
   </insert>
   <update id="updateByPrimaryKey" parameterType="com.steerinfo.ems.trmactitem.model.TRmActItem">
@@ -449,7 +459,8 @@
       DEFAULMAN = #{defaulman,jdbcType=VARCHAR},
       MINTIMEGRANID = #{mintimegranid,jdbcType=VARCHAR},
       SEQNO = #{seqno,jdbcType=DECIMAL},
-      BZ = #{bz,jdbcType=VARCHAR}
+      BZ = #{bz,jdbcType=VARCHAR},
+      BALFLAG = #{balflag,jdbcType=VARCHAR}
     where ITEMID = #{itemid,jdbcType=VARCHAR}
   </update>
   <update id="updateByPrimaryKeySelective" parameterType="com.steerinfo.ems.trmactitem.model.TRmActItem">
@@ -524,6 +535,9 @@
       <if test="bz != null">
         BZ = #{bz,jdbcType=VARCHAR},
       </if>
+        <if test="balflag != null">
+            BALFLAG = #{balflag,jdbcType=VARCHAR},
+        </if>
     </set>
     where ITEMID = #{itemid,jdbcType=VARCHAR}
   </update>
@@ -542,27 +556,27 @@
 	order by showno,energyid
   </select>
   <insert id="batchInsert" parameterType="java.util.List">
-    insert into T_RM_ACT_ITEM 
-      (ITEMID, 
-      ITEMNAME, ITEMDESC, ITEMTYPE, 
-      PROPERTYID, WORKPROCID, ENERGYID, 
-      UNITID, USEFLAG, ISSETTLE, 
-      DIGITS, STATE, CLOCK, 
-      USERID, MODIFICATIONTIME, DEFAULTVALUE, 
-      SHOWNO, ISUP, FID, 
-      ASSOCIATEID, DEFAULMAN, MINTIMEGRANID, 
+    insert into T_RM_ACT_ITEM
+      (ITEMID,
+      ITEMNAME, ITEMDESC, ITEMTYPE,
+      PROPERTYID, WORKPROCID, ENERGYID,
+      UNITID, USEFLAG, ISSETTLE,
+      DIGITS, STATE, CLOCK,
+      USERID, MODIFICATIONTIME, DEFAULTVALUE,
+      SHOWNO, ISUP, FID,
+      ASSOCIATEID, DEFAULMAN, MINTIMEGRANID,
       SEQNO, BZ)
-    ( <foreach collection="list" item="item" separator="union all"> 
-   select  
-      #{item.itemid,jdbcType=VARCHAR}, 
-      #{item.itemname,jdbcType=VARCHAR}, #{item.itemdesc,jdbcType=VARCHAR}, #{item.itemtype,jdbcType=VARCHAR}, 
-      #{item.propertyid,jdbcType=VARCHAR}, #{item.workprocid,jdbcType=VARCHAR}, #{item.energyid,jdbcType=VARCHAR}, 
-      #{item.unitid,jdbcType=VARCHAR}, #{item.useflag,jdbcType=VARCHAR}, #{item.issettle,jdbcType=VARCHAR}, 
-      #{item.digits,jdbcType=DECIMAL}, #{item.state,jdbcType=VARCHAR}, #{item.clock,jdbcType=VARCHAR}, 
-      #{item.userid,jdbcType=VARCHAR}, #{item.modificationtime,jdbcType=VARCHAR}, #{item.defaultvalue,jdbcType=DECIMAL}, 
-      #{item.showno,jdbcType=DECIMAL}, #{item.isup,jdbcType=VARCHAR}, #{item.fid,jdbcType=VARCHAR}, 
-      #{item.associateid,jdbcType=VARCHAR}, #{item.defaulman,jdbcType=VARCHAR}, #{item.mintimegranid,jdbcType=VARCHAR}, 
-      #{item.seqno,jdbcType=DECIMAL}, #{item.bz,jdbcType=VARCHAR} from dual  
+    ( <foreach collection="list" item="item" separator="union all">
+   select
+      #{item.itemid,jdbcType=VARCHAR},
+      #{item.itemname,jdbcType=VARCHAR}, #{item.itemdesc,jdbcType=VARCHAR}, #{item.itemtype,jdbcType=VARCHAR},
+      #{item.propertyid,jdbcType=VARCHAR}, #{item.workprocid,jdbcType=VARCHAR}, #{item.energyid,jdbcType=VARCHAR},
+      #{item.unitid,jdbcType=VARCHAR}, #{item.useflag,jdbcType=VARCHAR}, #{item.issettle,jdbcType=VARCHAR},
+      #{item.digits,jdbcType=DECIMAL}, #{item.state,jdbcType=VARCHAR}, #{item.clock,jdbcType=VARCHAR},
+      #{item.userid,jdbcType=VARCHAR}, #{item.modificationtime,jdbcType=VARCHAR}, #{item.defaultvalue,jdbcType=DECIMAL},
+      #{item.showno,jdbcType=DECIMAL}, #{item.isup,jdbcType=VARCHAR}, #{item.fid,jdbcType=VARCHAR},
+      #{item.associateid,jdbcType=VARCHAR}, #{item.defaulman,jdbcType=VARCHAR}, #{item.mintimegranid,jdbcType=VARCHAR},
+      #{item.seqno,jdbcType=DECIMAL}, #{item.bz,jdbcType=VARCHAR} from dual
    </foreach> )
   </insert>
   <update id="batchUpdate" parameterType="java.util.List">
@@ -664,14 +678,14 @@
        <foreach collection="list" item="item" index="index" separator=" " open="case ITEMID" close="end">
           when #{item.itemid,jdbcType=VARCHAR} then #{item.bz,jdbcType=VARCHAR}
        </foreach>
-     where ITEMID in 
+     where ITEMID in
      <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
     #{item.itemid,jdbcType=VARCHAR}
-     </foreach> 
+     </foreach>
   </update>
   <delete id="batchDelete" parameterType="java.util.List">
     delete from T_RM_ACT_ITEM
-    where ITEMID in 
+    where ITEMID in
     <foreach collection="list" item="id" open="(" close=")" separator=",">
       #{id}
     </foreach>
@@ -798,10 +812,10 @@
      </where>
      order by seqno
     </select>
-    
+
     <!-- 获取实绩项目信息,按seqno排序 -->
     <select id="selectActr" resultMap="BaseResultMap" parameterType="java.util.HashMap">
-    select ITEMID, ITEMNAME, ITEMDESC, ITEMTYPE, PROPERTYID, WORKPROCID, ENERGYID, UNITID, 
+    select ITEMID, ITEMNAME, ITEMDESC, ITEMTYPE, PROPERTYID, WORKPROCID, ENERGYID, UNITID,
     USEFLAG, SEQNO, ISSETTLE, DIGITS,STATE,CLOCK,USERID,MODIFICATIONTIME,DEFAULTVALUE, FID,
     DEFAULMAN,MINTIMEGRANID, ISUP
     from T_RM_ACT_ITEM
@@ -859,7 +873,7 @@
 	    </where>
      order by seqno
     </select>
-    
+
     <!--供需项目数据维护结果区-->
     <select id="getBalanceData" parameterType="java.util.HashMap" resultType = "Map">
         SELECT  t.*, r.apportvalue rav FROM VM_BALANCEITEM_DETAIL t left join VM_ACTITEM_DETAILTS r
@@ -893,6 +907,9 @@
             <if test="itemdesc != null and itemdesc != ''">
                and t.itemdesc like '%${itemdesc}%'
             </if>
+            <if test="balflag != null and balflag != ''">
+                and t.balflag = #{balflag}
+            </if>
             <if test="measureid != null and measureid != ''">
                 and exists
                 (select id from FORMULA where sourcecode like '%[${measureid}]%' and code = t.itemid)
@@ -900,33 +917,33 @@
         </where>
         order by t.showno asc
     </select>
-    
+
     <select id="queryLikew" parameterType="java.util.HashMap" resultMap="BaseResultMap">
         <include refid="select_alias"/>
         left join T_RM_WORKPROC w on t.workprocid = w.id
         <include refid="whereLike"/>
         order by w.seqno, t.showno
     </select>
-    
+
     <select id="queryLikef" parameterType="java.util.HashMap" resultMap="BaseResultMap">
         <include refid="select_alias"/>
         left join T_RM_WORKPROC w on t.workprocid = w.id
         <include refid="whereLike"/>
         order by w.seqno, t.showno
     </select>
-    
+
     <!-- 上报关联产量查询  -->
     <select id="getProItems" resultType = "Map">
-        select substr(it,0, instr(it||'/','/')-1) itemid,substr(it,instr(it||'/','/')) rate from 
+        select substr(it,0, instr(it||'/','/')-1) itemid,substr(it,instr(it||'/','/')) rate from
         (select distinct(fid) it from T_RM_ACT_ITEM where itemtype='W' and fid is not null and useflag='1' and state='1')
     </select>
-    
+
     <!-- 上报关联能耗查询  -->
     <select id="getAssItems" resultType = "Map">
-        select substr(it,0, instr(it||'/','/')-1) itemid,substr(it,instr(it||'/','/')) rate from 
+        select substr(it,0, instr(it||'/','/')-1) itemid,substr(it,instr(it||'/','/')) rate from
         (select distinct(associateid) it from T_RM_ACT_ITEM where itemtype='W' and associateid is not null and useflag='1')
     </select>
-    
+
     <!-- 获取上报关联产量列表  -->
     <select id="listpv" parameterType="java.util.HashMap" resultType = "Map">
     select t.clock,t.timegranid,t.apportvalue, apportvalue,p.itemname,t.itemid,p.workprocid,

+ 15 - 2
src/main/java/com/steerinfo/ems/trmactitem/model/TRmActItem.java

@@ -58,6 +58,11 @@ public class TRmActItem implements IBasePO<String> {
     @ApiModelProperty(value="是否启用",required=false)
     private String useflag;
 
+    /**
+     * 是否平衡
+     */
+    @ApiModelProperty(value="是否平衡",required=false)
+    private String balflag;
     /**
      * 用于结算(ISSETTLE,VARCHAR,1)
      */
@@ -352,7 +357,15 @@ public class TRmActItem implements IBasePO<String> {
 		this.seqno = seqno;
 	}
 
-	@Override
+    public String getBalflag() {
+        return balflag;
+    }
+
+    public void setBalflag(String balflag) {
+        this.balflag = balflag;
+    }
+
+    @Override
     public String toString() {
         StringBuilder sb = new StringBuilder();
         sb.append(getClass().getSimpleName());
@@ -386,4 +399,4 @@ public class TRmActItem implements IBasePO<String> {
         sb.append("]");
         return sb.toString();
     }
-}
+}

+ 12 - 10
src/main/java/com/steerinfo/ems/trmbalancevalue/controller/TRmBalanceValueController.java

@@ -73,7 +73,7 @@ public class TRmBalanceValueController extends BaseRESTfulController {
         PageList<TRmBalanceValue> list = tRmBalanceValueService.queryLikeForPage(parmas, pageNum, pageSize);
         return success(list);
     }
-    
+
     @ApiOperation(value="创建", notes="根据TRmBalanceValue对象创建")
     @ApiImplicitParam(name = "tRmBalanceValue", value = "详细实体tRmBalanceValue", required = true, dataType = "TRmBalanceValue")
     //@RequiresPermissions("trmbalancevalue:create")
@@ -151,7 +151,7 @@ public class TRmBalanceValueController extends BaseRESTfulController {
         tRmBalanceValueService.delete(m);
         return success();
     }
-    
+
     @ApiOperation(value="获得平衡表数据维护数据", notes="能源平衡管理-左边窗口查询")
     @ApiImplicitParams({
         @ApiImplicitParam(name = "pageNum", value = "查询页数", required = false, dataType = "Integer"),
@@ -184,7 +184,7 @@ public class TRmBalanceValueController extends BaseRESTfulController {
         for(int i = 0;i < model.length;i++){
         	TRmActItem ta = tRmActItemService.getById(model[i].getItemid());
             if(ta == null){
-                return  failed(null,"项目不存在");  
+                return  failed(null,"项目不存在");
             }
             HashMap<String, Object> m = new HashMap<String, Object>();
             m.put("clock", model[i].getClock());
@@ -216,17 +216,19 @@ public class TRmBalanceValueController extends BaseRESTfulController {
                 logger.error("主键(id:" + model[i].getItemid() + "时间粒度:" + model[i].getTimegranid() + "时间:" + model[i].getClock() + ")计算值不能修改");
                 continue;
             }
-            if (model[i].getActualvalue().add(model[i].getCorrectvalue()).compareTo(model[i].getApportvalue()) != 0) {
-                failnum++;
-                logger.error("主键(id:" + model[i].getItemid() + "时间粒度:" + model[i].getTimegranid() + "时间:" + model[i].getClock() + ")数据数值错误,最终值 = 计算值 + 修正值");
-                continue;
-            }
+//            if (model[i].getActualvalue().add(model[i].getCorrectvalue()).compareTo(model[i].getApportvalue()) != 0) {
+//                failnum++;
+//                logger.error("主键(id:" + model[i].getItemid() + "时间粒度:" + model[i].getTimegranid() + "时间:" + model[i].getClock() + ")数据数值错误,最终值 = 计算值 + 修正值");
+//                continue;
+//            }
             try{
                 logger.info("修改前数据是" + t.toString());
                 t.setUserid(userId);
                 t.setUptime(DateUtils.dateStr(new Date(),"yyyy-MM-dd HH:mm:ss"));
                 t.setApportvalue(model[i].getApportvalue());
                 t.setCorrectvalue(model[i].getCorrectvalue());
+                //分摊值保存
+                t.setFtv(model[i].getFtv());
                 Map<String, BigDecimal> dh = tRmWorkprocProductValueService.getOutPut(ta.getWorkprocid(), model[i].getClock(), model[i].getTimegranid(), "R");
                 //实绩产量
                 Double  sjcl  = dh.get("SJCL").doubleValue();
@@ -245,7 +247,7 @@ public class TRmBalanceValueController extends BaseRESTfulController {
         }
         return success();
     }
-    
+
     @ApiOperation(value="批量重新计算", notes="根据url的id来指定更新对象,并根据传过来的TRmActValue信息来更新详细信息")
     @ApiImplicitParam(name = "TRmBalanceValue", value = "详细实体TRmBalanceValue", required = true, dataType = "TRmBalanceValue")
     @PutMapping(value = "/batchCompute", produces  = "application/json;charset=UTF-8")
@@ -259,7 +261,7 @@ public class TRmBalanceValueController extends BaseRESTfulController {
     	}
     	return success();
     }
-    
+
     @GetMapping("/getitem")
     public RESTfulResult getitem(@RequestParam HashMap<String,Object> parmas) {
     	List<Map<String, Object>> item = tRmBalanceValueService.getItem(parmas);

+ 55 - 51
src/main/java/com/steerinfo/ems/trmbalancevalue/mapper/TRmBalanceValueMapper.xml

@@ -22,16 +22,17 @@
     <result column="USERID" jdbcType="VARCHAR" property="userid" />
     <result column="UPTIME" jdbcType="VARCHAR" property="uptime" />
     <result column="CRMAN" jdbcType="VARCHAR" property="crman" />
+    <result column="FTV" jdbcType="DECIMAL" property="ftv" />
   </resultMap>
   <sql id="columns">
-    CLOCK, ITEMID, TIMEGRANID, ACTUALVALUE, CORRECTVALUE, APPORTVALUE, STDVALUE, SUMVALUE, 
-    SUMSTDVALUE, REC_TIME, TEAMSORT, MODIFYFLAG, ISLOCK, LOCKID, UCVALUE, SUMUCVALUE, 
-    FID, USERID, UPTIME, CRMAN
+    CLOCK, ITEMID, TIMEGRANID, ACTUALVALUE, CORRECTVALUE, APPORTVALUE, STDVALUE, SUMVALUE,
+    SUMSTDVALUE, REC_TIME, TEAMSORT, MODIFYFLAG, ISLOCK, LOCKID, UCVALUE, SUMUCVALUE,
+    FID, USERID, UPTIME, CRMAN, FTV
   </sql>
   <sql id="columns_alias">
-    t.CLOCK, t.ITEMID, t.TIMEGRANID, t.ACTUALVALUE, t.CORRECTVALUE, t.APPORTVALUE, t.STDVALUE, 
-    t.SUMVALUE, t.SUMSTDVALUE, t.REC_TIME, t.TEAMSORT, t.MODIFYFLAG, t.ISLOCK, t.LOCKID, 
-    t.UCVALUE, t.SUMUCVALUE, t.FID, t.USERID, t.UPTIME, t.CRMAN
+    t.CLOCK, t.ITEMID, t.TIMEGRANID, t.ACTUALVALUE, t.CORRECTVALUE, t.APPORTVALUE, t.STDVALUE,
+    t.SUMVALUE, t.SUMSTDVALUE, t.REC_TIME, t.TEAMSORT, t.MODIFYFLAG, t.ISLOCK, t.LOCKID,
+    t.UCVALUE, t.SUMUCVALUE, t.FID, t.USERID, t.UPTIME, t.CRMAN, t.FTV
   </sql>
   <sql id="select">
     SELECT <include refid="columns"/> FROM T_RM_BALANCE_VALUE
@@ -40,7 +41,7 @@
     SELECT <include refid="columns_alias"/> FROM T_RM_BALANCE_VALUE t
   </sql>
   <sql id="where">
-    <where> 
+    <where>
       <if test="itemid != null and itemid != ''">
         and ITEMID = #{itemid}
       </if>
@@ -101,7 +102,7 @@
     </where>
   </sql>
   <sql id="whereLike">
-    <where> 
+    <where>
       <if test="itemid != null and itemid != ''">
         and ITEMID LIKE '%${itemid}%'
       </if>
@@ -169,7 +170,7 @@
   </delete>
   <delete id="deleteBySelectiveElement" parameterType="java.util.HashMap">
     delete from T_RM_BALANCE_VALUE
-    where 1!=1 
+    where 1!=1
       <if test="itemid != null and itemid != ''">
         or ITEMID = #{itemid}
       </if>
@@ -229,20 +230,20 @@
       </if>
   </delete>
   <insert id="insert" parameterType="com.steerinfo.ems.trmbalancevalue.model.TRmBalanceValue">
-    insert into T_RM_BALANCE_VALUE (CLOCK, ITEMID, TIMEGRANID, 
-      ACTUALVALUE, CORRECTVALUE, APPORTVALUE, 
-      STDVALUE, SUMVALUE, SUMSTDVALUE, 
-      REC_TIME, TEAMSORT, MODIFYFLAG, 
-      ISLOCK, LOCKID, UCVALUE, 
-      SUMUCVALUE, FID, USERID, 
-      UPTIME, CRMAN)
-    values (#{clock,jdbcType=VARCHAR}, #{itemid,jdbcType=VARCHAR}, #{timegranid,jdbcType=VARCHAR}, 
-      #{actualvalue,jdbcType=DECIMAL}, #{correctvalue,jdbcType=DECIMAL}, #{apportvalue,jdbcType=DECIMAL}, 
-      #{stdvalue,jdbcType=DECIMAL}, #{sumvalue,jdbcType=DECIMAL}, #{sumstdvalue,jdbcType=DECIMAL}, 
-      #{recTime,jdbcType=VARCHAR}, #{teamsort,jdbcType=VARCHAR}, #{modifyflag,jdbcType=DECIMAL}, 
-      #{islock,jdbcType=VARCHAR}, #{lockid,jdbcType=VARCHAR}, #{ucvalue,jdbcType=DECIMAL}, 
-      #{sumucvalue,jdbcType=DECIMAL}, #{fid,jdbcType=VARCHAR}, #{userid,jdbcType=VARCHAR}, 
-      #{uptime,jdbcType=VARCHAR}, #{crman,jdbcType=VARCHAR})
+    insert into T_RM_BALANCE_VALUE (CLOCK, ITEMID, TIMEGRANID,
+      ACTUALVALUE, CORRECTVALUE, APPORTVALUE,
+      STDVALUE, SUMVALUE, SUMSTDVALUE,
+      REC_TIME, TEAMSORT, MODIFYFLAG,
+      ISLOCK, LOCKID, UCVALUE,
+      SUMUCVALUE, FID, USERID,
+      UPTIME, CRMAN, FTV)
+    values (#{clock,jdbcType=VARCHAR}, #{itemid,jdbcType=VARCHAR}, #{timegranid,jdbcType=VARCHAR},
+      #{actualvalue,jdbcType=DECIMAL}, #{correctvalue,jdbcType=DECIMAL}, #{apportvalue,jdbcType=DECIMAL},
+      #{stdvalue,jdbcType=DECIMAL}, #{sumvalue,jdbcType=DECIMAL}, #{sumstdvalue,jdbcType=DECIMAL},
+      #{recTime,jdbcType=VARCHAR}, #{teamsort,jdbcType=VARCHAR}, #{modifyflag,jdbcType=DECIMAL},
+      #{islock,jdbcType=VARCHAR}, #{lockid,jdbcType=VARCHAR}, #{ucvalue,jdbcType=DECIMAL},
+      #{sumucvalue,jdbcType=DECIMAL}, #{fid,jdbcType=VARCHAR}, #{userid,jdbcType=VARCHAR},
+      #{uptime,jdbcType=VARCHAR}, #{crman,jdbcType=VARCHAR}), #{item.ftv,jdbcType=DECIMAL}
   </insert>
   <insert id="insertSelective" parameterType="com.steerinfo.ems.trmbalancevalue.model.TRmBalanceValue">
     insert into T_RM_BALANCE_VALUE
@@ -448,6 +449,9 @@
       <if test="crman != null">
         CRMAN = #{crman,jdbcType=VARCHAR},
       </if>
+      <if test="ftv != null">
+        FTV = #{ftv,jdbcType=DECIMAL},
+      </if>
     </set>
     where CLOCK = #{clock,jdbcType=VARCHAR}
       and ITEMID = #{itemid,jdbcType=VARCHAR}
@@ -468,25 +472,25 @@
     <include refid="whereLike"/>
   </select>
   <insert id="batchInsert" parameterType="java.util.List">
-    insert into T_RM_BALANCE_VALUE 
-      (CLOCK, 
-      ITEMID, TIMEGRANID, ACTUALVALUE, 
-      CORRECTVALUE, APPORTVALUE, STDVALUE, 
-      SUMVALUE, SUMSTDVALUE, REC_TIME, 
-      TEAMSORT, MODIFYFLAG, ISLOCK, 
-      LOCKID, UCVALUE, SUMUCVALUE, 
-      FID, USERID, UPTIME, 
+    insert into T_RM_BALANCE_VALUE
+      (CLOCK,
+      ITEMID, TIMEGRANID, ACTUALVALUE,
+      CORRECTVALUE, APPORTVALUE, STDVALUE,
+      SUMVALUE, SUMSTDVALUE, REC_TIME,
+      TEAMSORT, MODIFYFLAG, ISLOCK,
+      LOCKID, UCVALUE, SUMUCVALUE,
+      FID, USERID, UPTIME, FTV,
       CRMAN)
-    ( <foreach collection="list" item="item" separator="union all"> 
-   select  
-      #{item.clock,jdbcType=VARCHAR}, 
-      #{item.itemid,jdbcType=VARCHAR}, #{item.timegranid,jdbcType=VARCHAR}, #{item.actualvalue,jdbcType=DECIMAL}, 
-      #{item.correctvalue,jdbcType=DECIMAL}, #{item.apportvalue,jdbcType=DECIMAL}, #{item.stdvalue,jdbcType=DECIMAL}, 
-      #{item.sumvalue,jdbcType=DECIMAL}, #{item.sumstdvalue,jdbcType=DECIMAL}, #{item.recTime,jdbcType=VARCHAR}, 
-      #{item.teamsort,jdbcType=VARCHAR}, #{item.modifyflag,jdbcType=DECIMAL}, #{item.islock,jdbcType=VARCHAR}, 
-      #{item.lockid,jdbcType=VARCHAR}, #{item.ucvalue,jdbcType=DECIMAL}, #{item.sumucvalue,jdbcType=DECIMAL}, 
-      #{item.fid,jdbcType=VARCHAR}, #{item.userid,jdbcType=VARCHAR}, #{item.uptime,jdbcType=VARCHAR}, 
-      #{item.crman,jdbcType=VARCHAR} from dual  
+    ( <foreach collection="list" item="item" separator="union all">
+   select
+      #{item.clock,jdbcType=VARCHAR},
+      #{item.itemid,jdbcType=VARCHAR}, #{item.timegranid,jdbcType=VARCHAR}, #{item.actualvalue,jdbcType=DECIMAL},
+      #{item.correctvalue,jdbcType=DECIMAL}, #{item.apportvalue,jdbcType=DECIMAL}, #{item.stdvalue,jdbcType=DECIMAL},
+      #{item.sumvalue,jdbcType=DECIMAL}, #{item.sumstdvalue,jdbcType=DECIMAL}, #{item.recTime,jdbcType=VARCHAR},
+      #{item.teamsort,jdbcType=VARCHAR}, #{item.modifyflag,jdbcType=DECIMAL}, #{item.islock,jdbcType=VARCHAR},
+      #{item.lockid,jdbcType=VARCHAR}, #{item.ucvalue,jdbcType=DECIMAL}, #{item.sumucvalue,jdbcType=DECIMAL},
+      #{item.fid,jdbcType=VARCHAR}, #{item.userid,jdbcType=VARCHAR}, #{item.uptime,jdbcType=VARCHAR}, #{item.ftv,jdbcType=DECIMAL},
+      #{item.crman,jdbcType=VARCHAR} from dual
    </foreach> )
   </insert>
   <update id="batchUpdate" parameterType="java.util.List">
@@ -572,14 +576,14 @@
        <foreach collection="list" item="item" index="index" separator=" " open="case CLOCK" close="end">
           when #{item.clock,jdbcType=VARCHAR} then #{item.crman,jdbcType=VARCHAR}
        </foreach>
-     where CLOCK in 
+     where CLOCK in
      <foreach collection="list" index="index" item="item" separator="," open="(" close=")">
     #{item.clock,jdbcType=VARCHAR}
-     </foreach> 
+     </foreach>
   </update>
   <delete id="batchDelete" parameterType="java.util.List">
     delete from T_RM_BALANCE_VALUE
-    where CLOCK in 
+    where CLOCK in
     <foreach collection="list" item="id" open="(" close=")" separator=",">
       #{id}
     </foreach>
@@ -661,7 +665,7 @@
         inner JOIN t_rm_energy_property tp ON ta.PROPERTYID = tp.id
       ORDER BY ta.SHOWNO
     </select>
-    
+
     <!-- 获取每月的累积值 -->
     <select id="getSumvalue" parameterType="java.util.HashMap" resultType="double">
         select nvl(sum(apportvalue),0) from T_RM_BALANCE_VALUE
@@ -677,7 +681,7 @@
             </if>
         </where>
     </select>
-    
+
     <!--计算累计值2(计算日期小于参数值的累计值)-->
     <select id="getSumvalue2" parameterType="java.util.HashMap" resultType="double">
         SELECT nvl(SUM(APPORTVALUE),0) FROM T_RM_BALANCE_VALUE
@@ -696,15 +700,15 @@
             </if>
         </where>
     </select>
-    
+
     <select id="getItem" parameterType="java.util.HashMap" resultType="Map">
 			select ta.itemname,tv.TIMEGRANID,tv.CLOCK,tv.APPORTVALUE
 			    FROM  T_RM_ACT_ITEM ta
 				INNER JOIN
 			   T_RM_ACT_VALUE tv
-				on ta.itemid = tv.itemid 
+				on ta.itemid = tv.itemid
 				INNER JOIN
-				T_RM_WORKPROC tw 
+				T_RM_WORKPROC tw
 				on ta.WORKPROCID = tw.id
 				<where>
 				 <if test="clock!= null and clock!=''">
@@ -717,10 +721,10 @@
 					and tw.NODE !='1'
 				</where>
     </select>
-    
+
   <!-- 获取数据条数 -->
   <select id="getCount" parameterType="java.util.HashMap" resultType="java.lang.Integer">
     select count(1) from T_RM_BALANCE_VALUE
     <include refid="where"/>
   </select>
-</mapper>
+</mapper>

+ 16 - 3
src/main/java/com/steerinfo/ems/trmbalancevalue/model/TRmBalanceValue.java

@@ -35,6 +35,11 @@ public class TRmBalanceValue implements IBasePO<HashMap<String, Object>> {
      */
     @ApiModelProperty(value="修正值",required=true)
     private BigDecimal correctvalue;
+    /**
+     * 分摊值(ftv,DECIMAL,30)
+     */
+    @ApiModelProperty(value="分摊值",required=true)
+    private BigDecimal ftv;
 
     /**
      * 最终值(APPORTVALUE,DECIMAL,30)
@@ -101,7 +106,7 @@ public class TRmBalanceValue implements IBasePO<HashMap<String, Object>> {
      */
     @ApiModelProperty(value="累计单耗值",required=true)
     private BigDecimal sumucvalue;
-    
+
     /**
      * 父项目ID(FID,VARCHAR,40)
      */
@@ -285,7 +290,15 @@ public class TRmBalanceValue implements IBasePO<HashMap<String, Object>> {
 		this.crman = crman;
 	}
 
-	@Override
+    public BigDecimal getFtv() {
+        return ftv!=null?ftv:BigDecimal.ZERO;
+    }
+
+    public void setFtv(BigDecimal ftv) {
+        this.ftv = ftv;
+    }
+
+    @Override
     public String toString() {
 		StringBuilder sb = new StringBuilder();
         sb.append(getClass().getSimpleName());
@@ -331,4 +344,4 @@ public class TRmBalanceValue implements IBasePO<HashMap<String, Object>> {
 		this.timegranid = id.get("timegranid") == null ? "" : id.get("timegranid").toString().trim();
 		this.itemid = id.get("itemid") == null ? "" : id.get("itemid").toString().trim();
 	}
-}
+}

+ 14 - 8
src/main/java/com/steerinfo/ems/trmbalancevalue/service/impl/TRmBalanceValueServiceImpl.java

@@ -174,9 +174,20 @@ public class TRmBalanceValueServiceImpl extends BaseServiceImpl<TRmBalanceValue,
 			try{
 				// 数据是否已存在
 				TRmBalanceValue tv = tRmBalanceValueMapper.selectByPrimaryKey(id);
+				//最终值 = 等于实绩值
+				HashMap<String,Object> parmas = new HashMap<>();
+				parmas.put("itemid", "'"+itemid+"'");
+				parmas.put("clock",clock);
+				parmas.put("clocke",clock);
+				parmas.put("timegranid", timegranid);
+				List<Map<String, Object>> result = tRmActItemService.getBalanceDataForPage(parmas,1,10).getList();
+
 				if(tv!=null){
 					tv.setActualvalue(new BigDecimal(actualvalue));
-					//修改的值在重新生成之后是不进行重置的()
+					//分摊值在重新生成之后是不进行重置的()
+					tv.setApportvalue(result!=null && result.size()>0  && result.get(0)!=null && result.get(0).get("RAV")!=null
+							? new BigDecimal(String.valueOf(result.get(0).get("RAV"))).add(tv.getFtv()).setScale(digits,BigDecimal.ROUND_HALF_UP):tv.getFtv());
+
 					//tv.setApportvalue(BigDecimalUtil.add(tv.getCorrectvalue()!=null?tv.getCorrectvalue().doubleValue():0d, actualvalue).setScale(digits, BigDecimal.ROUND_HALF_UP));
 					// 折标值
 					tv.setStdvalue(BigDecimalUtil.mul(zbxs, actualvalue).setScale(digits, BigDecimal.ROUND_HALF_UP));
@@ -195,13 +206,7 @@ public class TRmBalanceValueServiceImpl extends BaseServiceImpl<TRmBalanceValue,
 					//修正值
 					tv.setCorrectvalue(new BigDecimal(0));
 
-					//最终值 = 等于实绩值
-					HashMap<String,Object> parmas = new HashMap<>();
-					parmas.put("itemid", "'"+itemid+"'");
-					parmas.put("clock",clock);
-					parmas.put("clocke",clock);
-					parmas.put("timegranid", timegranid);
-					List<Map<String, Object>> result = tRmActItemService.getBalanceDataForPage(parmas,1,10).getList();
+
 					tv.setApportvalue(result!=null && result.size()>0  && result.get(0)!=null ? new BigDecimal(String.valueOf(result.get(0).get("RAV"))):null);
 //					tv.setApportvalue(null);
 
@@ -211,6 +216,7 @@ public class TRmBalanceValueServiceImpl extends BaseServiceImpl<TRmBalanceValue,
 					tv.setUcvalue(BigDecimalUtil.divide(actualvalue, sjcl, digits.intValue()));
 					tv.setRecTime(DateUtils.dateStr(new Date(),"yyyy-MM-dd HH:mm:ss"));
 					tv.setCrman(JwtUtil.getUseridByToken());
+					tv.setFtv(null);
 					//修改次数
 					// trm.setModifyflag(new Short("0"));
 					tRmBalanceValueMapper.insert(tv);