178 lines
7.0 KiB
Java
178 lines
7.0 KiB
Java
package com.jasamedika.medifirst2000.controller;
|
|
|
|
import java.util.Collection;
|
|
import java.util.List;
|
|
import java.util.Map;
|
|
|
|
import javax.servlet.http.HttpServletRequest;
|
|
import javax.validation.Valid;
|
|
|
|
import org.slf4j.Logger;
|
|
import org.slf4j.LoggerFactory;
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
import org.springframework.http.HttpStatus;
|
|
import org.springframework.http.MediaType;
|
|
import org.springframework.http.ResponseEntity;
|
|
import org.springframework.orm.jpa.JpaSystemException;
|
|
import org.springframework.web.bind.annotation.RequestBody;
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
import com.jasamedika.medifirst2000.constants.Constants;
|
|
import com.jasamedika.medifirst2000.constants.MessageResource;
|
|
import com.jasamedika.medifirst2000.controller.base.IBaseRestController;
|
|
import com.jasamedika.medifirst2000.controller.base.LocaleController;
|
|
import com.jasamedika.medifirst2000.core.web.WebConstants;
|
|
import com.jasamedika.medifirst2000.exception.ServiceVOException;
|
|
import com.jasamedika.medifirst2000.service.DepartemenService;
|
|
import com.jasamedika.medifirst2000.util.rest.RestUtil;
|
|
import com.jasamedika.medifirst2000.vo.DepartemenVO;
|
|
|
|
|
|
|
|
@RestController
|
|
@RequestMapping("/departemen")
|
|
public class DepartemenController extends LocaleController<DepartemenVO> implements
|
|
IBaseRestController<DepartemenVO>{
|
|
|
|
@Autowired
|
|
private DepartemenService departemenService;
|
|
|
|
private static final Logger LOGGER = LoggerFactory
|
|
.getLogger(DepartemenController.class);
|
|
|
|
@Override
|
|
public ResponseEntity<Collection<DepartemenVO>> getAllVOWithQueryString(HttpServletRequest request, Integer page,
|
|
Integer limit, String sort, String dir) {
|
|
return null;
|
|
}
|
|
|
|
@Override
|
|
public ResponseEntity<DepartemenVO> getVO(Integer id) {
|
|
return null;
|
|
}
|
|
|
|
@RequestMapping(value = "/save-departemen/", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
|
public ResponseEntity<String> addVO(@Valid @RequestBody DepartemenVO vo,HttpServletRequest request) {
|
|
try {
|
|
DepartemenVO result = (DepartemenVO) departemenService.add(vo);
|
|
|
|
if (null != result)
|
|
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,getMessage(MessageResource.LABEL_SUCCESS,request ));
|
|
return RestUtil.getJsonResponse("", HttpStatus.CREATED,mapHeaderMessage);
|
|
|
|
} catch (ServiceVOException e) {
|
|
LOGGER.error("Got exception {} when add Departemen", e.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE,
|
|
e.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR,
|
|
mapHeaderMessage);
|
|
} catch (JpaSystemException jse) {
|
|
LOGGER.error("Got exception {} when add Departemen", jse.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE,
|
|
jse.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT,
|
|
mapHeaderMessage);
|
|
}
|
|
|
|
|
|
}
|
|
|
|
@RequestMapping(value = "/update-departemen/", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
|
public ResponseEntity<String> editVO(@Valid @RequestBody DepartemenVO vo) {
|
|
try {
|
|
DepartemenVO result = (DepartemenVO) departemenService.update(vo);
|
|
|
|
if (null != result)
|
|
return RestUtil.getJsonResponse("", HttpStatus.OK);
|
|
} catch (ServiceVOException e) {
|
|
LOGGER.error("Got exception {} when update Departemen", e.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE,
|
|
e.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR,
|
|
mapHeaderMessage);
|
|
} catch (JpaSystemException jse) {
|
|
LOGGER.error("Got exception {} when update Departemen",
|
|
jse.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE,
|
|
jse.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT,
|
|
mapHeaderMessage);
|
|
}
|
|
|
|
return RestUtil.getJsonHttptatus(HttpStatus.NOT_ACCEPTABLE);
|
|
}
|
|
|
|
@RequestMapping(value = "/delete-departemen/", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
|
public ResponseEntity<String> deleteVO(Integer id) {
|
|
try {
|
|
if (departemenService.delete(id) == true)
|
|
|
|
return RestUtil.getJsonResponse("", HttpStatus.OK);
|
|
} catch (ServiceVOException e) {
|
|
LOGGER.error("Got exception {} when delete Departemen", e.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE,
|
|
e.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR,
|
|
mapHeaderMessage);
|
|
} catch (JpaSystemException jse) {
|
|
LOGGER.error("Got exception {} when delete Departemen", jse.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE,
|
|
jse.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT,
|
|
mapHeaderMessage);
|
|
}
|
|
|
|
return RestUtil.getJsonHttptatus(HttpStatus.NOT_ACCEPTABLE);
|
|
}
|
|
|
|
@Override
|
|
public ResponseEntity<List<DepartemenVO>> getAllVO() {
|
|
return null;
|
|
}
|
|
|
|
|
|
|
|
@SuppressWarnings("unchecked")
|
|
@RequestMapping(value = "/search-departemen", method = RequestMethod.GET, produces = MediaType.APPLICATION_JSON_VALUE, consumes = MediaType.APPLICATION_JSON_VALUE)
|
|
public ResponseEntity<Collection<DepartemenVO>> getAllVOWithQueryString(
|
|
@RequestParam(value = "page", required = false ,defaultValue = "1") Integer page,
|
|
@RequestParam(value = "limit", required = false ,defaultValue = "10") Integer limit,
|
|
@RequestParam(value = "sort", required = false, defaultValue = "id") String sort,
|
|
@RequestParam(value = "dir", required = false, defaultValue = "asc") String dir){
|
|
Map<String, Object> resultPageMap = departemenService.findAllWithPageAndLimitAndSortByAndDirectionParameter(page,
|
|
limit, sort, dir);
|
|
|
|
return constructListPageResult(resultPageMap);
|
|
|
|
}
|
|
|
|
|
|
|
|
@Override
|
|
public ResponseEntity<String> addVO(DepartemenVO vo) {
|
|
return null;
|
|
}
|
|
@RequestMapping(value = "/get-all-departemen-for-tagihan", method = RequestMethod.GET)
|
|
public ResponseEntity< Map<String,Object>> findAllDepartemenById5And6(HttpServletRequest request) {
|
|
try {
|
|
|
|
Map<String,Object> listDepartemen = departemenService.findAllDepartemeById5And6();
|
|
mapHeaderMessage.put(WebConstants.HttpHeaderInfo.LABEL_SUCCESS,getMessage(MessageResource.LABEL_SUCCESS,request ));
|
|
return RestUtil.getJsonResponse(listDepartemen, HttpStatus.OK,mapHeaderMessage);
|
|
} catch (ServiceVOException e) {
|
|
LOGGER.error("Got exception {} when get all dokter", e.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, e.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.INTERNAL_SERVER_ERROR, mapHeaderMessage);
|
|
} catch (JpaSystemException jse) {
|
|
LOGGER.error("Got exception {} when get all dokter", jse.getMessage());
|
|
addHeaderMessage(Constants.MessageInfo.ERROR_MESSAGE, jse.getMessage());
|
|
return RestUtil.getJsonHttptatus(HttpStatus.CONFLICT, mapHeaderMessage);
|
|
}
|
|
}
|
|
|
|
|
|
}
|