package com.ljsd.controller; import com.google.gson.Gson; import com.ljsd.pojo.ResultVo; import com.ljsd.redis.RedisKey; import com.ljsd.util.BaseGlobal; import com.ljsd.util.HttpUtil; import com.ljsd.util.MyMD5Util; import org.slf4j.Logger; import org.slf4j.LoggerFactory; import javax.servlet.ServletException; import javax.servlet.http.HttpServlet; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.io.IOException; import java.io.PrintWriter; import java.util.HashMap; /** * @author gaojie * @version V1.0 * @className RechargeController * @packageName com.ljsd.controller * @description bt 充值返利 * @date 2022-02-21 14:10 * copyright(c) 2020-2030 蓝鲸时代技术有限公司 **/ public class Rebate9kController extends HttpServlet { private static final Logger LOGGER = LoggerFactory.getLogger(Rebate9kController.class); @Override protected void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException { req.setCharacterEncoding("UTF-8"); resp.setCharacterEncoding("UTF-8"); resp.setContentType("application/json; charset=utf-8"); PrintWriter out = resp.getWriter(); HashMap parameterMap = HttpUtil.getParameterMap(req); String rebateType = parameterMap.get("rebate_type"); String rebate_no = parameterMap.get("rebate_no"); String gameOrderNo = parameterMap.get("game_order_no"); String accountid = parameterMap.get("user_id"); String payMoney = parameterMap.get("pay_money"); String gold = parameterMap.get("gold"); String gameId = parameterMap.get("game_id"); String serviceId = parameterMap.get("service_id"); String roleId = parameterMap.get("role_id"); String roleName = parameterMap.get("role_name"); String payTime = parameterMap.get("time"); String payStatus = parameterMap.get("pay_status"); String sign = parameterMap.get("sign"); boolean isSignSuccess = false; for (String value : BaseGlobal.PAY_KEY.values()) { String info =rebateType + rebate_no + HttpUtil.getUrlEncoder(gameOrderNo) + HttpUtil.getUrlEncoder(accountid) + payMoney + gold + gameId + HttpUtil.getUrlEncoder(serviceId) + HttpUtil.getUrlEncoder(roleId) +payTime + value; String sig = MyMD5Util.encrypByMd5(info); if (sig.equals(sign)){ isSignSuccess = true; break; } LOGGER.info("rebate()info={}, 9k_md5Sign={},sig" + "={} sin derify fail !!!",info,sign,sig); } if (!isSignSuccess) { ResultVo resultVo = new ResultVo(100,"sign fail"); out.print(HttpUtil.getResult(resultVo)); out.flush(); return; } try { Gson gson = new Gson(); BaseGlobal.redisApp.hset( serviceId + ":" + RedisKey.BT_REBATE_KEY,"",rebate_no,gson.toJson(parameterMap),-1); } catch (Exception e) { e.printStackTrace(); } String result = HttpUtil.getResult(new ResultVo(200, "success")); LOGGER.info("Rebate9kController==>url:{},result={}",req.getRequestURI(),result); out.print(result); out.flush(); } @Override protected void doPost(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException { this.doGet(req, resp); } }