package com.dsh.guns.modular.system.controller.general; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.dsh.guns.config.UserExt; import com.dsh.guns.config.properties.GunsProperties; import com.dsh.guns.core.base.controller.BaseController; import com.dsh.guns.core.common.constant.factory.PageFactory; import com.dsh.guns.core.log.LogObjectHolder; import com.dsh.guns.core.util.SinataUtil; import com.dsh.guns.modular.system.model.TVersionManagement; import com.dsh.guns.modular.system.model.User; import com.dsh.guns.modular.system.service.ITVersionManagementService; import com.dsh.guns.modular.system.util.OBSUploadUtil; import com.dsh.guns.modular.system.util.OssUploadUtil; import org.bouncycastle.math.raw.Mod; 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.multipart.MultipartHttpServletRequest; import javax.servlet.http.HttpServletRequest; import java.util.Date; import java.util.HashMap; import java.util.Map; /** * 版本管理控制器 * * @author fengshuonan * @Date 2020-06-10 18:43:26 */ @Controller @RequestMapping("/tVersionManagement") public class TVersionManagementController extends BaseController { private String PREFIX = "/system/tVersionManagement/"; @Autowired private ITVersionManagementService tVersionManagementService; /** * 跳转到版本管理首页 */ @RequestMapping("") public String index(Model model) { model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tVersionManagement.html"; } /** * 跳转到查看详情 */ @RequestMapping("/lookDetail/{id}/{type}") public String lookDetail(@PathVariable Integer id, @PathVariable Integer type, Model model) { TVersionManagement tVersionManagement = tVersionManagementService.getById(id); String str = ""; if (1 == type){ str = tVersionManagement.getContent(); } model.addAttribute("str",str); return "/system/tComplaint/lookDetail.html"; } /** * 跳转到添加版本管理 */ @RequestMapping("/tVersionManagement_add") public String tVersionManagementAdd(Model model) { model.addAttribute("language",UserExt.getLanguage()); return PREFIX + "tVersionManagement_add.html"; } /** * 跳转到修改版本管理 */ @RequestMapping("/tVersionManagement_update/{tVersionManagementId}") public String tVersionManagementUpdate(@PathVariable Integer tVersionManagementId, Model model) { TVersionManagement tVersionManagement = tVersionManagementService.getById(tVersionManagementId); model.addAttribute("item",tVersionManagement); LogObjectHolder.me().set(tVersionManagement); return PREFIX + "tVersionManagement_edit.html"; } /** * 获取版本管理列表 */ @RequestMapping(value = "/list") @ResponseBody public Object list(String insertTime, String version) { String beginTime = null; String endTime = null; if (SinataUtil.isNotEmpty(insertTime)){ String[] timeArray = insertTime.split(" - "); beginTime = timeArray[0]; endTime = timeArray[1]; } User user = UserExt.getUser(); Page> page = new PageFactory>().defaultPage(); if (user.getRoleType() != 1){ page.setRecords(null); }else{ page.setRecords(tVersionManagementService.getVersionList(page,beginTime,endTime,version)); } return super.packForBT(page); } @Autowired private GunsProperties gunsProperties; /** * 异步上传包 * @param myfile * @return */ @ResponseBody @RequestMapping("/saveApk") public Map saveApk(@RequestPart("myfile") MultipartFile myfile, HttpServletRequest request){ Map m = new HashMap<>(); /*try { String pictureName = UUID.randomUUID().toString() + "." + ToolUtil.getFileSuffix(file.getOriginalFilename()); try { String fileSavePath = gunsProperties.getFileUploadPath()+"apk\\"; file.transferTo(new File(fileSavePath + pictureName)); } catch (Exception e) { e.printStackTrace(); } m.put("imgUrl", gunsProperties.getPictureServerAddress()+"apk/"+pictureName); } catch (Exception e) { e.printStackTrace(); }*/ try { MultipartHttpServletRequest multipartRequest = (MultipartHttpServletRequest) request; MultipartFile file = (MultipartFile) myfile; String pictureName = OBSUploadUtil.inputStreamUpload(file); m.put("imgUrl", pictureName); }catch (Exception e){ e.printStackTrace(); } return m; } /** * 新增版本管理 */ @RequestMapping(value = "/add") @ResponseBody public Object add(TVersionManagement tVersionManagement) { //判断版本号是否相同 int count = tVersionManagementService.getBaseMapper().selectCount( new QueryWrapper() .eq("version", tVersionManagement.getVersion()) .eq("type", tVersionManagement.getType())); if (count > 0){ return "error"; } tVersionManagement.setInsertTime(new Date()); tVersionManagementService.save(tVersionManagement); return SUCCESS_TIP; } /** * 删除版本管理 */ @RequestMapping(value = "/delete") @ResponseBody public Object delete(@RequestParam Integer tVersionManagementId) { tVersionManagementService.removeById(tVersionManagementId); return SUCCESS_TIP; } /** * 修改版本管理 */ @RequestMapping(value = "/update") @ResponseBody public Object update(TVersionManagement tVersionManagement) { int count = tVersionManagementService.getBaseMapper().selectCount( new QueryWrapper() .eq("version", tVersionManagement.getVersion()) .eq("type", tVersionManagement.getType())); if (count > 0){ return "error"; } tVersionManagementService.updateById(tVersionManagement); return SUCCESS_TIP; } /** * 版本管理详情 */ @RequestMapping(value = "/detail/{tVersionManagementId}") @ResponseBody public Object detail(@PathVariable("tVersionManagementId") Integer tVersionManagementId) { return tVersionManagementService.getById(tVersionManagementId); } }