123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224 |
- package com.caimei.modules.newhome.web;
- import javax.annotation.Resource;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import com.caimei.dfs.image.beens.ImageUploadInfo;
- import com.caimei.modules.common.utils.UploadUtils;
- import com.caimei.modules.newhome.entity.CmInstrumentMaintenanceLinks;
- import com.caimei.modules.newhome.service.CmInstrumentMaintenanceLinksService;
- import com.caimei.modules.sys.utils.UploadImageUtils;
- import com.caimei.utils.AppUtils;
- import com.thinkgem.jeesite.common.utils.Encodes;
- 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.ModelAttribute;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.RequestParam;
- import org.springframework.web.bind.annotation.ResponseBody;
- import org.springframework.web.servlet.mvc.support.RedirectAttributes;
- import com.thinkgem.jeesite.common.config.Global;
- import com.thinkgem.jeesite.common.persistence.Page;
- import com.thinkgem.jeesite.common.web.BaseController;
- import com.thinkgem.jeesite.common.utils.StringUtils;
- import com.caimei.modules.newhome.entity.CmInstrumentMaintenance;
- import com.caimei.modules.newhome.service.CmInstrumentMaintenanceService;
- import java.lang.reflect.Field;
- import java.lang.reflect.InvocationTargetException;
- import java.lang.reflect.Method;
- import java.text.SimpleDateFormat;
- import java.util.*;
- /**
- * 仪器维修Controller
- *
- * @author lwt
- * @version 2019-03-15
- */
- @Controller
- @RequestMapping(value = "${adminPath}/newhome/cmInstrumentMaintenance")
- public class CmInstrumentMaintenanceController extends BaseController {
- @Resource
- private CmInstrumentMaintenanceService cmInstrumentMaintenanceService;
- @Resource
- private CmInstrumentMaintenanceLinksService cmInstrumentMaintenanceLinksService;
- @ModelAttribute
- public CmInstrumentMaintenance get(@RequestParam(required = false) String id) {
- CmInstrumentMaintenance entity = null;
- if (StringUtils.isNotBlank(id)) {
- entity = cmInstrumentMaintenanceService.get(id);
- }
- if (entity == null) {
- entity = new CmInstrumentMaintenance();
- }
- return entity;
- }
- @RequiresPermissions("newhome:cmInstrumentMaintenance:view")
- @RequestMapping(value = {"list", ""})
- public String list(CmInstrumentMaintenance cmInstrumentMaintenance, HttpServletRequest request, HttpServletResponse response, Model model) {
- if (null != cmInstrumentMaintenance.getStartTime() && !"".equals(cmInstrumentMaintenance.getStartTime()) && !cmInstrumentMaintenance.getStartTime().endsWith("00:00:00")) {
- cmInstrumentMaintenance.setStartTime(cmInstrumentMaintenance.getStartTime() + " 00:00:00");
- }
- if (null != cmInstrumentMaintenance.getEndTime() && !"".equals(cmInstrumentMaintenance.getEndTime()) && !cmInstrumentMaintenance.getEndTime().endsWith("23:59:59")) {
- cmInstrumentMaintenance.setEndTime(cmInstrumentMaintenance.getEndTime() + " 23:59:59");
- }
- Page<CmInstrumentMaintenance> page = cmInstrumentMaintenanceService.findPage(new Page<>(request, response), cmInstrumentMaintenance);
- String wwwServer = Global.getConfig("wwwServer");
- for (CmInstrumentMaintenance bean : page.getList()) {
- String type = "";
- if ("1".equals(bean.getStatus()) && "1".equals(bean.getAuthenticity())) {
- type = "2";
- }
- if ("2".equals(bean.getStatus()) || "3".equals(bean.getStatus())) {
- type = "3";
- }
- if (StringUtils.isNoneBlank(type)) {
- CmInstrumentMaintenanceLinks l = cmInstrumentMaintenanceLinksService.findWithType(bean.getId(), type);
- if (l != null){
- bean.setLink(wwwServer + "supplier/repair/detail.html?code=" + l.getLinkCode());
- }
- }
- }
- model.addAttribute("page", page);
- return "modules/newhome/cmInstrumentMaintenanceList";
- }
- @RequiresPermissions("newhome:cmInstrumentMaintenance:view")
- @RequestMapping(value = "form")
- public String form(CmInstrumentMaintenance cmInstrumentMaintenance, Model model) {
- List<String> instrumentImages = new ArrayList<>();
- Class clazz = cmInstrumentMaintenance.getClass();
- //有五张仪器检修图 getInstrumentImage1 ~ 5
- for (int i = 1; i <= 5; i++) {
- try {
- Method method = clazz.getDeclaredMethod("getInstrumentImage" + i);
- Object image = method.invoke(cmInstrumentMaintenance);
- if (image != null && StringUtils.isNoneEmpty(image.toString()))
- instrumentImages.add(image.toString());
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (InvocationTargetException e) {
- e.printStackTrace();
- }
- }
- CmInstrumentMaintenanceLinks b = null;
- if ("1".equals(cmInstrumentMaintenance.getStatus()) && "1".equals(cmInstrumentMaintenance.getAuthenticity())) { //已提交状态下 维修商只能查看部分信息
- b = cmInstrumentMaintenanceLinksService.findWithType(cmInstrumentMaintenance.getId(), "2");
- }
- if ("2".equals(cmInstrumentMaintenance.getStatus()) || "3".equals(cmInstrumentMaintenance.getStatus())) {
- b = cmInstrumentMaintenanceLinksService.findWithType(cmInstrumentMaintenance.getId(), "3");
- }
- if (b != null && StringUtils.isNoneEmpty(b.getLinkCode())) {
- String wwwServer = Global.getConfig("wwwServer");
- String link = wwwServer + "supplier/repair/detail.html?code=" + b.getLinkCode();
- model.addAttribute("link", link);
- }
- model.addAttribute("cmInstrumentMaintenance", cmInstrumentMaintenance);
- model.addAttribute("instrumentImages", instrumentImages);
- return "modules/newhome/cmInstrumentMaintenanceForm";
- }
- @RequiresPermissions("newhome:cmInstrumentMaintenance:edit")
- @RequestMapping(value = "save")
- public String save(CmInstrumentMaintenance cmInstrumentMaintenance, Model model, RedirectAttributes redirectAttributes, HttpServletRequest request) {
- if (!beanValidator(model, cmInstrumentMaintenance)) {
- return form(cmInstrumentMaintenance, model);
- }
- Class clazz = cmInstrumentMaintenance.getClass();
- for (int i = 1; i <= 5; i++) {
- try {
- Method getMethod = clazz.getDeclaredMethod("getInstrumentImage" + i);
- Object image = getMethod.invoke(cmInstrumentMaintenance);
- if ("".equals(image)) {
- Field field = clazz.getDeclaredField("instrumentImage" + i);
- field.setAccessible(true);
- field.set(cmInstrumentMaintenance, null);
- field.setAccessible(false);
- continue;
- }
- if (image != null && StringUtils.isNoneEmpty(image.toString()) && !image.toString().startsWith("http")) {
- String img = saveImageToServer(image.toString(), request);
- Field field = clazz.getDeclaredField("instrumentImage" + i);
- field.setAccessible(true);
- field.set(cmInstrumentMaintenance, img);
- field.setAccessible(false);
- }
- } catch (NoSuchMethodException e) {
- e.printStackTrace();
- } catch (IllegalAccessException e) {
- e.printStackTrace();
- } catch (InvocationTargetException e) {
- e.printStackTrace();
- } catch (NoSuchFieldException e) {
- e.printStackTrace();
- }
- }
- if (StringUtils.isEmpty(cmInstrumentMaintenance.getId()))
- cmInstrumentMaintenanceService.save(cmInstrumentMaintenance);
- else
- cmInstrumentMaintenanceService.update(cmInstrumentMaintenance);
- addMessage(redirectAttributes, "保存仪器维修成功");
- return "redirect:" + Global.getAdminPath() + "/newhome/cmInstrumentMaintenance/?repage";
- }
- @RequiresPermissions("newhome:cmInstrumentMaintenance:delete")
- @RequestMapping(value = "delete")
- public String delete(CmInstrumentMaintenance cmInstrumentMaintenance, RedirectAttributes redirectAttributes) {
- cmInstrumentMaintenanceService.delete(cmInstrumentMaintenance);
- addMessage(redirectAttributes, "删除仪器维修成功");
- return "redirect:" + Global.getAdminPath() + "/newhome/cmInstrumentMaintenance/?repage";
- }
- @RequiresPermissions("newhome:cmInstrumentMaintenance:edit")
- @RequestMapping(value = "cancel")
- @ResponseBody
- public Map<String, Object> cancel(CmInstrumentMaintenance cmInstrumentMaintenance, RedirectAttributes redirectAttributes) {
- Map<String, Object> result = new HashMap<>();
- try {
- if (StringUtils.isNoneEmpty(cmInstrumentMaintenance.getId())) {
- cmInstrumentMaintenance.setStatus("4");
- cmInstrumentMaintenance.setCancelDate(new Date());
- cmInstrumentMaintenance.setAuthenticity("2");
- cmInstrumentMaintenanceService.update(cmInstrumentMaintenance);
- result.put("errcode", "0");
- } else {
- throw new Exception("参数有误!");
- }
- } catch (Exception e) {
- result.put("errcode", "1");
- result.put("errmsg", e.getMessage());
- }
- return result;
- }
- public String saveImageToServer(String imagesHead, HttpServletRequest request){
- String photoServer = Global.getConfig("photoServer");//获取文件服务器地址
- String res = "";
- ImageUploadInfo saveImageSerivce=new ImageUploadInfo();
- if(StringUtils.isNotBlank(imagesHead) && !imagesHead.startsWith("http:") && !imagesHead.startsWith("https:")){
- imagesHead= Encodes.urlDecode(imagesHead);
- // String realPath = request.getSession().getServletContext().getRealPath(imagesHead);
- String realPath = UploadImageUtils.getAbsolutePath(imagesHead);
- // realPath=Encodes.urlDecode(realPath);
- int pointerIndex = realPath.lastIndexOf(".");
- try {
- saveImageSerivce = UploadUtils.saveImageSerivce(realPath, pointerIndex,realPath);
- res = photoServer+saveImageSerivce.getSource();
- } catch (Exception e) {
- logger.error("图片上传错误:"+e.toString(),e);
- }
- }
- return res;
- }
- }
|