Procházet zdrojové kódy

项目数据导出excel修改

user5 před 3 roky
rodič
revize
4f9bff5faa

+ 18 - 23
src/main/java/com/jeeplus/common/utils/excel/ExportExcel.java

@@ -3,42 +3,35 @@
  */
 package com.jeeplus.common.utils.excel;
 
-import java.io.FileNotFoundException;
-import java.io.FileOutputStream;
-import java.io.IOException;
-import java.io.OutputStream;
-import java.lang.reflect.Field;
-import java.lang.reflect.Method;
-import java.util.*;
-
-import javax.servlet.http.HttpServletResponse;
-
+import com.google.common.collect.Lists;
+import com.jeeplus.common.utils.Encodes;
+import com.jeeplus.common.utils.Reflections;
 import com.jeeplus.common.utils.SpringContextHolder;
-import com.jeeplus.common.web.BaseController;
-import com.jeeplus.modules.exampleexpend.service.ExampleExpendService;
+import com.jeeplus.common.utils.excel.annotation.ExcelField;
 import com.jeeplus.modules.sys.entity.Dict;
-import com.jeeplus.modules.sys.entity.MainDict;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
+import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.workexample.entity.WorkExampleIndices;
 import com.jeeplus.modules.workjobgrade.entity.WorkJobGrade;
 import com.jeeplus.modules.workjobgrade.service.WorkJobGradeService;
 import org.apache.commons.lang3.StringUtils;
-import org.apache.poi.hssf.usermodel.DVConstraint;
-import org.apache.poi.hssf.usermodel.HSSFCellStyle;
 import org.apache.poi.ss.usermodel.*;
 import org.apache.poi.ss.util.CellRangeAddress;
 import org.apache.poi.ss.util.CellRangeAddressList;
 import org.apache.poi.xssf.streaming.SXSSFWorkbook;
-import org.apache.poi.xssf.usermodel.*;
+import org.apache.poi.xssf.usermodel.XSSFClientAnchor;
+import org.apache.poi.xssf.usermodel.XSSFRichTextString;
 import org.slf4j.Logger;
 import org.slf4j.LoggerFactory;
 
-import com.google.common.collect.Lists;
-import com.jeeplus.common.utils.Encodes;
-import com.jeeplus.common.utils.Reflections;
-import com.jeeplus.common.utils.excel.annotation.ExcelField;
-import com.jeeplus.modules.sys.utils.DictUtils;
-import org.springframework.beans.factory.annotation.Autowired;
+import javax.servlet.http.HttpServletResponse;
+import java.io.FileNotFoundException;
+import java.io.FileOutputStream;
+import java.io.IOException;
+import java.io.OutputStream;
+import java.lang.reflect.Field;
+import java.lang.reflect.Method;
+import java.util.*;
 
 /**
  * 导出Excel文件(导出“XLSX”格式,支持大数据量导出   @see org.apache.poi.ss.SpreadsheetVersion)
@@ -615,7 +608,9 @@ public class ExportExcel {
 			log.info("Set cell value ["+row.getRowNum()+","+column+"] error: " + ex.toString());
 			cell.setCellValue(val.toString());
 		}
-		cell.setCellStyle(style);
+		if (val instanceof String || val instanceof Date) {
+			cell.setCellStyle(style);
+		}
 		return cell;
 	}
 

+ 9 - 1
src/main/java/com/jeeplus/modules/ruralprojectrecords/dao/RuralProjectMessageAllDao.java

@@ -5,10 +5,10 @@ package com.jeeplus.modules.ruralprojectrecords.dao;
 
 import com.jeeplus.common.persistence.CrudDao;
 import com.jeeplus.common.persistence.annotation.MyBatisDao;
-import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
 import com.jeeplus.modules.ruralprojectrecords.entity.DownloadProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.entity.DownloadProjectReporteds;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecordsExport;
 import org.apache.ibatis.annotations.Param;
 
 import java.util.List;
@@ -151,6 +151,14 @@ public interface RuralProjectMessageAllDao extends CrudDao<RuralProjectRecords>
      */
     List<RuralProjectRecords> findSignatureList(RuralProjectRecords projectRecords);
 
+
+    /**
+     * 获取签章list页面数据
+     * @param projectRecords
+     * @return
+     */
+    List<RuralProjectRecordsExport> findExportList(RuralProjectRecords projectRecords);
+
     /**
      * 获取签章list页面数量
      * @param projectRecords

+ 7 - 2
src/main/java/com/jeeplus/modules/ruralprojectrecords/dao/RuralProjectRecordsDao.java

@@ -7,10 +7,9 @@ import com.jeeplus.common.persistence.CrudDao;
 import com.jeeplus.common.persistence.annotation.MyBatisDao;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportDataTwo;
 import com.jeeplus.modules.projectrecord.entity.ProjectRecords;
-import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecordReportInfo;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecordsExport;
 import com.jeeplus.modules.statement.entity.StatementCompanyComprehensiveInfo;
-import com.jeeplus.modules.statement.entity.StatementDataInfo;
 import com.jeeplus.modules.sys.entity.User;
 import org.apache.ibatis.annotations.Param;
 
@@ -368,6 +367,12 @@ public interface RuralProjectRecordsDao extends CrudDao<RuralProjectRecords> {
 
     //新增案例项目
     void insertCaseBase(RuralProjectRecords records);
+    /**
+     * 导出数据查询
+     * @param projectRecords
+     * @return
+     */
+    List<RuralProjectRecordsExport> findExportList(RuralProjectRecords projectRecords);
 
 
 }

Rozdílová data souboru nebyla zobrazena, protože soubor je příliš velký
+ 2257 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/entity/RuralProjectRecordsExport.java


+ 24 - 4
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageAllService.java

@@ -17,10 +17,7 @@ import com.jeeplus.modules.projectreportnum.service.ProjectReportNumService;
 import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectClientLinkmanDao;
 import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectMessageAllDao;
 import com.jeeplus.modules.ruralprojectrecords.dao.RuralWorkProjectUserDao;
-import com.jeeplus.modules.ruralprojectrecords.entity.DownloadProjectRecords;
-import com.jeeplus.modules.ruralprojectrecords.entity.DownloadProjectReporteds;
-import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
-import com.jeeplus.modules.ruralprojectrecords.entity.SubProjectInfo;
+import com.jeeplus.modules.ruralprojectrecords.entity.*;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.sys.dao.UserDao;
 import com.jeeplus.modules.sys.entity.MainDictDetail;
@@ -1123,6 +1120,29 @@ public class RuralProjectMessageAllService extends CrudService<RuralProjectMessa
         page.setList(recordsList);
         return page;
     }
+
+
+
+    public List<RuralProjectRecordsExport> findExportList(Page<RuralProjectRecords> page, RuralProjectRecords projectRecords) {
+        //查询超期时间天数
+        List<MainDictDetail> adventCount = DictUtils.getMainDictListOnProjectAdvent("advent_count");
+        if(adventCount.size()>0){
+            //获取超期时间天数转int
+            Integer endingCount = Integer.parseInt(adventCount.get(0).getLabel());
+            projectRecords.setEndingCount(endingCount);
+        }
+        if(null!= projectRecords.getOffice() && StringUtils.isNotBlank(projectRecords.getOffice().getId())){
+            //查询该选择节点下所有的部门Id
+            List<String> officeIdList = officeService.getChildrenOffice(projectRecords.getOffice().getId());
+            officeIdList.add(projectRecords.getOffice().getId());
+            projectRecords.setOfficeIdList(officeIdList);
+        }
+        page.setCountFlag(false);
+        projectRecords.setPage(page);
+        List<RuralProjectRecordsExport> recordsList = dao.findExportList(projectRecords);
+        return recordsList;
+    }
+
     public String getMoneyAll(RuralProjectRecords ruralProjectRecords){
         //根据当前登录人查询登陆人权限
         List<Office> officeListByUserId = ruralProjectMessageAllConfigService.getOfficeListByUserId(UserUtils.getUser().getId());

+ 4 - 14
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectRecordsService.java

@@ -40,6 +40,7 @@ import com.jeeplus.modules.ruralprojectrecords.dao.RuralProjectRecordsDao;
 import com.jeeplus.modules.ruralprojectrecords.dao.RuralWorkProjectUserDao;
 import com.jeeplus.modules.ruralprojectrecords.entity.ImportBRuralProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecordsExport;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectcontentinfo;
 import com.jeeplus.modules.ruralprojectrecords.enums.ProjectStatusEnum;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
@@ -341,7 +342,7 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
 		return page;
 	}
 
-	public Page<RuralProjectRecords> findPageExport(Page<RuralProjectRecords> page, RuralProjectRecords projectRecords) {
+	public List<RuralProjectRecordsExport> findPageExport(Page<RuralProjectRecords> page, RuralProjectRecords projectRecords) {
 		//设置数据权限
         if(!UserUtils.getUser().isAdmin()) {
 			String dataScopeSql = null;
@@ -362,21 +363,10 @@ public class RuralProjectRecordsService extends CrudService<RuralProjectRecordsD
 			officeIdList.add(projectRecords.getOffice().getId());
 			projectRecords.setOfficeIdList(officeIdList);
 		}
-        int count = dao.queryCount(projectRecords);
-        page.setCount(count);
         page.setCountFlag(false);
         projectRecords.setPage(page);
-		List<RuralProjectRecords> recordsList = findList(projectRecords);
-		//查询负责人信息
-		/*for (RuralProjectRecords records : recordsList) {
-			this.queryContractInfos(records);
-			List<User> users = workProjectUserDao.queryProjectUsers(records.getId(), "1");
-			records.setProjectLeaders(users);
-			records.setLeaderNameStr(Collections3.extractToString(users, "name", ","));
-			records.setLeaderIds(Collections3.extractToString(users, "id", ","));
-		}*/
-		page.setList(recordsList);
-		return page;
+		List<RuralProjectRecordsExport> recordsList = dao.findExportList(projectRecords);
+		return recordsList;
 	}
 
 	/**

+ 8 - 2
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectMessageNewController.java

@@ -2,7 +2,6 @@ package com.jeeplus.modules.ruralprojectrecords.web;
 
 import com.google.common.collect.Lists;
 import com.jeeplus.common.config.Global;
-import com.jeeplus.common.oss.OSSClientUtil;
 import com.jeeplus.common.utils.MyBeanUtils;
 import com.jeeplus.common.utils.StringUtils;
 import com.jeeplus.common.utils.ThisLocalityDownloadUtil;
@@ -15,7 +14,6 @@ import com.jeeplus.modules.projectAccessory.service.ProjectTemplateService;
 import com.jeeplus.modules.projectEngineering.entity.ProjectEngineeringInfo;
 import com.jeeplus.modules.projectEngineering.service.ProjectEngineeringService;
 import com.jeeplus.modules.projectcontentinfo.dao.ProjectReportDataDao;
-import com.jeeplus.modules.projectcontentinfo.entity.ProjectMaterialDefectRecord;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportRecord;
 import com.jeeplus.modules.projectcontentinfo.entity.Projectcontentinfo;
@@ -1908,6 +1906,8 @@ public class RuralCostProjectMessageNewController extends BaseController {
             addMessage(redirectAttributes, "项目上报失败:上报管理员已关闭上报模块");
             return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralCostProjectMessage/?repage";
         }
+        //根据项目id查询项目信息
+        RuralProjectRecords records = projectRecordsService.get(reported.getProjectId());
         String str = "";
         if(!reported.getIsNewRecord()){//编辑表单保存
             ruralProjectMessageService.disposeList(reported);
@@ -1924,6 +1924,12 @@ public class RuralCostProjectMessageNewController extends BaseController {
         }else {
             addMessage(redirectAttributes, "项目上报暂存成功");
         }
+        if(null != records){
+            if("3".equals(records.getProjectType())){
+                return "redirect:"+Global.getAdminPath()+"/project/projectRecords/?repage";
+            }
+            return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralCostProjectMessage/?repage";
+        }
         return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralCostProjectMessage/?repage";
     }
 

+ 5 - 6
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralCostProjectRecordsController.java

@@ -17,7 +17,6 @@ import com.jeeplus.common.web.BaseController;
 import com.jeeplus.modules.act.entity.Act;
 import com.jeeplus.modules.act.service.ActTaskService;
 import com.jeeplus.modules.act.utils.ActUtils;
-import com.jeeplus.modules.alterinfo.entity.AlterInfo;
 import com.jeeplus.modules.projectEngineering.entity.ProjectEngineeringInfo;
 import com.jeeplus.modules.projectEngineering.service.ProjectEngineeringService;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
@@ -27,8 +26,8 @@ import com.jeeplus.modules.projectrecord.entity.ProjectPlanInfo;
 import com.jeeplus.modules.projectrecord.service.ProjectPlanService;
 import com.jeeplus.modules.ruralprojectrecords.entity.ImportBRuralProjectRecords;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecordsExport;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectcontentinfo;
-import com.jeeplus.modules.ruralprojectrecords.entity.SubProjectInfo;
 import com.jeeplus.modules.ruralprojectrecords.enums.ProjectStatusEnum;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectMessageService;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
@@ -63,7 +62,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import javax.validation.ConstraintViolationException;
 import java.io.File;
 import java.io.IOException;
 import java.io.UnsupportedEncodingException;
@@ -596,8 +594,9 @@ public class RuralCostProjectRecordsController extends BaseController {
 			//添加查询类型(造价审核)
 			projectRecords.setProjectType("2");
             String fileName = "项目"+DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
-            Page<RuralProjectRecords> page = projectRecordsService.findPageExport(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
-    		new ExportExcel("项目", RuralProjectRecords.class).setDataList(page.getList()).write(response, fileName).dispose();
+
+			List<RuralProjectRecordsExport> list = projectRecordsService.findPageExport(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
+    		new ExportExcel("项目", RuralProjectRecordsExport.class).setDataList(list).write(response, fileName).dispose();
     		return null;
 		} catch (Exception e) {
 			addMessage(redirectAttributes, "导出项目记录失败!失败信息:"+e.getMessage());
@@ -1079,7 +1078,7 @@ public class RuralCostProjectRecordsController extends BaseController {
 
 	/**
 	 * 对压缩文件进行处理
-	 * @param subProjectInfo
+	 * @param projectRecords
 	 * @param file
 	 * @return
 	 * @throws IllegalStateException

+ 2 - 2
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageAllController.java

@@ -611,8 +611,8 @@ public class RuralProjectMessageAllController extends BaseController {
             //添加查询类型list
             projectRecords.setTypeList(typeList);
             String fileName = "项目"+DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
-            Page<RuralProjectRecords> page = ruralProjectMessageAllService.findPageByExport(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
-            new ExportExcel("项目一览表", RuralProjectRecords.class).setDataList(page.getList()).write(response, fileName).dispose();
+            List<RuralProjectRecordsExport> list = ruralProjectMessageAllService.findExportList(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
+            new ExportExcel("项目一览表", RuralProjectRecordsExport.class).setDataList(list).write(response, fileName).dispose();
             return null;
         } catch (Exception e) {
             addMessage(redirectAttributes, "导出项目记录失败!失败信息:"+e.getMessage());

+ 7 - 7
src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectRecordsController.java

@@ -19,18 +19,21 @@ import com.jeeplus.modules.projectAccessory.entity.ProjectTemplateInfo;
 import com.jeeplus.modules.projectEngineering.entity.EngineeringTree;
 import com.jeeplus.modules.projectEngineering.entity.ProjectEngineeringInfo;
 import com.jeeplus.modules.projectEngineering.service.ProjectEngineeringService;
-import com.jeeplus.modules.projectFilingBatch.entity.ProjectFilingBatch;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportData;
 import com.jeeplus.modules.projectcontentinfo.entity.ProjectReportRecord;
 import com.jeeplus.modules.projectcontentinfo.service.ProjectReportDataService;
 import com.jeeplus.modules.projectrecord.entity.ProjectPlanInfo;
 import com.jeeplus.modules.projectrecord.service.ProjectPlanService;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecords;
+import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectRecordsExport;
 import com.jeeplus.modules.ruralprojectrecords.entity.RuralProjectcontentinfo;
 import com.jeeplus.modules.ruralprojectrecords.enums.ProjectStatusEnum;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectMessageService;
 import com.jeeplus.modules.ruralprojectrecords.service.RuralProjectRecordsService;
-import com.jeeplus.modules.sys.entity.*;
+import com.jeeplus.modules.sys.entity.MainDictDetail;
+import com.jeeplus.modules.sys.entity.Office;
+import com.jeeplus.modules.sys.entity.Role;
+import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -44,13 +47,11 @@ import com.jeeplus.modules.workcontractinfo.service.WorkContractInfoService;
 import com.jeeplus.modules.workinvoice.service.WorkInvoiceService;
 import com.jeeplus.modules.workprojectnotify.entity.WorkProjectNotify;
 import com.jeeplus.modules.workprojectnotify.service.WorkProjectNotifyService;
-import com.jeeplus.modules.workreimbursement.entity.WorkReimbursement;
 import com.jeeplus.modules.workreimbursement.service.WorkReimbursementService;
 import org.activiti.engine.runtime.ProcessInstance;
 import org.activiti.engine.task.Task;
 import org.apache.shiro.authz.annotation.Logical;
 import org.apache.shiro.authz.annotation.RequiresPermissions;
-import org.checkerframework.checker.units.qual.A;
 import org.json.JSONArray;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
@@ -61,7 +62,6 @@ import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
-import java.io.File;
 import java.io.UnsupportedEncodingException;
 import java.net.URLDecoder;
 import java.text.SimpleDateFormat;
@@ -557,8 +557,8 @@ public class RuralProjectRecordsController extends BaseController {
 			//添加查询类型(造价审核)
 			projectRecords.setProjectType("1");
             String fileName = "项目"+DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
-            Page<RuralProjectRecords> page = projectRecordsService.findPage(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
-    		new ExportExcel("项目", RuralProjectRecords.class).setDataList(page.getList()).write(response, fileName).dispose();
+			List<RuralProjectRecordsExport> list = projectRecordsService.findPageExport(new Page<RuralProjectRecords>(request, response, -1), projectRecords);
+			new ExportExcel("项目", RuralProjectRecordsExport.class).setDataList(list).write(response, fileName).dispose();
     		return null;
 		} catch (Exception e) {
 			addMessage(redirectAttributes, "导出项目记录失败!失败信息:"+e.getMessage());

+ 345 - 1
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageAllDao.xml

@@ -653,7 +653,351 @@ END) as projectScale*/
 				ORDER BY ${page.orderBy}
 			</when>
 			<otherwise>
-				ORDER BY a.update_date DESC
+				ORDER BY SUBSTRING(a.project_id,-9) DESC
+			</otherwise>
+		</choose>
+	</select>
+
+    <select id="findExportList" resultType="RuralProjectRecordsExport" >
+		SELECT
+		<include refid="projectRecordsColumns"/>
+		,a.record_state as "recordState"
+		,a.submit_money as "submitMoney"
+		,a.submit_scale as "submitScale"
+		,(case when a.submit_money = '1' then 'B级' when a.submit_money = '2' then 'A级' else '' end) as projectScale
+		,(case
+		when a.submit_money = '1' and prd.status = '5' then
+		'已完成'
+		when a.submit_money = '2' and prdt.status = '5' then
+		'已完成' else '未完成'
+		end) as completionStatus
+		,a.project_type as projectType,
+		wci.name AS "workContractInfo.name",
+		wci.contract_num as "workContractInfo.contractNum",
+		wci.contract_price as "workContractInfo.contractPrice",
+		sub.name as "projectMasterName",
+		sob.name as "projectMasterOffice",
+		wct.id AS "workContractInfo.client.id",
+		wct.name AS "workContractInfo.client.name",
+		o.top_company AS "office.name",
+		o.name AS "createByOffice",
+		ifnull(prd.number ,"") as "projectReportNumber"
+		,ifnull(prd.status,0) as "projectReportStatus"
+		,ifnull(prd.name,"") as "projectReportName"
+		,ifnull(prr.status,0) as "projectReportRecordStatus"
+		,(case
+		when a.submit_money = '1' then
+		ifnull(pfp.status,0)
+		when a.submit_money = '2' then
+		ifnull(prrd.status,0) else 0
+		end) as downProjectReportRecordStatus,
+		(case
+		when a.submit_money = '1' and pfp.status = '5' then
+		'已归档'
+		when a.submit_money = '2' and ppf.status = '5' then
+		'已归档' else '未归档'
+		end) as downArchiveStatus,
+		/*,ifnull(prrd.status,0) as "downProjectReportRecordStatus"*/
+		prrd.file_num as recodeNum,
+		prr.process_instance_id as prrProcessInstanceId,
+		prrd.process_instance_id as prrdProcessInstanceId
+		,prd.id as prdId
+		,prr.id as prrId
+		,prrd.id as prrdId
+		,prd.audit_pass_date as auditPassDate
+		,if(date_add(prd.audit_pass_date,interval #{endingCount} day) >now(),"0","1") as reportedType
+		,ifnull(rprr.report_status,0) as "reportStatus"
+		,ifnull(rprr.sync_status,0) as "syncStatus"
+		,ifnull(pas.status,0) as "approvalSignatureStatus"
+		,ifnull(pas.process_instance_id,"") as "approvalSignatureProcessInstanceId"
+		,ifnull(prs.status,0) as "reportSignatureStatus"
+		,ifnull(prs.process_instance_id,"") as "reportSignatureProcessInstanceId"
+		,rprr.process_instance_id as "reportedProcessInstanceId"
+		,ifnull(prdt.status,0) as "projectReportStatusTwo"
+		,prdt.id as prdtId
+		,prdt.process_instance_id as prdtProcessinstanceId
+		,ifnull(pmdr.status,0) as "defectRecordStatus"
+		,pmdr.process_instance_id as "pmdrProcessInstanceId"
+		,pmdr.id as pmdrId
+		,ifnull(ppf.status,0) as "paperFilingStatus"
+		,ppf.process_instance_id as "ppfProcessInstanceId"
+		,ppf.id as "ppfId"
+		,pfp.filing_batch as "filingBatch"
+		,pfp.box_num as "boxNum"
+		,pfp.re_box_num as "reBoxNum"
+		,pfb.id AS "FilingBatchId"
+		,(select group_concat(su.name) from work_project_user wpu left join sys_user su on su.id = wpu.user_id where wpu.project_id = a.id) as "leaderNameStr"
+		,(select group_concat(su.id) from work_project_user wpu left join sys_user su on su.id = wpu.user_id where wpu.project_id = a.id) as "leaderNameIds"
+		,pfb.process_instance_id AS "filingProcessinstanceId"
+		,pfb.filing_status AS "filingStatus"
+		,ifnull(pfp.status,0) as "filingProjectStatus"
+		,ifnull(prd.approval_fee ,"") as "approvalFee"
+		,ifnull(prd.review_fee ,"") as "reviewFee"
+		,ifnull(prd.verify_fee ,"") as "verifyFee"
+		,ifnull(prd.verify_rate ,"") as "verifyRate"
+		,prd.audit_pass_date as "reportAuditDate"
+		,prdt.audit_pass_date as "reportTwoAuditDate"
+		/*,SUM(wi.money) as "money"*/
+		,prd.ZiXunShouRu as "money"
+		,prd.signature_flag as "signatureFlag"
+		,prd.signature_contract_id as "signatureContractId"
+		,prd.signature_url as "signatureUrl"
+		,a.report_signature_flag as "reportSignatureFlag"
+		,a.report_signature_url as "reportSignatureUrl"
+		,a.report_signature_contract_id as "reportSignatureContractId"
+		,prsi.id as "prsiId"
+		,cb.case_process_id as "caseProcessId"
+		,cb.case_type as "caseType"
+		,cb.case_create_by as "caseCreateBy"
+		,if(case_status > 0 ,case_status,"0") as "caseStatus"
+		,rprr.ZiXunBDE as "ziXunBDE"
+		FROM rural_project_records a
+		left join case_base cb on a.id = cb.project_id
+		LEFT JOIN sys_area area ON area.id = a.area_id
+		left join rural_project_records_reported rprr on rprr.id = a.id
+		LEFT JOIN project_flingbatch_relation pfp on pfp.project_id=a.id and pfp.del_flag = 0
+		LEFT JOIN project_filingbatch pfb on pfb.id=pfp.filing_batch
+		LEFT JOIN sys_user sua on a.create_by = sua.id
+		<if test="leaderNameStr !=null and leaderNameStr !=''">
+			LEFT JOIN work_project_user w on a.id = w.project_id
+			LEFT JOIN sys_user su on w.user_id = su.id
+		</if>
+		LEFT JOIN sys_user sub on a.project_master_id = sub.id
+		LEFT JOIN sys_office sob ON sob.id = sub.office_id
+		LEFT JOIN work_project_user w1 on a.id = w1.project_id
+		LEFT JOIN work_contract_info wci on a.contract_id = wci.id
+		LEFT JOIN work_client_info wct on wci.client_id = wct.id
+		LEFT JOIN sys_office o ON o.id = a.office_id
+		left join project_report_data prd on prd.project_id = a.id
+		left join project_report_data_two prdt on prdt.project_id = a.id
+		left join rural_project_report_record prr on prr.report_id = prd.id
+		LEFT JOIN project_material_defect_record pmdr on prd.id = pmdr.report_id
+		left join rural_project_report_record_down prrd on prrd.report_id = prd.id
+		left join project_paper_filing ppf on ppf.project_id = a.id
+		left join project_approval_signature pas on pas.project_id = a.id
+		left join project_report_signature prs on prs.project_id = a.id
+		left join project_report_signature_info prsi on prsi.project_report_id = prd.number
+		/*LEFT JOIN work_invoice_project_relation wip ON wip.project_id = a.id
+		LEFT JOIN work_invoice wi ON wi.id = wip.invoice_id*/
+		<where>
+			a.status = 5
+			<if test="bzshbUserId!=null and bzshbUserId!=''">
+				and prd.bzshb_user_id=#{bzshbUserId}
+			</if>
+			<if test="reportSignatureStatus!=null and reportSignatureStatus!=''">
+				and prs.status=#{reportSignatureStatus}
+			</if>
+			<if test="approvalSignatureStatus!=null and approvalSignatureStatus!=''">
+				and pas.status=#{approvalSignatureStatus}
+			</if>
+			<if test="projectId != null and projectId != ''">
+				AND a.project_id like concat('%',#{projectId},'%')
+			</if>
+			<if test="projectName != null and projectName != ''">
+				AND a.project_name like concat(concat('%',#{projectName}),'%')
+			</if>
+			<if test="scaleType != null and scaleType != ''">
+				AND a.scale_type = #{scaleType}
+			</if>
+			<if test="scaleUnit != null and scaleUnit != ''">
+				AND a.scale_unit = #{scaleUnit}
+			</if>
+			<if test="scaleQuantity != null and scaleQuantity != ''">
+				AND a.scale_quantity = #{scaleQuantity}
+			</if>
+			<if test="projectSite != null and projectSite != ''">
+				AND a.project_site LIKE concat('%',#{projectSite},'%')
+			</if>
+			<if test="remarks != null and remarks != ''">
+				AND a.remarks LIKE concat('%',#{remarks},'%')
+			</if>
+			<if test="projectDesc != null and projectDesc != ''">
+				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
+			</if>
+			<if test="area != null and area.id != null and area.id != ''">
+				AND a.area_id = #{area.id}
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
+				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.contractNum !=null and workContractInfo.contractNum !=''">
+				AND wci.contract_num like concat(concat('%',#{workContractInfo.contractNum}),'%')
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.contractPrice !=null and workContractInfo.contractPrice !=''">
+				AND wci.contract_price = #{workContractInfo.contractPrice}
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.contractType !=null and workContractInfo.contractType !=''">
+				AND wci.contract_type = #{workContractInfo.contractType}
+			</if>
+			<if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
+				AND wct.name like concat(concat('%',#{workContractInfo.client.name}),'%')
+			</if>
+			<!--<if test="leaderNameStr !=null and leaderNameStr !=''">
+                AND su.name like concat(concat('%',#{leaderNameStr}),'%') AND w.is_master = '1' AND w.del_flag='0'
+            </if>-->
+			<if test="(leaderNameStr != null and leaderNameStr != '') or (leaderId != null and leaderId != '')">
+				AND ((w.user_id = #{leaderId}) or su.name like concat('%',#{leaderNameStr},'%')) AND w.is_master = '1' AND w.del_flag='0'
+			</if>
+			<if test="projectStatus !=null">
+				AND a.status = #{projectStatus}
+			</if>
+			<if test="beginDate !=null">
+				AND a.create_date >= #{beginDate}
+			</if>
+			<if test="endDate !=null">
+				AND a.create_date &lt; #{endDate}
+			</if>
+			<if test="emergencyProject !=null and emergencyProject != ''">
+				<choose>
+					<when test="emergencyProject == 0">
+						AND (a.emergency_project = #{emergencyProject} or a.emergency_project is null)
+					</when>
+					<otherwise>
+						AND a.emergency_project = #{emergencyProject}
+					</otherwise>
+				</choose>
+			</if>
+			<!--<if test="createBy != null and createBy.id !=null and createBy.id !=''">
+				AND a.create_by = #{createBy.id}
+ 			</if>-->
+			<if test="createBy != null and((createBy.id != null and createBy.id != '') or (createBy.name != null and createBy.name != ''))">
+				AND (a.create_by = #{createBy.id} or sua.name like concat('%',#{createBy.name},'%'))
+			</if>
+			<choose>
+				<when test="downProjectReportRecordStatus == 0">
+					<choose>
+						<when test="submitMoney !=null and submitMoney !=''">
+							<if test="submitMoney == 1">
+								AND( pfp.status is null)
+							</if>
+							<if test="submitMoney == 2">
+								AND( /*pfp.status is null or*/ ppf.status is null )
+							</if>
+						</when>
+						<otherwise>
+							AND( (a.submit_money = 2 and pfp.status is null) or (a.submit_money = 1 and ppf.status is null) )
+						</otherwise>
+					</choose>
+				</when>
+				<otherwise>
+					<if test="downProjectReportRecordStatus!=null and downProjectReportRecordStatus !=''">
+						<choose>
+							<when test="submitMoney !=null and submitMoney !=''">
+								<if test="submitMoney == 1">
+									and pfp.status = #{downProjectReportRecordStatus}
+								</if>
+								<if test="submitMoney == 2">
+									and ppf.status = #{downProjectReportRecordStatus}
+								</if>
+							</when>
+							<otherwise>
+								and ppf.status = #{downProjectReportRecordStatus}
+							</otherwise>
+						</choose>
+
+					</if>
+				</otherwise>
+			</choose>
+			<if test="reportData!=null and reportData.number !=null and reportData.number !=''">
+				and prd.number like concat('%',#{reportData.number},'%')
+			</if>
+			<!--<if test="office!=null and office.id!=null and office.id!=''">
+				and  a.office_id = #{office.id}
+			</if>-->
+			<if test="office!=null and office.id=='' and office.name!=null and office.name!='' ">
+				and  o.name like concat('%',#{office.name},'%')
+			</if>
+			<if test="officeIdList!=null and officeIdList.size!=0">
+				and a.office_id in
+				<foreach collection="officeIdList" item="officeId" separator="," open="(" close=")">
+					#{officeId}
+				</foreach>
+			</if>
+			<if test="permissionOfficeIdList!=null and permissionOfficeIdList.size!=0">
+				and a.office_id in
+				<foreach collection="permissionOfficeIdList" item="officeId" separator="," open="(" close=")">
+					#{officeId}
+				</foreach>
+			</if>
+
+			<if test="reportedState !=null and reportedState !=''">
+				<choose>
+					<when test="reportedState == 0">
+						AND a.reported_state is null
+					</when>
+					<otherwise>
+						AND a.reported_state = #{reportedState}
+					</otherwise>
+				</choose>
+			</if>
+
+			<if test="engineeringType !=null and engineeringType !=''">
+				and a.engineering_type= #{engineeringType}
+			</if>
+			<if test="attachmentProjectSort !=null and attachmentProjectSort !=''">
+				and a.attachment_project_sort= #{attachmentProjectSort}
+			</if>
+			<if test="projectReportStatus != null and projectReportStatus != ''">
+				AND prd.status = #{projectReportStatus}
+			</if>
+			<if test="submitMoney != null and submitMoney != ''">
+				AND a.submit_money = #{submitMoney}
+			</if>
+			<choose>
+				<when test="projectReportRecordStatus != null and projectReportRecordStatus != '' and projectReportRecordStatus != 0">
+					<choose>
+						<when test="projectReportRecordStatus == 6 or projectReportRecordStatus == 7">
+							<choose>
+								<when test="projectReportRecordStatus == 6">
+									AND a.record_state= #{projectReportRecordStatus} and prr.status is null
+								</when>
+								<otherwise>
+									AND prr.status = #{projectReportRecordStatus}
+								</otherwise>
+							</choose>
+						</when>
+						<otherwise>
+							AND prr.status = #{projectReportRecordStatus}
+						</otherwise>
+					</choose>
+				</when>
+				<otherwise>
+					<choose>
+						<when test="projectReportRecordStatus == 0">
+							AND prr.status is null
+						</when>
+					</choose>
+				</otherwise>
+			</choose>
+
+			<if test="typeList !=null and typeList !=''">
+				and a.project_type in
+				<foreach collection="typeList" item="id" index="index" open="(" close=")" separator=",">
+					#{id}
+				</foreach>
+			</if>
+			<choose>
+				<when test="projectReportStatusTwo == 0">
+					AND prdt.status is null
+				</when>
+				<otherwise>
+					<if test="projectReportStatusTwo!=null and projectReportStatusTwo !=''">
+						AND prdt.status = #{projectReportStatusTwo}
+					</if>
+				</otherwise>
+			</choose>
+
+			AND  a.status != 7 AND a.del_flag = #{DEL_FLAG_NORMAL}
+			<if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
+				AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND a.company_id = #{currentUser.company.id})${sqlMap.dsf} )
+			</if>
+		</where>
+		<choose>
+			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
+				ORDER BY ${page.orderBy}
+			</when>
+			<otherwise>
+				ORDER BY SUBSTRING(a.project_id,-9) DESC
 			</otherwise>
 		</choose>
 	</select>

+ 1 - 1
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageDao.xml

@@ -608,7 +608,7 @@
 				ORDER BY ${page.orderBy}
 			</when>
 			<otherwise>
-				ORDER BY a.update_date DESC
+				ORDER BY SUBSTRING(a.project_id,-9) DESC
 			</otherwise>
 		</choose>
 	</select>

+ 203 - 0
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectRecordsDao.xml

@@ -495,6 +495,209 @@
 		</choose>
 	</select>
 
+    <select id="findExportList" resultType="RuralProjectRecordsExport" >
+		SELECT
+			<include refid="projectRecordsColumnss"/>
+		,a.record_state as "recordState"
+		,a.submit_money as "submitMoney"
+		,a.submit_scale as "submitScale"
+		,(case when a.submit_money = '1' then 'B级' when a.submit_money = '2' then 'A级' else '' end) as projectScale
+		,(case
+		when a.submit_money = '1' and prd.status = '5' then
+		'已完成'
+		when a.submit_money = '2' and prdt.status = '5' then
+		'已完成' else '未完成'
+		end) as completionStatus
+		,a.project_type as projectType,
+		wci.name AS "workContractInfo.name",
+		wci.contract_num as "workContractInfo.contractNum",
+		wci.contract_price as "workContractInfo.contractPrice",
+		sub.name as "projectMasterName",
+		sob.name as "projectMasterOffice",
+		wct.id AS "workContractInfo.client.id",
+		wct.name AS "workContractInfo.client.name",
+		o.top_company AS "office.name",
+		o.name AS "createByOffice",
+		ifnull(prd.number ,"") as "projectReportNumber"
+		,ifnull(prd.status,0) as "projectReportStatus"
+		,ifnull(prd.name,"") as "projectReportName"
+		,ifnull(prr.status,0) as "projectReportRecordStatus"
+		,ifnull(prrd.status,0) as "downProjectReportRecordStatus",
+		prrd.file_num as recodeNum,
+		prr.process_instance_id as prrProcessInstanceId,
+		prrd.process_instance_id as prrdProcessInstanceId
+		,prd.id as prdId
+		,prr.id as prrId
+		,prrd.id as prrdId
+		,prd.audit_pass_date as auditPassDate
+		,if(date_add(prd.audit_pass_date,interval #{endingCount} day) >now(),"0","1") as reportedType
+		,ifnull(rprr.report_status,0) as "reportStatus"
+		,ifnull(rprr.sync_status,0) as "syncStatus"
+		,ifnull(pas.status,0) as "approvalSignatureStatus"
+		,ifnull(pas.process_instance_id,"") as "approvalSignatureProcessInstanceId"
+		,ifnull(prs.status,0) as "reportSignatureStatus"
+		,ifnull(prs.process_instance_id,"") as "reportSignatureProcessInstanceId"
+		,rprr.process_instance_id as "reportedProcessInstanceId"
+		,ifnull(prdt.status,0) as "projectReportStatusTwo"
+		,prdt.id as prdtId
+		,prdt.process_instance_id as prdtProcessinstanceId
+		,ifnull(pmdr.status,0) as "defectRecordStatus"
+		,pmdr.process_instance_id as "pmdrProcessInstanceId"
+		,pmdr.id as pmdrId
+		,ifnull(ppf.status,0) as "paperFilingStatus"
+		,ppf.process_instance_id as "ppfProcessInstanceId"
+		,ppf.id as "ppfId"
+		,pfb.process_instance_id AS "filingProcessinstanceId"
+		,ifnull(pfp.status,0) as "filingProjectStatus"
+		,ifnull(prd.approval_fee ,"") as "approvalFee"
+		,ifnull(prd.review_fee ,"") as "reviewFee"
+		,ifnull(prd.verify_fee ,"") as "verifyFee"
+		,ifnull(prd.verify_rate ,"") as "verifyRate"
+		,prd.audit_pass_date as "reportAuditDate"
+		,prdt.audit_pass_date as "reportTwoAuditDate"
+		/*,SUM(wi.money) as "money"*/
+		,prd.ZiXunShouRu as "money"
+		,prd.signature_flag as "signatureFlag"
+		,prd.signature_contract_id as "signatureContractId"
+		,prd.signature_url as "signatureUrl"
+		,a.report_signature_flag as "reportSignatureFlag"
+		,a.report_signature_url as "reportSignatureUrl"
+		,a.report_signature_contract_id as "reportSignatureContractId"
+		,prsi.id as "prsiId"
+		,(SELECT group_concat( su.NAME ) FROM work_project_user wpu LEFT JOIN sys_user su ON su.id = wpu.user_id WHERE wpu.project_id = a.id ) AS "leaderNameStr",
+		(SELECT group_concat( su.id ) FROM work_project_user wpu LEFT JOIN sys_user su ON su.id = wpu.user_id WHERE wpu.project_id = a.id ) AS "leaderNameIds"
+		FROM rural_project_records a
+		LEFT JOIN sys_area area ON area.id = a.area_id
+		left join rural_project_records_reported rprr on rprr.id = a.id
+		LEFT JOIN project_flingbatch_relation pfp on pfp.project_id=a.id
+		LEFT JOIN project_filingbatch pfb on pfb.id=pfp.filing_batch
+		LEFT JOIN sys_user sua on a.create_by = sua.id
+		<if test="leaderNameStr !=null and leaderNameStr !=''">
+			LEFT JOIN work_project_user w on a.id = w.project_id
+			LEFT JOIN sys_user su on w.user_id = su.id
+		</if>
+		LEFT JOIN sys_user sub on a.project_master_id = sub.id
+		LEFT JOIN sys_office sob ON sob.id = sub.office_id
+		LEFT JOIN work_project_user w1 on a.id = w1.project_id
+		LEFT JOIN work_contract_info wci on a.contract_id = wci.id
+		LEFT JOIN work_client_info wct on wci.client_id = wct.id
+		LEFT JOIN sys_office o ON o.id = a.office_id
+		left join project_report_data prd on prd.project_id = a.id
+		left join project_report_data_two prdt on prdt.project_id = a.id
+		left join rural_project_report_record prr on prr.report_id = prd.id
+		LEFT JOIN project_material_defect_record pmdr on prd.id = pmdr.report_id
+		left join rural_project_report_record_down prrd on prrd.report_id = prd.id
+		left join project_paper_filing ppf on ppf.project_id = a.id
+		left join project_approval_signature pas on pas.project_id = a.id
+		left join project_report_signature prs on prs.project_id = a.id
+		left join project_report_signature_info prsi on prsi.project_report_id = prd.number
+		<where>
+
+			<if test="projectId != null and projectId != ''">
+				AND a.project_id like concat('%',#{projectId},'%')
+			</if>
+			<if test="projectName != null and projectName != ''">
+				AND a.project_name like concat(concat('%',#{projectName}),'%')
+			</if>
+			<if test="scaleType != null and scaleType != ''">
+				AND a.scale_type = #{scaleType}
+			</if>
+			<if test="scaleUnit != null and scaleUnit != ''">
+				AND a.scale_unit = #{scaleUnit}
+			</if>
+			<if test="scaleQuantity != null and scaleQuantity != ''">
+				AND a.scale_quantity = #{scaleQuantity}
+			</if>
+			<if test="projectSite != null and projectSite != ''">
+				AND a.project_site LIKE concat('%',#{projectSite},'%')
+			</if>
+			<if test="remarks != null and remarks != ''">
+				AND a.remarks LIKE concat('%',#{remarks},'%')
+			</if>
+			<if test="projectDesc != null and projectDesc != ''">
+				AND a.project_desc LIKE concat('%',#{projectDesc},'%')
+			</if>
+			<if test="area != null and area.id != null and area.id != ''">
+				AND a.area_id = #{area.id}
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.name !=null and workContractInfo.name !=''">
+				AND wci.name like concat(concat('%',#{workContractInfo.name}),'%')
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.contractNum !=null and workContractInfo.contractNum !=''">
+				AND wci.contract_num like concat(concat('%',#{workContractInfo.contractNum}),'%')
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.contractPrice !=null and workContractInfo.contractPrice !=''">
+				AND wci.contract_price = #{workContractInfo.contractPrice}
+			</if>
+			<if test="workContractInfo !=null and workContractInfo.contractType !=null and workContractInfo.contractType !=''">
+				AND wci.contract_type = #{workContractInfo.contractType}
+			</if>
+			<if test="workContractInfo!=null and workContractInfo.client !=null and workContractInfo.client.name !=null and workContractInfo.client.name !=''">
+				AND wct.name like concat(concat('%',#{workContractInfo.client.name}),'%')
+			</if>
+            <if test="leaderNameStr !=null and leaderNameStr !=''">
+                AND su.name like concat(concat('%',#{leaderNameStr}),'%') AND w.is_master = '1' AND w.del_flag='0'
+            </if>
+            <if test="projectStatus !=null">
+                AND a.status = #{projectStatus}
+            </if>
+            <if test="beginDate !=null">
+                AND a.create_date >= #{beginDate}
+            </if>
+            <if test="endDate !=null">
+                AND a.create_date &lt; #{endDate}
+            </if>
+			<if test="projectType !=null and projectType !=''">
+				and project_type= #{projectType}
+			</if>
+			<if test="engineeringType !=null and engineeringType !=''">
+				and a.engineering_type= #{engineeringType}
+			</if>
+			<!--<if test="office!=null and office.id!=null and office.id!=''">
+				and  a.office_id = #{office.id}
+			</if>-->
+			<if test="officeIdList!=null and officeIdList.size!=0">
+				and a.office_id in
+				<foreach collection="officeIdList" item="officeId" separator="," open="(" close=")">
+					#{officeId}
+				</foreach>
+			</if>
+
+			<if test="reportData!=null and reportData.number !=null and reportData.number !=''">
+				and prd.number like concat('%',#{reportData.number},'%')
+			</if>
+			<if test="filingProjectStatus!=null and filingProjectStatus !=''">
+				and pfp.status =${filingProjectStatus}
+			</if>
+			<if test="submitMoney!=null and submitMoney !=''">
+				and a.submit_money =${submitMoney}
+			</if>
+			<if test="createBy !=null and createBy !=''">
+				<if test="createBy.name !=null and createBy.name !=''">
+					AND sua.name like concat(concat('%',#{createBy.name}),'%')
+				</if>
+			</if>
+			<if test="office!=null and office.name!=null and office.name!=''">
+				AND o.name like concat(concat('%',#{office.name}),'%')
+			</if>
+            <if test="sqlMap.delFlag !=null and sqlMap.delFlag!=''">
+				${sqlMap.delFlag}
+            </if>
+            <if test="sqlMap.dsf !=null and sqlMap.dsf!=''">
+               AND ((w1.user_id = #{currentUser.id} AND w1.del_flag='0' AND a.company_id = #{currentUser.company.id} )${sqlMap.dsf} )
+            </if>
+		</where>
+            GROUP BY a.id
+		<choose>
+			<when test="page !=null and page.orderBy != null and page.orderBy != ''">
+				ORDER BY ${page.orderBy}
+			</when>
+			<otherwise>
+				ORDER BY a.update_date DESC
+			</otherwise>
+		</choose>
+	</select>
+
     <select id="queryCount" resultType="int" >
         SELECT count(DISTINCT a.id)
         FROM rural_project_records a

+ 2 - 2
src/main/webapp/webpage/modules/knowledgeSharing/knowledgeSharingDetailsList.jsp

@@ -165,8 +165,8 @@
 			<li value="2"><a>请教专家</a></li>
 			<li value="3"><a>一事一议</a></li>
 			<li value="4"><a>案例分析</a></li>
-			<li value="5"><a>知识分享</a></li>
-			<li value="6"><a>案例讨论</a></li>
+			<%--<li value="5"><a>知识分享</a></li>
+			<li value="6"><a>案例讨论</a></li>--%>
 		</ul>
 	</div>
 	<div class="layui-row">