|  | @@ -0,0 +1,217 @@
 | 
												
													
														
															|  | 
 |  | +package com.jeeplus.modules.workmaterialcollect.web;
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.common.config.Global;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.common.json.AjaxJson;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.common.persistence.Page;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.common.utils.StringUtils;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.common.utils.excel.ImportExcel;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.common.web.BaseController;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.sys.entity.Office;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.sys.entity.User;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.sys.entity.Workattachment;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.sys.service.WorkattachmentService;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.sys.utils.UserUtils;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workitemcollar.entity.WorkItemCollar;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workmaterialcollect.entity.WorkMaterialCollectEngineer;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workmaterialcollect.entity.WorkMaterialCollectTotal;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workmaterialcollect.entity.WorkMaterialCollectType;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workmaterialcollect.service.WorkMaterialCollectEngineerService;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workmaterialcollect.service.WorkMaterialCollectTotalService;
 | 
												
													
														
															|  | 
 |  | +import com.jeeplus.modules.workmaterialcollect.service.WorkMaterialCollectTypeService;
 | 
												
													
														
															|  | 
 |  | +import org.apache.shiro.authz.annotation.Logical;
 | 
												
													
														
															|  | 
 |  | +import org.apache.shiro.authz.annotation.RequiresPermissions;
 | 
												
													
														
															|  | 
 |  | +import org.springframework.beans.factory.annotation.Autowired;
 | 
												
													
														
															|  | 
 |  | +import org.springframework.stereotype.Controller;
 | 
												
													
														
															|  | 
 |  | +import org.springframework.ui.Model;
 | 
												
													
														
															|  | 
 |  | +import org.springframework.web.bind.annotation.*;
 | 
												
													
														
															|  | 
 |  | +import org.springframework.web.multipart.MultipartFile;
 | 
												
													
														
															|  | 
 |  | +import org.springframework.web.servlet.mvc.support.RedirectAttributes;
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +import javax.servlet.http.HttpServletRequest;
 | 
												
													
														
															|  | 
 |  | +import javax.servlet.http.HttpServletResponse;
 | 
												
													
														
															|  | 
 |  | +import javax.validation.ConstraintViolationException;
 | 
												
													
														
															|  | 
 |  | +import java.util.List;
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +/**
 | 
												
													
														
															|  | 
 |  | + * 确认采集单 -- project
 | 
												
													
														
															|  | 
 |  | + */
 | 
												
													
														
															|  | 
 |  | +@Controller
 | 
												
													
														
															|  | 
 |  | +@RequestMapping(value = "${adminPath}/workMaterialCollect/engineerSure")
 | 
												
													
														
															|  | 
 |  | +public class WorkMaterialCollectEngineerSureController extends BaseController {
 | 
												
													
														
															|  | 
 |  | +    @Autowired
 | 
												
													
														
															|  | 
 |  | +    private WorkMaterialCollectEngineerService workMaterialCollectEngineerService;
 | 
												
													
														
															|  | 
 |  | +    @Autowired
 | 
												
													
														
															|  | 
 |  | +    private WorkMaterialCollectTypeService workMaterialCollectTypeService;
 | 
												
													
														
															|  | 
 |  | +    @Autowired
 | 
												
													
														
															|  | 
 |  | +    private WorkattachmentService workattachmentService;
 | 
												
													
														
															|  | 
 |  | +    @Autowired
 | 
												
													
														
															|  | 
 |  | +    private WorkMaterialCollectTotalService workMaterialCollectTotalService;
 | 
												
													
														
															|  | 
 |  | +    //查找方法
 | 
												
													
														
															|  | 
 |  | +    @ModelAttribute
 | 
												
													
														
															|  | 
 |  | +    public WorkMaterialCollectEngineer get(@RequestParam(required = false)String id){
 | 
												
													
														
															|  | 
 |  | +        WorkMaterialCollectEngineer entity = null;
 | 
												
													
														
															|  | 
 |  | +        if (StringUtils.isNotBlank(id)){
 | 
												
													
														
															|  | 
 |  | +            entity = workMaterialCollectEngineerService.get(id);
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +        if (entity == null){
 | 
												
													
														
															|  | 
 |  | +            entity = new WorkMaterialCollectEngineer();
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +        return entity;
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +    /**
 | 
												
													
														
															|  | 
 |  | +     * 物品一览表列表页面
 | 
												
													
														
															|  | 
 |  | +     */
 | 
												
													
														
															|  | 
 |  | +    @RequiresPermissions("workMaterialCollect:engineerSure:list")
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = {"list", ""})
 | 
												
													
														
															|  | 
 |  | +    public String list(WorkMaterialCollectEngineer workMaterialCollectEngineer, HttpServletRequest request, HttpServletResponse response, Model model) {
 | 
												
													
														
															|  | 
 |  | +//        if (null!=workMaterialCollectEngineer){
 | 
												
													
														
															|  | 
 |  | +//            if (null!=workMaterialCollectEngineer.getProjectStatus()&&!"".equals(workMaterialCollectEngineer.getProjectStatus())){
 | 
												
													
														
															|  | 
 |  | +//                if (workMaterialCollectEngineer.getProjectStatus().equals("1")){
 | 
												
													
														
															|  | 
 |  | +//                    workMaterialCollectEngineer.setProjectStatus("1");
 | 
												
													
														
															|  | 
 |  | +//                    workMaterialCollectEngineer.setCopyStatus("2");//部分已经上传
 | 
												
													
														
															|  | 
 |  | +//                    workMaterialCollectEngineer.setCopyStatusAdd("1");
 | 
												
													
														
															|  | 
 |  | +//                }
 | 
												
													
														
															|  | 
 |  | +//                if (workMaterialCollectEngineer.getProjectStatus().equals("0")){
 | 
												
													
														
															|  | 
 |  | +//                    workMaterialCollectEngineer.setProjectStatus("0");
 | 
												
													
														
															|  | 
 |  | +//                    workMaterialCollectEngineer.setCopyStatus("0");//部分已经上传
 | 
												
													
														
															|  | 
 |  | +//                    workMaterialCollectEngineer.setCopyStatusAdd("0");
 | 
												
													
														
															|  | 
 |  | +//                }
 | 
												
													
														
															|  | 
 |  | +//            }
 | 
												
													
														
															|  | 
 |  | +//        }
 | 
												
													
														
															|  | 
 |  | +        Page<WorkMaterialCollectEngineer> page = workMaterialCollectEngineerService.findPage(new Page<WorkMaterialCollectEngineer>(request, response), workMaterialCollectEngineer);
 | 
												
													
														
															|  | 
 |  | +        model.addAttribute("page", page);
 | 
												
													
														
															|  | 
 |  | +        return "modules/workmaterialcollect/workMaterialCollectEngineerSureList";
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +    /*
 | 
												
													
														
															|  | 
 |  | +        查看,新增,修改
 | 
												
													
														
															|  | 
 |  | +     */
 | 
												
													
														
															|  | 
 |  | +    @RequiresPermissions(value={"workMaterialCollect:engineerSure:view","workMaterialCollect:engineerSure:add","workMaterialCollect:engineerSure:edit"},logical= Logical.OR)
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = "form")
 | 
												
													
														
															|  | 
 |  | +    public String form(WorkMaterialCollectEngineer workMaterialCollectEngineer,Model model,HttpServletRequest request){
 | 
												
													
														
															|  | 
 |  | +        String flat=request.getParameter("tabId");
 | 
												
													
														
															|  | 
 |  | +        if("1".equals(flat)){
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer.setOfficeName(UserUtils.getSelectOffice().getTopCompany());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer.setOfficeId(UserUtils.getSelectOffice().getId());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer.setCompanyId(UserUtils.getSelectCompany().getId());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer.setLeader(UserUtils.getUser().getId());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer.setUser(UserUtils.getUser());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer.setUserName(UserUtils.getUser().getName());
 | 
												
													
														
															|  | 
 |  | +            model.addAttribute("workMaterialCollectEngineer",workMaterialCollectEngineer);
 | 
												
													
														
															|  | 
 |  | +        }else {
 | 
												
													
														
															|  | 
 |  | +            //修改展示
 | 
												
													
														
															|  | 
 |  | +            WorkMaterialCollectEngineer workMaterialCollectEngineer1 = workMaterialCollectEngineerService.get(workMaterialCollectEngineer.getId());
 | 
												
													
														
															|  | 
 |  | +            //回显采集人和部门
 | 
												
													
														
															|  | 
 |  | +            User user = UserUtils.get(workMaterialCollectEngineer1.getLeader());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer1.setUserName(user.getName());
 | 
												
													
														
															|  | 
 |  | +            Office office = UserUtils.getOfficeById(workMaterialCollectEngineer1.getOfficeId());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer1.setOfficeName(office.getName());
 | 
												
													
														
															|  | 
 |  | +            WorkMaterialCollectType workMaterialCollectType = new WorkMaterialCollectType();
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectType.setEngineerId(workMaterialCollectEngineer1.getId());
 | 
												
													
														
															|  | 
 |  | +            Workattachment workattachment = new Workattachment();
 | 
												
													
														
															|  | 
 |  | +            List<WorkMaterialCollectType> list = workMaterialCollectTypeService.findList(workMaterialCollectType);
 | 
												
													
														
															|  | 
 |  | +            for (WorkMaterialCollectType workMaterialCollectType1:list){
 | 
												
													
														
															|  | 
 |  | +                if (workMaterialCollectType1.getStatus().equals("0")){
 | 
												
													
														
															|  | 
 |  | +                    workMaterialCollectType1.setStatus("未上传");
 | 
												
													
														
															|  | 
 |  | +                }else {
 | 
												
													
														
															|  | 
 |  | +                    workMaterialCollectType1.setStatus("已上传");
 | 
												
													
														
															|  | 
 |  | +                }
 | 
												
													
														
															|  | 
 |  | +                workattachment = workattachmentService.get(workMaterialCollectType1.getAttachmentId());
 | 
												
													
														
															|  | 
 |  | +                workMaterialCollectType1.setWorkattachment(workattachment);
 | 
												
													
														
															|  | 
 |  | +            }
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineer1.setWorkMaterialCollectTypes(list);
 | 
												
													
														
															|  | 
 |  | +            model.addAttribute("workMaterialCollectEngineer",workMaterialCollectEngineer1);
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +        return "modules/workmaterialcollect/workMaterialCollectEngineerSureForm";
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +    /**
 | 
												
													
														
															|  | 
 |  | +     * 查看,增加,编辑收文管理表单页面
 | 
												
													
														
															|  | 
 |  | +     */
 | 
												
													
														
															|  | 
 |  | +    @RequiresPermissions(value={"workMaterialCollect:engineerSure:view"},logical=Logical.OR)
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = "view")
 | 
												
													
														
															|  | 
 |  | +    public String view(WorkMaterialCollectEngineer workMaterialCollectEngineer,Model model){
 | 
												
													
														
															|  | 
 |  | +//        WorkMaterialCollectEngineer workMaterialCollectEngineer1 = workMaterialCollectEngineerService.findCollectEng(workMaterialCollectEngineer.getId());
 | 
												
													
														
															|  | 
 |  | +        WorkMaterialCollectEngineer workMaterialCollectEngineer1 = workMaterialCollectEngineerService.get(workMaterialCollectEngineer.getId());
 | 
												
													
														
															|  | 
 |  | +        //回显采集人和部门
 | 
												
													
														
															|  | 
 |  | +        User user = UserUtils.get(workMaterialCollectEngineer1.getLeader());
 | 
												
													
														
															|  | 
 |  | +        workMaterialCollectEngineer1.setUserName(user.getName());
 | 
												
													
														
															|  | 
 |  | +        Office office = UserUtils.getOfficeById(workMaterialCollectEngineer1.getOfficeId());
 | 
												
													
														
															|  | 
 |  | +        workMaterialCollectEngineer1.setOfficeName(office.getName());
 | 
												
													
														
															|  | 
 |  | +        WorkMaterialCollectType workMaterialCollectType = new WorkMaterialCollectType();
 | 
												
													
														
															|  | 
 |  | +        workMaterialCollectType.setEngineerId(workMaterialCollectEngineer1.getId());
 | 
												
													
														
															|  | 
 |  | +        Workattachment workattachment = new Workattachment();
 | 
												
													
														
															|  | 
 |  | +        List<WorkMaterialCollectType> list = workMaterialCollectTypeService.findList(workMaterialCollectType);
 | 
												
													
														
															|  | 
 |  | +        for (WorkMaterialCollectType workMaterialCollectType1:list){
 | 
												
													
														
															|  | 
 |  | +            workattachment = workattachmentService.get(workMaterialCollectType1.getAttachmentId());
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectType1.setWorkattachment(workattachment);
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +        workMaterialCollectEngineer1.setWorkMaterialCollectTypes(list);
 | 
												
													
														
															|  | 
 |  | +        model.addAttribute("workMaterialCollectEngineer",workMaterialCollectEngineer1);
 | 
												
													
														
															|  | 
 |  | +        return "modules/workmaterialcollect/workMaterialCollectEngineerView";
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = "save")
 | 
												
													
														
															|  | 
 |  | +    public String save(WorkMaterialCollectEngineer workMaterialCollectEngineer,Model model, RedirectAttributes redirectAttributes){
 | 
												
													
														
															|  | 
 |  | +        //判断修改还是删除
 | 
												
													
														
															|  | 
 |  | +        try{
 | 
												
													
														
															|  | 
 |  | +            if (!"".equals(workMaterialCollectEngineer.getId())){
 | 
												
													
														
															|  | 
 |  | +                //修改
 | 
												
													
														
															|  | 
 |  | +                workMaterialCollectEngineerService.updateCollectEngineer(workMaterialCollectEngineer);
 | 
												
													
														
															|  | 
 |  | +            }else {
 | 
												
													
														
															|  | 
 |  | +                //保存
 | 
												
													
														
															|  | 
 |  | +                workMaterialCollectEngineerService.saveCollectEngineer(workMaterialCollectEngineer);
 | 
												
													
														
															|  | 
 |  | +            }
 | 
												
													
														
															|  | 
 |  | +        }catch (Exception e){
 | 
												
													
														
															|  | 
 |  | +            e.printStackTrace();
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +        //获取工程类型集合
 | 
												
													
														
															|  | 
 |  | +        return "redirect:"+ Global.getAdminPath()+"/workMaterialCollect/engineer/?repage";
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +    //修改备注信息
 | 
												
													
														
															|  | 
 |  | +    @ResponseBody
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = "updateRemarks")
 | 
												
													
														
															|  | 
 |  | +    public AjaxJson updateRemarksController(WorkMaterialCollectType workMaterialCollectType){
 | 
												
													
														
															|  | 
 |  | +        AjaxJson ajaxJson = new AjaxJson();
 | 
												
													
														
															|  | 
 |  | +        try {
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectTotalService.updateRemarksService(workMaterialCollectType);
 | 
												
													
														
															|  | 
 |  | +         ajaxJson.setSuccess(true);
 | 
												
													
														
															|  | 
 |  | +         ajaxJson.setMsg("备注成功");
 | 
												
													
														
															|  | 
 |  | +         return ajaxJson;
 | 
												
													
														
															|  | 
 |  | +        }catch (Exception e){
 | 
												
													
														
															|  | 
 |  | +            e.printStackTrace();
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +        ajaxJson.setSuccess(false);
 | 
												
													
														
															|  | 
 |  | +        ajaxJson.setMsg("备注失败");
 | 
												
													
														
															|  | 
 |  | +        return ajaxJson;
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +    //取消上传文件
 | 
												
													
														
															|  | 
 |  | +    @ResponseBody
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = "delete")
 | 
												
													
														
															|  | 
 |  | +    public AjaxJson deleteWorkTotal(WorkMaterialCollectType workMaterialCollectType,String itemId) throws Exception{
 | 
												
													
														
															|  | 
 |  | +        AjaxJson j = new AjaxJson();
 | 
												
													
														
															|  | 
 |  | +        try {
 | 
												
													
														
															|  | 
 |  | +            //修改状态
 | 
												
													
														
															|  | 
 |  | +            workMaterialCollectEngineerService.cancelWorkInformation(workMaterialCollectType,itemId);
 | 
												
													
														
															|  | 
 |  | +            j.setSuccess(true);
 | 
												
													
														
															|  | 
 |  | +            j.setMsg("取消确认单成功");
 | 
												
													
														
															|  | 
 |  | +            return j;
 | 
												
													
														
															|  | 
 |  | +        }catch (Exception e){
 | 
												
													
														
															|  | 
 |  | +            e.printStackTrace();
 | 
												
													
														
															|  | 
 |  | +        }
 | 
												
													
														
															|  | 
 |  | +//        return "redirect:"+ Global.getAdminPath()+"/workMaterialCollect/engineerSure/view?repage";
 | 
												
													
														
															|  | 
 |  | +        j.setSuccess(false);
 | 
												
													
														
															|  | 
 |  | +        j.setMsg("取消确认单失败");
 | 
												
													
														
															|  | 
 |  | +        return j;
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +
 | 
												
													
														
															|  | 
 |  | +    //查看确认单
 | 
												
													
														
															|  | 
 |  | +    @RequestMapping(value = "sureTotalView")
 | 
												
													
														
															|  | 
 |  | +    public String list(WorkMaterialCollectTotal workMaterialCollectTotal,HttpServletRequest request, HttpServletResponse response, Model model) {
 | 
												
													
														
															|  | 
 |  | +        Page<WorkMaterialCollectTotal> page = workMaterialCollectTotalService.findPage(new Page<WorkMaterialCollectTotal>(request, response), workMaterialCollectTotal);
 | 
												
													
														
															|  | 
 |  | +        model.addAttribute("page", page);
 | 
												
													
														
															|  | 
 |  | +        return "modules/workmaterialcollect/workMaterialCollectTotalSureView";
 | 
												
													
														
															|  | 
 |  | +    }
 | 
												
													
														
															|  | 
 |  | +}
 |