Kaynağa Gözat

优化导入日志功能

java110 2 yıl önce
ebeveyn
işleme
94b912d88a

+ 98 - 0
java110-bean/src/main/java/com/java110/dto/log/AssetImportLogTypeDto.java

@@ -0,0 +1,98 @@
+package com.java110.dto.log;
+
+import com.java110.dto.PageDto;
+
+import java.io.Serializable;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @ClassName FloorDto
+ * @Description 批量操作日志数据层封装
+ * @Author wuxw
+ * @Date 2019/4/24 8:52
+ * @Version 1.0
+ * add by wuxw 2019/4/24
+ **/
+public class AssetImportLogTypeDto extends PageDto implements Serializable {
+
+
+    private String typeId;
+    private String logType;
+    private String logTypeName;
+
+    private String logColumn;
+    private String logProperty;
+
+    private String remark;
+
+
+    private Date createTime;
+
+    private String statusCd = "0";
+
+
+    public String getTypeId() {
+        return typeId;
+    }
+
+    public void setTypeId(String typeId) {
+        this.typeId = typeId;
+    }
+
+    public String getLogType() {
+        return logType;
+    }
+
+    public void setLogType(String logType) {
+        this.logType = logType;
+    }
+
+    public String getLogTypeName() {
+        return logTypeName;
+    }
+
+    public void setLogTypeName(String logTypeName) {
+        this.logTypeName = logTypeName;
+    }
+
+    public String getLogColumn() {
+        return logColumn;
+    }
+
+    public void setLogColumn(String logColumn) {
+        this.logColumn = logColumn;
+    }
+
+    public String getLogProperty() {
+        return logProperty;
+    }
+
+    public void setLogProperty(String logProperty) {
+        this.logProperty = logProperty;
+    }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
+
+    public Date getCreateTime() {
+        return createTime;
+    }
+
+    public void setCreateTime(Date createTime) {
+        this.createTime = createTime;
+    }
+
+    public String getStatusCd() {
+        return statusCd;
+    }
+
+    public void setStatusCd(String statusCd) {
+        this.statusCd = statusCd;
+    }
+}

+ 14 - 3
java110-db/src/main/resources/mapper/common/AssetImportLogServiceDaoImplMapper.xml

@@ -19,10 +19,13 @@
     <select id="getAssetImportLogInfo" parameterType="Map" resultType="Map">
         select t.log_type,t.log_type logType,t.success_count,t.success_count successCount,t.log_id,t.log_id
         logId,t.remark,t.status_cd,t.status_cd statusCd,t.community_id,t.community_id
-        communityId,t.error_count,t.error_count errorCount,t.create_time createTime,t.state,td.`name` logTypeName,td1.name stateName
+        communityId,t.error_count,t.error_count errorCount,t.create_time createTime,t.state,td.`name`
+        logTypeName,td1.name stateName
         from asset_import_log t
-        LEFT JOIN t_dict td on t.log_type = td.status_cd and td.table_name = 'asset_import_log' and td.table_columns = 'log_type'
-        LEFT JOIN t_dict td1 on t.state = td1.status_cd and td1.table_name = 'asset_import_log' and td1.table_columns = 'state'
+        LEFT JOIN t_dict td on t.log_type = td.status_cd and td.table_name = 'asset_import_log' and td.table_columns =
+        'log_type'
+        LEFT JOIN t_dict td1 on t.state = td1.status_cd and td1.table_name = 'asset_import_log' and td1.table_columns =
+        'state'
         where 1 =1
         <if test="logType !=null and logType != ''">
             and t.log_type= #{logType}
@@ -119,4 +122,12 @@
 
     </select>
 
+    <!-- 查询导入日志类型 -->
+    <select id="queryAssetImportLogType" parameterType="Map" resultType="Map">
+        select t.type_id typeId,t.log_type logType,t.log_column logColumn,
+        t.log_property logProperty,t.remark,t.create_time createTime
+        from asset_import_log_type t
+        where t.status_cd = '0'
+        and t.log_type = #{logType}
+    </select>
 </mapper>

+ 4 - 0
java110-interface/src/main/java/com/java110/intf/common/IAssetImportLogInnerServiceSMO.java

@@ -2,6 +2,7 @@ package com.java110.intf.common;
 
 import com.java110.config.feign.FeignConfiguration;
 import com.java110.dto.log.AssetImportLogDto;
+import com.java110.dto.log.AssetImportLogTypeDto;
 import com.java110.po.log.AssetImportLogPo;
 import org.springframework.cloud.openfeign.FeignClient;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -50,4 +51,7 @@ public interface IAssetImportLogInnerServiceSMO {
      */
     @RequestMapping(value = "/queryAssetImportLogsCount", method = RequestMethod.POST)
     int queryAssetImportLogsCount(@RequestBody AssetImportLogDto assetImportLogDto);
+
+    @RequestMapping(value = "/queryAssetImportLogType", method = RequestMethod.POST)
+    List<AssetImportLogTypeDto> queryAssetImportLogType(@RequestBody AssetImportLogTypeDto assetImportLogTypeDto);
 }

+ 31 - 2
service-common/src/main/java/com/java110/common/bmo/assetImportLogDetail/impl/GetAssetImportLogDetailBMOImpl.java

@@ -1,8 +1,13 @@
 package com.java110.common.bmo.assetImportLogDetail.impl;
 
+import com.alibaba.fastjson.JSONArray;
+import com.alibaba.fastjson.JSONObject;
 import com.java110.common.bmo.assetImportLogDetail.IGetAssetImportLogDetailBMO;
 import com.java110.dto.log.AssetImportLogDetailDto;
+import com.java110.dto.log.AssetImportLogTypeDto;
 import com.java110.intf.common.IAssetImportLogDetailInnerServiceSMO;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.utils.util.StringUtil;
 import com.java110.vo.ResultVo;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.http.HttpStatus;
@@ -28,17 +33,41 @@ public class GetAssetImportLogDetailBMOImpl implements IGetAssetImportLogDetailB
         int count = assetImportLogDetailInnerServiceSMOImpl.queryAssetImportLogDetailsCount(assetImportLogDetailDto);
 
         List<AssetImportLogDetailDto> assetImportLogDetailDtos = null;
+
+        JSONArray datas = null;
         if (count > 0) {
             assetImportLogDetailDtos = assetImportLogDetailInnerServiceSMOImpl.queryAssetImportLogDetails(assetImportLogDetailDto);
+            // todo 转换为jsonArray
+            datas = covertToData(assetImportLogDetailDtos);
         } else {
-            assetImportLogDetailDtos = new ArrayList<>();
+            datas = new JSONArray();
         }
 
-        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) assetImportLogDetailDto.getRow()), count, assetImportLogDetailDtos);
+        ResultVo resultVo = new ResultVo((int) Math.ceil((double) count / (double) assetImportLogDetailDto.getRow()), count, datas);
 
         ResponseEntity<String> responseEntity = new ResponseEntity<String>(resultVo.toString(), HttpStatus.OK);
 
         return responseEntity;
     }
 
+    private JSONArray covertToData(List<AssetImportLogDetailDto> assetImportLogDetailDtos) {
+        JSONArray datas = new JSONArray();
+
+        if (assetImportLogDetailDtos == null || assetImportLogDetailDtos.size() < 1) {
+            return datas;
+        }
+
+        JSONObject data = null;
+
+        for (AssetImportLogDetailDto assetImportLogDetailDto : assetImportLogDetailDtos) {
+            data = BeanConvertUtil.beanCovertJson(assetImportLogDetailDto);
+            if (!StringUtil.isEmpty(assetImportLogDetailDto.getContent())) {
+                data.putAll(JSONObject.parseObject(assetImportLogDetailDto.getContent()));
+            }
+            datas.add(data);
+        }
+
+        return datas;
+    }
+
 }

+ 42 - 0
service-common/src/main/java/com/java110/common/cmd/log/QueryAssetImportLogTypeCmd.java

@@ -0,0 +1,42 @@
+package com.java110.common.cmd.log;
+
+import com.alibaba.fastjson.JSONObject;
+import com.java110.core.annotation.Java110Cmd;
+import com.java110.core.context.ICmdDataFlowContext;
+import com.java110.core.event.cmd.Cmd;
+import com.java110.core.event.cmd.CmdEvent;
+import com.java110.dto.log.AssetImportLogTypeDto;
+import com.java110.intf.common.IAssetImportLogInnerServiceSMO;
+import com.java110.utils.exception.CmdException;
+import com.java110.utils.util.Assert;
+import com.java110.utils.util.BeanConvertUtil;
+import com.java110.vo.ResultVo;
+import org.springframework.beans.factory.annotation.Autowired;
+
+import java.text.ParseException;
+import java.util.List;
+
+/**
+ * 查询导入类型 字段
+ */
+@Java110Cmd(serviceCode = "log.queryAssetImportLogType")
+public class QueryAssetImportLogTypeCmd extends Cmd {
+
+    @Autowired
+    private IAssetImportLogInnerServiceSMO assetImportLogInnerServiceSMOImpl;
+
+    @Override
+    public void validate(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
+        Assert.hasKeyAndValue(reqJson, "logType", "未包含类型");
+
+    }
+
+    @Override
+    public void doCmd(CmdEvent event, ICmdDataFlowContext context, JSONObject reqJson) throws CmdException, ParseException {
+
+        AssetImportLogTypeDto assetImportLogTypeDto = BeanConvertUtil.covertBean(reqJson, AssetImportLogTypeDto.class);
+        List<AssetImportLogTypeDto> assetImportLogTypes = assetImportLogInnerServiceSMOImpl.queryAssetImportLogType(assetImportLogTypeDto);
+
+        context.setResponseEntity(ResultVo.createResponseEntity(assetImportLogTypes));
+    }
+}

+ 11 - 4
service-common/src/main/java/com/java110/common/dao/IAssetImportLogServiceDao.java

@@ -11,7 +11,7 @@ import java.util.Map;
  * 批量操作日志组件内部之间使用,没有给外围系统提供服务能力
  * 批量操作日志服务接口类,要求全部以字符串传输,方便微服务化
  * 新建客户,修改客户,删除客户,查询客户等功能
- *
+ * <p>
  * Created by wuxw on 2016/12/27.
  */
 public interface IAssetImportLogServiceDao {
@@ -19,17 +19,17 @@ public interface IAssetImportLogServiceDao {
 
     /**
      * 保存 批量操作日志信息
+     *
      * @param info
      * @throws DAOException DAO异常
      */
     void saveAssetImportLogInfo(Map info) throws DAOException;
 
 
-
-
     /**
      * 查询批量操作日志信息(instance过程)
      * 根据bId 查询批量操作日志信息
+     *
      * @param info bId 信息
      * @return 批量操作日志信息
      * @throws DAOException DAO异常
@@ -37,9 +37,9 @@ public interface IAssetImportLogServiceDao {
     List<Map> getAssetImportLogInfo(Map info) throws DAOException;
 
 
-
     /**
      * 修改批量操作日志信息
+     *
      * @param info 修改信息
      * @throws DAOException DAO异常
      */
@@ -54,4 +54,11 @@ public interface IAssetImportLogServiceDao {
      */
     int queryAssetImportLogsCount(Map info);
 
+    /**
+     * 查询导入日志类型
+     *
+     * @param info
+     * @return
+     */
+    List<Map> queryAssetImportLogType(Map info);
 }

+ 9 - 0
service-common/src/main/java/com/java110/common/dao/impl/AssetImportLogServiceDaoImpl.java

@@ -94,5 +94,14 @@ public class AssetImportLogServiceDaoImpl extends BaseServiceDao implements IAss
         return Integer.parseInt(businessAssetImportLogInfos.get(0).get("count").toString());
     }
 
+    @Override
+    public List<Map> queryAssetImportLogType(Map info) {
+        logger.debug("查询批量操作日志信息 入参 info : {}",info);
+
+        List<Map> infos = sqlSessionTemplate.selectList("assetImportLogServiceDaoImpl.queryAssetImportLogType",info);
+
+        return infos;
+    }
+
 
 }

+ 8 - 0
service-common/src/main/java/com/java110/common/smo/impl/AssetImportLogInnerServiceSMOImpl.java

@@ -5,6 +5,7 @@ import com.java110.common.dao.IAssetImportLogServiceDao;
 import com.java110.core.base.smo.BaseServiceSMO;
 import com.java110.dto.PageDto;
 import com.java110.dto.log.AssetImportLogDto;
+import com.java110.dto.log.AssetImportLogTypeDto;
 import com.java110.intf.common.IAssetImportLogInnerServiceSMO;
 import com.java110.po.log.AssetImportLogPo;
 import com.java110.utils.util.BeanConvertUtil;
@@ -73,6 +74,13 @@ public class AssetImportLogInnerServiceSMOImpl extends BaseServiceSMO implements
         return assetImportLogServiceDaoImpl.queryAssetImportLogsCount(BeanConvertUtil.beanCovertMap(assetImportLogDto));
     }
 
+    @Override
+    public List<AssetImportLogTypeDto> queryAssetImportLogType(@RequestBody AssetImportLogTypeDto assetImportLogTypeDto) {
+        List<AssetImportLogTypeDto> assetImportLogs = BeanConvertUtil.covertBeanList(assetImportLogServiceDaoImpl.queryAssetImportLogType(BeanConvertUtil.beanCovertMap(assetImportLogTypeDto)), AssetImportLogTypeDto.class);
+
+        return assetImportLogs;
+    }
+
     public IAssetImportLogServiceDao getAssetImportLogServiceDaoImpl() {
         return assetImportLogServiceDaoImpl;
     }