浏览代码

Merge branch 'dev' of http://219.151.181.73:3000/zhuwei/bladex into dev

laibulaizheli 4 周之前
父节点
当前提交
a492b1708f

+ 30 - 8
blade-service/blade-archive/src/main/java/org/springblade/archive/mapper/ArchivesAutoMapper.xml

@@ -627,7 +627,15 @@
         <if test="vo.storageTimes != null and vo.storageTimes != ''">
             and uaa.storage_time in
             <foreach collection="vo.storageTimes" item="storageTime" open="(" separator="," close=")">
-                #{storageTime}
+                <choose>
+                    <when test="storageTime == 3">
+                        #{storageTime},30
+                    </when>
+                    <otherwise>
+                        #{storageTime}
+                    </otherwise>
+                </choose>
+
             </foreach>
         </if>
         <if test="vo.secretLevels != null and vo.secretLevels != ''">
@@ -679,7 +687,14 @@
         <if test="vo.storageTimes != null and vo.storageTimes != ''">
             and uaa.storage_time in
             <foreach collection="vo.storageTimes" item="storageTime" open="(" separator="," close=")">
-                #{storageTime}
+                <choose>
+                    <when test="storageTime == 3">
+                        #{storageTime},30
+                    </when>
+                    <otherwise>
+                        #{storageTime}
+                    </otherwise>
+                </choose>
             </foreach>
         </if>
         <if test="vo.secretLevels != null and vo.secretLevels != ''">
@@ -1047,12 +1062,19 @@
           and uaa.is_destroy = #{type}
     </select>
     <select id="getAllArchiveAgeByContractType" resultType="java.util.Map">
-        SELECT CASE uaa.storage_time WHEN '1' THEN '10年' WHEN '2' THEN '30年' ELSE '永久' END as name,
-               COUNT(uaa.storage_time) as value
-        FROM m_archive_tree_contract matc left join u_archives_auto uaa
-        on uaa.node_id =matc.id
-        WHERE matc.project_id =#{projectId} and uaa.is_deleted =0
-        GROUP BY uaa.storage_time
+        select a.name, sum(a.VALUE) value
+        from (SELECT CASE uaa.storage_time WHEN '1' THEN '10年' WHEN '2' THEN '30年' ELSE '永久' END as name,
+                     COUNT(uaa.storage_time)                                                         as value
+              FROM m_archive_tree_contract matc
+                       left join u_archives_auto uaa
+                                 on uaa.node_id = matc.id
+              WHERE matc.project_id = #{projectId}
+                and matc.is_deleted = 0
+                and uaa.is_deleted = 0
+                and uaa.is_archive = 1
+              GROUP BY uaa.storage_time) a
+        GROUP BY a.name
+
     </select>
     <!--    档案鉴定,档案查询-->
     <select id="pageByAuthenticate" resultType="org.springblade.archive.vo.ArchivesAutoVO">

+ 3 - 0
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/MeterFormNumberWsMapper.java

@@ -1,7 +1,10 @@
 package org.springblade.manager.mapper;
 
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import org.apache.ibatis.annotations.Param;
 import org.springblade.manager.entity.MeterFormNumberWs;
 
 public interface MeterFormNumberWsMapper extends BaseMapper<MeterFormNumberWs> {
+    MeterFormNumberWs selectMeterFormNumber(@Param("periodId") Long periodId, @Param("formNumber") String formNumber);
+
 }

+ 7 - 6
blade-service/blade-manager/src/main/java/org/springblade/manager/mapper/MeterFormNumberWsMapper.xml

@@ -12,12 +12,13 @@
         <result column="now_end_total" property="nowEndTotal"/>
         <result column="is_deleted" property="isDeleted"/>
     </resultMap>
-
-
-
-
-
-
+    <select id="selectMeterFormNumber" resultType="org.springblade.manager.entity.MeterFormNumberWs">
+        select * from meter_form_number_ws where period_id=#{periodId}
+        <if test="formNumber != null and formNumber !=''">
+            and form_number=#{formNumber}
+        </if>
+        and is_deleted=0 limit 1
+    </select>
 
 
 </mapper>

+ 19 - 8
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/FormulaServiceImpl.java

@@ -2443,7 +2443,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
     }
 
     public BigDecimal getMeterFormNumber(Long periodId,String formNumber,String result){
-        String sql = "SELECT IFNULL((SELECT " + result + " FROM meter_form_number_ws WHERE period_id = ? AND form_number = ? AND is_deleted = 0 LIMIT 1), 0) AS result";
+        String sql = "SELECT IFNULL((SELECT " + result + " FROM meter_form_number_ws WHERE period_id = ? AND form_number = ?  AND is_deleted = 0 LIMIT 1), 0) AS result";
         return jdbcTemplate.queryForObject(sql, BigDecimal.class,periodId,formNumber);
     }
 
@@ -2451,15 +2451,26 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
         if(amount!=null&&amount.compareTo(BigDecimal.ZERO)==0){
             return;
         }
-        String sql="select * from meter_form_number_ws where period_id="+periodId+" and form_number='"+formNumber+"' and is_deleted=0  LIMIT 1";
-        List<MeterFormNumberWs> list = jdbcTemplate.query(sql, new BeanPropertyRowMapper<>(MeterFormNumberWs.class));
-        if(!list.isEmpty()){
-            MeterFormNumberWs meterFormNumberWs = list.get(0);
+        MeterFormNumberWs meterFormNumberWs= meterFormNumberWsMapper.selectMeterFormNumber(periodId,formNumber);
+        if(meterFormNumberWs!=null){
             String update="update meter_form_number_ws set "+result+"='"+amount+"' where id="+meterFormNumberWs.getId();
             jdbcTemplate.update(update);
         }else {
-            String insert="insert into meter_form_number_ws (id,period_id,form_number,is_deleted,"+result+") values("+SnowFlakeUtil.getId()+","+periodId+",'"+formNumber+"',0,"+amount+")";
-            jdbcTemplate.execute(insert);
+            MeterFormNumberWs ws = new MeterFormNumberWs();
+            ws.setId(SnowFlakeUtil.getId());
+            ws.setPeriodId(periodId);
+            ws.setFormNumber(formNumber);
+            ws.setIsDeleted(0);
+            if("now_money".equals(result)){
+                ws.setNowMoney(amount);
+            } else if ("now_total".equals(result)) {
+                ws.setNowTotal( amount);
+            } else if ("now_end_money".equals(result)) {
+                ws.setNowEndMoney( amount);
+            }else if("now_end_total".equals( result)){
+                ws.setNowEndTotal( amount);
+            }
+            meterFormNumberWsMapper.insert(ws);
         }
     }
 
@@ -3789,7 +3800,7 @@ public class FormulaServiceImpl extends BaseServiceImpl<FormulaMapper, Formula>
             }
             //到本期末完成 本期ID+章节号
             //bladeRedis.set("periodId:" + periodId + "formNumber:" + key + "nowEndMoney", monthlyReport.getNowEndMoney());
-            saveMeterFormNumber(periodId,key,"now_end_money",monthlyReport.getNowMoney());
+            saveMeterFormNumber(periodId,key,"now_end_money",monthlyReport.getNowEndMoney());
             values.add(monthlyReport);
         }
         //处理跨期 到上期末完成金额和工程量