管道基础大数据平台系统开发-【后端】-Server
1
13693261870
2024-11-22 d23b2ce1ae45c192aed067041da8de748b97d405
src/main/java/com/lf/server/service/data/FmeService.java
@@ -4,13 +4,13 @@
import com.lf.server.entity.ctrl.NameValueEntity;
import com.lf.server.entity.ctrl.RegisterEntity;
import com.lf.server.entity.data.MetaFileEntity;
import com.lf.server.entity.data.PublishEntity;
import com.lf.server.helper.RestHelper;
import com.lf.server.helper.StringHelper;
import com.lf.server.helper.WebHelper;
import org.apache.commons.logging.Log;
import org.apache.commons.logging.LogFactory;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Service;
import org.springframework.web.client.RestTemplate;
import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList;
@@ -25,6 +25,11 @@
public class FmeService {
    @Value("${sys.fmeUrl}")
    private String fmeUrl;
    @Value("${sys.fmeToken}")
    private String fmeToken;
    private final static Log log = LogFactory.getLog(FmeService.class);
    /**
     * 获取任务状态
@@ -223,7 +228,36 @@
    }
    /**
     * 13.表格入库:S_RKBG、dirid、parentid,多个以英文逗号隔开
     * 13.逻辑一致性检查:.dwg/.xls/.xlsx
     */
    public String checkLogical(FmeReqEntity fme, HttpServletRequest req) {
        String url = getUrl("datax/task/run/B3入库质检_逻辑一致性检查", req);
        List<NameValueEntity> list = getKeyValues("逻辑一致性检查");
        list.add(new NameValueEntity("XMMC", fme.xmmc));
        list.add(new NameValueEntity("SJZY", fme.sjzy));
        list.add(new NameValueEntity("GCXMYSB", fme.zipPath));
        return RestHelper.postForRest(url, list);
    }
    /**
     * 14.单项成果完整性检查:.*
     */
    public String checkSingleIntegrity(FmeReqEntity fme, HttpServletRequest req) {
        String url = getUrl("datax/task/run/B6入库质检_单项成果完整性检查", req);
        List<NameValueEntity> list = getKeyValues("单项成果完整性检查");
        list.add(new NameValueEntity("XMMC", fme.xmmc));
        list.add(new NameValueEntity("SJZY", fme.sjzy));
        list.add(new NameValueEntity("GCXMYSB", fme.zipPath));
        list.add(new NameValueEntity("SJFL", fme.sjfl));
        return RestHelper.postForRest(url, list);
    }
    /**
     * a.表格入库:S_RKBG、dirid、parentid,多个以英文逗号隔开
     */
    public String excelLoader(MetaFileEntity meta, HttpServletRequest req) {
        String url = getUrl("datax/task/run/表格入库", req);
@@ -241,7 +275,7 @@
    }
    /**
     * 14.CRDS平台交付
     * b.CRDS平台交付
     */
    public String crdsPackaging(String dirCode, String major, String isCut, HttpServletRequest req) {
        // datax/task/run/CRDS平台交付_测试
@@ -256,37 +290,58 @@
    }
    /**
     * 15.服务注册
     * c.服务注册
     */
    public RegisterEntity serverRegister(String name, String serverUri, String type, HttpServletRequest req) {
        String url = getUrl("resource/res/item", req);
        RegisterEntity entity = new RegisterEntity(name, serverUri, type);
        String resid= RestHelper.postForRest(url, entity);
        String resid = RestHelper.postForRest(url, entity);
        entity.setSerialnum(resid);
        return entity;
    }
    /**
     * 16.服务申请
     * d.服务申请
     */
    public void serverApply(String id, Integer pubid, HttpServletRequest req) {
        String url = getUrl("resource/res/request", req) + "&resourceid=" + id;
        try {
            String url = getUrl("resource/res/request", req) + "&resourceid=" + id;
        RegisterEntity entity = new RegisterEntity(pubid);
            RegisterEntity entity = new RegisterEntity(pubid);
        RestHelper.postForRest(url, entity);
            RestHelper.postForRest(url, entity);
        } catch (Exception ex) {
            log.error(ex.getMessage(), ex);
        }
    }
    /**
     * 17.删除资源
     * e.删除资源
     */
    public void deleteRes(String id, HttpServletRequest req) {
        String url = getUrl("resource/res/hashid", req) + "&hashid=" + id;
        RestHelper.deleteForRest(url);
    }
    /**
     * f.计算面积
     */
    public String calcArea(String sjfl, String id, String wjlj) {
        String url = getUrl("datax/task/run/数据占地面积计算");
        List<NameValueEntity> list = new ArrayList<>();
        list.add(new NameValueEntity("_name", String.format("%s_%s", "数据占地面积计算", StringHelper.YMDHMS2_FORMAT.format(new Date()))));
        list.add(new NameValueEntity("_terminate_on_error", false));
        list.add(new NameValueEntity("_priority", 100));
        list.add(new NameValueEntity("SJFL", sjfl));
        list.add(new NameValueEntity("ID", id));
        list.add(new NameValueEntity("WJLJ", wjlj));
        return RestHelper.postForRest(url, list);
    }
    /**
@@ -299,6 +354,13 @@
    }
    /**
     * 获取Url
     */
    public String getUrl(String subUrl) {
        return fmeUrl + subUrl + "?token=" + fmeToken;
    }
    /**
     * 获取名称值对集合
     */
    public List<NameValueEntity> getKeyValues(String name) {