Commit de28eb68 authored by 刘学辉's avatar 刘学辉

异常报告打印,放行条打印调整

parent 150f1f0c
...@@ -205,3 +205,7 @@ function reloadGrid() { ...@@ -205,3 +205,7 @@ function reloadGrid() {
dutyPersonGridManager.loadData(); dutyPersonGridManager.loadData();
} }
function printPage() {
Public.openPostWindow(web_app.name + '/PDFViewer/PDFViewer.do',{id: $("#id").val(),applicationType:"exceptionReport"});
}
...@@ -27,6 +27,13 @@ ...@@ -27,6 +27,13 @@
<x:hidden name="statusId"/> <x:hidden name="statusId"/>
<x:hidden name="frgdt"/> <x:hidden name="frgdt"/>
<div class="hg-form-cols"> <div class="hg-form-cols">
<c:if test="${statusId==3}">
<div style="float: right; margin-right: 10px;" class="btn-group" id="buttonBox">
<button id="save" title="" type="button" onclick="printPage()" class="btn btn-gray"><i
class="fa fa-save"></i>打印
</button>
</div>
</c:if>
<div class="hg-form-row"> <div class="hg-form-row">
<x:selectC name="exceptionType" label="异常类型" labelCol="1" fieldCol="2" required="true" dictionary="exceptionType"/> <x:selectC name="exceptionType" label="异常类型" labelCol="1" fieldCol="2" required="true" dictionary="exceptionType"/>
<x:inputC name="reportDate" label="呈报日期" labelCol="1" fieldCol="2" required="true" wrapper="date"/> <x:inputC name="reportDate" label="呈报日期" labelCol="1" fieldCol="2" required="true" wrapper="date"/>
......
...@@ -24,11 +24,13 @@ ...@@ -24,11 +24,13 @@
<x:hidden name="personMemberId"/> <x:hidden name="personMemberId"/>
<x:hidden name="personMemberName"/> <x:hidden name="personMemberName"/>
<div class="hg-form-cols"> <div class="hg-form-cols">
<c:if test="${statusId==3}">
<div style="float: right; margin-right: 10px;" class="btn-group" id="buttonBox"> <div style="float: right; margin-right: 10px;" class="btn-group" id="buttonBox">
<button id="save" title="" type="button" onclick="printPage()" class="btn btn-gray"><i <button id="save" title="" type="button" onclick="printPage()" class="btn btn-gray"><i
class="fa fa-save"></i>打印 class="fa fa-save"></i>打印
</button> </button>
</div> </div>
</c:if>
<div class="hg-form-row"> <div class="hg-form-row">
<x:hidden name="dutyDepart"/> <x:hidden name="dutyDepart"/>
......
This diff is collapsed.
This diff is collapsed.
...@@ -3,6 +3,8 @@ package com.huigou.topsun.sap.exceptionReport.application; ...@@ -3,6 +3,8 @@ package com.huigou.topsun.sap.exceptionReport.application;
import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReport; import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReport;
import com.huigou.topsun.sap.exceptionReport.domain.query.ExceptionReportQueryRequest; import com.huigou.topsun.sap.exceptionReport.domain.query.ExceptionReportQueryRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayOutputStream;
import java.util.Map; import java.util.Map;
/** /**
...@@ -23,4 +25,5 @@ public interface ExceptionReportApplication { ...@@ -23,4 +25,5 @@ public interface ExceptionReportApplication {
ExceptionReport saveExceptionReport(ExceptionReport exceptionReport); ExceptionReport saveExceptionReport(ExceptionReport exceptionReport);
ByteArrayOutputStream printInfo(HttpServletResponse response, String id);
} }
...@@ -4,6 +4,7 @@ import com.huigou.cache.DictUtil; ...@@ -4,6 +4,7 @@ import com.huigou.cache.DictUtil;
import com.huigou.data.domain.model.CommonDomainConstants; import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor; import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel; import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.common.CommonUtils;
import com.huigou.topsun.sap.exceptionReport.application.ExceptionReportApplication; import com.huigou.topsun.sap.exceptionReport.application.ExceptionReportApplication;
import com.huigou.topsun.sap.exceptionReport.application.ExceptionReportDutyPersonApplication; import com.huigou.topsun.sap.exceptionReport.application.ExceptionReportDutyPersonApplication;
import com.huigou.topsun.sap.exceptionReport.application.ExceptionReportItemApplication; import com.huigou.topsun.sap.exceptionReport.application.ExceptionReportItemApplication;
...@@ -12,16 +13,24 @@ import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReportDutyPerson; ...@@ -12,16 +13,24 @@ import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReportDutyPerson;
import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReportItem; import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReportItem;
import com.huigou.topsun.sap.exceptionReport.domain.query.ExceptionReportQueryRequest; import com.huigou.topsun.sap.exceptionReport.domain.query.ExceptionReportQueryRequest;
import com.huigou.topsun.sap.exceptionReport.repository.ExceptionReportRepository; import com.huigou.topsun.sap.exceptionReport.repository.ExceptionReportRepository;
import com.huigou.topsun.sap.permit.domain.SapPermit;
import com.huigou.topsun.sap.permit.domain.SapPermitItem;
import com.huigou.uasp.bmp.common.BizBillStatus; import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.util.*; import com.huigou.util.*;
import freemarker.template.Template;
import org.activiti.engine.delegate.DelegateExecution; import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.Assert; import org.springframework.util.Assert;
import org.springframework.web.servlet.view.freemarker.FreeMarkerConfigurer;
import javax.servlet.http.HttpServletResponse;
import java.io.ByteArrayOutputStream;
import java.io.File;
import java.net.URLEncoder;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -41,7 +50,8 @@ public class ExceptionReportApplicationImpl extends FlowBroker implements Except ...@@ -41,7 +50,8 @@ public class ExceptionReportApplicationImpl extends FlowBroker implements Except
@Autowired @Autowired
private ExceptionReportDutyPersonApplication exceptionReportDutyPersonApplication; private ExceptionReportDutyPersonApplication exceptionReportDutyPersonApplication;
@Autowired
private FreeMarkerConfigurer freemarkerConfigurer;
@Override @Override
public Map<String, Object> slicedExceptionReportList(ExceptionReportQueryRequest queryRequest) { public Map<String, Object> slicedExceptionReportList(ExceptionReportQueryRequest queryRequest) {
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "exceptionReport"); QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "exceptionReport");
...@@ -179,4 +189,65 @@ public class ExceptionReportApplicationImpl extends FlowBroker implements Except ...@@ -179,4 +189,65 @@ public class ExceptionReportApplicationImpl extends FlowBroker implements Except
Assert.hasText(id, CommonDomainConstants.ID_NOT_BLANK); Assert.hasText(id, CommonDomainConstants.ID_NOT_BLANK);
exceptionReportRepository.delete(id); exceptionReportRepository.delete(id);
} }
public ByteArrayOutputStream printInfo(HttpServletResponse response, String id) {
ExceptionReport exceptionReport=this.exceptionReportRepository.findOne(id);
List<ExceptionReportItem> itemList=exceptionReportItemApplication.findByExceptionReportId(id);
List<ExceptionReportDutyPerson> dutyList=exceptionReportDutyPersonApplication.findByExceptionReportId(id);
if ("in".equals(exceptionReport.getExceptionType())){
exceptionReport.setExceptionType("内部");
} else{
exceptionReport.setExceptionType("外部");
}
String sql="select s.code,w.handler_name,w.handler_id,w.dept_name,w.full_id,w.HANDLED_DATE FROM WF_PROCUNITHANDLER w left join sa_oporg s on s.id=w.HANDLER_ID";
sql+=" where biz_id='"+id+"' order by w.HANDLED_DATE desc ";
List<Map<String, Object>> mapList=sqlExecutorDao.queryToListMap(sql);
Map<String ,Object> data = new HashMap<>();
if (mapList.size()>0){
String lastAuditPerson=mapList.get(0).get("handlerName").toString();
data.put("lastAuditPerson",lastAuditPerson);
}
if (mapList.size()>1) {
String preLastAuditPerson = mapList.get(1).get("handlerName").toString();
data.put("preAuditPerson",preLastAuditPerson);
}
data.put("head",exceptionReport);
data.put("itemList",itemList);
data.put("dutyList",dutyList);
//Document document = null;
ByteArrayOutputStream byteArrayOutputStream = null;
try {
response.reset();
response.setHeader("Content-Type", "application/pdf-stream");
response.setHeader("Content-Disposition", "attachment;filename=" + URLEncoder.encode("异常单据.pdf", "UTF-8"));
/* String randoms=CommonUtil.createGUID().substring(0,10);
File fileDir=new File("bar");
if(!fileDir.exists()) {
fileDir.mkdirs();
}*/
/* File file = new File("bar-"+permit.getBillCode()+".png");
if(!file.exists()) {
String IMG_TYPE_PNG = "image/png";
data.put("barCode", CommonUtils.genBarCode128(permit.getBillCode(), IMG_TYPE_PNG, file));
} else {
data.put("barCode",file);
}*/
File fileb = new File("baoshen.png");
data.put("baoshen",fileb);
Template template = freemarkerConfigurer.getConfiguration().getTemplate("exceptionReport.ftl");
byteArrayOutputStream = CommonUtils.createPDF(data,template);
}catch (Exception e) {
e.printStackTrace();
throw new RuntimeException("PDF生成失败!");
} finally {
}
return byteArrayOutputStream;
}
} }
...@@ -240,8 +240,26 @@ public class SapPermitApplicationImpl extends FlowBroker implements SapPermitApp ...@@ -240,8 +240,26 @@ public class SapPermitApplicationImpl extends FlowBroker implements SapPermitApp
SapPermit permit=this.sapPermitRepository.findOne(id); SapPermit permit=this.sapPermitRepository.findOne(id);
List <SapPermitItem> itemList=this.sapPermitItemRepository.findBySapPermitId(id); List <SapPermitItem> itemList=this.sapPermitItemRepository.findBySapPermitId(id);
if (itemList.size()<10){
int s=itemList.size();
for (int u=0;u<10-s;u++) {
SapPermitItem item = new SapPermitItem();
item.setBelongings("&nbsp;");
itemList.add(item);
}
}
String sql="select s.code,w.handler_name,w.handler_id,w.dept_name,w.full_id,w.HANDLED_DATE FROM WF_PROCUNITHANDLER w left join sa_oporg s on s.id=w.HANDLER_ID";
sql+=" where biz_id='"+id+"' order by w.HANDLED_DATE desc ";
List<Map<String, Object>> mapList=sqlExecutorDao.queryToListMap(sql);
Map<String ,Object> data = new HashMap<>(); Map<String ,Object> data = new HashMap<>();
if (mapList.size()>0){
String lastAuditPerson=mapList.get(0).get("handlerName").toString();
data.put("lastAuditPerson",lastAuditPerson);
}
if (mapList.size()>1) {
String preLastAuditPerson = mapList.get(1).get("handlerName").toString();
data.put("preAuditPerson",preLastAuditPerson);
}
data.put("head",permit); data.put("head",permit);
data.put("itemList",itemList); data.put("itemList",itemList);
......
...@@ -157,6 +157,9 @@ public class OrgSyncApplicationImpl extends BaseApplication implements OrgSyncAp ...@@ -157,6 +157,9 @@ public class OrgSyncApplicationImpl extends BaseApplication implements OrgSyncAp
mdClientSapVo.setKunnr(sapPersonVo.getCode());//员工编码 mdClientSapVo.setKunnr(sapPersonVo.getCode());//员工编码
mdClientSapVo.setNameOrg1(sapPersonVo.getName());//名称 mdClientSapVo.setNameOrg1(sapPersonVo.getName());//名称
mdClientSapVo.setNameOrg3(sapPersonVo.getEnglishName());//英文名称 mdClientSapVo.setNameOrg3(sapPersonVo.getEnglishName());//英文名称
if (StringUtil.isBlank(sapPersonVo.getEnglishName())){
mdClientSapVo.setNameOrg3(sapPersonVo.getName());//
}
mdClientSapVo.setBuSort1(sapPersonVo.getName());//搜索词 mdClientSapVo.setBuSort1(sapPersonVo.getName());//搜索词
mdClientSapVo.setSmtpAddr(sapPersonVo.getEmail());//邮件 mdClientSapVo.setSmtpAddr(sapPersonVo.getEmail());//邮件
if ("0".equals(sapPersonVo.getSex())){ if ("0".equals(sapPersonVo.getSex())){
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment