package com.goafanti.order.controller; import com.goafanti.common.bo.Result; import com.goafanti.common.constant.AFTConstants; import com.goafanti.common.constant.ErrorConstants; import com.goafanti.common.controller.CertifyApiController; import com.goafanti.common.enums.OfficialPatentType; import com.goafanti.common.model.TTaskHours; import com.goafanti.common.utils.ParamUtils; import com.goafanti.common.utils.StringUtils; import com.goafanti.common.utils.excel.NewExcelUtil; import com.goafanti.core.mybatis.page.Pagination; import com.goafanti.core.shiro.token.TokenManager; import com.goafanti.order.bo.*; import com.goafanti.order.enums.ApprovalTypeEnums; import com.goafanti.order.service.OrderNewService; import com.goafanti.order.service.OrderProjectService; import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Value; import org.springframework.validation.BindingResult; import org.springframework.validation.annotation.Validated; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import javax.validation.Valid; import java.text.ParseException; import java.text.SimpleDateFormat; import java.util.ArrayList; import java.util.Arrays; import java.util.List; @RestController @RequestMapping(value = "/api/admin/orderProject") public class OrderProjectApiController extends CertifyApiController { @Autowired private OrderProjectService orderProjectService; @Autowired private OrderNewService orderNewService; @Value(value = "${upload.path}") private String uploadPath = null; /** * 项目分配、项目派单、项目转交 * taskId 项目ID * taskReceiverId 受理人ID * type 0管理员派单 1经理转交 2经理派单 3咨询师转交 4回退 */ @RequestMapping(value = "/projectDistribution", method = RequestMethod.POST) public Result projectDistribution(Integer taskId,String taskReceiverId ,String remarks,Integer type){ Result res = new Result(); if(null==taskId || StringUtils.isBlank(taskReceiverId)){ res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "任务编号和受理人")); return res; } if(type==null) type=0; boolean flag=true; if (type==0&&(TokenManager.hasRole(AFTConstants.TECH_ADMIN)||TokenManager.hasRole(AFTConstants.SUPERADMIN)))flag=false; else if ((type==1||type==2)&&TokenManager.hasRole(AFTConstants.TECH_MANAGER))flag=false; else if ((type==3||type==4)&&TokenManager.hasRole(AFTConstants.TECH))flag=false; if (flag) { res.getError().add(buildError("角色不正确,请勿在浏览器登录多个账号!")); return res; } res.setData(orderProjectService.updateProjectDistribution( taskId, taskReceiverId,remarks,type)); return res; } /** * 任务派单列表 我的任务,我的外包任务 * specially 0我的任务 1任务派单 * 我的任务不看父项目,只看子项目 ,任务派单子项目父项目都会存在 */ @RequestMapping(value="/orderTaskList" ,method = RequestMethod.GET) public Result orderTaskList(inuptTaskListBo ib){ Result res=new Result(); res.setData(orderProjectService.orderTaskList(ib)); return res; } /** * 任务派单查询 */ @RequestMapping(value="/selectTaskList" ,method = RequestMethod.GET) public Result selectTaskList(String name,String orderNo,String taskId,Integer taskStatus,String adminName,Integer specially ,String depId,String thchId ,String type,Integer pageNo,Integer pageSize){ Result res=new Result(); res.setData(orderProjectService.selectTaskList( name, orderNo, taskId, taskStatus, adminName,specially , depId,thchId ,type ,pageNo, pageSize)); return res; } /** * 经理查询订单 */ @RequestMapping(value="/managerSelect" ,method = RequestMethod.GET) public Result managerSelect(String name,String orderNo,String contractNo,String cid,String projectType,String thchId, String depId,String techDepId ,Integer declarationBatch ,String commodityPrice,String startTime, String endTime,String type,Integer pageNo,Integer pageSize){ Result res=new Result(); res.setData(orderProjectService.managerSelect( name, orderNo, contractNo, cid, projectType,thchId, depId, techDepId , declarationBatch ,commodityPrice,startTime, endTime,type , pageNo, pageSize)); return res; } /** * 经理查询订单 */ @RequestMapping(value="/exportManagerSelect" ,method = RequestMethod.GET) public Result exportManagerSelect(String name,String orderNo,String contractNo,String cid,String projectType,String thchId, String depId,String techDepId ,Integer declarationBatch ,String commodityPrice,String startTime, String endTime,String type,Integer pageNo,Integer pageSize){ List list=(List) orderProjectService.managerSelect( name, orderNo, contractNo, cid, projectType,thchId,depId, techDepId , declarationBatch ,commodityPrice,startTime, endTime ,type, pageNo, pageSize).getList(); for (managerListBo e : list) { if (StringUtils.isNotEmpty(e.getType())){ String[] split = e.getType().split(","); StringBuilder stringBuilder = new StringBuilder(); Arrays.stream(split).forEach( s->{ stringBuilder.append(ApprovalTypeEnums.getDesc(s)).append(","); } ); e.setType(stringBuilder.substring(0,stringBuilder.length()-1)); } } NewExcelUtil excel=new NewExcelUtil<>(managerListBo.class); return excel.exportExcel(list, "企业项目查询列表", uploadPath); } /** * 任务详情 */ @RequestMapping(value="/orderTaskDetail" ,method = RequestMethod.GET) public Result orderTaskDetail(Integer id){ Result res=new Result(); res.setData(orderProjectService.orderTaskDetail(id)); return res; } /** * 任务修改(咨询师) */ @RequestMapping(value="/updateOrderTask" ,method = RequestMethod.POST) public Result updateOrderTask(TOrderTaskDetailBo t){ Result res=new Result(); if (!StringUtils.isContainChinese(t.getContacts())){ res.getError().add(buildError("联系人名称必须是中文。")); return res; } if (!StringUtils.isContactMobile(t.getContactMobile())){ res.getError().add(buildError(ErrorConstants.MOBILE_PATTERN_ERROR)); return res; } res.setData(orderProjectService.updateOrderTask(t)); return res; } /** * 修改项目状态(咨询师)、项目状态修改 */ @RequestMapping(value="/updateProjectStatus" ,method = RequestMethod.POST) public Result updateProjectStatus(@Valid UpdateProjectStatusBo a,BindingResult bindingResult){ Result res=new Result(); if (bindingResult.hasErrors()) { res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage())); return res; } res.setData(orderProjectService.updateProjectStatus( a)); return res; } /** * 添加工时 */ @RequestMapping(value="/addTaskHours" ,method = RequestMethod.POST) public Result addTaskHours(TTaskHours t,String taskDate){ Result res=new Result(); if (t.getHours()==null) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "任务时间")); return res; } if (StringUtils.isBlank(taskDate)) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "工作日期")); return res; } if (StringUtils.isBlank(t.getRemarks())) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "工作内容")); return res; } if (StringUtils.isNotBlank(taskDate)) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd"); try { t.setTaskDay(sdf.parse(taskDate)); } catch (ParseException e) { e.printStackTrace(); } } res.setData(orderProjectService.addTaskHours(t)); return res; } /** * 任务工时列表 */ @RequestMapping(value="/taskHoursList" ,method = RequestMethod.GET) public Result taskHoursList(inuptTaskHoursListBo ib, Integer pageNo, Integer pageSize){ Result res=new Result(); res.setData(orderProjectService.taskHoursList(ib,pageNo, pageSize)); return res; } /** * 任务工时详情列表 */ @RequestMapping(value="/taskHoursDetailsList" ,method = RequestMethod.GET) public Result taskHoursDetailsList( String taskId ){ Result res=new Result(); if (StringUtils.isBlank(taskId)) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR, "", "项目编号")); return res; } res.setData(orderProjectService.taskHoursDetailsList(taskId)); return res; } /** * 任务操作日志 */ @RequestMapping(value="/TaskLogList" ,method = RequestMethod.GET) public Result TaskLogList(Integer id){ Result res=new Result(); res.setData(orderProjectService.TaskLogList(id)); return res; } /** * 任务派单日志 */ @RequestMapping(value="/dispatchTaskLog" ,method = RequestMethod.GET) public Result dispatchTaskLog(Integer id){ Result res=new Result(); res.setData(orderProjectService.dispatchTaskLog(id)); return res; } /** 任务文件上传 **/ @RequestMapping(value = "/uploadOrderTaskFile", method = RequestMethod.POST) public Result uploadOrderTaskFile(HttpServletRequest req,String sign){ Result res = new Result(); res.setData(handleFile(res, "/order_task_file/", false, req, sign)); return res; } /** * 新增项目申报进度 */ @RequestMapping(value="/createTaskProgress" ,method = RequestMethod.POST) public Result createTaskProgress(TaskProgressBo t){ Result res=new Result(); if ( null==t.getTaskId()|| null==t.getAlreadyNumber()) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"参数","参数")); } res.setData(orderProjectService.createTaskProgress(t)); return res; } /** * 修改项目申报进度 */ @RequestMapping(value="/updateTaskProgress" ,method = RequestMethod.POST) public Result updateTaskProgress(TaskProgressBo t){ Result res=new Result(); if (null==t.getTaskId()|| null==t.getAlreadyNumber()) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"参数","参数")); } res.setData(orderProjectService.updateTaskProgress(t)); return res; } /** * 删除项目申报进度 */ @RequestMapping(value="/delectTaskProgress" ,method = RequestMethod.POST) public Result delectTaskProgress(Integer id){ Result res=new Result(); if (null==id) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"参数","参数")); } res.setData(orderProjectService.delectTaskProgress(id)); return res; } /** * 查看项目申报进度 */ @RequestMapping(value="/selectTaskProgress" ,method = RequestMethod.GET) public Result selectTaskProgress(Integer tid){ Result res=new Result(); if (null==tid) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"参数","参数")); } res.setData(orderProjectService.selectTaskProgress(tid)); return res; } /** * 项目申报进度日志 */ @RequestMapping(value="/selectTaskProgressLog" ,method = RequestMethod.GET) public Result selectTaskProgressLog(Integer tid){ Result res=new Result(); if (null==tid) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"参数","参数")); } res.setData(orderProjectService.selectTaskProgressLog(tid)); return res; } /** * 拆分项目 */ @RequestMapping(value="/addSplitProject" ,method = RequestMethod.POST) public Result addSplitProject(Integer tid,String splitList){ Result res=new Result(); if (null==tid||StringUtils.isBlank(splitList)) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"项目和拆分数","项目和拆分数")); return res; } int i=orderProjectService.pushSplitProject(tid,splitList); if (i==-1) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"拆分数","拆分数")); return res; } res.setData(i); return res; } /** * 拆分项目列表 */ @RequestMapping(value="/splitProjectList" ,method = RequestMethod.GET) public Result splitProjectList(Integer tid){ Result res=new Result(); if (null==tid) { res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"项目和拆分数","项目和拆分数")); return res; } res.setData(orderProjectService.splitProjectList(tid,1)); return res; } /** * 我的工时列表导出xls */ @RequestMapping(value = "/exportMyTaskList", method = RequestMethod.GET) public Result exportMyTaskList(inuptTaskHoursListBo ib, Integer pageNo, Integer pageSize) { if(pageSize==null)pageSize=999999; List list=(List) orderProjectService.taskHoursList(ib, pageNo, pageSize).getList(); NewExcelUtil excel=new NewExcelUtil<>(TOrderTaskListBo.class); return excel.exportExcel(list, "工时信息记录表",uploadPath); } /** * 我的任务列表导出xls */ @RequestMapping(value = "/exporProjectList", method = RequestMethod.GET) public Result exporProjectList(HttpServletResponse response,inuptTaskListBo ib) { if(ib.getPageSize()==null)ib.setPageSize(99999); String str="项目任务列表"; List list=(List) orderProjectService.orderTaskList(ib).getList(); list.forEach(e->{ if(e.getType()!=null) { String[] split = e.getType().split(","); StringBuilder stringBuilder = new StringBuilder(); int index = 1; for (int i = 1; i < 9; i++) { for (String s : split) { if (index ==Integer.parseInt(s)){ if (ApprovalTypeEnums.QT.getCode().equals(Integer.parseInt(s))){ stringBuilder.append(ApprovalTypeEnums.getDesc(s)) .append("(").append(e.getTypeExplain()).append(")") .append(","); }else { stringBuilder.append(ApprovalTypeEnums.getDesc(s)).append(","); } } } index++; if (index==8)index=0; } if(stringBuilder.length()>0)e.setType(stringBuilder.substring(0,stringBuilder.length()-1)); } } ); NewExcelUtilexcel=new NewExcelUtil<>(TOrderTaskListBo.class); return excel.exportExcel(list, str, response); } /** * 项目日志 (转交日志) */ @RequestMapping(value = "/taskAttributionLog",method = RequestMethod.GET) public Result taskAttributionLog(Integer tid) { Result res =new Result(); if (tid==null) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"项目编号","项目编号")); return res; } res.data(orderProjectService.taskAttributionLog(tid)); return res; } /** * 客户项目列表 */ @RequestMapping(value = "/selectUidByproject",method = RequestMethod.GET) public Result selectUidByproject(String uid) { Result res =new Result(); if (uid==null) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"客户编号","客户编号")); return res; } res.data( orderProjectService.selectUidByproject(uid) ); return res; } /** * 发起项目核对 */ @RequestMapping(value = "/addProjectCheck",method = RequestMethod.POST) public Result addProjectCheck(Integer tid) { Result res =new Result(); if (tid==null) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"项目编号","项目编号")); return res; } res.data( orderProjectService.addProjectCheck(tid) ); return res; } /** * 核对日志 */ @RequestMapping(value = "/projectCheckLog",method = RequestMethod.GET) public Result projectCheckLog(Integer tid) { Result res =new Result(); if (tid==null) { res.getError().add(buildError(ErrorConstants.PARAM_ERROR,"项目编号","项目编号")); return res; } res.data( orderProjectService.projectCheckLog(tid) ); return res; } /** * 获取专利分类 */ @RequestMapping(value = "/getPatentType",method = RequestMethod.GET) public Result getPatentType() { Result res =new Result(); res.data(OfficialPatentType.getStatus()); return res; } /** * 核对列表 */ @RequestMapping(value = "/selectProjectCheck",method = RequestMethod.GET) public Result selectProjectCheck(InputProjectCheck in) { Result res =new Result(); res.data(orderProjectService.selectProjectCheck(in)); return res; } /** * 高新复审统计 */ @RequestMapping(value = "/highNewRetrialStatistics",method = RequestMethod.GET) public Result highNewRetrialStatistics(String depId,String startDate,String endDate) { Result res =new Result(); res.data(orderProjectService.highNewRetrialStatistics(depId,startDate,endDate)); return res; } /** * 高新复审统计 */ @RequestMapping(value = "/highNewRetrialStatistics/export",method = RequestMethod.GET) public Result highNewRetrialStatisticsExport(String depId,String startDate,String endDate,String depName) { List list=orderProjectService.highNewRetrialStatistics(depId,startDate,endDate); NewExcelUtil newExcelUtil=new NewExcelUtil<>(OutHighNewRetrialStatistics.class); StringBuilder str=new StringBuilder("搜索条件=》"); if (depName!=null)str.append("部门:").append(depName).append(","); if (startDate!=null&&endDate!=null)str.append("时间:").append(startDate).append("~").append(endDate).append(","); return newExcelUtil.exportExcel(list,"高新复审统计",uploadPath,str.substring(0,str.toString().length()-1)); } /** * 高新复审详情列表 */ @RequestMapping(value = "/highNewRetrialList",method = RequestMethod.GET) public Result highNewRetrialList(String province,String depId,String startDate,String endDate,String aid,Integer sort) { Result res =new Result(); res.data(orderProjectService.highNewRetrialList(province,depId,aid,sort,startDate,endDate)); return res; } @RequestMapping(value = "/highNewRetrialList/export",method = RequestMethod.GET) public Result highNewRetrialListExport(String province,String provinceName,String depId,String depName,String startDate,String endDate,String aid, String aName,Integer sort) { List list=orderProjectService.highNewRetrialList(province,depId,aid,sort,startDate,endDate); NewExcelUtil newExcelUtil=new NewExcelUtil<>(OutHighNewRetrialList.class); StringBuilder str=new StringBuilder("搜索条件=》"); if (provinceName!=null)str.append("省份:").append(provinceName).append(","); if (depName!=null)str.append("部门:").append(depName).append(","); if (aName!=null)str.append("跟进人:").append(aName).append(","); if (startDate!=null&&endDate!=null)str.append("时间:").append(startDate).append("~").append(endDate).append(","); if(sort!=null){ str.append("排序:"); if(sort==0)str.append("按签通过高新排序"); else if(sort==1)str.append("按未通过高新排序"); } return newExcelUtil.exportExcel(list,"高新复审详情",uploadPath,str.substring(0,str.toString().length()-1)); } /** * 新增会员项目 */ @RequestMapping(value = "/addMemberProject" ,method = RequestMethod.POST) public Result addMemberProject(InputAddTask t){ Result res = new Result(); if(StringUtils.isBlank(t.getOrderNo())){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"","订单编号")); return res; } t.setProcessStatus(1); t.setMain(0); return res.data(orderNewService.addMemberProject(t)); } /** * 会员项目审核 */ @RequestMapping(value = "/examineMemberProject" ,method = RequestMethod.POST) public Result examineMemberProject(InputMenber in){ Result res = new Result(); if(in.getId()==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"项目编号")); return res; } return res.data(orderProjectService.pushExamineMemberProject(in)); } /** * 会员项目修改 */ @RequestMapping(value = "/updateMemberProject" ,method = RequestMethod.POST) public Result updateMemberProject(InputAddTask t){ Result res = new Result(); if(t.getId()==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"项目编号")); return res; } return res.data(orderProjectService.updateMemberProject(t)); } /** * 会员项目列表 */ @RequestMapping(value = "/memberList" ,method = RequestMethod.GET) public Result memberList(InputMemberList in){ Result res = new Result(); return res.data(orderProjectService.memberList(in)); } /** * 会员项目列表 */ @RequestMapping(value = "/memberLog" ,method = RequestMethod.GET) public Result memberLog(Integer id){ Result res = new Result(); return res.data(orderProjectService.memberLog(id)); } /** * 会员项目列表 */ @RequestMapping(value = "/memberList/export" ,method = RequestMethod.GET) public Result memberListExport(InputMemberList in){ return orderProjectService.memberListExport(in); } /** 文件上传 **/ @RequestMapping(value = "/uploadMemberFile", method = RequestMethod.POST) public Result uploadOrderInvoiceFile(HttpServletRequest req,String sign){ Result res = new Result(); res.setData(handleFile(res, "/member_project/", false, req, sign)); return res; } /** * 新增会员子项目(发起新增、无需审核) * */ @RequestMapping(value = "/addMemberFirstSonProject" ,method = RequestMethod.POST) public Result addMemberFirstSonProject(Integer tid,String serviceYear,String taskComment){ Result res = new Result(); if(tid==null||StringUtils.isBlank(serviceYear)){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"","参数")); return res; } if (orderProjectService.checkOrderProcessStatus(tid,0)){ res.getError().add(buildError("项目已发起,不允许使用首次新增会员子项目。")); return res; } return res.data(orderProjectService.addMemberSonProject( tid, serviceYear, taskComment,null,null)); } /** * 新增会员子项目(审核) * */ @RequestMapping(value = "/addMemberSonProject" ,method = RequestMethod.POST) public Result addMemberSonProject(Integer tid,String serviceYear,String taskComment,Integer memberType,String pictureUrl){ Result res = new Result(); if(tid==null||StringUtils.isBlank(serviceYear)){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"","参数")); return res; } return res.data(orderProjectService.addMemberSonProject( tid, serviceYear, taskComment,memberType, pictureUrl)); } /** * 删除会员子项目 * */ @RequestMapping(value = "/deleteMemberSonProject" ,method = RequestMethod.POST) public Result deleteMemberSonProject(Integer id){ Result res = new Result(); if(id==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"","订单编号")); return res; } return res.data(orderProjectService.deleteMemberSonProject( id)); } /** * 项目暂停 * */ @RequestMapping(value = "/addProjectStop" ,method = RequestMethod.POST) public Result addProjectStop(@Validated InputProjectStop in,BindingResult bindingResult){ Result res = new Result(); if (bindingResult.hasErrors()) { res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage(), ParamUtils.getParamName(in,bindingResult.getFieldError().getField()))); return res; } if (in.getIds()==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"编号","编号")); return res; } return res.data(orderProjectService.addProjectStop( in)); } /** * 项目暂停 * */ @RequestMapping(value = "/updateProjectStop" ,method = RequestMethod.POST) public Result updateProjectStop(@Validated InputProjectStop in,BindingResult bindingResult){ Result res = new Result(); if (bindingResult.hasErrors()) { res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage(), ParamUtils.getParamName(in,bindingResult.getFieldError().getField()))); return res; } if (in.getStopId()==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"暂停编号","暂停编号")); return res; } return res.data(orderProjectService.updateProjectStop(in)); } /** * 项目暂停审核 * */ @RequestMapping(value = "/examineProjectStop" ,method = RequestMethod.POST) public Result examineProjectStop(@Validated InputTaskStopLog in,BindingResult bindingResult){ Result res = new Result(); if (bindingResult.hasErrors()) { res.getError().add(buildErrorByMsg(bindingResult.getFieldError().getDefaultMessage(), ParamUtils.getParamName(in,bindingResult.getFieldError().getField()))); return res; } return res.data(orderProjectService.pushExamineProjectStop( in)); } /** * 项目暂停日志列表 * */ @RequestMapping(value = "/projectStopList" ,method = RequestMethod.GET) public Result projectStopList(Integer taskStopId){ Result res = new Result(); if (taskStopId==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"项目暂停编号","项目暂停编号")); return res; } return res.data(orderProjectService.projectStopList( taskStopId)); } /** * 项目暂停列表 * @param shiroType 0=我的列表 1=审核列表 */ @RequestMapping(value = "/selectProjectStop" ,method = RequestMethod.GET) public Result selectProjectStop(String orderNo,String userName,String depId,String contractNo, String projectName,Integer status, String startTime, String endTime, String receiverId, Integer shiroType,Integer pageNo,Integer pageSize){ Result res = new Result(); return res.data(orderProjectService.selectProjectStop( orderNo, userName, depId, contractNo, projectName, status,startTime,endTime,receiverId, shiroType,pageNo, pageSize)); } /** * 项目暂停列表 * */ @RequestMapping(value = "/selectProjectStop/export" ,method = RequestMethod.GET) public Result selectProjectSotpExport(String orderNo,String userName,String depId,String contractNo, String projectName,Integer status, String startTime, String endTime, String receiverId,Integer shiroType, Integer pageNo,Integer pageSize){ NewExcelUtil newExcelUtil=new NewExcelUtil(OutselectProjectSotpBo.class); Pagination p = orderProjectService.selectProjectStop(orderNo, userName, depId, contractNo, projectName, status, startTime, endTime, receiverId, shiroType, pageNo, pageSize); List list = (List) p.getList(); List list2=new ArrayList<>(); for (OutselectProjectSotp use : list) { OutselectProjectSotpBo o = new OutselectProjectSotpBo(); BeanUtils.copyProperties(use,o); StringBuilder str =new StringBuilder(); if (o.getStopStatus()==0){ str.append("已发起"); }else if (o.getStopStatus()==1){ str.append("已完成"); }else if (o.getStopStatus()==2){ str.append("已拒绝"); } if (o.getStopType()==0){ str.append("暂停"); }else if (o.getStopStatus()==1){ str.append("重启"); } o.setStatusName(str.toString()); list2.add(o); } return newExcelUtil.exportExcel(list2,"暂停项目列表",uploadPath); } /** 文件上传 **/ @RequestMapping(value = "/uploadStopFile", method = RequestMethod.POST) public Result uploadStopFile(HttpServletRequest req,String sign){ Result res = new Result(); res.setData(handleFile(res, "/projectStopFile/", false, req, sign)); return res; } /** 文件上传 **/ @RequestMapping(value = "/upload/satisfactionDegree", method = RequestMethod.POST) public Result uploadsatisfactionDegree(HttpServletRequest req,String sign,Integer id){ Result res = new Result(); String path="/satisfactionDegree/"+id+"/"; res.setData(handleFile(res, path, false, req, sign)); return res; } @RequestMapping(value="/updateSatisfactionDegree",method = RequestMethod.POST) public Result updateSatisfactionDegree(Integer id,Integer formRetrieve,Integer satisfactionDegree,String satisfactionDegreeUrl){ Result res=new Result(); if (id ==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"项目编号")); return res; } if (formRetrieve ==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"满意度回收状态")); return res; } if (formRetrieve==2){ if (satisfactionDegree ==null){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"满意度")); return res; } if (StringUtils.isBlank(satisfactionDegreeUrl)){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"满意度附件")); return res; } } if (formRetrieve==4){ if (StringUtils.isBlank(satisfactionDegreeUrl)){ res.getError().add(buildError(ErrorConstants.PARAM_EMPTY_ERROR,"满意度附件")); return res; } } res.setData(orderProjectService.updateSatisfactionDegree( id, formRetrieve, satisfactionDegree, satisfactionDegreeUrl)); return res; } }