package com.jsh.erp.controller; import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONObject; import com.jsh.erp.base.BaseController; import com.jsh.erp.base.TableDataInfo; import com.jsh.erp.datasource.entities.InOutItem; import com.jsh.erp.service.InOutItemService; import com.jsh.erp.utils.Constants; import com.jsh.erp.utils.ErpInfo; import com.jsh.erp.utils.StringUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.HashMap; import java.util.List; import java.util.Map; import static com.jsh.erp.utils.ResponseJsonUtil.returnJson; import static com.jsh.erp.utils.ResponseJsonUtil.returnStr; /** * @author jishenghua jshERP 2018年12月25日14:38:08 */ @RestController @RequestMapping(value = "/inOutItem") @Api(tags = {"收支项目"}) public class InOutItemController extends BaseController { private Logger logger = LoggerFactory.getLogger(InOutItemController.class); @Resource private InOutItemService inOutItemService; @GetMapping(value = "/info") @ApiOperation(value = "根据id获取信息") public String getList(@RequestParam("id") Long id, HttpServletRequest request) throws Exception { InOutItem inOutItem = inOutItemService.getInOutItem(id); Map objectMap = new HashMap<>(); if(inOutItem != null) { objectMap.put("info", inOutItem); return returnJson(objectMap, ErpInfo.OK.name, ErpInfo.OK.code); } else { return returnJson(objectMap, ErpInfo.ERROR.name, ErpInfo.ERROR.code); } } @GetMapping(value = "/list") @ApiOperation(value = "获取信息列表") public TableDataInfo getList(@RequestParam(value = Constants.SEARCH, required = false) String search, HttpServletRequest request)throws Exception { String name = StringUtil.getInfo(search, "name"); String type = StringUtil.getInfo(search, "type"); String remark = StringUtil.getInfo(search, "remark"); List list = inOutItemService.select(name, type, remark); return getDataTable(list); } @PostMapping(value = "/add") @ApiOperation(value = "新增") public String addResource(@RequestBody JSONObject obj, HttpServletRequest request)throws Exception { Map objectMap = new HashMap<>(); int insert = inOutItemService.insertInOutItem(obj, request); return returnStr(objectMap, insert); } @PutMapping(value = "/update") @ApiOperation(value = "修改") public String updateResource(@RequestBody JSONObject obj, HttpServletRequest request)throws Exception { Map objectMap = new HashMap<>(); int update = inOutItemService.updateInOutItem(obj, request); return returnStr(objectMap, update); } @DeleteMapping(value = "/delete") @ApiOperation(value = "删除") public String deleteResource(@RequestParam("id") Long id, HttpServletRequest request)throws Exception { Map objectMap = new HashMap<>(); int delete = inOutItemService.deleteInOutItem(id, request); return returnStr(objectMap, delete); } @DeleteMapping(value = "/deleteBatch") @ApiOperation(value = "批量删除") public String batchDeleteResource(@RequestParam("ids") String ids, HttpServletRequest request)throws Exception { Map objectMap = new HashMap<>(); int delete = inOutItemService.batchDeleteInOutItem(ids, request); return returnStr(objectMap, delete); } @GetMapping(value = "/checkIsNameExist") @ApiOperation(value = "检查名称是否存在") public String checkIsNameExist(@RequestParam Long id, @RequestParam(value ="name", required = false) String name, HttpServletRequest request)throws Exception { Map objectMap = new HashMap<>(); int exist = inOutItemService.checkIsNameExist(id, name); if(exist > 0) { objectMap.put("status", true); } else { objectMap.put("status", false); } return returnJson(objectMap, ErpInfo.OK.name, ErpInfo.OK.code); } /** * 查找收支项目信息-下拉框 * @param request * @return */ @GetMapping(value = "/findBySelect") @ApiOperation(value = "查找收支项目信息") public String findBySelect(@RequestParam("type") String type, HttpServletRequest request) throws Exception{ String res = null; try { List dataList = inOutItemService.findBySelect(type); //存放数据json数组 JSONArray dataArray = new JSONArray(); if (null != dataList) { for (InOutItem inOutItem : dataList) { JSONObject item = new JSONObject(); item.put("id", inOutItem.getId()); //收支项目名称 item.put("name", inOutItem.getName()); dataArray.add(item); } } res = dataArray.toJSONString(); } catch(Exception e){ logger.error(e.getMessage(), e); res = "获取数据失败"; } return res; } /** * 批量设置状态-启用或者禁用 * @param jsonObject * @param request * @return */ @PostMapping(value = "/batchSetStatus") @ApiOperation(value = "批量设置状态") public String batchSetStatus(@RequestBody JSONObject jsonObject, HttpServletRequest request)throws Exception { Boolean status = jsonObject.getBoolean("status"); String ids = jsonObject.getString("ids"); Map objectMap = new HashMap<>(); int res = inOutItemService.batchSetStatus(status, ids); if(res > 0) { return returnJson(objectMap, ErpInfo.OK.name, ErpInfo.OK.code); } else { return returnJson(objectMap, ErpInfo.ERROR.name, ErpInfo.ERROR.code); } } }