ws
2023-11-04 510ffba9bf36d73191c736cee495d8f0839e571f
src/main/java/com/fzzy/otherview/whhpjl/pr/WhjlApi1214PR.java
@@ -5,6 +5,7 @@
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.annotation.DataResolver;
import com.bstek.dorado.annotation.Expose;
import com.bstek.dorado.data.provider.Page;
import com.fzzy.api.Constant;
import com.fzzy.api.data.ApiParam;
import com.fzzy.api.dto.ResponseDto;
@@ -13,18 +14,28 @@
import com.fzzy.api.service.ApiCommonService;
import com.fzzy.api.service.ApiPushManager;
import com.fzzy.api.service.ApiRemoteService;
import com.fzzy.api.utils.ContextUtil;
import com.fzzy.api.view.repository.ApiInfoDataRep;
import com.fzzy.otherview.whhpjl.WhjlConstant;
import com.fzzy.otherview.whhpjl.dto.WhjlApi1214;
import com.fzzy.otherview.whhpjl.dto.*;
import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.data.domain.Pageable;
import org.springframework.data.domain.Sort;
import org.springframework.data.jpa.domain.Specification;
import org.springframework.stereotype.Component;
import javax.persistence.criteria.CriteriaBuilder;
import javax.persistence.criteria.CriteriaQuery;
import javax.persistence.criteria.Predicate;
import javax.persistence.criteria.Root;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
 * 合同信息
 * 质检机构
 *
 * @Author:YAN
 */
@@ -44,14 +55,45 @@
     * @return
     */
    @DataProvider
    public List<WhjlApi1214> listData() {
        List<ApiInfoData> result = apiInfoDataRep.getDataByInteId(WhjlConstant.API_CODE_1214);
        if (null == result || result.isEmpty()) {
            return null;
        }
    public void listData(Page<WhjlApi1214> page, ApiParam param) {
        Pageable pageable = PageRequest.of(page.getPageNo() - 1, page.getPageSize(), Sort.Direction.DESC, "updateTime");
        Specification specification = new Specification<ApiInfoData>() {
            private static final long serialVersionUID = 1L;
            @Override
            public Predicate toPredicate(Root<ApiInfoData> root, CriteriaQuery<?> criteriaQuery, CriteriaBuilder criteriaBuilder) {
                List<Predicate> predicates = new ArrayList<>(); //所有的断言
                Predicate predicate = criteriaBuilder.equal(root.get("inteId"), WhjlConstant.API_CODE_1214);
                predicates.add(predicate);
                if (null != param) {
                    if (StringUtils.isNotBlank(param.getKqdm())) {
                        Predicate predicate1 = criteriaBuilder.equal(root.get("kqdm"), param.getKqdm());
                        predicates.add(predicate1);
                    }
                    if (StringUtils.isNotBlank(param.getCzbz())) {
                        Predicate predicate2 = criteriaBuilder.equal(root.get("czbz"), param.getCzbz());
                        predicates.add(predicate2);
                    }
                    if (null != param.getStart()) {
                        Predicate predicate3 = criteriaBuilder.greaterThan(root.get("updateTime"), ContextUtil.getCurZero(param.getStart()));
                        predicates.add(predicate3);
                    }
                    if (null != param.getEnd()) {
                        Predicate predicate4 = criteriaBuilder.lessThan(root.get("updateTime"), ContextUtil.getNextZero(param.getEnd()));
                        predicates.add(predicate4);
                    }
                }
                return criteriaBuilder.and(predicates.toArray(new Predicate[0]));
            }
        };
        org.springframework.data.domain.Page<ApiInfoData> japPage = apiInfoDataRep.findAll(specification, pageable);
        page.setEntityCount((int) japPage.getTotalElements());
        List<WhjlApi1214> list = new ArrayList<>();
        WhjlApi1214 whjlApi1214;
        for (ApiInfoData infoData : result) {
        for (ApiInfoData infoData : japPage.getContent()) {
            whjlApi1214 = JSONObject.parseObject(infoData.getData(), WhjlApi1214.class);
            whjlApi1214.setKqdm(infoData.getKqdm());
            whjlApi1214.setCzbz(infoData.getCzbz());
@@ -59,9 +101,25 @@
            whjlApi1214.setBizId(infoData.getDataId());
            list.add(whjlApi1214);
        }
        return list;
        page.setEntities(list);
    }
    /**
     * 获取列表信息
     * whjlApi1214PR#listItem
     *
     * @return
     */
    @DataProvider
    public List<WhjlJCNL> listJCNL(String code) {
        return JSON.parseArray(code, WhjlJCNL.class);
    }
    @DataProvider
    public List<WhjlYQSB> listYQSB(String code) {
        return JSON.parseArray(code, WhjlYQSB.class);
    }
    /**
     * 更新或修改
@@ -72,17 +130,22 @@
     */
    @DataResolver
    public void saveData(WhjlApi1214 data) {
        ApiInfoData infoData = new ApiInfoData();
        infoData.setId(data.getBizId());
        infoData.setKqdm(data.getKqdm());
        infoData.setInteType(WhjlConstant.API_CATEGORY_12);
        infoData.setInteId(WhjlConstant.API_CODE_1214);
        infoData.setUpdateTime(new Date());
        infoData.setDataId(data.getBizId());
        infoData.setData(JSON.toJSONString(data));
        infoData.setCzbz(data.getCzbz());
        infoData.setRemarks("备注信息");
        ApiInfoData infoData;
        List<ApiInfoData> apiInfoList = apiInfoDataRep.getDataByInteAndData(WhjlConstant.API_CODE_1214, data.getBizId(), data.getKqdm());
        if (apiInfoList.size() != 0) {
            infoData = apiInfoList.get(0);
            infoData.setData(JSON.toJSONString(data));
        } else {
            infoData = new ApiInfoData();
            infoData.setId(data.getBizId());
            infoData.setKqdm(data.getKqdm());
            infoData.setInteId(WhjlConstant.API_CODE_1214);
            infoData.setUpdateTime(new Date());
            infoData.setDataId(data.getBizId());
            infoData.setData(JSON.toJSONString(data));
            infoData.setCzbz(Constant.CZBZ_I);
            infoData.setRemarks("备注信息");
        }
        apiInfoDataRep.save(infoData);
    }
@@ -101,6 +164,18 @@
    }
    /**
     * 删除合同商品清单
     * whjlApi1214PR#delItem
     *
     * @param data
     * @return
     */
    @Expose
    public String delItem(WhjlQDItem data) {
        return null;
    }
    /**
     * 上传
     * whjlApi1214PR#pushData
     *
@@ -109,7 +184,7 @@
     */
    @Expose
    public String pushData(List<WhjlApi1214> items) {
        ResponseDto responseDto;
        String result = "";
        String kqdm = items.get(0).getKqdm();
@@ -128,12 +203,11 @@
            return "系统没有当前推送协议配置,执行失败";
        }
        //推送,数据为集合形式
        responseDto = apiService.pushData(param, apiConf, items);
        if (responseDto.getSuccess() == 0) {
            //推送成功,更新数据上传状态
            ApiInfoData infoData;
            for (WhjlApi1214 data : items) {
        ApiInfoData infoData;
        ResponseDto responseDto;
        for (WhjlApi1214 data : items) {
            responseDto = apiService.pushData(param, apiConf, data);
            if (responseDto.getSuccess() == 0) {
                if (Constant.CZBZ_I.equals(data.getCzbz())) {
                    infoData = new ApiInfoData();