修改并优化了一些功能及bug

This commit is contained in:
王利强
2026-05-14 13:45:46 +08:00
parent 805747d1d9
commit 2322fcf39a
51 changed files with 802 additions and 346 deletions

View File

@@ -0,0 +1,8 @@
{
"hash": "630e51e5",
"configHash": "b64a06b8",
"lockfileHash": "8f13fda0",
"browserHash": "a2f0472e",
"optimized": {},
"chunks": {}
}

View File

@@ -0,0 +1,3 @@
{
"type": "module"
}

View File

@@ -1 +1 @@
{"version":3,"file":"assets.js","sources":["static/home_icon/jianbianbeijing.png","static/yujin/yujin_sousuo.png","static/yujin/yujin_tongji.png","static/my/Notification.png","static/my/Account.png","static/my/Customer service.png","static/my/Phone.png","static/index/index_bg.png","static/index/phone.png","static/index/lock.png","static/index/蒙版组 260.png"],"sourcesContent":["export default \"__VITE_ASSET__ea9fb36d__\"","export default \"__VITE_ASSET__8fe3bf4d__\"","export default \"__VITE_ASSET__d9a3c09a__\"","export default \"__VITE_ASSET__553a3ebb__\"","export default \"__VITE_ASSET__ebdbece8__\"","export default \"__VITE_ASSET__2a9450b4__\"","export default \"__VITE_ASSET__57c23edd__\"","export default \"__VITE_ASSET__f48d129d__\"","export default \"__VITE_ASSET__6b0aa87a__\"","export default \"__VITE_ASSET__e0160358__\"","export default \"__VITE_ASSET__d3a3f4fb__\""],"names":[],"mappings":";AAAA,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,aAAA;;;;;;;;;;;;"}
{"version":3,"file":"assets.js","sources":["static/home_icon/jianbianbeijing.png","static/yujin/yujin_sousuo.png","static/yujin/yujin_tongji.png","static/my/edit.png","static/my/Notification.png","static/my/Account.png","static/my/Customer service.png","static/my/Phone.png","static/index/index_bg.png","static/index/phone.png","static/index/lock.png","static/index/蒙版组 260.png"],"sourcesContent":["export default \"__VITE_ASSET__ea9fb36d__\"","export default \"__VITE_ASSET__8fe3bf4d__\"","export default \"__VITE_ASSET__d9a3c09a__\"","export default \"__VITE_ASSET__e5df6314__\"","export default \"__VITE_ASSET__553a3ebb__\"","export default \"__VITE_ASSET__ebdbece8__\"","export default \"__VITE_ASSET__2a9450b4__\"","export default \"__VITE_ASSET__57c23edd__\"","export default \"__VITE_ASSET__f48d129d__\"","export default \"__VITE_ASSET__6b0aa87a__\"","export default \"__VITE_ASSET__e0160358__\"","export default \"__VITE_ASSET__d3a3f4fb__\""],"names":[],"mappings":";AAAA,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,eAAA;ACAf,MAAe,aAAA;ACAf,MAAe,aAAA;;;;;;;;;;;;;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -1 +1 @@
{"version":3,"file":"checklist.js","sources":["pages/checklist/checklist.vue","F:/software/HBuilderX/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvY2hlY2tsaXN0L2NoZWNrbGlzdC52dWU"],"sourcesContent":["<template>\r\n\t<view class=\"page padding\">\r\n\t\t<!-- 检查表列表 -->\r\n\t\t<view class=\"checklist-card\" v-for=\"item in list\" :key=\"item.id\">\r\n\t\t\t<view class=\"card-name\">{{ item.name }}</view>\r\n\t\t</view>\r\n\t\t\r\n\t\t<!-- 空状态 -->\r\n\t\t<view v-if=\"list.length === 0\" class=\"empty-tip\">\r\n\t\t\t<text>暂无检查表</text>\r\n\t\t</view>\r\n\t\t\r\n\t\t<!-- 新增按钮 -->\r\n\t\t<button class=\"add-btn\" @click=\"goToAdd\">\r\n\t\t\t<text class=\"cuIcon-add\"></text>\r\n\t\t\t<text>新增检查表</text>\r\n\t\t</button>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref } from 'vue'\r\nimport { onShow } from '@dcloudio/uni-app'\r\nimport { getCheckTableList } from '@/request/api.js'\r\n\r\nconst list = ref([])\r\n\r\n// 获取检查表列表\r\nconst fetchList = async () => {\r\n\ttry {\r\n\t\tconst res = await getCheckTableList({ pageNum: 1, pageSize: 100 });\r\n\t\tif (res.code === 0) {\r\n\t\t\tlist.value = res.data.records || [];\r\n\t\t}\r\n\t} catch (error) {\r\n\t\tconsole.error('获取检查表列表失败:', error);\r\n\t}\r\n}\r\n\r\n// 跳转到新增页面\r\nconst goToAdd = () => {\r\n\tuni.navigateTo({\r\n\t\turl: '/pages/editchecklist/editchecklist'\r\n\t})\r\n}\r\n\r\n// 每次显示页面时刷新数据\r\nonShow(() => {\r\n\tfetchList();\r\n})\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.page {\r\n\tmin-height: 100vh;\r\n\tbackground: #EBF2FC;\r\n\tpadding-bottom: 120rpx;\r\n}\r\n\r\n.checklist-card {\r\n\tbackground: #fff;\r\n\tborder-radius: 16rpx;\r\n\tpadding: 30rpx;\r\n\tmargin-bottom: 20rpx;\r\n\tbox-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05);\r\n\t\r\n\t.card-name {\r\n\t\tfont-size: 32rpx;\r\n\t\tcolor: #333;\r\n\t\tfont-weight: 500;\r\n\t}\r\n}\r\n\r\n.empty-tip {\r\n\ttext-align: center;\r\n\tpadding: 100rpx 0;\r\n\tcolor: #999;\r\n\tfont-size: 28rpx;\r\n}\r\n\r\n.add-btn {\r\n\tposition: fixed;\r\n\tbottom: 40rpx;\r\n\tleft: 30rpx;\r\n\tright: 30rpx;\r\n\theight: 90rpx;\r\n\tbackground: linear-gradient(135deg, #667eea 0%, #2668EA 100%);\r\n\tborder-radius: 45rpx;\r\n\tcolor: #fff;\r\n\tfont-size: 32rpx;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tjustify-content: center;\r\n\tbox-shadow: 0 8rpx 20rpx rgba(102, 126, 234, 0.4);\r\n\t\r\n\t.cuIcon-add {\r\n\t\tmargin-right: 10rpx;\r\n\t\tfont-size: 36rpx;\r\n\t}\r\n}\r\n</style>","import MiniProgramPage from 'E:/hexieyun/ThreeChecksOneExposure_platform/12.07chongqixinde/三查一曝光小程序/threeonecheck_小程序/pages/checklist/checklist.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","getCheckTableList","uni","onShow"],"mappings":";;;;;;AAyBA,UAAM,OAAOA,cAAG,IAAC,EAAE;AAGnB,UAAM,YAAY,YAAY;AAC7B,UAAI;AACH,cAAM,MAAM,MAAMC,YAAAA,kBAAkB,EAAE,SAAS,GAAG,UAAU,IAAG,CAAE;AACjE,YAAI,IAAI,SAAS,GAAG;AACnB,eAAK,QAAQ,IAAI,KAAK,WAAW,CAAA;AAAA,QACjC;AAAA,MACD,SAAQ,OAAO;AACfC,kFAAc,cAAc,KAAK;AAAA,MACjC;AAAA,IACF;AAGA,UAAM,UAAU,MAAM;AACrBA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK;AAAA,MACP,CAAE;AAAA,IACF;AAGAC,kBAAAA,OAAO,MAAM;AACZ;IACD,CAAC;;;;;;;;;;;;;;;;;;AChDD,GAAG,WAAW,eAAe;"}
{"version":3,"file":"checklist.js","sources":["pages/checklist/checklist.vue","F:/software/HBuilderX/HBuilderX/plugins/uniapp-cli-vite/uniPage:/cGFnZXMvY2hlY2tsaXN0L2NoZWNrbGlzdC52dWU"],"sourcesContent":["<template>\r\n\t<view class=\"page padding\">\r\n\t\t<!-- 检查表列表 -->\r\n\t\t<view class=\"checklist-card\" v-for=\"item in list\" :key=\"item.id\">\r\n\t\t\t<view class=\"card-name\">{{ item.name }}</view>\r\n\t\t</view>\r\n\t\t\r\n\t\t<!-- 空状态 -->\r\n\t\t<view v-if=\"list.length === 0\" class=\"empty-tip\">\r\n\t\t\t<text>暂无检查表</text>\r\n\t\t</view>\r\n\t\t\r\n\t\t<!-- 新增按钮 -->\r\n\t\t<button class=\"add-btn\" @click=\"goToAdd\">\r\n\t\t\t<!-- <text class=\"cuIcon-add\"></text> -->\r\n\t\t\t<text>新增检查表</text>\r\n\t\t</button>\r\n\t</view>\r\n</template>\r\n\r\n<script setup>\r\nimport { ref } from 'vue'\r\nimport { onShow } from '@dcloudio/uni-app'\r\nimport { getCheckTableList } from '@/request/api.js'\r\n\r\nconst list = ref([])\r\n\r\n// 获取检查表列表\r\nconst fetchList = async () => {\r\n\ttry {\r\n\t\tconst res = await getCheckTableList({ pageNum: 1, pageSize: 100 });\r\n\t\tif (res.code === 0) {\r\n\t\t\tlist.value = res.data.records || [];\r\n\t\t}\r\n\t} catch (error) {\r\n\t\tconsole.error('获取检查表列表失败:', error);\r\n\t}\r\n}\r\n\r\n// 跳转到新增页面\r\nconst goToAdd = () => {\r\n\tuni.navigateTo({\r\n\t\turl: '/pages/editchecklist/editchecklist'\r\n\t})\r\n}\r\n\r\n// 每次显示页面时刷新数据\r\nonShow(() => {\r\n\tfetchList();\r\n})\r\n</script>\r\n\r\n<style lang=\"scss\" scoped>\r\n.page {\r\n\tmin-height: 100vh;\r\n\tbackground: #EBF2FC;\r\n\tpadding-bottom: 120rpx;\r\n}\r\n\r\n.checklist-card {\r\n\tbackground: #fff;\r\n\tborder-radius: 16rpx;\r\n\tpadding: 30rpx;\r\n\tmargin-bottom: 20rpx;\r\n\tbox-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.05);\r\n\t\r\n\t.card-name {\r\n\t\tfont-size: 32rpx;\r\n\t\tcolor: #333;\r\n\t\tfont-weight: 500;\r\n\t}\r\n}\r\n\r\n.empty-tip {\r\n\ttext-align: center;\r\n\tpadding: 100rpx 0;\r\n\tcolor: #999;\r\n\tfont-size: 28rpx;\r\n}\r\n\r\n.add-btn {\r\n\tposition: fixed;\r\n\tbottom: 40rpx;\r\n\tleft: 30rpx;\r\n\tright: 30rpx;\r\n\theight: 90rpx;\r\n\tbackground: linear-gradient(135deg, #667eea 0%, #2668EA 100%);\r\n\tborder-radius: 45rpx;\r\n\tcolor: #fff;\r\n\tfont-size: 32rpx;\r\n\tdisplay: flex;\r\n\talign-items: center;\r\n\tjustify-content: center;\r\n\tbox-shadow: 0 8rpx 20rpx rgba(102, 126, 234, 0.4);\r\n\t\r\n\t.cuIcon-add {\r\n\t\tmargin-right: 10rpx;\r\n\t\tfont-size: 36rpx;\r\n\t}\r\n}\r\n</style>","import MiniProgramPage from 'E:/hexieyun/ThreeChecksOneExposure_platform/12.07chongqixinde/三查一曝光小程序/threeonecheck_小程序/pages/checklist/checklist.vue'\nwx.createPage(MiniProgramPage)"],"names":["ref","getCheckTableList","uni","onShow"],"mappings":";;;;;;AAyBA,UAAM,OAAOA,cAAG,IAAC,EAAE;AAGnB,UAAM,YAAY,YAAY;AAC7B,UAAI;AACH,cAAM,MAAM,MAAMC,YAAAA,kBAAkB,EAAE,SAAS,GAAG,UAAU,IAAG,CAAE;AACjE,YAAI,IAAI,SAAS,GAAG;AACnB,eAAK,QAAQ,IAAI,KAAK,WAAW,CAAA;AAAA,QACjC;AAAA,MACD,SAAQ,OAAO;AACfC,kFAAc,cAAc,KAAK;AAAA,MACjC;AAAA,IACF;AAGA,UAAM,UAAU,MAAM;AACrBA,oBAAAA,MAAI,WAAW;AAAA,QACd,KAAK;AAAA,MACP,CAAE;AAAA,IACF;AAGAC,kBAAAA,OAAO,MAAM;AACZ;IACD,CAAC;;;;;;;;;;;;;;;;;;AChDD,GAAG,WAAW,eAAe;"}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@@ -2,8 +2,9 @@
const _imports_0$6 = "/static/home_icon/jianbianbeijing.png";
const _imports_0$5 = "/static/yujin/yujin_sousuo.png";
const _imports_1$3 = "/static/yujin/yujin_tongji.png";
const _imports_0$4 = "/static/my/Notification.png";
const _imports_1$2 = "/static/my/Account.png";
const _imports_0$4 = "/static/my/edit.png";
const _imports_1$2 = "/static/my/Notification.png";
const _imports_2 = "/static/my/Account.png";
const _imports_0$3 = "/static/my/Customer service.png";
const _imports_1$1 = "/static/my/Phone.png";
const _imports_0$2 = "/static/index/index_bg.png";
@@ -21,4 +22,5 @@ exports._imports_1 = _imports_1$3;
exports._imports_1$1 = _imports_1$2;
exports._imports_1$2 = _imports_1$1;
exports._imports_1$3 = _imports_1;
exports._imports_2 = _imports_2;
//# sourceMappingURL=../../.sourcemap/mp-weixin/common/assets.js.map

View File

@@ -7094,9 +7094,9 @@ function isConsoleWritable() {
return isWritable;
}
function initRuntimeSocketService() {
const hosts = "172.22.64.1,192.168.1.144,127.0.0.1";
const hosts = "172.29.160.1,192.168.1.144,127.0.0.1";
const port = "8090";
const id = "mp-weixin_6qfIum";
const id = "mp-weixin_h9Tzlz";
const lazy = typeof swan !== "undefined";
let restoreError = lazy ? () => {
} : initOnError();

View File

@@ -149,7 +149,7 @@ const _sfc_main = {
};
const confirmHazard = () => {
if (hazardFileList.value.length === 0) {
common_vendor.index.showToast({ title: "请上传隐患图片/视频", icon: "none" });
common_vendor.index.showToast({ title: "请上传隐患图片", icon: "none" });
return;
}
if (!hazardFormData.title) {

File diff suppressed because one or more lines are too long

View File

@@ -33,6 +33,20 @@ const _sfc_main = {
const dataList = common_vendor.ref([]);
const pageNum = common_vendor.ref(1);
const pageSize = common_vendor.ref(20);
const statusTabs = common_vendor.ref([
{ label: "全部状态", value: 0, count: null },
{ label: "逾期未检", value: 1, count: null },
{ label: "严重逾期", value: 2, count: null },
{ label: "期限内待检", value: 3, count: null },
{ label: "逾期已完成", value: 4, count: null },
{ label: "按期已完成", value: 5, count: null }
]);
const activeStatusTab = common_vendor.ref(0);
const switchStatusTab = (index) => {
activeStatusTab.value = index;
pageNum.value = 1;
fetchData();
};
const formatDate = (timestamp) => {
const date = new Date(timestamp);
const year = date.getFullYear();
@@ -89,6 +103,10 @@ const _sfc_main = {
if (searchForm.deptName && searchForm.deptName.trim()) {
params.deptName = searchForm.deptName.trim();
}
const statusValue = statusTabs.value[activeStatusTab.value].value;
if (statusValue !== 0) {
params.inspectionStatus = statusValue;
}
const res = await request_api.getInspectionWarningList(params);
if (res.code === 0) {
if (res.data.statistics) {
@@ -102,7 +120,7 @@ const _sfc_main = {
}
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/Inspectionwarning/Inspectionwarning.vue:255", "获取预警列表失败:", error);
common_vendor.index.__f__("error", "at pages/Inspectionwarning/Inspectionwarning.vue:277", "获取预警列表失败:", error);
}
};
const handleSearch = () => {
@@ -114,64 +132,66 @@ const _sfc_main = {
});
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.f(_ctx.warningList, (item, index, i0) => {
return {
a: common_vendor.t(item.name),
b: _ctx.activeIndex === index ? 1 : "",
c: index,
d: common_vendor.o(($event) => _ctx.switchTab(index), index)
};
}),
b: common_assets._imports_0$1,
c: common_vendor.t(searchForm.startDate || "请选择"),
d: common_vendor.n(searchForm.startDate ? "date-value" : "date-placeholder"),
e: common_vendor.o(($event) => showStartDatePicker.value = true),
f: common_vendor.o(onStartDateConfirm),
a: common_assets._imports_0$1,
b: common_vendor.t(searchForm.startDate || "请选择"),
c: common_vendor.n(searchForm.startDate ? "date-value" : "date-placeholder"),
d: common_vendor.o(($event) => showStartDatePicker.value = true),
e: common_vendor.o(onStartDateConfirm),
f: common_vendor.o(($event) => showStartDatePicker.value = false),
g: common_vendor.o(($event) => showStartDatePicker.value = false),
h: common_vendor.o(($event) => showStartDatePicker.value = false),
i: common_vendor.o(($event) => startDateValue.value = $event),
j: common_vendor.p({
h: common_vendor.o(($event) => startDateValue.value = $event),
i: common_vendor.p({
show: showStartDatePicker.value,
mode: "date",
modelValue: startDateValue.value
}),
k: common_vendor.t(searchForm.endDate || "请选择"),
l: common_vendor.n(searchForm.endDate ? "date-value" : "date-placeholder"),
m: common_vendor.o(($event) => showEndDatePicker.value = true),
n: common_vendor.o(onEndDateConfirm),
j: common_vendor.t(searchForm.endDate || "请选择"),
k: common_vendor.n(searchForm.endDate ? "date-value" : "date-placeholder"),
l: common_vendor.o(($event) => showEndDatePicker.value = true),
m: common_vendor.o(onEndDateConfirm),
n: common_vendor.o(($event) => showEndDatePicker.value = false),
o: common_vendor.o(($event) => showEndDatePicker.value = false),
p: common_vendor.o(($event) => showEndDatePicker.value = false),
q: common_vendor.o(($event) => endDateValue.value = $event),
r: common_vendor.p({
p: common_vendor.o(($event) => endDateValue.value = $event),
q: common_vendor.p({
show: showEndDatePicker.value,
mode: "date",
modelValue: endDateValue.value
}),
s: common_vendor.o(($event) => searchForm.deptName = $event),
t: common_vendor.p({
r: common_vendor.o(($event) => searchForm.deptName = $event),
s: common_vendor.p({
placeholder: "请输入公司名称",
border: "surround",
modelValue: searchForm.deptName
}),
v: common_vendor.o(handleSearch),
w: common_assets._imports_1,
x: common_vendor.t(statistics.total),
y: common_vendor.t(statistics.overdue),
z: common_vendor.t(statistics.completed),
A: common_vendor.t(statistics.pending),
t: common_vendor.o(handleSearch),
v: common_assets._imports_1,
w: common_vendor.t(statistics.total),
x: common_vendor.t(statistics.overdue),
y: common_vendor.t(statistics.completed),
z: common_vendor.t(statistics.pending),
A: common_vendor.f(statusTabs.value, (tab, index, i0) => {
return common_vendor.e({
a: common_vendor.t(tab.label),
b: common_vendor.t(tab.count != null ? tab.count : ""),
c: activeStatusTab.value === index
}, activeStatusTab.value === index ? {} : {}, {
d: index,
e: activeStatusTab.value === index ? 1 : "",
f: common_vendor.o(($event) => switchStatusTab(index), index)
});
}),
B: common_vendor.f(dataList.value, (item, index, i0) => {
return {
a: common_vendor.t(getStatusText(item.overdueDays, item.statusName)),
b: common_vendor.n(getStatusClass(item.overdueDays)),
c: common_vendor.t(index + 1),
d: common_vendor.t(item.deptName || "-"),
e: common_vendor.t(item.planName || "-"),
f: common_vendor.t(item.cycleName || "-"),
g: common_vendor.t(item.taskDate || "-"),
h: common_vendor.t(item.finishTime || "未完成"),
i: common_vendor.t(item.executorName || "-"),
j: common_vendor.t(item.overdueDays || "-"),
k: item.id
a: common_vendor.t(item.deptName || "-"),
b: common_vendor.t(getStatusText(item.overdueDays, item.statusName)),
c: common_vendor.n(getStatusClass(item.overdueDays)),
d: common_vendor.t(item.planName || "-"),
e: common_vendor.t(item.cycleName || "-"),
f: common_vendor.t(item.taskDate || "-"),
g: common_vendor.t(item.finishTime || "未完成"),
h: common_vendor.t(item.executorName || "-"),
i: common_vendor.t(item.overdueDays || "-"),
j: item.id
};
}),
C: dataList.value.length === 0

File diff suppressed because one or more lines are too long

View File

@@ -120,17 +120,38 @@
margin-right: 12rpx;
}
.list-card.data-v-00b99536 {
position: relative;
background: #FFFFFF;
box-shadow: 0rpx 2rpx 10rpx rgba(0, 0, 0, 0.08);
border-left: 8rpx solid #2667E9;
border-radius: 16rpx;
padding: 30rpx;
padding: 0;
margin-bottom: 20rpx;
overflow: hidden;
}
.list-card .card-header.data-v-00b99536 {
margin-bottom: 20rpx;
.list-card .card-title-row.data-v-00b99536 {
display: flex;
justify-content: space-between;
align-items: center;
background: linear-gradient(135deg, #4A7CF7 0%, #2667E9 100%);
padding: 24rpx 30rpx;
}
.list-card .card-company-name.data-v-00b99536 {
font-size: 32rpx;
font-weight: bold;
color: #fff;
flex: 1;
margin-right: 16rpx;
}
.list-card .card-status-tag.data-v-00b99536 {
padding: 8rpx 24rpx;
border-radius: 8rpx;
white-space: nowrap;
flex-shrink: 0;
font-size: 24rpx;
color: #fff;
font-weight: 500;
}
.list-card .card-body.data-v-00b99536 {
padding: 30rpx;
}
.list-card .card-row.data-v-00b99536 {
display: flex;
@@ -138,6 +159,9 @@
font-size: 28rpx;
line-height: 1.5;
}
.list-card .card-row.data-v-00b99536:first-of-type {
margin-top: 0;
}
.list-card .card-row .row-label.data-v-00b99536 {
color: #999;
white-space: nowrap;
@@ -147,23 +171,6 @@
color: #333;
word-break: break-all;
}
.status-tag.data-v-00b99536 {
position: absolute;
top: 0;
right: 0;
width: 160rpx;
height: 50rpx;
display: flex;
align-items: center;
justify-content: center;
transform: rotate(0deg);
border-radius: 0 16rpx 0 16rpx;
}
.status-tag .status-text.data-v-00b99536 {
font-size: 22rpx;
color: #fff;
font-weight: 500;
}
.status-serious.data-v-00b99536 {
background: linear-gradient(135deg, #FF6B6B 0%, #EE5A5A 100%);
}
@@ -181,4 +188,42 @@
padding: 100rpx 0;
color: #999;
font-size: 28rpx;
}
.status-tabs.data-v-00b99536 {
white-space: nowrap;
background: #fff;
border-radius: 16rpx;
margin-bottom: 20rpx;
padding: 0 10rpx;
}
.status-tabs-inner.data-v-00b99536 {
display: inline-flex;
align-items: center;
height: 88rpx;
white-space: nowrap;
}
.status-tab-item.data-v-00b99536 {
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 0 24rpx;
height: 88rpx;
position: relative;
}
.status-tab-text.data-v-00b99536 {
font-size: 26rpx;
color: #666;
}
.status-tab-active .status-tab-text.data-v-00b99536 {
color: #2667E9;
font-weight: bold;
}
.status-tab-bar.data-v-00b99536 {
position: absolute;
bottom: 8rpx;
width: 40rpx;
height: 6rpx;
background: #2667E9;
border-radius: 3rpx;
}

View File

@@ -61,6 +61,7 @@ const _sfc_main = {
const submitData = {
name: formData.name,
color: formData.color
// enterpriseId: userInfo.deptId
};
let res;
if (isEdit.value) {
@@ -78,7 +79,7 @@ const _sfc_main = {
loadAreaList();
}
} catch (err) {
common_vendor.index.__f__("error", "at pages/area/management.vue:144", "提交失败:", err);
common_vendor.index.__f__("error", "at pages/area/management.vue:152", "提交失败:", err);
common_vendor.index.showToast({ title: "操作失败", icon: "none" });
} finally {
submitting.value = false;
@@ -98,7 +99,7 @@ const _sfc_main = {
loadAreaList();
}
} catch (err) {
common_vendor.index.__f__("error", "at pages/area/management.vue:166", "删除失败:", err);
common_vendor.index.__f__("error", "at pages/area/management.vue:174", "删除失败:", err);
common_vendor.index.showToast({ title: "删除失败", icon: "none" });
}
}

View File

@@ -1 +1 @@
<view class="{{['padding', 'page', 'data-v-847f15e8', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}" id="{{h}}"><view wx:if="{{a}}" class="area-list data-v-847f15e8"><view wx:for="{{b}}" wx:for-item="item" wx:key="f" class="padding bg-white radius margin-bottom data-v-847f15e8"><view class="flex justify-between data-v-847f15e8"><view class="data-v-847f15e8"><view class="text-bold text-black data-v-847f15e8">{{item.a}}</view><view class="margin-top flex align-center data-v-847f15e8"><text class="data-v-847f15e8">颜色:</text><view class="color-dot data-v-847f15e8" style="{{'background-color:' + item.b}}"></view><text class="margin-left-xs data-v-847f15e8">{{item.c}}</text></view></view><view class="data-v-847f15e8"><button class="bg-blue cu-btn data-v-847f15e8" bindtap="{{item.d}}">编辑</button><button class="bg-red cu-btn margin-left data-v-847f15e8" bindtap="{{item.e}}">删除</button></view></view></view></view><view wx:else class="empty-state data-v-847f15e8"><text class="text-gray data-v-847f15e8">暂无区域数据</text></view><button class="add-btn cuIcon-add bg-blue round data-v-847f15e8" bindtap="{{c}}">新增公司区域</button><area-form-popup wx:if="{{g}}" class="data-v-847f15e8" virtualHostClass="data-v-847f15e8" bindsubmit="{{d}}" bindclose="{{e}}" u-i="847f15e8-0" bind:__l="__l" bindupdateVisible="{{f}}" u-p="{{g}}"/></view>
<view class="{{['padding', 'page', 'data-v-847f15e8', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}" id="{{h}}"><view wx:if="{{a}}" class="area-list data-v-847f15e8"><view wx:for="{{b}}" wx:for-item="item" wx:key="f" class="padding bg-white radius margin-bottom data-v-847f15e8"><view class="flex justify-between data-v-847f15e8"><view class="data-v-847f15e8"><view class="text-bold text-black data-v-847f15e8">{{item.a}}</view><view class="margin-top flex align-center data-v-847f15e8"><text class="data-v-847f15e8">颜色:</text><view class="color-dot data-v-847f15e8" style="{{'background-color:' + item.b}}"></view><text class="margin-left-xs data-v-847f15e8">{{item.c}}</text></view></view><view class="data-v-847f15e8"><button class="bg-blue cu-btn data-v-847f15e8" bindtap="{{item.d}}">编辑</button><button class="bg-red cu-btn margin-left data-v-847f15e8" bindtap="{{item.e}}">删除</button></view></view></view></view><view wx:else class="empty-state data-v-847f15e8"><text class="text-gray data-v-847f15e8">暂无区域数据</text></view><button class="add-btn bg-blue round data-v-847f15e8" bindtap="{{c}}">新增公司区域</button><area-form-popup wx:if="{{g}}" class="data-v-847f15e8" virtualHostClass="data-v-847f15e8" bindsubmit="{{d}}" bindclose="{{e}}" u-i="847f15e8-0" bind:__l="__l" bindupdateVisible="{{f}}" u-p="{{g}}"/></view>

View File

@@ -1 +1 @@
<view class="{{['page', 'padding', 'data-v-4d00090a', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}" id="{{d}}"><view wx:for="{{a}}" wx:for-item="item" wx:key="b" class="checklist-card data-v-4d00090a"><view class="card-name data-v-4d00090a">{{item.a}}</view></view><view wx:if="{{b}}" class="empty-tip data-v-4d00090a"><text class="data-v-4d00090a">暂无检查表</text></view><button class="add-btn data-v-4d00090a" bindtap="{{c}}"><text class="cuIcon-add data-v-4d00090a"></text><text class="data-v-4d00090a">新增检查表</text></button></view>
<view class="{{['page', 'padding', 'data-v-4d00090a', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}" id="{{d}}"><view wx:for="{{a}}" wx:for-item="item" wx:key="b" class="checklist-card data-v-4d00090a"><view class="card-name data-v-4d00090a">{{item.a}}</view></view><view wx:if="{{b}}" class="empty-tip data-v-4d00090a"><text class="data-v-4d00090a">暂无检查表</text></view><button class="add-btn data-v-4d00090a" bindtap="{{c}}"><text class="data-v-4d00090a">新增检查表</text></button></view>

View File

@@ -244,6 +244,18 @@ const _sfc_main = {
url: "/pages/closeout/editor"
});
};
const getStatusClass = (status) => {
switch (status) {
case "待审核":
return "status-pending";
case "已通过":
return "status-passed";
case "已驳回":
return "status-rejected";
default:
return "status-pending";
}
};
common_vendor.onMounted(() => {
fetchWriteOffList();
});
@@ -252,13 +264,14 @@ const _sfc_main = {
a: common_vendor.f(hazardList.value, (item, index, i0) => {
return {
a: common_vendor.t(item.hazardTitle),
b: common_vendor.t(item.statusName),
c: common_vendor.t(item.hazardCreatedAt),
d: common_vendor.t(item.responsibleDeptName),
e: common_vendor.t(item.responsiblePerson),
f: common_vendor.t(item.createdAt),
g: common_vendor.o(($event) => editor(), index),
h: index
b: common_vendor.t(item.verifyResultName || "未知"),
c: common_vendor.n(getStatusClass(item.verifyResultName)),
d: common_vendor.t(item.hazardCreatedAt),
e: common_vendor.t(item.responsibleDeptName),
f: common_vendor.t(item.responsiblePerson),
g: common_vendor.t(item.createdAt),
h: common_vendor.o(($event) => editor(), index),
i: index
};
}),
b: common_vendor.o(openAddPopup),

File diff suppressed because one or more lines are too long

View File

@@ -28,6 +28,29 @@
min-height: 100vh;
background: #EBF2FC;
}
.status-tag.data-v-4b6250eb {
padding: 4rpx 16rpx;
border-radius: 6rpx;
font-size: 22rpx;
white-space: nowrap;
flex-shrink: 0;
font-weight: 500;
height: 40rpx;
line-height: 40rpx;
align-self: flex-start;
}
.status-pending.data-v-4b6250eb {
background: #FFF7E6;
color: #FA8C16;
}
.status-passed.data-v-4b6250eb {
background: #F6FFED;
color: #52C41A;
}
.status-rejected.data-v-4b6250eb {
background: #FFF1F0;
color: #F5222D;
}
.popup-content.data-v-4b6250eb {
width: 600rpx;
background: #fff;

View File

@@ -195,11 +195,21 @@ const _sfc_main = {
return `${year}-${month}-${day} ${hours}:${minutes}:${seconds}`;
};
const onStartDateConfirm = (e) => {
formData.startDate = formatDateTime(e.value);
const selectedDate = formatDateTime(e.value);
if (formData.endDate && new Date(selectedDate) > new Date(formData.endDate)) {
common_vendor.index.showToast({ title: "开始时间不能晚于结束时间", icon: "none" });
return;
}
formData.startDate = selectedDate;
showStartDatePicker.value = false;
};
const onEndDateConfirm = (e) => {
formData.endDate = formatDateTime(e.value);
const selectedDate = formatDateTime(e.value);
if (formData.startDate && new Date(selectedDate) < new Date(formData.startDate)) {
common_vendor.index.showToast({ title: "结束时间不能早于开始时间", icon: "none" });
return;
}
formData.endDate = selectedDate;
showEndDatePicker.value = false;
};
const manualCheckItems = common_vendor.ref([]);
@@ -228,7 +238,7 @@ const _sfc_main = {
}
} catch (error) {
common_vendor.index.hideLoading();
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:669", "删除检查项失败:", error);
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:681", "删除检查项失败:", error);
common_vendor.index.showToast({ title: "删除失败", icon: "none" });
}
} else {
@@ -304,7 +314,7 @@ const _sfc_main = {
hasMoreLaw.value = lawList.value.length < total;
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:756", "获取法规列表失败:", error);
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:768", "获取法规列表失败:", error);
} finally {
lawLoading.value = false;
}
@@ -384,7 +394,7 @@ const _sfc_main = {
}
} catch (error) {
common_vendor.index.hideLoading();
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:856", "添加检查项失败:", error);
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:868", "添加检查项失败:", error);
common_vendor.index.showToast({ title: "添加失败", icon: "none" });
}
};
@@ -433,7 +443,7 @@ const _sfc_main = {
hasMoreLibrary.value = libraryList.value.length < total;
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:916", "获取检查库列表失败:", error);
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:928", "获取检查库列表失败:", error);
} finally {
libraryLoading.value = false;
}
@@ -486,7 +496,7 @@ const _sfc_main = {
selectedLibraries.value = [];
} catch (error) {
common_vendor.index.hideLoading();
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:981", "获取检查库详情失败:", error);
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:993", "获取检查库详情失败:", error);
common_vendor.index.showToast({ title: "添加失败", icon: "none" });
}
};
@@ -519,6 +529,10 @@ const _sfc_main = {
common_vendor.index.showToast({ title: "请选择计划时间", icon: "none" });
return;
}
if (new Date(formData.endDate) < new Date(formData.startDate)) {
common_vendor.index.showToast({ title: "结束时间不能早于开始时间", icon: "none" });
return;
}
const items = [];
manualCheckItems.value.forEach((item) => {
if (item.id) {
@@ -528,8 +542,8 @@ const _sfc_main = {
checkItems.value.forEach((lib) => {
if (lib.details && lib.details.length > 0) {
lib.details.forEach((detail) => {
if (detail.pointId) {
items.push(detail.pointId);
if (detail.itemId) {
items.push(detail.itemId);
}
});
}
@@ -586,7 +600,7 @@ const _sfc_main = {
}
} catch (error) {
common_vendor.index.hideLoading();
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:1101", "保存失败:", error);
common_vendor.index.__f__("error", "at pages/editchecklist/editchecklist.vue:1117", "保存失败:", error);
common_vendor.index.showToast({ title: "保存失败", icon: "none" });
}
};

View File

@@ -1,5 +1,5 @@
{
"navigationBarTitleText": "编辑检查表",
"navigationBarTitleText": "添加检查表",
"usingComponents": {
"up-input": "../../uni_modules/uview-plus/components/u-input/u-input",
"up-picker": "../../uni_modules/uview-plus/components/u-picker/u-picker",

View File

@@ -34,10 +34,10 @@ const _sfc_main = {
if (userInfoStr) {
const userInfo = JSON.parse(userInfoStr);
userRole.value = userInfo.role || "";
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:211", "当前用户角色:", userRole.value);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:224", "当前用户角色:", userRole.value);
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:214", "获取用户信息失败:", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:227", "获取用户信息失败:", error);
}
};
getUserRole();
@@ -55,7 +55,7 @@ const _sfc_main = {
}
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:239", "获取任务信息失败:", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:252", "获取任务信息失败:", error);
}
};
common_vendor.onLoad((options) => {
@@ -91,7 +91,7 @@ const _sfc_main = {
areaList.value = res.data.records;
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:283", "获取区域列表失败:", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:296", "获取区域列表失败:", error);
}
};
fetchAreaList();
@@ -104,26 +104,26 @@ const _sfc_main = {
showAreaPicker.value = false;
};
const chooseLocation = () => {
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:299", "chooseLocation called");
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:312", "chooseLocation called");
showAddPopup.value = false;
setTimeout(() => {
common_vendor.index.getLocation({
type: "gcj02",
// 使用国测局坐标系(腾讯地图使用)
success: (locationRes) => {
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:308", "获取当前位置成功:", locationRes);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:321", "获取当前位置成功:", locationRes);
common_vendor.index.chooseLocation({
latitude: locationRes.latitude,
longitude: locationRes.longitude,
success: (res) => {
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:314", "选择位置成功:", res);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:327", "选择位置成功:", res);
selectedAddress.value = res.address + (res.name ? `(${res.name})` : "");
lng.value = res.longitude;
lat.value = res.latitude;
showAddPopup.value = true;
},
fail: (err) => {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:323", "选择位置失败:", err);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:336", "选择位置失败:", err);
showAddPopup.value = true;
if (err.errMsg && err.errMsg.indexOf("cancel") === -1) {
common_vendor.index.showToast({
@@ -135,17 +135,17 @@ const _sfc_main = {
});
},
fail: (err) => {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:337", "获取当前位置失败:", err);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:350", "获取当前位置失败:", err);
common_vendor.index.chooseLocation({
success: (res) => {
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:341", "选择位置成功:", res);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:354", "选择位置成功:", res);
selectedAddress.value = res.address + (res.name ? `(${res.name})` : "");
lng.value = res.longitude;
lat.value = res.latitude;
showAddPopup.value = true;
},
fail: (chooseErr) => {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:348", "选择位置失败:", chooseErr);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:361", "选择位置失败:", chooseErr);
showAddPopup.value = true;
if (chooseErr.errMsg && chooseErr.errMsg.indexOf("cancel") === -1) {
common_vendor.index.showToast({
@@ -187,7 +187,7 @@ const _sfc_main = {
});
const selectedTag = tagOptions.value[formData.tagIndex];
const tagId = selectedTag ? selectedTag.id : null;
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:395", "innnn", sourceOptions);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:408", "innnn", sourceOptions);
const params = {
title: formData.title,
//标题
@@ -214,7 +214,7 @@ const _sfc_main = {
attachments
//附件列表(图片/视频)
};
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:413", "提交的参数:", params);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:426", "提交的参数:", params);
try {
const res = await request_api.addHiddenDanger(params);
if (res.code === 0) {
@@ -239,7 +239,7 @@ const _sfc_main = {
});
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:441", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:454", error);
common_vendor.index.showToast({
title: "请求失败",
icon: "none"
@@ -259,7 +259,7 @@ const _sfc_main = {
});
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:462", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:475", error);
common_vendor.index.showToast({
title: "请求失败",
icon: "none"
@@ -341,7 +341,7 @@ const _sfc_main = {
}
},
fail: (err) => {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:558", "上传失败:", err);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:571", "上传失败:", err);
reject(err);
}
});
@@ -359,14 +359,14 @@ const _sfc_main = {
const fullImageUrl = imageFiles[0].url;
aiAnalyzing.value = true;
try {
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:580", "开始调用AI分析接口图片地址:", fullImageUrl);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:593", "开始调用AI分析接口图片地址:", fullImageUrl);
const analyzeRes = await request_api.analyzeHazardImage({
// imageUrl: 'https://yx.zhihuixiangxi.com:58880/1.png' ,
imageUrl: fullImageUrl
});
if (analyzeRes.code === 0 && analyzeRes.data) {
const aiData = analyzeRes.data;
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:588", "AI分析结果:", aiData);
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:601", "AI分析结果:", aiData);
if (aiData.title)
formData.title = aiData.title;
if (aiData.description)
@@ -388,7 +388,7 @@ const _sfc_main = {
common_vendor.index.showToast({ title: analyzeRes.msg || "AI分析失败", icon: "none" });
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:611", "AI分析接口调用失败:", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:624", "AI分析接口调用失败:", error);
common_vendor.index.showToast({ title: "AI分析失败请重试", icon: "none" });
} finally {
aiAnalyzing.value = false;
@@ -410,7 +410,7 @@ const _sfc_main = {
});
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:634", error);
common_vendor.index.__f__("error", "at pages/hiddendanger/Inspection.vue:647", error);
common_vendor.index.showToast({
title: "请求失败",
icon: "none"
@@ -452,16 +452,43 @@ const _sfc_main = {
]);
common_vendor.watch(() => formData.source, (newVal) => {
const selected = sourceOptions.value[newVal];
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:680", "隐患来源选择结果:", {
common_vendor.index.__f__("log", "at pages/hiddendanger/Inspection.vue:693", "隐患来源选择结果:", {
索引: newVal,
选中项: selected,
id: selected == null ? void 0 : selected.id,
title: selected == null ? void 0 : selected.title
});
});
const statusTabs = common_vendor.ref([
{ label: "全部状态", value: "" },
{ label: "待验收", value: "待验收" },
{ label: "待整改", value: "待整改" },
{ label: "待交办", value: "待交办" },
{ label: "验收通过", value: "验收通过" }
]);
const activeTab = common_vendor.ref(0);
const filteredList = common_vendor.computed(() => {
const currentTab = statusTabs.value[activeTab.value];
if (!currentTab || !currentTab.value) {
return hiddenDangerList.value;
}
return hiddenDangerList.value.filter((item) => item.statusName === currentTab.value);
});
return (_ctx, _cache) => {
return common_vendor.e({
a: common_vendor.f(hiddenDangerList.value, (item, k0, i0) => {
a: common_vendor.f(statusTabs.value, (tab, index, i0) => {
return common_vendor.e({
a: common_vendor.t(tab.label),
b: activeTab.value === index
}, activeTab.value === index ? {} : {}, {
c: index,
d: activeTab.value === index ? 1 : "",
e: common_vendor.o(($event) => activeTab.value = index, index)
});
}),
b: filteredList.value.length === 0
}, filteredList.value.length === 0 ? {} : {}, {
c: common_vendor.f(filteredList.value, (item, k0, i0) => {
return common_vendor.e({
a: common_vendor.t(item.title),
b: common_vendor.t(item.statusName),
@@ -495,78 +522,78 @@ const _sfc_main = {
t: item.hazardId
});
}),
b: common_vendor.o(($event) => showAddPopup.value = true),
c: common_vendor.o(($event) => showAddPopup.value = false),
d: common_vendor.o(afterRead),
e: common_vendor.o(deletePic),
f: common_vendor.p({
d: common_vendor.o(($event) => showAddPopup.value = true),
e: common_vendor.o(($event) => showAddPopup.value = false),
f: common_vendor.o(afterRead),
g: common_vendor.o(deletePic),
h: common_vendor.p({
fileList: fileList1.value,
name: "1",
multiple: true,
maxCount: 10
}),
g: !aiAnalyzing.value
i: !aiAnalyzing.value
}, !aiAnalyzing.value ? {} : {}, {
h: common_vendor.t(aiAnalyzing.value ? "AI识别中..." : "AI 识别隐患"),
i: aiAnalyzing.value,
j: aiAnalyzing.value,
k: common_vendor.o(handleAiAnalyze),
l: common_vendor.o(($event) => formData.title = $event),
m: common_vendor.p({
j: common_vendor.t(aiAnalyzing.value ? "AI识别中..." : "AI 识别隐患"),
k: aiAnalyzing.value,
l: aiAnalyzing.value,
m: common_vendor.o(handleAiAnalyze),
n: common_vendor.o(($event) => formData.title = $event),
o: common_vendor.p({
placeholder: "请输入内容",
border: "surround",
modelValue: formData.title
}),
n: common_vendor.sr(levelChooseRef, "b44c631d-3,b44c631d-0", {
p: common_vendor.sr(levelChooseRef, "b44c631d-3,b44c631d-0", {
"k": "levelChooseRef"
}),
o: common_vendor.o(($event) => formData.level = $event),
p: common_vendor.p({
q: common_vendor.o(($event) => formData.level = $event),
r: common_vendor.p({
options: levelOptions.value,
wrap: false,
["item-width"]: "183rpx",
["item-height"]: "72rpx",
modelValue: formData.level
}),
q: common_vendor.o(($event) => formData.source = $event),
r: common_vendor.p({
s: common_vendor.o(($event) => formData.source = $event),
t: common_vendor.p({
options: sourceOptions.value,
wrap: false,
["item-width"]: "183rpx",
["item-height"]: "72rpx",
modelValue: formData.source
}),
s: common_vendor.o(($event) => selectedAddress.value = $event),
t: common_vendor.p({
v: common_vendor.o(($event) => selectedAddress.value = $event),
w: common_vendor.p({
placeholder: "请输入地址",
border: "surround",
modelValue: selectedAddress.value
}),
v: common_vendor.o(chooseLocation),
w: common_vendor.t(selectedAreaName.value || "请选择隐患区域"),
x: !selectedAreaName.value ? 1 : "",
y: common_vendor.o(($event) => showAreaPicker.value = true),
z: common_vendor.o(($event) => formData.description = $event),
A: common_vendor.p({
x: common_vendor.o(chooseLocation),
y: common_vendor.t(selectedAreaName.value || "请选择隐患区域"),
z: !selectedAreaName.value ? 1 : "",
A: common_vendor.o(($event) => showAreaPicker.value = true),
B: common_vendor.o(($event) => formData.description = $event),
C: common_vendor.p({
placeholder: "请输入内容",
modelValue: formData.description
}),
B: common_vendor.o(($event) => formData.tagIndex = $event),
C: common_vendor.p({
D: common_vendor.o(($event) => formData.tagIndex = $event),
E: common_vendor.p({
options: tagOptions.value,
modelValue: formData.tagIndex
}),
D: common_vendor.o(($event) => showAddPopup.value = false),
E: common_vendor.o(handleAdd),
F: common_vendor.o(($event) => showAddPopup.value = false),
G: common_vendor.p({
G: common_vendor.o(handleAdd),
H: common_vendor.o(($event) => showAddPopup.value = false),
I: common_vendor.p({
show: showAddPopup.value,
mode: "center",
round: "20"
}),
H: common_vendor.o(($event) => showAreaPicker.value = false),
I: common_vendor.o(confirmAreaSelect),
J: common_vendor.f(areaList.value, (item, k0, i0) => {
J: common_vendor.o(($event) => showAreaPicker.value = false),
K: common_vendor.o(confirmAreaSelect),
L: common_vendor.f(areaList.value, (item, k0, i0) => {
return common_vendor.e({
a: item.color,
b: common_vendor.t(item.name),
@@ -577,15 +604,15 @@ const _sfc_main = {
f: common_vendor.o(($event) => tempAreaId.value = item.id, item.id)
});
}),
K: areaList.value.length === 0
M: areaList.value.length === 0
}, areaList.value.length === 0 ? {} : {}, {
L: common_vendor.o(($event) => showAreaPicker.value = false),
M: common_vendor.p({
N: common_vendor.o(($event) => showAreaPicker.value = false),
O: common_vendor.p({
show: showAreaPicker.value,
mode: "bottom",
round: "20"
}),
N: common_vendor.gei(_ctx, "")
P: common_vendor.gei(_ctx, "")
});
};
}

File diff suppressed because one or more lines are too long

View File

@@ -27,6 +27,7 @@
.page.data-v-b44c631d {
min-height: 100vh;
background: #EBF2FC;
padding-top: 100rpx;
padding-bottom: 120rpx;
}
.fixed-add-btn.data-v-b44c631d {
@@ -60,6 +61,8 @@
.level-tag.data-v-b44c631d {
padding: 4rpx 16rpx;
border-radius: 8rpx;
white-space: nowrap;
flex-shrink: 0;
}
.level-minor.data-v-b44c631d {
background: #F6FFED;
@@ -272,6 +275,47 @@
background: #EBF2FC;
color: #2667E9;
}
.status-tabs.data-v-b44c631d {
position: fixed;
top: 0;
left: 0;
right: 0;
z-index: 99;
white-space: nowrap;
background: #fff;
padding: 0 10rpx;
box-shadow: 0 2rpx 10rpx rgba(0, 0, 0, 0.06);
}
.status-tabs-inner.data-v-b44c631d {
display: inline-flex;
align-items: center;
height: 88rpx;
}
.status-tab-item.data-v-b44c631d {
display: inline-flex;
flex-direction: column;
align-items: center;
justify-content: center;
padding: 0 28rpx;
height: 88rpx;
position: relative;
}
.status-tab-text.data-v-b44c631d {
font-size: 28rpx;
color: #666;
}
.status-tab-active .status-tab-text.data-v-b44c631d {
color: #2667E9;
font-weight: bold;
}
.status-tab-bar.data-v-b44c631d {
position: absolute;
bottom: 8rpx;
width: 40rpx;
height: 6rpx;
background: #2667E9;
border-radius: 3rpx;
}
/**
* 这里是uni-app内置的常用样式变量
*

View File

@@ -70,7 +70,7 @@ const _sfc_main = {
}
}
};
const infoList = common_vendor.ref([
const allMenuList = [
{
name: "成员管理",
src: "/static/home_icon/chengyuangaunli.png"
@@ -87,10 +87,10 @@ const _sfc_main = {
name: "检查清单",
src: "/static/home_icon/jiachaqingdan.png"
},
{
name: "检查记录",
src: "/static/home_icon/jianchajilu.png"
},
// {
// name: '检查记录',
// src: '/static/home_icon/jianchajilu.png'
// },
{
name: "证件管理",
src: "/static/home_icon/zhengjianguanli.png"
@@ -103,12 +103,14 @@ const _sfc_main = {
name: "隐患销号",
src: "/static/home_icon/yinhuanxiaohao.png"
}
// ,
// {
// name: '设备登记',
// src: '/static/home_icon/shebeidengji.png'
// }
]);
];
const commonMenuNames = ["隐患排查", "隐患销号"];
const infoList = common_vendor.computed(() => {
if (userInfo.role === "common") {
return allMenuList.filter((item) => commonMenuNames.includes(item.name));
}
return allMenuList;
});
const ViewDetails = (item) => {
common_vendor.index.navigateTo({
url: `/pages/plandetail/plandetail?id=${item.id}`
@@ -147,12 +149,12 @@ const _sfc_main = {
const getCheckPlanLists = async () => {
try {
const res = await request_api.getCheckPlanList(checkPlanParams.value);
common_vendor.index.__f__("log", "at pages/index/index.vue:331", res);
common_vendor.index.__f__("log", "at pages/index/index.vue:339", res);
if (res.code === 0) {
checkPlanData.value = res.data.records;
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/index/index.vue:336", error);
common_vendor.index.__f__("error", "at pages/index/index.vue:344", error);
} finally {
loading.value = false;
}
@@ -188,13 +190,13 @@ const _sfc_main = {
const getHiddenDangerLists = async () => {
try {
const res = await request_api.getHiddenDangerList(hiddenDangerParams.value);
common_vendor.index.__f__("log", "at pages/index/index.vue:388", res);
common_vendor.index.__f__("log", "at pages/index/index.vue:396", res);
if (res.code === 0) {
hiddenDangerData.value = res.data.records;
common_vendor.index.__f__("log", "at pages/index/index.vue:391", hiddenDangerData.value, 1111);
common_vendor.index.__f__("log", "at pages/index/index.vue:399", hiddenDangerData.value, 1111);
}
} catch (error) {
common_vendor.index.__f__("error", "at pages/index/index.vue:394", error);
common_vendor.index.__f__("error", "at pages/index/index.vue:402", error);
} finally {
loading.value = false;
}

View File

@@ -225,6 +225,8 @@
.level-tag.data-v-1cf27b2a {
padding: 4rpx 16rpx;
border-radius: 8rpx;
white-space: nowrap;
flex-shrink: 0;
}
.level-minor.data-v-1cf27b2a {
background: #F6FFED;

View File

@@ -3,6 +3,14 @@ const common_vendor = require("../../common/vendor.js");
const common_assets = require("../../common/assets.js");
const request_request = require("../../request/request.js");
const request_three_one_api_info = require("../../request/three_one_api/info.js");
if (!Array) {
const _easycom_u_navbar2 = common_vendor.resolveComponent("u-navbar");
_easycom_u_navbar2();
}
const _easycom_u_navbar = () => "../../uni_modules/uview-plus/components/u-navbar/u-navbar.js";
if (!Math) {
_easycom_u_navbar();
}
const defaultAvatar = "https://ossweb-img.qq.com/images/lol/web201310/skin/big99008.jpg";
const _sfc_main = {
__name: "my",
@@ -26,7 +34,7 @@ const _sfc_main = {
userInfo.phonenumber = res.data.phonenumber || "";
}
} catch (e) {
common_vendor.index.__f__("error", "at pages/personalcenter/my.vue:124", "获取用户信息失败:", e);
common_vendor.index.__f__("error", "at pages/personalcenter/my.vue:135", "获取用户信息失败:", e);
}
};
common_vendor.onShow(() => {
@@ -48,29 +56,40 @@ const _sfc_main = {
content: "确定要退出登录吗?",
success: function(res) {
if (res.confirm) {
common_vendor.index.__f__("log", "at pages/personalcenter/my.vue:170", "用户点击确定");
common_vendor.index.__f__("log", "at pages/personalcenter/my.vue:181", "用户点击确定");
common_vendor.index.clearStorageSync();
common_vendor.index.reLaunch({
url: "/pages/login/login"
});
} else if (res.cancel) {
common_vendor.index.__f__("log", "at pages/personalcenter/my.vue:176", "用户点击取消");
common_vendor.index.__f__("log", "at pages/personalcenter/my.vue:187", "用户点击取消");
}
}
});
};
return (_ctx, _cache) => {
return {
a: getImageUrl(userInfo.avatar) || defaultAvatar,
b: common_vendor.t(userInfo.nickName || "未设置昵称"),
c: common_vendor.t(userInfo.phonenumber || "未绑定手机"),
d: common_vendor.o(($event) => editinfo()),
a: common_vendor.p({
title: "我的",
placeholder: false,
fixed: false,
safeAreaInsetTop: true,
bgColor: "transparent",
titleColor: "#fff",
border: false,
leftIcon: ""
}),
b: getImageUrl(userInfo.avatar) || defaultAvatar,
c: common_vendor.t(userInfo.nickName || "未设置昵称"),
d: common_vendor.t(userInfo.phonenumber || "未绑定手机"),
e: common_assets._imports_0$2,
f: common_vendor.o(($event) => editinfo()),
g: common_assets._imports_1$1,
h: common_vendor.o(($event) => Account()),
i: common_vendor.o(($event) => handleLogout()),
j: common_vendor.gei(_ctx, "")
h: common_vendor.o(($event) => editinfo()),
i: common_assets._imports_2,
j: common_vendor.o(($event) => Account()),
k: common_vendor.o(($event) => handleLogout()),
l: common_vendor.gei(_ctx, "")
};
};
}

View File

@@ -1,4 +1,7 @@
{
"navigationBarTitleText": "我的",
"usingComponents": {}
"navigationStyle": "custom",
"usingComponents": {
"u-navbar": "../../uni_modules/uview-plus/components/u-navbar/u-navbar"
}
}

View File

@@ -1 +1 @@
<view class="{{['page-wrapper', 'data-v-02345808', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}" id="{{j}}"><view class="header-bg data-v-02345808"><view class="blur-circle circle-1 data-v-02345808"></view><view class="blur-circle circle-2 data-v-02345808"></view><view class="blur-circle circle-3 data-v-02345808"></view><view class="user-info-section data-v-02345808"><view class="user-avatar data-v-02345808"><image class="avatar-img data-v-02345808" src="{{a}}" mode="aspectFill"></image></view><view class="user-details data-v-02345808"><view class="user-name data-v-02345808">{{b}}</view><view class="user-phone data-v-02345808">{{c}}</view></view><button class="edit-btn data-v-02345808" bindtap="{{d}}">编辑资料</button></view></view><view class="content-area data-v-02345808"><view class="menu-card data-v-02345808"><view class="menu-item data-v-02345808" bindtap="{{f}}"><view class="menu-left data-v-02345808"><image src="{{e}}" class="menu-icon data-v-02345808"></image><text class="menu-text data-v-02345808">编辑个人信息</text></view><text class="cuIcon-right menu-arrow data-v-02345808"></text></view><view class="menu-item data-v-02345808" bindtap="{{h}}"><view class="menu-left data-v-02345808"><image src="{{g}}" class="menu-icon data-v-02345808"></image><text class="menu-text data-v-02345808">修改登录密码</text></view><text class="cuIcon-right menu-arrow data-v-02345808"></text></view></view><button class="logout-btn data-v-02345808" bindtap="{{i}}">退出登录</button></view></view>
<view class="{{['page-wrapper', 'data-v-02345808', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}" id="{{l}}"><view class="header-bg data-v-02345808"><u-navbar wx:if="{{a}}" class="data-v-02345808" virtualHostClass="data-v-02345808" u-i="02345808-0" bind:__l="__l" u-p="{{a}}"></u-navbar><view class="user-info-section data-v-02345808"><view class="user-avatar data-v-02345808"><image class="avatar-img data-v-02345808" src="{{b}}" mode="aspectFill"></image></view><view class="user-details data-v-02345808"><view class="user-name data-v-02345808">{{c}}</view><view class="user-phone data-v-02345808">{{d}}</view></view><image class="edit-icon data-v-02345808" src="{{e}}" mode="aspectFit" bindtap="{{f}}"></image></view></view><view class="content-area data-v-02345808"><view class="menu-card data-v-02345808"><view class="menu-item data-v-02345808" bindtap="{{h}}"><view class="menu-left data-v-02345808"><image src="{{g}}" class="menu-icon data-v-02345808"></image><text class="menu-text data-v-02345808">编辑个人信息</text></view><text class="cuIcon-right menu-arrow data-v-02345808"></text></view><view class="menu-item data-v-02345808" bindtap="{{j}}"><view class="menu-left data-v-02345808"><image src="{{i}}" class="menu-icon data-v-02345808"></image><text class="menu-text data-v-02345808">修改登录密码</text></view><text class="cuIcon-right menu-arrow data-v-02345808"></text></view></view><button class="logout-btn data-v-02345808" bindtap="{{k}}">退出登录</button></view></view>

View File

@@ -26,13 +26,13 @@
/* 文章场景相关 */
.page-wrapper.data-v-02345808 {
min-height: 100vh;
background: #EBF2FC;
background: #fff;
}
.header-bg.data-v-02345808 {
position: relative;
height: 400rpx;
background: linear-gradient(180deg, #3B7FED 0%, #007AFF 50%, #8BB8F8 100%);
padding-top: 60rpx;
height: 480rpx;
background: #2667E9;
padding-top: 0;
overflow: hidden;
}
.header-bg .blur-circle.data-v-02345808 {
@@ -103,29 +103,26 @@
font-size: 26rpx;
color: rgba(255, 255, 255, 0.85);
}
.user-info-section .edit-btn.data-v-02345808 {
background: rgba(255, 255, 255, 0.25);
border: 2rpx solid rgba(255, 255, 255, 0.5);
border-radius: 32rpx;
font-size: 26rpx;
color: #fff;
-webkit-backdrop-filter: blur(10rpx);
backdrop-filter: blur(10rpx);
}
.user-info-section .edit-btn.data-v-02345808::after {
border: none;
.user-info-section .edit-icon.data-v-02345808 {
width: 48rpx;
height: 48rpx;
flex-shrink: 0;
}
.content-area.data-v-02345808 {
position: relative;
margin-top: -60rpx;
padding: 0 30rpx 50rpx;
margin-top: -40rpx;
padding: 40rpx 30rpx 50rpx;
z-index: 10;
background: #fff;
border-top-left-radius: 40rpx;
border-top-right-radius: 40rpx;
min-height: calc(100vh - 360rpx);
}
.menu-card.data-v-02345808 {
background: #fff;
border-radius: 24rpx;
padding: 10rpx 0;
box-shadow: 0 4rpx 20rpx rgba(0, 0, 0, 0.06);
box-shadow: 0 8rpx 30rpx rgba(0, 0, 0, 0.1);
}
.menu-item.data-v-02345808 {
display: flex;

View File

@@ -1,7 +1,7 @@
"use strict";
const common_vendor = require("../common/vendor.js");
const request_luchRequest_core_Request = require("./luch-request/core/Request.js");
const baseUrl = "https://yingji.hexieapi.com/prod-api";
const baseUrl = "http://192.168.1.168:5004";
const imageBaseUrl = baseUrl.replace(/\/prod-api\/?$/, "");
new request_luchRequest_core_Request.Request({
baseURL: baseUrl,

Binary file not shown.

After

Width:  |  Height:  |  Size: 1009 B