huangjn 2 tahun lalu
induk
melakukan
a1360f8f0e

+ 1 - 1
blade-service-api/blade-manager-api/src/main/java/org/springblade/manager/feign/EVisaConfigClient.java

@@ -19,6 +19,6 @@ public interface EVisaConfigClient {
     String API_PREFIX = "/api/manager/eVisaConfig";
 
     @PostMapping(API_PREFIX + "/queryEVisaConfigByTableIds")
-    List<JSONObject> queryEVisaConfigByTableIds(@RequestBody List<String> tableIds, @RequestParam String isFinal);
+    List<JSONObject> queryEVisaConfigByTableIds(@RequestBody List<String> tableIds, @RequestParam String contractId, @RequestParam String isFinal);
 
 }

+ 4 - 5
blade-service/blade-business/src/main/java/org/springblade/business/controller/ConstructionLedgerController.java

@@ -20,7 +20,6 @@ import org.springblade.manager.entity.WbsTreeContract;
 import org.springblade.manager.feign.ContractClient;
 import org.springblade.manager.feign.WbsTreeContractClient;
 import org.springblade.manager.vo.WbsTreeContractTreeVOS;
-import org.springframework.beans.BeanUtils;
 import org.springframework.web.bind.annotation.*;
 import org.springframework.web.bind.annotation.RequestParam;
 import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -100,8 +99,8 @@ public class ConstructionLedgerController extends BladeController {
 	@ApiOperationSupport(order = 2)
 	@ApiOperation(value = "分页(建议)", notes = "传入constructionLedger")
 	public R<IPage<ConstructionLedgerVO>> list(@Valid @RequestBody ConstructionLedgerVO vo) {
-		ConstructionLedger ledger = new ConstructionLedger();
-		BeanUtils.copyProperties(vo, ledger);
+//		ConstructionLedger ledger = new ConstructionLedger();
+//		BeanUtils.copyProperties(vo, ledger);
 
 		Query query = new Query();
 		query.setCurrent(vo.getCurrent());
@@ -126,9 +125,9 @@ public class ConstructionLedgerController extends BladeController {
 		vo.setWbsIds(queryDataResult.stream().map(QueryProcessDataVO::getPrimaryKeyId).distinct().collect(Collectors.toList()));
 
 		if(vo.getSiteStartTime() != null && vo.getSiteEndTime() != null){
-			pages = this.constructionLedgerService.page(Condition.getPage(query), Condition.getQueryWrapper(ledger).lambda().in(ConstructionLedger::getWbsId, vo.getWbsIds()).between(ConstructionLedger::getSiteStartTime, ledger.getSiteStartTime(), ledger.getSiteEndTime()));
+			pages = this.constructionLedgerService.page(Condition.getPage(query), Condition.getQueryWrapper(new ConstructionLedger()).lambda().in(ConstructionLedger::getWbsId, vo.getWbsIds()).between(ConstructionLedger::getSiteStartTime, vo.getSiteStartTime(), vo.getSiteEndTime()));
 		} else {
-			pages = this.constructionLedgerService.page(Condition.getPage(query), Condition.getQueryWrapper(ledger).lambda().in(ConstructionLedger::getWbsId, vo.getWbsIds()));
+			pages = this.constructionLedgerService.page(Condition.getPage(query), Condition.getQueryWrapper(new ConstructionLedger()).lambda().in(ConstructionLedger::getWbsId, vo.getWbsIds()));
 		}
 
 		IPage<ConstructionLedgerVO> voiPage = ConstructionLedgerWrapper.build().pageVO(pages);

+ 1 - 1
blade-service/blade-business/src/main/java/org/springblade/business/feignClient/TaskClientImpl.java

@@ -53,7 +53,7 @@ public class TaskClientImpl implements TaskClient {
         List<String> privatePrimaryKeyIds = this.informationQueryService.queryBusinessTableData(task.getFormDataId());
         if(privatePrimaryKeyIds != null && privatePrimaryKeyIds.size() > 0){
             //查询这些表格的电签配置
-            return this.eVisaConfigClient.queryEVisaConfigByTableIds(privatePrimaryKeyIds, isFinal);
+            return this.eVisaConfigClient.queryEVisaConfigByTableIds(privatePrimaryKeyIds, task.getContractId(), isFinal);
         }
 
         return null;

+ 2 - 2
blade-service/blade-business/src/main/java/org/springblade/business/mapper/ContractLogMapper.xml

@@ -72,7 +72,7 @@
             and create_user = #{vo.createUser}
         </if>
         <if test="vo.startTime != null and vo.startTime != '' and vo.endTime != null and vo.endTime != ''">
-            and record_time between #{startTime} and #{endTime}
+            and record_time between #{vo.startTime} and #{vo.endTime}
         </if>
         order by record_time DESC limit #{current}, #{size}
     </select>
@@ -97,7 +97,7 @@
             and create_user = #{vo.createUser}
         </if>
         <if test="vo.startTime != null and vo.startTime != '' and vo.endTime != null and vo.endTime != ''">
-            and record_time between #{startTime} and #{endTime}
+            and record_time between #{vo.startTime} and #{vo.endTime}
         </if>
     </select>
 

+ 14 - 1
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/ContractLogServiceImpl.java

@@ -18,6 +18,7 @@ package org.springblade.business.service.impl;
 
 import com.alibaba.fastjson.JSONArray;
 import com.alibaba.fastjson.JSONObject;
+import org.apache.commons.lang.StringUtils;
 import org.springblade.business.entity.ContractLog;
 import org.springblade.business.vo.ContractLogVO;
 import org.springblade.business.mapper.ContractLogMapper;
@@ -51,7 +52,13 @@ public class ContractLogServiceImpl extends BaseServiceImpl<ContractLogMapper, C
 		List<FileUserVO> result = new ArrayList<>();
 		List<ContractLog> logResult = this.baseMapper.queryFillUser(logVO);
 		if(logResult != null && logResult.size() != 0){
-			logResult.forEach(log -> result.add(new FileUserVO(log.getCreateUser().toString(), log.getCreateUserName())));
+			List<String> containsList = new ArrayList<>();
+			logResult.forEach(log -> {
+				if(!containsList.contains(log.getCreateUser().toString())){
+					result.add(new FileUserVO(log.getCreateUser().toString(), log.getCreateUserName()));
+					containsList.add(log.getCreateUser().toString());
+				}
+			});
 		}
 		return result;
 	}
@@ -64,6 +71,12 @@ public class ContractLogServiceImpl extends BaseServiceImpl<ContractLogMapper, C
 		query.setCurrent(logVO.getCurrent());
 		query.setSize(logVO.getSize());
 
+		if(StringUtils.isNotEmpty(logVO.getQueryTime())){
+			String[] queryTime = logVO.getQueryTime().split("~");
+			logVO.setStartTime(queryTime[0]);
+			logVO.setEndTime(queryTime[1]);
+		}
+
 		//总数
 		Integer count = this.baseMapper.selectPageCount(logVO);
 		//分页信息

+ 2 - 2
blade-service/blade-business/src/main/java/org/springblade/business/service/impl/InformationQueryServiceImpl.java

@@ -83,7 +83,7 @@ public class InformationQueryServiceImpl extends BaseServiceImpl<InformationQuer
 			ContractLog log = this.contractLogService.getById(formDataId);
 			if(log != null){
 				//说明是日志,日志的绑定节点在wbs_tree_private表中,所以这个节点ID就是要找的ID
-				return Func.toStrList(String.valueOf(log.getWbsNodeId()));
+				return Func.toStrList(String.valueOf(log.getTableId()));
 			}
 		}
 
@@ -121,7 +121,7 @@ public class InformationQueryServiceImpl extends BaseServiceImpl<InformationQuer
 		linkDataList.forEach(json -> {
 			FirstInformation linkData = new FirstInformation();
 			linkData.setFirstId(Long.parseLong(businessId));
-			linkData.setTitle(json.getString("title"));
+			linkData.setTitle(json.getString("name"));
 			linkData.setLinkId(json.getLong("id"));
 
 			linkData.setCreateUser(AuthUtil.getUserId());

+ 3 - 3
blade-service/blade-e-visa/src/main/java/org/springblade/evisa/service/impl/EVisaServiceImpl.java

@@ -248,7 +248,7 @@ public class EVisaServiceImpl implements EVisaService {
 
                     //准备签章策略
                     List<SealStrategyVO> sealStrategyVOS = new ArrayList<>();
-                    for(int i = 0; i <page; i ++){
+//                    for(int i = 0; i <page; i ++){
                         for(JSONObject eVisaConfig : eVisaConfigList){
                             //设置签章策略
                             SealStrategyVO vo = new SealStrategyVO();
@@ -264,10 +264,10 @@ public class EVisaServiceImpl implements EVisaService {
                             vo.setLy(eVisaConfig.getString("Y"));
 
                             //设置页
-                            vo.setPage(( i + 1) + "");
+//                            vo.setPage(( i + 1) + "");
                             sealStrategyVOS.add(vo);
                         }
-                    }
+//                    }
                     SealPdfVO pdfVO = new SealPdfVO();
                     pdfVO.setStrategyVoList(sealStrategyVOS);
 

+ 18 - 2
blade-service/blade-manager/src/main/java/org/springblade/manager/feign/EVisaConfigClientImpl.java

@@ -4,13 +4,16 @@ import com.alibaba.fastjson.JSONObject;
 import com.baomidou.mybatisplus.core.toolkit.Wrappers;
 import lombok.AllArgsConstructor;
 import org.springblade.core.secure.utils.AuthUtil;
+import org.springblade.manager.dto.SaveUserInfoByProjectDTO;
 import org.springblade.manager.entity.TextdictInfo;
 import org.springblade.manager.service.ITextdictInfoService;
+import org.springblade.manager.service.SaveUserInfoByProjectService;
 import org.springframework.web.bind.annotation.RestController;
 
 import java.util.ArrayList;
 import java.util.Arrays;
 import java.util.List;
+import java.util.stream.Collectors;
 
 @RestController
 @AllArgsConstructor
@@ -18,11 +21,24 @@ public class EVisaConfigClientImpl implements EVisaConfigClient {
 
     private final ITextdictInfoService textdictInfoService;
 
+    private final SaveUserInfoByProjectService saveUserInfoByProjectService;
+
     @Override
-    public List<JSONObject> queryEVisaConfigByTableIds(List<String> tableIds, String isFinal) {
+    public List<JSONObject> queryEVisaConfigByTableIds(List<String> tableIds, String contractId, String isFinal) {
         List<JSONObject> jsonResult = new ArrayList<>();
 
-        List<TextdictInfo> configResult = this.textdictInfoService.list(Wrappers.<TextdictInfo>lambdaQuery().in(TextdictInfo::getTabId, tableIds).in(TextdictInfo::getSigRoleId, Arrays.asList(AuthUtil.getUser().getRoleId().split(","))));
+        //需要获取这条任务对应合同段下当前用户的岗位
+        List<SaveUserInfoByProjectDTO> contractUserList = this.saveUserInfoByProjectService.list(Wrappers.<SaveUserInfoByProjectDTO>lambdaQuery().eq(SaveUserInfoByProjectDTO::getContractId, contractId).eq(SaveUserInfoByProjectDTO::getUserId, AuthUtil.getUserId()));
+
+        List<String> userRoleList;
+        if(contractUserList != null && contractUserList.size() > 0){
+            userRoleList = contractUserList.stream().map(SaveUserInfoByProjectDTO::getRoleId).distinct().collect(Collectors.toList());
+        } else {
+            userRoleList = Arrays.asList(AuthUtil.getUser().getRoleId().split(","));
+        }
+
+        List<TextdictInfo> configResult = this.textdictInfoService.list(Wrappers.<TextdictInfo>lambdaQuery().in(TextdictInfo::getTabId, tableIds).in(TextdictInfo::getSigRoleId, userRoleList));
+
         if(configResult != null && configResult.size() > 0){
             configResult.forEach(config -> {
                 JSONObject jsonObject = new JSONObject();

+ 1 - 4
blade-service/blade-manager/src/main/java/org/springblade/manager/service/impl/ExcelTabServiceImpl.java

@@ -370,10 +370,7 @@ public class ExcelTabServiceImpl extends BaseServiceImpl<ExcelTabMapper, ExcelTa
 			}
 			String tabName = wbsTreePrivate.getInitTableName();
 
-			String id = tableInfo.getBusinessId();
-			if(StringUtils.isEmpty(id)){
-				id = SnowFlakeUtil.getId() + "";
-			}
+			String id = SnowFlakeUtil.getId() + "";
 
 			//拼接SQL
 			StringBuilder sql = new StringBuilder("INSERT INTO " + tabName ),