package cn.com.goldenwater.dcproj.controller.vill2020; import cn.com.goldenwater.core.web.BaseController; import cn.com.goldenwater.core.web.BaseResponse; import cn.com.goldenwater.dcproj.dao.BisInspPblmDao; import cn.com.goldenwater.dcproj.model.AttAdXBase; import cn.com.goldenwater.dcproj.model.BisNewDcuserRelVill; import cn.com.goldenwater.dcproj.model.BisNewVillRgstr; import cn.com.goldenwater.dcproj.model.BisNewWateruserInfo; import cn.com.goldenwater.dcproj.param.BisInspPblmParam; import cn.com.goldenwater.dcproj.param.BisNewDcuserRelVillParam; import cn.com.goldenwater.dcproj.param.BisNewWateruserInfoParam; import cn.com.goldenwater.dcproj.service.AttAdXBaseService; import cn.com.goldenwater.dcproj.service.BisNewDcuserRelVillService; import cn.com.goldenwater.dcproj.service.BisNewVillRgstrService; import cn.com.goldenwater.dcproj.service.BisNewWateruserInfoService; import cn.com.goldenwater.target.CheckException; import cn.com.goldenwater.dcproj.utils.GeoUtil; import cn.com.goldenwater.id.util.UuidUtil; import com.github.pagehelper.PageInfo; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiParam; import org.apache.commons.lang3.StringUtils; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; import java.util.List; import java.util.Map; /** * @author lune * @date 2020-3-27 */ @Api(value = "BIS 农村居民饮水安全问题状况及水费缴纳情况表管理",tags="BIS 农村居民饮水安全问题状况及水费缴纳情况表管理") @RestController @RequestMapping("/bis/new/wateruser/info") public class BisNewWateruserInfoController extends BaseController { private Logger logger = LoggerFactory.getLogger(getClass()); @Autowired private BisNewWateruserInfoService bisNewWateruserInfoService; @Autowired private BisNewDcuserRelVillService bisNewDcuserRelVillService; @Autowired private BisNewVillRgstrService bisNewVillRgstrService; @Autowired private AttAdXBaseService attAdXBaseService; @Autowired private BisInspPblmDao bisInspPblmDao; @ApiOperation(value = "添加/修改农村居民饮水安全问题状况及水费缴纳情况表") @RequestMapping(value = "", method = RequestMethod.POST) public BaseResponse insert(@ApiParam(name = "bisNewWateruserInfo", value = "BisNewWateruserInfo", required = true) @RequestBody BisNewWateruserInfo bisNewWateruserInfo) { bisNewWateruserInfo.setPersId(getCurrentPersId()); if(StringUtils.isBlank(bisNewWateruserInfo.getVillageNm())){ BisNewDcuserRelVillParam relVillParam=new BisNewDcuserRelVillParam(); relVillParam.setRegstrId(bisNewWateruserInfo.getRegstrId()); relVillParam.setAdCode(bisNewWateruserInfo.getAdCode()); BisNewDcuserRelVill bisNewDcuserRelVill=bisNewDcuserRelVillService.getBy(relVillParam); if(bisNewDcuserRelVill==null){ throw new CheckException("行政村查询为空,请仔细检查!!regstrId="+bisNewWateruserInfo.getRegstrId()+",adCode="+bisNewWateruserInfo.getAdCode()); } bisNewWateruserInfo.setVillageNm(bisNewDcuserRelVill.getVillageNm()); } if("4".equals(bisNewWateruserInfo.getFeeType())){ bisNewWateruserInfo.setIsGudingFee("1"); }else{ bisNewWateruserInfo.setIsJiliangFee("1"); } if (bisNewWateruserInfo.getLgtd() != null && bisNewWateruserInfo.getLttd() !=null) { if (bisNewWateruserInfo.getLgtd().intValue() != 0 && bisNewWateruserInfo.getLttd().intValue() != 0) { Map map = GeoUtil.gcj02towgs84(bisNewWateruserInfo.getLgtd(), bisNewWateruserInfo.getLttd()); bisNewWateruserInfo.setLgtdpc(map.get("long")); bisNewWateruserInfo.setLttdpc(map.get("lat")); } } AttAdXBase attAdXBase=attAdXBaseService.get(bisNewWateruserInfo.getAdCode()); if(attAdXBase !=null){ bisNewWateruserInfo.setAdFullName(attAdXBase.getAdFullName()); } if(StringUtils.isBlank(bisNewWateruserInfo.getId())) { String uuid = UuidUtil.uuid(); // 生成uuid bisNewWateruserInfo.setId(uuid); bisNewWateruserInfoService.insert(bisNewWateruserInfo); BisNewVillRgstr bisNewVillRgstr = bisNewVillRgstrService.get(bisNewWateruserInfo.getRegstrId()); int waterNum = bisNewVillRgstr.getWaterNum() + 1; bisNewVillRgstr.setWaterNum(waterNum); bisNewVillRgstrService.updateWaterSum(bisNewVillRgstr); }else{ bisNewWateruserInfoService.update(bisNewWateruserInfo); } bisNewVillRgstrService.updateWaterOrPay(bisNewWateruserInfo.getRegstrId()); return buildSuccessResponse(bisNewWateruserInfo); } @ApiOperation(value = "根据ID删除农村居民饮水安全问题状况及水费缴纳情况表") @RequestMapping(value = "/del/{id}", method = RequestMethod.GET) public BaseResponse delete(@ApiParam(name = "id", value = "id", required = true) @PathVariable String id) { BisNewWateruserInfo bisNewCountryFee=bisNewWateruserInfoService.get(id); if(bisNewCountryFee!=null){ BisInspPblmParam bisInspPblmParam=new BisInspPblmParam(); bisInspPblmParam.setWaterUserId(id); bisInspPblmParam.setRegid(bisNewCountryFee.getRegstrId()); bisInspPblmDao.deleteBy(bisInspPblmParam); BisNewVillRgstr bisNewVillRgstr = bisNewVillRgstrService.get(bisNewCountryFee.getRegstrId()); int waterNum = bisNewVillRgstr.getWaterNum() - 1; bisNewVillRgstr.setWaterNum(waterNum); bisNewVillRgstrService.updateWaterSum(bisNewVillRgstr); } int ret = bisNewWateruserInfoService.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) { BisNewWateruserInfo bisNewWateruserInfo = bisNewWateruserInfoService.get(id); return buildSuccessResponse(bisNewWateruserInfo); } @ApiOperation(value = "获取农村居民饮水安全问题状况及水费缴纳情况表(列表所有)") @RequestMapping(value = "/list", method = RequestMethod.POST) public BaseResponse> list(@ApiParam(name = "bisNewWateruserInfoParam", value = "bisNewWateruserInfoParam", required = true) @RequestBody BisNewWateruserInfoParam bisNewWateruserInfoParam) { List bisNewWateruserInfoList = bisNewWateruserInfoService.findList(bisNewWateruserInfoParam); return buildSuccessResponse(bisNewWateruserInfoList); } @ApiOperation(value = "获取农村居民饮水安全问题状况及水费缴纳情况表(列表--分页)") @RequestMapping(value = "/page", method = RequestMethod.POST) public BaseResponse> page(@ApiParam(name = "bisNewWateruserInfoParam", value = "bisNewWateruserInfoParam", required = true) @RequestBody BisNewWateruserInfoParam bisNewWateruserInfoParam) { PageInfo bisNewWateruserInfoList = bisNewWateruserInfoService.findPageInfo(bisNewWateruserInfoParam); return buildSuccessResponse(bisNewWateruserInfoList); } }