Commit 696f712d authored by “yiyousong”'s avatar “yiyousong”
parents 4906ee9e b0acc940
......@@ -39,4 +39,66 @@ INSERT INTO `mortals_xhx_param` VALUES (null, '应用主题 ', 'App', 'appThemeN
2023-4-12
-- ----------------------------
ALTER TABLE mortals_sys_site_matter ADD COLUMN `hot` tinyint(2) DEFAULT '0' COMMENT '热门(0.否,1.是)' AFTER eventTypeShow;
ALTER TABLE mortals_sys_site_matter ADD COLUMN `display` tinyint(2) DEFAULT '0' COMMENT '显示(0.否,1.是)' AFTER hot;
ALTER TABLE mortals_sys_site_matter ADD COLUMN `display` tinyint(2) DEFAULT '1' COMMENT '显示(0.否,1.是)' AFTER hot;
-- ----------------------------
2023-4-23
-- ----------------------------
ALTER TABLE mortals_sys_site_theme_matter ADD COLUMN `hot` tinyint(2) DEFAULT '0' COMMENT '热门(0.否,1.是)' AFTER userType;
ALTER TABLE mortals_sys_site_theme_matter ADD COLUMN `display` tinyint(2) DEFAULT '1' COMMENT '显示(0.否,1.是)' AFTER hot;
-- ----------------------------
2023-4-25
-- ----------------------------
-- ----------------------------
-- 站点大厅信息表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_sys_site_hall`;
CREATE TABLE mortals_sys_site_hall(
`id` bigint(20) AUTO_INCREMENT COMMENT '序号,主键,自增长',
`siteId` bigint(20) COMMENT '站点ID',
`siteName` varchar(255) COMMENT '站点名称',
`hallName` varchar(256) COMMENT '大厅名称',
`address` varchar(256) COMMENT '地址',
`floor` tinyint(2) DEFAULT '1' COMMENT '楼层',
`build` tinyint(2) DEFAULT '1' COMMENT '楼栋',
`remark` varchar(255) COMMENT '备注',
`createTime` datetime COMMENT '创建时间',
`createUserId` bigint(20) COMMENT '创建用户',
`updateUserId` bigint(20) COMMENT '更新用户',
`updateTime` datetime COMMENT '修改时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='站点大厅信息';
-- ----------------------------
-- 大厅窗口表
-- ----------------------------
DROP TABLE IF EXISTS `mortals_sys_window_hall`;
CREATE TABLE mortals_sys_window_hall(
`id` bigint(20) AUTO_INCREMENT COMMENT '序号,主键,自增长',
`windowId` bigint(20) COMMENT '窗口ID',
`windowName` varchar(255) COMMENT '窗口名称',
`hallId` bigint(20) COMMENT '大厅ID',
`hallName` varchar(255) COMMENT '大厅名称',
`sort` int(4) DEFAULT '0' COMMENT '排序',
`remark` varchar(512) COMMENT '备注',
`createTime` datetime COMMENT '创建时间',
`createUserId` bigint(20) COMMENT '创建用户',
`updateTime` datetime COMMENT '修改时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='大厅窗口';
INSERT INTO `mortals_xhx_resource` VALUES (null, '站点大厅信息-菜单管理-查看', '/site/hall/list,/site/hall/view,/site/hall/info,/site/hall/export,/site/hall/exportExcel,/site/hall/downloadTemplate,/site/hall/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (null, '站点大厅信息-菜单管理-维护', '/site/hall/add,/site/hall/edit,/site/hall/delete,/site/hall/logicDelete,/site/hall/save,/site/hall/importData', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (null, '大厅窗口-菜单管理-查看', '/window/hall/list,/window/hall/view,/window/hall/info,/window/hall/export,/window/hall/exportExcel,/window/hall/downloadTemplate,/window/hall/download', 3, 0, NULL, NULL, NULL, 0);
INSERT INTO `mortals_xhx_resource` VALUES (null, '大厅窗口-菜单管理-维护', '/window/hall/add,/window/hall/edit,/window/hall/delete,/window/hall/logicDelete,/window/hall/save,/window/hall/importData', 3, 0, NULL, NULL, NULL, 0);
-- ----------------------------
2023-5-04
-- ----------------------------
ALTER TABLE mortals_sys_window ADD COLUMN `nameDesc` varchar (256) default "" COMMENT '名称描述' AFTER englishName;
ALTER TABLE mortals_sys_window ADD COLUMN `englishNameDesc` varchar (256) default "" COMMENT '英文名称描述' AFTER nameDesc;
This diff is collapsed.
......@@ -36,9 +36,10 @@
<profiles.nacos.group>DEFAULT_GROUP</profiles.nacos.group>
<profiles.nacos.namespace>smart-gov</profiles.nacos.namespace>
<profiles.log.path>/home/mortals/app/logs</profiles.log.path>
<profiles.log.level>INFO</profiles.log.level>
<profiles.log.level>debug</profiles.log.level>
<package.environment>test</package.environment>
<skipUi>false</skipUi>
<showSql>false</showSql>
</properties>
</profile>
<profile>
......
package com.mortals.xhx.base.framework.filter;
import ch.qos.logback.classic.spi.ILoggingEvent;
import ch.qos.logback.core.filter.Filter;
import ch.qos.logback.core.spi.FilterReply;
import lombok.extern.slf4j.Slf4j;
public class LogFilter extends Filter<ILoggingEvent> {
@Override
public FilterReply decide(ILoggingEvent event) {
if (event.getLoggerName().contains("TaskDaoImpl.getList")) {
return FilterReply.DENY;
}
if(event.getMessage().contains("from mortals_xhx_task as a")){
return FilterReply.DENY;
}
return FilterReply.NEUTRAL;
}
}
/**
* 文件:ResourceDao.java
* 版本:1.0.0
* 日期:
* Copyright &reg;
* All right reserved.
*/
* 文件:ResourceDao.java
* 版本:1.0.0
* 日期:
* Copyright &reg;
* All right reserved.
*/
package com.mortals.xhx.base.system.resource.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.base.system.resource.model.ResourceEntity;
import com.mortals.xhx.module.matter.model.MatterEntity;
import java.util.List;
......@@ -19,12 +20,13 @@ import java.util.List;
* <p>Description: ResourceDao DAO接口 </p>
* <p>Copyright: Copyright &reg; </p>
* <p>Company: </p>
* @author
* @author
* @version 1.0.0
*/
public interface ResourceDao extends ICRUDDao<ResourceEntity,Long> {
public List<ResourceEntity> getListByUserId(Long userId);
public interface ResourceDao extends ICRUDDao<ResourceEntity, Long> {
List<ResourceEntity> getListByUserId(Long userId);
List<ResourceEntity> getAll(int userType);
}
\ No newline at end of file
......@@ -9,6 +9,7 @@ import org.jsoup.Jsoup;
import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;
import org.jsoup.select.Elements;
import org.springframework.util.ObjectUtils;
import javax.xml.xpath.XPath;
import javax.xml.xpath.XPathFactory;
......@@ -286,13 +287,37 @@ public class MatterDetailHtmlParseUtil {
public static Map<String, String> getSfbzMapByHtml(Document dom) {
Map<String, String> resultMap = new HashMap<>();
String baseInfoExp = "//div[@class='section8']//p";
String baseInfoExp1 = "//div[@class='section8']/p";
String baseInfoExp2 = "//*[@class='section8']//div[@class='money cf']//p";
try {
Elements elements = dom.selectXpath(baseInfoExp);
StringBuilder sb = new StringBuilder();
Elements elements = dom.selectXpath(baseInfoExp1);
if (ObjectUtils.isEmpty(elements)) {
Elements elements2 = dom.selectXpath(baseInfoExp2);
for (int i = 0; i < elements2.size(); i++) {
// System.out.println(elements2.get(i).text().trim());
sb.append(elements2.get(i).text().trim());
sb.append(":");
Elements elements3 = dom.selectXpath(String.format("//*[@class='section8']/div[2]/div[4]/p[%s]", i + 1));
////*[@class="section8"]/div[2]/div[4]/p[1]
for (int j = 0; j < elements3.size(); j++) {
// System.out.println(elements3.get(j).text().trim());
sb.append(elements3.get(j).text().trim());
}
sb.append("</br>");
}
} else {
sb.append("该事项无收费标准!");
/* Elements elements4 = dom.selectXpath(baseInfoExp);
for (int i = 0; i < elements4.size(); i++) {
}*/
}
/* StringBuilder sb = new StringBuilder();
for (int i = 0; i < elements.size(); i++) {
sb.append(elements.get(i).text());
}
resultMap.put("sfbz", sb.toString());
}*/
// resultMap.put("sfbz", sb.toString());
/* result = xPath.evaluate(baseInfoExp, dom, XPathConstants.NODESET);
if (result instanceof NodeList) {
NodeList nodeList = (NodeList) result;
......@@ -302,6 +327,8 @@ public class MatterDetailHtmlParseUtil {
}
resultMap.put("sfbz", sb.toString());
}*/
resultMap.put("sfbz", sb.toString());
} catch (Exception e) {
log.error("收费标准xpath解析异常:", e);
}
......@@ -440,7 +467,8 @@ public class MatterDetailHtmlParseUtil {
//String url = "http://www.sczwfw.gov.cn/jiq/front/transition/ywTransToDetail?areaCode=511102000000&itemCode=511A0099100005-511102000000-000-11511002735871990X-1-00&taskType=1&deptCode=11511002735871990X";
//String url = "http://www.sczwfw.gov.cn/jiq/front/transition/ywTransToDetail?areaCode=513426000000&itemCode=511F3000300009-513426000000-000-11513426MB1541028A-1-00&taskType=7&deptCode=009075316";
String url = "http://www.sczwfw.gov.cn/jiq/front/transition/ywTransToDetail?areaCode=511500000000&itemCode=511A0152600000-511500000000-000-511501-7-1-00&taskType=1&deptCode=511501-7";
// String url = "http://www.sczwfw.gov.cn/jiq/front/transition/ywTransToDetail?areaCode=511500000000&itemCode=511A0151400000-511500000000-000-511501-7-1-00&taskType=1&deptCode=511501-7";
String url = "http://www.sczwfw.gov.cn/jiq/front/transition/ywTransToDetail?areaCode=511500000000&itemCode=511A0000400004-511500000000-000-1151120000870212XU-1-00&taskType=1&deptCode=3922757070285361152";
Document dom = MatterDetailHtmlParseUtil.getDomByHtml(url);
Map<String, String> baseInfoMap = MatterDetailHtmlParseUtil.getbaseInfoMapByHtml(dom);
......
package com.mortals.xhx.common.utils;
import com.alibaba.fastjson.JSON;
import org.apache.commons.collections4.CollectionUtils;
import java.util.ArrayList;
import java.util.Collections;
import java.util.List;
import java.util.Set;
import java.util.concurrent.ConcurrentHashMap;
import java.util.function.Function;
import java.util.function.Predicate;
import java.util.stream.Collectors;
import java.util.stream.LongStream;
/**
* @author: zxfei
* @date: 2022/6/28 14:38
* @description: 内存分页
**/
public class MemoryPagination {
/**
* 内存分页
*
* @param records 待分页的数据
* @param pageNum 当前页码
* @param pageSize 每页显示的条数
* @return 分页之后的数据
*/
public static <T> List<T> pagination(List<T> records, int pageNum, int pageSize) {
if (CollectionUtils.isEmpty(records)) {
return Collections.emptyList();
}
int totalCount = records.size();
if(pageSize==-1){
pageSize=totalCount;
}
int remainder = totalCount % pageSize;
int pageCount = (remainder > 0) ? totalCount / pageSize + 1 : totalCount / pageSize;
if (remainder == 0) {
return records.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
} else {
if (pageNum == pageCount) {
return records.stream().skip((pageNum - 1) * pageSize).limit(totalCount).collect(Collectors.toList());
} else {
return records.stream().skip((pageNum - 1) * pageSize).limit(pageSize).collect(Collectors.toList());
}
}
}
/* public static List<SitestatEntity> search(String name, List<SitestatEntity> list){
List<SitestatEntity> results = new ArrayList();
Pattern pattern = Pattern.compile(name,Pattern.CASE_INSENSITIVE);
for(int i=0; i < list.size(); i++){
Matcher matcher = pattern.matcher((list.get(i)).getSiteName());
if(matcher.find()){
results.add(list.get(i));
}
}
return results;
}*/
public static <T> Predicate<T> distinctByKey(Function<? super T, ?> keyExtractor) {
Set<Object> seen = ConcurrentHashMap.newKeySet();
return t -> seen.add(keyExtractor.apply(t));
}
public static void main(String[] args) {
ArrayList<Integer> integers = new ArrayList<>();
for(int i=0;i<10;i++){
integers.add(i);
}
List<Integer> pagination = MemoryPagination.pagination(integers, 1, 10);
System.out.println(JSON.toJSONString(pagination));
}
}
......@@ -18,6 +18,7 @@ import com.mortals.xhx.module.matter.model.MatterQuery;
import com.mortals.xhx.module.matter.service.MatterService;
import com.mortals.xhx.module.site.model.SiteEntity;
import com.mortals.xhx.module.site.model.SiteMatterEntity;
import com.mortals.xhx.module.site.model.SiteMatterQuery;
import com.mortals.xhx.module.site.model.SiteQuery;
import com.mortals.xhx.module.site.service.SiteMatterService;
import com.mortals.xhx.module.site.service.SiteService;
......@@ -97,6 +98,11 @@ public class SyncGovMatterDetailThread implements Runnable {
if (!ObjectUtils.isEmpty(siteEntities)) {
log.info("同步站点事项到站点.....");
for (SiteEntity site : siteEntities) {
//判断是否已经有站点事项,如果有则不添加
int count = siteMatterService.count(new SiteMatterQuery().siteId(site.getId()), null);
if (count > 0) {
continue;
}
List<SiteMatterEntity> siteMatterList = matterEntityList.stream().map(item -> {
return matterService.switchMatterToSiteMatter(item, site, context).getData();
}).filter(f -> f != null).collect(Collectors.toList());
......
......@@ -3,6 +3,7 @@ package com.mortals.xhx.daemon.task;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.service.ITask;
import com.mortals.framework.service.ITaskExcuteService;
import com.mortals.xhx.common.code.SourceEnum;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.service.DeptService;
......@@ -37,7 +38,7 @@ public class StatSiteDeptMatterTaskImpl implements ITaskExcuteService {
log.info("开始同步事项列表!");
List<DeptEntity> deptEntities = deptService.find(new DeptQuery());
for (DeptEntity deptEntity : deptEntities) {
int total = matterService.count(new MatterQuery().deptCode(deptEntity.getDeptNumber()), null);
int total = matterService.count(new MatterQuery().source(SourceEnum.政务网.getValue()).deptCode(deptEntity.getDeptNumber()), null);
if (total > 0) {
DeptEntity deptQuery = new DeptEntity();
deptQuery.setTotal(total);
......@@ -46,7 +47,6 @@ public class StatSiteDeptMatterTaskImpl implements ITaskExcuteService {
condition.setId(deptEntity.getId());
deptService.getDao().update(deptQuery, condition);
// deptService.update(deptEntity, null);
}
}
......
......@@ -19,6 +19,7 @@ import com.mortals.xhx.module.dept.service.DeptService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.boot.autoconfigure.condition.ConditionalOnExpression;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
......@@ -28,7 +29,8 @@ import java.util.List;
* 同步用户
*/
@Slf4j
//@Service("SyncUserTask")
@Service("SyncUserTask")
@ConditionalOnExpression("'${spring.profiles.active}'!='develop'")
public class SyncUserTaskImpl implements ITaskExcuteService {
@Autowired
......
......@@ -3,10 +3,12 @@ package com.mortals.xhx.module.app.service.impl;
import cn.hutool.core.lang.Validator;
import cn.hutool.core.net.url.UrlBuilder;
import cn.hutool.core.util.NumberUtil;
import cn.hutool.core.util.ReUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.core.util.ZipUtil;
import com.alibaba.fastjson.JSON;
import com.google.common.collect.Lists;
import com.google.common.net.InternetDomainName;
import com.mortals.framework.model.DbMatchMode;
import com.google.common.collect.Maps;
......@@ -114,37 +116,48 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
// String domainUrl = GlobalSysInfo.getParamValue(Constant.PARAM_SERVER_HTTP_URL, "http://192.168.0.98:11078");
String domainUrl = "";
if (!ObjectUtils.isEmpty(params.getServerName()) && Validator.isIpv4(params.getServerName())) {
domainUrl = UrlBuilder.ofHttp(params.getServerName()).setPort(params.getServerPort() > 0 ? params.getServerPort() : 11078).build();
domainUrl = StrUtil.sub(domainUrl, 0, domainUrl.length() - 1);
//domainUrl = UrlBuilder.ofHttp(params.getServerName()).setPort(params.getServerPort() > 0 ? params.getServerPort() : 11078).build();
//domainUrl = StrUtil.sub(domainUrl, 0, domainUrl.length() - 1);
}else {
// domainUrl = GlobalSysInfo.getParamValue(Constant.PARAM_SERVER_HTTP_URL, "http://192.168.0.98:11078");
domainUrl= String.format("http://%s:%d",params.getServerName(), params.getServerPort() > 0 ? params.getServerPort() : 11078);
} else {
// domainUrl = GlobalSysInfo.getParamValue(Constant.PARAM_SERVER_HTTP_URL, "http://192.168.0.98:11078");
boolean isDomain = ReUtil.isMatch("^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})*\\.[a-zA-Z]{2,}$", params.getServerName());
if (isDomain) {
domainUrl = String.format("https://%s", params.getServerName());
} else {
domainUrl = "";
}
domainUrl="";
}
if (!ObjectUtils.isEmpty(siteEntity)) {
//请求地址 http://domian/app/siteCode/appcode/html
if(!ObjectUtils.isEmpty(domainUrl)){
item.setCustUrl(UrlBuilder.ofHttp(domainUrl)
.addPath(CUSTAPP_ROOT_PATH)
.addPath(siteEntity.getSiteCode())
.addPath(item.getAppCode())
.addPath(item.getVersion().toString())
.build());
}else{
item.setCustUrl(CUSTAPP_ROOT_PATH+"/"+siteEntity.getSiteCode()+"/"+item.getAppCode()+"/"+item.getVersion());
if (!ObjectUtils.isEmpty(domainUrl)) {
String custUrl = String.format("%s/%s/%s/%s/%s/", domainUrl, CUSTAPP_ROOT_PATH, siteEntity.getSiteCode(), item.getAppCode(), item.getVersion().toString());
item.setCustUrl(custUrl);
// item.setCustUrl(UrlBuilder.ofHttp(domainUrl)
// .addPath(CUSTAPP_ROOT_PATH)
// .addPath(siteEntity.getSiteCode())
// .addPath(item.getAppCode())
// .addPath(item.getVersion().toString())
// .build());
} else {
item.setCustUrl(CUSTAPP_ROOT_PATH + "/" + siteEntity.getSiteCode() + "/" + item.getAppCode() + "/" + item.getVersion()+ "/");
}
} else {
item.setCustUrl("");
}
//构建图标地址
if(!ObjectUtils.isEmpty(domainUrl)){
if (!ObjectUtils.isEmpty(domainUrl)) {
String appIconUrl = String.format("%s/%s", domainUrl, item.getAppIconPath());
item.setAppIconUrl(appIconUrl);
/*
item.setAppIconUrl(UrlBuilder.ofHttp(domainUrl)
.addPath(item.getAppIconPath()).build());
}else{
.addPath(item.getAppIconPath()).build());*/
} else {
item.setAppIconUrl(item.getAppIconPath());
}
......@@ -430,6 +443,11 @@ public class AppServiceImpl extends AbstractCRUDServiceImpl<AppDao, AppEntity, L
}
public static void main(String[] args) {
String domain = "www.example.com";
boolean isDomain = ReUtil.isMatch("^[a-zA-Z0-9][-a-zA-Z0-9]{0,62}(\\.[a-zA-Z0-9][-a-zA-Z0-9]{0,62})*\\.[a-zA-Z]{2,}$", domain);
System.out.println(isDomain); // true
System.out.println(InternetDomainName.isValid(domain));
}
}
\ No newline at end of file
......@@ -35,7 +35,6 @@ public class BusinessController extends BaseCRUDJsonBodyMappingController<Busine
private ParamService paramService;
public BusinessController(){
super.setFormClass(BusinessForm.class);
super.setModuleDesc( "站点业务");
}
......
package com.mortals.xhx.module.business.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.business.model.BusinessEntity;
import com.mortals.xhx.module.business.model.BusinessQuery;
/**
* Business
*
* 站点业务 Form
*
* @author zxfei
* @date 2022-01-13
*/
public class BusinessForm extends BaseCRUDFormLong<BusinessEntity> {
private BusinessEntity entity = new BusinessEntity();
private BusinessQuery query = new BusinessQuery();
public BusinessForm(){
}
@Override
public BusinessEntity getEntity() {
return entity;
}
public void setBusiness(BusinessEntity entity) {
this.entity = entity;
}
@Override
public BusinessQuery getQuery() {
return query;
}
public void setQuery(BusinessQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -6,7 +6,6 @@ import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.framework.web.BasePhpCRUDJsonMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.business.model.BusinessMatterEntity;
import com.mortals.xhx.module.business.model.BusinessMatterQuery;
......@@ -39,7 +38,6 @@ public class BusinessMatterController extends BaseCRUDJsonBodyMappingController<
private ParamService paramService;
public BusinessMatterController() {
super.setFormClass(BusinessMatterForm.class);
super.setModuleDesc("业务事项关联");
}
......
package com.mortals.xhx.module.business.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.business.model.BusinessMatterEntity;
import com.mortals.xhx.module.business.model.BusinessMatterQuery;
/**
* BusinessMatter
*
* 业务事项关联 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class BusinessMatterForm extends BaseCRUDFormLong<BusinessMatterEntity> {
private BusinessMatterEntity entity = new BusinessMatterEntity();
private BusinessMatterQuery query = new BusinessMatterQuery();
public BusinessMatterForm(){
}
@Override
public BusinessMatterEntity getEntity() {
return entity;
}
public void setBusinessMatter(BusinessMatterEntity entity) {
this.entity = entity;
}
@Override
public BusinessMatterQuery getQuery() {
return query;
}
public void setQuery(BusinessMatterQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -125,7 +125,8 @@ public class DeptServiceImpl extends AbstractCRUDCacheServiceImpl<DeptDao, DeptE
for (Map.Entry<String, String> item : data.entrySet()) {
String deptCode = item.getKey();
String deptName = item.getValue();
DeptEntity deptEntity = deptService.selectOne(new DeptQuery().siteId(siteId).deptNumber(deptCode), context);
DeptEntity deptEntity = deptService.getExtCache(deptCode);
// DeptEntity deptEntity = deptService.selectOne(new DeptQuery().siteId(siteId).deptNumber(deptCode), context);
if (ObjectUtils.isEmpty(deptEntity)) {
deptEntity = new DeptEntity();
deptEntity.initAttrValue();
......@@ -137,14 +138,15 @@ public class DeptServiceImpl extends AbstractCRUDCacheServiceImpl<DeptDao, DeptE
deptEntity.setCreateTime(new Date());
deptEntity.setCreateUserId(1L);
deptService.save(deptEntity, context);
} else {
}
/* else {
//更新
deptEntity.setName(deptName);
deptEntity.setSource(SourceEnum.政务网.getValue());
deptEntity.setUpdateTime(new Date());
deptEntity.setUpdateUserId(1L);
deptService.update(deptEntity, context);
}
}*/
sortN++;
}
} else {
......
......@@ -48,7 +48,6 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
private SiteService siteService;
public DeptController() {
super.setFormClass(DeptForm.class);
super.setModuleDesc("部门");
}
......@@ -63,7 +62,7 @@ public class DeptController extends BaseCRUDJsonBodyMappingController<DeptServic
if(!ObjectUtils.isEmpty(query.getFilter())&& YesNoEnum.YES.getValue()==query.getFilter()){
//过滤部门事项数据为0的部门
query.setTotalStart(0);
query.setTotalStart(1);
}
super.doListBefore(query, model, context);
}
......
package com.mortals.xhx.module.dept.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptQuery;
/**
* Dept
*
* 部门 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class DeptForm extends BaseCRUDFormLong<DeptEntity> {
private DeptEntity entity = new DeptEntity();
private DeptQuery query = new DeptQuery();
public DeptForm(){
}
@Override
public DeptEntity getEntity() {
return entity;
}
public void setDept(DeptEntity entity) {
this.entity = entity;
}
@Override
public DeptQuery getQuery() {
return query;
}
public void setQuery(DeptQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class HolidayController extends BaseCRUDJsonBodyMappingController<Holiday
private ParamService paramService;
public HolidayController() {
super.setFormClass(HolidayForm.class);
super.setModuleDesc("节假日");
}
......
package com.mortals.xhx.module.holiday.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.holiday.model.HolidayEntity;
import com.mortals.xhx.module.holiday.model.HolidayQuery;
/**
* Holiday
*
* 节假日 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class HolidayForm extends BaseCRUDFormLong<HolidayEntity> {
private HolidayEntity entity = new HolidayEntity();
private HolidayQuery query = new HolidayQuery();
public HolidayForm(){
}
@Override
public HolidayEntity getEntity() {
return entity;
}
public void setHoliday(HolidayEntity entity) {
this.entity = entity;
}
@Override
public HolidayQuery getQuery() {
return query;
}
public void setQuery(HolidayQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -20,5 +20,8 @@ public interface MatterDao extends ICRUDDao<MatterEntity, Long> {
String SQLID_SUB_LIST = "getSubList";
String SQLID_SUB_COUNT = "getSubListCount";
Result<MatterEntity> getSubList(MatterEntity matterQuery, PageInfo pageInfo);
List<MatterEntity> getMatterListByAreaCode(MatterEntity matterQuery);
}
......@@ -26,6 +26,7 @@ import java.util.List;
public class MatterDaoImpl extends BaseCRUDDaoMybatis<MatterEntity, Long> implements MatterDao {
@Override
public Result<MatterEntity> getSubList(MatterEntity matterQuery, PageInfo pageInfo) {
Result<MatterEntity> result = new Result();
......@@ -49,4 +50,13 @@ public class MatterDaoImpl extends BaseCRUDDaoMybatis<MatterEntity, Long> implem
public int getSubCount(ParamDto paramDto) {
return this.getSqlSession().selectOne(this.getSqlId(SQLID_SUB_COUNT), this.cpyQueryParamDto(paramDto));
}
@Override
public List<MatterEntity> getMatterListByAreaCode(MatterEntity matterQuery) {
ParamDto param = new ParamDto();
param.getCondition().put("areaCode", matterQuery.getAreaCode());
return this.getSqlSession().selectList(this.getSqlId("getMatterListByAreaCode"), param);
}
}
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterAcceptDao;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.model.MatterAcceptEntity;
......@@ -14,6 +16,8 @@ import com.mortals.xhx.module.matter.model.MatterAcceptEntity;
*/
public interface MatterAcceptService extends ICRUDService<MatterAcceptEntity,Long>{
MatterAcceptDao getDao();
void deleteByMatterId(Long matterId, Context context);
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterChargesDao;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.model.MatterChargesEntity;
/**
* MatterChargesService
......@@ -12,6 +14,9 @@ import com.mortals.xhx.module.matter.model.MatterChargesEntity;
*/
public interface MatterChargesService extends ICRUDService<MatterChargesEntity,Long>{
MatterChargesDao getDao();
void deleteByMatterId(Long matterId, Context context);
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterDatumDao;
import com.mortals.xhx.module.matter.dao.MatterDatumFileDao;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.model.MatterDatumFileEntity;
import javax.naming.Context;
......@@ -14,6 +17,8 @@ import javax.naming.Context;
*/
public interface MatterDatumFileService extends ICRUDService<MatterDatumFileEntity,Long>{
MatterDatumFileDao getDao();
void deleteFileByDatumId(Long datumId, Context context);
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterDatumDao;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.model.MatterDatumEntity;
/**
* MatterDatumService
*
* 事项申请材料 service接口
*
* @author zxfei
* @date 2022-01-12
*/
public interface MatterDatumService extends ICRUDService<MatterDatumEntity,Long>{
* MatterDatumService
* <p>
* 事项申请材料 service接口
*
* @author zxfei
* @date 2022-01-12
*/
public interface MatterDatumService extends ICRUDService<MatterDatumEntity, Long> {
MatterDatumDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.model.MatterExtEntity;
/**
* MatterExtService
......@@ -11,4 +12,5 @@ import com.mortals.xhx.module.matter.model.MatterExtEntity;
*/
public interface MatterExtService extends ICRUDService<MatterExtEntity,Long>{
MatterExtDao getDao();
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.dao.MatterFlowlimitDao;
import com.mortals.xhx.module.matter.model.MatterFlowlimitEntity;
/**
* MatterFlowlimitService
......@@ -13,5 +15,7 @@ import com.mortals.xhx.module.matter.model.MatterFlowlimitEntity;
public interface MatterFlowlimitService extends ICRUDService<MatterFlowlimitEntity,Long>{
MatterFlowlimitDao getDao();
void deleteByMatterId(Long matterId, Context context);
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.dao.MatterIntermediaryDao;
import com.mortals.xhx.module.matter.model.MatterIntermediaryEntity;
/**
* MatterIntermediaryService
......@@ -12,5 +14,7 @@ import com.mortals.xhx.module.matter.model.MatterIntermediaryEntity;
*/
public interface MatterIntermediaryService extends ICRUDService<MatterIntermediaryEntity,Long>{
MatterIntermediaryDao getDao();
void deleteByMatterId(Long matterId, Context context);
}
\ No newline at end of file
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.dao.MatterQuestionDao;
import com.mortals.xhx.module.matter.model.MatterQuestionEntity;
/**
* MatterQuestionService
......@@ -12,5 +14,7 @@ import com.mortals.xhx.module.matter.model.MatterQuestionEntity;
*/
public interface MatterQuestionService extends ICRUDService<MatterQuestionEntity,Long>{
MatterQuestionDao getDao();
void deleteByMatterId(Long matterId, Context context);
}
\ No newline at end of file
......@@ -6,6 +6,7 @@ import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterDao;
import com.mortals.xhx.module.matter.model.MatterEntity;
import com.mortals.xhx.module.matter.model.MatterQuery;
import com.mortals.xhx.module.matter.model.vo.MatterInfo;
......@@ -25,6 +26,7 @@ import java.util.Map;
public interface MatterService extends ICRUDService<MatterEntity, Long> {
MatterDao getDao();
/**
* 添加业务到站点
*
......
package com.mortals.xhx.module.matter.service;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.matter.dao.MatterExtDao;
import com.mortals.xhx.module.matter.dao.MatterSetbaseDao;
import com.mortals.xhx.module.matter.model.MatterSetbaseEntity;
import com.mortals.xhx.module.matter.model.MatterSetbaseQuery;
/**
* MatterSetbaseService
*
* 事项设定依据 service接口
*
* @author zxfei
* @date 2022-01-12
*/
public interface MatterSetbaseService extends ICRUDService<MatterSetbaseEntity,Long>{
* MatterSetbaseService
* <p>
* 事项设定依据 service接口
*
* @author zxfei
* @date 2022-01-12
*/
public interface MatterSetbaseService extends ICRUDService<MatterSetbaseEntity, Long> {
MatterSetbaseDao getDao();
void deleteByMatterId(Long matterId, Context context);
......
......@@ -1019,7 +1019,7 @@ public class MatterServiceImpl extends AbstractCRUDServiceImpl<MatterDao, Matter
//根据事项url 获取事项详细信息,构建相关详细信息
String html = null;
try {
Document dom = Jsoup.connect(matterEntity.getUrl()).get();
Document dom = Jsoup.connect(matterEntity.getUrl()).timeout(30*1000).get();
// html = Jsoup.connect(matterEntity.getUrl()).get().body().html();
// html = HttpUtil.get(matterEntity.getUrl());
//System.out.println(html);
......@@ -1199,6 +1199,10 @@ public class MatterServiceImpl extends AbstractCRUDServiceImpl<MatterDao, Matter
}
if (!ObjectUtils.isEmpty(matterExtEntities)) {
//先删除后添加
matterExtService.save(matterExtEntities, null);
}
......
......@@ -26,7 +26,6 @@ public class MatterAcceptController extends BaseCRUDJsonBodyMappingController<Ma
private ParamService paramService;
public MatterAcceptController() {
super.setFormClass(MatterAcceptForm.class);
super.setModuleDesc("事项受理条件");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterAcceptEntity;
import com.mortals.xhx.module.matter.model.MatterAcceptQuery;
/**
* MatterAccept
*
* 事项受理条件 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterAcceptForm extends BaseCRUDFormLong<MatterAcceptEntity> {
private MatterAcceptEntity entity = new MatterAcceptEntity();
private MatterAcceptQuery query = new MatterAcceptQuery();
public MatterAcceptForm(){
}
@Override
public MatterAcceptEntity getEntity() {
return entity;
}
public void setMatterAccept(MatterAcceptEntity entity) {
this.entity = entity;
}
@Override
public MatterAcceptQuery getQuery() {
return query;
}
public void setQuery(MatterAcceptQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class MatterChargesController extends BaseCRUDJsonBodyMappingController<M
private ParamService paramService;
public MatterChargesController() {
super.setFormClass(MatterChargesForm.class);
super.setModuleDesc("事项收费标准");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterChargesEntity;
import com.mortals.xhx.module.matter.model.MatterChargesQuery;
/**
* MatterCharges
*
* 事项收费标准 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterChargesForm extends BaseCRUDFormLong<MatterChargesEntity> {
private MatterChargesEntity entity = new MatterChargesEntity();
private MatterChargesQuery query = new MatterChargesQuery();
public MatterChargesForm(){
}
@Override
public MatterChargesEntity getEntity() {
return entity;
}
public void setMatterCharges(MatterChargesEntity entity) {
this.entity = entity;
}
@Override
public MatterChargesQuery getQuery() {
return query;
}
public void setQuery(MatterChargesQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -52,7 +52,6 @@ public class MatterController extends BaseCRUDJsonBodyMappingController<MatterSe
private SiteThemeService siteThemeService;
public MatterController() {
super.setFormClass(MatterForm.class);
super.setModuleDesc("基础事项");
}
......
......@@ -33,7 +33,6 @@ public class MatterDatumController extends BaseCRUDJsonBodyMappingController<Mat
private MatterDatumFileService matterDatumFileService;
public MatterDatumController() {
super.setFormClass(MatterDatumForm.class);
super.setModuleDesc("事项申请材料");
}
......
......@@ -26,7 +26,6 @@ public class MatterDatumFileController extends BaseCRUDJsonBodyMappingController
private ParamService paramService;
public MatterDatumFileController(){
super.setFormClass(MatterDatumFileForm.class);
super.setModuleDesc( "材料附件");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterDatumFileEntity;
import com.mortals.xhx.module.matter.model.MatterDatumFileQuery;
/**
* MatterDatumFile
*
* 材料附件 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterDatumFileForm extends BaseCRUDFormLong<MatterDatumFileEntity> {
private MatterDatumFileEntity entity = new MatterDatumFileEntity();
private MatterDatumFileQuery query = new MatterDatumFileQuery();
public MatterDatumFileForm(){
}
@Override
public MatterDatumFileEntity getEntity() {
return entity;
}
public void setMatterDatumFile(MatterDatumFileEntity entity) {
this.entity = entity;
}
@Override
public MatterDatumFileQuery getQuery() {
return query;
}
public void setQuery(MatterDatumFileQuery query) {
this.query = query;
}
}
\ No newline at end of file
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterDatumEntity;
import com.mortals.xhx.module.matter.model.MatterDatumQuery;
/**
* MatterDatum
*
* 事项申请材料 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterDatumForm extends BaseCRUDFormLong<MatterDatumEntity> {
private MatterDatumEntity entity = new MatterDatumEntity();
private MatterDatumQuery query = new MatterDatumQuery();
public MatterDatumForm(){
}
@Override
public MatterDatumEntity getEntity() {
return entity;
}
public void setMatterDatum(MatterDatumEntity entity) {
this.entity = entity;
}
@Override
public MatterDatumQuery getQuery() {
return query;
}
public void setQuery(MatterDatumQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class MatterFlowlimitController extends BaseCRUDJsonBodyMappingController
private ParamService paramService;
public MatterFlowlimitController() {
super.setFormClass(MatterFlowlimitForm.class);
super.setModuleDesc("事项办理流程");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterFlowlimitEntity;
import com.mortals.xhx.module.matter.model.MatterFlowlimitQuery;
/**
* MatterFlowlimit
*
* 事项办理流程 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterFlowlimitForm extends BaseCRUDFormLong<MatterFlowlimitEntity> {
private MatterFlowlimitEntity entity = new MatterFlowlimitEntity();
private MatterFlowlimitQuery query = new MatterFlowlimitQuery();
public MatterFlowlimitForm(){
}
@Override
public MatterFlowlimitEntity getEntity() {
return entity;
}
public void setMatterFlowlimit(MatterFlowlimitEntity entity) {
this.entity = entity;
}
@Override
public MatterFlowlimitQuery getQuery() {
return query;
}
public void setQuery(MatterFlowlimitQuery query) {
this.query = query;
}
}
\ No newline at end of file
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterEntity;
import com.mortals.xhx.module.matter.model.MatterQuery;
/**
* Matter
*
* 基础事项 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterForm extends BaseCRUDFormLong<MatterEntity> {
private MatterEntity entity = new MatterEntity();
private MatterQuery query = new MatterQuery();
public MatterForm(){
}
@Override
public MatterEntity getEntity() {
return entity;
}
public void setMatter(MatterEntity entity) {
this.entity = entity;
}
@Override
public MatterQuery getQuery() {
return query;
}
public void setQuery(MatterQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class MatterIntermediaryController extends BaseCRUDJsonBodyMappingControl
private ParamService paramService;
public MatterIntermediaryController() {
super.setFormClass(MatterIntermediaryForm.class);
super.setModuleDesc("事项中介服务");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterIntermediaryEntity;
import com.mortals.xhx.module.matter.model.MatterIntermediaryQuery;
/**
* MatterIntermediary
*
* 事项中介服务 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterIntermediaryForm extends BaseCRUDFormLong<MatterIntermediaryEntity> {
private MatterIntermediaryEntity entity = new MatterIntermediaryEntity();
private MatterIntermediaryQuery query = new MatterIntermediaryQuery();
public MatterIntermediaryForm(){
}
@Override
public MatterIntermediaryEntity getEntity() {
return entity;
}
public void setMatterIntermediary(MatterIntermediaryEntity entity) {
this.entity = entity;
}
@Override
public MatterIntermediaryQuery getQuery() {
return query;
}
public void setQuery(MatterIntermediaryQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class MatterQuestionController extends BaseCRUDJsonBodyMappingController<
private ParamService paramService;
public MatterQuestionController() {
super.setFormClass(MatterQuestionForm.class);
super.setModuleDesc("事项常见问题");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterQuestionEntity;
import com.mortals.xhx.module.matter.model.MatterQuestionQuery;
/**
* MatterQuestion
*
* 事项常见问题 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterQuestionForm extends BaseCRUDFormLong<MatterQuestionEntity> {
private MatterQuestionEntity entity = new MatterQuestionEntity();
private MatterQuestionQuery query = new MatterQuestionQuery();
public MatterQuestionForm(){
}
@Override
public MatterQuestionEntity getEntity() {
return entity;
}
public void setMatterQuestion(MatterQuestionEntity entity) {
this.entity = entity;
}
@Override
public MatterQuestionQuery getQuery() {
return query;
}
public void setQuery(MatterQuestionQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class MatterSetbaseController extends BaseCRUDJsonBodyMappingController<M
private ParamService paramService;
public MatterSetbaseController() {
super.setFormClass(MatterSetbaseForm.class);
super.setModuleDesc("事项设定依据");
}
......
package com.mortals.xhx.module.matter.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.matter.model.MatterSetbaseEntity;
import com.mortals.xhx.module.matter.model.MatterSetbaseQuery;
/**
* MatterSetbase
*
* 事项设定依据 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class MatterSetbaseForm extends BaseCRUDFormLong<MatterSetbaseEntity> {
private MatterSetbaseEntity entity = new MatterSetbaseEntity();
private MatterSetbaseQuery query = new MatterSetbaseQuery();
public MatterSetbaseForm(){
}
@Override
public MatterSetbaseEntity getEntity() {
return entity;
}
public void setMatterSetbase(MatterSetbaseEntity entity) {
this.entity = entity;
}
@Override
public MatterSetbaseQuery getQuery() {
return query;
}
public void setQuery(MatterSetbaseQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -39,7 +39,6 @@ public class ModelController extends BaseCRUDJsonBodyMappingController<ModelServ
private ParamService paramService;
public ModelController() {
super.setFormClass(ModelForm.class);
super.setModuleDesc("模块");
}
......
package com.mortals.xhx.module.model.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.model.model.ModelEntity;
import com.mortals.xhx.module.model.model.ModelQuery;
/**
* Model
*
* 模块 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class ModelForm extends BaseCRUDFormLong<ModelEntity> {
private ModelEntity entity = new ModelEntity();
private ModelQuery query = new ModelQuery();
public ModelForm(){
}
@Override
public ModelEntity getEntity() {
return entity;
}
public void setModel(ModelEntity entity) {
this.entity = entity;
}
@Override
public ModelQuery getQuery() {
return query;
}
public void setQuery(ModelQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -38,7 +38,6 @@ public class ProductController extends BaseCRUDJsonBodyMappingController<Product
private ParamService paramService;
public ProductController(){
super.setFormClass(ProductForm.class);
super.setModuleDesc( "产品");
}
......
package com.mortals.xhx.module.product.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.product.model.ProductEntity;
import com.mortals.xhx.module.product.model.ProductQuery;
/**
* Product
*
* 产品 Form
*
* @author zxfei
* @date 2022-05-24
*/
public class ProductForm extends BaseCRUDFormLong<ProductEntity> {
private ProductEntity entity = new ProductEntity();
private ProductQuery query = new ProductQuery();
public ProductForm(){
}
@Override
public ProductEntity getEntity() {
return entity;
}
public void setProduct(ProductEntity entity) {
this.entity = entity;
}
@Override
public ProductQuery getQuery() {
return query;
}
public void setQuery(ProductQuery query) {
this.query = query;
}
}
\ No newline at end of file
package com.mortals.xhx.module.site.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.site.model.SiteHallEntity;
import java.util.List;
/**
* 站点大厅信息Dao
* 站点大厅信息 DAO接口
*
* @author zxfei
* @date 2023-04-25
*/
public interface SiteHallDao extends ICRUDDao<SiteHallEntity,Long>{
}
package com.mortals.xhx.module.site.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.site.dao.SiteHallDao;
import com.mortals.xhx.module.site.model.SiteHallEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 站点大厅信息DaoImpl DAO接口
*
* @author zxfei
* @date 2023-04-25
*/
@Repository("siteHallDao")
public class SiteHallDaoImpl extends BaseCRUDDaoMybatis<SiteHallEntity,Long> implements SiteHallDao {
}
package com.mortals.xhx.module.site.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.site.model.vo.SiteHallVo;
import lombok.Data;
/**
* 站点大厅信息实体对象
*
* @author zxfei
* @date 2023-04-25
*/
@Data
public class SiteHallEntity extends SiteHallVo {
private static final long serialVersionUID = 1L;
/**
* 站点ID
*/
private Long siteId;
/**
* 站点名称
*/
private String siteName;
/**
* 大厅名称
*/
private String hallName;
/**
* 地址
*/
private String address;
/**
* 楼层
*/
private Integer floor;
/**
* 楼栋
*/
private Integer build;
/**
* 备注
*/
private String remark;
@Override
public int hashCode() {
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
if (obj == null) return false;
if (obj instanceof SiteHallEntity) {
SiteHallEntity tmp = (SiteHallEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
}
}
return false;
}
public void initAttrValue(){
this.siteId = null;
this.siteName = "";
this.hallName = "";
this.address = "";
this.floor = 1;
this.build = 1;
this.remark = "";
}
}
\ No newline at end of file
......@@ -291,7 +291,7 @@ public class SiteMatterEntity extends SiteMatterVo {
this.eventTypeShow = null;
this.source = null;
this.source = 0;
this.deptCode = null;
......
package com.mortals.xhx.module.site.model;
import java.util.List;
import java.util.ArrayList;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.mortals.framework.annotation.Excel;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.site.model.vo.SiteThemeMatterVo;
import lombok.Data;
/**
* 站点主题事项实体对象
*
* @author zxfei
* @date 2022-11-23
*/
* 站点主题事项实体对象
*
* @author zxfei
* @date 2023-04-23
*/
@Data
public class SiteThemeMatterEntity extends SiteThemeMatterVo {
private static final long serialVersionUID = 1L;
/**
* 站点ID
*/
* 站点ID
*/
private Long siteId;
/**
* 站点名称
*/
* 站点名称
*/
private String siteName;
/**
* 事项ID
*/
* 事项ID
*/
private Long matterId;
/**
* 事项名称
*/
* 事项名称
*/
private String matterName;
/**
* 事项编码
*/
* 事项编码
*/
private String matterCode;
/**
* 服务类型(1.公共服务,2.个人服务,3.法人服务)
*/
* 服务类型(1.公共服务,2.个人服务,3.法人服务)
*/
private String userType;
/**
* 主题编码
*/
* 主题编码
*/
private String themeCode;
/**
* 主题名称
*/
* 主题名称
*/
private String themeName;
/**
* 事项来源
*/
* 事项来源
*/
private Integer source;
public SiteThemeMatterEntity(){}
/**
* 获取 站点ID
* @return Long
*/
public Long getSiteId(){
return siteId;
}
/**
* 设置 站点ID
* @param siteId
*/
public void setSiteId(Long siteId){
this.siteId = siteId;
}
/**
* 获取 站点名称
* @return String
*/
public String getSiteName(){
return siteName;
}
/**
* 设置 站点名称
* @param siteName
*/
public void setSiteName(String siteName){
this.siteName = siteName;
}
/**
* 获取 事项ID
* @return Long
*/
public Long getMatterId(){
return matterId;
}
/**
* 设置 事项ID
* @param matterId
*/
public void setMatterId(Long matterId){
this.matterId = matterId;
}
/**
* 获取 事项名称
* @return String
*/
public String getMatterName(){
return matterName;
}
/**
* 设置 事项名称
* @param matterName
*/
public void setMatterName(String matterName){
this.matterName = matterName;
}
/**
* 获取 事项编码
* @return String
*/
public String getMatterCode(){
return matterCode;
}
/**
* 设置 事项编码
* @param matterCode
*/
public void setMatterCode(String matterCode){
this.matterCode = matterCode;
}
* 热门(0.否,1.是)
*/
private Integer hot;
/**
* 获取 服务类型(1.公共服务,2.个人服务,3.法人服务)
* @return String
*/
public String getUserType(){
return userType;
}
/**
* 设置 服务类型(1.公共服务,2.个人服务,3.法人服务)
* @param userType
*/
public void setUserType(String userType){
this.userType = userType;
}
/**
* 获取 主题编码
* @return String
*/
public String getThemeCode(){
return themeCode;
}
/**
* 设置 主题编码
* @param themeCode
*/
public void setThemeCode(String themeCode){
this.themeCode = themeCode;
}
/**
* 获取 主题名称
* @return String
*/
public String getThemeName(){
return themeName;
}
/**
* 设置 主题名称
* @param themeName
*/
public void setThemeName(String themeName){
this.themeName = themeName;
}
/**
* 获取 事项来源
* @return Integer
*/
public Integer getSource(){
return source;
}
/**
* 设置 事项来源
* @param source
*/
public void setSource(Integer source){
this.source = source;
}
* 显示(0.否,1.是)
*/
private Integer display;
@Override
public int hashCode() {
return this.getId().hashCode();
return this.getId().hashCode();
}
@Override
public boolean equals(Object obj) {
......@@ -196,44 +70,34 @@ public class SiteThemeMatterEntity extends SiteThemeMatterVo {
if (obj instanceof SiteThemeMatterEntity) {
SiteThemeMatterEntity tmp = (SiteThemeMatterEntity) obj;
if (this.getId() == tmp.getId()) {
return true;
return true;
}
}
return false;
}
public String toString(){
StringBuilder sb = new StringBuilder("");
sb.append(",siteId:").append(getSiteId());
sb.append(",siteName:").append(getSiteName());
sb.append(",matterId:").append(getMatterId());
sb.append(",matterName:").append(getMatterName());
sb.append(",matterCode:").append(getMatterCode());
sb.append(",userType:").append(getUserType());
sb.append(",themeCode:").append(getThemeCode());
sb.append(",themeName:").append(getThemeName());
sb.append(",source:").append(getSource());
return sb.toString();
}
public void initAttrValue(){
this.siteId = null;
this.siteId = null;
this.siteName = "";
this.matterId = null;
this.siteName = null;
this.matterName = "";
this.matterId = null;
this.matterCode = null;
this.matterName = null;
this.userType = null;
this.matterCode = null;
this.themeCode = "";
this.userType = null;
this.themeName = "";
this.themeCode = null;
this.source = 1;
this.themeName = null;
this.hot = 0;
this.source = null;
this.display = 1;
}
}
\ No newline at end of file
package com.mortals.xhx.module.site.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.site.model.SiteHallEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
/**
* 站点大厅信息视图对象
*
* @author zxfei
* @date 2023-04-25
*/
@Data
public class SiteHallVo extends BaseEntityLong {
}
\ No newline at end of file
package com.mortals.xhx.module.site.service;
import com.mortals.framework.common.Rest;
import com.mortals.framework.model.Context;
import com.mortals.framework.service.ICRUDService;
import com.mortals.xhx.module.business.model.BusinessEntity;
import com.mortals.xhx.module.site.model.SiteHallEntity;
import com.mortals.xhx.module.site.dao.SiteHallDao;
import org.springframework.web.bind.annotation.RequestBody;
import java.util.List;
/**
* SiteHallService
* <p>
* 站点大厅信息 service接口
*
* @author zxfei
* @date 2023-04-25
*/
public interface SiteHallService extends ICRUDService<SiteHallEntity, Long> {
SiteHallDao getDao();
Rest<List<BusinessEntity>> getBusinessByHall(SiteHallEntity siteHall, Context context);
}
\ No newline at end of file
......@@ -6,7 +6,9 @@ import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.framework.service.impl.AbstractCRUDCacheServiceImpl;
import com.mortals.framework.utils.PageUtils;
import com.mortals.xhx.common.code.IsBusinessEnum;
import com.mortals.xhx.common.utils.MemoryPagination;
import com.mortals.xhx.module.business.model.BusinessEntity;
import com.mortals.xhx.module.business.model.BusinessMatterEntity;
import com.mortals.xhx.module.business.model.BusinessMatterQuery;
......@@ -53,6 +55,10 @@ public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBu
*/
@Override
protected SiteBusinessEntity findBefore(SiteBusinessEntity params, PageInfo pageInfo, Context context) throws AppException {
//查询所有
pageInfo.setCurrPage(1);
pageInfo.setPrePageResult(-1);
if (!ObjectUtils.isEmpty(params.getIdNotList())) {
Set<Long> notIdSet = params.getIdNotList().stream().collect(Collectors.toSet());
//排除掉了父级,但是子集存在,需要吧父id排除到notlist外
......@@ -85,6 +91,8 @@ public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBu
@Override
protected void findAfter(SiteBusinessEntity params, PageInfo pageInfo, Context context, List<SiteBusinessEntity> list) throws AppException {
//重新内存分页
list = MemoryPagination.pagination(list, params.getSize() == -1 ? list.size() : params.getSize(), params.getPage());
if (!ObjectUtils.isEmpty(params.getIdNotList())) {
//排除掉已经存在的ids
log.info("idNotList:{}", JSON.toJSONString(params.getIdNotList()));
......@@ -172,19 +180,19 @@ public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBu
SiteBusinessEntity siteBusinessEntity = this.get(item);
return this.find(new SiteBusinessQuery().parentId(siteBusinessEntity.getId())).stream();
}).collect(Collectors.toList());
log.info("delete childs list:{}",JSON.toJSONString(childs));
Long[] childIds = childs.stream().map(item->item.getId()).toArray(Long[]::new);
log.info("delete childs list:{}", JSON.toJSONString(childs));
Long[] childIds = childs.stream().map(item -> item.getId()).toArray(Long[]::new);
this.getDao().delete(childIds);
Long[] bussinessIds = childs.stream().map(item->item.getBusinessId()).toArray(Long[]::new);
log.info("childBussinessIds:{}",JSON.toJSONString(bussinessIds));
if(!ObjectUtils.isEmpty(bussinessIds)){
businessService.remove(bussinessIds,context);
Long[] bussinessIds = childs.stream().map(item -> item.getBusinessId()).toArray(Long[]::new);
log.info("childBussinessIds:{}", JSON.toJSONString(bussinessIds));
if (!ObjectUtils.isEmpty(bussinessIds)) {
businessService.remove(bussinessIds, context);
}
Long[] mainIds = this.get(ids, context).stream().map(item -> item.getBusinessId()).toArray(Long[]::new);
if(!ObjectUtils.isEmpty(mainIds)){
if (!ObjectUtils.isEmpty(mainIds)) {
//删除
businessService.remove(mainIds,context);
businessService.remove(mainIds, context);
}
}
......
package com.mortals.xhx.module.site.service.impl;
import com.mortals.framework.common.Rest;
import com.mortals.xhx.module.business.model.BusinessEntity;
import com.mortals.xhx.module.business.model.BusinessQuery;
import com.mortals.xhx.module.business.service.BusinessService;
import com.mortals.xhx.module.site.model.SiteBusinessQuery;
import com.mortals.xhx.module.site.service.SiteBusinessService;
import com.mortals.xhx.module.window.model.WindowBusinessQuery;
import com.mortals.xhx.module.window.model.WindowHallEntity;
import com.mortals.xhx.module.window.model.WindowHallQuery;
import com.mortals.xhx.module.window.service.WindowBusinessService;
import com.mortals.xhx.module.window.service.WindowHallService;
import org.checkerframework.checker.units.qual.A;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.module.site.dao.SiteHallDao;
import com.mortals.xhx.module.site.model.SiteHallEntity;
import com.mortals.xhx.module.site.service.SiteHallService;
import org.springframework.util.ObjectUtils;
import java.util.List;
import java.util.stream.Collectors;
/**
* SiteHallService
* 站点大厅信息 service实现
*
* @author zxfei
* @date 2023-04-25
*/
@Service("siteHallService")
public class SiteHallServiceImpl extends AbstractCRUDServiceImpl<SiteHallDao, SiteHallEntity, Long> implements SiteHallService {
@Autowired
private WindowHallService windowHallService;
@Autowired
private WindowBusinessService windowBusinessService;
@Autowired
private SiteBusinessService siteBusinessService;
@Autowired
private BusinessService businessService;
/**
* @param entity
* @param context
* @throws AppException
*/
@Override
protected void updateAfter(SiteHallEntity entity, Context context) throws AppException {
super.updateAfter(entity, context);
WindowHallEntity condition = new WindowHallEntity();
condition.setHallId(entity.getId());
WindowHallEntity windowHallEntity = new WindowHallEntity();
windowHallEntity.setHallName(entity.getHallName());
windowHallService.getDao().update(windowHallEntity, condition);
}
/**
* @param siteHall
* @param context
* @return
*/
@Override
public Rest<List<BusinessEntity>> getBusinessByHall(SiteHallEntity siteHall, Context context) {
if (ObjectUtils.isEmpty(siteHall.getId())) {
return Rest.fail("大厅ID不能为空!");
}
List<Long> windowIds = windowHallService.find(new WindowHallQuery().hallId(siteHall.getId())).parallelStream().map(i -> i.getWindowId()).distinct().collect(Collectors.toList());
if (ObjectUtils.isEmpty(windowIds)) {
return Rest.fail("窗口list不能为空!");
}
WindowBusinessQuery windowBusinessQuery = new WindowBusinessQuery();
windowBusinessQuery.setWindowIdList(windowIds);
List<Long> siteBusinessIdList = windowBusinessService.find(windowBusinessQuery).parallelStream().map(i -> i.getSiteBusinessId()).distinct().collect(Collectors.toList());
if (ObjectUtils.isEmpty(siteBusinessIdList)) {
return Rest.fail("站点业务list不能为空!");
}
SiteBusinessQuery siteBusinessQuery = new SiteBusinessQuery();
siteBusinessQuery.setIdList(siteBusinessIdList);
List<Long> businessIdList = siteBusinessService.find(siteBusinessQuery).parallelStream().map(i -> i.getBusinessId()).distinct().collect(Collectors.toList());
if (ObjectUtils.isEmpty(businessIdList)) {
return Rest.fail("业务list不能为空!");
}
BusinessQuery businessQuery = new BusinessQuery();
businessQuery.setIdList(businessIdList);
List<BusinessEntity> businessEntities = businessService.find(businessQuery);
return Rest.ok(businessEntities);
}
}
\ No newline at end of file
......@@ -6,6 +6,10 @@ import com.mortals.framework.model.PageInfo;
import com.mortals.xhx.module.matter.model.MatterEntity;
import com.mortals.xhx.module.matter.model.MatterQuery;
import com.mortals.xhx.module.matter.service.MatterService;
import com.mortals.xhx.module.site.model.SiteThemeMatterEntity;
import com.mortals.xhx.module.site.model.SiteThemeMatterQuery;
import com.mortals.xhx.module.site.service.SiteThemeMatterService;
import com.mortals.xhx.module.site.service.SiteThemeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
......@@ -31,10 +35,12 @@ public class SiteMatterServiceImpl extends AbstractCRUDServiceImpl<SiteMatterDao
@Autowired
private MatterService matterService;
@Autowired
private SiteThemeMatterService siteThemeMatterService;
@Override
protected void findAfter(SiteMatterEntity params, PageInfo pageInfo, Context context, List<SiteMatterEntity> list) throws AppException {
// List<Long> matterIdlist = list.parallelStream().map(item -> item.getMatterId()).collect(Collectors.toList());
// List<Long> matterIdlist = list.parallelStream().map(item -> item.getMatterId()).collect(Collectors.toList());
//Map<Long, MatterEntity> matterEntityMap = matterService.find(new MatterQuery().idList(matterIdlist)).parallelStream().collect(Collectors.toMap(x -> x.getId(), y -> y, (o, n) -> n));
list.forEach(item -> {
if (!ObjectUtils.isEmpty(item.getMatterId())) {
......@@ -69,6 +75,28 @@ public class SiteMatterServiceImpl extends AbstractCRUDServiceImpl<SiteMatterDao
matterService.update(matterEntity, context);
}
}
SiteThemeMatterEntity siteThemeMatterEntity = siteThemeMatterService.selectOne(new SiteThemeMatterQuery().matterId(entity.getMatterId()));
if (!ObjectUtils.isEmpty(siteThemeMatterEntity)) {
siteThemeMatterEntity.setHot(entity.getHot());
siteThemeMatterEntity.setDisplay(entity.getDisplay());
}
}
/**
* @param entity
* @param context
* @throws AppException
*/
@Override
protected void saveBefore(SiteMatterEntity entity, Context context) throws AppException {
super.saveBefore(entity, context);
SiteThemeMatterEntity siteThemeMatterEntity = siteThemeMatterService.selectOne(new SiteThemeMatterQuery().matterId(entity.getMatterId()));
if (!ObjectUtils.isEmpty(siteThemeMatterEntity)) {
siteThemeMatterEntity.setHot(entity.getHot());
siteThemeMatterEntity.setDisplay(entity.getDisplay());
}
}
@Override
......
......@@ -403,7 +403,6 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
PageInfo pageInfo = new PageInfo();
pageInfo.setCurrPage(1);
pageInfo.setPrePageResult(10);
return siteEntities;
......@@ -466,7 +465,7 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
areaQuery.setPid(areaEntity.getIid());
List<AreaEntity> childList = areaService.find(areaQuery, context);
for (AreaEntity child : childList) {
siteAreaVo = new SiteAreaVo();
siteAreaVo = new SiteAreaVo();
siteAreaVo.setAreaCode(child.getAreaCode());
siteAreaVo.setAreaName(child.getName());
......@@ -480,7 +479,7 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
if (!ObjectUtils.isEmpty(siteEntities)) {
siteAreaVo.setSiteList(siteEntities);
//map.put(child.getName(), siteEntities);
}else{
} else {
//没有站点
siteAreaVo.setSiteList(Collections.EMPTY_LIST);
}
......@@ -502,14 +501,14 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
query.setAreaLevel(siteEntity.getAreaLevel());
}
}
//获取所有层级的区域
//获取所有层级的区域
List<AreaEntity> areaEntities = areaService.find(new AreaQuery().areaLevel(query.getAreaLevel()));
List<SiteEntity> list = new ArrayList<>();
for (AreaEntity areaEntity : areaEntities) {
List<SiteEntity> siteEntityList = this.find(new SiteQuery().areaCode(areaEntity.getAreaCode()));
if(!ObjectUtils.isEmpty(siteEntityList)){
if (!ObjectUtils.isEmpty(siteEntityList)) {
list.addAll(siteEntityList);
}
}
......@@ -628,6 +627,7 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
//String dxType = AreaLevelDxTypeEnum.getByValue(areaEntity == null ? 2 : areaEntity.getAreaLevel()).getDesc();
// String dxType="2";
//String dxType = "3";
log.info("抓取事项开始");
List<MatterEntity> govMatterList = new ArrayList<>();
List<DeptEntity> deptEntities = deptService.find(new DeptQuery().siteId(siteEntity.getId()).source(0));
for (DeptEntity deptEntity : deptEntities) {
......@@ -643,6 +643,7 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
govMatterList.addAll(deptMatterList);
}
}
log.info("抓取事项结束");
/* HashMap<String, String> params = new HashMap<>();
params.put("dxType", dxType);
params.put("areaCode", siteEntity.getAreaCode());
......@@ -666,11 +667,40 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
List<MatterEntity> mattersTwo = this.getMatters(params, context);
govMatterList.addAll(mattersTwo);*/
List<MatterEntity> localMatterList = matterService.find(new MatterQuery().areaCode(siteEntity.getAreaCode()));
List<MatterEntity> subList = this.subList(govMatterList, localMatterList);
// new MatterQuery().setMatterNoNotList();
// List<MatterEntity> localMatterList = matterService.find(new MatterQuery().areaCode(siteEntity.getAreaCode()));
//HashSet<String> matterNoSet = new HashSet<>();
Set<String> matterNoSet = matterService.getDao().getMatterListByAreaCode(new MatterQuery().areaCode(siteEntity.getAreaCode())).parallelStream().map(i->i.getMatterNo()).collect(Collectors.toSet());
/* Integer page = 1;
Integer size = 200;
PageInfo pageInfo = new PageInfo();
pageInfo.setCountPage(false);
while (true) {
pageInfo.setCurrPage(page);
pageInfo.setPrePageResult(size);
Result<MatterEntity> matterEntityResult = matterService.find(new MatterQuery().areaCode(siteEntity.getAreaCode()), pageInfo, context);
if (ObjectUtils.isEmpty(matterEntityResult.getList())) {
break;
}
Set<String> collect = matterEntityResult.getList().parallelStream().map(i -> i.getMatterNo()).collect(Collectors.toSet());
matterNoSet.addAll(collect);
page++;
log.info("page:{},size:{}", page, collect.size());
}*/
log.info("计算差集");
// List<MatterEntity> subList = this.subList(govMatterList, localMatterList);
List<MatterEntity> subList = this.subListSet(govMatterList, matterNoSet);
log.info("抓取事项总数:{}需要添加事项数量:{}", govMatterList.size(), subList.size());
subList = subList.stream().distinct().collect(Collectors.toList());
log.info("需要添加事项过滤后数量:{}" , subList.size());
log.info("需要添加事项过滤后数量:{}", subList.size());
//差集进行插入并更新详细数据
if (!ObjectUtils.isEmpty(subList)) {
for (MatterEntity matterEntity : subList) {
......@@ -736,5 +766,10 @@ public class SiteServiceImpl extends AbstractCRUDCacheServiceImpl<SiteDao, SiteE
return firstList.parallelStream().filter(item -> !secondSet.contains(item.getMatterNo())).collect(Collectors.toList());
}
public List<MatterEntity> subListSet(List<MatterEntity> firstList, Set<String> secondSet) {
// Set<String> secondSet = secondList.parallelStream().map(e -> e.getMatterNo()).collect(Collectors.toSet());
return firstList.parallelStream().filter(item -> !secondSet.contains(item.getMatterNo())).collect(Collectors.toList());
}
}
\ No newline at end of file
......@@ -39,7 +39,6 @@ public class SiteBusinessController extends BaseCRUDJsonBodyMappingController<Si
private ParamService paramService;
public SiteBusinessController() {
super.setFormClass(SiteBusinessForm.class);
super.setModuleDesc("站点事项");
}
......@@ -58,11 +57,11 @@ public class SiteBusinessController extends BaseCRUDJsonBodyMappingController<Si
@PostMapping("list/exclude")
public String excludeList(SiteBusinessForm form) {
public String excludeList(SiteBusinessEntity query) {
Map<String, Object> model = new HashMap<>();
JSONObject ret = new JSONObject();
String busiDesc = "查询" + this.getModuleDesc();
Long id = form.getId()[0];
Long id = query.getId();
int code = VALUE_RESULT_SUCCESS;
try {
List<SiteBusinessEntity> collect = this.service.find(new SiteBusinessQuery()).stream().map(item -> {
......@@ -107,7 +106,6 @@ public class SiteBusinessController extends BaseCRUDJsonBodyMappingController<Si
}
/**
* 查询站点业务扁平结构
*/
......
package com.mortals.xhx.module.site.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.site.model.SiteBusinessEntity;
import com.mortals.xhx.module.site.model.SiteBusinessQuery;
/**
* SiteBusiness
*
* 站点事项 Form
*
* @author zxfei
* @date 2022-01-13
*/
public class SiteBusinessForm extends BaseCRUDFormLong<SiteBusinessEntity> {
private SiteBusinessEntity entity = new SiteBusinessEntity();
private SiteBusinessQuery query = new SiteBusinessQuery();
public SiteBusinessForm(){
}
@Override
public SiteBusinessEntity getEntity() {
return entity;
}
public void setSiteBusiness(SiteBusinessEntity entity) {
this.entity = entity;
}
@Override
public SiteBusinessQuery getQuery() {
return query;
}
public void setQuery(SiteBusinessQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -70,7 +70,6 @@ public class SiteController extends BaseCRUDJsonBodyMappingController<SiteServic
private AreaService areaService;
public SiteController() {
super.setFormClass(SiteForm.class);
super.setModuleDesc("站点");
}
......
package com.mortals.xhx.module.site.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.site.model.SiteEntity;
import com.mortals.xhx.module.site.model.SiteQuery;
/**
* Site
*
* 站点 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class SiteForm extends BaseCRUDFormLong<SiteEntity> {
private SiteEntity entity = new SiteEntity();
private SiteQuery query = new SiteQuery();
public SiteForm(){
}
@Override
public SiteEntity getEntity() {
return entity;
}
public void setSite(SiteEntity entity) {
this.entity = entity;
}
@Override
public SiteQuery getQuery() {
return query;
}
public void setQuery(SiteQuery query) {
this.query = query;
}
}
\ No newline at end of file
package com.mortals.xhx.module.site.web;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.base.system.param.service.ParamService;
import com.mortals.xhx.module.business.model.BusinessEntity;
import com.mortals.xhx.module.site.model.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.mortals.framework.model.Context;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import com.mortals.framework.web.BaseCRUDJsonBodyMappingController;
import com.mortals.xhx.module.site.service.SiteHallService;
import org.apache.commons.lang3.ArrayUtils;
import com.mortals.framework.util.StringUtils;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
import com.alibaba.fastjson.JSONObject;
import java.util.Arrays;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import static com.mortals.framework.ap.SysConstains.*;
/**
* 站点大厅信息
*
* @author zxfei
* @date 2023-04-25
*/
@RestController
@RequestMapping("site/hall")
public class SiteHallController extends BaseCRUDJsonBodyMappingController<SiteHallService, SiteHallEntity, Long> {
@Autowired
private ParamService paramService;
public SiteHallController() {
super.setModuleDesc("站点大厅信息");
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "floor", paramService.getParamBySecondOrganize("SiteHall", "floor"));
this.addDict(model, "build", paramService.getParamBySecondOrganize("SiteHall", "build"));
super.init(model, context);
}
/**
* 根据大厅查询所属业务
*/
@PostMapping(value = "getBusinessByHall")
@UnAuth
public Rest<Object> getBusinessByHall(@RequestBody SiteHallEntity siteHall) {
Rest<Object> ret = new Rest();
Map<String, Object> model = new HashMap();
String busiDesc = "根据大厅查询所属业务";
int code = VALUE_RESULT_SUCCESS;
try {
Rest<List<BusinessEntity>> rest = this.service.getBusinessByHall(siteHall, getContext());
recordSysLog(request, busiDesc + " 【成功】");
model.put(KEY_RESULT_DATA, rest.getData());
model.put("message_info", busiDesc + "成功");
} catch (Exception e) {
log.error("获取异常", e);
code = VALUE_RESULT_FAILURE;
this.doException(this.request, busiDesc, model, e);
}
ret.setCode(code);
ret.setData(model);
ret.setMsg(model.get("message_info") == null ? "" : model.remove("message_info").toString());
return ret;
}
}
\ No newline at end of file
......@@ -29,7 +29,6 @@ public class SiteMatterController extends BaseCRUDJsonBodyMappingController<Site
private ParamService paramService;
public SiteMatterController() {
super.setFormClass(SiteMatterForm.class);
super.setModuleDesc("站点事项");
}
......
package com.mortals.xhx.module.site.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.site.model.SiteMatterEntity;
import com.mortals.xhx.module.site.model.SiteMatterQuery;
/**
* SiteMatter
*
* 站点事项 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class SiteMatterForm extends BaseCRUDFormLong<SiteMatterEntity> {
private SiteMatterEntity entity = new SiteMatterEntity();
private SiteMatterQuery query = new SiteMatterQuery();
public SiteMatterForm(){
}
@Override
public SiteMatterEntity getEntity() {
return entity;
}
public void setSiteMatter(SiteMatterEntity entity) {
this.entity = entity;
}
@Override
public SiteMatterQuery getQuery() {
return query;
}
public void setQuery(SiteMatterQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -23,7 +23,6 @@ public class SiteModelController extends BaseCRUDJsonBodyMappingController<SiteM
private ParamService paramService;
public SiteModelController() {
super.setFormClass(SiteModelForm.class);
super.setModuleDesc("站点模块");
}
}
\ No newline at end of file
package com.mortals.xhx.module.site.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.site.model.SiteModelEntity;
import com.mortals.xhx.module.site.model.SiteModelQuery;
/**
* SiteModel
*
* 站点模块 Form
*
* @author zxfei
* @date 2022-01-10
*/
public class SiteModelForm extends BaseCRUDFormLong<SiteModelEntity> {
private SiteModelEntity entity = new SiteModelEntity();
private SiteModelQuery query = new SiteModelQuery();
public SiteModelForm(){
}
@Override
public SiteModelEntity getEntity() {
return entity;
}
public void setSiteModel(SiteModelEntity entity) {
this.entity = entity;
}
@Override
public SiteModelQuery getQuery() {
return query;
}
public void setQuery(SiteModelQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -57,7 +57,6 @@ public class SkinBaseController extends BaseCRUDJsonBodyMappingController<SkinBa
private SkinFieldService skinFieldService;
public SkinBaseController(){
super.setFormClass(SkinBaseForm.class);
super.setModuleDesc( "系统基础皮肤");
}
......
package com.mortals.xhx.module.skin.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.skin.model.SkinBaseEntity;
import com.mortals.xhx.module.skin.model.SkinBaseQuery;
/**
* SkinBase
*
* 系统基础皮肤 Form
*
* @author zxfei
* @date 2022-05-24
*/
public class SkinBaseForm extends BaseCRUDFormLong<SkinBaseEntity> {
private SkinBaseEntity entity = new SkinBaseEntity();
private SkinBaseQuery query = new SkinBaseQuery();
public SkinBaseForm(){
}
@Override
public SkinBaseEntity getEntity() {
return entity;
}
public void setSkinBase(SkinBaseEntity entity) {
this.entity = entity;
}
@Override
public SkinBaseQuery getQuery() {
return query;
}
public void setQuery(SkinBaseQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -38,7 +38,6 @@ public class SkinCategoryController extends BaseCRUDJsonBodyMappingController<Sk
private ParamService paramService;
public SkinCategoryController(){
super.setFormClass(SkinCategoryForm.class);
super.setModuleDesc( "系统皮肤分类");
}
......
package com.mortals.xhx.module.skin.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.skin.model.SkinCategoryEntity;
import com.mortals.xhx.module.skin.model.SkinCategoryQuery;
/**
* SkinCategory
*
* 系统皮肤分类 Form
*
* @author zxfei
* @date 2022-05-24
*/
public class SkinCategoryForm extends BaseCRUDFormLong<SkinCategoryEntity> {
private SkinCategoryEntity entity = new SkinCategoryEntity();
private SkinCategoryQuery query = new SkinCategoryQuery();
public SkinCategoryForm(){
}
@Override
public SkinCategoryEntity getEntity() {
return entity;
}
public void setSkinCategory(SkinCategoryEntity entity) {
this.entity = entity;
}
@Override
public SkinCategoryQuery getQuery() {
return query;
}
public void setQuery(SkinCategoryQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -38,7 +38,6 @@ public class SkinFieldController extends BaseCRUDJsonBodyMappingController<SkinF
private ParamService paramService;
public SkinFieldController(){
super.setFormClass(SkinFieldForm.class);
super.setModuleDesc( "皮肤属性字段配置");
}
......
package com.mortals.xhx.module.skin.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.skin.model.SkinFieldEntity;
import com.mortals.xhx.module.skin.model.SkinFieldQuery;
/**
* SkinField
*
* 皮肤属性字段配置 Form
*
* @author zxfei
* @date 2022-05-24
*/
public class SkinFieldForm extends BaseCRUDFormLong<SkinFieldEntity> {
private SkinFieldEntity entity = new SkinFieldEntity();
private SkinFieldQuery query = new SkinFieldQuery();
public SkinFieldForm(){
}
@Override
public SkinFieldEntity getEntity() {
return entity;
}
public void setSkinField(SkinFieldEntity entity) {
this.entity = entity;
}
@Override
public SkinFieldQuery getQuery() {
return query;
}
public void setQuery(SkinFieldQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -38,7 +38,6 @@ public class SkinTemplateController extends BaseCRUDJsonBodyMappingController<Sk
private ParamService paramService;
public SkinTemplateController(){
super.setFormClass(SkinTemplateForm.class);
super.setModuleDesc( "系统皮肤模板");
}
......
package com.mortals.xhx.module.skin.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.skin.model.SkinTemplateEntity;
import com.mortals.xhx.module.skin.model.SkinTemplateQuery;
/**
* SkinTemplate
*
* 系统皮肤模板 Form
*
* @author zxfei
* @date 2022-05-24
*/
public class SkinTemplateForm extends BaseCRUDFormLong<SkinTemplateEntity> {
private SkinTemplateEntity entity = new SkinTemplateEntity();
private SkinTemplateQuery query = new SkinTemplateQuery();
public SkinTemplateForm(){
}
@Override
public SkinTemplateEntity getEntity() {
return entity;
}
public void setSkinTemplate(SkinTemplateEntity entity) {
this.entity = entity;
}
@Override
public SkinTemplateQuery getQuery() {
return query;
}
public void setQuery(SkinTemplateQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class SmsSetController extends BaseCRUDJsonBodyMappingController<SmsSetSe
private ParamService paramService;
public SmsSetController() {
super.setFormClass(SmsSetForm.class);
super.setModuleDesc("短信设置");
}
......
package com.mortals.xhx.module.sms.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.sms.model.SmsSetEntity;
import com.mortals.xhx.module.sms.model.SmsSetQuery;
/**
* SmsSet
*
* 短信设置 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class SmsSetForm extends BaseCRUDFormLong<SmsSetEntity> {
private SmsSetEntity entity = new SmsSetEntity();
private SmsSetQuery query = new SmsSetQuery();
public SmsSetForm(){
}
@Override
public SmsSetEntity getEntity() {
return entity;
}
public void setSmsSet(SmsSetEntity entity) {
this.entity = entity;
}
@Override
public SmsSetQuery getQuery() {
return query;
}
public void setQuery(SmsSetQuery query) {
this.query = query;
}
}
\ No newline at end of file
......@@ -26,7 +26,6 @@ public class SmsTemplateController extends BaseCRUDJsonBodyMappingController<Sms
private ParamService paramService;
public SmsTemplateController() {
super.setFormClass(SmsTemplateForm.class);
super.setModuleDesc("短信模板");
}
......
package com.mortals.xhx.module.sms.web;
import com.mortals.framework.web.BaseCRUDFormLong;
import com.mortals.xhx.module.sms.model.SmsTemplateEntity;
import com.mortals.xhx.module.sms.model.SmsTemplateQuery;
/**
* SmsTemplate
*
* 短信模板 Form
*
* @author zxfei
* @date 2022-01-12
*/
public class SmsTemplateForm extends BaseCRUDFormLong<SmsTemplateEntity> {
private SmsTemplateEntity entity = new SmsTemplateEntity();
private SmsTemplateQuery query = new SmsTemplateQuery();
public SmsTemplateForm(){
}
@Override
public SmsTemplateEntity getEntity() {
return entity;
}
public void setSmsTemplate(SmsTemplateEntity entity) {
this.entity = entity;
}
@Override
public SmsTemplateQuery getQuery() {
return query;
}
public void setQuery(SmsTemplateQuery query) {
this.query = query;
}
}
\ No newline at end of file
package com.mortals.xhx.module.window.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
import com.mortals.xhx.module.matter.model.MatterEntity;
import com.mortals.xhx.module.window.model.WindowEntity;
import java.util.List;
/**
* 站点部门窗口Dao
* 站点部门窗口 DAO接口
*
* @author zxfei
* @date 2022-01-12
*/
public interface WindowDao extends ICRUDDao<WindowEntity,Long>{
* 窗口Dao
* 窗口 DAO接口
*
* @author zxfei
* @date 2022-01-12
*/
public interface WindowDao extends ICRUDDao<WindowEntity, Long> {
String SQLID_SUB_HALL_LIST = "getSubHallList";
String SQLID_SUB_HALL_COUNT = "getSubHallListCount";
Result<WindowEntity> getSubHallList(WindowEntity windowQuery, PageInfo pageInfo);
}
package com.mortals.xhx.module.window.dao;
import com.mortals.framework.dao.ICRUDDao;
import com.mortals.xhx.module.window.model.WindowHallEntity;
import java.util.List;
/**
* 大厅窗口Dao
* 大厅窗口 DAO接口
*
* @author zxfei
* @date 2023-04-25
*/
public interface WindowHallDao extends ICRUDDao<WindowHallEntity,Long>{
}
package com.mortals.xhx.module.window.dao.ibatis;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.ParamDto;
import com.mortals.framework.model.Result;
import com.mortals.xhx.module.matter.model.MatterEntity;
import org.apache.ibatis.session.RowBounds;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.window.dao.WindowDao;
import com.mortals.xhx.module.window.model.WindowEntity;
import java.util.ArrayList;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 站点部门窗口DaoImpl DAO接口
*
* @author zxfei
* @date 2022-01-12
*/
* 站点部门窗口DaoImpl DAO接口
*
* @author zxfei
* @date 2022-01-12
*/
@Repository("windowDao")
public class WindowDaoImpl extends BaseCRUDDaoMybatis<WindowEntity,Long> implements WindowDao {
public class WindowDaoImpl extends BaseCRUDDaoMybatis<WindowEntity, Long> implements WindowDao {
/**
* @param windowQuery
* @param pageInfo
* @return
*/
@Override
public Result<WindowEntity> getSubHallList(WindowEntity windowQuery, PageInfo pageInfo) {
Result<WindowEntity> result = new Result();
ParamDto paramDto = this.getQueryParam(windowQuery);
int count = this.getSubHallListCount(paramDto);
List list = null;
if (count == 0) {
list = new ArrayList();
} else if (pageInfo.getPrePageResult() == -1) {
list = this.getSqlSession().selectList(this.getSqlId(SQLID_SUB_HALL_LIST), paramDto);
} else {
RowBounds rowBounds = new RowBounds(pageInfo.getBeginIndex(), pageInfo.getPrePageResult());
list = this.getSqlSession().selectList(this.getSqlId(SQLID_SUB_HALL_LIST), this.cpyQueryParamDto(paramDto), rowBounds);
}
pageInfo.setTotalResult(count);
result.setPageInfo(pageInfo);
result.setList(list);
return result;
}
public int getSubHallListCount(ParamDto paramDto) {
return this.getSqlSession().selectOne(this.getSqlId(SQLID_SUB_HALL_COUNT), this.cpyQueryParamDto(paramDto));
}
}
package com.mortals.xhx.module.window.dao.ibatis;
import org.springframework.stereotype.Repository;
import com.mortals.xhx.module.window.dao.WindowHallDao;
import com.mortals.xhx.module.window.model.WindowHallEntity;
import java.util.Date;
import com.mortals.framework.dao.ibatis.BaseCRUDDaoMybatis;
import java.util.List;
/**
* 大厅窗口DaoImpl DAO接口
*
* @author zxfei
* @date 2023-04-25
*/
@Repository("windowHallDao")
public class WindowHallDaoImpl extends BaseCRUDDaoMybatis<WindowHallEntity,Long> implements WindowHallDao {
}
package com.mortals.xhx.module.window.model.vo;
import com.alibaba.fastjson.annotation.JSONField;
import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.window.model.WindowBusinessEntity;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
/**
* 窗口业务视图对象
*
* @author zxfei
* @date 2022-01-12
*/
* 窗口业务视图对象
*
* @author zxfei
* @date 2022-01-12
*/
@Data
public class WindowBusinessVo extends BaseEntityLong {
......@@ -25,7 +30,23 @@ public class WindowBusinessVo extends BaseEntityLong {
*/
private String fromnum;
/** 窗口id列表 */
private List <Long> windowIdList;
/**
* 窗口id列表
*/
private List<Long> windowIdList;
/**
* 大厅ID
*/
@JsonInclude(JsonInclude.Include.ALWAYS)
@JSONField(serialize = true)
private Long hallId;
/**
* 大厅名称
*/
@JsonInclude(JsonInclude.Include.ALWAYS)
@JSONField(serialize = true)
private String hallName;
}
\ No newline at end of file
package com.mortals.xhx.module.window.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.window.model.WindowHallEntity;
import java.util.ArrayList;
import java.util.List;
import lombok.Data;
/**
* 大厅窗口视图对象
*
* @author zxfei
* @date 2023-04-25
*/
@Data
public class WindowHallVo extends BaseEntityLong {
}
\ No newline at end of file
This diff is collapsed.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment