|
@@ -133,7 +133,6 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
typeList.add("1");
|
|
typeList.add("1");
|
|
typeList.add("2");
|
|
typeList.add("2");
|
|
}else {
|
|
}else {
|
|
- oldProjectSort=projectRecords.getAttachmentProjectSort();
|
|
|
|
String attachmentProjectSort=projectRecords.getAttachmentProjectSort();
|
|
String attachmentProjectSort=projectRecords.getAttachmentProjectSort();
|
|
typeList.add(attachmentProjectSort.split("-")[0]);
|
|
typeList.add(attachmentProjectSort.split("-")[0]);
|
|
projectRecords.setAttachmentProjectSort(attachmentProjectSort.split("-")[1]);
|
|
projectRecords.setAttachmentProjectSort(attachmentProjectSort.split("-")[1]);
|
|
@@ -147,12 +146,6 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
projectRecords.setSubmitMoney("1");
|
|
projectRecords.setSubmitMoney("1");
|
|
Page<RuralProjectRecords> page = ruralProjectMessageAllService.findSignaturePage(new Page<RuralProjectRecords>(request, response), projectRecords);
|
|
Page<RuralProjectRecords> page = ruralProjectMessageAllService.findSignaturePage(new Page<RuralProjectRecords>(request, response), projectRecords);
|
|
model.addAttribute("page", page);
|
|
model.addAttribute("page", page);
|
|
- /*if(null != projectRecords.getWorkContractInfo()){
|
|
|
|
- model.addAttribute("workContractInfoName", projectRecords.getWorkContractInfo().getName());
|
|
|
|
- if(null != projectRecords.getWorkContractInfo().getClient()){
|
|
|
|
- model.addAttribute("workContractInfoClientName", projectRecords.getWorkContractInfo().getClient().getName());
|
|
|
|
- }
|
|
|
|
- }*/
|
|
|
|
//无合同状态下,获取委托方的名称
|
|
//无合同状态下,获取委托方的名称
|
|
List<RuralProjectRecords> list = page.getList();
|
|
List<RuralProjectRecords> list = page.getList();
|
|
for (int i = 0; i < list.size(); i++) {
|
|
for (int i = 0; i < list.size(); i++) {
|
|
@@ -190,6 +183,24 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
}else{
|
|
}else{
|
|
records1.setApprovalSignatureUrlFlag(0);
|
|
records1.setApprovalSignatureUrlFlag(0);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ if(StringUtils.isNotBlank(records1.getReportInternalAuditSignatureUrl())){
|
|
|
|
+ records1.setReportInternalAuditSignatureUrlFlag(1);
|
|
|
|
+ //处理文件路径
|
|
|
|
+ //如果文件路径中包含 /xg-qz 则表示文件存储在签章的对应文件库中需要单独进行处理
|
|
|
|
+ if(records1.getReportInternalAuditSignatureUrl().contains("/xg-qz")){
|
|
|
|
+ if(StringUtils.isNotBlank(records1.getReportInternalAuditSignatureUrl())){
|
|
|
|
+ String signatureUrl = records1.getReportInternalAuditSignatureUrl().replace("/xg-qz","");
|
|
|
|
+ records1.setReportInternalAuditSignatureUrl(signatureUrl);
|
|
|
|
+ }
|
|
|
|
+ records1.setReportInternalAuditSignatureUrl(new OSSClientUtil().getQzFileTemporaryLookUrl(aliyunUrl + records1.getReportInternalAuditSignatureUrl()));
|
|
|
|
+ }else{
|
|
|
|
+ records1.setReportInternalAuditSignatureUrl(new OSSClientUtil().getFileTemporaryLookUrl(aliyunUrl + records1.getReportInternalAuditSignatureUrl()));
|
|
|
|
+ }
|
|
|
|
+ }else{
|
|
|
|
+ records1.setReportInternalAuditSignatureUrlFlag(0);
|
|
|
|
+ }
|
|
|
|
+
|
|
if (records1.getWorkContractInfo() == null) {
|
|
if (records1.getWorkContractInfo() == null) {
|
|
projectRecordsService.queryLinkmanInfos(records1);
|
|
projectRecordsService.queryLinkmanInfos(records1);
|
|
if (records1.getWorkClientLinkmanList() != null && records1.getWorkClientLinkmanList().size() > 0) {
|
|
if (records1.getWorkClientLinkmanList() != null && records1.getWorkClientLinkmanList().size() > 0) {
|
|
@@ -203,22 +214,30 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
//将生成的文件上传到阿里云中
|
|
//将生成的文件上传到阿里云中
|
|
ruralProjectMessageElectronicSealService.getFile(records1);
|
|
ruralProjectMessageElectronicSealService.getFile(records1);
|
|
}
|
|
}
|
|
|
|
+
|
|
|
|
+ for (RuralProjectRecords records : list) {
|
|
|
|
+ records.setInternalAuditFlag("0");
|
|
|
|
+ switch (records.getProjectType()){
|
|
|
|
+ case "1": //工程咨询
|
|
|
|
+ //项目为工程咨询的且项目类型为8的为内审字项目(需要进行内审报告签发)
|
|
|
|
+ if(StringUtils.isNotBlank(records.getAttachmentProjectSort()) && records.getAttachmentProjectSort().equals("8")){
|
|
|
|
+ records.setInternalAuditFlag("1");
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+
|
|
|
|
+ case "2": //造价审核
|
|
|
|
+ //项目为造价审核的且项目类型为5、6的为内审字项目(需要进行内审报告签发)
|
|
|
|
+ if(StringUtils.isNotBlank(records.getAttachmentProjectSort()) && (records.getAttachmentProjectSort().equals("5") || records.getAttachmentProjectSort().equals("6"))){
|
|
|
|
+ records.setInternalAuditFlag("1");
|
|
|
|
+ }
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
if(StringUtils.isNotBlank(oldSubmitMoney)){
|
|
if(StringUtils.isNotBlank(oldSubmitMoney)){
|
|
projectRecords.setSubmitMoney(oldSubmitMoney);
|
|
projectRecords.setSubmitMoney(oldSubmitMoney);
|
|
}
|
|
}
|
|
- //查询工程类型
|
|
|
|
- /*if (projectRecords.getEngineeringType()!=null){
|
|
|
|
- ProjectEngineeringInfo engineeringInfo=engineeringService.get(projectRecords.getEngineeringType());
|
|
|
|
- model.addAttribute("engineeringInfo", engineeringInfo);
|
|
|
|
- }*/
|
|
|
|
model.addAttribute("beginDate", projectRecords.getBeginDate());
|
|
model.addAttribute("beginDate", projectRecords.getBeginDate());
|
|
model.addAttribute("endDate", projectRecords.getEndDate());
|
|
model.addAttribute("endDate", projectRecords.getEndDate());
|
|
- //计算营业总收入
|
|
|
|
- //model.addAttribute("moneyAll", ruralProjectMessageAllService.getMoneyAll(projectRecords));
|
|
|
|
- /*model.addAttribute("reportSwitch", BaseController.REPORTSWITCH);
|
|
|
|
- if (StringUtils.isNotBlank(oldProjectSort)){
|
|
|
|
- model.addAttribute("oldProjectSort", oldProjectSort);
|
|
|
|
- }*/
|
|
|
|
return "modules/ruralprojectrecords/ruralporjectmessage/electronicSeal/ruralProjectMessageElectronicSealList";
|
|
return "modules/ruralprojectrecords/ruralporjectmessage/electronicSeal/ruralProjectMessageElectronicSealList";
|
|
}
|
|
}
|
|
|
|
|
|
@@ -277,6 +296,53 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 查看,增加,编辑内审报告信息
|
|
|
|
+ */
|
|
|
|
+ @RequestMapping(value = "internalAuditForm")
|
|
|
|
+ public String internalAuditForm(@RequestParam(value = "id") String id, Model model) {
|
|
|
|
+ //查询到显示信息
|
|
|
|
+ ProjectReportSignatureInfo projectReportInternalAuditInfo = ruralProjectMessageElectronicSealService.findProjectReportInternalAuditInfoByProjectId(id);
|
|
|
|
+ /*if(null == projectReportSignatureInfo){
|
|
|
|
+ projectReportSignatureInfo = new ProjectReportSignatureInfo();
|
|
|
|
+ model.addAttribute("consultantName","");
|
|
|
|
+ }else{*/
|
|
|
|
+ //根据id查咨询员名称
|
|
|
|
+ String consultantName = ruralProjectMessageElectronicSealService.findZXYById(projectReportInternalAuditInfo.getConsultant());
|
|
|
|
+ model.addAttribute("consultantName",consultantName);
|
|
|
|
+ /*}*/
|
|
|
|
+ //将数据库拿到的科学计数法的数据转换成正常写法
|
|
|
|
+ //送审金额
|
|
|
|
+ if(null != projectReportInternalAuditInfo.getSubmitFee() && !projectReportInternalAuditInfo.getSubmitFee().equals("")) {
|
|
|
|
+ BigDecimal bd2 = new BigDecimal(projectReportInternalAuditInfo.getSubmitFee());
|
|
|
|
+ projectReportInternalAuditInfo.setSubmitFee(bd2.toPlainString());
|
|
|
|
+ }
|
|
|
|
+ //审定金额
|
|
|
|
+ if(null != projectReportInternalAuditInfo.getAuthorizeFee() && !projectReportInternalAuditInfo.getAuthorizeFee().equals("")) {
|
|
|
|
+ BigDecimal bd3 = new BigDecimal(projectReportInternalAuditInfo.getAuthorizeFee());
|
|
|
|
+ projectReportInternalAuditInfo.setAuthorizeFee(bd3.toPlainString());
|
|
|
|
+ }
|
|
|
|
+ //核减金额
|
|
|
|
+ if(null != projectReportInternalAuditInfo.getDecreaseInAccountingFee() && !projectReportInternalAuditInfo.getDecreaseInAccountingFee().equals("")) {
|
|
|
|
+ BigDecimal bd6 = new BigDecimal(projectReportInternalAuditInfo.getDecreaseInAccountingFee());
|
|
|
|
+ projectReportInternalAuditInfo.setDecreaseInAccountingFee(bd6.toPlainString());
|
|
|
|
+ }
|
|
|
|
+ //施工单位考核费
|
|
|
|
+ if(null != projectReportInternalAuditInfo.getConstructionUnitAssessmentFee() && !projectReportInternalAuditInfo.getConstructionUnitAssessmentFee().equals("")) {
|
|
|
|
+ BigDecimal bd4 = new BigDecimal(projectReportInternalAuditInfo.getConstructionUnitAssessmentFee());
|
|
|
|
+ projectReportInternalAuditInfo.setConstructionUnitAssessmentFee(bd4.toPlainString());
|
|
|
|
+ }
|
|
|
|
+ //扣除考核费后审定金额
|
|
|
|
+ if(null != projectReportInternalAuditInfo.getAuthorizeFeeDeductAssessmentFee() && !projectReportInternalAuditInfo.getAuthorizeFeeDeductAssessmentFee().equals("")) {
|
|
|
|
+ BigDecimal bd5 = new BigDecimal(projectReportInternalAuditInfo.getAuthorizeFeeDeductAssessmentFee());
|
|
|
|
+ projectReportInternalAuditInfo.setAuthorizeFeeDeductAssessmentFee(bd5.toPlainString());
|
|
|
|
+ }
|
|
|
|
+ model.addAttribute("projectReportInternalAuditInfo",projectReportInternalAuditInfo);
|
|
|
|
+
|
|
|
|
+ return "modules/ruralprojectrecords/electronicSeal/ruralProjectReportNSBGSignatureInfoForm";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
//@RequiresPermissions("ruralProject:electronicSeal:approvalForm")
|
|
//@RequiresPermissions("ruralProject:electronicSeal:approvalForm")
|
|
@RequestMapping(value="approvalForm")
|
|
@RequestMapping(value="approvalForm")
|
|
public String approvalForm(RuralProjectRecords projectRecords, Model model){
|
|
public String approvalForm(RuralProjectRecords projectRecords, Model model){
|
|
@@ -609,6 +675,64 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
return "modules/ruralprojectrecords/electronicSeal/ruralProjectRecordsReportSignatureForm";
|
|
return "modules/ruralprojectrecords/electronicSeal/ruralProjectRecordsReportSignatureForm";
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+ //@RequiresPermissions("ruralProject:electronicSeal:reportSignatureForm")
|
|
|
|
+ @RequestMapping(value="internalAuditReportSignatureForm")
|
|
|
|
+ public String internalAuditReportSignatureForm(RuralProjectRecords projectRecords, Model model){
|
|
|
|
+ if (projectRecords!=null&& StringUtils.isNotBlank(projectRecords.getId())) {
|
|
|
|
+ projectRecords = projectRecordsService.get(projectRecords.getId());
|
|
|
|
+ projectRecordsService.queryProjectDetailBySignature(projectRecords,"147");
|
|
|
|
+ ProjectPlanInfo projectPlanInfo = new ProjectPlanInfo();
|
|
|
|
+ projectPlanInfo.setProjectId(projectRecords.getId());
|
|
|
|
+ if(null != projectRecords.getWorkContractInfo()){
|
|
|
|
+ if(null != projectRecords.getWorkContractInfo().getContractTypeDoc()){
|
|
|
|
+ projectRecords.getWorkContractInfo().setContractType(DictUtils.getMainDictLabel(String.valueOf(projectRecords.getWorkContractInfo().getContractTypeDoc()),"contract_info_type",""));
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ List<MainDictDetail> mainDictList = com.google.common.collect.Lists.newArrayList();
|
|
|
|
+ //工程咨询
|
|
|
|
+ if("1".equals(projectRecords.getProjectType())){
|
|
|
|
+ mainDictList = DictUtils.getMainDictList("attachment_project_sort");
|
|
|
|
+ //造价审核
|
|
|
|
+ } else if("2".equals(projectRecords.getProjectType())){
|
|
|
|
+ mainDictList = DictUtils.getMainDictList("attachment_project_sort_cost");
|
|
|
|
+ }
|
|
|
|
+ if(StringUtils.isNotBlank(projectRecords.getAttachmentProjectSort())){
|
|
|
|
+ //处理项目类别
|
|
|
|
+ for (MainDictDetail info: mainDictList) {
|
|
|
|
+ if(projectRecords.getAttachmentProjectSort().equals(info.getValue())){
|
|
|
|
+ projectRecords.setAttachmentProjectSort(info.getLabel());
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //查询项目报告信息
|
|
|
|
+ ProjectReportData projectReportData = projectReportDataService.getReportDataByProjectId(projectRecords.getId());
|
|
|
|
+ //如果项目报告不为空,则查询项目线上归档信息
|
|
|
|
+ if(null != projectReportData){
|
|
|
|
+ ProjectReportRecord projectReportRecord = ruralProjectMessageService.getProjectReportRecord(projectReportData.getId());
|
|
|
|
+ if(null != projectReportRecord){
|
|
|
|
+ model.addAttribute("projectId", projectRecords.getId());
|
|
|
|
+ }else{
|
|
|
|
+ model.addAttribute("projectId", "");
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ model.addAttribute("flagProjectReportData",projectReportData);
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+ model.addAttribute("projectRecords", projectRecords);
|
|
|
|
+ RuralProjectRecordsReported reported = ruralProjectMessageService.getRuralProjectRecordsReported(projectRecords.getId());
|
|
|
|
+ if (null!=reported){
|
|
|
|
+ model.addAttribute("reportedId",reported.getId());
|
|
|
|
+ }
|
|
|
|
+ //查询所有的工程类型
|
|
|
|
+ List<ProjectEngineeringInfo> engineeringInfos=engineeringService.findList(new ProjectEngineeringInfo());
|
|
|
|
+ model.addAttribute("engineeringInfo",engineeringInfos);
|
|
|
|
+ return "modules/ruralprojectrecords/electronicSeal/ruralProjectRecordsInternalAuditReportSignatureForm";
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 保存报告签章送审信息
|
|
* 保存报告签章送审信息
|
|
*/
|
|
*/
|
|
@@ -643,6 +767,39 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
}
|
|
}
|
|
|
|
|
|
/**
|
|
/**
|
|
|
|
+ * 保存报告签章送审信息
|
|
|
|
+ */
|
|
|
|
+ @RequestMapping(value = "reportInternalAuditSignatureSave")
|
|
|
|
+ public String reportInternalAuditSignatureSave(RuralProjectRecords projectRecords, RedirectAttributes redirectAttributes) {
|
|
|
|
+ try {
|
|
|
|
+ //根据项目id查询对应的审定单数据状态是否是已经被送审或者 是否存在值
|
|
|
|
+ ProjectReportSignature projectInternalAuditSignature = ruralProjectMessageElectronicSealService.getProjectReportInternalAudit(projectRecords.getId());
|
|
|
|
+ if(null != projectInternalAuditSignature){
|
|
|
|
+ if(projectInternalAuditSignature.getStatus() == 3 || projectInternalAuditSignature.getStatus() == 1) {
|
|
|
|
+ //projectApprovalSignature.setStatus(ProjectStatusEnum.IN_APRL.getValue());
|
|
|
|
+ }else if(projectInternalAuditSignature.getStatus() == 2){
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章申请已送审,无法重复送审");
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }else if(projectInternalAuditSignature.getStatus() == 5){
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章申请已登记完成,无法再次送审");
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+ ruralProjectMessageElectronicSealService.reportInternalAuditSignatureSave(projectInternalAuditSignature);//保存
|
|
|
|
+ }else{
|
|
|
|
+ projectInternalAuditSignature = new ProjectReportSignature();
|
|
|
|
+ projectInternalAuditSignature.setProjectId(projectRecords.getId());
|
|
|
|
+ projectInternalAuditSignature.setStatus(ProjectStatusEnum.IN_APRL.getValue());
|
|
|
|
+ ruralProjectMessageElectronicSealService.reportInternalAuditSignatureSave(projectInternalAuditSignature);//保存
|
|
|
|
+ }
|
|
|
|
+ addMessage(redirectAttributes, "保存报告签章申请成功");
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ logger.error("保存报告签章申请异常:",e);
|
|
|
|
+ addMessage(redirectAttributes, "保存报告签章申请异常:"+e.getMessage());
|
|
|
|
+ }
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ /**
|
|
* 审批
|
|
* 审批
|
|
* @param projectRecords
|
|
* @param projectRecords
|
|
* @param redirectAttributes
|
|
* @param redirectAttributes
|
|
@@ -709,6 +866,73 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
}
|
|
}
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 审批(内审报告审批)
|
|
|
|
+ * @param projectRecords
|
|
|
|
+ * @param redirectAttributes
|
|
|
|
+ * @return
|
|
|
|
+ */
|
|
|
|
+ @RequestMapping("reportInternalAuditSignatureSaveAudit")
|
|
|
|
+ public String reportInternalAuditSignatureSaveAudit(RuralProjectRecords projectRecords, RedirectAttributes redirectAttributes,Integer saveAuditFlag) {
|
|
|
|
+ String home = projectRecords.getHome();
|
|
|
|
+ try {
|
|
|
|
+ String taskDefKey = projectRecords.getAct().getTaskDefKey();
|
|
|
|
+ //当状态为未通过时,重新修改数据
|
|
|
|
+ if ("modifyApply".equals(taskDefKey)) {
|
|
|
|
+ projectRecords.getAct().setComment("重新申请");
|
|
|
|
+ }
|
|
|
|
+ List<User> users = UserUtils.getByProssType(projectRecords.getProcessInstanceId(),1);
|
|
|
|
+ if ("szzk".equals(taskDefKey)){
|
|
|
|
+ users = UserUtils.getByProssType(projectRecords.getProcessInstanceId(),2);
|
|
|
|
+ if (users==null )
|
|
|
|
+ users = UserUtils.getByRoleActivityEnname("bmzr",2,projectRecords.getOffice().getId(),"2",projectRecords.getCreateBy());
|
|
|
|
+ }else if ("bmzr".equals(taskDefKey)){
|
|
|
|
+ users = UserUtils.getByProssType(projectRecords.getProcessInstanceId(),2);
|
|
|
|
+ if (users==null )
|
|
|
|
+ users = UserUtils.getByRoleActivityEnname("bmzr",2,projectRecords.getOffice().getId(),"2",projectRecords.getCreateBy());
|
|
|
|
+ }else if ("modifyApply".equals(taskDefKey)){
|
|
|
|
+ users = UserUtils.getByProssType(projectRecords.getProcessInstanceId(),1);
|
|
|
|
+ }
|
|
|
|
+ String flag = projectRecords.getAct().getFlag();
|
|
|
|
+ if ("yes".equals(flag) && (users==null || users.size()==0)){
|
|
|
|
+ addMessage(redirectAttributes, "审批失败,审批人为空,请联系管理员!");
|
|
|
|
+ }else {
|
|
|
|
+ //根据项目id查询对应的审定单数据状态是否是已经被送审或者 是否存在值
|
|
|
|
+ ProjectReportSignature projectApprovalSignature = ruralProjectMessageElectronicSealService.getProjectReportInternalAudit(projectRecords.getId());
|
|
|
|
+ projectApprovalSignature.setAct(projectRecords.getAct());
|
|
|
|
+ if(null != saveAuditFlag) {
|
|
|
|
+ if (projectApprovalSignature.getStatus() != 4 && projectApprovalSignature.getStatus() != 5) {
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章申请已送审,请勿重复送审");
|
|
|
|
+ if (StringUtils.isNotBlank(home) && "home".equals(home)) {
|
|
|
|
+ return "redirect:" + Global.getAdminPath() + "/home/?repage";
|
|
|
|
+ } else {
|
|
|
|
+ return "redirect:" + Global.getAdminPath() + "/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ if(projectApprovalSignature.getStatus() == 5){
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章申请已登记完成,无法再次送审");
|
|
|
|
+ if (StringUtils.isNotBlank(home) && "home".equals(home)){
|
|
|
|
+ return "redirect:" + Global.getAdminPath() + "/home/?repage";
|
|
|
|
+ }else {
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ String str = ruralProjectMessageElectronicSealService.reportInternalAuditSignatureSaveAudit(projectApprovalSignature,users);
|
|
|
|
+ addMessage(redirectAttributes, str);
|
|
|
|
+ }
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章申请审批失败");
|
|
|
|
+ logger.error("Exception e:"+e);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ if (StringUtils.isNotBlank(home) && "home".equals(home)){
|
|
|
|
+ return "redirect:" + Global.getAdminPath() + "/home/?repage";
|
|
|
|
+ }else {
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
@RequestMapping(value = "reportSignatureModify")
|
|
@RequestMapping(value = "reportSignatureModify")
|
|
public String reportSignatureModify(RuralProjectRecords projectRecords, Model model) {
|
|
public String reportSignatureModify(RuralProjectRecords projectRecords, Model model) {
|
|
@@ -757,6 +981,53 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
|
|
+ @RequestMapping(value = "reportInternalAuditSignatureModify")
|
|
|
|
+ public String reportInternalAuditSignatureModify(RuralProjectRecords projectRecords, Model model) {
|
|
|
|
+ //根据项目id查询对应的审定单数据状态是否是已经被送审或者 是否存在值
|
|
|
|
+ ProjectReportSignature projectApprovalSignature = ruralProjectMessageElectronicSealService.getProjectReportInternalAudit(projectRecords.getId());
|
|
|
|
+ projectRecords = projectRecordsService.get(projectRecords.getId());
|
|
|
|
+ projectRecordsService.queryProjectDetail(projectRecords);
|
|
|
|
+ projectRecords.setProcessInstanceId(projectApprovalSignature.getProcessInstanceId());
|
|
|
|
+ projectRecords.setProjectStatus(projectApprovalSignature.getStatus());
|
|
|
|
+ ProcessInstance processInstance = actTaskService.getProcIns(projectRecords.getProcessInstanceId());
|
|
|
|
+ if (processInstance!=null) {
|
|
|
|
+ Task taskInfok = actTaskService.getCurrentTaskInfo(processInstance);
|
|
|
|
+ Act act = new Act();
|
|
|
|
+ act.setTaskId(taskInfok.getId());
|
|
|
|
+ act.setTaskName(taskInfok.getName());
|
|
|
|
+ act.setTaskDefKey(taskInfok.getTaskDefinitionKey());
|
|
|
|
+ act.setProcDefId(taskInfok.getProcessDefinitionId());
|
|
|
|
+ act.setProcInsId(taskInfok.getProcessInstanceId());
|
|
|
|
+ act.setTask(taskInfok);
|
|
|
|
+ projectRecords.setAct(act);
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+ //查询所有的工程类型
|
|
|
|
+ List<ProjectEngineeringInfo> engineeringInfos=engineeringService.findList(new ProjectEngineeringInfo());
|
|
|
|
+
|
|
|
|
+ //处理项目类别
|
|
|
|
+ List<MainDictDetail> mainDictList = com.google.common.collect.Lists.newArrayList();
|
|
|
|
+ if("1".equals(projectRecords.getProjectType())){
|
|
|
|
+ mainDictList = DictUtils.getMainDictList("attachment_project_sort");
|
|
|
|
+ }else if("2".equals(projectRecords.getProjectType())){
|
|
|
|
+ mainDictList = DictUtils.getMainDictList("attachment_project_sort_cost");
|
|
|
|
+ }
|
|
|
|
+ for (MainDictDetail info: mainDictList) {
|
|
|
|
+ if(projectRecords.getAttachmentProjectSort().equals(info.getValue())){
|
|
|
|
+ projectRecords.setAttachmentProjectSort(info.getLabel());
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+ //查询工程类型信息
|
|
|
|
+ ProjectEngineeringInfo engineeringInfo=engineeringService.get(projectRecords.getEngineeringType());
|
|
|
|
+ model.addAttribute("engInfo", engineeringInfo);
|
|
|
|
+ model.addAttribute("engineeringInfo",engineeringInfos);
|
|
|
|
+ model.addAttribute("processInstanceId", projectRecords.getProcessInstanceId());
|
|
|
|
+ model.addAttribute("projectRecords", projectRecords);
|
|
|
|
+ return "modules/ruralprojectrecords/electronicSeal/ruralProjectRecordsReportInternalAuditSignatureModify";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
@RequestMapping(value = "reportSignatureRevoke")
|
|
@RequestMapping(value = "reportSignatureRevoke")
|
|
public String reportSignatureRevoke(HttpServletRequest request, RedirectAttributes redirectAttributes) {
|
|
public String reportSignatureRevoke(HttpServletRequest request, RedirectAttributes redirectAttributes) {
|
|
HashMap<String, String> requestMap = findRequestMap(request);
|
|
HashMap<String, String> requestMap = findRequestMap(request);
|
|
@@ -780,6 +1051,29 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
+ @RequestMapping(value = "reportInternalAuditSignatureRevoke")
|
|
|
|
+ public String reportInternalAuditSignatureRevoke(HttpServletRequest request, RedirectAttributes redirectAttributes) {
|
|
|
|
+ HashMap<String, String> requestMap = findRequestMap(request);
|
|
|
|
+ String id = requestMap.get("id");
|
|
|
|
+ try {
|
|
|
|
+ //根据项目id查询对应的审定单数据状态是否是已经被送审或者 是否存在值
|
|
|
|
+ ProjectReportSignature projectApprovalSignature = ruralProjectMessageElectronicSealService.getProjectReportInternalAudit(id);
|
|
|
|
+
|
|
|
|
+ if("5".equals(projectApprovalSignature.getStatus())){
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章申请已审批通过,无法撤回");
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+ ruralProjectMessageElectronicSealService.cancelReportInternalAuditSignatureProcess(projectApprovalSignature);
|
|
|
|
+ addMessage(redirectAttributes, "撤回该内审报告签章申请审批成功");
|
|
|
|
+ }catch (Exception e){
|
|
|
|
+ logger.info(e.getMessage());
|
|
|
|
+ addMessage(redirectAttributes, "撤回该内审报告签章申请审批失败");
|
|
|
|
+ }
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
|
|
|
|
@@ -836,6 +1130,53 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
|
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ /**
|
|
|
|
+ * 下载工程造价咨询质量控制流程单信息
|
|
|
|
+ * @param response
|
|
|
|
+ * @param projectReportData
|
|
|
|
+ */
|
|
|
|
+ @RequestMapping(value="downloadProjectInternalAuditSignatureControl")
|
|
|
|
+ @ResponseBody
|
|
|
|
+ public void downloadProjectInternalAuditSignatureControl(HttpServletResponse response, ProjectReportData projectReportData) {
|
|
|
|
+ Map<String,Object> data = ruralProjectMessageElectronicSealService.disposeProjectInternalAuditReportdata(projectReportData);
|
|
|
|
+ String projectName = (String) data.get("projectName");
|
|
|
|
+ String number = (String) data.get("reportNumber");
|
|
|
|
+ String type = (String) data.get("type");
|
|
|
|
+
|
|
|
|
+ //模板对象
|
|
|
|
+ Template template=null;
|
|
|
|
+ //freemaker模板路径
|
|
|
|
+ File path = new File(this.getClass().getResource("/").getPath()+"/freemarker");
|
|
|
|
+ Configuration cfg = new Configuration();
|
|
|
|
+ try {
|
|
|
|
+ cfg.setDirectoryForTemplateLoading(path);
|
|
|
|
+ //选择对应的ftl文件
|
|
|
|
+ if("3".equals(type)){
|
|
|
|
+ template = cfg.getTemplate("projectInternalAuditSignature.ftl","UTF-8");
|
|
|
|
+ }
|
|
|
|
+ File docFile = new File("报告号【"+number + "】内审报告签章.doc");
|
|
|
|
+ FreemarkerUtil.generateFile(data,template,docFile);
|
|
|
|
+ ResponseUtil.docResponse("报告号【"+number + "】项目名称:" + projectName + " 内审报告签章.doc",docFile,response);
|
|
|
|
+ //将生成的文件上传到阿里云中
|
|
|
|
+ ruralProjectMessageElectronicSealService.uploadOss(projectReportData,docFile);
|
|
|
|
+ } catch (IOException e) {
|
|
|
|
+ e.printStackTrace();
|
|
|
|
+ }finally {
|
|
|
|
+
|
|
|
|
+ //获取tomcat的路径
|
|
|
|
+ String tomcatFilePath=System.getProperty("catalina.home");
|
|
|
|
+ //删除tomcat目录下的处理后的文件信息
|
|
|
|
+ File tomcatFile = new File(tomcatFilePath+"/bin/"+"报告号【"+number + "】内审报告签章.doc");
|
|
|
|
+ if (tomcatFile.isFile()) {
|
|
|
|
+ tomcatFile.delete();
|
|
|
|
+ }
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ }
|
|
|
|
+
|
|
/**
|
|
/**
|
|
* 导入造价审核B类项目数据
|
|
* 导入造价审核B类项目数据
|
|
*/
|
|
*/
|
|
@@ -844,13 +1185,23 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
public String importFile(MultipartFile file, RedirectAttributes redirectAttributes,String concealType) {
|
|
public String importFile(MultipartFile file, RedirectAttributes redirectAttributes,String concealType) {
|
|
try {
|
|
try {
|
|
ImportExcelNew importExcelNew = new ImportExcelNew();
|
|
ImportExcelNew importExcelNew = new ImportExcelNew();
|
|
- List<ProjectReportSignatureInfo> list = importExcelNew.ImportExcelNews(file,1,0, concealType); //只处理file 1不要也可以,0为sheet编号
|
|
|
|
-
|
|
|
|
|
|
+ List<ProjectReportSignatureInfo> list = Lists.newArrayList();
|
|
|
|
+ switch (concealType){
|
|
|
|
+ case "js":
|
|
|
|
+ list = importExcelNew.ImportExcelNews(file,1,0, concealType); //只处理file 1不要也可以,0为sheet编号
|
|
|
|
+ break;
|
|
|
|
+ case "sh":
|
|
|
|
+ list =importExcelNew.ImportExcelNews(file,1,0, concealType); //只处理file 1不要也可以,0为sheet编号
|
|
|
|
+ break;
|
|
|
|
+ case "nsbg":
|
|
|
|
+ list = importExcelNew.ImportExcelNSBGNews(file,1,0, concealType); //只处理file 1不要也可以,0为sheet编号
|
|
|
|
+ break;
|
|
|
|
+ }
|
|
//对数据进行处理
|
|
//对数据进行处理
|
|
String resultStr = ruralProjectMessageElectronicSealService.disposeImportBRuralProjectRecords(list,concealType);
|
|
String resultStr = ruralProjectMessageElectronicSealService.disposeImportBRuralProjectRecords(list,concealType);
|
|
addMessage(redirectAttributes, resultStr);
|
|
addMessage(redirectAttributes, resultStr);
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
- addMessage(redirectAttributes, "导入项目信息失败!失败信息:"+e.getMessage());
|
|
|
|
|
|
+ addMessage(redirectAttributes, "导入数据信息失败!失败信息:"+e.getMessage());
|
|
}
|
|
}
|
|
return "redirect:"+ Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
return "redirect:"+ Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
}
|
|
}
|
|
@@ -870,6 +1221,9 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
case "sh":
|
|
case "sh":
|
|
download.download("上海签章导入数据模板.xlsx",request,response); //自制的导入模板
|
|
download.download("上海签章导入数据模板.xlsx",request,response); //自制的导入模板
|
|
break;
|
|
break;
|
|
|
|
+ case "nsbg":
|
|
|
|
+ download.download("内审报告导入数据模板.xlsx",request,response); //自制的导入模板
|
|
|
|
+ break;
|
|
}
|
|
}
|
|
}
|
|
}
|
|
} catch (Exception e) {
|
|
} catch (Exception e) {
|
|
@@ -902,6 +1256,21 @@ public class RuralProjectMessageElectronicSealController extends BaseController
|
|
return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
}
|
|
}
|
|
|
|
|
|
|
|
+ /**
|
|
|
|
+ * 报告签章信息保存
|
|
|
|
+ */
|
|
|
|
+// @RequiresPermissions(value={"ruralProject:ruralCostProjectRecords:add","ruralProject:ruralCostProjectRecords:edit"},logical= Logical.OR)
|
|
|
|
+ @Transactional(readOnly = false)
|
|
|
|
+ @RequestMapping(value = "internalAuditSave")
|
|
|
|
+ public String internalAuditSave(ProjectReportSignatureInfo projectReportSignatureInfo, RedirectAttributes redirectAttributes) {
|
|
|
|
+ //修改
|
|
|
|
+ ruralProjectMessageElectronicSealService.updateProjectReportInternalAuditInfo(projectReportSignatureInfo);
|
|
|
|
+
|
|
|
|
+
|
|
|
|
+ addMessage(redirectAttributes, "内审报告签章信息修改成功");
|
|
|
|
+ return "redirect:"+Global.getAdminPath()+"/ruralProject/electronicSeal/?repage";
|
|
|
|
+ }
|
|
|
|
+
|
|
|
|
|
|
|
|
|
|
@RequestMapping(value = "getManualSignatureUrl")
|
|
@RequestMapping(value = "getManualSignatureUrl")
|