Browse Source

opt: 拜访API

master
Yen 10 months ago
parent
commit
a6bbe9bee6
  1. 95
      src/main/java/com/qs/serve/modules/visit/api/VisitMainApi.java
  2. 13
      src/main/java/com/qs/serve/modules/visit/entity/VisitMain.java

95
src/main/java/com/qs/serve/modules/visit/api/VisitMainApi.java

@ -0,0 +1,95 @@
package com.qs.serve.modules.visit.api;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.qs.serve.common.model.annotation.SysLog;
import com.qs.serve.common.model.dto.PageVo;
import com.qs.serve.common.model.dto.R;
import com.qs.serve.common.model.enums.BizType;
import com.qs.serve.common.model.enums.SystemModule;
import com.qs.serve.common.util.AuthContextUtils;
import com.qs.serve.common.util.PageUtil;
import com.qs.serve.common.util.StringUtils;
import com.qs.serve.modules.visit.entity.VisitMain;
import com.qs.serve.modules.visit.service.VisitMainService;
import com.qs.serve.modules.wx.common.consts.WxUserTypeConst;
import com.qs.serve.modules.wx.entity.WxUser;
import com.qs.serve.modules.wx.service.WxUserService;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.util.List;
/**
* 系统 拜访
* @author YenHex
* @since 2024-09-11
*/
@Slf4j
@AllArgsConstructor
@RestController
@RequestMapping("/api/visit")
public class VisitMainApi {
private WxUserService wxUserService;
private VisitMainService visitMainService;
/**
* 用户查看访问申请记录
* @param param
* @return
*/
@GetMapping("/page")
public R<PageVo<VisitMain>> getPage(VisitMain param){
WxUser wxUser = wxUserService.getCurrentWxUser();
if(wxUser.getUserType().equals(WxUserTypeConst.UMS_MEMBER)){
LambdaQueryWrapper<VisitMain> lqw = new LambdaQueryWrapper<>(param);
lqw.eq(VisitMain::getVisitorId,wxUser.getUserId());
lqw.orderByDesc(VisitMain::getCreateTime);
PageUtil.startPage();
List<VisitMain> list = visitMainService.list(lqw);
return R.byPageHelperList(list);
}
return R.byEmptyList();
}
/**
* ID查询
* @param id
* @return
*/
@GetMapping("/getById/{id}")
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.QUERY)
public R<VisitMain> getById(@PathVariable("id") String id){
VisitMain visitMain = visitMainService.getById(id);
return R.ok(visitMain);
}
/**
* 更新
* @param param
* @return
*/
@PostMapping("/updateById")
@SysLog(module = SystemModule.VISIT, title = "拜访", biz = BizType.UPDATE)
public R<?> updateById(@RequestBody @Valid VisitMain param){
WxUser wxUser = wxUserService.getCurrentWxUser();
if(wxUser.getUserType().equals(WxUserTypeConst.UMS_MEMBER)){
//memberId
param.setVisitorId(wxUser.getUserId());
param.setCheckState(null);
param.setDeptId(null);
param.setDeptName(null);
param.setUserId(null);
param.setUserCode(null);
param.setUserName(null);
param.setSubmitTime(null);
boolean result = visitMainService.updateById(param);
return R.isTrue(result);
}
return R.error("用户角色暂不支持");
}
}

13
src/main/java/com/qs/serve/modules/visit/entity/VisitMain.java

@ -28,8 +28,8 @@ public class VisitMain implements Serializable {
private static final long serialVersionUID = 1L;
/** id */
@TableId(type = IdType.AUTO)
private Long id;
@TableId(type = IdType.ASSIGN_UUID)
private String id;
/** 审批状态 */
private Integer checkState;
@ -65,10 +65,19 @@ public class VisitMain implements Serializable {
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime visitTime;
/** 提交时间 */
@DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
private LocalDateTime submitTime;
/** 来访公司 */
@Length(max = 255,message = "来访公司长度不能超过255字")
private String visitorCompany;
/** 来访人ID */
@Length(max = 255,message = "来访人姓名长度不能超过255字")
private String visitorId;
/** 来访人姓名 */
@Length(max = 255,message = "来访人姓名长度不能超过255字")
private String visitorName;

Loading…
Cancel
Save