package com.fr.plugin.http.handler; import com.alibaba.fastjson.JSON; import com.banboocloud.Codec.BamboocloudFacade; import com.fanruan.api.log.LogKit; import com.fr.decision.authority.AuthorityContext; import com.fr.decision.authority.base.constant.type.operation.ManualOperationType; import com.fr.decision.authority.controller.UserController; import com.fr.decision.authority.data.User; import com.fr.decision.fun.impl.BaseHttpHandler; import com.fr.decision.privilege.encrpt.PasswordValidator; import com.fr.decision.webservice.utils.UserSourceFactory; import com.fr.decision.webservice.v10.user.UserService; import com.fr.plugin.SYNCConfig; import com.fr.plugin.utils.BamboocloudUtils; import com.fr.stable.StringUtils; import com.fr.stable.query.QueryFactory; import com.fr.stable.query.restriction.RestrictionFactory; import com.fr.third.springframework.web.bind.annotation.RequestMethod; import com.fr.web.utils.WebUtils; import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletResponse; import java.util.HashMap; import java.util.Map; public class ALLUserDeleteHandler extends BaseHttpHandler { @Override public RequestMethod getMethod() { return null; } @Override public String getPath() { return "/userDelete"; } @Override public boolean isPublic() { return true; } @Override public void handle(HttpServletRequest req, HttpServletResponse res) throws Exception { String bodyparam = BamboocloudUtils.getRequestBody(req); System.out.println("first--param-->" + bodyparam); SYNCConfig syncConfig = SYNCConfig.getInstance(); bodyparam = BamboocloudUtils.getPlaintext(bodyparam, syncConfig.getSyncSecret(), "AES"); LogKit.info("xml--param-->" + bodyparam); // bodyparam = XmlUtils.xmlToJson(bodyparam); // System.out.println("json--param-->" + bodyparam); Map reqmap = (Map) JSON.parse(bodyparam); // if (BamboocloudUtils.verify(reqmap, "MD5").booleanValue()) { String username = (String) reqmap.get("bimRemoteUser"); String password = (String) reqmap.get("bimRemotePwd"); String uid = (String) reqmap.get("bimUid"); BamboocloudUtils.checkUsernamePassword(username, password); UserController userController = AuthorityContext.getInstance().getUserController(); User user = userController.findOne(QueryFactory.create().addRestriction(RestrictionFactory.eq("userName", uid))); if (user == null) { LogKit.error("删除当前用户不存在:{}", uid); String mapJson = JSON.toJSONString(createJson((String) reqmap.get("bimRequestId"), "500", "删除当前用户不存在" + uid)); LogKit.info("response---json-->" + mapJson); mapJson = BamboocloudFacade.encrypt(mapJson, syncConfig.getSyncSecret(), "AES"); WebUtils.printAsString(res, mapJson); return; } userController.remove(user.getId()); String mapJson = JSON.toJSONString(createJson((String) reqmap.get("bimRequestId"), "0", "success")); LogKit.info("response---json-->" + mapJson); mapJson = BamboocloudFacade.encrypt(mapJson, syncConfig.getSyncSecret(), "AES"); WebUtils.printAsString(res, mapJson); // } } private Map createJson(String bimRequestId, String code, String msg) { Map schema = new HashMap(); schema.put("bimRequestId", bimRequestId); schema.put("resultCode", code); schema.put("message", msg); return schema; } }