Преглед на файлове

报销、发票、项目管理等数据导出功能开发

user5 преди 3 години
родител
ревизия
ddd9ae6f84
променени са 21 файла, в които са добавени 392 реда и са изтрити 55 реда
  1. 23 0
      src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageAllService.java
  2. 25 0
      src/main/java/com/jeeplus/modules/ruralprojectrecords/web/RuralProjectMessageAllController.java
  3. 30 15
      src/main/java/com/jeeplus/modules/workclientinfo/entity/WorkClientInfo.java
  4. 21 7
      src/main/java/com/jeeplus/modules/workcontractinfo/entity/WorkContractInfo.java
  5. 7 0
      src/main/java/com/jeeplus/modules/workinvoice/dao/WorkInvoiceDao.java
  6. 36 9
      src/main/java/com/jeeplus/modules/workinvoice/entity/WorkInvoice.java
  7. 18 0
      src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceAllService.java
  8. 18 0
      src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceService.java
  9. 9 2
      src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceAllController.java
  10. 7 0
      src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceController.java
  11. 19 14
      src/main/java/com/jeeplus/modules/workreimbursement/entity/WorkReimbursement.java
  12. 4 0
      src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageAllDao.xml
  13. 1 0
      src/main/resources/mappings/modules/workclientinfo/WorkClientInfoDao.xml
  14. 5 0
      src/main/resources/mappings/modules/workcontractinfo/WorkContractInfoDao.xml
  15. 142 0
      src/main/resources/mappings/modules/workinvoice/WorkInvoiceDao.xml
  16. 5 0
      src/main/resources/mappings/modules/workreimbursement/WorkReimbursementDao.xml
  17. 7 3
      src/main/webapp/webpage/modules/ruralprojectrecords/ruralporjectmessage/all/ruralProjectMessageAllList.jsp
  18. 3 0
      src/main/webapp/webpage/modules/workinvoice/workInvoiceAllList.jsp
  19. 5 5
      src/main/webapp/webpage/modules/workinvoice/workInvoiceList.jsp
  20. 3 0
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementAllList.jsp
  21. 4 0
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementList.jsp

+ 23 - 0
src/main/java/com/jeeplus/modules/ruralprojectrecords/service/RuralProjectMessageAllService.java

@@ -672,4 +672,27 @@ public class RuralProjectMessageAllService extends CrudService<RuralProjectMessa
         page.setList(recordsList);
         return page;
     }
+
+    public Page<RuralProjectRecords> findPageByExport(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);
+        }
+        int count = dao.queryCount(projectRecords);
+        page.setCount(count);
+        page.setCountFlag(false);
+        projectRecords.setPage(page);
+        List<RuralProjectRecords> recordsList = findList(projectRecords);
+        page.setList(recordsList);
+        return page;
+    }
 }

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

@@ -533,4 +533,29 @@ public class RuralProjectMessageAllController extends BaseController {
         }
         return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralProjectMessageAll/?repage";
     }
+
+    /**
+     * 导出excel文件
+     */
+    @RequiresPermissions("ruralProject:ruralCostProjectRecords:export")
+    @RequestMapping(value = "export", method=RequestMethod.POST)
+    public String exportFile(RuralProjectRecords projectRecords, HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
+        try {
+
+            //添加查询类型(工程咨询)
+            List<String> typeList = Lists.newArrayList();
+            typeList.add("1");
+            typeList.add("2");
+            //添加查询类型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();
+            return null;
+        } catch (Exception e) {
+            addMessage(redirectAttributes, "导出项目记录失败!失败信息:"+e.getMessage());
+            logger.error("Exception e:"+e);
+        }
+        return "redirect:"+Global.getAdminPath()+"/ruralProject/ruralCostProjectRecords/?repage";
+    }
 }

+ 30 - 15
src/main/java/com/jeeplus/modules/workclientinfo/entity/WorkClientInfo.java

@@ -3,11 +3,13 @@
  */
 package com.jeeplus.modules.workclientinfo.entity;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.fasterxml.jackson.annotation.JsonIgnore;
 import com.google.common.collect.Lists;
 import com.jeeplus.common.persistence.DataEntity;
 import com.jeeplus.common.utils.excel.annotation.ExcelField;
 import com.jeeplus.modules.sys.entity.Area;
+import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.utils.DictUtils;
 import org.apache.commons.lang3.StringUtils;
 
@@ -177,7 +179,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 
 	@JsonIgnore
 	@NotNull(message="地区名称不能为空")
-	@ExcelField(title="地区名称",align=2,sort=7)
+	@ExcelField(title="地区名称",align=2,sort=6)
 	public Area getArea() {
 		return area;
 	}
@@ -186,7 +188,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.area = area;
 	}
 
-	@ExcelField(title="邮政编码", align=2, sort=8)
+	//@ExcelField(title="邮政编码", align=2, sort=8)
 	public String getZipCode() {
 		return zipCode;
 	}
@@ -195,7 +197,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.zipCode = zipCode;
 	}
 
-	@ExcelField(title="传真", align=2, sort=9)
+	//@ExcelField(title="传真", align=2, sort=9)
 	public String getFax() {
 		return fax;
 	}
@@ -204,7 +206,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.fax = fax;
 	}
 
-	@ExcelField(title="开户银行", align=2, sort=15)
+	@ExcelField(title="开户银行", align=2, sort=12)
 	public String getOurBank() {
 	    if(StringUtils.isNotBlank(ourBank))
 		return ourBank;
@@ -215,7 +217,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.ourBank = ourBank;
 	}
 
-	@ExcelField(title="开户账号", align=2, sort=16)
+	@ExcelField(title="开户账号", align=2, sort=13)
 	public String getBankNumber() {
         if(StringUtils.isNotBlank(bankNumber))
 		return bankNumber;
@@ -242,7 +244,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.email = email;
 	}
 
-	@ExcelField(title="详细地址", align=2, sort=12)
+	@ExcelField(title="详细地址", align=2, sort=10)
 	public String getAddress() {
 		return address;
 	}
@@ -251,7 +253,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.address = address;
 	}
 
-	@ExcelField(title="注册地址", align=2, sort=13)
+	@ExcelField(title="注册地址", align=2, sort=11)
 	public String getRegisterAddress() {
 		return registerAddress;
 	}
@@ -260,7 +262,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.registerAddress = registerAddress;
 	}
 
-	@ExcelField(title="公司网址", align=2, sort=14)
+	//@ExcelField(title="公司网址", align=2, sort=14)
 	public String getCompanyUrl() {
 		return companyUrl;
 	}
@@ -359,7 +361,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.linkManNames = linkManNames;
 	}
 
-	@ExcelField(title="联系人E-mail", align=2, sort=22)
+	//@ExcelField(title="联系人E-mail", align=2, sort=22)
 	public String getLinkemail() {
         if(StringUtils.isNotBlank(linkemail))
 		return linkemail;
@@ -370,7 +372,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.linkemail = linkemail;
 	}
 
-	@ExcelField(title="联系人职务", align=2, sort=18)
+	//@ExcelField(title="联系人职务", align=2, sort=18)
 	public String getPosition() {
         if(StringUtils.isNotBlank(position))
             return position;
@@ -381,7 +383,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.position = position;
 	}
 
-	@ExcelField(title="联系人QQ", align=2, sort=19)
+	//@ExcelField(title="联系人QQ", align=2, sort=19)
 	public String getQq() {
         if(StringUtils.isNotBlank(qq))
             return qq;
@@ -392,7 +394,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.qq = qq;
 	}
 
-	@ExcelField(title="联系人电话", align=2, sort=20)
+	@ExcelField(title="联系人电话", align=2, sort=15)
 	public String getLinkPhone() {
         if(StringUtils.isNotBlank(linkPhone))
             return linkPhone;
@@ -414,7 +416,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.linkMobile = linkMobile;
 	}
 
-	@ExcelField(title="联系人姓名", align=2, sort=17)
+	@ExcelField(title="联系人姓名", align=2, sort=14)
 	public String getLinkname() {
         if(StringUtils.isNotBlank(linkname))
             return linkname;
@@ -434,7 +436,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.nowDate = nowDate;
 	}
 
-	@ExcelField(title="导入用户", align=2, sort=24)
+	@ExcelField(title="创建人", align=2, sort=7)
 	public String getUserName() {
 		return userName;
 	}
@@ -468,7 +470,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.hasUscc = hasUscc;
 	}
 
-	@ExcelField(title="统一社会信用代码", align=2, sort=10)
+	@ExcelField(title="统一社会信用代码", align=2, sort=9)
 	public String getUscCode() {
 		return uscCode;
 	}
@@ -513,6 +515,7 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 		this.number = number;
 	}
 
+	@ExcelField(title="代表方", align=2, sort=2)
 	public String getJobTypeStr() {
 		return jobTypeStr;
 	}
@@ -568,4 +571,16 @@ public class WorkClientInfo extends DataEntity<WorkClientInfo> {
 	public void setOfficeName(String officeName) {
 		this.officeName = officeName;
 	}
+
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@Override
+	@ExcelField(title="创建时间", align=2, sort=8)
+	public Date getCreateDate() {
+		return super.getCreateDate();
+	}
+
+	@Override
+	public void setCreateDate(Date createDate) {
+		super.setCreateDate(createDate);
+	}
 }

+ 21 - 7
src/main/java/com/jeeplus/modules/workcontractinfo/entity/WorkContractInfo.java

@@ -150,6 +150,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 	private String describeContent; //描述内容
 
 	private String contractInformation; //合同金额类别
+	private String contractInformationStr; //合同金额类别
 
 	private boolean cancelDelFalg; //合同作废和删除判定
 
@@ -268,7 +269,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.home = home;
 	}
 
-	@ExcelField(title="总合同名称", align=2, sort=3)
+	//@ExcelField(title="总合同名称", align=2, sort=3)
 	public String getTotalContractName() {
 		return totalContractName;
 	}
@@ -277,7 +278,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.totalContractName = totalContractName;
 	}
 
-	@ExcelField(title="合同名称", align=2, sort=4)
+	@ExcelField(title="合同名称", align=2, sort=3)
 	public String getName() {
 		return name;
 	}
@@ -334,7 +335,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.times = times;
 	}
 
-	@ExcelField(title="合同金额(元)", align=2, sort=5)
+	@ExcelField(title="合同金额(元)", align=2, sort=6)
 	public String getContractPrice() {
 		return contractPrice;
 	}
@@ -361,7 +362,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.oldWorkContractInfo = oldWorkContractInfo;
 	}
 
-	@ExcelField(title="工程分类", mainDictType="contract_type", align=2, sort=7)
+	//@ExcelField(title="工程分类", mainDictType="contract_type", align=2, sort=7)
 	public String getContractType() {
 		return contractType;
 	}
@@ -452,7 +453,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.contractSpecial = contractSpecial;
 	}
 
-	@ExcelField(title="合同状态", dictType="audit_state", align=2, sort=9)
+	@ExcelField(title="合同状态", dictType="audit_state", align=2, sort=12)
 	public String getContractState() {
 		return contractState;
 	}
@@ -589,6 +590,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.companyId = companyId;
 	}
 
+	@ExcelField(title="合同类型", mainDictType="contract_info_type", align=2, sort=7)
 	public String getContractTypeDoc() {
 		return contractTypeDoc;
 	}
@@ -873,7 +875,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.signatureStatus = signatureStatus;
 	}
 
-	@ExcelField(title="归档状态", dictType="archive_state", align=2, sort=10)
+	@ExcelField(title="归档状态", dictType="archive_state", align=2, sort=13)
 	public String getContrractRecordStatus() {
 		return contrractRecordStatus;
 	}
@@ -890,6 +892,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.contrractRecordId = contrractRecordId;
 	}
 
+	@ExcelField(title="案卷号", align=2, sort=4)
 	public String getRecordNum() {
 		return recordNum;
 	}
@@ -946,7 +949,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.flagAdmin = flagAdmin;
 	}
 
-	@ExcelField(title="客户名称", align=2, sort=6)
+	@ExcelField(title="客户名称", align=2, sort=5)
 	public String getClientName() {
 		return clientName;
 	}
@@ -972,6 +975,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.chargeCriterionList = chargeCriterionList;
 	}
 
+	@ExcelField(title="收费标准", align=2, sort=11)
 	public String getOtherDetails() {
 		return otherDetails;
 	}
@@ -1052,6 +1056,7 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.borrowNotifyId = borrowNotifyId;
 	}
 
+
 	public String getContractInformation() {
 		return contractInformation;
 	}
@@ -1060,6 +1065,15 @@ public class WorkContractInfo extends ActEntity<WorkContractInfo> {
 		this.contractInformation = contractInformation;
 	}
 
+	@ExcelField(title="合同金额类别", align=2, sort=10)
+	public String getContractInformationStr() {
+		return contractInformationStr;
+	}
+
+	public void setContractInformationStr(String contractInformationStr) {
+		this.contractInformationStr = contractInformationStr;
+	}
+
 	public String getBeginContractPrice() {
 		return beginContractPrice;
 	}

+ 7 - 0
src/main/java/com/jeeplus/modules/workinvoice/dao/WorkInvoiceDao.java

@@ -71,4 +71,11 @@ public interface WorkInvoiceDao extends CrudDao<WorkInvoice> {
 	 */
 	String getSumMoney(WorkInvoice workInvoice);
 
+	/**
+	 * 导出数据查询
+	 * @param workInvoice
+	 * @return
+	 */
+	List<WorkInvoice> findListOnExport(WorkInvoice workInvoice);
+
 }

+ 36 - 9
src/main/java/com/jeeplus/modules/workinvoice/entity/WorkInvoice.java

@@ -40,6 +40,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 	private ProjectRecords project;		// 开票项目(来源项目登记)
 	private String projectName;		// 项目名称
 	private Double money;		// 价税合计
+	private String moneyStr;		// 价税合计(String)
 	private String invoiceType;		// 发票类型
 	private String invoiceTypeStr;		// 发票类型Str
 	private String chargeType;		// 收款类型
@@ -92,6 +93,18 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 	private String accountCheckingUserName; //对账人名称
 	private List<Workattachment> workAttachments;//附件
 
+
+	@Override
+	@ExcelField(title="经办人", fieldType=User.class, value="createBy.name", align=2, sort=5)
+	public User getCreateBy() {
+		return createBy;
+	}
+
+	@Override
+	public void setCreateBy(User createBy) {
+		this.createBy = createBy;
+	}
+
 	public String getOfficeId() {
 		return officeId;
 	}
@@ -132,7 +145,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.bankNumber = bankNumber;
 	}
 
-	@ExcelField(title="发票状态", align=2, sort=12)
+	@ExcelField(title="发票状态", align=2, sort=13 ,dictType = "invoice_audit_state")
 	public String getInvoiceState() {
 		return invoiceState;
 	}
@@ -198,7 +211,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		super(id);
 	}
 
-	@ExcelField(title="开票号", align=2, sort=1)
+	@ExcelField(title="开票号", align=2, sort=2)
 	public String getNumber() {
 		return number;
 	}
@@ -224,7 +237,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.client = client;
 	}
 
-	@ExcelField(title="项目名称",align=2, sort=2)
+	@ExcelField(title="项目名称",align=2, sort=1)
 	public String getProjectName() {
 		return projectName;
 	}
@@ -281,7 +294,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.projectName = projectName;
 	}
 
-	@ExcelField(title="开票金额", align=2, sort=7)
+
 	public Double getMoney() {
 		return money;
 	}
@@ -290,6 +303,15 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.money = money;
 	}
 
+	@ExcelField(title="开票金额", align=2, sort=7)
+	public String getMoneyStr() {
+		return moneyStr;
+	}
+
+	public void setMoneyStr(String moneyStr) {
+		this.moneyStr = moneyStr;
+	}
+
 	@ExcelField(title="发票类型", dictType="invoice_type", align=2, sort=10)
 	public String getInvoiceType() {
 		return invoiceType;
@@ -308,7 +330,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.chargeType = chargeType;
 	}
 
-	@ExcelField(title="开票内容", dictType="invoice_type", align=2, sort=8)
+
 	public String getContent() {
 		return content;
 	}
@@ -317,7 +339,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.content = content;
 	}
 
-	@ExcelField(title="开票经办人", fieldType=User.class, value="drawer.name", align=2, sort=5)
+
 	public User getDrawer() {
 		return drawer;
 	}
@@ -326,7 +348,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.drawer = drawer;
 	}
 
-	@ExcelField(title="开票经办人部门", fieldType=Office.class, value="office.name", align=2, sort=6)
+	@ExcelField(title="经办人部门", fieldType=Office.class, value="office.name", align=2, sort=6)
 	public Office getOffice() {
 		return office;
 	}
@@ -335,7 +357,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.office = office;
 	}
 
-	@ExcelField(title="发票编号", align=2, sort=3)
+
 	public Integer getInvoiceNumber() {
 		return invoiceNumber;
 	}
@@ -372,7 +394,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.isInvoice = isInvoice;
 	}
 
-	@ExcelField(title="收款状态", align=2, sort=13)
+
 	public String getIsCharge() {
 		return isCharge;
 	}
@@ -446,6 +468,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.ext = ext;
 	}
 
+	@ExcelField(title="开票内容", mainDictType="billing_content", align=2, sort=8)
 	public String getBillingContent() {
 		return billingContent;
 	}
@@ -462,6 +485,8 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.invoiceTypeStr = invoiceTypeStr;
 	}
 
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ExcelField(title="收款日期", align=2, sort=12)
 	public Date getReceiptMoneyDate() {
 		return receiptMoneyDate;
 	}
@@ -470,6 +495,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.receiptMoneyDate = receiptMoneyDate;
 	}
 
+	@ExcelField(title="是否收款", align=2, sort=14)
 	public String getReceiptMoney() {
 		return receiptMoney;
 	}
@@ -574,6 +600,7 @@ public class WorkInvoice extends ActEntity<WorkInvoice> {
 		this.accountCheckingUserName = accountCheckingUserName;
 	}
 
+	@ExcelField(title="发票编号", align=2, sort=3)
 	public String getWidNumber() {
 		return widNumber;
 	}

+ 18 - 0
src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceAllService.java

@@ -2177,4 +2177,22 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 			}
 		}
 	}
+
+	/**
+	 * 根据开票id查询关联项目
+	 * @param workInvoice
+	 * @return
+	 */
+	public List<WorkInvoiceProjectRelation> getProjectRelation(WorkInvoice workInvoice) {
+		List<WorkInvoiceProjectRelation> projectRelationList = dao.getProjectRelation(workInvoice.getId());
+		for (WorkInvoiceProjectRelation projectRelation:projectRelationList) {
+			if(null!=projectRelation.getIsProject()){
+				if ( projectRelation.getIsProject() == 2) {
+					projectRelation.setProjectName("非项目发票");
+					projectRelation.setWorkContractName(projectRelation.getDetails());
+				}
+			}
+		}
+		return projectRelationList;
+	}
 }

+ 18 - 0
src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceService.java

@@ -2197,4 +2197,22 @@ public class WorkInvoiceService extends CrudService<WorkInvoiceDao, WorkInvoice>
 		}
 	}
 
+
+	public Page<WorkInvoice> findListOnExport(Page<WorkInvoice> page, WorkInvoice workInvoice) {
+		workInvoice.getSqlMap().put("dsf", dataScopeFilter(workInvoice.getCurrentUser(), "o", "u","s", MenuStatusEnum.WORK_INVOICE.getValue()));
+		if(StringUtils.isNotBlank(workInvoice.getOfficeId())){
+			//查询该选择节点下所有的部门Id
+			List<String> officeIdList = officeService.getChildrenOffice(workInvoice.getOfficeId());
+			officeIdList.add(workInvoice.getOfficeId());
+			workInvoice.setOfficeIdList(officeIdList);
+		}
+		int count = dao.queryCount(workInvoice);
+		page.setCount(count);
+		page.setCountFlag(false);
+		workInvoice.setPage(page);
+		page.setList(dao.findListOnExport(workInvoice));
+		return page;
+
+	}
+
 }

+ 9 - 2
src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceAllController.java

@@ -658,13 +658,20 @@ public class WorkInvoiceAllController extends BaseController {
 	/**
 	 * 导出excel文件
 	 */
-	@RequiresPermissions("workinvoice:workInvoice:export")
+	@RequiresPermissions("workinvoiceAll:workinvoiceAll:export")
     @RequestMapping(value = "export", method=RequestMethod.POST)
     public String exportFile(WorkInvoice workInvoice, HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
 		try {
             String fileName = "发票管理"+DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
             Page<WorkInvoice> page = workInvoiceService.findPage(new Page<WorkInvoice>(request, response, -1), workInvoice);
-    		new ExportExcel("发票管理", WorkInvoice.class).setDataList(page.getList()).write(response, fileName).dispose();
+			List<WorkInvoice> workInvoiceList = page.getList();
+			for (WorkInvoice invoice: workInvoiceList) {
+				invoice.setWorkInvoiceProjectRelationList(workInvoiceService.getProjectRelation(invoice));
+				List<String> projectNameList = workInvoiceService.getProjectNameList(invoice);
+				String projectNameStr = String.join(",", projectNameList);
+				invoice.setProjectName(projectNameStr);
+			}
+            new ExportExcel("发票管理", WorkInvoice.class).setDataList(page.getList()).write(response, fileName).dispose();
     		return null;
 		} catch (Exception e) {
 			addMessage(redirectAttributes, "导出发票管理记录失败!失败信息:"+e.getMessage());

+ 7 - 0
src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceController.java

@@ -673,6 +673,13 @@ public class WorkInvoiceController extends BaseController {
 		try {
             String fileName = "发票管理"+DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
             Page<WorkInvoice> page = workInvoiceService.findPage(new Page<WorkInvoice>(request, response, -1), workInvoice);
+			List<WorkInvoice> workInvoiceList = page.getList();
+			for (WorkInvoice invoice: workInvoiceList) {
+				invoice.setWorkInvoiceProjectRelationList(workInvoiceService.getProjectRelation(invoice));
+				List<String> projectNameList = workInvoiceService.getProjectNameList(invoice);
+				String projectNameStr = String.join(",", projectNameList);
+				invoice.setProjectName(projectNameStr);
+			}
     		new ExportExcel("发票管理", WorkInvoice.class).setDataList(page.getList()).write(response, fileName).dispose();
     		return null;
 		} catch (Exception e) {

+ 19 - 14
src/main/java/com/jeeplus/modules/workreimbursement/entity/WorkReimbursement.java

@@ -27,7 +27,7 @@ import java.util.Map;
  * @version 2017-05-02
  */
 public class WorkReimbursement extends ActEntity<WorkReimbursement> {
-	
+
 	private static final long serialVersionUID = 1L;
 	public static final String SERIAL_BIZCODE = "7";//编号模板类型
 
@@ -212,8 +212,8 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 	public void setNumber(String number) {
 		this.number = number;
 	}
-	
-	@ExcelField(title="业务类型", align=2, sort=2)
+
+
 	public String getBusinessType() {
 		return businessType;
 	}
@@ -221,10 +221,10 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 	public void setBusinessType(String businessType) {
 		this.businessType = businessType;
 	}
-	
+
 
     @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
-	@ExcelField(title="报销日期", align=2, sort=5)
+	@ExcelField(title="报销日期", align=2, sort=8)
 	public Date getSubmitterDate() {
 		return submitterDate;
 	}
@@ -232,9 +232,9 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 	public void setSubmitterDate(Date submitterDate) {
 		this.submitterDate = submitterDate;
 	}
-	
 
-	@ExcelField(title="报销金额", align=2, sort=7)
+
+	@ExcelField(title="报销金额", align=2, sort=9)
 	public BigDecimal getMoney() {
 		return money;
 	}
@@ -242,8 +242,8 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 	public void setMoney(BigDecimal money) {
 		this.money = money;
 	}
-	
-	@ExcelField(title="报销状态", align=2, dictType = "reimbursement_status" ,sort=8)
+
+	@ExcelField(title="报销状态", align=2, dictType = "reimbursement_status" ,sort=10)
 	public String getStatus() {
 		return status;
 	}
@@ -252,7 +252,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.status = status;
 	}
 
-	@ExcelField(title="报销公司/部门", align=2, sort=3)
+
     public String getOfficeId() {
         return officeId;
     }
@@ -261,7 +261,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
         this.officeId = officeId;
     }
 
-	@ExcelField(title="报销人", align=2, sort=4)
+
     public String getSubmitterId() {
         return submitterId;
     }
@@ -270,7 +270,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
         this.submitterId = submitterId;
     }
 
-	@ExcelField(title="报销项目", align=2, value="project.projectName",sort=5)
+	@ExcelField(title="报销项目", align=2, value="project.projectName",sort=3)
     public ProjectRecords getProject() {
         return project;
     }
@@ -287,7 +287,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.submitter = submitter;
 	}
 
-	@ExcelField(title="附件", align=2, sort=9)
+
 	public String getAttachment() {
 		return attachment;
 	}
@@ -392,6 +392,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.limitCond = limitCond;
 	}
 
+	@ExcelField(title="报告号", align=2, sort=4)
 	public String getProjectName() {
 		return projectName;
 	}
@@ -408,6 +409,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.ext = ext;
 	}
 
+	@ExcelField(title="报销部门", align=2, sort=7)
 	public String getOfficeName() {
 		return officeName;
 	}
@@ -432,6 +434,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.queryCon = queryCon;
 	}
 
+	@ExcelField(title="报销类别", align=2, sort=2)
 	public String getBusinessTypeName() {
 		return businessTypeName;
 	}
@@ -440,6 +443,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.businessTypeName = businessTypeName;
 	}
 
+	@ExcelField(title="报销人", align=2, sort=6)
 	public String getSubmitterName() {
 		return submitterName;
 	}
@@ -520,6 +524,7 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 		this.handleId = handleId;
 	}
 
+	@ExcelField(title="经办人", align=2, sort=5)
 	public String getHandleName() {
 		return handleName;
 	}
@@ -551,4 +556,4 @@ public class WorkReimbursement extends ActEntity<WorkReimbursement> {
 	public void setNotifyId(String notifyId) {
 		this.notifyId = notifyId;
 	}
-}
+}

+ 4 - 0
src/main/resources/mappings/modules/ruralprojectrecords/RuralProjectMessageAllDao.xml

@@ -99,6 +99,9 @@
 		,a.submit_money as "submitMoney"
 		,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",
 		wct.id AS "workContractInfo.client.id",
 		wct.name AS "workContractInfo.client.name",
 		o.top_company AS "office.name",
@@ -133,6 +136,7 @@
 			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 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

+ 1 - 0
src/main/resources/mappings/modules/workclientinfo/WorkClientInfoDao.xml

@@ -76,6 +76,7 @@
 		SELECT
 			<include refid="workClientInfoColumns"/>
 			,su.name as "userName"
+			,su.name as "userName"
 			,so.name as "officeName"
 		FROM work_client_info a
 		<include refid="workClientInfoJoinsLink"/>

+ 5 - 0
src/main/resources/mappings/modules/workcontractinfo/WorkContractInfoDao.xml

@@ -260,6 +260,11 @@
 		a.signature_status as "signatureStatus",
 		a.charge_criterion as "chargeCriterion",
 		a.other_details as "otherDetails",
+		a.contract_information AS "contractInformation",
+		(CASE a.contract_information
+		WHEN '0' THEN '金额合同'
+		WHEN '1' THEN '费率合同'
+		ELSE '' END) as "contractInformationStr",
 		ifnull(wcr.status,0) as "contrractRecordStatus",
 		ifnull(wcr.file_num,"") as "recordNum",
 		wcr.id as "contrractRecordId",

+ 142 - 0
src/main/resources/mappings/modules/workinvoice/WorkInvoiceDao.xml

@@ -10,6 +10,7 @@
 		a.project_id AS "project.id",
 		a.project_name AS "projectName",
 		a.money AS "money",
+		a.money AS "moneyStr",
 		a.invoice_type AS "invoiceType",
 		(case when a.invoice_type = '1' then '专票' when a.invoice_type = '2' then '普票' else '' end) as invoiceTypeStr,
 		a.charge_type AS "chargeType",
@@ -824,4 +825,145 @@
 		where invoice_id = #{invoiceId}
 		order by rpr.create_by asc
 	</select>
+
+	<select id="findListOnExport" resultType="WorkInvoice" >
+		SELECT
+		<include refid="workInvoiceColumns"/>
+		,wid.number as "widNumber"
+		,wid.total_money as "widTotalMoney"
+		,group_concat(rpr.project_name) as "projectName"
+		FROM work_invoice a
+		<include refid="workInvoiceJoins"/>
+		left join work_invoice_detail wid on a.id = wid.invoice_id
+		LEFT JOIN sys_user sua ON sua.id = a.account_checking_user_id
+		left join work_invoice_project_relation wipr on wipr.invoice_id = a.id
+		left join rural_project_records rpr on rpr.id = wipr.project_id
+		<where>
+			a.del_flag = #{DEL_FLAG_NORMAL}
+			<if test="number != null and number != ''">
+				AND a.number LIKE
+				<if test="dbName == 'oracle'">'%'||#{number}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{number}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{number},'%')</if>
+			</if>
+			<if test="invoiceState != null and invoiceState != ''">
+				AND a.invoice_state = #{invoiceState}
+			</if>
+			<if test="beginContractDate != null and endContractDate != null and beginContractDate != '' and endContractDate != ''">
+				AND a.create_date BETWEEN #{beginContractDate} AND #{endContractDate}
+			</if>
+			<if test="client != null and client.id != null and client.id != ''">
+				AND a.client_id = #{client.id}
+			</if>
+			<if test="project != null and project.id != null and project.id != ''">
+				AND a.project_id = #{project.id}
+			</if>
+			<if test="project != null and project.projectId != null and project.projectId != ''">
+				AND p.project_id LIKE
+				<if test="dbName == 'oracle'">'%'||#{project.projectId}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{project.projectId}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{project.projectId},'%')</if>
+			</if>
+			<if test="project != null and project.projectName != null and project.projectName != ''">
+				AND p.project_name LIKE
+				<if test="dbName == 'oracle'">'%'||#{project.projectName}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{project.projectName}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{project.projectName},'%')</if>
+			</if>
+			<if test="project != null and project.reportData != null and project.reportData.number != null and project.reportData.number != ''">
+				AND prd.number LIKE
+				<if test="dbName == 'oracle'">'%'||#{project.reportData.number}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{project.reportData.number}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{project.reportData.number},'%')</if>
+			</if>
+			<if test="client != null and client.name != null and client.name != ''">
+				AND w.name LIKE
+				<if test="dbName == 'oracle'">'%'||#{client.name}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{client.name}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{client.name},'%')</if>
+			</if>
+			<!--<if test="officeId != null and officeId != ''">
+				AND so.id  = #{officeId}
+			</if>-->
+			<if test="money != null and money != ''">
+				AND a.money = #{money}
+			</if>
+			<!--<if test="submitterId != null and submitterId != ''">
+				AND a.create_by = #{submitterId}
+			</if>-->
+			<if test="(submitterId != null and submitterId != '') or (submitterName != null and submitterName != '')">
+				AND (a.create_by = #{submitterId} or su.name like concat('%',#{submitterName},'%'))
+			</if>
+			<if test="receiptMoney != null and receiptMoney != ''">
+				AND a.receipt_money = #{receiptMoney}
+			</if>
+			<if test="invoiceType != null and invoiceType != ''">
+				AND a.invoice_type = #{invoiceType}
+			</if>
+			<if test="chargeType != null and chargeType != ''">
+				AND a.charge_type = #{chargeType}
+			</if>
+			<if test="content != null and content != ''">
+				AND a.content = #{content}
+			</if>
+			<if test="drawer != null and drawer.id != null and drawer.id != ''">
+				AND a.drawer_id = #{drawer.id}
+			</if>
+			<if test="companyId != null and companyId != ''">
+				AND a.company_id = #{companyId}
+			</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="invoiceNumber != null and invoiceNumber != ''">
+				AND a.invoice_number LIKE
+				<if test="dbName == 'oracle'">'%'||#{invoiceNumber}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{invoiceNumber}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{invoiceNumber},'%')</if>
+			</if>
+			<if test="invoiceDate != null and invoiceDate != ''">
+				AND a.invoice_date = #{invoiceDate}
+			</if>
+			<if test="isInvoice != null and isInvoice != ''">
+				AND a.is_invoice = #{isInvoice}
+			</if>
+			<if test="isCharge != null and isCharge != ''">
+				AND a.is_charge = #{isCharge}
+			</if>
+			<if test="isInvalid != null and isInvalid != ''">
+				AND a.is_invalid = #{isInvalid}
+			</if>
+			<if test="area != null and area.id != null and area.id != ''">
+				AND a.area_parent_id LIKE
+				<if test="dbName == 'oracle'">'%'||#{area.id}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{area.id}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{area.id},'%')</if>
+			</if>
+			<if test="(accountCheckingUserId != null and accountCheckingUserId != '') or (accountCheckingUserName != null and accountCheckingUserName != '')">
+				AND (a.account_checking_user_id = #{accountCheckingUserId} or sua.name like concat('%',#{accountCheckingUserName},'%'))
+			</if>
+			<if test="widNumber != null and widNumber != ''">
+				AND wid.number LIKE
+				<if test="dbName == 'oracle'">'%'||#{widNumber}||'%'</if>
+				<if test="dbName == 'mssql'">'%'+#{widNumber}+'%'</if>
+				<if test="dbName == 'mysql'">concat('%',#{widNumber},'%')</if>
+			</if>
+			${sqlMap.dsf}
+		</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.create_date DESC
+			</otherwise>
+		</choose>
+	</select>
 </mapper>

+ 5 - 0
src/main/resources/mappings/modules/workreimbursement/WorkReimbursementDao.xml

@@ -63,13 +63,18 @@
 		,wa.project_id as "workAccount.project.id"
 		,wrt.standard_detail as "workAccount.typeName"
 		,(select office_id from sys_user where id = wa.reimbursement_name) AS "officeId"
+		,(select soy.name from sys_user sux left join sys_office soy on soy.id = sux.office_id where sux.id = wa.reimbursement_name) AS "officeName"
 		,p.id AS "project.projectId"
 		,wa.type as "workAccount.type"
+		,su.name as "handleName"
+		,sub.name as "submitterName"
 		FROM work_reimbursement a
 		left join work_account wa on wa.work_reimbursement_id =a.id
 		left join work_reimbursement_type_info wrt on wrt.id =wa.type
 		left join project_report_data pd on pd.project_id =wa.project_id
 		left join rural_project_records p on p.id = wa.project_id
+		left join sys_user su on su.id = a.submitter_id
+		left join sys_user sub on sub.id = wa.reimbursement_name
 		<where>
 			a.del_flag = #{DEL_FLAG_NORMAL}
 			<if test="id != null and id != ''">

+ 7 - 3
src/main/webapp/webpage/modules/ruralprojectrecords/ruralporjectmessage/all/ruralProjectMessageAllList.jsp

@@ -711,13 +711,17 @@
 				<div class="nav-btns">
 					<%--此处按钮样式包括 nav-btn-add nav-btn-refresh nav-btn-import nav-btn-export nav-btn-query nav-btn-reset--%>
 					<div class="layui-btn-group">
+						<button style="float: right" class="layui-btn layui-btn-sm" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>
 						<shiro:hasPermission name="ruralProject:ruralProjectMessageAll:reportedDownload">
-							<div style="float: right"> <a href="javascript:void(0)" style='background-color: #FFB800' onclick="downloadDialogre('上报信息导出', '${ctx}/ruralProject/ruralProjectMessageAll/skipDownloadReportedForm','40%', '70%','','下载,关闭')" class="layui-btn layui-btn-sm" ><i class="fa fa-file-excel-o"></i> 上报信息导出</a></div>
+							<div style="float: right"> <a href="javascript:void(0)" style='background-color: #FFB800' onclick="downloadDialogre('上报信息导出', '${ctx}/ruralProject/ruralProjectMessageAll/skipDownloadReportedForm','40%', '70%','','下载,关闭')" class="layui-btn layui-btn-sm layui-bg-blue" > 上报信息导出</a></div>
 						</shiro:hasPermission>
 						<shiro:hasPermission name="ruralProject:ruralProjectMessageAll:recordDownload">
-							<div style="float: right"> <a href="javascript:void(0)" style='background-color: #FFB800' onclick="downloadDialogre('归档信息导出', '${ctx}/ruralProject/ruralProjectMessageAll/skipDownloadRecordForm','40%', '70%','','下载,关闭')" class="layui-btn layui-btn-sm" ><i class="fa fa-file-excel-o"></i> 归档信息导出</a></div>
+							<div style="float: right"> <a href="javascript:void(0)" style='background-color: #FFB800' onclick="downloadDialogre('归档信息导出', '${ctx}/ruralProject/ruralProjectMessageAll/skipDownloadRecordForm','40%', '70%','','下载,关闭')" class="layui-btn layui-btn-sm layui-bg-blue" > 归档信息导出</a></div>
 						</shiro:hasPermission>
-						<button class="layui-btn layui-btn-sm" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>
+						<shiro:hasPermission name="ruralProject:ruralProjectMessageAll:export">
+							<table:exportExcel url="${ctx}/ruralProject/ruralProjectMessageAll/export"></table:exportExcel><!-- 导出按钮 -->
+						</shiro:hasPermission>
+
 					</div>
 					<shiro:hasPermission name="ruralProject:ruralCostProjectMessage:reportSwitch">
 						<div style="float: right;margin-right: 30px;">

+ 3 - 0
src/main/webapp/webpage/modules/workinvoice/workInvoiceAllList.jsp

@@ -603,6 +603,9 @@
 						<shiro:hasPermission name="workinvoice:workInvoice:add">
 							<button class="layui-btn layui-btn-sm layui-bg-blue" title="发票管理" onclick="openDialogre('发票管理','${ctx}//workinvoiceAll/workInvoiceAll/form','95%','95%')">&nbsp;添加</button>
 						</shiro:hasPermission>
+						<shiro:hasPermission name="workinvoiceAll:workinvoiceAll:export">
+							<table:exportExcel url="${ctx}/workinvoiceAll/workInvoiceAll/export"></table:exportExcel><!-- 导出按钮 -->
+						</shiro:hasPermission>
 						<button class="layui-btn layui-btn-sm layui-bg-green" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>
 						<div class=" layui-btn-sm" style="float: right;width: 300px">
 							<span style="color: red">金额汇总(开票金额):${sumMoney}(元)</span>

+ 5 - 5
src/main/webapp/webpage/modules/workinvoice/workInvoiceList.jsp

@@ -619,6 +619,9 @@
 						<shiro:hasPermission name="workinvoice:workInvoice:add">
 							<button class="layui-btn layui-btn-sm layui-bg-blue" title="发票管理" onclick="openDialogre('发票管理','${ctx}//workinvoice/workInvoice/form','95%','95%')">&nbsp;添加</button>
 						</shiro:hasPermission>
+						<shiro:hasPermission name="workinvoice:workInvoice:export">
+							<table:exportExcel url="${ctx}/workinvoice/workInvoice/export"></table:exportExcel><!-- 导出按钮 -->
+						</shiro:hasPermission>
 						<button class="layui-btn layui-btn-sm layui-bg-green" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>
 						<div class=" layui-btn-sm" style="float: right;width: 300px">
 							<span style="color: red">金额汇总(开票金额):${sumMoney}(元)</span>
@@ -626,9 +629,6 @@
 					</div>
 
 
-					<%--<shiro:hasPermission name="workinvoice:workInvoice:del">
-						<table:delRow url="${ctx}/workinvoice/workInvoice/deleteAll" id="contentTable"></table:delRow><!-- 删除按钮 -->
-					</shiro:hasPermission>--%>
 					<div style="clear: both;"></div>
 				</div>
 				<table class="oa-table layui-table" id="contentTable"></table>
@@ -651,7 +651,7 @@
             ,cols: [[
 				//{checkbox: true, fixed: true},
                 {field:'index',align:'center', title: '序号',width:40}
-				,{field:'projName',align:'center', title: '项目名称11', minWidth:160,templet:function(d){
+				,{field:'projName',align:'center', title: '项目名称', minWidth:160,templet:function(d){
 						if(1 == d.showView && d.showView != undefined){
 							return "<a class=\"attention-info\" title=\"" + d.projName + "\" href=\"javascript:void(0);\" onclick=\"openDialogView('查看项目', '${ctx}/workinvoiceAll/workInvoiceAll/projectview?id=" + d.id +"','95%', '95%')\">" + d.projName + "</a>";
 						}else{
@@ -818,7 +818,7 @@
                     <c:if test="${workInvoice.invoiceState == '6' && fns:getUser().id == workInvoice.createBy.id}">,"conditionCancancel":"1"</c:if>
 					<c:if test="${workInvoice.invoiceState == '5' && fns:getUser().id == workInvoice.createBy.id}">,"cancellationFlag":"1"</c:if>
 
-					
+
 					<shiro:hasPermission name="workinvoice:workInvoice:alteredit">
                     <c:if test="${workInvoice.invoiceState == '5'}">,"canalter":"1"</c:if>
                     </shiro:hasPermission>

+ 3 - 0
src/main/webapp/webpage/modules/workreimbursement/workReimbursementAllList.jsp

@@ -148,6 +148,9 @@
                         <shiro:hasPermission name="workreimbursement:workReimbursementAll:add">
                             <a href="javascript:void(0)" onclick="openDialogre('新增报销单', '${ctx}/workreimbursement/workReimbursementAll/form?tabId=0','95%','95%')" class="layui-btn layui-btn-sm layui-bg-blue" >&nbsp;添加</a>
                         </shiro:hasPermission>
+                        <shiro:hasPermission name="workreimbursement:workReimbursementAll:export">
+                            <table:exportExcel url="${ctx}/workreimbursement/workReimbursementAll/export"></table:exportExcel><!-- 导出按钮 -->
+                        </shiro:hasPermission>
                         <button class="layui-btn layui-btn-sm" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>
                     </div>
                     <div style="clear: both;"></div>

+ 4 - 0
src/main/webapp/webpage/modules/workreimbursement/workReimbursementList.jsp

@@ -204,6 +204,10 @@
                         <shiro:hasPermission name="workreimbursement:workReimbursement:add">
                             <button onclick="openDialogre('新增报销单', '${ctx}/workreimbursement/workReimbursement/form?tabId=0','95%','95%')" class="layui-btn layui-btn-sm layui-bg-blue" >&nbsp;添加</button>
                         </shiro:hasPermission>
+                        <shiro:hasPermission name="workreimbursement:workReimbursement:export">
+                            <table:exportExcel url="${ctx}/workreimbursement/workReimbursement/export"></table:exportExcel><!-- 导出按钮 -->
+                        </shiro:hasPermission>
+
                         <button class="layui-btn layui-btn-sm" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>
                     </div>
                     <div style="clear: both;"></div>