package com.java110.web.smo.impl; import com.alibaba.fastjson.JSONObject; import com.java110.common.constant.CommonConstant; import com.java110.common.constant.ServiceConstant; import com.java110.common.util.Assert; import com.java110.core.base.smo.BaseServiceSMO; import com.java110.core.context.IPageData; import com.java110.core.factory.AuthenticationFactory; import com.java110.web.smo.ILoginServiceSMO; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.http.*; import org.springframework.stereotype.Service; import org.springframework.web.client.RestTemplate; /** * 登录信息实现类 * Created by wuxw on 2019/3/20. */ @Service("loginServiceSMOImpl") public class LoginServiceSMOImpl extends BaseServiceSMO implements ILoginServiceSMO { private final static Logger logger = LoggerFactory.getLogger(LoginServiceSMOImpl.class); @Autowired private RestTemplate restTemplate; /** * 登录处理 * @param pd 页面请求对象 * @return */ @Override public ResponseEntity doLogin(IPageData pd) { ResponseEntity responseEntity = null; Assert.jsonObjectHaveKey(pd.getReqData(),"username","请求报文格式错误或未包含username信息"); JSONObject loginInfo = JSONObject.parseObject(pd.getReqData()); loginInfo.put("passwd", AuthenticationFactory.passwdMd5(loginInfo.getString("passwd"))); responseEntity = this.callCenterService(restTemplate,pd,loginInfo.toJSONString(),ServiceConstant.SERVICE_API_URL+"/api/user.service.login",HttpMethod.POST); if(responseEntity.getStatusCode() == HttpStatus.OK){ pd.setToken(responseEntity.getBody()); } return responseEntity; } public RestTemplate getRestTemplate() { return restTemplate; } public void setRestTemplate(RestTemplate restTemplate) { this.restTemplate = restTemplate; } }