package com.care.client.controller; import com.care.client.service.PassportService; import com.care.client.service.PinanbaoContactService; import com.care.client.vo.HouseContactVO; import com.care.client.vo.MemberInfoVO; import com.care.common.exception.BDException; import com.care.common.util.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; import javax.servlet.http.HttpServletRequest; import java.util.List; /** * @Author: lilt * @Date: 2021/5/26 * @Desc: */ @RestController @Api(value = "ContactApiController", tags = { "我的紧急联系人" }) @Slf4j @RequestMapping("/pinanbao/contact") public class ContactApiController { @Resource private PinanbaoContactService pinanbaoContactService; @Resource private PassportService passportService; /** * 紧急联系人列表 * @param request * @return */ @GetMapping("/my/list") @ApiOperation(tags = {"我的紧急联系人,我的设备"},value = "紧急联系人列表") public Result> myHouseContactList(HttpServletRequest request, @RequestHeader(value = "token") String token){ MemberInfoVO current = passportService.checkToken(token); try { List datas = pinanbaoContactService.queryContactByMemberId(current.getId()); return Result.success(datas); }catch (BDException e) { return Result.error(e.getMessage()); } catch (Exception e) { log.error("我的紧急联系人: 紧急联系人列表查询出现异常",e); return Result.error( "获取失败"); } } /** * 我的紧急联系人详情 * @return */ @GetMapping("/my/getMyContactInfo") @ApiOperation(tags = {"我的紧急联系人"},value = "紧急联系人详情 -- 二期新增") public Result getMyContactInfo(@RequestHeader(value = "token") String token, @RequestParam("contactId") Long contactId){ try { return Result.success(this.pinanbaoContactService.getContactInfo(contactId)); }catch (BDException e) { return Result.error(e.getMessage()); } catch (Exception e) { log.error("紧急联系人: 查询详情出现异常",e); return Result.error( "获取失败"); } } @PostMapping("/my/add") @ApiOperation(tags = {"我的紧急联系人,我的设备"},value = "紧急联系人新增 -- 二期新增") public Result addMyContact(@RequestHeader("token") String token, @RequestBody HouseContactVO vo){ try { MemberInfoVO current = passportService.checkToken(token); if(this.pinanbaoContactService.createMyContact(current.getId(),vo)){ return Result.success("新增成功!"); } else { return Result.error("新增失败!"); } }catch (BDException e) { log.error("新增紧急联系人-出现异常",e); return Result.error(e.getMessage()); } catch (Exception e) { log.error("紧急联系人: 新增紧急联系人出现异常",e); return Result.error("新增失败!"); } } @PostMapping("/my/update") @ApiOperation(tags = {"我的紧急联系人,我的设备"},value = "紧急联系人修改 -- 二期新增") public Result updateMyContact(@RequestHeader("token") String token, @RequestBody HouseContactVO vo){ try { if(this.pinanbaoContactService.updateMyContact(vo)){ return Result.success("修改成功!"); } else { return Result.error("修改失败!"); } }catch (BDException e) { log.error("修改紧急联系人-出现异常",e); return Result.error(e.getMessage()); } catch (Exception e) { log.error("紧急联系人: 修改紧急联系人出现异常",e); return Result.error("修改失败!"); } } @PostMapping("/my/addOrUpdate") @ApiOperation(tags = {"我的紧急联系人,我的设备"},value = "紧急联系人新增 -- 三期新增") public Result addOrUpdateMyContact(@RequestBody HouseContactVO vo){ try { if (this.pinanbaoContactService.createOrUpdateMyContact(vo)) { return Result.success("保存成功!"); } else { return Result.error("保存失败!"); } }catch (BDException e) { log.error("保存紧急联系人-出现异常",e); return Result.error(e.getMessage()); } catch (Exception e) { log.error("保存联系人: 保存紧急联系人出现异常",e); return Result.error("保存失败!"); } } @DeleteMapping("/my/delete/{contactId}") @ApiOperation(tags = {"我的紧急联系人"},value = "删除紧急联系人 -- 二期新增") public Result deleteMyContact(HttpServletRequest request,@RequestHeader("token") String token, @PathVariable("contactId") Long contactId) { try { this.pinanbaoContactService.deleteById(contactId); return Result.success("删除成功!"); } catch (Exception e) { log.error("紧急联系人: 删除紧急联系人出现异常", e); return Result.error("删除失败!"); } } }