提交 ecc0cb78 authored 作者: inroi's avatar inroi

微调

上级 a55e9dca
package org.jeecg.modules.iost.ims.mapper; package org.jeecg.modules.iost.ims.mapper;
import java.util.List; import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.jeecg.modules.iost.ims.entity.Imslog; import org.jeecg.modules.iost.ims.entity.Imslog;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import java.util.List;
/** /**
* @Description: ims响应日志 * @Description: ims响应日志
* @Author: jeecg-boot * @Author: jeecg-boot
* @Date: 2021-09-03 * @Date: 2021-09-03
* @Version: V1.0 * @Version: V1.0
*/ */
@Mapper @Mapper
public interface ImslogMapper extends BaseMapper<Imslog> { public interface ImslogMapper extends BaseMapper<Imslog> {
List<Imslog> imsLogList(@Param("page") Page<Imslog> page, @Param("dateForm") String dateForm, @Param("dateTo") String dateTo, @Param("queueId") String queueId, @Param("nameString") String nameString, @Param("synchronization") String synchronization);
} }
...@@ -2,4 +2,34 @@ ...@@ -2,4 +2,34 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="org.jeecg.modules.iost.ims.mapper.ImslogMapper"> <mapper namespace="org.jeecg.modules.iost.ims.mapper.ImslogMapper">
<select id="imsLogList" parameterType="java.lang.Object" resultType="org.jeecg.modules.iost.ims.entity.Imslog">
SELECT
i2.id, i2.name, i2.code, i2.request, i2.response, i2.message, i2.create_by,
i2.create_time, i2.update_by, i2.update_time, i2.success
FROM (
SELECT id FROM imslog
<where>
<if test="dateForm != null and dateForm != ''">
createtime BETWEEN #{dateForm} AND #{dateTo}
</if>
<if test="queueId != null and queueId != ''">
AND code = #{queueId}
</if>
<if test="nameString != null and nameString != ''">
AND `name` LIKE CONCAT("%", #{nameString}, "%")
</if>
<if test="synchronization != null and synchronization != ''">
AND synchronization = #{synchronization}
</if>
</where>
) AS i1 INNER JOIN imslog AS i2 ON i1.id = i2.id
ORDER BY create_time DESC
</select>
</mapper> </mapper>
\ No newline at end of file
package org.jeecg.modules.iost.ims.service; package org.jeecg.modules.iost.ims.service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.iost.ims.entity.Imslog; import org.jeecg.modules.iost.ims.entity.Imslog;
import com.baomidou.mybatisplus.extension.service.IService;
import java.text.ParseException; import java.text.ParseException;
...@@ -13,5 +14,11 @@ import java.text.ParseException; ...@@ -13,5 +14,11 @@ import java.text.ParseException;
* @Version: V1.0 * @Version: V1.0
*/ */
public interface IImslogService extends IService<Imslog> { public interface IImslogService extends IService<Imslog> {
/**
* 金蝶日志列表
*/
IPage<Imslog> imsLogList(Integer pageNo, Integer pageSize, String dateString, String Queue_id, String nameString, String status);
public Boolean synchronization(String id,LoginUser sysUser) throws ParseException; public Boolean synchronization(String id,LoginUser sysUser) throws ParseException;
} }
package org.jeecg.modules.iost.ims.service.impl; package org.jeecg.modules.iost.ims.service.impl;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.shiro.SecurityUtils; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.jeecg.common.system.vo.LoginUser; import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.iost.ims.ExternalInterface.IMSApi; import org.jeecg.modules.iost.ims.ExternalInterface.IMSApi;
import org.jeecg.modules.iost.ims.Util.XmlUtil; import org.jeecg.modules.iost.ims.Util.XmlUtil;
import org.jeecg.modules.iost.ims.entity.Imslog; import org.jeecg.modules.iost.ims.entity.Imslog;
import org.jeecg.modules.iost.ims.entity.Kingdeelog;
import org.jeecg.modules.iost.ims.mapper.ImslogMapper; import org.jeecg.modules.iost.ims.mapper.ImslogMapper;
import org.jeecg.modules.iost.ims.service.IImslogService; import org.jeecg.modules.iost.ims.service.IImslogService;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import java.text.ParseException; import java.text.ParseException;
import java.util.Date; import java.util.Date;
import java.util.List;
import java.util.Map; import java.util.Map;
/** /**
* @Description: ims响应日志 * @Description: ims响应日志
* @Author: jeecg-boot * @Author: jeecg-boot
* @Date: 2021-09-03 * @Date: 2021-09-03
* @Version: V1.0 * @Version: V1.0
*/ */
@Service @Service
...@@ -32,38 +34,63 @@ public class ImslogServiceImpl extends ServiceImpl<ImslogMapper, Imslog> impleme ...@@ -32,38 +34,63 @@ public class ImslogServiceImpl extends ServiceImpl<ImslogMapper, Imslog> impleme
@Autowired @Autowired
IMSApi imsApi; IMSApi imsApi;
@Override
public IPage<Imslog> imsLogList(Integer pageNo, Integer pageSize, String dateString, String queueId, String nameString, String status) {
String dateForm = "";
String dateTo = "";
if (StringUtils.isNotBlank(dateString)) {
String[] split = dateString.split(",");
dateForm = split[0];
dateTo = split[1];
}
String synchronization = "";
if ("1".equals(status)) {
synchronization = "true";
} else if ("2".equals(status)) {
synchronization = "false";
}
Page<Imslog> page = new Page<>(pageNo, pageSize);
List<Imslog> recordsList = imslogMapper.imsLogList(page, dateForm, dateTo, queueId, nameString, synchronization);
page.setRecords(recordsList);
return page;
}
@Override @Override
public Boolean synchronization(String id,LoginUser sysUser) throws ParseException { public Boolean synchronization(String id, LoginUser sysUser) throws ParseException {
//根据ID拿到对应的实体类 //根据ID拿到对应的实体类
Imslog imslog=imslogMapper.selectById(id); Imslog imslog = imslogMapper.selectById(id);
String result = imsApi.add(imslog.getRequest()); String result = imsApi.add(imslog.getRequest());
Boolean flag=false; Boolean flag = false;
//将返回结果转成JSON //将返回结果转成JSON
String s = XmlUtil.xmltoJson(result); String s = XmlUtil.xmltoJson(result);
//逐步拆分出对应的信息 //逐步拆分出对应的信息
Map maps = (Map) JSON.parse(s); Map maps = (Map) JSON.parse(s);
Object o = maps.get("SOAP-ENV:Body"); Object o = maps.get("SOAP-ENV:Body");
Map map1 = (Map)JSON.parse(o.toString()); Map map1 = (Map) JSON.parse(o.toString());
Object o1 = map1.get("NS1:updateIMSDataResponse"); Object o1 = map1.get("NS1:updateIMSDataResponse");
Map map2 = (Map)JSON.parse(o1.toString()); Map map2 = (Map) JSON.parse(o1.toString());
Object msg = map2.get("ResultMsg"); Object msg = map2.get("ResultMsg");
Map map3 = (Map)JSON.parse(msg.toString()); Map map3 = (Map) JSON.parse(msg.toString());
Object aReturn = map2.get("return"); Object aReturn = map2.get("return");
Map map4 = (Map)JSON.parse(aReturn.toString()); Map map4 = (Map) JSON.parse(aReturn.toString());
Object message = map3.get("#text"); Object message = map3.get("#text");
Object success = map4.get("#text"); Object success = map4.get("#text");
imslog.setMessage(message.toString()); imslog.setMessage(message.toString());
imslog.setResponse(s); imslog.setResponse(s);
imslog.setUpdateTime(new Date()); imslog.setUpdateTime(new Date());
imslog.setUpdateBy(sysUser.getUsername()); imslog.setUpdateBy(sysUser.getUsername());
if (success.toString().equals("true")){ if (success.toString().equals("true")) {
flag=true; flag = true;
imslog.setSuccess("true"); imslog.setSuccess("true");
}else { } else {
imslog.setSuccess("false"); imslog.setSuccess("false");
} }
imslogMapper.updateById(imslog); imslogMapper.updateById(imslog);
return flag; return flag;
} }
} }
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论