master
RIceWqy 2 years ago
parent 2c3dfdb00d
commit 3ae97de844

@ -14,24 +14,25 @@ import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.yami.shop.bean.model.PickAddr; import com.yami.shop.bean.model.PickAddr;
import com.yami.shop.bean.model.ShopDetail;
import com.yami.shop.common.exception.YamiShopBindException; import com.yami.shop.common.exception.YamiShopBindException;
import com.yami.shop.common.response.ResponseEnum; import com.yami.shop.common.response.ResponseEnum;
import com.yami.shop.common.response.ServerResponseEntity; import com.yami.shop.common.response.ServerResponseEntity;
import com.yami.shop.common.util.PageParam; import com.yami.shop.common.util.PageParam;
import com.yami.shop.security.admin.model.YamiSysUser;
import com.yami.shop.security.admin.util.SecurityUtils; import com.yami.shop.security.admin.util.SecurityUtils;
import com.yami.shop.service.PickAddrService; import com.yami.shop.service.PickAddrService;
import com.yami.shop.service.ShopDetailService;
import jakarta.validation.Valid;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.security.access.prepost.PreAuthorize;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import jakarta.validation.Valid;
import java.util.Arrays; import java.util.Arrays;
import java.util.Objects; import java.util.Objects;
/** /**
*
* @author lgh on 2018/10/17. * @author lgh on 2018/10/17.
*/ */
@RestController @RestController
@ -40,62 +41,68 @@ public class PickAddrController {
@Autowired @Autowired
private PickAddrService pickAddrService; private PickAddrService pickAddrService;
@Autowired
private ShopDetailService shopDetailService;
/** /**
* *
*/ */
@GetMapping("/page") @GetMapping("/page")
@PreAuthorize("@pms.hasPermission('shop:pickAddr:page')") @PreAuthorize("@pms.hasPermission('shop:pickAddr:page')")
public ServerResponseEntity<IPage<PickAddr>> page(PickAddr pickAddr,PageParam<PickAddr> page){ public ServerResponseEntity<IPage<PickAddr>> page(PickAddr pickAddr, PageParam<PickAddr> page) {
IPage<PickAddr> pickAddrs = pickAddrService.page(page,new LambdaQueryWrapper<PickAddr>() YamiSysUser sysUser = SecurityUtils.getSysUser();
.like(StrUtil.isNotBlank(pickAddr.getAddrName()),PickAddr::getAddrName,pickAddr.getAddrName()) Long userId = sysUser.getUserId();
.orderByDesc(PickAddr::getAddrId)); ShopDetail shopDetail = shopDetailService.getOne(new LambdaQueryWrapper<ShopDetail>().eq(ShopDetail::getUserId, userId));
return ServerResponseEntity.success(pickAddrs); IPage<PickAddr> pickAddrs = pickAddrService.page(page, new LambdaQueryWrapper<PickAddr>().
} eq(PickAddr::getShopId, shopDetail.getShopId())
.like(StrUtil.isNotBlank(pickAddr.getAddrName()), PickAddr::getAddrName, pickAddr.getAddrName())
.orderByDesc(PickAddr::getAddrId));
return ServerResponseEntity.success(pickAddrs);
}
/** /**
* *
*/ */
@GetMapping("/info/{id}") @GetMapping("/info/{id}")
@PreAuthorize("@pms.hasPermission('shop:pickAddr:info')") @PreAuthorize("@pms.hasPermission('shop:pickAddr:info')")
public ServerResponseEntity<PickAddr> info(@PathVariable("id") Long id){ public ServerResponseEntity<PickAddr> info(@PathVariable("id") Long id) {
PickAddr pickAddr = pickAddrService.getById(id); PickAddr pickAddr = pickAddrService.getById(id);
return ServerResponseEntity.success(pickAddr); return ServerResponseEntity.success(pickAddr);
} }
/** /**
* *
*/ */
@PostMapping @PostMapping
@PreAuthorize("@pms.hasPermission('shop:pickAddr:save')") @PreAuthorize("@pms.hasPermission('shop:pickAddr:save')")
public ServerResponseEntity<Void> save(@Valid @RequestBody PickAddr pickAddr){ public ServerResponseEntity<Void> save(@Valid @RequestBody PickAddr pickAddr) {
pickAddr.setShopId(SecurityUtils.getSysUser().getShopId()); pickAddr.setShopId(SecurityUtils.getSysUser().getShopId());
pickAddrService.save(pickAddr); pickAddrService.save(pickAddr);
return ServerResponseEntity.success(); return ServerResponseEntity.success();
} }
/** /**
* *
*/ */
@PutMapping @PutMapping
@PreAuthorize("@pms.hasPermission('shop:pickAddr:update')") @PreAuthorize("@pms.hasPermission('shop:pickAddr:update')")
public ServerResponseEntity<Void> update(@Valid @RequestBody PickAddr pickAddr){ public ServerResponseEntity<Void> update(@Valid @RequestBody PickAddr pickAddr) {
PickAddr dbPickAddr = pickAddrService.getById(pickAddr.getAddrId()); PickAddr dbPickAddr = pickAddrService.getById(pickAddr.getAddrId());
if (!Objects.equals(dbPickAddr.getShopId(),SecurityUtils.getSysUser().getShopId())) { if (!Objects.equals(dbPickAddr.getShopId(), SecurityUtils.getSysUser().getShopId())) {
throw new YamiShopBindException(ResponseEnum.UNAUTHORIZED); throw new YamiShopBindException(ResponseEnum.UNAUTHORIZED);
} }
pickAddrService.updateById(pickAddr); pickAddrService.updateById(pickAddr);
return ServerResponseEntity.success(); return ServerResponseEntity.success();
} }
/** /**
* *
*/ */
@DeleteMapping @DeleteMapping
@PreAuthorize("@pms.hasPermission('shop:pickAddr:delete')") @PreAuthorize("@pms.hasPermission('shop:pickAddr:delete')")
public ServerResponseEntity<Void> delete(@RequestBody Long[] ids){ public ServerResponseEntity<Void> delete(@RequestBody Long[] ids) {
pickAddrService.removeByIds(Arrays.asList(ids)); pickAddrService.removeByIds(Arrays.asList(ids));
return ServerResponseEntity.success(); return ServerResponseEntity.success();
} }
} }

@ -0,0 +1,52 @@
package com.yami.shop.bean.model;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.util.Date;
@Data
@TableName("tz_user_portfolio")
public class UserPortfolio {
// 基本信息
private Integer portfolioId; //档案id
private Integer userId; // 会员ID
private String name; // 姓名
private Date birthDate; // 出生日期
private String gender; // 性别
private String ethnicity; // 民族
private String nativePlace; // 籍贯
private String idCardNumber; // 身份证号码
// 联系信息
private String address; // 住址
private String phoneNumber; // 联系电话
private String emailAddress; // 电子邮件地址
private String emergencyContactName; // 紧急联系人姓名
private String emergencyContactPhone; // 紧急联系人电话
// 健康信息
private String healthStatus; // 健康状况
private String medicalInsuranceInfo; // 医疗保险信息
private String primaryDoctorContact; // 主要医生联系信息
private String longTermMedicationInfo; // 长期用药信息
// 预先规划的殡葬信息
private String funeralMethod; // 殡葬方式(火葬,土葬,海葬等)
private String ceremonyType; // 预期的礼仪类型(宗教,非宗教,军人等)
private String cemeteryInfo; // 墓地信息(如果有的话)
private boolean prePurchasedGrave; // 是否有预购墓地
private String preReservedFuneralLocation; // 是否有预定的葬礼地点
private boolean hasWillOrLivingDirective; // 是否有遗嘱或活葬指示
// 财务信息
private String paymentMethod; // 支付方式
private String bankAccountInfo; // 银行账户信息
private double prePaidFuneralCost; // 预先支付的葬礼费用(如果有的话)
// 法律文件
private String willCopy; // 遗嘱复印件
private String preDeathAgentDesignation; // 生前事务代理人指定书
private String medicalAgentDesignation; // 医疗事务代理人指定书
private String lifeSupportDecision; // 生命维持治疗决定书
}

@ -1,7 +1,7 @@
# \u4E03\u725B\u4E91\u914D\u7F6E # \u4E03\u725B\u4E91\u914D\u7F6E
shop.qiniu.resourcesUrl=https://img.mall4j.com/ shop.qiniu.resourcesUrl=https://img.jintongapp.com/
shop.qiniu.accessKey=**** shop.qiniu.accessKey=gfzcyBDr9cd5FTForpe7HJGzELLJxztTtHhUmh6o
shop.qiniu.secretKey=**** shop.qiniu.secretKey=zs4K9rT4Hxa3jo5OL_V2Aq5oM8yXw_O1F2jlvlJJ
shop.qiniu.bucket=**** shop.qiniu.bucket=****
# \u5177\u4F53\u67E5\u770BQiniuZone.java # \u5177\u4F53\u67E5\u770BQiniuZone.java
shop.qiniu.zone=HUA_NAN shop.qiniu.zone=HUA_NAN

Loading…
Cancel
Save