package com.lf.server.controller.data; import com.lf.server.annotation.SysLog; import com.lf.server.controller.all.BaseController; import com.lf.server.entity.all.ResponseMsg; import com.lf.server.entity.bs.BsprojectEntity; import com.lf.server.entity.data.DictEntity; import com.lf.server.entity.data.DirEntity; import com.lf.server.entity.sys.DepEntity; import com.lf.server.entity.sys.UserEntity; import com.lf.server.helper.StringHelper; import com.lf.server.helper.WebHelper; import com.lf.server.mapper.bs.BsprojectMapper; import com.lf.server.service.all.BaseQueryService; import com.lf.server.service.data.DirService; import com.lf.server.service.sys.DepService; import com.lf.server.service.sys.TokenService; import io.swagger.annotations.Api; import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiOperation; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import javax.servlet.http.HttpServletRequest; import java.util.ArrayList; import java.util.HashMap; import java.util.List; import java.util.Map; /** * 项目管理 * @author WWW */ @Api(tags = "数据管理\\项目管理") @RestController @RequestMapping("/project") public class ProjectController extends BaseController { @Autowired DepService depService; @Autowired DirService dirService; @Autowired TokenService tokenService; @Autowired BsprojectMapper bsprojectMapper; @Autowired BaseQueryService baseQueryService; @SysLog() @ApiOperation(value = "查询所有单位数据") @GetMapping(value = "/selectDepAll") public ResponseMsg> selectDepAll() { try { List list = depService.selectDepAll(); return success(list); } catch (Exception ex) { return fail(ex.getMessage(), null); } } @SysLog() @ApiOperation(value = "查询所有目录数据") @GetMapping(value = "/selectDirAll") public ResponseMsg> selectDirAll() { try { List list = dirService.selectDirAll(); return success(list); } catch (Exception ex) { return fail(ex.getMessage(), null); } } @SysLog() @ApiOperation(value = "根据目录ID查询") @ApiImplicitParams({ @ApiImplicitParam(name = "dirid", value = "目录ID", dataType = "int", paramType = "query", example = "0") }) @GetMapping(value = "/selectByDirid") public ResponseMsg selectByDirid(int dirid) { try { Map map = new HashMap<>(1); map.put("dirid", dirid); List list = bsprojectMapper.selectByMap(map); if (null == list || list.isEmpty()) { return success(null); } return success(list.get(0)); } catch (Exception ex) { return fail(ex.getMessage(), null); } } @SysLog() @ApiOperation(value = "查询字段信息") @GetMapping(value = "/selectFields") public ResponseMsg> selectFields() { try { String tabName = BaseQueryService.getTabName(bsprojectMapper); if (tabName == null) { return null; } String[] strs = tabName.split("\\."); List list = baseQueryService.selectFields(strs[0], strs[1]); return success(list); } catch (Exception ex) { return fail(ex.getMessage(), null); } } @SysLog() @ApiOperation(value = "删除一条") @ApiImplicitParams({ @ApiImplicitParam(name = "gid", value = "ID", dataType = "int", paramType = "query", example = "1") }) @GetMapping(value = "/delete") public ResponseMsg delete(int gid) { try { int rows = bsprojectMapper.deleteById(gid); return success(rows); } catch (Exception ex) { return fail(ex.getMessage(), -1); } } @SysLog() @ApiOperation(value = "插入一条") @ApiImplicitParams({ @ApiImplicitParam(name = "entity", value = "实体类", dataType = "DictEntity", paramType = "body") }) @PostMapping(value = "/insert", produces = "application/json; charset=UTF-8") public ResponseMsg insert(@RequestBody BsprojectEntity entity, HttpServletRequest req) { try { if (null == entity) { return fail("实体类不能为空", 0); } UserEntity ue = tokenService.getCurrentUser(req); entity.setCreateuser(ue.getId()); entity.setCreatetime(WebHelper.getCurrentTimestamp()); entity.setGeom(StringHelper.getGeomWkt(entity.getGeom())); List list = new ArrayList<>(); list.add(entity); int rows = bsprojectMapper.insertBatch(list); return success(rows); } catch (Exception ex) { return fail(ex.getMessage(), -1); } } @SysLog() @ApiOperation(value = "更新一条") @ApiImplicitParams({ @ApiImplicitParam(name = "entity", value = "实体类", dataType = "DictEntity", paramType = "body") }) @ResponseBody @PostMapping(value = "/update", produces = "application/json; charset=UTF-8") public ResponseMsg update(@RequestBody BsprojectEntity entity, HttpServletRequest req) { try { if (null == entity) { return fail("实体类不能为空", 0); } UserEntity ue = tokenService.getCurrentUser(req); entity.setUpdateuser(ue.getId()); entity.setUpdatetime(WebHelper.getCurrentTimestamp()); entity.setGeom(StringHelper.getGeomWkt(entity.getGeom())); List list = new ArrayList<>(); list.add(entity); int rows = bsprojectMapper.updateBatch(list); return success(rows); } catch (Exception ex) { return fail(ex.getMessage(), -1); } } }