package cn.com.goldenwater.dcproj.controller.prd; import cn.com.goldenwater.dcproj.dao.BisInspOprdCstrProjRgstrDao; import cn.com.goldenwater.dcproj.dto.BisInspOprdCstrProjRgstrDto; import cn.com.goldenwater.dcproj.model.AttPrdCstrProjBase; import cn.com.goldenwater.dcproj.model.BisInspAllObj; import cn.com.goldenwater.dcproj.model.BisInspOprdCstrProjRgstr; import cn.com.goldenwater.dcproj.param.AttPrdCstrProjBaseParam; import cn.com.goldenwater.dcproj.param.BisInspOprdCstrProjRgstrParam; import cn.com.goldenwater.dcproj.service.AttPrdCstrProjBaseService; import cn.com.goldenwater.core.web.BaseController; import cn.com.goldenwater.core.web.BaseResponse; import cn.com.goldenwater.dcproj.service.BisInspAllObjService; import cn.com.goldenwater.dcproj.service.BisInspOprdCstrProjRgstrService; import cn.com.goldenwater.dcproj.service.OlBisInspOrgService; import cn.com.goldenwater.dcproj.utils.GeoUtil; import cn.com.goldenwater.id.util.UuidUtil; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.apache.commons.lang3.StringUtils; import com.github.pagehelper.PageInfo; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.PathVariable; 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.RestController; import javax.servlet.http.HttpServletRequest; import java.util.Date; import java.util.List; import java.util.Map; /** * @author lune * @date 2019-12-12 */ @Api(value = "ATT 生产建设项目基本信息表管理",tags="ATT 生产建设项目基本信息表管理") @RestController @RequestMapping("/att/prd/cstr/proj/base") public class AttPrdCstrProjBaseController extends BaseController { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private AttPrdCstrProjBaseService attPrdCstrProjBaseService; @Autowired private BisInspOprdCstrProjRgstrService bisInspOprdCstrProjRgstrService; @Autowired private BisInspAllObjService allObjService; @Autowired private OlBisInspOrgService olBisInspOrgService; @Autowired private BisInspOprdCstrProjRgstrDao bisInspOprdCstrProjRgstrDao; @ApiOperation(value = "添加/修改生产建设项目基本信息表") @RequestMapping(value = "", method = RequestMethod.POST) public BaseResponse insert(@ApiParam(name = "attPrdCstrProjBase", value = "AttPrdCstrProjBase", required = true) @RequestBody AttPrdCstrProjBase attPrdCstrProjBase, HttpServletRequest request) { String source=request.getHeader("source"); if(StringUtils.isBlank(source)){ if(attPrdCstrProjBase.getCenterX()!=null && attPrdCstrProjBase.getCenterX() !=null){ Map params=GeoUtil.wgs84togcj02(attPrdCstrProjBase.getCenterX(),attPrdCstrProjBase.getCenterY()); attPrdCstrProjBase.setGdX(params.get("lon")); attPrdCstrProjBase.setGdY(params.get("lat")); } }else{ if(attPrdCstrProjBase.getGdX()!=null &&attPrdCstrProjBase.getGdY() !=null){ Map params=GeoUtil.gcj02towgs84(attPrdCstrProjBase.getGdX(),attPrdCstrProjBase.getGdY()); attPrdCstrProjBase.setCenterX(params.get("lon")); attPrdCstrProjBase.setCenterY(params.get("lat")); } } if(StringUtils.isBlank(attPrdCstrProjBase.getId())) { String uuid = UuidUtil.uuid(); // 生成uuid attPrdCstrProjBase.setId(uuid); attPrdCstrProjBase.setUptm(new Date()); attPrdCstrProjBase.setIntm(new Date()); attPrdCstrProjBaseService.insert(attPrdCstrProjBase); }else{ attPrdCstrProjBase.setUptm(new Date()); attPrdCstrProjBaseService.update(attPrdCstrProjBase); BisInspOprdCstrProjRgstrParam oprdCstrProjRgstrParam=new BisInspOprdCstrProjRgstrParam(); oprdCstrProjRgstrParam.setObjId(attPrdCstrProjBase.getObjId()); oprdCstrProjRgstrParam.setPersId(attPrdCstrProjBase.getPersId()); BisInspOprdCstrProjRgstr inspOprdCstrProjRgstr=bisInspOprdCstrProjRgstrService.getBy(oprdCstrProjRgstrParam); if(inspOprdCstrProjRgstr!=null){ inspOprdCstrProjRgstr.setName(attPrdCstrProjBase.getName()); inspOprdCstrProjRgstr.setAdCode(attPrdCstrProjBase.getAdCode()); inspOprdCstrProjRgstr.setLocation(attPrdCstrProjBase.getLocation()); inspOprdCstrProjRgstr.setType(attPrdCstrProjBase.getType()); inspOprdCstrProjRgstr.setAdName(attPrdCstrProjBase.getAdName()); inspOprdCstrProjRgstr.setGdY(attPrdCstrProjBase.getGdY()); inspOprdCstrProjRgstr.setGdX(attPrdCstrProjBase.getGdX()); inspOprdCstrProjRgstr.setCenterY(attPrdCstrProjBase.getCenterY()); inspOprdCstrProjRgstr.setCenterX(attPrdCstrProjBase.getCenterX()); bisInspOprdCstrProjRgstrService.update(inspOprdCstrProjRgstr); BisInspAllObj bisInspAllObj=allObjService.get(attPrdCstrProjBase.getObjId()); if(bisInspAllObj!=null){ bisInspAllObj.setNm(attPrdCstrProjBase.getName()); allObjService.update(bisInspAllObj); } } } return buildSuccessResponse(attPrdCstrProjBase); } @ApiOperation(value = "根据ID删除生产建设项目基本信息表") @RequestMapping(value = "/del/{id}", method = RequestMethod.GET) public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { int ret = attPrdCstrProjBaseService.delete(id); return buildSuccessResponse(); } @ApiOperation(value = "根据ID获取生产建设项目基本信息表(单表)") @RequestMapping(value = "/{id}", method = RequestMethod.GET) public BaseResponse get(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { AttPrdCstrProjBase attPrdCstrProjBase = attPrdCstrProjBaseService.get(id); return buildSuccessResponse(attPrdCstrProjBase); } @ApiOperation(value = "获取生产建设项目基本信息表(列表所有)") @RequestMapping(value = "/list", method = RequestMethod.POST) public BaseResponse> list(@ApiParam(name = "attPrdCstrProjBaseParam", value = "attPrdCstrProjBaseParam", required = true) @RequestBody AttPrdCstrProjBaseParam attPrdCstrProjBaseParam) { attPrdCstrProjBaseParam.setProvince(olBisInspOrgService.getProvinceFlag(getCurrentOrgId())); List attPrdCstrProjBaseList = attPrdCstrProjBaseService.findList(attPrdCstrProjBaseParam); return buildSuccessResponse(attPrdCstrProjBaseList); } @ApiOperation(value = "获取生产建设项目基本信息表(列表所有)") @RequestMapping(value = "/listreg", method = RequestMethod.POST) public BaseResponse> listreg(@ApiParam(name = "bisInspOprdCstrProjRgstrParam", value = "bisInspOprdCstrProjRgstrParam", required = true) @RequestBody BisInspOprdCstrProjRgstrParam bisInspOprdCstrProjRgstrParam) { bisInspOprdCstrProjRgstrParam.setProvince(olBisInspOrgService.getProvinceFlag(getCurrentOrgId())); bisInspOprdCstrProjRgstrParam.setPersId(getCurrentPersId()); List list = bisInspOprdCstrProjRgstrDao.findPrdPcPage(bisInspOprdCstrProjRgstrParam); return buildSuccessResponse(list); } @ApiOperation(value = "获取生产建设项目基本信息表(列表--分页)") @RequestMapping(value = "/page", method = RequestMethod.POST) public BaseResponse> page(@ApiParam(name = "attPrdCstrProjBaseParam", value = "attPrdCstrProjBaseParam", required = true) @RequestBody AttPrdCstrProjBaseParam attPrdCstrProjBaseParam) { attPrdCstrProjBaseParam.setProvince(olBisInspOrgService.getProvinceFlag(getCurrentOrgId())); PageInfo attPrdCstrProjBaseList = attPrdCstrProjBaseService.findPageInfo(attPrdCstrProjBaseParam); return buildSuccessResponse(attPrdCstrProjBaseList); } }