修改文档库编辑数据后发送通知

This commit is contained in:
gaosong
2023-12-27 20:54:18 +08:00
parent 70f5bdb053
commit 1f772c1496
15 changed files with 328 additions and 23 deletions
@@ -167,4 +167,11 @@ public class AuthDummyInventoryInfoEO implements Serializable {
@ApiModelProperty(value = "责任部门")
@TableField(exist = false)
private String firstLevelDutyTerritory;
/**清单名称**/
@TableField(exist = false)
private String authDummyInventoryBaseName;
/**清单创建人**/
@TableField(exist = false)
private String creatUser;
}
@@ -14,4 +14,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface AuthDummyInventoryInfoEOMapper extends BaseMapper<AuthDummyInventoryInfoEO> {
List<AuthDummyInventoryInfoEO> queryListByStandId(String id);
}
@@ -18,4 +18,18 @@
<result column="buss_document_library_id" property="bussDocumentLibraryId" />
<result column="auth_dummy_inventory_base_id" property="authDummyInventoryBaseId" />
</resultMap>
<select id="queryListByStandId" resultType="com.jero.modules.authDummy.entity.AuthDummyInventoryInfoEO">
SELECT
dib.`name` as authDummyInventoryBaseName,
dib.create_by as creatUser,
dii.*
FROM
auth_dummy_inventory_info dii
LEFT JOIN auth_dummy_inventory_base dib on dii.auth_dummy_inventory_base_id = dib.id
<where>
<if test="id != null and id != '' ">
dii.buss_document_library_id = #{id}
</if>
</where>
</select>
</mapper>
@@ -4,6 +4,7 @@ import com.alibaba.fastjson.JSONObject;
import com.jero.common.api.vo.Result;
import com.jero.modules.authDummy.entity.AuthDummyInventoryInfoEO;
import com.baomidou.mybatisplus.extension.service.IService;
import com.jero.modules.dummy.entity.DummyInventoryInfoEO;
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
import com.jero.modules.system.entity.SysCategory;
import org.springframework.web.multipart.MultipartFile;
@@ -147,4 +148,6 @@ public interface IAuthDummyInventoryInfoEOService extends IService<AuthDummyInve
Result<?> acquireAdd(JSONObject json);
List<AuthDummyInventoryInfoEO> dataUniqueCheck(List<AuthDummyInventoryInfoEO> addList, String cut, List<String> result, String authDummyInventoryBaseId);
List<AuthDummyInventoryInfoEO> queryListByStandId(String id);
}
@@ -2250,4 +2250,11 @@ public class AuthDummyInventoryInfoEOServiceImpl extends ServiceImpl<AuthDummyIn
return adiiSaveList;
}
@Override
public List<AuthDummyInventoryInfoEO> queryListByStandId(String id) {
QueryWrapper<AuthDummyInventoryInfoEO> queryWrapper = new QueryWrapper<>();
List<AuthDummyInventoryInfoEO> dataList = this.getBaseMapper().queryListByStandId(id);
return dataList;
}
}
@@ -22,11 +22,14 @@ import com.jero.common.constant.enums.YesOrNoEnum;
import com.jero.common.es.JeroElasticsearchTemplate;
import com.jero.common.exception.JeroBootException;
import com.jero.common.system.query.QueryRuleEnum;
import com.jero.common.system.vo.DictModel;
import com.jero.common.system.vo.LoginUser;
import com.jero.common.util.DateUtils;
import com.jero.common.util.oss.CosBootUtil;
import com.jero.generater.modules.online.cgform.entity.OnlCgformField;
import com.jero.generater.modules.online.cgform.service.impl.OnlCgformFieldServiceImpl;
import com.jero.modules.authDummy.entity.AuthDummyInventoryInfoEO;
import com.jero.modules.authDummy.service.IAuthDummyInventoryInfoEOService;
import com.jero.modules.collection.entity.OnlCgformCollection;
import com.jero.modules.collection.service.IOnlCgformCollectionService;
import com.jero.modules.document.entity.BussDocumentLibraryEO;
@@ -45,6 +48,8 @@ import com.jero.modules.document.vo.QueryConditionVO;
import com.jero.modules.domain.entity.DomainUserRel;
import com.jero.modules.domain.service.DomainUserRelService;
import com.jero.modules.domain.service.impl.DomainManageServiceImpl;
import com.jero.modules.dummy.entity.DummyInventoryInfoEO;
import com.jero.modules.dummy.service.IDummyInventoryInfoEOService;
import com.jero.modules.feishu.enums.TemplateInfoEnum2;
import com.jero.modules.feishu.service.IFeishuService;
import com.jero.modules.feishu.vo.FeishuMsgVo;
@@ -59,6 +64,15 @@ import com.jero.modules.oss.service.IOSSFileService;
import com.jero.modules.phone.entity.RecentBrowse;
import com.jero.modules.phone.enums.BrowseTypeEnum;
import com.jero.modules.phone.service.IRecentBrowseService;
import com.jero.modules.project.entity.ProjectCertificationInventoryEO;
import com.jero.modules.project.entity.ProjectLawsInventoryEO;
import com.jero.modules.project.entity.ProjectLibraryBase;
import com.jero.modules.project.enums.CertificationInventoryFlowStatusEnum;
import com.jero.modules.project.enums.ComplianceFlowStatusEnum;
import com.jero.modules.project.service.IProjectCertificationInventoryEOService;
import com.jero.modules.project.service.IProjectLawsInventoryEOService;
import com.jero.modules.project.service.IProjectLibraryBaseService;
import com.jero.modules.project.service.impl.ProjectLawsInventoryEOServiceImpl;
import com.jero.modules.searchcenter.enums.ModuleTypeFlagEnum;
import com.jero.modules.split.common.FileUnZip;
import com.jero.modules.split.entity.SarFileSplitInfoEO;
@@ -71,9 +85,11 @@ import com.jero.modules.system.entity.SysCategory;
import com.jero.modules.system.entity.SysCategoryTreeVO;
import com.jero.modules.system.entity.SysDictItem;
import com.jero.modules.system.entity.SysUser;
import com.jero.modules.system.enums.DicCodeEnum;
import com.jero.modules.system.mapper.SysUserMapper;
import com.jero.modules.system.service.ISysAnnouncementService;
import com.jero.modules.system.service.ISysDepartService;
import com.jero.modules.system.service.ISysDictService;
import com.jero.modules.system.service.ISysUserService;
import com.jero.modules.system.service.impl.SysCategoryServiceImpl;
import com.jero.modules.system.service.impl.SysDictItemServiceImpl;
@@ -200,6 +216,22 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
private IPhasedImplementationDetailsEOService phasedImplementationDetailsEOService;
@Autowired
private IRecentBrowseService recentBrowseService;
@Autowired
private IProjectLawsInventoryEOService projectLawsInventoryEOService;
@Autowired
private IProjectCertificationInventoryEOService projectCertificationInventoryEOService;
@Autowired
private IProjectLibraryBaseService projectLibraryBaseService;
@Autowired
private ISysDictService sysDictService;
@Autowired
private IDummyInventoryInfoEOService dummyInventoryInfoEOService;
@Autowired
private IAuthDummyInventoryInfoEOService authDummyInventoryInfoEOService;
@Value(value = "${jero.path.upload}")
private String uploadpath;
@@ -2414,6 +2446,7 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
throw new JeroBootException("编号已存在不能重复添加");
}
}
//字段属性
List<OnlCgformField> fieldList = onlCgformFieldService.getFieldList(ModuleEnum.DOCUMENT_LIBRARY.getValue());
//普通数据字典
@@ -2812,6 +2845,217 @@ public class BussDocumentLibraryEOServiceImpl extends ServiceImpl<BussDocumentLi
} catch (Exception e) {
log.error("文档库编辑es失败");
}
//如果编辑了编号中英文标题则通知法规清单认证清单市场清单相关人
if(!StringUtils.valueOf(dataList.get(0).get("serial_number")).equals(serialNumber)
||!StringUtils.valueOf(dataList.get(0).get("title")).equals(title)
||!StringUtils.valueOf(dataList.get(0).get("title_en")).equals(titleEn)){
notifyUpdateMsg(id,StringUtils.valueOf(dataList.get(0).get("serial_number")));
}
}
private void addProjectByUser(Map<String, List<String>> user2ProjectMap, String userId, String projectId) {
if (user2ProjectMap.containsKey(userId)) {
List<String> proList = user2ProjectMap.get(userId);
if (!proList.contains(projectId)) {
proList.add(projectId);
}
} else {
List<String> proList = new ArrayList<>();
proList.add(projectId);
user2ProjectMap.put(userId, proList);
}
}
private void notifyUpdateMsg(String id ,String serialNumber) {
Map<String,List<String>> user2ProjectMap = new HashMap<>();
Set<String> projectIds = new HashSet<>();
//法规清单
List<ProjectLawsInventoryEO> pliList = projectLawsInventoryEOService.queryProjectLawsInventoryInfoByStandId(id);
for (ProjectLawsInventoryEO pli : pliList) {
if (!((pli.getDesignFlowStatus().equals(ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| pli.getDesignFlowStatus().equals(ComplianceFlowStatusEnum.UNINVOLVED.getValue()))
&& (pli.getVerifyFlowStatus().equals(ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| pli.getVerifyFlowStatus().equals(ComplianceFlowStatusEnum.UNINVOLVED.getValue())))) {
if(StringUtils.isNotBlank(pli.getRegulationOwnerId())){
addProjectByUser(user2ProjectMap,pli.getRegulationOwnerId(),pli.getProjectLibraryId());
projectIds.add(pli.getProjectLibraryId());
}
if(StringUtils.isNotBlank(pli.getDesignDutyId())){
addProjectByUser(user2ProjectMap,pli.getDesignDutyId(),pli.getProjectLibraryId());
projectIds.add(pli.getProjectLibraryId());
}
if(StringUtils.isNotBlank(pli.getVerifyDutyId())){
addProjectByUser(user2ProjectMap,pli.getVerifyDutyId(),pli.getProjectLibraryId());
projectIds.add(pli.getProjectLibraryId());
}
}
}
//认证清单
List<ProjectCertificationInventoryEO> pciList = projectCertificationInventoryEOService.queryProjectCertificationInventoryByStandId(id);
for (ProjectCertificationInventoryEO pci : pciList) {
if ((!pci.getFlowStatus().equals(CertificationInventoryFlowStatusEnum.REVIEW_AND_PASS.getValue())
|| !pci.getFlowStatus().equals(CertificationInventoryFlowStatusEnum.UNINVOLVED.getValue()))) {
if(StringUtils.isNotBlank(pci.getDutyPerson())){
addProjectByUser(user2ProjectMap,pci.getDutyPerson(),pci.getProjectLibraryId());
projectIds.add(pci.getProjectLibraryId());
}
}
}
Map<String , String> projectNameMap = new HashMap<>();
List<DictModel> regionList = sysDictService.queryDictItemsByCode(DicCodeEnum.REGION.getCode());
List<ProjectLibraryBase> projectList = projectLibraryBaseService.getListByIds(new ArrayList<>(projectIds));
for (ProjectLibraryBase plb : projectList) {
String market = plb.getTargetMarket();
List<String> strlist = new LinkedList<>();
for (String s : market.split(",")) {
List<DictModel> collect = regionList.stream().filter(e -> e.getValue().equals(s)).collect(Collectors.toList());
if (!collect.isEmpty()) {
strlist.add(collect.get(0).getTextEn());
}
}
if (!strlist.isEmpty()) {
market = StringUtils.join(strlist, ",");
}
plb.setTargetMarket(market);
projectNameMap.put(plb.getId(),plb.getShowName());
}
for (String userId : user2ProjectMap.keySet()) {
List<String> userList = new ArrayList<>();
userList.add(userId);
StringBuilder proSb = new StringBuilder();
List<String> projectIdList = user2ProjectMap.get(userId);
for (int i = 0; i < projectIdList.size(); i++) {
if (i == projectIdList.size() - 1) {
proSb.append(projectNameMap.get(projectIdList.get(i)));
} else {
proSb.append(projectNameMap.get(projectIdList.get(i))).append(",");
}
}
String contentInfoFei = "The standard " + serialNumber + " in " + proSb.toString() +
" has been modified, please check in time to confirm the impact of the modification.";
String contentInfoFeiCn = proSb.toString() + " 中的标准 " + serialNumber + " 已被修改,请及时查看确认修改影响。";
try {
//跳转文档详情
String url = backUrl + "/projectLibrary";
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
feishuMsgVo.setTitle(MessageTypeEnum.READ.getNameCn()+"/"+MessageTypeEnum.READ.getName());
feishuMsgVo.setUrl(url);
feishuMsgVo.setContentEn(contentInfoFei);
feishuMsgVo.setContent(contentInfoFeiCn);
Map<String,Object> params = new HashMap<>();
params.put("contentInfoFeiCn",contentInfoFeiCn);
params.put("contentInfoFeiEn",contentInfoFei);
params.put("userIdList",userList);
params.put("back_url",url);
params.put("back_url_phone",backUrlPhone + "/phoneDocumentDetails?id=" + id);
params.put("titleCn",TemplateInfoEnum2.SUBSCRIPTION_INFORM.getNameCn());
params.put("titleEn",TemplateInfoEnum2.SUBSCRIPTION_INFORM.getNameEn());
iFeishuService.sendMessageSubscriptionNotification(TemplateInfoEnum2.SUBSCRIPTION_INFORM.getValue(),params);
} catch (Exception e) {
log.error("文档修改飞书消息推送失败");
}
}
//市场法规清单
Map<String ,List<DummyInventoryInfoEO>> user2DiiMap = new HashMap<>();
List<DummyInventoryInfoEO> diiList = dummyInventoryInfoEOService.queryListByStandId(id);
for (DummyInventoryInfoEO dii : diiList) {
if(user2DiiMap.containsKey(dii.getCreatUser())){
List<DummyInventoryInfoEO> diiEOList = user2DiiMap.get(dii.getCreatUser());
diiEOList.add(dii);
}else{
List<DummyInventoryInfoEO> diiEOList = new ArrayList<>();
diiEOList.add(dii);
user2DiiMap.put(dii.getCreatUser(),diiEOList);
}
}
for (String userId : user2DiiMap.keySet()) {
List<String> userList = new ArrayList<>();
SysUser user = sysUserService.getUserByName(userId);
userList.add(user.getId());
StringBuilder proSb = new StringBuilder();
List<DummyInventoryInfoEO> diiEoList = user2DiiMap.get(userId);
for (int i = 0; i < diiEoList.size(); i++) {
if (i == diiEoList.size() - 1) {
proSb.append(diiEoList.get(i).getDummyInventoryBaseName());
} else {
proSb.append(diiEoList.get(i).getDummyInventoryBaseName()).append(",");
}
}
String contentInfoFei = "The standard " + serialNumber + " in " + proSb.toString() +
" has been modified, please check in time to confirm the impact of the modification.";
String contentInfoFeiCn = proSb.toString() + " 中的标准 " + serialNumber + " 已被修改,请及时查看确认修改影响。";
try {
//跳转文档详情
String url = backUrl + "/virtualList";
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
feishuMsgVo.setTitle(MessageTypeEnum.READ.getNameCn()+"/"+MessageTypeEnum.READ.getName());
feishuMsgVo.setUrl(url);
feishuMsgVo.setContentEn(contentInfoFei);
feishuMsgVo.setContent(contentInfoFeiCn);
Map<String,Object> params = new HashMap<>();
params.put("contentInfoFeiCn",contentInfoFeiCn);
params.put("contentInfoFeiEn",contentInfoFei);
params.put("userIdList",userList);
params.put("back_url",url);
params.put("back_url_phone",backUrlPhone + "/phoneDocumentDetails?id=" + id);
params.put("titleCn",TemplateInfoEnum2.SUBSCRIPTION_INFORM.getNameCn());
params.put("titleEn",TemplateInfoEnum2.SUBSCRIPTION_INFORM.getNameEn());
iFeishuService.sendMessageSubscriptionNotification(TemplateInfoEnum2.SUBSCRIPTION_INFORM.getValue(),params);
} catch (Exception e) {
log.error("文档修改飞书消息推送失败");
}
}
//市场认证清单
Map<String ,List<AuthDummyInventoryInfoEO>> user2AdiiMap = new HashMap<>();
List<AuthDummyInventoryInfoEO> adiiList = authDummyInventoryInfoEOService.queryListByStandId(id);
for (AuthDummyInventoryInfoEO adii : adiiList) {
if(user2AdiiMap.containsKey(adii.getCreatUser())){
List<AuthDummyInventoryInfoEO> adiiEOList = user2AdiiMap.get(adii.getCreatUser());
adiiEOList.add(adii);
}else{
List<AuthDummyInventoryInfoEO> adiiEOList = new ArrayList<>();
adiiEOList.add(adii);
user2AdiiMap.put(adii.getCreatUser(),adiiEOList);
}
}
for (String userId : user2AdiiMap.keySet()) {
List<String> userList = new ArrayList<>();
SysUser user = sysUserService.getUserByName(userId);
userList.add(user.getId());
StringBuilder proSb = new StringBuilder();
List<AuthDummyInventoryInfoEO> diiEoList = user2AdiiMap.get(userId);
for (int i = 0; i < diiEoList.size(); i++) {
if (i == diiEoList.size() - 1) {
proSb.append(diiEoList.get(i).getAuthDummyInventoryBaseName());
} else {
proSb.append(diiEoList.get(i).getAuthDummyInventoryBaseName()).append(",");
}
}
String contentInfoFei = "The standard " + serialNumber + " in " + proSb.toString() +
" has been modified, please check in time to confirm the impact of the modification.";
String contentInfoFeiCn = proSb.toString() + " 中的标准 " + serialNumber + " 已被修改,请及时查看确认修改影响。";
try {
//跳转文档详情
String url = backUrl + "/virtualAuthenticationList";
FeishuMsgVo feishuMsgVo = new FeishuMsgVo();
feishuMsgVo.setTitle(MessageTypeEnum.READ.getNameCn()+"/"+MessageTypeEnum.READ.getName());
feishuMsgVo.setUrl(url);
feishuMsgVo.setContentEn(contentInfoFei);
feishuMsgVo.setContent(contentInfoFeiCn);
Map<String,Object> params = new HashMap<>();
params.put("contentInfoFeiCn",contentInfoFeiCn);
params.put("contentInfoFeiEn",contentInfoFei);
params.put("userIdList",userList);
params.put("back_url",url);
params.put("back_url_phone",backUrlPhone + "/phoneDocumentDetails?id=" + id);
params.put("titleCn",TemplateInfoEnum2.SUBSCRIPTION_INFORM.getNameCn());
params.put("titleEn",TemplateInfoEnum2.SUBSCRIPTION_INFORM.getNameEn());
iFeishuService.sendMessageSubscriptionNotification(TemplateInfoEnum2.SUBSCRIPTION_INFORM.getValue(),params);
} catch (Exception e) {
log.error("文档修改飞书消息推送失败");
}
}
}
private void homeDocumentDynamic(String cut,
@@ -339,6 +339,14 @@ public class DummyInventoryInfoEO implements Serializable {
@TableField(exist = false)
private String firstLevelDutyTerritory;
/**清单名称**/
@TableField(exist = false)
private String dummyInventoryBaseName;
/**清单创建人**/
@TableField(exist = false)
private String creatUser;
@@ -14,4 +14,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
*/
public interface DummyInventoryInfoEOMapper extends BaseMapper<DummyInventoryInfoEO> {
List<DummyInventoryInfoEO> queryListByStandId(String id);
}
@@ -42,4 +42,18 @@
<result column="design_remark" property="designRemark" />
<result column="buss_document_library_id" property="bussDocumentLibraryId" />
</resultMap>
<select id="queryListByStandId" resultType="com.jero.modules.dummy.entity.DummyInventoryInfoEO">
SELECT
dib.`name` as dummyInventoryBaseName,
dib.create_by as creatUser,
dii.*
FROM
dummy_inventory_info dii
LEFT JOIN dummy_inventory_base dib on dii.dummy_inventory_base_id = dib.id
<where>
<if test="id != null and id != '' ">
dii.buss_document_library_id = #{id}
</if>
</where>
</select>
</mapper>
@@ -106,4 +106,6 @@ public interface IDummyInventoryInfoEOService extends IService<DummyInventoryInf
void exportData(HttpServletResponse response,
HttpServletRequest request,
DummyInventoryInfoEO dummyInventoryInfoEO);
List<DummyInventoryInfoEO> queryListByStandId(String id);
}
@@ -3276,4 +3276,10 @@ public class DummyInventoryInfoEOServiceImpl extends ServiceImpl<DummyInventoryI
}
}
@Override
public List<DummyInventoryInfoEO> queryListByStandId(String id) {
QueryWrapper<DummyInventoryInfoEO> queryWrapper = new QueryWrapper<>();
List<DummyInventoryInfoEO> dataList = this.getBaseMapper().queryListByStandId(id);
return dataList;
}
}
@@ -347,4 +347,6 @@ public interface IProjectCertificationInventoryEOService extends IService<Projec
String listPlatform(Map<String, Object> params);
List<ProjectCertificationInventoryEO> connectPlatform(String id,String cut);
List<ProjectCertificationInventoryEO> queryProjectCertificationInventoryByStandId(String id);
}
@@ -104,6 +104,7 @@ public interface IProjectLawsInventoryEOService extends IService<ProjectLawsInve
List<ProjectLawsInventoryEO> queryProjectLawsInventoryInfoById(Map<String, Object> params);
List<ProjectLawsInventoryEO> queryProjectLawsInventoryInfoByStandId(String standId);
void copyInfoByIds(String ids,String operateType);
@@ -7515,25 +7515,12 @@ public class ProjectCertificationInventoryEOServiceImpl extends ServiceImpl<Proj
return projectCertificationInventoryEOList;
}
@Override
public List<ProjectCertificationInventoryEO> queryProjectCertificationInventoryByStandId(String id) {
QueryWrapper<ProjectCertificationInventoryEO> wra = new QueryWrapper<>();
wra.lambda().eq(ProjectCertificationInventoryEO::getBussDocumentLibraryId, id);
return this.list(wra);
}
// @Override
// public void listPlatform(Map<String,Object> params) {
@@ -1560,10 +1560,11 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
List<BussDocumentLibraryEO> docList = bussDocumentLibraryEOService.listByIds(standIdList);
for (ProjectLawsInventoryEO projectLawsInventoryEO : list) {
//处理编号法规清单中若状态为符合时则编号标题不再随文档库变化
if ((!projectLawsInventoryEO.getDesignFlowStatus().equals(ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| !projectLawsInventoryEO.getVerifyFlowStatus().equals(ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| !projectLawsInventoryEO.getDesignFlowStatus().equals(ComplianceFlowStatusEnum.UNINVOLVED.getValue())
|| !projectLawsInventoryEO.getVerifyFlowStatus().equals(ComplianceFlowStatusEnum.UNINVOLVED.getValue()))
if (!((projectLawsInventoryEO.getDesignFlowStatus().equals(ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| projectLawsInventoryEO.getDesignFlowStatus().equals(ComplianceFlowStatusEnum.UNINVOLVED.getValue()))
&&
(projectLawsInventoryEO.getVerifyFlowStatus().equals(ComplianceFlowStatusEnum.CONFORMITY.getValue())
|| projectLawsInventoryEO.getVerifyFlowStatus().equals(ComplianceFlowStatusEnum.UNINVOLVED.getValue())))
&& StringUtils.isNotBlank(projectLawsInventoryEO.getStandId())) {
BussDocumentLibraryEO docObj = null;
for (BussDocumentLibraryEO obj : docList) {
@@ -2993,6 +2994,13 @@ public class ProjectLawsInventoryEOServiceImpl extends ServiceImpl<ProjectLawsIn
return new Result<>().success("调用成功!");
}
@Override
public List<ProjectLawsInventoryEO> queryProjectLawsInventoryInfoByStandId(String standId) {
QueryWrapper<ProjectLawsInventoryEO> wra = new QueryWrapper<>();
wra.lambda().eq(ProjectLawsInventoryEO::getStandId, standId);
return this.list(wra);
}
@Override
public List<ProjectLawsInventoryEO> queryProjectLawsInventoryInfoById(Map<String, Object> params) {