Forráskód Böngészése

报销添加电子发票报销功能

user5 1 éve
szülő
commit
dd5734f6b0
17 módosított fájl, 709 hozzáadás és 309 törlés
  1. 15 0
      src/main/java/com/jeeplus/modules/workreimbursement/dao/WorkReimbursementDao.java
  2. 65 0
      src/main/java/com/jeeplus/modules/workreimbursement/entity/ReimbursementVATTax.java
  3. 35 0
      src/main/java/com/jeeplus/modules/workreimbursement/service/WorkReimbursementService.java
  4. 40 5
      src/main/java/com/jeeplus/modules/workreimbursement/web/WorkReimbursementController.java
  5. 7 3
      src/main/resources/mappings/modules/workreimbursement/ReimbursementVATTaxDao.xml
  6. 61 0
      src/main/resources/mappings/modules/workreimbursement/WorkReimbursementDao.xml
  7. 35 0
      src/main/webapp/WEB-INF/tags/table/exportEIExcel.tag
  8. 5 0
      src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementElectronicInvoiceAudit.jsp
  9. 86 62
      src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementElectronicInvoiceReimbursementModifyApply.jsp
  10. 5 0
      src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementNewAudit.jsp
  11. 86 60
      src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementNewFormAdd.jsp
  12. 86 60
      src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementNewModifyApply.jsp
  13. 5 0
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementAudit.jsp
  14. 86 59
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementFormAdd.jsp
  15. 5 0
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementFormDetail.jsp
  16. 1 0
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementList.jsp
  17. 86 60
      src/main/webapp/webpage/modules/workreimbursement/workReimbursementModifyApply.jsp

+ 15 - 0
src/main/java/com/jeeplus/modules/workreimbursement/dao/WorkReimbursementDao.java

@@ -11,6 +11,7 @@ import com.jeeplus.modules.statement.entity.StatementCompanyComprehensiveInfo;
 import com.jeeplus.modules.workbidproject.entity.WorkBidProject;
 import com.jeeplus.modules.workclientinfo.entity.WorkClientInfo;
 import com.jeeplus.modules.workproject.entity.WorkProject;
+import com.jeeplus.modules.workreimbursement.entity.ReimbursementVATTax;
 import com.jeeplus.modules.workreimbursement.entity.WorkReimbursement;
 import org.apache.ibatis.annotations.Param;
 
@@ -55,4 +56,18 @@ public interface WorkReimbursementDao extends CrudDao<WorkReimbursement> {
 	//部门级 报销表条数
 	Integer findDepartmentReimbursementReportPageCount(@Param("workReimbursement")WorkReimbursement workReimbursement, @Param("statementCompanyComprehensiveInfo")StatementCompanyComprehensiveInfo statementCompanyComprehensiveInfo, @Param("officeIdd") String officeIdd, @Param("beginDate")String beginDate, @Param("endDate")String endDate);
 
+	/**
+	 * 查询电子发票报销
+	 * @param idList
+	 * @return
+	 */
+	List<ReimbursementVATTax> getElectronicInvoiceList(@Param("idList") List<String> idList);
+
+	/**
+	 * 根据电子发票号码查询电子发票信息
+	 * @param invoiceNumber
+	 * @return
+	 */
+	ReimbursementVATTax getEffectiveDataByinvoiceNumber(String invoiceNumber);
+
 }

+ 65 - 0
src/main/java/com/jeeplus/modules/workreimbursement/entity/ReimbursementVATTax.java

@@ -4,7 +4,9 @@
 package com.jeeplus.modules.workreimbursement.entity;
 
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import com.jeeplus.common.persistence.DataEntity;
+import com.jeeplus.common.utils.excel.annotation.ExcelField;
 
 import java.math.BigDecimal;
 import java.util.Date;
@@ -17,6 +19,7 @@ import java.util.Date;
 public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 
 	private static final long serialVersionUID = 1L;
+	private String indexNumber;        //序号
 	private String invoiceCode;		// 发票代码
 	private String invoiceNumber;		// 发票号
 	private BigDecimal taxAmount;		// 税额
@@ -29,7 +32,15 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 	private String invoiceDateStr;		// 开票日期Str
 	private String invoiceUnit;		// 开票单位
 	private String reimbursementType;		// 报销类型(0:普通报销,1:电子发票报销)
+	private String invoiceProjectName;		// 发票项目名
 
+
+	private String submitterName;		// 报销人
+	private String submitterDate;		// 报销时间
+
+	private String remarks;
+
+	@ExcelField(title="金额", align=2, sort=7)
 	public BigDecimal getMoney() {
 		return money;
 	}
@@ -38,6 +49,7 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 		this.money = money;
 	}
 
+	@ExcelField(title="合计", align=2, sort=9)
 	public BigDecimal getSumMoney() {
 		return sumMoney;
 	}
@@ -63,6 +75,7 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 		this.invoiceCode = invoiceCode;
 	}
 
+	@ExcelField(title="发票号码", align=2, sort=3)
 	public String getInvoiceNumber() {
 		return invoiceNumber;
 	}
@@ -71,6 +84,7 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 		this.invoiceNumber = invoiceNumber;
 	}
 
+	@ExcelField(title="税额", align=2, sort=8)
 	public BigDecimal getTaxAmount() {
 		return taxAmount;
 	}
@@ -87,6 +101,7 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 		this.workReimbursement = workReimbursement;
 	}
 
+	@ExcelField(title="发票类型", align=2, sort=2)
 	public String getInvoiceType() {
 		return invoiceType;
 	}
@@ -95,6 +110,8 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 		this.invoiceType = invoiceType;
 	}
 
+	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
+	@ExcelField(title="开票日期", align=2, sort=4)
 	public Date getInvoiceDate() {
 		return invoiceDate;
 	}
@@ -103,6 +120,7 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 		this.invoiceDate = invoiceDate;
 	}
 
+	@ExcelField(title="开票单位", align=2, sort=5)
 	public String getInvoiceUnit() {
 		return invoiceUnit;
 	}
@@ -134,4 +152,51 @@ public class ReimbursementVATTax extends DataEntity<ReimbursementVATTax> {
 	public void setInvoiceTypeStr(String invoiceTypeStr) {
 		this.invoiceTypeStr = invoiceTypeStr;
 	}
+
+	@ExcelField(title="项目名称", align=2, sort=6)
+	public String getInvoiceProjectName() {
+		return invoiceProjectName;
+	}
+
+	public void setInvoiceProjectName(String invoiceProjectName) {
+		this.invoiceProjectName = invoiceProjectName;
+	}
+
+	@ExcelField(title="序号", align=2, sort=1)
+	public String getIndexNumber() {
+		return indexNumber;
+	}
+
+	public void setIndexNumber(String indexNumber) {
+		this.indexNumber = indexNumber;
+	}
+
+	@ExcelField(title="报销人", align=2, sort=10)
+	public String getSubmitterName() {
+		return submitterName;
+	}
+
+	public void setSubmitterName(String submitterName) {
+		this.submitterName = submitterName;
+	}
+
+	@ExcelField(title="报销日期", align=2, sort=11)
+	public String getSubmitterDate() {
+		return submitterDate;
+	}
+
+	public void setSubmitterDate(String submitterDate) {
+		this.submitterDate = submitterDate;
+	}
+
+	@ExcelField(title="备注", align=2, sort=12)
+	@Override
+	public String getRemarks() {
+		return remarks;
+	}
+
+	@Override
+	public void setRemarks(String remarks) {
+		this.remarks = remarks;
+	}
 }

+ 35 - 0
src/main/java/com/jeeplus/modules/workreimbursement/service/WorkReimbursementService.java

@@ -21,10 +21,12 @@ import com.jeeplus.modules.projectrecord.service.ProjectRecordsService;
 import com.jeeplus.modules.serialnum.service.SerialNumTplService;
 import com.jeeplus.modules.statement.entity.StatementCompanyComprehensiveInfo;
 import com.jeeplus.modules.statement.service.StatementCompanyComprehensiveService;
+import com.jeeplus.modules.sys.entity.MainDictDetail;
 import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.service.OfficeService;
 import com.jeeplus.modules.sys.service.WorkattachmentService;
+import com.jeeplus.modules.sys.utils.DictUtils;
 import com.jeeplus.modules.sys.utils.UserUtils;
 import com.jeeplus.modules.workactivity.dao.WorkActivityProcessDao;
 import com.jeeplus.modules.workactivity.entity.Activity;
@@ -62,6 +64,8 @@ import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Transactional;
 
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
 import java.text.SimpleDateFormat;
 import java.util.*;
 import java.util.regex.Matcher;
@@ -1782,4 +1786,35 @@ public class WorkReimbursementService extends CrudService<WorkReimbursementDao,
         }
         return page;
     }
+
+    /**
+     * 查询电子发票报销
+     * @return
+     */
+    public List<ReimbursementVATTax> getElectronicInvoiceList(List<String> idList) {
+        List<ReimbursementVATTax> electronicInvoiceList = workReimbursementDao.getElectronicInvoiceList(idList);
+        if(electronicInvoiceList.size()>0){
+            //获取专业类型
+            List<MainDictDetail> certificateMajor = DictUtils.getMainDictList("invoiceReimbursementType");
+            for (int i = 0;i<electronicInvoiceList.size(); i++ ){
+                ReimbursementVATTax reimbursementVATTax = electronicInvoiceList.get(i);
+                reimbursementVATTax.setIndexNumber(String.valueOf(i+1));
+                for (MainDictDetail dictDetail : certificateMajor) {
+                    if(dictDetail.getValue().equals(reimbursementVATTax.getInvoiceType())){
+                        reimbursementVATTax.setInvoiceType(dictDetail.getLabel());
+                    }
+                }
+            }
+        }
+        return electronicInvoiceList;
+    }
+
+    /**
+     * 根据电子发票号码查询电子发票信息
+     * @param invoiceNumber
+     * @return
+     */
+    public ReimbursementVATTax getEffectiveDataByinvoiceNumber(String invoiceNumber) {
+        return workReimbursementDao.getEffectiveDataByinvoiceNumber(invoiceNumber);
+    }
 }

+ 40 - 5
src/main/java/com/jeeplus/modules/workreimbursement/web/WorkReimbursementController.java

@@ -626,6 +626,30 @@ public class WorkReimbursementController extends BaseController {
 	}
 
 	/**
+	 * 导出电子发票报销excel文件
+	 */
+	@RequiresPermissions("workreimbursement:workReimbursement:export")
+	@RequestMapping(value = "electronicInvoiceExport", method=RequestMethod.POST)
+	public String electronicInvoiceExportFile(WorkReimbursement workReimbursement, HttpServletRequest request, HttpServletResponse response, RedirectAttributes redirectAttributes) {
+		try {
+			String fileName = "报销电子发票明细表"+DateUtils.getDate("yyyyMMddHHmmss")+".xlsx";
+			Page<WorkReimbursement> page = workReimbursementService.findPage(new Page<WorkReimbursement>(request, response, -1), workReimbursement);
+			List<String> idList = Lists.newArrayList();
+			for (WorkReimbursement reimbursement : page.getList()) {
+				idList.add(reimbursement.getId());
+			}
+			List<ReimbursementVATTax> electronicInvoiceList = workReimbursementService.getElectronicInvoiceList(idList);
+			String agent = request.getHeader("USER-AGENT");
+			new ExportExcel("报销电子发票明细表", ReimbursementVATTax.class).setDataList(electronicInvoiceList).write(response, fileName,agent).dispose();
+			return null;
+		} catch (Exception e) {
+			addMessage(redirectAttributes, "导出报销电子发票明细表失败!失败信息:"+e.getMessage());
+			logger.error("Exception e:"+e);
+		}
+		return "redirect:"+Global.getAdminPath()+"/workreimbursement/workReimbursement/?repage";
+	}
+
+	/**
 	 * 导入Excel数据
 
 	 */
@@ -1020,8 +1044,8 @@ public class WorkReimbursementController extends BaseController {
 
 	@RequestMapping(value = "disposeXmlFile", method=RequestMethod.POST)
 	@ResponseBody
-	public Map disposeXmlFile(HttpServletRequest request, MultipartFile multipartFile){
-		Map map = new HashMap();
+	public Map<String,Object> disposeXmlFile(HttpServletRequest request, MultipartFile multipartFile){
+		Map<String,Object> map = new HashMap();
 		//创建DOM4J解析器对象
 		try {
 			//MultipartFile转File
@@ -1039,13 +1063,24 @@ public class WorkReimbursementController extends BaseController {
 			// 获取所有taxSupervisionInfo节点的集合
 			NodeList taxSupervisionInfoList = document.getElementsByTagName("TaxSupervisionInfo");
 
-			Map map1 = xmlNodeListDataDispose(headerList, document);
-			Map map2 = xmlNodeListDataDispose(eInvoiceDataList, document);
-			Map map3 = xmlNodeListDataDispose(taxSupervisionInfoList, document);
+			Map<String,String> map1 = xmlNodeListDataDispose(headerList, document);
+			Map<String,String> map2 = xmlNodeListDataDispose(eInvoiceDataList, document);
+			Map<String,String> map3 = xmlNodeListDataDispose(taxSupervisionInfoList, document);
 			map.putAll(map1);
 			map.putAll(map2);
 			map.putAll(map3);
 
+			//对处理后的数据根据发票号进行数据库查询,查看是否存在已报销的电子发票数据
+			if(StringUtils.isNotBlank(map.get("InvoiceNumber").toString())){
+				ReimbursementVATTax invoiceNumber = workReimbursementService.getEffectiveDataByinvoiceNumber(map.get("InvoiceNumber").toString());
+				if(null != invoiceNumber){
+					map.put("flag",true);
+					map.put("message","发票号:" + map.get("InvoiceNumber").toString() + " 已发起或完成报销,请勿重复报销");
+				}else{
+					map.put("flag",false);
+				}
+			}
+
 		} catch (Exception e) {
 			e.printStackTrace();
 		}

+ 7 - 3
src/main/resources/mappings/modules/workreimbursement/ReimbursementVATTaxDao.xml

@@ -20,6 +20,7 @@
 		a.invoice_date AS "invoiceDate",
 		a.invoice_unit AS "invoiceUnit",
 		a.reimbursement_type AS "reimbursementType",
+		a.invoice_project_name AS "invoiceProjectName",
 		a.remarks AS "remarks"
 	</sql>
 	
@@ -92,7 +93,8 @@
 			invoice_type,
 			invoice_date,
 			invoice_unit,
-			reimbursement_type
+			reimbursement_type,
+			invoice_project_name
 		) VALUES (
 			#{id},
 			#{invoiceCode},
@@ -110,7 +112,8 @@
 			#{invoiceType},
 			#{invoiceDate},
 			#{invoiceUnit},
-			#{reimbursementType}
+			#{reimbursementType},
+			#{invoiceProjectName}
 		)
 	</insert>
 	
@@ -128,7 +131,8 @@
 			invoice_type = #{invoiceType},
 			invoice_date = #{invoiceDate},
 			invoice_unit = #{invoiceUnit},
-			reimbursement_type = #{reimbursementType}
+			reimbursement_type = #{reimbursementType},
+			invoice_project_name = #{invoiceProjectName}
 		WHERE id = #{id}
 	</update>
 	

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

@@ -913,4 +913,65 @@
 		</where>
 	</select>
 
+	<select id="getElectronicInvoiceList" resultType="com.jeeplus.modules.workreimbursement.entity.ReimbursementVATTax">
+		SELECT
+		rvt.invoice_number as "invoiceNumber",
+		rvt.tax_amount as "taxAmount",
+		rvt.money as "money",
+		rvt.sum_money as "sumMoney",
+		rvt.invoice_type as "invoiceType",
+		rvt.invoice_date as "invoiceDate",
+		date_format(rvt.invoice_date,'%Y-%m-%d') as "invoiceDateStr",
+		rvt.invoice_unit as "invoiceUnit",
+		rvt.reimbursement_type as "reimbursementType",
+		rvt.invoice_project_name as "invoiceProjectName",
+		rvt.remarks as "remarks",
+		su.name as "submitterName",
+		date_format(a.submitter_date,'%Y-%m-%d') as "submitterDate"
+		FROM reimbursement_vat_tax rvt
+		left join work_reimbursement a on rvt.work_reimbursement_id =a.id
+		left join sys_user su on su.id = a.submitter_id
+		<where>
+			a.del_flag = 0
+			and rvt.del_flag = 0
+			and rvt.reimbursement_type = 1
+
+			<if test="idList!=null and idList.size!=0">
+				and a.id in
+				<foreach collection="idList" item="id" separator="," open="(" close=")">
+					#{id}
+				</foreach>
+			</if>
+		</where>
+		order by a.number desc,rvt.update_date desc,rvt.invoice_number desc
+	</select>
+
+	<select id="getEffectiveDataByinvoiceNumber" resultType="com.jeeplus.modules.workreimbursement.entity.ReimbursementVATTax">
+		SELECT
+		rvt.invoice_number as "invoiceNumber",
+		rvt.tax_amount as "taxAmount",
+		rvt.money as "money",
+		rvt.sum_money as "sumMoney",
+		rvt.invoice_type as "invoiceType",
+		rvt.invoice_date as "invoiceDate",
+		date_format(rvt.invoice_date,'%Y-%m-%d') as "invoiceDateStr",
+		rvt.invoice_unit as "invoiceUnit",
+		rvt.reimbursement_type as "reimbursementType",
+		rvt.invoice_project_name as "invoiceProjectName",
+		rvt.remarks as "remarks",
+		su.name as "submitterName",
+		date_format(a.submitter_date,'%Y-%m-%d') as "submitterDate"
+		FROM reimbursement_vat_tax rvt
+		left join work_reimbursement a on rvt.work_reimbursement_id =a.id
+		left join sys_user su on su.id = a.submitter_id
+		<where>
+			a.del_flag = 0
+			and rvt.del_flag = 0
+			and rvt.reimbursement_type = 1
+			and rvt.invoice_number = #{invoiceNumber}
+		</where>
+		order by a.number desc,rvt.update_date desc,rvt.invoice_number desc
+		limit 1
+	</select>
+
 </mapper>

+ 35 - 0
src/main/webapp/WEB-INF/tags/table/exportEIExcel.tag

@@ -0,0 +1,35 @@
+<%@ tag language="java" pageEncoding="UTF-8"%>
+<%@ include file="/webpage/include/taglib.jsp"%>
+<%@ attribute name="url" type="java.lang.String" required="true"%>
+<%-- 使用方法: 1.将本tag写在查询的form之前;2.传入url --%>
+<button id="btnEIExport" class="layui-btn layui-btn-sm layui-bg-blue" style="background-color: #5FB878" data-toggle="tooltip" data-placement="left" title="导出电子发票报销">
+<%--    <i class="fa fa-file-excel-o"></i>--%>
+    导出电子发票报销</button>
+<script type="text/javascript">
+$(document).ready(function() {
+
+	$("#btnEIExport").click(function(){
+		top.layer.confirm('确认要导出电子发票报销Excel吗?', {icon: 3, title:'系统提示'}, function(index){
+		    //do something
+		    	//导出之前备份
+		    	var url =  $("#searchForm").attr("action");
+		    	var pageNo =  $("#pageNo").val();
+		    	var pageSize = $("#pageSize").val();
+		    	//导出excel
+		        $("#searchForm").attr("action","${url}");
+			    $("#pageNo").val(-1);
+				$("#pageSize").val(-1);
+				$("#searchForm").submit();
+
+				//导出excel之后还原
+				$("#searchForm").attr("action",url);
+			    $("#pageNo").val(pageNo);
+				$("#pageSize").val(pageSize);
+		    top.layer.close(index);
+		});
+	});
+    
+});
+
+
+</script>

+ 5 - 0
src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementElectronicInvoiceAudit.jsp

@@ -412,6 +412,7 @@
 					<thead>
 					<tr>
 						<th width="200px"><font color="red">*</font>发票类型</th>
+						<th width="200px"><font color="red">*</font>发票项目名</th>
 						<th width="200px"><font color="red">*</font>发票号</th>
 						<th width="200px"><font color="red">*</font>开票日期</th>
 						<th width="200px"><font color="red">*</font>开票单位</th>
@@ -429,6 +430,10 @@
 								<td>
 									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceType" onmouseover="this.title=this.value" readOnly="true" maxlength="30" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceTypeStr}" onmouseover="this.title=this.value"  class="form-control "/>
 								</td>
+									<%--发票项目名--%>
+								<td>
+									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" readOnly="true" maxlength="50"type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" placeholder="请输入发票项目名"  class="form-control "/>
+								</td>
 									<%--发票号--%>
 								<td>
 									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" readOnly="true" maxlength="30" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control "/>

+ 86 - 62
src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementElectronicInvoiceReimbursementModifyApply.jsp

@@ -496,18 +496,7 @@
         function insertTitle(tValue){
             var list = "${workReimbursement.workAttachments}";
             var size = (list.split('url')).length-1;
-            var files = $("#attachment_file")[0].files;            for(var i = 0;i<files.length;i++) {                var file = files[i];
-            var attachmentId = "";
-            var attachmentFlag = "6";
-            console.log(file);
-            var timestamp=new Date().getTime();
-
-            var storeAs = "wrkReimbursement";
-            var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
-            var divId = "_attachment";
-            $("#addFile"+divId).show();
-            multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
-
+            var files = $("#attachment_file")[0].files;
 
             //判断报销类型是否为电子报销
             var reimbursementType=$('input:radio[name="reimbursementType"]:checked').val();
@@ -527,61 +516,87 @@
                             contentType: false,
                             processData: false,
                             success:function (data) {
-                                console.log(data)
-                                //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
-                                var includeFlag = false;
-                                //xml文件处理
-                                //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
-                                //获取专用发票信息 行数
-                                var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
-                                for(var i = 0;i < trlen;i++){
-                                    var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
-                                    var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
-                                    var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
-                                    var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
-                                    var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
-                                    var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
-                                    var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
-                                    var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
-                                    var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
-                                    var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
+                                if(data.flag){
+                                    top.layer.msg(data.message,{icon:2});
+                                }else{
+                                    //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
+                                    var includeFlag = false;
+                                    //xml文件处理
+                                    //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
+                                    //获取专用发票信息 行数
+                                    var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
+                                    for(var i = 0;i < trlen;i++){
+                                        var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
+                                        var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
+                                        var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
+                                        var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
+                                        var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
+                                        var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
+                                        var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
+                                        var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
+                                        var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
+                                        var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
 
-                                    if(invoiceNumber === data.InvoiceNumber){
-                                        includeFlag = true
-                                        //数据处理
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val("");
+                                        if(invoiceNumber === data.InvoiceNumber){
+                                            includeFlag = true
+                                            //数据处理
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(9).find("input").eq(0).val("");
+                                        }
                                     }
-                                }
-                                //若发票号不存在。则新增行将对应信息添加进去
-                                if(!includeFlag){
-                                    addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+                                    //若发票号不存在。则新增行将对应信息添加进去
+                                    if(!includeFlag){
+                                        addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
 
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(9).find("input").eq(0).val("");
 
-                                    reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                        reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    }
+                                    var attachmentId = "";
+                                    var attachmentFlag = "6";
+                                    var timestamp=new Date().getTime();
+
+                                    var storeAs = "wrkReimbursement";
+                                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                                    var divId = "_attachment";
+                                    $("#addFile"+divId).show();
+                                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);
                                 }
+
                             }
                         });
                     }
                 }
-            }
+            }else{
+                for(var i = 0;i<files.length;i++) {                var file = files[i];
+                    var attachmentId = "";
+                    var attachmentFlag = "6";
+                    console.log(file);
+                    var timestamp=new Date().getTime();
 
+                    var storeAs = "wrkReimbursement";
+                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                    var divId = "_attachment";
+                    $("#addFile"+divId).show();
+                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
+            }
 
         }
         function insertTitleCollection(tValue){
@@ -1073,7 +1088,7 @@
 
 
         <div class="form-group layui-row count2">
-            <div class="form-group-label"><h2>电子发票信息</h2></div>
+            <div class="form-group-label"><h2>电子发票信息<span style="color: red;font-size: 14px"> (可通过上传电子发票xml文件自动填写电子发票信息)</span></h2></div>
             <div class="layui-item nav-btns">
                 <a class="nav-btn nav-btn-add" onclick="addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;" title="新增"><i class="fa fa-plus"></i>&nbsp;新增</a>
             </div>
@@ -1081,13 +1096,14 @@
                 <table id="contentTable3" class="table table-bordered table-condensed can-edit">
                     <thead>
                     <tr>
-                        <th width="200px"><font color="red">*</font>发票类型</th>
+                        <th width="150px"><font color="red">*</font>发票类型</th>
+                        <th width="200px"><font color="red">*</font>发票项目名</th>
                         <th width="200px"><font color="red">*</font>发票号</th>
                         <th width="200px"><font color="red">*</font>开票日期</th>
                         <th width="200px"><font color="red">*</font>开票单位</th>
-                        <th width="200px"><font color="red">*</font>金额</th>
-                        <th width="200px"><font color="red">*</font>税额</th>
-                        <th width="200px"><font color="red">*</font>价税合计</th>
+                        <th width="150px"><font color="red">*</font>金额</th>
+                        <th width="150px"><font color="red">*</font>税额</th>
+                        <th width="150px"><font color="red">*</font>价税合计</th>
                         <th width="200px">备注</th>
                         <th width="150px">操作</th>
                     </tr>
@@ -1109,6 +1125,10 @@
                                         </c:forEach>
                                     </select>
                                 </td>
+                                    <%--发票项目名--%>
+                                <td>
+                                    <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceProjectName" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                                </td>
                                     <%--发票号--%>
                                 <td>
                                     <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceNumber" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control judgment number "/>
@@ -1160,6 +1180,10 @@
                                 </c:forEach>
                             </select>
                         </td>
+                            <%--发票项目名--%>
+                        <td>
+                            <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceProjectName" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                        </td>
                             <%--发票号--%>
                         <td>
                             <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceNumber" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceNumber" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" maxlength="32" placeholder="请输入发票号"  class="form-control judgment number "/>

+ 5 - 0
src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementNewAudit.jsp

@@ -409,6 +409,7 @@
 					<thead>
 					<tr>
 						<th width="200px"><font color="red">*</font>发票类型</th>
+						<th width="200px"><font color="red">*</font>发票项目名</th>
 						<th width="200px"><font color="red">*</font>发票号</th>
 						<th width="200px"><font color="red">*</font>开票日期</th>
 						<th width="200px"><font color="red">*</font>开票单位</th>
@@ -426,6 +427,10 @@
 								<td>
 									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceType" onmouseover="this.title=this.value" readOnly="true" maxlength="30" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceTypeStr}" onmouseover="this.title=this.value"  class="form-control "/>
 								</td>
+									<%--发票项目名--%>
+								<td>
+									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" readOnly="true" maxlength="50"type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" placeholder="请输入发票项目名"  class="form-control "/>
+								</td>
 									<%--发票号--%>
 								<td>
 									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" readOnly="true" maxlength="30" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control "/>

+ 86 - 60
src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementNewFormAdd.jsp

@@ -431,17 +431,7 @@
         function insertTitle(tValue){
             var list = "${workReimbursement.workAttachments}";
             var size = (list.split('url')).length-1;
-            var files = $("#attachment_file")[0].files;            for(var i = 0;i<files.length;i++) {                var file = files[i];
-            var attachmentId = "";
-            var attachmentFlag = "6";
-            console.log(file);
-            var timestamp=new Date().getTime();
-
-            var storeAs = "wrkReimbursement";
-            var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
-            var divId = "_attachment";
-            $("#addFile"+divId).show();
-            multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
+            var files = $("#attachment_file")[0].files;
 
             //判断报销类型是否为电子报销
             var reimbursementType=$('input:radio[name="reimbursementType"]:checked').val();
@@ -461,59 +451,86 @@
                             contentType: false,
                             processData: false,
                             success:function (data) {
-                                console.log(data)
-                                //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
-                                var includeFlag = false;
-                                //xml文件处理
-                                //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
-                                //获取专用发票信息 行数
-                                var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
-                                for(var i = 0;i < trlen;i++){
-                                    var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
-                                    var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
-                                    var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
-                                    var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
-                                    var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
-                                    var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
-                                    var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
-                                    var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
-                                    var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
-                                    var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
+                                if(data.flag){
+                                    top.layer.msg(data.message,{icon:2});
+                                }else{
+                                    //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
+                                    var includeFlag = false;
+                                    //xml文件处理
+                                    //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
+                                    //获取专用发票信息 行数
+                                    var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
+                                    for(var i = 0;i < trlen;i++){
+                                        var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
+                                        var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
+                                        var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
+                                        var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
+                                        var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
+                                        var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
+                                        var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
+                                        var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
+                                        var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
+                                        var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
 
-                                    if(invoiceNumber === data.InvoiceNumber){
-                                        includeFlag = true
-                                        //数据处理
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val("");
+                                        if(invoiceNumber === data.InvoiceNumber){
+                                            includeFlag = true
+                                            //数据处理
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(9).find("input").eq(0).val("");
+                                        }
                                     }
-                                }
-                                //若发票号不存在。则新增行将对应信息添加进去
-                                if(!includeFlag){
-                                    addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+                                    //若发票号不存在。则新增行将对应信息添加进去
+                                    if(!includeFlag){
+                                        addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(9).find("input").eq(0).val("");
 
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val("");
+                                        reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    }
+                                    var attachmentId = "";
+                                    var attachmentFlag = "6";
+                                    var timestamp=new Date().getTime();
 
-                                    reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    var storeAs = "wrkReimbursement";
+                                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                                    var divId = "_attachment";
+                                    $("#addFile"+divId).show();
+                                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);
                                 }
+
                             }
                         });
                     }
                 }
+            }else{
+                for(var i = 0;i<files.length;i++) {                var file = files[i];
+                    var attachmentId = "";
+                    var attachmentFlag = "6";
+                    console.log(file);
+                    var timestamp=new Date().getTime();
+
+                    var storeAs = "wrkReimbursement";
+                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                    var divId = "_attachment";
+                    $("#addFile"+divId).show();
+                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
             }
 
         }
@@ -987,7 +1004,7 @@
         </div>
 
         <div class="form-group layui-row count2">
-            <div class="form-group-label"><h2>电子发票信息</h2></div>
+            <div class="form-group-label"><h2>电子发票信息<span style="color: red;font-size: 14px"> (可通过上传电子发票xml文件自动填写电子发票信息)</span></h2></div>
             <div class="layui-item nav-btns">
                 <a class="nav-btn nav-btn-add" onclick="addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;" title="新增"><i class="fa fa-plus"></i>&nbsp;新增</a>
             </div>
@@ -995,13 +1012,14 @@
                 <table id="contentTable3" class="table table-bordered table-condensed can-edit">
                     <thead>
                     <tr>
-                        <th width="200px"><font color="red">*</font>发票类型</th>
+                        <th width="150px"><font color="red">*</font>发票类型</th>
+                        <th width="200px"><font color="red">*</font>发票项目名</th>
                         <th width="200px"><font color="red">*</font>发票号</th>
                         <th width="200px"><font color="red">*</font>开票日期</th>
                         <th width="200px"><font color="red">*</font>开票单位</th>
-                        <th width="200px"><font color="red">*</font>金额</th>
-                        <th width="200px"><font color="red">*</font>税额</th>
-                        <th width="200px"><font color="red">*</font>价税合计</th>
+                        <th width="150px"><font color="red">*</font>金额</th>
+                        <th width="150px"><font color="red">*</font>税额</th>
+                        <th width="150px"><font color="red">*</font>价税合计</th>
                         <th width="200px">备注</th>
                         <th width="150px">操作</th>
                     </tr>
@@ -1023,6 +1041,10 @@
                                         </c:forEach>
                                     </select>
                                 </td>
+                                    <%--发票项目名--%>
+                                <td>
+                                    <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceProjectName" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                                </td>
                                     <%--发票号--%>
                                 <td>
                                     <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceNumber" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control judgment number "/>
@@ -1074,6 +1096,10 @@
                                 </c:forEach>
                             </select>
                         </td>
+                            <%--发票项目名--%>
+                        <td>
+                            <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceProjectName" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                        </td>
                             <%--发票号--%>
                         <td>
                             <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceNumber" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceNumber" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" maxlength="32" placeholder="请输入发票号"  class="form-control judgment number "/>

+ 86 - 60
src/main/webapp/webpage/modules/workreimbursement/new/workReimbursementNewModifyApply.jsp

@@ -493,17 +493,7 @@
         function insertTitle(tValue){
             var list = "${workReimbursement.workAttachments}";
             var size = (list.split('url')).length-1;
-            var files = $("#attachment_file")[0].files;            for(var i = 0;i<files.length;i++) {                var file = files[i];
-            var attachmentId = "";
-            var attachmentFlag = "6";
-            console.log(file);
-            var timestamp=new Date().getTime();
-
-            var storeAs = "wrkReimbursement";
-            var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
-            var divId = "_attachment";
-            $("#addFile"+divId).show();
-            multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
+            var files = $("#attachment_file")[0].files;
 
             //判断报销类型是否为电子报销
             var reimbursementType=$('input:radio[name="reimbursementType"]:checked').val();
@@ -523,59 +513,86 @@
                             contentType: false,
                             processData: false,
                             success:function (data) {
-                                console.log(data)
-                                //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
-                                var includeFlag = false;
-                                //xml文件处理
-                                //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
-                                //获取专用发票信息 行数
-                                var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
-                                for(var i = 0;i < trlen;i++){
-                                    var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
-                                    var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
-                                    var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
-                                    var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
-                                    var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
-                                    var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
-                                    var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
-                                    var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
-                                    var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
-                                    var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
+                                if(data.flag){
+                                    top.layer.msg(data.message,{icon:2});
+                                }else{
+                                    //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
+                                    var includeFlag = false;
+                                    //xml文件处理
+                                    //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
+                                    //获取专用发票信息 行数
+                                    var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
+                                    for(var i = 0;i < trlen;i++){
+                                        var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
+                                        var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
+                                        var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
+                                        var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
+                                        var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
+                                        var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
+                                        var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
+                                        var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
+                                        var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
+                                        var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
 
-                                    if(invoiceNumber === data.InvoiceNumber){
-                                        includeFlag = true
-                                        //数据处理
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val("");
+                                        if(invoiceNumber === data.InvoiceNumber){
+                                            includeFlag = true
+                                            //数据处理
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(9).find("input").eq(0).val("");
+                                        }
                                     }
-                                }
-                                //若发票号不存在。则新增行将对应信息添加进去
-                                if(!includeFlag){
-                                    addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+                                    //若发票号不存在。则新增行将对应信息添加进去
+                                    if(!includeFlag){
+                                        addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(9).find("input").eq(0).val("");
 
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val("");
+                                        reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    }
+                                    var attachmentId = "";
+                                    var attachmentFlag = "6";
+                                    var timestamp=new Date().getTime();
 
-                                    reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    var storeAs = "wrkReimbursement";
+                                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                                    var divId = "_attachment";
+                                    $("#addFile"+divId).show();
+                                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);
                                 }
+
                             }
                         });
                     }
                 }
+            }else{
+                for(var i = 0;i<files.length;i++) {                var file = files[i];
+                    var attachmentId = "";
+                    var attachmentFlag = "6";
+                    console.log(file);
+                    var timestamp=new Date().getTime();
+
+                    var storeAs = "wrkReimbursement";
+                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                    var divId = "_attachment";
+                    $("#addFile"+divId).show();
+                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
             }
 
         }
@@ -1255,7 +1272,7 @@
         </div>
 
         <div class="form-group layui-row count2">
-            <div class="form-group-label"><h2>电子发票信息</h2></div>
+            <div class="form-group-label"><h2>电子发票信息<span style="color: red;font-size: 14px"> (可通过上传电子发票xml文件自动填写电子发票信息)</span></h2></div>
             <div class="layui-item nav-btns">
                 <a class="nav-btn nav-btn-add" onclick="addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;" title="新增"><i class="fa fa-plus"></i>&nbsp;新增</a>
             </div>
@@ -1263,13 +1280,14 @@
                 <table id="contentTable3" class="table table-bordered table-condensed can-edit">
                     <thead>
                     <tr>
-                        <th width="200px"><font color="red">*</font>发票类型</th>
+                        <th width="150px"><font color="red">*</font>发票类型</th>
+                        <th width="200px"><font color="red">*</font>发票项目名</th>
                         <th width="200px"><font color="red">*</font>发票号</th>
                         <th width="200px"><font color="red">*</font>开票日期</th>
                         <th width="200px"><font color="red">*</font>开票单位</th>
-                        <th width="200px"><font color="red">*</font>金额</th>
-                        <th width="200px"><font color="red">*</font>税额</th>
-                        <th width="200px"><font color="red">*</font>价税合计</th>
+                        <th width="150px"><font color="red">*</font>金额</th>
+                        <th width="150px"><font color="red">*</font>税额</th>
+                        <th width="150px"><font color="red">*</font>价税合计</th>
                         <th width="200px">备注</th>
                         <th width="150px">操作</th>
                     </tr>
@@ -1291,6 +1309,10 @@
                                         </c:forEach>
                                     </select>
                                 </td>
+                                    <%--发票项目名--%>
+                                <td>
+                                    <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceProjectName" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                                </td>
                                     <%--发票号--%>
                                 <td>
                                     <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceNumber" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control judgment number "/>
@@ -1342,6 +1364,10 @@
                                 </c:forEach>
                             </select>
                         </td>
+                            <%--发票项目名--%>
+                        <td>
+                            <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceProjectName" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                        </td>
                             <%--发票号--%>
                         <td>
                             <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceNumber" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceNumber" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" maxlength="32" placeholder="请输入发票号"  class="form-control judgment number "/>

+ 5 - 0
src/main/webapp/webpage/modules/workreimbursement/workReimbursementAudit.jsp

@@ -406,6 +406,7 @@
 					<thead>
 					<tr>
 						<th width="200px"><font color="red">*</font>发票类型</th>
+						<th width="200px"><font color="red">*</font>发票项目名</th>
 						<th width="200px"><font color="red">*</font>发票号</th>
 						<th width="200px"><font color="red">*</font>开票日期</th>
 						<th width="200px"><font color="red">*</font>开票单位</th>
@@ -423,6 +424,10 @@
 								<td>
 									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceType" onmouseover="this.title=this.value" readOnly="true" maxlength="30" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceTypeStr}" onmouseover="this.title=this.value"  class="form-control "/>
 								</td>
+									<%--发票项目名--%>
+								<td>
+									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" readOnly="true" maxlength="50"type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" placeholder="请输入发票项目名"  class="form-control "/>
+								</td>
 									<%--发票号--%>
 								<td>
 									<input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" readOnly="true" maxlength="30" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control "/>

+ 86 - 59
src/main/webapp/webpage/modules/workreimbursement/workReimbursementFormAdd.jsp

@@ -511,16 +511,7 @@
         function insertTitle(tValue){
             var list = "${workReimbursement.workAttachments}";
             var size = (list.split('url')).length-1;
-            var files = $("#attachment_file")[0].files;            for(var i = 0;i<files.length;i++) {                var file = files[i];
-                var attachmentId = "";
-                var attachmentFlag = "6";
-                var timestamp=new Date().getTime();
-
-                var storeAs = "wrkReimbursement";
-                var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
-                var divId = "_attachment";
-                $("#addFile"+divId).show();
-                multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
+            var files = $("#attachment_file")[0].files;
 
             //判断报销类型是否为电子报销
             var reimbursementType=$('input:radio[name="reimbursementType"]:checked').val();
@@ -540,59 +531,86 @@
                             contentType: false,
                             processData: false,
                             success:function (data) {
-                                console.log(data)
-                                //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
-                                var includeFlag = false;
-                                //xml文件处理
-                                //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
-                                //获取专用发票信息 行数
-                                var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
-                                for(var i = 0;i < trlen;i++){
-                                    var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
-                                    var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
-                                    var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
-                                    var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
-                                    var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
-                                    var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
-                                    var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
-                                    var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
-                                    var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
-                                    var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
+                                if(data.flag){
+                                    top.layer.msg(data.message,{icon:2});
+                                }else{
+                                    //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
+                                    var includeFlag = false;
+                                    //xml文件处理
+                                    //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
+                                    //获取专用发票信息 行数
+                                    var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
+                                    for(var i = 0;i < trlen;i++){
+                                        var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
+                                        var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
+                                        var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
+                                        var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
+                                        var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
+                                        var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
+                                        var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
+                                        var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
+                                        var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
+                                        var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
 
-                                    if(invoiceNumber === data.InvoiceNumber){
-                                        includeFlag = true
-                                        //数据处理
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val("");
+                                        if(invoiceNumber === data.InvoiceNumber){
+                                            includeFlag = true
+                                            //数据处理
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(9).find("input").eq(0).val("");
+                                        }
                                     }
-                                }
-                                //若发票号不存在。则新增行将对应信息添加进去
-                                if(!includeFlag){
-                                    addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+                                    //若发票号不存在。则新增行将对应信息添加进去
+                                    if(!includeFlag){
+                                        addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
 
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(9).find("input").eq(0).val("");
+
+                                        reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    }
+                                    var attachmentId = "";
+                                    var attachmentFlag = "6";
+                                    var timestamp=new Date().getTime();
 
-                                    reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    var storeAs = "wrkReimbursement";
+                                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                                    var divId = "_attachment";
+                                    $("#addFile"+divId).show();
+                                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);
                                 }
+
                             }
                         });
                     }
                 }
+            }else{
+                for(var i = 0;i<files.length;i++) {                var file = files[i];
+                    var attachmentId = "";
+                    var attachmentFlag = "6";
+                    console.log(file);
+                    var timestamp=new Date().getTime();
+
+                    var storeAs = "wrkReimbursement";
+                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                    var divId = "_attachment";
+                    $("#addFile"+divId).show();
+                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
             }
 
         }
@@ -1168,7 +1186,7 @@
         </div>
 
         <div class="form-group layui-row count2">
-            <div class="form-group-label"><h2>电子发票信息</h2></div>
+            <div class="form-group-label"><h2>电子发票信息<span style="color: red;font-size: 14px"> (可通过上传电子发票xml文件自动填写电子发票信息)</span></h2></div>
             <div class="layui-item nav-btns">
                 <a class="nav-btn nav-btn-add" onclick="addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;" title="新增"><i class="fa fa-plus"></i>&nbsp;新增</a>
             </div>
@@ -1176,13 +1194,14 @@
                 <table id="contentTable3" class="table table-bordered table-condensed can-edit">
                     <thead>
                     <tr>
-                        <th width="200px"><font color="red">*</font>发票类型</th>
+                        <th width="150px"><font color="red">*</font>发票类型</th>
+                        <th width="200px"><font color="red">*</font>发票项目名</th>
                         <th width="200px"><font color="red">*</font>发票号</th>
                         <th width="200px"><font color="red">*</font>开票日期</th>
                         <th width="200px"><font color="red">*</font>开票单位</th>
-                        <th width="200px"><font color="red">*</font>金额</th>
-                        <th width="200px"><font color="red">*</font>税额</th>
-                        <th width="200px"><font color="red">*</font>价税合计</th>
+                        <th width="150px"><font color="red">*</font>金额</th>
+                        <th width="150px"><font color="red">*</font>税额</th>
+                        <th width="150px"><font color="red">*</font>价税合计</th>
                         <th width="200px">备注</th>
                         <th width="150px">操作</th>
                     </tr>
@@ -1204,6 +1223,10 @@
                                         </c:forEach>
                                     </select>
                                 </td>
+                                    <%--发票项目名--%>
+                                <td>
+                                    <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceProjectName" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                                </td>
                                     <%--发票号--%>
                                 <td>
                                     <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceNumber" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control judgment number "/>
@@ -1255,6 +1278,10 @@
                                 </c:forEach>
                             </select>
                         </td>
+                            <%--发票项目名--%>
+                        <td>
+                            <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceProjectName" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                        </td>
                             <%--发票号--%>
                         <td>
                             <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceNumber" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceNumber" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" maxlength="32" placeholder="请输入发票号"  class="form-control judgment number "/>

+ 5 - 0
src/main/webapp/webpage/modules/workreimbursement/workReimbursementFormDetail.jsp

@@ -465,6 +465,7 @@
                 <thead>
                 <tr>
                     <th width="200px"><font color="red">*</font>发票类型</th>
+                    <th width="200px"><font color="red">*</font>发票项目名</th>
                     <th width="200px"><font color="red">*</font>发票号</th>
                     <th width="200px"><font color="red">*</font>开票日期</th>
                     <th width="200px"><font color="red">*</font>开票单位</th>
@@ -482,6 +483,10 @@
                             <td>
                                 <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceType" onmouseover="this.title=this.value" readOnly="true" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceType" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceType}" onmouseover="this.title=this.value"  class="form-control "/>
                             </td>
+                                <%--发票项目名--%>
+                            <td>
+                                <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" readOnly="true" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceProjectName" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" placeholder="请输入发票项目名"  class="form-control "/>
+                            </td>
                                 <%--发票号--%>
                             <td>
                                 <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" readOnly="true" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceNumber" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control "/>

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

@@ -223,6 +223,7 @@
                         </shiro:hasPermission>
                         <shiro:hasPermission name="workreimbursement:workReimbursement:export">
                             <table:exportExcel url="${ctx}/workreimbursement/workReimbursement/export"></table:exportExcel><!-- 导出按钮 -->
+                            <table:exportEIExcel url="${ctx}/workreimbursement/workReimbursement/electronicInvoiceExport"></table:exportEIExcel><!-- 导出按钮 -->
                         </shiro:hasPermission>
 
                         <button class="layui-btn layui-btn-sm" data-toggle="tooltip" data-placement="left" onclick="sortOrRefresh()" title="刷新"> 刷新</button>

+ 86 - 60
src/main/webapp/webpage/modules/workreimbursement/workReimbursementModifyApply.jsp

@@ -491,17 +491,7 @@
         function insertTitle(tValue){
             var list = "${workReimbursement.workAttachments}";
             var size = (list.split('url')).length-1;
-            var files = $("#attachment_file")[0].files;            for(var i = 0;i<files.length;i++) {                var file = files[i];
-            var attachmentId = "";
-            var attachmentFlag = "6";
-            console.log(file);
-            var timestamp=new Date().getTime();
-
-            var storeAs = "wrkReimbursement";
-            var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
-            var divId = "_attachment";
-            $("#addFile"+divId).show();
-            multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
+            var files = $("#attachment_file")[0].files;
 
             //判断报销类型是否为电子报销
             var reimbursementType=$('input:radio[name="reimbursementType"]:checked').val();
@@ -521,59 +511,86 @@
                             contentType: false,
                             processData: false,
                             success:function (data) {
-                                console.log(data)
-                                //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
-                                var includeFlag = false;
-                                //xml文件处理
-                                //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
-                                //获取专用发票信息 行数
-                                var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
-                                for(var i = 0;i < trlen;i++){
-                                    var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
-                                    var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
-                                    var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
-                                    var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
-                                    var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
-                                    var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
-                                    var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
-                                    var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
-                                    var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
-                                    var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
+                                if(data.flag){
+                                    top.layer.msg(data.message,{icon:2});
+                                }else{
+                                    //创建判断值,若行信息存在相同的发票号,则进行数据检查调整,若不存在发票号,则新增行,并将信息写入
+                                    var includeFlag = false;
+                                    //xml文件处理
+                                    //首先查询专用发票信息中对应发票号是否存在,并对应其数据是否正确
+                                    //获取专用发票信息 行数
+                                    var trlen = $("#reimbursementElectronicInvoiceVATTaxes tr").length;
+                                    for(var i = 0;i < trlen;i++){
+                                        var id = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(0).val();
+                                        var delFlag = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(0).find("input").eq(1).val();
+                                        var invoiceType = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val();
+                                        var invoiceNumber = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val();
+                                        var invoiceDate = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val();
+                                        var invoiceUnit = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val();
+                                        var money = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val();
+                                        var taxAmount = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val();
+                                        var sumMoney = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val();
+                                        var remarks = $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val();
 
-                                    if(invoiceNumber === data.InvoiceNumber){
-                                        includeFlag = true
-                                        //数据处理
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val("");
+                                        if(invoiceNumber === data.InvoiceNumber){
+                                            includeFlag = true
+                                            //数据处理
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                            $("#reimbursementElectronicInvoiceVATTaxes tr").eq(i).find("td").eq(9).find("input").eq(0).val("");
+                                        }
                                     }
-                                }
-                                //若发票号不存在。则新增行将对应信息添加进去
-                                if(!includeFlag){
-                                    addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+                                    //若发票号不存在。则新增行将对应信息添加进去
+                                    if(!includeFlag){
+                                        addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);
+
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.IssuItemInformationItemName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.InvoiceNumber);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BasicInformationRequestTime);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.BuyerInformationBuyerName);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
+                                        $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(9).find("input").eq(0).val("");
 
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(0).val("");
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(0).find("input").eq(1).val(0);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(1).find("select").eq(0).val(data.InherentLabelGeneralOrSpecialVATLabelCode);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(2).find("input").eq(0).val(data.InvoiceNumber);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(3).find("input").eq(0).val(data.BasicInformationRequestTime);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(4).find("input").eq(0).val(data.BuyerInformationBuyerName);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(5).find("input").eq(0).val(data.IssuItemInformationAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(6).find("input").eq(0).val(data.IssuItemInformationComTaxAm);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(7).find("input").eq(0).val(data.IssuItemInformationTotaltaxIncludedAmount);
-                                    $("#reimbursementElectronicInvoiceVATTaxes tr").eq(reimbursementElectronicInvoiceVATTaxesRowIdx).find("td").eq(8).find("input").eq(0).val("");
+                                        reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    }
+                                    var attachmentId = "";
+                                    var attachmentFlag = "6";
+                                    var timestamp=new Date().getTime();
 
-                                    reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;
+                                    var storeAs = "wrkReimbursement";
+                                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                                    var divId = "_attachment";
+                                    $("#addFile"+divId).show();
+                                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);
                                 }
+
                             }
                         });
                     }
                 }
+            }else{
+                for(var i = 0;i<files.length;i++) {                var file = files[i];
+                    var attachmentId = "";
+                    var attachmentFlag = "6";
+                    console.log(file);
+                    var timestamp=new Date().getTime();
+
+                    var storeAs = "wrkReimbursement";
+                    var uploadPath="http://gangwan-app.oss-cn-hangzhou.aliyuncs.com/"+storeAs;/*将这段字符串存到数据库即可*/
+                    var divId = "_attachment";
+                    $("#addFile"+divId).show();
+                    multipartUploadWithSts(storeAs, file,attachmentId,attachmentFlag,uploadPath,divId,size);}
             }
 
         }
@@ -1253,7 +1270,7 @@
         </div>
 
         <div class="form-group layui-row count2">
-            <div class="form-group-label"><h2>电子发票信息</h2></div>
+            <div class="form-group-label"><h2>电子发票信息<span style="color: red;font-size: 14px"> (可通过上传电子发票xml文件自动填写电子发票信息)</span></h2></div>
             <div class="layui-item nav-btns">
                 <a class="nav-btn nav-btn-add" onclick="addRow('#reimbursementElectronicInvoiceVATTaxes', reimbursementElectronicInvoiceVATTaxesRowIdx, reimbursementElectronicInvoiceVATTaxesTpl);reimbursementElectronicInvoiceVATTaxesRowIdx = reimbursementElectronicInvoiceVATTaxesRowIdx + 1;" title="新增"><i class="fa fa-plus"></i>&nbsp;新增</a>
             </div>
@@ -1261,13 +1278,14 @@
                 <table id="contentTable3" class="table table-bordered table-condensed can-edit">
                     <thead>
                     <tr>
-                        <th width="200px"><font color="red">*</font>发票类型</th>
+                        <th width="150px"><font color="red">*</font>发票类型</th>
+                        <th width="200px"><font color="red">*</font>发票项目名</th>
                         <th width="200px"><font color="red">*</font>发票号</th>
                         <th width="200px"><font color="red">*</font>开票日期</th>
                         <th width="200px"><font color="red">*</font>开票单位</th>
-                        <th width="200px"><font color="red">*</font>金额</th>
-                        <th width="200px"><font color="red">*</font>税额</th>
-                        <th width="200px"><font color="red">*</font>价税合计</th>
+                        <th width="150px"><font color="red">*</font>金额</th>
+                        <th width="150px"><font color="red">*</font>税额</th>
+                        <th width="150px"><font color="red">*</font>价税合计</th>
                         <th width="200px">备注</th>
                         <th width="150px">操作</th>
                     </tr>
@@ -1289,6 +1307,10 @@
                                         </c:forEach>
                                     </select>
                                 </td>
+                                    <%--发票项目名--%>
+                                <td>
+                                    <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceProjectName" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceProjectName}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                                </td>
                                     <%--发票号--%>
                                 <td>
                                     <input id="reimbursementElectronicInvoiceVATTaxes${index.index}_invoiceNumber" onmouseover="this.title=this.value" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[${index.index}].invoiceNumber" type="text" value="${reimbursementElectronicInvoiceVATTaxes.invoiceNumber}" onmouseover="this.title=this.value" placeholder="请输入发票号"  class="form-control judgment number "/>
@@ -1340,6 +1362,10 @@
                                 </c:forEach>
                             </select>
                         </td>
+                            <%--发票项目名--%>
+                        <td>
+                            <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceProjectName" onmouseover="this.title=this.value" maxlength="50" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceProjectName" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" placeholder="请输入发票项目名"  class="form-control judgment "/>
+                        </td>
                             <%--发票号--%>
                         <td>
                             <input id="reimbursementElectronicInvoiceVATTaxes{{idx}}_invoiceNumber" maxlength="30" name="reimbursementElectronicInvoiceVATTaxes[{{idx}}].invoiceNumber" type="text" value="{{row.invoiceNumber}}" onmouseover="this.title=this.value" maxlength="32" placeholder="请输入发票号"  class="form-control judgment number "/>