zhengxin hai 1 mes
pai
achega
4d1aaf9383

+ 13 - 6
assistMg/src/main/java/com/hotent/project/manager/impl/CostProjectMemoManagerImpl.java

@@ -2,14 +2,15 @@ package com.hotent.project.manager.impl;
 
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.hotent.base.manager.impl.BaseManagerImpl;
 import com.hotent.project.dao.CostProjectApprovalDao;
+import com.hotent.project.dao.CostProjectMemoDao;
 import com.hotent.project.manager.CostNoticeManager;
 import com.hotent.project.manager.CostProjectApprovalManager;
-import com.hotent.project.model.*;
-import com.hotent.project.model.CostProjectApproval;
-import com.hotent.project.dao.CostProjectMemoDao;
 import com.hotent.project.manager.CostProjectMemoManager;
-import com.hotent.base.manager.impl.BaseManagerImpl;
+import com.hotent.project.model.CostNotice;
+import com.hotent.project.model.CostProjectApproval;
+import com.hotent.project.model.CostProjectMemo;
 import com.hotent.project.req.CostProjectMemoQueryReq;
 import com.hotent.project.req.CostProjectMemoUpdateReq;
 import com.hotent.project.resp.CostProjectMemoDetailResp;
@@ -23,9 +24,11 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.annotation.Resource;
 import java.util.ArrayList;
+import java.util.HashMap;
 import java.util.List;
-import javax.annotation.Resource;
+import java.util.Map;
 
 
 /**
@@ -169,7 +172,6 @@ public class CostProjectMemoManagerImpl extends BaseManagerImpl<CostProjectMemoD
 			,req.getMemoDate()
 			,req.getStartTime()
 			,req.getEndTime());
-
 	return page;
 	}
 
@@ -195,6 +197,7 @@ public class CostProjectMemoManagerImpl extends BaseManagerImpl<CostProjectMemoD
 			String projectId = t.getProjectId();
 			CostProjectApproval projectApproval = projectApprovalManager.getById(projectId);
 			if (projectApproval != null) {
+				Map<String,String> rMap = new HashMap<>();
 				List<CostNotice> noticeList = new ArrayList<>();
 				String leaderId = projectApproval.getLeaderId();
 				if(StringUtils.isNotBlank(leaderId)){
@@ -208,11 +211,15 @@ public class CostProjectMemoManagerImpl extends BaseManagerImpl<CostProjectMemoD
 					costNotice.setNoticeSource("备忘录");
 					costNotice.setSendTarget(leaderId);
 					noticeList.add(costNotice);
+					rMap.put(costNotice.getSendTarget(),"");
 				}
 				String auditGroup = projectApproval.getAuditGroup();
 				if(StringUtils.isNotBlank(auditGroup)){
 					String[] split = auditGroup.split(",");
 					for (String s : split) {
+						if(rMap.containsKey(s)){
+							continue;
+						}
 						CostNotice costNotice = new CostNotice();
 						costNotice.setNoticeTitle(t.getTitle());
 						costNotice.setProjectId(t.getProjectId());

+ 39 - 41
assistMg/src/main/resources/mapper/CostProjectMemoMapper.xml

@@ -81,52 +81,50 @@
 
 
 	<select id="getCostProjectMemoPage" resultMap="BaseResultMap">
-		SELECT
-			cpm.id,
-			cpm.project_id,
-			cpa.project_name,
-			cpm.memo_date,
-			cpm.title,
-			cpm.content,
-			cpm.reminder_type
-		FROM
-			cost_project_memo cpm,
-			cost_project_approval cpa,
-			uc_user uc
-		WHERE
-			cpm.project_id = cpa.project_id
-		    AND uc.ACCOUNT_ = cpm.create_by
-		  <if test=" projectId != null and projectId != '' ">
-			  AND cpm.project_id=#{projectId}
-		  </if>
+        SELECT
+        cpm.id,
+        cpm.project_id,
+        cpa.project_name,
+        cpm.memo_date,
+        cpm.title,
+        cpm.content,
+        cpm.reminder_type
+        from cost_project_memo cpm
+        left join cost_project_approval cpa ON cpm.project_id = cpa.project_id
+        <where>
+            <if test=" projectId != null and projectId != '' ">
+                AND cpm.project_id=#{projectId}
+            </if>
 
-		<if test=" content != null and content != '' ">
-			AND cpm.content LIKE CONCAT('%', #{content}, '%')
-		</if>
+            <if test=" content != null and content != '' ">
+                AND cpm.content LIKE CONCAT('%', #{content}, '%')
+            </if>
 
-		<if test=" year != null and year != '' ">
-			AND date_format(cpm.memo_date, '%Y') = #{year}
-		</if>
-		<if test=" memoDate != null and memoDate != '' ">
-			  AND DATE_FORMAT(cpm.memo_date, '%Y-%m-%d') = #{memoDate}
-		</if>
+            <if test=" year != null and year != '' ">
+                AND date_format(cpm.memo_date, '%Y') = #{year}
+            </if>
+            <if test=" memoDate != null and memoDate != '' ">
+                AND DATE_FORMAT(cpm.memo_date, '%Y-%m-%d') = #{memoDate}
+            </if>
 
-		<if test="startTime != null and endTime != null
+            <if test="startTime != null and endTime != null
                     and startTime != '' and endTime != ''">
-			AND #{param.startTime} &lt;= DATE_FORMAT(cpm.create_time, '%Y-%m-%d')
-			AND #{param.endTime} &gt;= DATE_FORMAT(cpm.create_time, '%Y-%m-%d')
-		</if>
+                AND #{param.startTime} &lt;= DATE_FORMAT(cpm.create_time, '%Y-%m-%d')
+                AND #{param.endTime} &gt;= DATE_FORMAT(cpm.create_time, '%Y-%m-%d')
+            </if>
 
-		<if test=" dataScope != null and  dataScope != ''">
-			<if test=" dataScope ==1">
-				and  (uc.CITY_CODE=#{ cityCode} or cpm.area_code=#{ cityCode})
-			</if>
-			<if test=" dataScope ==2">
-				and (uc.COUNTY_CODE=#{ countyCode} or cpm.area_code=#{ countyCode})
-			</if>
-		</if>
-		ORDER BY cpm.create_time DESC
-	</select>
+            <if test=" dataScope != null and  dataScope != ''">
+                <if test=" dataScope ==1">
+                    and cpa.area_code like concat ('%',substring({ cityCode},1,4), '%')
+                </if>
+                <if test=" dataScope ==2">
+                    and cpa.area_code=#{ countyCode}
+                </if>
+            </if>
+        </where>
+
+        ORDER BY cpm.create_time DESC
+    </select>
 	<select id="getIndexList" resultType="com.hotent.project.model.CostProjectMemo">
         SELECT
         cpm.id,