package com.doumee.cloud.web; import com.doumee.api.BaseController; import com.doumee.config.annotation.CloudRequiredPermission; import com.doumee.config.annotation.LoginNoRequired; import com.doumee.core.annotation.trace.Trace; import com.doumee.service.business.third.model.ApiResponse; import com.doumee.service.business.third.model.LoginUserInfo; import com.doumee.service.business.third.model.PageData; import com.doumee.service.business.third.model.PageWrap; import com.doumee.core.utils.Constants; import com.doumee.dao.business.model.Visits; 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.ApiOperation; import lombok.extern.slf4j.Slf4j; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.*; /** * Created by IntelliJ IDEA. * * @Author : Rk * @create 2023/12/28 14:31 */ @Api(tags = "【公众号】内部人员") @Trace(exclude = true) @RestController @RequestMapping(Constants.CLOUD_SERVICE_URL_INDEX+"/web/member") @Slf4j //@LoginNoRequired public class InternalWebController extends BaseController { @Autowired private MemberService memberService; @Autowired private VisitsService visitsService; @Autowired private ApproveService approveService; // @ApiOperation(value = "内部人员首页", notes = "H5") // @GetMapping("/internalHome") // public ApiResponse internalHome(@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { // return ApiResponse.success("查询成功",approveService.getHomeData(getLoginUser(token).getMemberId())); // } @ApiOperation("任务中心") @PostMapping("/taskCenter") public ApiResponse> taskCenter (@RequestBody PageWrap pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { pageWrap.getModel().setMemberId(getLoginUser(token).getMemberId()); return ApiResponse.success(visitsService.taskCenter(pageWrap)); } // @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 visitDetail (@RequestParam Integer id) { // return ApiResponse.success(visitsService.getVisitDetail(id)); // } @ApiOperation(value = "人员分页",notes = "可拜访内部人员") @PostMapping("/memberList") public ApiResponse> memberList (@RequestBody PageWrap pageWrap,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { return ApiResponse.success(memberService.getVisitedMemberList(pageWrap)); } @ApiOperation(value = "访客记录提交", notes = "内部人员提交") @PostMapping("/createVisit") public ApiResponse createVisit(@RequestBody Visits visits,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { visits.setCreateMemberId(getLoginUser(token).getMemberId()); return ApiResponse.success("查询成功", visitsService.createFk(visits,false,Constants.ZERO)); } @ApiOperation(value = "审批流记录审批", notes = "内部人员") @PostMapping("/auditApprove") public ApiResponse auditApprove(@RequestBody AuditApproveDTO auditApproveDTO,@RequestHeader(Constants.HEADER_USER_TOKEN) String token) { visitsService.auditApprove(auditApproveDTO); return ApiResponse.success("操作成功"); } /** * 2025-3-25 14:14:34 加入取消预约 待审批、审批中、已审批 * @param visitId * @param token * @return */ @ApiOperation("取消预约") @GetMapping("/visitsCancel") // @CloudRequiredPermission("business:visits:cancel") public ApiResponse visitsCancel(@RequestParam Integer visitId,@RequestHeader(Constants.HEADER_USER_TOKEN) String token){ LoginUserInfo loginUserInfo = getLoginUser(token); visitsService.visitsCancel(visitId,loginUserInfo); return ApiResponse.success(null); } }