package com.product.mobile.core.controller; import javax.servlet.http.HttpServletRequest; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RestController; import com.product.core.config.CoreConst; import com.product.core.controller.support.AbstractBaseController; import com.product.core.entity.FieldSetEntity; import com.product.core.entity.RequestParameterEntity; import com.product.core.exception.BaseException; import com.product.core.spring.context.SpringMVCContextHolder; import com.product.mobile.core.config.MobileCoreCode; import com.product.mobile.core.service.SignInService; import com.product.module.sys.version.ApiVersion; import com.product.org.admin.config.CmnCode; /** * 手机签到 * * @author shicf */ @RequestMapping("/api/mobile") @RestController public class SignInController extends AbstractBaseController { @Autowired SignInService signInService; /** * 打卡签到 * * @param request * @return */ @RequestMapping(value = "/map/sign-in/{version}", method = RequestMethod.POST) @ApiVersion(1) public String signIn(HttpServletRequest request) { FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //签到时,如果上传了uuid,表示,征对公司规定的考勤点的签到,否则表示不在公司规定的考勤点的签到(任意地点签到。) signInService.signIn(fse); return this.OK(); } /** * 获取当天打卡签到记录 * * @param request * @return */ @RequestMapping(value = "/map/sign-in/list/{version}", method = RequestMethod.POST) @ApiVersion(1) public String signInList(HttpServletRequest request) { FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } try { return this.OK_List(signInService.signInList()); } catch (BaseException e) { return this.error(e); } catch (Exception e) { return this.error(MobileCoreCode.SIGN_IN_FAIL); } } /** * 获取公司固定考勤点的信息 * * @param request * @return */ @RequestMapping(value = "/map/sign-in/site-list/{version}", method = RequestMethod.POST) @ApiVersion(1) public String signInSiteList(HttpServletRequest request) { FieldSetEntity fse = null; Object bean = request.getAttribute(CoreConst.API_POST_REQUEST_DATA); if (bean != null) { RequestParameterEntity reqp = (RequestParameterEntity) bean; fse = reqp.getFormData(); } //获取当前人的公司 return this.OK_List(signInService.signInSites(SpringMVCContextHolder.getCurrentUser().getCurrentCompany().getUUID())); } }