package com.huaheng.pc.system.systable.controller; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.huaheng.common.utils.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.huaheng.common.support.Convert; import com.huaheng.common.utils.StringUtils; import com.huaheng.common.utils.security.ShiroUtils; import com.huaheng.framework.aspectj.lang.annotation.Log; import com.huaheng.framework.aspectj.lang.constant.BusinessType; import com.huaheng.framework.web.controller.BaseController; import com.huaheng.framework.web.domain.AjaxResult; import com.huaheng.framework.web.page.PageDomain; import com.huaheng.framework.web.page.TableDataInfo; import com.huaheng.framework.web.page.TableSupport; import com.huaheng.pc.system.systable.domain.SysTableFieldInfo; import com.huaheng.pc.system.systable.service.SysTableFieldInfoService; import org.apache.shiro.authz.annotation.RequiresPermissions; import org.springframework.stereotype.Controller; import org.springframework.ui.ModelMap; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import java.util.Arrays; import java.util.Date; import java.util.List; /** * Created by Enzo Cotter on 2020/3/20. */ @Controller @RequestMapping("/system/tableFieldInfo") public class SysTableFieldInfoController extends BaseController { @Resource private SysTableFieldInfoService tableFieldInfoService; private String prefix = "/system/table"; @RequiresPermissions("system:table:view") @GetMapping() public String sysTableFieldInfo() { return prefix + "/table"; } /** * 查询表格字段列表 */ @RequiresPermissions("system:table:list") @Log(title = "系统-表格字段", operating = "查看表格字段", action = BusinessType.GRANT) @PostMapping("/list") @ResponseBody public TableDataInfo list(SysTableFieldInfo sysTableFieldInfo, String createdBegin, String createdEnd) { LambdaQueryWrapper<SysTableFieldInfo> lambdaQueryWrapper = Wrappers.lambdaQueryNoWarehouse(); PageDomain pageDomain = TableSupport.buildPageRequest(); Integer pageNum = pageDomain.getPageNum(); Integer pageSize = pageDomain.getPageSize(); lambdaQueryWrapper.ge(StringUtils.isNotEmpty(createdBegin), SysTableFieldInfo::getCreated, createdBegin) .le(StringUtils.isNotEmpty(createdEnd), SysTableFieldInfo::getCreated, createdEnd) .eq(StringUtils.isNotNull(sysTableFieldInfo.getHeadId()), SysTableFieldInfo::getHeadId, sysTableFieldInfo.getHeadId()) .like(StringUtils.isNotEmpty(sysTableFieldInfo.getFieldCode()), SysTableFieldInfo::getFieldCode, sysTableFieldInfo.getFieldCode()) .eq(StringUtils.isNotEmpty(sysTableFieldInfo.getFiledName()), SysTableFieldInfo::getFiledName, sysTableFieldInfo.getFiledName()) .eq(StringUtils.isNotEmpty(sysTableFieldInfo.getFiledFuncation()),SysTableFieldInfo::getFiledFuncation, sysTableFieldInfo.getFiledFuncation()); TableDataInfo rspData = new TableDataInfo(); rspData.setCode(0); if (StringUtils.isNotNull(pageNum) && StringUtils.isNotNull(pageSize)) { /** * 使用分页查询 */ Page<SysTableFieldInfo> page = new Page<>(pageNum, pageSize); IPage<SysTableFieldInfo> iPage = tableFieldInfoService.page(page, lambdaQueryWrapper); rspData.setData(iPage.getRecords()); rspData.setTotal(iPage.getTotal()); return rspData; } else { List<SysTableFieldInfo> list = tableFieldInfoService.list(lambdaQueryWrapper); rspData.setData(list); rspData.setTotal(list.size()); return rspData; } } /** * 新增表格字段 */ @GetMapping("/add/{id}") public String add(@PathVariable("id") Long id, ModelMap map) { map.put("headId", id); return prefix + "/addDetails"; } /** * 新增保存表格字段 */ @RequiresPermissions("system:table:add") @Log(title = "系统-表格字段", operating = "表格字段", action = BusinessType.INSERT) @PostMapping("/add") @ResponseBody public AjaxResult addSave(SysTableFieldInfo sysTableFieldInfo) { sysTableFieldInfo.setCreated(new Date()); sysTableFieldInfo.setCreatedBy(ShiroUtils.getLoginName()); sysTableFieldInfo.setLastUpdated(new Date()); sysTableFieldInfo.setLastUpdateBy(ShiroUtils.getLoginName()); return toAjax(tableFieldInfoService.save(sysTableFieldInfo)); } /** * 修改表格字段 */ @GetMapping("/edit/{id}") public String edit(@PathVariable("id") Integer id, ModelMap mmap) { mmap.put("tableFieldInfo", tableFieldInfoService.getById(id)); return prefix + "/editDetails"; } /** * 修改保存表格字段 */ @RequiresPermissions("system:table:edit") @Log(title = "系统-表格字段", operating = "修改表格字段", action = BusinessType.UPDATE) @PostMapping("/edit") @ResponseBody public AjaxResult editSave(SysTableFieldInfo sysTableFieldInfo) { sysTableFieldInfo.setLastUpdated(new Date()); sysTableFieldInfo.setLastUpdateBy(ShiroUtils.getLoginName()); return toAjax(tableFieldInfoService.saveOrUpdate(sysTableFieldInfo)); } /** * 删除表格字段 */ @RequiresPermissions("system:table:remove") @Log(title = "系统-表格字段", operating = "删除表格字段", action = BusinessType.DELETE) @PostMapping("/remove") @ResponseBody public AjaxResult remove(String ids) { if (StringUtils.isEmpty(ids)) { return AjaxResult.error("id不能为空"); } return toAjax(tableFieldInfoService.removeByIds(Arrays.asList(Convert.toIntArray(ids)))); } }