许鹏程
2023-05-24 782695f3ed653fa647920799885168ac86bd4f7d
适配表单设计器,表单缓存
已修改3个文件
49 ■■■■ 文件已修改
src/main/java/com/product/face/config/ErrorCode.java 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/face/service/FaceApplyService.java 40 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/face/service/FaceCacheService.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/product/face/config/ErrorCode.java
@@ -23,6 +23,8 @@
    REQUEST_PARAM_ERROR("请求参数有误", 6),
    GET_FACE_CONF_FAIL("获取表单配置失败", 7),
    ;
src/main/java/com/product/face/service/FaceApplyService.java
@@ -1,9 +1,12 @@
package com.product.face.service;
import cn.hutool.core.map.MapBuilder;
import cn.hutool.core.map.MapUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.alibaba.fastjson.serializer.SerializerFeature;
import com.google.common.collect.Lists;
import com.product.admin.entity.FaceListEntity;
import com.product.admin.service.SystemFaceService;
import com.product.common.lang.StringUtils;
import com.product.core.cache.util.RedisUtil;
@@ -13,6 +16,8 @@
import com.product.core.service.support.AbstractBaseService;
import com.product.face.config.ErrorCode;
import com.product.face.config.FaceConst;
import com.product.face.entity.FaceEntity;
import com.product.face.entity.FaceListEntity;
import com.product.face.entity.TableColumn;
import com.product.face.util.FaceUtil;
import com.product.util.BaseUtil;
@@ -37,6 +42,11 @@
    @Resource
    private FaceCacheService faceCacheService;
    /**
     * 获取表单配置
     * @param fse
     * @return
     */
    public Object getFaceListConf(FieldSetEntity fse) {
        String faceUuid = fse.getString(FaceConst.FIELD_FACE_UUID);
        String faceNumber = fse.getString(FaceConst.FIELD_FACE_NUMBER);
@@ -47,13 +57,11 @@
        if (!StringUtils.isEmpty(faceUuid) && StringUtils.isEmpty(faceNumber)) {
            return systemFaceService.getFaceFieldList(faceUuid);
        }
        final String redisKey = FaceConst.FACE_LIST_KEY + ":face-number" + faceNumber;
        if (RedisUtil.exists(redisKey)) {
            return RedisUtil.get(redisKey);
        FaceListEntity faceListCache = faceCacheService.getFaceListCache(faceNumber);
        if (faceListCache == null) {
            throw new BaseException(ErrorCode.GET_FACE_CONF_FAIL);
        }
        return null;
        return faceListCache;
    }
    /**
@@ -64,21 +72,11 @@
     * @throws BaseException
     */
    public String getFaceFormConfig(FieldSetEntity fse) throws BaseException {
        String faceNumber = fse.getString(FaceConst.FIELD_FACE_NUMBER);
        if (StringUtils.isEmpty(faceNumber)) {
            throw new BaseException(ErrorCode.REQUEST_PARAM_ERROR);
        FaceEntity faceFormCache = faceCacheService.getFaceFormCache(fse.getString(FaceConst.FIELD_FACE_NUMBER));
        if (faceFormCache == null) {
            throw new BaseException(ErrorCode.GET_FACE_CONF_FAIL);
        }
        //根据表单号查询
        FieldSetEntity faceConf = getBaseDao().getFieldSetByFilter(FaceConst.TABLE_FACE_CONFIG, "face_number=?", new Object[]{faceNumber}, true);
        DataTableEntity fieldPropertyDt = faceConf.getSubDataTable(FaceConst.TABLE_FACE_FIELD_CONTROL_PROPERTY);
        if (DataTableEntity.isEmpty(fieldPropertyDt)) {
            throw new BaseException(ErrorCode.GET_FACE_CONFIG_FAIL);
        }
        List<JSONObject> faceControlList = FaceUtil.getFaceControlList(fieldPropertyDt);
        Map<String, Object> other = new HashMap<>();
        other.put("drawingList", faceControlList);
        faceConf.getSubData().clear();
        return BaseUtil.success(faceConf, other);
        return BaseUtil.success(faceFormCache.getData(), MapUtil.builder("drawingList", (Object) faceFormCache.getDrawingList()).map());
    }
}
src/main/java/com/product/face/service/FaceCacheService.java
@@ -54,8 +54,8 @@
        if (!StringUtils.isEmpty(uuid)) {
            objects = new Object[]{uuid};
        }
        DataTableEntity dt = getBaseDao().listTable(FaceConst.TABLE_FACE_CONFIG, filter, objects);
        if (!DataTableEntity.isEmpty(dt)) {
        DataTableEntity dt = getBaseDao().listTable(FaceConst.TABLE_FACE_CONFIG, filter, objects,null,null,Integer.MAX_VALUE,1,true);
        if (DataTableEntity.isEmpty(dt)) {
            return;
        }
        for (FieldSetEntity fs : dt.getData()) {
@@ -101,8 +101,7 @@
        if (StringUtils.isEmpty(faceNumber)) {
            return null;
        }
        final String faceFormKey = FaceConst.FACE_FORM_CACHE_KEY + ":face-number" + faceNumber;
        return (FaceEntity) RedisUtil.get(faceFormKey);
        return (FaceEntity) RedisUtil.get(FaceConst.FACE_FORM_CACHE_KEY + faceNumber);
    }
    /**