package com.doumee.api.web;
|
|
import com.alibaba.fastjson.JSONObject;
|
import com.doumee.config.annotation.LoginRequired;
|
import com.doumee.core.annotation.trace.Trace;
|
import com.doumee.core.model.ApiResponse;
|
import com.doumee.core.model.PageData;
|
import com.doumee.core.model.PageWrap;
|
import com.doumee.dao.business.model.Visits;
|
import com.doumee.dao.web.reqeust.AccountLoginDTO;
|
import com.doumee.dao.web.reqeust.AuditApproveDTO;
|
import com.doumee.dao.web.reqeust.VisitMemberDTO;
|
import com.doumee.dao.web.reqeust.VisitRecordDTO;
|
import com.doumee.dao.web.response.*;
|
import com.doumee.service.business.ApproveService;
|
import com.doumee.service.business.MemberService;
|
import com.doumee.service.business.VisitsService;
|
import io.swagger.annotations.Api;
|
import io.swagger.annotations.ApiImplicitParam;
|
import io.swagger.annotations.ApiImplicitParams;
|
import io.swagger.annotations.ApiOperation;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.shiro.authz.annotation.RequiresPermissions;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.web.bind.annotation.*;
|
|
import java.util.List;
|
|
/**
|
* Created by IntelliJ IDEA.
|
*
|
* @Author : Rk
|
* @create 2023/12/28 14:31
|
*/
|
|
@Api(tags = "3、内部劳务人员")
|
@Trace(exclude = true)
|
@RestController
|
@RequestMapping("/web/internal")
|
@Slf4j
|
public class InternalController extends ApiController{
|
|
@Autowired
|
private MemberService memberService;
|
|
@Autowired
|
private VisitsService visitsService;
|
|
@Autowired
|
private ApproveService approveService;
|
|
@ApiOperation(value = "人员登录", notes = "H5")
|
@PostMapping("/accountLogin")
|
public ApiResponse<WxAuthorizeVO> accountLogin(@RequestBody AccountLoginDTO accountLoginDTO) {
|
WxAuthorizeVO wxAuthorizeVO = memberService.accountLogin(accountLoginDTO);
|
return ApiResponse.success("登录成功",wxAuthorizeVO);
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "内部人员首页", notes = "H5")
|
@GetMapping("/internalHome")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
})
|
public ApiResponse<InternalHomeVO> internalHome() {
|
return ApiResponse.success("查询成功",approveService.getHomeData(getMemberId()));
|
}
|
|
|
@LoginRequired
|
@ApiOperation("任务中心")
|
@PostMapping("/taskCenter")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
})
|
public ApiResponse<PageData<VisitRecordVO>> taskCenter (@RequestBody PageWrap<VisitRecordDTO> pageWrap) {
|
pageWrap.getModel().setMemberId(getMemberId());
|
return ApiResponse.success(visitsService.taskCenter(pageWrap));
|
}
|
|
@LoginRequired
|
@ApiOperation("访客记录详情")
|
@GetMapping("/visitDetail")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
@ApiImplicitParam(paramType = "query", dataType = "Integer", name = "id", value = "记录主键", required = true)
|
})
|
public ApiResponse<VisitDetailVO> visitDetail (@RequestParam Integer id) {
|
return ApiResponse.success(visitsService.getVisitDetail(id));
|
}
|
|
|
@LoginRequired
|
@ApiOperation(value = "人员分页",notes = "可拜访内部人员")
|
@PostMapping("/memberList")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
})
|
public ApiResponse<PageData<MemberVO>> memberList (@RequestBody PageWrap<VisitMemberDTO> pageWrap) {
|
return ApiResponse.success(memberService.getVisitedMemberList(pageWrap));
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "访客记录提交", notes = "内部人员提交")
|
@PostMapping("/createVisit")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
})
|
public ApiResponse createVisit(@RequestBody Visits visits) {
|
visits.setCreateMemberId(getMemberId());
|
return ApiResponse.success("查询成功", visitsService.createFk(visits));
|
}
|
|
@LoginRequired
|
@ApiOperation(value = "审批流记录审批", notes = "内部人员")
|
@PostMapping("/auditApprove")
|
@ApiImplicitParams({
|
@ApiImplicitParam(paramType = "header", dataType = "String", name = "token", value = "用户token值", required = true),
|
})
|
public ApiResponse auditApprove(@RequestBody AuditApproveDTO auditApproveDTO) {
|
visitsService.auditApprove(auditApproveDTO);
|
return ApiResponse.success("操作成功");
|
}
|
|
}
|