package com.ydtech.modules.esm.controller; import com.ydtech.core.page.HttpResult; import com.ydtech.core.page.PageRequest; import com.ydtech.core.page.PageResult; import com.ydtech.modules.base.controller.BaseController; import com.ydtech.modules.esm.model.SysVersion; import com.ydtech.modules.esm.service.SysVersionService; import com.ydtech.utils.idgen.IdGenerate; import org.apache.commons.lang3.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.ArrayList; import java.util.Date; import java.util.List; /** * --------------------------- * APP版本管理 (SysVersionController) * --------------------------- * 作者:qfl * --------------------------- */ @RestController @RequestMapping("sysVersion") public class SysVersionController extends BaseController { @Autowired private SysVersionService sysVersionService; /** * 保存信息 * * @param record * @return */ @PostMapping(value = "/save") public HttpResult save(@RequestBody SysVersion record) { Integer result = 0; String msg = "保存成功"; if (StringUtils.isEmpty(record.getAppid())) { return HttpResult.error("appid 不能为空"); } if (StringUtils.isEmpty(record.getSid())) { record.setSid(IdGenerate.nextId()); record.setCreator(getUserName()); record.setCreatetime(new Date()); if ("1".equals(record.getIssueflag())) { //先下线其他版本 sysVersionService.updateIssueflag(record.getAppid()); } result = sysVersionService.insert(record); } else { SysVersion version = sysVersionService.selectByPk(record.getSid()); version.setAppid(record.getAppid()); version.setAppname(record.getAppname()); version.setTitle(record.getTitle()); version.setContent(record.getContent()); version.setApptype(record.getApptype()); version.setPlatform(record.getPlatform()); version.setVersionno(record.getVersionno()); version.setPath(record.getPath()); version.setUpdateflag(record.getUpdateflag()); version.setIssueflag(record.getIssueflag()); if ("1".equals(record.getIssueflag())) { //先下线其他版本 sysVersionService.updateIssueflag(record.getAppid()); } result = sysVersionService.update(version); } return HttpResult.ok(msg, result); } /** * 删除信息 * * @param records * @return */ @PostMapping(value = "/delete") public HttpResult delete(@RequestBody List records) { for (SysVersion version : records) { sysVersionService.delete(version.getSid()); } return HttpResult.ok(); } /** * 基础分页查询 * * @param pageRequest * @return */ @PostMapping(value = "/findPage") public HttpResult findPage(@RequestBody PageRequest pageRequest) { int pageNum = pageRequest.getPageNum(); int pageSize = pageRequest.getPageSize(); String appid = pageRequest.getColumnFilterValue(pageRequest, "appid"); String appname = pageRequest.getColumnFilterValue(pageRequest, "appname"); List params = new ArrayList(); StringBuffer whereStr = new StringBuffer(" where 1=1 "); if (!StringUtils.isEmpty(appname)) { params.add("%" + appname + "%"); whereStr.append(" and appname like ?"); } if (!StringUtils.isEmpty(appid)) { params.add(appid); whereStr.append(" and appid = ?"); } PageResult pageResult = sysVersionService.selectPaging(pageNum, pageSize, whereStr.toString(), params.toArray()); return HttpResult.ok(pageResult); } /** * 查询列表 * * @param appid * @return */ @PostMapping(value = "/selectList") public HttpResult selectList(@RequestParam String appid) { List selectList = sysVersionService.selectList(" where appid=?", new Object[]{appid}); return HttpResult.ok(selectList); } /** * 根据主键查询 * * @param sid * @return */ @GetMapping(value = "/findById") public HttpResult findById(@RequestParam String sid) { return HttpResult.ok(sysVersionService.selectByPk(sid)); } /** * 获取最大版本号 * * @param appid * @return */ @GetMapping(value = "/queryMaxNum") public HttpResult queryMaxNum(@RequestParam String appid) { String maxnum = sysVersionService.findMaxNum(appid); List selectList = sysVersionService.selectList(" where versionno=?", new Object[]{maxnum}); return HttpResult.ok(selectList.get(0)); } }