package tqq9.lc123.cloud.app.eip.iscb.impl; import kd.bos.coderule.api.CodeRuleInfo; import kd.bos.dataentity.OperateOption; import kd.bos.dataentity.entity.DynamicObject; import kd.bos.entity.operate.result.IOperateInfo; import kd.bos.entity.operate.result.OperationResult; import kd.bos.logging.Log; import kd.bos.logging.LogFactory; import kd.bos.orm.query.QCP; import kd.bos.orm.query.QFilter; import kd.bos.servicehelper.BusinessDataServiceHelper; import kd.bos.servicehelper.coderule.CodeRuleServiceHelper; import kd.bos.servicehelper.operation.OperationServiceHelper; import kd.bos.servicehelper.operation.SaveServiceHelper; import kd.bos.servicehelper.user.UserServiceHelper; import tqq9.lc123.cloud.app.eip.iscb.LCLogService; import java.util.Date; import java.util.List; public class LCLogServiceImpl implements LCLogService { private static Log logger = LogFactory.getLog(LCLogServiceImpl.class); @Override public void savelog(String apiName, String url, Boolean isPost, Boolean isSucess, String request, String response) { logger.info("日志微服务-saveLog-start"); logger.info("日志微服务-saveLog-apiName-" + apiName); logger.info("日志微服务-saveLog-url-" + url); logger.info("日志微服务-saveLog-isPost-" + isPost); logger.info("日志微服务-saveLog-isSucess-" + isSucess); logger.info("日志微服务-saveLog-request-" + request); logger.info("日志微服务-saveLog-response-" + response); DynamicObject apiLog = BusinessDataServiceHelper.newDynamicObject("tqq9_thirdinterfacelogs"); apiLog.set("name", apiName); apiLog.set("tqq9_url", url); apiLog.set("tqq9_ispost", isPost); apiLog.set("tqq9_issucess", isSucess); apiLog.set("tqq9_request", request); apiLog.set("tqq9_response", response); if (request == null || request.length() <= 255) { apiLog.set("tqq9_request", request); } else { String reqSub = request.substring(0, 254); apiLog.set("tqq9_request", reqSub); apiLog.set("tqq9_request_tag", request); } if (response == null || response.length() <= 255) { apiLog.set("tqq9_response", response); } else { String resSub = response.substring(0, 254); apiLog.set("tqq9_response", resSub); apiLog.set("tqq9_response_tag", response); } apiLog.set("createtime", new Date()); apiLog.set("status", "A"); apiLog.set("enable", "1"); // CodeRuleInfo codeRule = CodeRuleServiceHelper.getCodeRule(apiLog.getDataEntityType().getName(), apiLog, null); // 获取根据编码规则得到的编码字符串 // String number = CodeRuleServiceHelper.getNumber(codeRule, apiLog); // apiLog.set("number", number); long currentUserId = UserServiceHelper.getCurrentUserId(); DynamicObject user = BusinessDataServiceHelper.loadSingle("bos_user", new QFilter[]{new QFilter("id", QCP.equals, currentUserId)}); apiLog.set("creator", user); OperateOption option = OperateOption.create(); OperationResult saveResult = OperationServiceHelper .executeOperate("save", "tqq9_thirdinterfacelogs", new DynamicObject[]{apiLog}, option); if (saveResult.isSuccess()) { logger.info("日志微服务-saveLog-s-end"); } else { StringBuilder sb = new StringBuilder(); List allErrorOrValidateInfo = saveResult.getAllErrorOrValidateInfo(); for (IOperateInfo iOperateInfo : allErrorOrValidateInfo) { sb.append(iOperateInfo.getMessage()).append("。"); } logger.info("日志微服务-saveLog-错误信息-" + sb); } logger.info("日志微服务-saveLog-f-end"); } @Override public void isSuccess(String entityType, String PrimaryKey,String PrimaryName, String label, Boolean isSuccess) { logger.info("日志微服务-isSuccess-start"); logger.info("日志微服务-isSuccess-entityType-" + entityType); logger.info("日志微服务-isSuccess-PrimaryKey-" + PrimaryKey); logger.info("日志微服务-isSuccess-PrimaryName-" + PrimaryName); logger.info("日志微服务-isSuccess-label-" + label); logger.info("日志微服务-isSuccess-isSuccess-" + isSuccess); DynamicObject dynamicObject = BusinessDataServiceHelper.loadSingle(entityType, new QFilter[]{new QFilter(PrimaryName, QCP.equals, PrimaryKey)}); dynamicObject.set(label,isSuccess); SaveServiceHelper.save(new DynamicObject[]{dynamicObject}); logger.info("日志微服务-isSuccess-end"); } }