|
|
@@ -0,0 +1,133 @@
|
|
|
+package cn.start.tz.module.pressure2.service.dynamicOFData.pipe;
|
|
|
+
|
|
|
+import cn.start.tz.framework.common.pojo.CommonResult;
|
|
|
+import cn.start.tz.module.pressure2.controller.admin.dynamictbins.vo.CreateInstantiateWithRuleVO;
|
|
|
+import cn.start.tz.module.pressure2.dal.dataobject.acceptorder.AcceptOrderDO;
|
|
|
+import cn.start.tz.module.pressure2.dal.dataobject.equippipe.EquipPipeDO;
|
|
|
+import cn.start.tz.module.pressure2.dal.dataobject.pipeacceptorderitem.PipeAcceptOrderItemDO;
|
|
|
+import cn.start.tz.module.pressure2.dal.dataobject.pipeacceptorderuser.PipeAcceptOrderUserDO;
|
|
|
+import cn.start.tz.module.pressure2.dal.mysql.acceptorder.AcceptOrderMapper;
|
|
|
+import cn.start.tz.module.pressure2.dal.mysql.equippipe.EquipPipeMapper;
|
|
|
+import cn.start.tz.module.pressure2.dal.mysql.pipeacceptorderitem.PipeAcceptOrderItemMapper;
|
|
|
+import cn.start.tz.module.pressure2.dal.mysql.pipeacceptorderuser.PipeAcceptOrderUserMapper;
|
|
|
+import cn.start.tz.module.pressure2.service.dynamicOFData.IDynamicOFData;
|
|
|
+import cn.start.tz.module.system.api.user.AdminUserApi;
|
|
|
+import cn.start.tz.module.system.api.user.dto.AdminUserRespDTO;
|
|
|
+import com.alibaba.fastjson2.JSONObject;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import jakarta.annotation.Resource;
|
|
|
+import org.springframework.stereotype.Service;
|
|
|
+
|
|
|
+import java.time.format.DateTimeFormatter;
|
|
|
+import java.util.ArrayList;
|
|
|
+import java.util.List;
|
|
|
+import java.util.stream.Collectors;
|
|
|
+
|
|
|
+/**
|
|
|
+ * 受理单
|
|
|
+ */
|
|
|
+@Service("QR0424_202403ReportOFData")
|
|
|
+public class QR0424_202403ReportOFData implements IDynamicOFData {
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private EquipPipeMapper equipPipeMapper;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private AcceptOrderMapper acceptOrderMapper;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private PipeAcceptOrderUserMapper pipeAcceptOrderUserMapper;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private PipeAcceptOrderItemMapper pipeAcceptOrderItemMapper;
|
|
|
+
|
|
|
+ @Resource
|
|
|
+ private AdminUserApi adminUserApi;
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public JSONObject getOFData(JSONObject params) {
|
|
|
+ return null;
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public JSONObject getOfDataByVO(CreateInstantiateWithRuleVO ruleVO) {
|
|
|
+
|
|
|
+ //日期格式
|
|
|
+ DateTimeFormatter dateFormat = DateTimeFormatter.ofPattern("yyyy年MM月dd日");
|
|
|
+
|
|
|
+ //受理单ID
|
|
|
+ String refId = ruleVO.getRefId();
|
|
|
+
|
|
|
+ JSONObject result = new JSONObject();
|
|
|
+ AcceptOrderDO acceptOrderDO = acceptOrderMapper.selectById(refId);
|
|
|
+ if (acceptOrderDO == null) {
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+ result.put("reportNo", acceptOrderDO.getAcceptNo());
|
|
|
+ result.put("unitName", acceptOrderDO.getUnitName());
|
|
|
+ result.put("unitAddress", acceptOrderDO.getUnitAddress());
|
|
|
+ result.put("unitCode", acceptOrderDO.getUnitCode());
|
|
|
+ result.put("zipCode", acceptOrderDO.getZipCode());
|
|
|
+ result.put("contact", acceptOrderDO.getUnitContact());
|
|
|
+ result.put("contactPhone", acceptOrderDO.getUnitPhone());
|
|
|
+ result.put("applicationDate", acceptOrderDO.getCreateTime().format(dateFormat));
|
|
|
+ result.put("acceptDate", acceptOrderDO.getAppointmentDate().format(dateFormat));
|
|
|
+ result.put("checkDate", acceptOrderDO.getAppointmentDate().format(dateFormat));
|
|
|
+ CommonResult<AdminUserRespDTO> user1 = adminUserApi.getUser(acceptOrderDO.getCreator());
|
|
|
+ result.put("confirmed", user1.getCheckedData().getNickname());
|
|
|
+ result.put("acceptMan", user1.getCheckedData().getNickname());
|
|
|
+ if (acceptOrderDO.getFeeNature() != null) {
|
|
|
+ if (acceptOrderDO.getFeeNature() == 200) {
|
|
|
+ result.put("feeNature1", "true");
|
|
|
+ } else if (acceptOrderDO.getFeeNature() == 300) {
|
|
|
+ result.put("feeNature2", "true");
|
|
|
+ }
|
|
|
+ }
|
|
|
+ if (acceptOrderDO.getFeeType() != null){
|
|
|
+ if (acceptOrderDO.getFeeType() == 100) {
|
|
|
+ result.put("feeType2", "true");
|
|
|
+ } else if (acceptOrderDO.getFeeType() == 200) {
|
|
|
+ result.put("feeType1", "true");
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ List<PipeAcceptOrderUserDO> pipeAcceptOrderUserDOS = pipeAcceptOrderUserMapper.selectList(PipeAcceptOrderUserDO::getOrderId, refId);
|
|
|
+ if (pipeAcceptOrderUserDOS != null && !pipeAcceptOrderUserDOS.isEmpty()) {
|
|
|
+ CommonResult<List<AdminUserRespDTO>> userList = adminUserApi.getUserList(pipeAcceptOrderUserDOS.stream().map(PipeAcceptOrderUserDO::getUserId).toList());
|
|
|
+ List<String> names = new ArrayList<>();
|
|
|
+ if (!userList.getData().isEmpty()) {
|
|
|
+ for (PipeAcceptOrderUserDO pipeAcceptOrderUserDO : pipeAcceptOrderUserDOS) {
|
|
|
+ for (AdminUserRespDTO user : userList.getData()) {
|
|
|
+ if (pipeAcceptOrderUserDO.getUserId().equals(user.getId())) {
|
|
|
+ names.add(user.getNickname());
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ String collect = names.stream().map(Object::toString).collect(Collectors.joining("、"));
|
|
|
+ result.put("inspector", collect);
|
|
|
+ result.put("inspectorNum", String.valueOf(pipeAcceptOrderUserDOS.size()));
|
|
|
+ }
|
|
|
+
|
|
|
+ List<PipeAcceptOrderItemDO> pipeAcceptOrderItemDOS = pipeAcceptOrderItemMapper.selectList(
|
|
|
+ new LambdaQueryWrapper<PipeAcceptOrderItemDO>()
|
|
|
+ .eq(PipeAcceptOrderItemDO::getOrderId, refId)
|
|
|
+ );
|
|
|
+ List<EquipPipeDO> equipPipeDOS = equipPipeMapper.selectList(
|
|
|
+ new LambdaQueryWrapper<EquipPipeDO>()
|
|
|
+ .in(EquipPipeDO::getId, pipeAcceptOrderItemDOS.stream().map(PipeAcceptOrderItemDO::getEquipId).toList())
|
|
|
+ );
|
|
|
+ for (int i = 0; i < equipPipeDOS.size(); i++) {
|
|
|
+ EquipPipeDO equipPipeDO = equipPipeDOS.get(i);
|
|
|
+ if (equipPipeDO != null) {
|
|
|
+ int i1 = i + 1;
|
|
|
+ result.put("no_" + i1,String.valueOf(i1));
|
|
|
+ result.put("projectName_" + i1, equipPipeDO.getProjectName());
|
|
|
+ result.put("certificateNo_" + i1, equipPipeDO.getCertificateNo());
|
|
|
+ result.put("pipeClass_" + i1, equipPipeDO.getPipeClass());
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ return result;
|
|
|
+ }
|
|
|
+}
|