Commit a9d6544d authored by 王启林's avatar 王启林
parents 00eb684e 698b1537
......@@ -41,6 +41,7 @@ export default {
methods: {
onChange(checked) {
this.$emit("change", checked ? 1 : 0);
this.$emit("onChange", checked ? 1 : 0);
},
},
};
......
......@@ -4,8 +4,8 @@
<a-layout-header class="header">
<div class="flex aic">
<router-link to="/" class="flex aic">
<img width="32" src="@/assets/img/logo.png" />
<h1 style="padding-left: 10px">{{ systemName }}</h1>
<!-- <img width="32" src="@/assets/img/logo.png" /> -->
<h1>{{ systemName }}</h1>
</router-link>
<HeaderSite class="ml20"></HeaderSite>
</div>
......
......@@ -354,19 +354,17 @@ export default {
onSelectLeftRow(record, selected) {
if (selected && record.children && record.children.length) {
record.children.forEach((v) => {
this.selectedLeftRowKeys.push(v.id);
this.deleteData.push(v);
this.selectedLeftRowKeys= [...new Set([...this.selectedLeftRowKeys,v.id])]
this.deleteData=[...new Set([...this.deleteData,v])];
});
} else if (selected) {
this.selectedLeftRowKeys.push(record.id);
this.deleteData.push(record);
} else {
} else if (!selected) {
this.selectedLeftRowKeys = this.selectedLeftRowKeys.filter(
(v) => v != record.id
);
this.deleteData = this.deleteData.filter((v) => {
return this.selectedLeftRowKeys.some((val) => v.id == val);
return v.id !=record.id
});
}
},
// 批量删除
......
......@@ -190,11 +190,18 @@ export default {
},
changePage() {},
onSelectRow(record, selected) {
if (selected && record.children.length) {
if (selected && record.children && record.children.length) {
record.children.forEach((v) => {
this.rowKeys.push(v.id);
this.rowKeys = [...new Set([...this.rowKeys, v.id])];
});
} else {
} else if (!selected && record.children && record.children.length) {
this.rowKeys = this.rowKeys.filter((v) => v != record.id);
record.children.forEach((v) => {
this.rowKeys = this.rowKeys.filter((val) => val != v.id);
});
} else if (selected && record.parentId) {
this.rowKeys = [...new Set([...this.rowKeys, record.parentId])];
} else if (!selected) {
this.rowKeys = this.rowKeys.filter((v) => v != record.id);
}
},
......
......@@ -5,6 +5,7 @@
:visible="Visible"
@cancel="handleClose"
:maskClosable="false"
:destroyOnClose="true"
>
<a-form-model
ref="formData"
......@@ -43,20 +44,6 @@
{{ v.name }}</a-select-option
>
</a-select>
<!-- <a-select
placeholder="请选择部门"
v-model="form.deptId"
@change="handleChange"
>
<a-select-option
:data-deptNum="v.deptNumber"
v-for="v in deptList"
:key="v.id"
:value="v.id"
>
{{ v.name }}
</a-select-option>
</a-select> -->
</a-form-model-item>
</a-col>
</a-row>
......@@ -96,14 +83,43 @@
<a-input v-model="form.fromnum" placeholder="请输入窗口编号" />
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="12">
<a-form-model-item label="红旗窗口" prop="hongqi">
<y-switch v-model="form.hongqi"></y-switch>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col span="12">
<a-form-model-item label="无人值守" prop="duty">
<y-switch v-model="form.duty" @onChange="changeDuty"></y-switch>
<a-tooltip>
<template slot="title">
该功能用于窗口无工作人员入驻,无需叫号、评价的情况下,定义窗口屏显示内容。
</template>
<a-icon class="question-icon" type="question-circle" />
</a-tooltip>
</a-form-model-item>
</a-col>
</a-row>
<a-row v-if="form.duty">
<a-col :span="12">
<a-form-model-item label="显示内容" prop="dutyContent">
<a-input
v-model="form.dutyContent"
placeholder="请输入窗口屏显示内容"
/>
</a-form-model-item>
</a-col>
<a-col :span="12">
<a-form-model-item label="显示英文" prop="dutyEnglish">
<a-input
v-model="form.dutyEnglish"
placeholder="请输入窗口屏显示英文"
/>
</a-form-model-item>
</a-col>
</a-row>
<a-row>
<a-col :span="24">
<a-form-model-item
......@@ -205,6 +221,9 @@ export default {
summary: "", // 备注
building: 1, // 楼栋
level: 1, // 楼层
duty: "", // 无人值守
dutyContent: "", // 无人值守显示内容
dutyEnglish: "", // 无人值守显示英文内容
},
rules: {
siteName: [
......@@ -302,11 +321,24 @@ export default {
this.$refs.formData.resetFields();
this.Visible = false;
},
// 改变无人值守
changeDuty(val) {
if (!val) {
this.form.dutyContent = "";
this.form.dutyEnglish = "";
}
},
},
};
</script>
<style lang="less" scoped>
.question-icon {
margin-left: 10px;
font-size: 20px;
cursor: pointer;
color: #999;
}
/deep/.ant-modal-content {
width: 800px;
}
......@@ -321,4 +353,4 @@ export default {
/deep/.ant-form-explain {
position: absolute;
}
</style>
\ No newline at end of file
</style>
......@@ -53,6 +53,7 @@ import AppraiseSkin from "../appraiseskin/AppraiseSkin.vue";
import SampleFormSkin from "../sampleFormSkin/SampleFormSkin.vue";
import WriteFormSkin from "../writeFormSkin/WriteFormSkin.vue";
import InformationSkin from "../informationskin/InformationSkin.vue";
import SelfService from "../selfservice/SelfService.vue";
export default {
components: {
LandscapeMode,
......@@ -63,6 +64,7 @@ export default {
SampleFormSkin,
WriteFormSkin,
InformationSkin,
SelfService,
},
props: {},
data() {
......@@ -76,40 +78,41 @@ export default {
this.$bus.$on("selectPreview", (row, index) => {
this.skinInfo = { ...row };
this.index = index;
console.log(this.skinInfo);
});
},
computed: {
component() {
let str = "";
switch (this.skinInfo.productId) {
case 1:
switch (this.skinInfo.productName) {
case "排号机":
str = "LandscapeMode";
break;
case 2:
case "窗口屏":
str = "WindowSkin";
break;
case 3:
case "呼叫器":
str = "CallOutSkin";
break;
case 4:
case "集中显示屏":
str = "CentralizeSkin";
break;
case 5:
case "导视机":
// str = "CentralizeSkin";
break;
case 6:
case "评价器":
str = "AppraiseSkin";
break;
case 7:
// str = "AppraiseSkin";
case "自助服务终端":
str = "SelfService";
break;
case 8:
case "填单机":
str = "WriteFormSkin";
break;
case 9:
case "样表机":
str = "SampleFormSkin";
break;
case 10:
case "信息发布终端":
str = "InformationSkin";
break;
}
......
......@@ -187,6 +187,7 @@ import AppraiseSkin from "../appraiseskin/AppraiseSkin.vue";
import SampleFormSkin from "../sampleFormSkin/SampleFormSkin.vue";
import WriteFormSkin from "../writeFormSkin/WriteFormSkin.vue";
import InformationSkin from "../informationskin/InformationSkin.vue";
import SelfService from "../selfservice/SelfService.vue"
import { uploadFile, skinSave, getTemplateList } from "@/services/surface";
import html2canvas from "html2canvas";
import { Empty } from "ant-design-vue";
......@@ -201,6 +202,7 @@ export default {
SampleFormSkin,
WriteFormSkin,
InformationSkin,
SelfService
},
props: {
isShow: {
......@@ -262,35 +264,35 @@ export default {
},
component() {
let str = "";
switch (this.facilityInfo.productId) {
case 1:
switch (this.facilityInfo.productName) {
case "排号机":
str = "LandscapeMode";
break;
case 2:
case "窗口屏":
str = "WindowSkin";
break;
case 3:
case "呼叫器":
str = "CallOutSkin";
break;
case 4:
case "集中显示屏":
str = "CentralizeSkin";
break;
case 5:
case "导视机":
// str = "CentralizeSkin";
break;
case 6:
case "评价器":
str = "AppraiseSkin";
break;
case 7:
// str = "AppraiseSkin";
case "自助服务终端":
str = "SelfService";
break;
case 8:
case "填单机":
str = "WriteFormSkin";
break;
case 9:
case "样表机":
str = "SampleFormSkin";
break;
case 10:
case "信息发布终端":
str = "InformationSkin";
break;
}
......
<template>
<div class="skin-box">
<!-- 自助服务终端 横板 -->
<div
:id="conponentsId"
v-if="imageResolution === '1'"
class="across-skin flex flexc aic"
:style="{
background: filterItem('1', 0),
}"
>
<!-- 头部 -->
<div class="header flex aic jcb">
<div class="left flex aic">
<div
class="title"
:style="{
color: filterItem('2', 0),
}"
>
自助服务终端
</div>
</div>
<div
class="right flex aic"
:style="{
color: filterItem('3', 0),
}"
>
<div class="time">10:32</div>
<div class="flex flexc">
<span>2023/02/16</span>
<span>星期四</span>
</div>
</div>
</div>
<div class="main flex aic jcb flex1">
<div class="left">
<div class="top">
<div class="search-box">
<div class="search">请输入你想查询的内容关键字</div>
<div
class="search_btn"
:style="{
color: filterItem('7', 0),
background: filterItem('8', 0),
}"
>
搜索
</div>
</div>
<div class="banner flex aic jcc">banner</div>
</div>
<div class="bottom">新闻区</div>
</div>
<div class="right flex aic jcc">应用展示区</div>
</div>
<!-- 底部 -->
<div class="footer mt20">
<div
class="footer-item footer-item1"
:style="{
background: filterItem('7', 0),
}"
>
首页
</div>
<div class="footer-item">服务</div>
<div class="footer-item">互动</div>
<div class="footer-item">我的</div>
<div
class="footer-item footer-item5"
:style="{
color: filterItem('7', 0),
background: filterItem('8', 0),
}"
>
登录/注册
</div>
</div>
</div>
<!-- 空数据显示 -->
<div class="empty flex aic jcc" v-else>
<a-empty
:image="require('../../../../assets/img/original.png')"
:image-style="{
height: '80px',
}"
>
<span slot="description"> <a href="#API">暂无皮肤模板</a> </span>
</a-empty>
</div>
</div>
</template>
<script>
export default {
props: {
skinFieldList: {
type: Array,
required: true,
default: () => {
return [];
},
},
imageResolution: {
required: true,
default: "1",
},
conponentsId: {
required: true,
type: String,
},
},
data() {
return {
api: process.env.VUE_APP_API_IMG_URL,
};
},
methods: {
// 过滤属性类型
filterItem(type, index) {
let arr = this.skinFieldList.filter((v) => {
return v.remark == type;
});
if (arr.length) {
return this.filterValueType(arr[index]);
} else {
return "";
}
},
// 过滤属性值类型
filterValueType(info = {}) {
let value = "";
if (info.fieldType !== "" && info.fieldType === "1" && info.fieldValue) {
value = info.fieldValue;
} else if (
info.fieldType !== "" &&
info.fieldType === "2" &&
info.fieldValue
) {
value = `url(${this.api + info.fieldValue})`;
}
return value;
},
},
};
</script>
<style lang="less" scoped>
.across-skin {
width: 1000px;
height: 562.5px;
background: linear-gradient(#26c5ff, #2c66ff);
background-repeat: no-repeat !important ;
background-position: center !important ;
background-size: cover !important ;
.header {
width: 100%;
color: #fff;
padding: 20px;
.title {
font-size: 30px;
font-weight: 600;
}
.right {
.time {
font-size: 26px;
font-weight: 600;
margin-right: 10px;
}
}
}
.main {
width: 100%;
padding: 20px;
margin-top: 10px;
color: #fff;
.left {
width: 39%;
height: 100%;
padding: 10px;
border-radius: 4px;
border: 1px dashed #ececec;
.top {
height: 59%;
display: flex;
flex-direction: column;
.search-box {
height: 40px;
padding: 0px 4px;
margin-bottom: 10px;
border-radius: 4px;
background-color: #fff;
display: flex;
align-items: center;
justify-content: space-between;
.search {
color: #ccc;
}
.search_btn {
width: 60px;
height: 36px;
border-radius: 4px;
background-color: #dee9ff;
display: flex;
justify-content: center;
align-items: center;
color: #206eff;
}
}
.banner {
flex: 0.9;
border: 1px dashed #ececec;
border-radius: 4px;
}
}
.bottom {
height: 39%;
display: flex;
align-items: center;
justify-content: center;
border: 1px dashed #ececec;
}
}
.right {
width: 59%;
height: 100%;
border-radius: 4px;
border: 1px dashed #ececec;
}
}
.footer {
width: 100%;
height: 60px;
display: flex;
justify-content: flex-end;
background-color: #fff;
.footer-item1 {
color: #fff;
background-color: #206eff;
}
.footer-item {
display: flex;
align-items: center;
justify-content: center;
width: 160px;
height: 100%;
border-left: 1px solid #ececec;
border-right: 1px solid #ececec;
font-size: 20px;
}
.footer-item5 {
color: #206eff;
background-color: #dee9ff;
}
}
}
</style>
\ No newline at end of file
-- ----------------------------
2023-2-21
-- ----------------------------
ALTER TABLE mortals_sys_window ADD COLUMN `duty` tinyint (1) default 0 COMMENT '无人值守(1.是,0.否)' AFTER hongqi;
ALTER TABLE mortals_sys_window ADD COLUMN `dutyContent` varchar (256) default "" COMMENT '显示内容' AFTER duty;
ALTER TABLE mortals_sys_window ADD COLUMN `dutyEnglish` varchar (256) default "" COMMENT '显示英文' AFTER dutyContent;
package com.mortals.xhx.base.framework.exception;
import lombok.extern.slf4j.Slf4j;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.web.bind.annotation.ControllerAdvice;
......@@ -13,30 +14,29 @@ import com.mortals.framework.exception.AppException;
* 统一异常处理
*/
@ControllerAdvice
@Slf4j
public class ExceptionHandle {
private final static Logger log = LoggerFactory.getLogger(ExceptionHandle.class);
public static final String KEY_RESULT_CODE = "code";
public static final String KEY_RESULT_MSG = "msg";
public static final String KEY_RESULT_DATA = "data";
public static final int VALUE_RESULT_FAILURE = -1;
public static final String KEY_RESULT_CODE = "code";
public static final String KEY_RESULT_MSG = "msg";
public static final String KEY_RESULT_DATA = "data";
public static final int VALUE_RESULT_FAILURE = -1;
@ExceptionHandler(value = Exception.class)
@ResponseBody
public String handle(Exception e) {
JSONObject ret = new JSONObject();
ret.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);
if (e instanceof AppException) {
StackTraceElement stack = e.getStackTrace()[0];
log.error("[business error]=========stack message[{}],[{},method:{},line{}][{}]", e.getMessage(),
stack.getClassName(), stack.getMethodName(), stack.getLineNumber(), e.getClass().getName());
AppException ex = (AppException) e;
ret.put(KEY_RESULT_MSG, ex.getMessage());
} else {
log.error("[system error]", e);
ret.put(KEY_RESULT_MSG, "未知错误!");
}
return ret.toJSONString();
}
@ExceptionHandler(value = Exception.class)
@ResponseBody
public String handle(Exception e) {
JSONObject ret = new JSONObject();
ret.put(KEY_RESULT_CODE, VALUE_RESULT_FAILURE);
if (e instanceof AppException) {
StackTraceElement stack = e.getStackTrace()[0];
log.error("[business error]=========stack message[{}],[{},method:{},line{}][{}]", e.getMessage(),
stack.getClassName(), stack.getMethodName(), stack.getLineNumber(), e.getClass().getName());
AppException ex = (AppException) e;
ret.put(KEY_RESULT_MSG, ex.getMessage());
} else {
log.error("[system error]", e);
ret.put(KEY_RESULT_MSG, "未知错误!");
}
return ret.toJSONString();
}
}
......@@ -46,12 +46,24 @@ public interface UploadService extends IService {
*/
void fileDownload(String fileName, Boolean delete, HttpServletResponse response);
/**
* 预览
* @param fileName
* @param response
*/
void preview(String fileName, HttpServletResponse response);
/**
* 上传
* @param fileName
* @param response
*/
void uploadDownload(String fileName, HttpServletResponse response);
/**
* 刪除
* @param fileName
*/
void deleteFile(String fileName);
}
\ No newline at end of file
......@@ -12,6 +12,7 @@ import com.mortals.framework.web.BaseJsonBodyController;
import com.mortals.xhx.module.dept.model.DeptEntity;
import com.mortals.xhx.module.dept.model.DeptQuery;
import com.mortals.xhx.module.dept.service.DeptService;
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;
import com.mortals.xhx.module.matter.service.MatterService;
......@@ -66,6 +67,8 @@ public class DemoWebApiController {
private WindowMatterService windowMatterService;
@Autowired
private DeptService deptService;
@Autowired
private MatterService matterService;
@PostMapping(value = "testGov")
......@@ -103,6 +106,23 @@ public class DemoWebApiController {
return Rest.ok(cookieStr);
}
@PostMapping(value = "reEventShow")
@UnAuth
public Rest<String> reEventShow() {
List<SiteMatterEntity> siteMatterEntities = siteMatterService.find(new SiteMatterQuery());
for (SiteMatterEntity siteMatterEntity : siteMatterEntities) {
if(ObjectUtils.isEmpty(siteMatterEntity.getEventTypeShow())){
MatterEntity matterEntity = matterService.get(siteMatterEntity.getMatterId());
if(!ObjectUtils.isEmpty(matterEntity)&&!ObjectUtils.isEmpty(matterEntity.getEventTypeShow())){
siteMatterEntity.setEventTypeShow(matterEntity.getEventTypeShow());
siteMatterService.update(siteMatterEntity);
}
}
}
return Rest.ok();
}
@PostMapping(value = "reDepts")
@UnAuth
......
......@@ -54,4 +54,5 @@ public class MatterInfo {
*/
private String promiseTimeLimitShow;
}
\ No newline at end of file
......@@ -16,4 +16,9 @@ public class MatterVo extends BaseEntityLong {
private List<Long> idList;
/**
* 行政处罚排除
*/
private List <String> eventTypeShowNotList;
}
\ No newline at end of file
......@@ -4,6 +4,7 @@ import cn.hutool.setting.Setting;
import com.alibaba.fastjson.JSONObject;
import com.mortals.framework.annotation.UnAuth;
import com.mortals.framework.common.Rest;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.model.Result;
......@@ -25,6 +26,7 @@ import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.Map;
import java.util.stream.Collectors;
......@@ -54,6 +56,23 @@ public class MatterController extends BaseCRUDJsonBodyMappingController<MatterSe
super.setModuleDesc("基础事项");
}
/**
* @param query
* @param model
* @param context
* @throws AppException
*/
@Override
protected void doListBefore(MatterEntity query, Map<String, Object> model, Context context) throws AppException {
if(ObjectUtils.isEmpty(query.getEventTypeShowNotList())){
ArrayList<String> notList = new ArrayList<>();
notList.add("行政处罚");
query.setEventTypeShowNotList(notList);
}
super.doListBefore(query, model, context);
}
@Override
protected void init(Map<String, Object> model, Context context) {
this.addDict(model, "appoveObjectShow", paramService.getParamBySecondOrganize("Matter", "appoveObjectShow"));
......
......@@ -34,4 +34,7 @@ public class SiteMatterVo extends BaseEntityLong {
*/
private String areaCode;
/** 事项类型排除列表 */
private List <String> eventTypeShowNotList;
}
\ No newline at end of file
package com.mortals.xhx.module.site.service.impl;
import com.alibaba.fastjson.JSON;
import com.mortals.framework.exception.AppException;
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.xhx.common.code.BusinessTypeEnum;
import com.mortals.xhx.common.code.IsBusinessEnum;
import com.mortals.xhx.module.business.model.BusinessEntity;
import com.mortals.xhx.module.business.model.BusinessMatterEntity;
......@@ -10,18 +14,15 @@ import com.mortals.xhx.module.business.model.BusinessMatterQuery;
import com.mortals.xhx.module.business.model.BusinessQuery;
import com.mortals.xhx.module.business.service.BusinessMatterService;
import com.mortals.xhx.module.business.service.BusinessService;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.xhx.common.code.SatusEnum;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.xhx.module.site.dao.SiteBusinessDao;
import com.mortals.xhx.module.site.model.SiteBusinessEntity;
import com.mortals.xhx.module.site.model.SiteBusinessQuery;
import com.mortals.xhx.module.site.service.SiteBusinessService;
import com.mortals.xhx.module.site.model.SiteBusinessTreeSelect;
import com.mortals.xhx.module.site.service.SiteBusinessService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.ObjectUtils;
import java.util.*;
......@@ -35,6 +36,7 @@ import java.util.stream.Collectors;
* @date 2022-01-13
*/
@Service("siteBusinessService")
@Slf4j
public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBusinessDao, SiteBusinessEntity, Long> implements SiteBusinessService {
@Autowired
......@@ -43,13 +45,56 @@ public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBu
@Autowired
private BusinessMatterService businessMatterService;
/**
* @param params
* @param pageInfo
* @param context
* @return
* @throws AppException
*/
@Override
protected SiteBusinessEntity findBefore(SiteBusinessEntity params, PageInfo pageInfo, Context context) throws AppException {
if (!ObjectUtils.isEmpty(params.getIdNotList())) {
Set<Long> notIdSet = params.getIdNotList().stream().collect(Collectors.toSet());
//排除掉了父级,但是子集存在,需要吧父id排除到notlist外
SiteBusinessQuery siteBusinessQuery = new SiteBusinessQuery();
siteBusinessQuery.setIdList(params.getIdNotList());
List<SiteBusinessEntity> rootSiteBusiness = this.find(siteBusinessQuery).stream().filter(f -> f.getIsBusiness() == IsBusinessEnum.一级业务.getValue()).collect(Collectors.toList());
for (SiteBusinessEntity root : rootSiteBusiness) {
SiteBusinessQuery query = new SiteBusinessQuery();
query.setParentId(root.getId());
List<SiteBusinessEntity> childSiteBusiness = this.find(query, context);
//判断排除的id是否包含所有
Boolean bool = false;
for (SiteBusinessEntity child : childSiteBusiness) {
if (!notIdSet.contains(child.getId())) {
bool = true;
break;
}
}
if (bool) {
//排除掉父id
notIdSet.remove(root.getId());
}
}
params.setIdNotList(notIdSet.stream().collect(Collectors.toList()));
}
return super.findBefore(params, pageInfo, context);
}
@Override
protected void findAfter(SiteBusinessEntity params, PageInfo pageInfo, Context context, List<SiteBusinessEntity> list) throws AppException {
SiteBusinessQuery siteBusinessQuery = new SiteBusinessQuery();
if (!ObjectUtils.isEmpty(params.getIdNotList())) {
//排除掉已经存在的ids
log.info("idNotList:{}", JSON.toJSONString(params.getIdNotList()));
Iterator<SiteBusinessEntity> iterator = list.iterator();
while (iterator.hasNext()) {
SiteBusinessQuery siteBusinessQuery = new SiteBusinessQuery();
SiteBusinessEntity item = iterator.next();
siteBusinessQuery.siteId(item.getSiteId());
siteBusinessQuery.setParentId(item.getBusinessId());
......@@ -60,6 +105,8 @@ public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBu
if (ObjectUtils.isEmpty(childs)) {
//子节点已经全部选中,删除父节点
iterator.remove();
pageInfo.setTotalResult(pageInfo.getTotalResult() - 1);
} else {
childs.stream().forEach(item1 -> {
buildChildBusiness(item1);
......@@ -71,6 +118,7 @@ public class SiteBusinessServiceImpl extends AbstractCRUDCacheServiceImpl<SiteBu
}
} else {
list.stream().peek(item -> {
SiteBusinessQuery siteBusinessQuery = new SiteBusinessQuery();
List<SiteBusinessEntity> childs = this.find(siteBusinessQuery.siteId(item.getSiteId()).parentId(item.getBusinessId()));
childs.stream().forEach(item1 -> {
buildChildBusiness(item1);
......
package com.mortals.xhx.module.site.web;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
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.site.model.SiteMatterEntity;
import com.mortals.xhx.module.site.service.SiteMatterService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.util.ObjectUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import java.util.ArrayList;
import java.util.Map;
/**
* 站点事项
*
......@@ -27,4 +33,19 @@ public class SiteMatterController extends BaseCRUDJsonBodyMappingController<Site
super.setModuleDesc("站点事项");
}
/**
* @param query
* @param model
* @param context
* @throws AppException
*/
@Override
protected void doListBefore(SiteMatterEntity query, Map<String, Object> model, Context context) throws AppException {
super.doListBefore(query, model, context);
if(ObjectUtils.isEmpty(query.getEventTypeShowNotList())){
ArrayList<String> notList = new ArrayList<>();
notList.add("行政处罚");
query.setEventTypeShowNotList(notList);
}
}
}
\ No newline at end of file
......@@ -12,7 +12,7 @@ import com.mortals.xhx.module.window.model.vo.WindowVo;
* 站点部门窗口实体对象
*
* @author zxfei
* @date 2022-01-12
* @date 2023-02-21
*/
public class WindowEntity extends WindowVo {
......@@ -58,6 +58,18 @@ public class WindowEntity extends WindowVo {
* 红旗窗口 (1.是,0.否)
*/
private Integer hongqi;
/**
* 无人值守(1.是,)
*/
private Integer duty;
/**
* 显示内容
*/
private String dutyContent;
/**
* 显示英文
*/
private String dutyEnglish;
/**
* 备注
*/
......@@ -255,6 +267,60 @@ public class WindowEntity extends WindowVo {
this.hongqi = hongqi;
}
/**
* 获取 无人值守(1.是,)
*
* @return Integer
*/
public Integer getDuty() {
return duty;
}
/**
* 设置 无人值守(1.是,)
*
* @param duty
*/
public void setDuty(Integer duty) {
this.duty = duty;
}
/**
* 获取 显示内容
*
* @return String
*/
public String getDutyContent() {
return dutyContent;
}
/**
* 设置 显示内容
*
* @param dutyContent
*/
public void setDutyContent(String dutyContent) {
this.dutyContent = dutyContent;
}
/**
* 获取 显示英文
*
* @return String
*/
public String getDutyEnglish() {
return dutyEnglish;
}
/**
* 设置 显示英文
*
* @param dutyEnglish
*/
public void setDutyEnglish(String dutyEnglish) {
this.dutyEnglish = dutyEnglish;
}
/**
* 获取 备注
*
......@@ -339,6 +405,9 @@ public class WindowEntity extends WindowVo {
sb.append(",englishRegion:").append(getEnglishRegion());
sb.append(",fromnum:").append(getFromnum());
sb.append(",hongqi:").append(getHongqi());
sb.append(",duty:").append(getDuty());
sb.append(",dutyContent:").append(getDutyContent());
sb.append(",dutyEnglish:").append(getDutyEnglish());
sb.append(",summary:").append(getSummary());
sb.append(",building:").append(getBuilding());
sb.append(",level:").append(getLevel());
......@@ -351,7 +420,7 @@ public class WindowEntity extends WindowVo {
this.siteName = "";
this.deptId = 0L;
this.deptId = null;
this.deptName = "";
......@@ -367,6 +436,12 @@ public class WindowEntity extends WindowVo {
this.hongqi = 1;
this.duty = 0;
this.dutyContent = "";
this.dutyEnglish = "";
this.summary = "";
this.building = 1;
......
......@@ -386,7 +386,7 @@
#{item}
</foreach>
</if>
<if test="conditionParamRef.containsKey('idNotList')">
<if test="conditionParamRef.containsKey('idNotList') and conditionParamRef.idNotList.size() > 0">
${_conditionType_} a.id not in
<foreach collection="conditionParamRef.idNotList" open="(" close=")" index="index" item="item" separator=",">
#{item}
......
......@@ -77,8 +77,7 @@ client.global.set("App_id", JSON.parse(response.body).data.id);
%}
###自助终端应用查看
GET {{baseUrl}}/app/info?id={{App_id}}
Authorization: {{authToken}}
GET {{baseUrl}}/app/info?id=1
Accept: application/json
###自助终端应用编辑
......
......@@ -20,11 +20,9 @@ POST {{baseUrl}}/matter/list
Content-Type: application/json
{
"siteId": "",
"matterName": "%对墓穴占地面积超过标准的处罚%",
"deptCode":"",
"siteId": 1,
"page": 1,
"size": 10
"size": 100
}
###微官网事项列表
......
......@@ -4,10 +4,10 @@ POST {{baseUrl}}/site/business/list
Content-Type: application/json
{
"idNotList": [11,12,17,18,19,20],
"idNotList": [11,18,17,14,27,26],
"siteId": 1,
"page":1,
"size":5
"size":10
}
###站点业务列表
......
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