diff --git a/script/sql/zfjd-refactoring-v1/其他/njy/njy.sql b/script/sql/zfjd-refactoring-v1/其他/njy/njy.sql index 3fde0389..053ca751 100644 --- a/script/sql/zfjd-refactoring-v1/其他/njy/njy.sql +++ b/script/sql/zfjd-refactoring-v1/其他/njy/njy.sql @@ -3,3 +3,6 @@ ALTER TABLE enterprise_complaint AFTER enterprise_address; ALTER TABLE enforcement_inspection_program ADD COLUMN create_by_name VARCHAR(64) COMMENT '创建人姓名'; + + +ALTER TABLE enforcement_registration ADD COLUMN other_reasons varchar(500) DEFAULT NULL COMMENT '其他原因'; diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfCpNoticeController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfCpNoticeController.java index 20e12009..6a8319f6 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfCpNoticeController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfCpNoticeController.java @@ -1,5 +1,6 @@ package com.zdxt.enforcementcode.controller.app.enforcement; +import cn.dev33.satoken.annotation.SaIgnore; import com.zdxt.enforcementcode.domain.bo.EfcodeCpNoticeBo; import com.zdxt.enforcementcode.domain.bo.EfcodeCpNoticeMessageBo; import com.zdxt.enforcementcode.domain.vo.EfcodeCpNoticeMessageVo; @@ -37,6 +38,7 @@ public class AppEnfCpNoticeController { * 查询我的预告列表(分页,只返回当前用户创建的预告) * 通过status区分tab:0=草稿, 1=待执法(已发布), 3=历史(已执行) */ + @SaIgnore @GetMapping("/myList") public TableDataInfo myList(EfcodeCpNoticeBo bo, PageQuery pageQuery) { return efcodeCpNoticeService.queryMyPageList(bo, pageQuery); diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfTodoItemController.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfTodoItemController.java index 4cd262d7..573758e7 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfTodoItemController.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/controller/app/enforcement/AppEnfTodoItemController.java @@ -71,6 +71,7 @@ public class AppEnfTodoItemController extends BaseController { * 获取待办个数 * 返回普法服务、执法评价、执法预告的未读个数及总数 */ + @SaIgnore @GetMapping("/statisticsUnReadCount") public R statisticsUnReadCount() { TodoStatisticsVo statistics = new TodoStatisticsVo(); diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementEducationServicesBo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementEducationServicesBo.java index 80845129..7a06b4a2 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementEducationServicesBo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementEducationServicesBo.java @@ -123,4 +123,8 @@ public class EnforcementEducationServicesBo extends BaseEntity { */ private Date endTime; + /** + * 搜索值 + */ + private String searchValue; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java index 4bbf5c42..70bfd765 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/bo/EnforcementRegistrationBo.java @@ -321,4 +321,14 @@ public class EnforcementRegistrationBo extends BaseEntity { */ private Integer warnType; + /** + * 其他原因 + */ + private String otherReasons; + + /** + * 搜索值 + */ + private String searchValue; + } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java index 300c15f1..ff8b03a6 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/domain/vo/EnforcementRegistrationVo.java @@ -410,4 +410,8 @@ public class EnforcementRegistrationVo implements Serializable { private List fileList; + /** + * 其他原因 + */ + private String otherReasons; } diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeCpNoticeServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeCpNoticeServiceImpl.java index 437c1d2e..92fd899d 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeCpNoticeServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EfcodeCpNoticeServiceImpl.java @@ -84,7 +84,7 @@ public class EfcodeCpNoticeServiceImpl implements IEfcodeCpNoticeService { LambdaQueryWrapper lqw = buildQueryWrapper(bo); // 只看自己发布的预告 Long userId = LoginHelper.getUserId(); - lqw.eq(EfcodeCpNotice::getCreateBy, userId); + lqw.eq(userId != null, EfcodeCpNotice::getCreateBy, userId); // 过滤已删除 lqw.eq(EfcodeCpNotice::getIsDelete, 0); // 按创建时间倒序 diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java index 4605989c..83115638 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementEducationServicesServiceImpl.java @@ -2,6 +2,7 @@ package com.zdxt.enforcementcode.service.impl; import com.zdxt.enforcementcode.common.commonenum.MsgSourceTypeEnum; import com.zdxt.enforcementcode.common.commonenum.PlatformTypeEnums; +import com.zdxt.enforcementcode.domain.EnforcementRegistration; import com.zdxt.enforcementcode.domain.bean.EnforcementEducationServices; import com.zdxt.enforcementcode.domain.vo.ZdxtFileVo; import com.zdxt.enforcementcode.service.ISysMessageViewLogService; @@ -268,6 +269,19 @@ public class EnforcementEducationServicesServiceImpl implements IEnforcementEduc lqw.like(StringUtils.isNotBlank(bo.getUpdateByName()), EnforcementEducationServices::getUpdateByName, bo.getUpdateByName()); lqw.eq(bo.getIsDelete() != null, EnforcementEducationServices::getIsDelete, bo.getIsDelete()); + // 搜索值(多字段模糊匹配) + if (StringUtils.isNotBlank(bo.getSearchValue())) { + String sv = bo.getSearchValue(); + lqw.and(wrapper -> wrapper + .like(EnforcementEducationServices::getTitle, sv) + .or().like(EnforcementEducationServices::getForwardUrl, sv) + .or().like(EnforcementEducationServices::getContent, sv) + .or().like(EnforcementEducationServices::getCreateByName, sv) + .or().like(EnforcementEducationServices::getUpdateByName, sv) + .or().like(EnforcementEducationServices::getRemark, sv) + ); + } + // 创建时间范围筛选 if (bo.getStartTime() != null && bo.getEndTime() != null) { lqw.between(EnforcementEducationServices::getCreateTime, bo.getStartTime(), bo.getEndTime()); diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java index 38301fba..28889573 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java +++ b/zdxt-modules/zdxt-enforcement-code/src/main/java/com/zdxt/enforcementcode/service/impl/EnforcementRegistrationServiceImpl.java @@ -815,9 +815,31 @@ public class EnforcementRegistrationServiceImpl implements IEnforcementRegistrat // 是否自动 lqw.eq(bo.getHasAuto() != null, EnforcementRegistration::getHasAuto, bo.getHasAuto()); - // 搜索值(企业名称) - lqw.like(StringUtils.isNotBlank(bo.getSearchValue()), - EnforcementRegistration::getEnterpriseName, bo.getSearchValue()); + // 搜索值(多字段模糊匹配) + if (StringUtils.isNotBlank(bo.getSearchValue())) { + String sv = bo.getSearchValue(); + lqw.and(wrapper -> wrapper + .like(EnforcementRegistration::getEnterpriseNumber, sv) + .or().like(EnforcementRegistration::getEnterpriseAddress, sv) + .or().like(EnforcementRegistration::getEnterpriseName, sv) + .or().like(EnforcementRegistration::getLawEnforcementCode, sv) + .or().like(EnforcementRegistration::getLawEnforcement, sv) + .or().like(EnforcementRegistration::getBureauDeptName, sv) + .or().like(EnforcementRegistration::getLawEnforcer, sv) + .or().like(EnforcementRegistration::getLawEnforcerTwo, sv) + .or().like(EnforcementRegistration::getLawEnforcementItemText, sv) + .or().like(EnforcementRegistration::getLawEnforcementBasis, sv) + .or().apply("DATE_FORMAT(enforcement_time, '%Y-%m-%d') LIKE CONCAT('%',{0},'%')", sv) + .or().like(EnforcementRegistration::getCheckCss, sv) + .or().like(EnforcementRegistration::getCheckCategory, sv) + .or().like(EnforcementRegistration::getEnforceReason, sv) + .or().like(EnforcementRegistration::getRemark, sv) + .or().like(EnforcementRegistration::getLawEnforcementBasisText, sv) + .or().like(EnforcementRegistration::getLawText, sv) + .or().like(EnforcementRegistration::getEnforce, sv) + .or().like(EnforcementRegistration::getLawEnforcementItem, sv) + ); + } // 日期搜索(年月) if (StringUtils.isNotBlank(bo.getDateSearch())) { diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpNoticeMessageMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpNoticeMessageMapper.xml index 892b38c8..724a6de4 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpNoticeMessageMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpNoticeMessageMapper.xml @@ -8,7 +8,7 @@ SELECT COUNT(1) FROM efcode_cp_reserve r - LEFT JOIN efcode_cp_plan p ON r.plan_id = p.id - LEFT JOIN efcode_cp_plan p2 ON r.plan_group_id = p2.id - WHERE r.sender_id != 'manual_system_sender' - AND NOT EXISTS ( - SELECT 1 - FROM sys_message_view_log smvl - WHERE smvl.source_id = p.id - AND smvl.create_by = #{userId} - AND smvl.source_type = #{sourceType} - AND smvl.is_delete = 0 - ) + LEFT JOIN efcode_cp_plan p ON r.plan_id = p.id + LEFT JOIN efcode_cp_plan p2 ON r.plan_group_id = p2.id + WHERE r.sender_id != 'manual_system_sender' and r.create_by = #{userId} + AND NOT EXISTS ( + SELECT 1 + FROM sys_message_view_log smvl + WHERE smvl.source_id = p.id + AND smvl.create_by = #{userId} + AND smvl.source_type = #{sourceType} + AND smvl.is_delete = 0 + ) diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpTaskMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpTaskMapper.xml index 8dea7e78..b188e536 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpTaskMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EfcodeCpTaskMapper.xml @@ -87,7 +87,7 @@ SELECT COUNT(1) FROM efcode_cp_plan p INNER JOIN efcode_cp_task t ON t.id = p.task_id - AND p.is_delete = 0 + AND p.is_delete = 0 and p.create_by = #{userId} AND NOT EXISTS ( SELECT 1 FROM sys_message_view_log smvl diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementRegistrationMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementRegistrationMapper.xml index 46ada94d..8cf23ae8 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementRegistrationMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/EnforcementRegistrationMapper.xml @@ -315,6 +315,7 @@ law_enforce_category = #{lawEnforceCategory}, entrust_dept_id=#{entrustDeptId}, entrust_dept_name=#{entrustDeptName}, + other_reasons = #{otherReasons}, where id = #{id} @@ -383,6 +384,7 @@ law_enforce_category, entrust_dept_id, entrust_dept_name, + other_reasons, #{id}, @@ -437,6 +439,7 @@ #{lawEnforceCategory}, #{entrustDeptId}, #{entrustDeptName}, + #{otherReasons}, diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml index fd4a2887..b958a7e3 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationEINOFTReportMapper.xml @@ -41,7 +41,7 @@ - GROUP BY er.enterprise_number + GROUP BY er.enterprise_number, er.enterprise_name, er.district, er.street ) t diff --git a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationReportMapper.xml b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationReportMapper.xml index 69767b8a..97cd3a58 100644 --- a/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationReportMapper.xml +++ b/zdxt-modules/zdxt-enforcement-code/src/main/resources/mapper/enforcementcode/report/EnforcementRegistrationReportMapper.xml @@ -152,7 +152,8 @@ er.is_evaluate, er.law_id, er.law_text, er.has_union, er.has_auto, er.union_no, er.law_enforce_category, er.entrust_dept_id, er.entrust_dept_name, - er.enterprise_address, er.district, er.street, er.zone, er.is_real_union + er.enterprise_address, er.district, er.street, er.zone, er.is_real_union, + er.other_reasons FROM enforcement_registration er LEFT JOIN sys_dict_data area ON area.dict_type = 'address_type' @@ -351,7 +352,9 @@ AND enterprise_number IS NOT NULL AND enterprise_number != '' - GROUP BY enterprise_number + GROUP BY enterprise_number, enterprise_name, district, street, + bureau_dept_name, law_enforcer, law_enforcer_two, + law_enforcement_item_text, enforcement_time ORDER BY enforcement_time DESC ) t @@ -453,7 +456,9 @@ ${dataFilter} - GROUP BY er.enterprise_number + GROUP BY er.enterprise_number, er.enterprise_name, er.district, er.street, + er.bureau_dept_id, er.bureau_dept_name, er.law_enforcer, er.law_enforcer_two, + er.law_enforcement_item_text ) t LEFT JOIN sys_dict_data area ON area.dict_type = 'address_type' diff --git a/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java b/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java index 6eb63879..e79e54e0 100644 --- a/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java +++ b/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/controller/system/SysDictDataController.java @@ -1,6 +1,7 @@ package org.dromara.system.controller.system; import cn.dev33.satoken.annotation.SaCheckPermission; +import cn.dev33.satoken.annotation.SaIgnore; import cn.hutool.core.util.ObjectUtil; import jakarta.servlet.http.HttpServletResponse; import lombok.RequiredArgsConstructor; @@ -81,7 +82,7 @@ public class SysDictDataController extends BaseController { } return R.ok(data); } - + @SaIgnore @GetMapping(value = "/dictType") public R> dictTypes(String dictType) { List data = dictTypeService.selectDictDataByType(dictType); diff --git a/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java b/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java index a7bc0694..1189f87f 100644 --- a/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java +++ b/zdxt-modules/zdxt-system/src/main/java/org/dromara/system/service/impl/SysDictTypeServiceImpl.java @@ -101,7 +101,7 @@ public class SysDictTypeServiceImpl implements ISysDictTypeService, DictService * @param dictType 字典类型 * @return 字典数据集合信息 */ - @Cacheable(cacheNames = CacheNames.SYS_DICT, key = "#dictType") + //@Cacheable(cacheNames = CacheNames.SYS_DICT, key = "#dictType") @Override public List selectDictDataByType(String dictType) { List dictDatas = dictDataMapper.selectDictDataByType(dictType); diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/index.js b/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/index.js index 0f7ff5b4..401bd76d 100644 --- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/index.js +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/api/enforcement/index.js @@ -75,7 +75,7 @@ export const addNonRegistration = (params, success, error) => _post(baseUrl + "/ export const queryEnforcementNoticeList = (params, success, error) => _post(baseUrl + "/enforcement/queryList", params, success, error); // 执法预告列表 -export const getLawNoticeList = (params, success, error) => _post(baseUrl + "/enforcement/queryList", params, success, error); +export const getLawNoticeList = (params, success, error) => _get(baseUrl + "/cpNotice/myList", params, success, error); //计划通知列表 export const queryListNoPermission = (params, success, error) => _get(baseUrl + "/inspectionProgram/queryListNoPermission", params, success, error); diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/EnforcementInfoSection.vue b/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/EnforcementInfoSection.vue index 3d74865f..55db0636 100644 --- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/EnforcementInfoSection.vue +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/EnforcementInfoSection.vue @@ -165,6 +165,7 @@ import { buildEnforcementTimeFromPicker, } from '@/util/enforcementTimePicker'; import { queryUnionByHour } from '@/api/enforcement'; +import { loadDict } from '@/util/dictUtil'; const props = defineProps({ formData: { @@ -216,12 +217,7 @@ const unionList = ref([]); const unionLoading = ref(false); const showReasonPicker = ref(false); -const reasonOptions = [ - { text: '企业原因', value: '企业原因' }, - { text: '系统原因', value: '系统原因' }, - { text: '扫码未能显示企业信息', value: '扫码未能显示企业信息' }, - { text: '其他', value: '其他' } -]; +const reasonOptions = ref([]); onMounted(() => { const range = getEnforcementTimeDateRange(7); @@ -229,6 +225,10 @@ onMounted(() => { maxDate.value = range.maxDate; defaultPickerValue = range.currentDate; datePickerValue.value = [...range.currentDate]; + + loadDict('no-scan-reason', (columns) => { + reasonOptions.value = columns; + }); }); watch(() => props.formData.jointEnforcement, (newVal) => { @@ -291,7 +291,8 @@ const onTimeConfirm = ({ selectedValues }) => { const selectReason = ({ selectedOptions }) => { props.formData.reason = selectedOptions[0]?.text || ''; - if (props.formData.reason !== '其他') { + const selectedValue = selectedOptions[0]?.value || ''; + if (selectedValue !== '其他' && selectedOptions[0]?.text !== '其他') { props.formData.other_reasons = ''; } showReasonPicker.value = false; diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/NonEnforcementInfoSection.vue b/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/NonEnforcementInfoSection.vue index 272942d7..b09776c1 100644 --- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/NonEnforcementInfoSection.vue +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/components/enforcement/register/NonEnforcementInfoSection.vue @@ -109,13 +109,8 @@ const matterOptions = ref([]); const showMatterPicker = ref(false); const showTimePicker = ref(false); const showReasonPicker = ref(false); +const reasonOptions = ref([]); -const reasonOptions = [ - { text: '企业原因', value: '企业原因' }, - { text: '系统原因', value: '系统原因' }, - { text: '扫码未能显示企业信息', value: '扫码未能显示企业信息' }, - { text: '其他', value: '其他' } -]; const datePickerValue = ref([]); const minDate = ref(new Date()); const maxDate = ref(new Date()); @@ -130,7 +125,8 @@ const selectMatter = ({ selectedOptions }) => { // 选择原因 const selectReason = ({ selectedOptions }) => { props.formData.reason = selectedOptions[0]?.text || ''; - if (props.formData.reason !== '其他') { + const selectedValue = selectedOptions[0]?.value || ''; + if (selectedValue !== '其他' && selectedOptions[0]?.text !== '其他') { props.formData.other_reasons = ''; } showReasonPicker.value = false; @@ -147,6 +143,10 @@ onMounted(() => { loadDict('no_check_category', (columns) => { matterOptions.value = columns; }); + + loadDict('no-scan-reason', (columns) => { + reasonOptions.value = columns; + }); }); const openTimePicker = () => { diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/util/lunar.js b/zdxt-web-client/zdxt-efcode-enforcement-app/src/util/lunar.js new file mode 100644 index 00000000..8a6f8811 --- /dev/null +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/util/lunar.js @@ -0,0 +1,110 @@ +const lunarMonths = ['', '正月', '二月', '三月', '四月', '五月', '六月', '七月', '八月', '九月', '十月', '冬月', '腊月']; +const lunarDays = ['', '初一', '初二', '初三', '初四', '初五', '初六', '初七', '初八', '初九', '初十', + '十一', '十二', '十三', '十四', '十五', '十六', '十七', '十八', '十九', '二十', + '廿一', '廿二', '廿三', '廿四', '廿五', '廿六', '廿七', '廿八', '廿九', '三十', +]; + +const lunarInfo = [ + 0x04bd8, 0x04ae0, 0x0a570, 0x054d5, 0x0d260, 0x0d950, 0x16554, 0x056a0, 0x09ad0, 0x055d2, + 0x04ae0, 0x0a5b6, 0x0a4d0, 0x0d250, 0x1d255, 0x0b540, 0x0d6a0, 0x0ada2, 0x095b0, 0x14977, + 0x04970, 0x0a4b0, 0x0b4b5, 0x06a50, 0x06d40, 0x1ab54, 0x02b60, 0x09570, 0x052f2, 0x04970, + 0x06566, 0x0d4a0, 0x0ea50, 0x06e95, 0x05ad0, 0x02b60, 0x186e3, 0x092e0, 0x1c8d7, 0x0c950, + 0x0d4a0, 0x1d8a6, 0x0b550, 0x056a0, 0x1a5b4, 0x025d0, 0x092d0, 0x0d2b2, 0x0a950, 0x0b557, + 0x06ca0, 0x0b550, 0x15355, 0x04da0, 0x0a5d0, 0x14573, 0x052d0, 0x0a9a8, 0x0e950, 0x06aa0, + 0x0aea6, 0x0ab50, 0x04b60, 0x0aae4, 0x0a570, 0x05260, 0x0f263, 0x0d950, 0x05b57, 0x056a0, + 0x096d0, 0x04dd5, 0x04ad0, 0x0a4d0, 0x0d4d4, 0x0d250, 0x0d558, 0x0b540, 0x0b5a0, 0x195a6, + 0x095b0, 0x049b0, 0x0a974, 0x0a4b0, 0x0b27a, 0x06a50, 0x06d40, 0x0af46, 0x0ab60, 0x09570, + 0x04af5, 0x04970, 0x064b0, 0x074a3, 0x0ea50, 0x06b58, 0x055c0, 0x0ab60, 0x096d5, 0x092e0, + 0x0c960, 0x0d954, 0x0d4a0, 0x0da50, 0x07552, 0x056a0, 0x0abb7, 0x025d0, 0x092d0, 0x0cab5, + 0x0a950, 0x0b4a0, 0x0baa4, 0x0ad50, 0x055d9, 0x04ba0, 0x0a5b0, 0x15176, 0x052b0, 0x0a930, + 0x07954, 0x06aa0, 0x0ad50, 0x05b52, 0x04b60, 0x0a6e6, 0x0a4e0, 0x0d260, 0x0ea65, 0x0d530, + 0x05aa0, 0x076a3, 0x096d0, 0x04bd7, 0x04ad0, 0x0a4d0, 0x1d0b6, 0x0d250, 0x0d520, 0x0dd45, + 0x0b5a0, 0x056d0, 0x055b2, 0x049b0, 0x0a577, 0x0a4b0, 0x0aa50, 0x1b255, 0x06d20, 0x0ada0 +]; + +const lYearDays = (y) => { + let i, sum = 348; + for (i = 0x8000; i > 0x8; i >>= 1) { + sum += (lunarInfo[y - 1900] & i) ? 1 : 0; + } + return (sum + leapDays(y)); +}; + +const leapMonth = (y) => { + return (lunarInfo[y - 1900] & 0xf); +}; + +const leapDays = (y) => { + if (leapMonth(y)) { + return ((lunarInfo[y - 1900] & 0x10000) ? 30 : 29); + } + return (0); +}; + +const monthDays = (y, m) => { + return ((lunarInfo[y - 1900] & (0x10000 >> m)) ? 30 : 29); +}; + +export const getLunarDay = (date) => { + const year = date.getFullYear(); + const month = date.getMonth() + 1; + const day = date.getDate(); + + if (year < 1900 || year > 2100) return ''; + + let i, leap = 0, temp = 0; + + let offset = (Date.UTC(year, month - 1, day) - Date.UTC(1900, 0, 31)) / 86400000; + + for (i = 1900; i < 2101 && offset > 0; i++) { + temp = lYearDays(i); + offset -= temp; + } + + if (offset < 0) { + offset += temp; + i--; + } + + const lunarYear = i; + leap = leapMonth(i); + let isLeap = false; + + for (i = 1; i < 13 && offset > 0; i++) { + if (leap > 0 && i === leap + 1 && isLeap === false) { + --i; + isLeap = true; + temp = leapDays(lunarYear); + } else { + temp = monthDays(lunarYear, i); + } + + if (isLeap === true && i === leap + 1) { + isLeap = false; + } + + offset -= temp; + } + + if (offset === 0 && leap > 0 && i === leap + 1) { + if (isLeap) { + isLeap = false; + } else { + isLeap = true; + --i; + } + } + + if (offset < 0) { + offset += temp; + --i; + } + + const lunarMonth = i; + const lunarDay = Math.floor(offset) + 1; + + if (lunarDay === 1) { + return lunarMonths[lunarMonth] || ''; + } + return lunarDays[lunarDay] || ''; +}; \ No newline at end of file diff --git a/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/enforce/enforcementList.vue b/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/enforce/enforcementList.vue index f3c92ab5..26194a75 100644 --- a/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/enforce/enforcementList.vue +++ b/zdxt-web-client/zdxt-efcode-enforcement-app/src/views/enforcement/enforce/enforcementList.vue @@ -1,13 +1,7 @@