diff --git a/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfo.api.ts b/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfo.api.ts
new file mode 100644
index 0000000..b4a33a6
--- /dev/null
+++ b/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfo.api.ts
@@ -0,0 +1,72 @@
+import { defHttp } from '/@/utils/http/axios';
+import { useMessage } from "/@/hooks/web/useMessage";
+
+const { createConfirm } = useMessage();
+
+enum Api {
+ list = '/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/list',
+ save='/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/add',
+ edit='/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/edit',
+ deleteOne = '/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/delete',
+ deleteBatch = '/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/deleteBatch',
+ importExcel = '/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/importExcel',
+ exportXls = '/nuEmployeesAdvisoryInfo/nuEmployeesAdvisoryInfo/exportXls',
+}
+
+/**
+ * 导出api
+ * @param params
+ */
+export const getExportUrl = Api.exportXls;
+
+/**
+ * 导入api
+ */
+export const getImportUrl = Api.importExcel;
+
+/**
+ * 列表接口
+ * @param params
+ */
+export const list = (params) => defHttp.get({ url: Api.list, params });
+
+/**
+ * 删除单个
+ * @param params
+ * @param handleSuccess
+ */
+export const deleteOne = (params,handleSuccess) => {
+ return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => {
+ handleSuccess();
+ });
+}
+
+/**
+ * 批量删除
+ * @param params
+ * @param handleSuccess
+ */
+export const batchDelete = (params, handleSuccess) => {
+ createConfirm({
+ iconType: 'warning',
+ title: '确认删除',
+ content: '是否删除选中数据',
+ okText: '确认',
+ cancelText: '取消',
+ onOk: () => {
+ return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => {
+ handleSuccess();
+ });
+ }
+ });
+}
+
+/**
+ * 保存或者更新
+ * @param params
+ * @param isUpdate
+ */
+export const saveOrUpdate = (params, isUpdate) => {
+ let url = isUpdate ? Api.edit : Api.save;
+ return defHttp.post({ url: url, params }, { isTransformResponse: false });
+}
diff --git a/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfo.data.ts b/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfo.data.ts
new file mode 100644
index 0000000..dc6d2b0
--- /dev/null
+++ b/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfo.data.ts
@@ -0,0 +1,248 @@
+import {BasicColumn} from '/@/components/Table';
+import {FormSchema} from '/@/components/Table';
+import { rules} from '/@/utils/helper/validator';
+import { render } from '/@/utils/common/renderUtils';
+import { getWeekMonthQuarterYear } from '/@/utils';
+import {JVxeTypes, JVxeColumn, JVxeTableInstance} from '/@/components/jeecg/JVxeTable/types'
+//列表数据
+export const columns: BasicColumn[] = [
+ {
+ title: '联系电话',
+ align: "center",
+ dataIndex: 'tel'
+ },
+ {
+ title: '状态',
+ align: "center",
+ dataIndex: 'status',
+ },
+ {
+ title: '审核备注',
+ align: "center",
+ dataIndex: 'content',
+ defaultHidden: true,
+ },
+ {
+ title: '机构是否入驻',
+ align: "center",
+ dataIndex: 'izEntry'
+ },
+ {
+ title: '咨询人姓名',
+ align: "center",
+ dataIndex: 'name'
+ },
+ {
+ title: '性别',
+ align: "center",
+ dataIndex: 'sex'
+ },
+ {
+ title: '民族',
+ align: "center",
+ dataIndex: 'national',
+ defaultHidden: true,
+ },
+ {
+ title: '出生日期',
+ align: "center",
+ dataIndex: 'birthDate',
+ customRender:({text}) =>{
+ text = !text ? "" : (text.length > 10 ? text.substr(0,10) : text);
+ return text;
+ },
+ defaultHidden: true,
+ },
+ {
+ title: '住址',
+ align: "center",
+ dataIndex: 'idCardAddress',
+ defaultHidden: true,
+ },
+ {
+ title: '身份证号',
+ align: "center",
+ dataIndex: 'idCard'
+ },
+ {
+ title: '签发机关',
+ align: "center",
+ dataIndex: 'issuingAuthority',
+ defaultHidden: true,
+ },
+ {
+ title: '有效开始日期',
+ align: "center",
+ dataIndex: 'startTime',
+ customRender:({text}) =>{
+ text = !text ? "" : (text.length > 10 ? text.substr(0,10) : text);
+ return text;
+ },
+ defaultHidden: true,
+ },
+ {
+ title: '有效结束日期',
+ align: "center",
+ dataIndex: 'endTime',
+ customRender:({text}) =>{
+ text = !text ? "" : (text.length > 10 ? text.substr(0,10) : text);
+ return text;
+ },
+ defaultHidden: true,
+ },
+ {
+ title: '身份证正面',
+ align: "center",
+ dataIndex: 'cardZmPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '身份证反面',
+ align: "center",
+ dataIndex: 'cardFmPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '婚否',
+ align: "center",
+ dataIndex: 'maritalStatus',
+ defaultHidden: true,
+ },
+ {
+ title: '身高',
+ align: "center",
+ dataIndex: 'height',
+ defaultHidden: true,
+ },
+ {
+ title: '体重',
+ align: "center",
+ dataIndex: 'weight',
+ defaultHidden: true,
+ },
+ {
+ title: '健康状况',
+ align: "center",
+ dataIndex: 'healthStatus'
+ },
+ {
+ title: '政治面貌',
+ align: "center",
+ dataIndex: 'politicalAppearance',
+ defaultHidden: true,
+ },
+ {
+ title: '紧急联系人姓名',
+ align: "center",
+ dataIndex: 'contactName'
+ },
+ {
+ title: '紧急联系人电话',
+ align: "center",
+ dataIndex: 'contactTel'
+ },
+ {
+ title: '紧急联系人与本人关系',
+ align: "center",
+ dataIndex: 'contactRelationship',
+ defaultHidden: true,
+ },
+ {
+ title: '户口性质',
+ align: "center",
+ dataIndex: 'hukouType',
+ defaultHidden: true,
+ },
+ {
+ title: '银行卡正面',
+ align: "center",
+ dataIndex: 'bankZmPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '银行卡反面',
+ align: "center",
+ dataIndex: 'bankFmPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '开户行',
+ align: "center",
+ dataIndex: 'openingBank',
+ defaultHidden: true,
+ },
+ {
+ title: '银行卡号',
+ align: "center",
+ dataIndex: 'bankCard',
+ defaultHidden: true,
+ },
+ {
+ title: '健康证正面',
+ align: "center",
+ dataIndex: 'healthZmPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '健康证反面',
+ align: "center",
+ dataIndex: 'healthFmPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '资质证(可多张)',
+ align: "center",
+ dataIndex: 'qualificationPath',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+ {
+ title: '无犯罪正面',
+ align: "center",
+ dataIndex: 'noCrimeCertificate',
+ customRender: render.renderImage,
+ defaultHidden: true,
+ },
+];
+
+// 高级查询数据
+export const superQuerySchema = {
+ tel: {title: '联系电话',order: 0,view: 'text', type: 'string',},
+ status: {title: '状态',order: 1,view: 'text', type: 'string',},
+ content: {title: '审核备注',order: 2,view: 'text', type: 'string',},
+ izEntry: {title: '机构是否入驻',order: 3,view: 'text', type: 'string',},
+ name: {title: '咨询人姓名',order: 4,view: 'text', type: 'string',},
+ sex: {title: '性别',order: 5,view: 'text', type: 'string',},
+ national: {title: '民族',order: 6,view: 'text', type: 'string',},
+ birthDate: {title: '出生日期',order: 7,view: 'date', type: 'string',},
+ idCardAddress: {title: '住址',order: 8,view: 'text', type: 'string',},
+ idCard: {title: '身份证号',order: 9,view: 'text', type: 'string',},
+ issuingAuthority: {title: '签发机关',order: 10,view: 'text', type: 'string',},
+ startTime: {title: '有效开始日期',order: 11,view: 'date', type: 'string',},
+ endTime: {title: '有效结束日期',order: 12,view: 'date', type: 'string',},
+ cardZmPath: {title: '身份证正面',order: 13,view: 'image', type: 'string',},
+ cardFmPath: {title: '身份证反面',order: 14,view: 'image', type: 'string',},
+ maritalStatus: {title: '婚否',order: 15,view: 'text', type: 'string',},
+ height: {title: '身高',order: 16,view: 'text', type: 'string',},
+ weight: {title: '体重',order: 17,view: 'text', type: 'string',},
+ healthStatus: {title: '健康状况',order: 18,view: 'text', type: 'string',},
+ politicalAppearance: {title: '政治面貌',order: 19,view: 'text', type: 'string',},
+ contactName: {title: '紧急联系人姓名',order: 20,view: 'text', type: 'string',},
+ contactTel: {title: '紧急联系人电话',order: 21,view: 'text', type: 'string',},
+ contactRelationship: {title: '紧急联系人与本人关系',order: 22,view: 'text', type: 'string',},
+ hukouType: {title: '户口性质',order: 23,view: 'text', type: 'string',},
+ bankZmPath: {title: '银行卡正面',order: 24,view: 'image', type: 'string',},
+ bankFmPath: {title: '银行卡反面',order: 25,view: 'image', type: 'string',},
+ openingBank: {title: '开户行',order: 26,view: 'text', type: 'string',},
+ bankCard: {title: '银行卡号',order: 27,view: 'text', type: 'string',},
+ healthZmPath: {title: '健康证正面',order: 28,view: 'image', type: 'string',},
+ healthFmPath: {title: '健康证反面',order: 29,view: 'image', type: 'string',},
+ qualificationPath: {title: '资质证(可多张)',order: 30,view: 'image', type: 'string',},
+ noCrimeCertificate: {title: '无犯罪正面',order: 31,view: 'image', type: 'string',},
+};
diff --git a/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfoList.vue b/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfoList.vue
new file mode 100644
index 0000000..336cb5b
--- /dev/null
+++ b/src/views/biz/nuEmployeesAdvisoryInfo/NuEmployeesAdvisoryInfoList.vue
@@ -0,0 +1,257 @@
+
+
+
+
+
+
+
+
+ 新增
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/biz/nuEmployeesAdvisoryInfo/components/NuEmployeesAdvisoryInfoForm.vue b/src/views/biz/nuEmployeesAdvisoryInfo/components/NuEmployeesAdvisoryInfoForm.vue
new file mode 100644
index 0000000..787d952
--- /dev/null
+++ b/src/views/biz/nuEmployeesAdvisoryInfo/components/NuEmployeesAdvisoryInfoForm.vue
@@ -0,0 +1,330 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/biz/nuEmployeesAdvisoryInfo/components/NuEmployeesAdvisoryInfoModal.vue b/src/views/biz/nuEmployeesAdvisoryInfo/components/NuEmployeesAdvisoryInfoModal.vue
new file mode 100644
index 0000000..a591fcf
--- /dev/null
+++ b/src/views/biz/nuEmployeesAdvisoryInfo/components/NuEmployeesAdvisoryInfoModal.vue
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/iot/tq/electricity/apilog/ApiLogList.vue b/src/views/iot/tq/electricity/apilog/ApiLogList.vue
new file mode 100644
index 0000000..c000e8e
--- /dev/null
+++ b/src/views/iot/tq/electricity/apilog/ApiLogList.vue
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/iot/tq/electricity/apilog/ApiLogModal.vue b/src/views/iot/tq/electricity/apilog/ApiLogModal.vue
new file mode 100644
index 0000000..1a198b7
--- /dev/null
+++ b/src/views/iot/tq/electricity/apilog/ApiLogModal.vue
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/iot/tq/electricity/index.vue b/src/views/iot/tq/electricity/index.vue
index e145190..91c31d2 100644
--- a/src/views/iot/tq/electricity/index.vue
+++ b/src/views/iot/tq/electricity/index.vue
@@ -11,6 +11,14 @@
{{record.address}}
+
+ 未配置
+ {{record.departName}}
+
+
+ 未配置
+ {{record.nuName}}
+
合闸
@@ -44,6 +52,9 @@
+
+
+
@@ -57,7 +68,15 @@
import { columns, searchFormSchema } from './electricity.data';
import {useModal} from "@/components/Modal";
+ import DepartUtilsList from "@/views/utils/departUtils/DepartUtilsModal.vue";
+ import HldyUtilsModal from "@/views/utils/nuUtils/HldyUtilsModal.vue";
+ import ApiLogModal from "@/views/iot/tq/electricity/apilog/ApiLogModal.vue";
+import { defHttp } from '/@/utils/http/axios';
+
const queryParam = reactive({});
+ const departUtilsModal = ref();
+ const apiLogModal = ref();
+ const hldyUtilsModal = ref();
//注册model
const [registerModal, {openModal}] = useModal();
//注册table数据
@@ -79,7 +98,7 @@
],
},
actionColumn: {
- width: 200,
+ width: 240,
fixed:'right'
},
beforeFetch: (params) => {
@@ -97,6 +116,28 @@
(selectedRowKeys.value = []) && reload();
}
+ function handleParams(params){
+ console.log("🚀 ~ handleParams ~ params:", params)
+ defHttp.post({
+ url: "/iot/tq/electricityMeter/edit",
+ params:params.value
+ }).then(res=>{
+ console.log("🚀 ~ getTableAction ~ res:", res)
+ })
+ }
+
+
+ function handleHldyParams(params){
+ console.log("🚀 ~ handleParams ~ params:", params)
+ defHttp.post({
+ url: "/iot/tq/electricityMeter/edit",
+ params:params.value
+ }).then(res=>{
+ console.log("🚀 ~ getTableAction ~ res:", res)
+ })
+ }
+
+
/**
* 操作栏
*/
@@ -121,10 +162,18 @@
confirm: handleReset.bind(null, record),
placement: 'topLeft',
},
- }
+ },
]
}
+/**
+ * 配置机构信息
+ */
+ function handlePzjg(record: Recordable){
+ departUtilsModal.value.disableSubmit = false;
+ departUtilsModal.value.edit(record);
+ }
+
// 抄电表
async function handleRead(record: Recordable) {
const params = {
@@ -200,8 +249,22 @@
reload();
}
+ /**
+ * 查看api日志
+ */
function showApiLog(record){
console.log(record);
+ apiLogModal.value.disableSubmit = true;
+ apiLogModal.value.showApiLog(record);
+ }
+ /**
+ * 配置护理单元
+ */
+ function handlePzhldy(record){
+ console.log("🚀 ~ handlePzhldy ~ record:", record)
+ hldyUtilsModal.value.disableSubmit = true;
+ hldyUtilsModal.value.edit(record);
+
}
diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLog.api.ts b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLog.api.ts
new file mode 100644
index 0000000..66086fb
--- /dev/null
+++ b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLog.api.ts
@@ -0,0 +1,72 @@
+import { defHttp } from '/@/utils/http/axios';
+import { useMessage } from "/@/hooks/web/useMessage";
+
+const { createConfirm } = useMessage();
+
+enum Api {
+ list = '/nuIotTqApiRequestLog/nuIotTqApiRequestLog/list',
+ save='/nuIotTqApiRequestLog/nuIotTqApiRequestLog/add',
+ edit='/nuIotTqApiRequestLog/nuIotTqApiRequestLog/edit',
+ deleteOne = '/nuIotTqApiRequestLog/nuIotTqApiRequestLog/delete',
+ deleteBatch = '/nuIotTqApiRequestLog/nuIotTqApiRequestLog/deleteBatch',
+ importExcel = '/nuIotTqApiRequestLog/nuIotTqApiRequestLog/importExcel',
+ exportXls = '/nuIotTqApiRequestLog/nuIotTqApiRequestLog/exportXls',
+}
+
+/**
+ * 导出api
+ * @param params
+ */
+export const getExportUrl = Api.exportXls;
+
+/**
+ * 导入api
+ */
+export const getImportUrl = Api.importExcel;
+
+/**
+ * 列表接口
+ * @param params
+ */
+export const list = (params) => defHttp.get({ url: Api.list, params });
+
+/**
+ * 删除单个
+ * @param params
+ * @param handleSuccess
+ */
+export const deleteOne = (params,handleSuccess) => {
+ return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => {
+ handleSuccess();
+ });
+}
+
+/**
+ * 批量删除
+ * @param params
+ * @param handleSuccess
+ */
+export const batchDelete = (params, handleSuccess) => {
+ createConfirm({
+ iconType: 'warning',
+ title: '确认删除',
+ content: '是否删除选中数据',
+ okText: '确认',
+ cancelText: '取消',
+ onOk: () => {
+ return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => {
+ handleSuccess();
+ });
+ }
+ });
+}
+
+/**
+ * 保存或者更新
+ * @param params
+ * @param isUpdate
+ */
+export const saveOrUpdate = (params, isUpdate) => {
+ let url = isUpdate ? Api.edit : Api.save;
+ return defHttp.post({ url: url, params }, { isTransformResponse: false });
+}
diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLog.data.ts b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLog.data.ts
new file mode 100644
index 0000000..0c6787a
--- /dev/null
+++ b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLog.data.ts
@@ -0,0 +1,72 @@
+import {BasicColumn} from '/@/components/Table';
+import {FormSchema} from '/@/components/Table';
+import { rules} from '/@/utils/helper/validator';
+import { render } from '/@/utils/common/renderUtils';
+import { getWeekMonthQuarterYear } from '/@/utils';
+//列表数据
+export const columns: BasicColumn[] = [
+ {
+ title: '表号',
+ align: "center",
+ dataIndex: 'address'
+ },
+ {
+ title: '类型',
+ align: "center",
+ dataIndex: 'type_dictText'
+ },
+ {
+ title: '请求时的值',
+ align: "center",
+ dataIndex: 'requestValue'
+ },
+ {
+ title: '请求时间',
+ align: "center",
+ dataIndex: 'requestTime'
+ },
+ {
+ title: '请求状态',
+ align: "center",
+ dataIndex: 'requestStatus_dictText'
+ },
+ {
+ title: '请求描述',
+ align: "center",
+ dataIndex: 'requestRemark'
+ },
+ {
+ title: '反馈值',
+ align: "center",
+ dataIndex: 'resolveValue'
+ },
+ {
+ title: '反馈时间',
+ align: "center",
+ dataIndex: 'resolveTime'
+ },
+ {
+ title: '反馈状态',
+ align: "center",
+ dataIndex: 'resolveStatus_dictText'
+ },
+ {
+ title: '反馈描述',
+ align: "center",
+ dataIndex: 'resolveRemark'
+ },
+];
+
+// 高级查询数据
+export const superQuerySchema = {
+ address: {title: '表号',order: 0,view: 'text', type: 'string',},
+ type: {title: '类型',order: 1,view: 'list', type: 'string',dictCode: 'dbsb_type',},
+ requestValue: {title: '请求时的值',order: 2,view: 'text', type: 'string',},
+ requestTime: {title: '请求时间',order: 3,view: 'text', type: 'string',},
+ requestStatus: {title: '请求状态',order: 4,view: 'list', type: 'string',dictCode: '',},
+ requestRemark: {title: '请求描述',order: 5,view: 'text', type: 'string',},
+ resolveValue: {title: '反馈值',order: 6,view: 'text', type: 'string',},
+ resolveTime: {title: '反馈时间',order: 7,view: 'text', type: 'string',},
+ resolveStatus: {title: '反馈状态',order: 8,view: 'list', type: 'string',dictCode: 'dbsb_status',},
+ resolveRemark: {title: '反馈描述',order: 9,view: 'text', type: 'string',},
+};
diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList.vue b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList.vue
new file mode 100644
index 0000000..464a5fe
--- /dev/null
+++ b/src/views/iot/tq/nuIotTqApiRequestLog/NuIotTqApiRequestLogList.vue
@@ -0,0 +1,250 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue b/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue
new file mode 100644
index 0000000..4fe0075
--- /dev/null
+++ b/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogForm.vue
@@ -0,0 +1,200 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogModal.vue b/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogModal.vue
new file mode 100644
index 0000000..200466a
--- /dev/null
+++ b/src/views/iot/tq/nuIotTqApiRequestLog/components/NuIotTqApiRequestLogModal.vue
@@ -0,0 +1,77 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/utils/departUtils/DepartUtils.api.ts b/src/views/utils/departUtils/DepartUtils.api.ts
new file mode 100644
index 0000000..a13534d
--- /dev/null
+++ b/src/views/utils/departUtils/DepartUtils.api.ts
@@ -0,0 +1,72 @@
+import { defHttp } from '/@/utils/http/axios';
+import { useMessage } from "/@/hooks/web/useMessage";
+
+const { createConfirm } = useMessage();
+
+enum Api {
+ list = '/sys/sysDepart/getDepartServerUrl',
+ save='/sys/sysDepart/add',
+ edit='/sys/sysDepart/edit',
+ deleteOne = '/sys/sysDepart/delete',
+ deleteBatch = '/sys/sysDepart/deleteBatch',
+ importExcel = '/sys/sysDepart/importExcel',
+ exportXls = '/sys/sysDepart/exportXls',
+}
+
+/**
+ * 导出api
+ * @param params
+ */
+export const getExportUrl = Api.exportXls;
+
+/**
+ * 导入api
+ */
+export const getImportUrl = Api.importExcel;
+
+/**
+ * 列表接口
+ * @param params
+ */
+export const list = (params) => defHttp.get({ url: Api.list, params });
+
+/**
+ * 删除单个
+ * @param params
+ * @param handleSuccess
+ */
+export const deleteOne = (params,handleSuccess) => {
+ return defHttp.delete({url: Api.deleteOne, params}, {joinParamsToUrl: true}).then(() => {
+ handleSuccess();
+ });
+}
+
+/**
+ * 批量删除
+ * @param params
+ * @param handleSuccess
+ */
+export const batchDelete = (params, handleSuccess) => {
+ createConfirm({
+ iconType: 'warning',
+ title: '确认删除',
+ content: '是否删除选中数据',
+ okText: '确认',
+ cancelText: '取消',
+ onOk: () => {
+ return defHttp.delete({url: Api.deleteBatch, data: params}, {joinParamsToUrl: true}).then(() => {
+ handleSuccess();
+ });
+ }
+ });
+}
+
+/**
+ * 保存或者更新
+ * @param params
+ * @param isUpdate
+ */
+export const saveOrUpdate = (params, isUpdate) => {
+ let url = isUpdate ? Api.edit : Api.save;
+ return defHttp.post({ url: url, params }, { isTransformResponse: false });
+}
diff --git a/src/views/utils/departUtils/DepartUtils.data.ts b/src/views/utils/departUtils/DepartUtils.data.ts
new file mode 100644
index 0000000..7c8600e
--- /dev/null
+++ b/src/views/utils/departUtils/DepartUtils.data.ts
@@ -0,0 +1,60 @@
+import {BasicColumn} from '/@/components/Table';
+import {FormSchema} from '/@/components/Table';
+import { rules} from '/@/utils/helper/validator';
+import { render } from '/@/utils/common/renderUtils';
+import { getWeekMonthQuarterYear } from '/@/utils';
+//列表数据
+export const columns: BasicColumn[] = [
+ {
+ title: '机构/部门名称',
+ align: "center",
+ dataIndex: 'departName'
+ },
+ {
+ title: '机构编码',
+ align: "center",
+ dataIndex: 'orgCode'
+ },
+ {
+ title: '运营开始时间',
+ align: "center",
+ dataIndex: 'operationStartTime'
+ },
+ {
+ title: '运营到期时间',
+ align: "center",
+ dataIndex: 'operationEndTime'
+ },
+];
+
+// 高级查询数据
+export const superQuerySchema = {
+ parentId: {title: '父机构ID',order: 0,view: 'text', type: 'string',},
+ departName: {title: '机构/部门名称',order: 1,view: 'text', type: 'string',},
+ departNameEn: {title: '英文名',order: 2,view: 'text', type: 'string',},
+ departNameAbbr: {title: '缩写',order: 3,view: 'text', type: 'string',},
+ departOrder: {title: '排序',order: 4,view: 'number', type: 'number',},
+ description: {title: '描述',order: 5,view: 'text', type: 'string',},
+ orgCategory: {title: '机构类别 1机构,2区域',order: 6,view: 'text', type: 'string',},
+ orgType: {title: '机构类型 1一级部门 2子部门',order: 7,view: 'text', type: 'string',},
+ orgCode: {title: '机构编码',order: 8,view: 'text', type: 'string',},
+ platType: {title: '机构对应平台类型 是否是试验机构(数据字典iz_test_site) ',order: 9,view: 'text', type: 'string',},
+ operationStartTime: {title: '运营开始时间',order: 10,view: 'datetime', type: 'string',},
+ operationEndTime: {title: '运营到期时间',order: 11,view: 'datetime', type: 'string',},
+ contractStartTime: {title: '合同开始时间',order: 12,view: 'datetime', type: 'string',},
+ contractEndTime: {title: '合同到期时间',order: 13,view: 'datetime', type: 'string',},
+ mobile: {title: '手机号',order: 14,view: 'text', type: 'string',},
+ fax: {title: '传真',order: 15,view: 'text', type: 'string',},
+ address: {title: '地址',order: 16,view: 'text', type: 'string',},
+ memo: {title: '备注',order: 17,view: 'text', type: 'string',},
+ status: {title: '状态(1启用,0不启用)',order: 18,view: 'text', type: 'string',},
+ qywxIdentifier: {title: '对接企业微信的ID',order: 20,view: 'text', type: 'string',},
+ dingIdentifier: {title: '对接钉钉部门的ID',order: 21,view: 'text', type: 'string',},
+ tenantId: {title: '租户ID',order: 22,view: 'number', type: 'number',},
+ izLeaf: {title: '是否有叶子节点: 1是0否',order: 23,view: 'number', type: 'number',},
+ serverUrl: {title: '服务器后台接口地址',order: 24,view: 'text', type: 'string',},
+ picUrl: {title: '机构图片',order: 25,view: 'text', type: 'string',},
+ province: {title: '省份 sys_category.id',order: 26,view: 'text', type: 'string',},
+ city: {title: '城市 sys_category.id',order: 27,view: 'text', type: 'string',},
+ district: {title: '区域 sys_category.id',order: 28,view: 'text', type: 'string',},
+};
diff --git a/src/views/utils/departUtils/DepartUtilsList.vue b/src/views/utils/departUtils/DepartUtilsList.vue
new file mode 100644
index 0000000..e9efbf0
--- /dev/null
+++ b/src/views/utils/departUtils/DepartUtilsList.vue
@@ -0,0 +1,181 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/utils/departUtils/DepartUtilsModal.vue b/src/views/utils/departUtils/DepartUtilsModal.vue
new file mode 100644
index 0000000..46972ba
--- /dev/null
+++ b/src/views/utils/departUtils/DepartUtilsModal.vue
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/utils/nuUtils/HldyUtils.api.ts b/src/views/utils/nuUtils/HldyUtils.api.ts
new file mode 100644
index 0000000..877293c
--- /dev/null
+++ b/src/views/utils/nuUtils/HldyUtils.api.ts
@@ -0,0 +1,15 @@
+import { defHttp } from '/@/utils/http/axios';
+import { useMessage } from "/@/hooks/web/useMessage";
+
+const { createConfirm } = useMessage();
+
+enum Api {
+ list = '/iot/cameraInfo/getNuBaseList',
+}
+
+/**
+ * 列表接口
+ * @param params
+ */
+export const list = (params) => defHttp.get({ url: Api.list, params });
+
diff --git a/src/views/utils/nuUtils/HldyUtils.data.ts b/src/views/utils/nuUtils/HldyUtils.data.ts
new file mode 100644
index 0000000..d96fdd0
--- /dev/null
+++ b/src/views/utils/nuUtils/HldyUtils.data.ts
@@ -0,0 +1,55 @@
+import {BasicColumn} from '/@/components/Table';
+import {FormSchema} from '/@/components/Table';
+import { rules} from '/@/utils/helper/validator';
+import { render } from '/@/utils/common/renderUtils';
+import { getWeekMonthQuarterYear } from '/@/utils';
+//列表数据
+export const columns: BasicColumn[] = [
+ {
+ title: '护理单元名称',
+ align: "center",
+ dataIndex: 'nuName'
+ },
+ {
+ title: '编码',
+ align: "center",
+ dataIndex: 'code'
+ },
+ {
+ title: '创建时间',
+ align: "center",
+ dataIndex: 'createTime'
+ },
+];
+
+// 高级查询数据
+export const superQuerySchema = {
+ parentId: {title: '父机构ID',order: 0,view: 'text', type: 'string',},
+ departName: {title: '机构/部门名称',order: 1,view: 'text', type: 'string',},
+ departNameEn: {title: '英文名',order: 2,view: 'text', type: 'string',},
+ departNameAbbr: {title: '缩写',order: 3,view: 'text', type: 'string',},
+ departOrder: {title: '排序',order: 4,view: 'number', type: 'number',},
+ description: {title: '描述',order: 5,view: 'text', type: 'string',},
+ orgCategory: {title: '机构类别 1机构,2区域',order: 6,view: 'text', type: 'string',},
+ orgType: {title: '机构类型 1一级部门 2子部门',order: 7,view: 'text', type: 'string',},
+ orgCode: {title: '机构编码',order: 8,view: 'text', type: 'string',},
+ platType: {title: '机构对应平台类型 是否是试验机构(数据字典iz_test_site) ',order: 9,view: 'text', type: 'string',},
+ operationStartTime: {title: '运营开始时间',order: 10,view: 'datetime', type: 'string',},
+ operationEndTime: {title: '运营到期时间',order: 11,view: 'datetime', type: 'string',},
+ contractStartTime: {title: '合同开始时间',order: 12,view: 'datetime', type: 'string',},
+ contractEndTime: {title: '合同到期时间',order: 13,view: 'datetime', type: 'string',},
+ mobile: {title: '手机号',order: 14,view: 'text', type: 'string',},
+ fax: {title: '传真',order: 15,view: 'text', type: 'string',},
+ address: {title: '地址',order: 16,view: 'text', type: 'string',},
+ memo: {title: '备注',order: 17,view: 'text', type: 'string',},
+ status: {title: '状态(1启用,0不启用)',order: 18,view: 'text', type: 'string',},
+ qywxIdentifier: {title: '对接企业微信的ID',order: 20,view: 'text', type: 'string',},
+ dingIdentifier: {title: '对接钉钉部门的ID',order: 21,view: 'text', type: 'string',},
+ tenantId: {title: '租户ID',order: 22,view: 'number', type: 'number',},
+ izLeaf: {title: '是否有叶子节点: 1是0否',order: 23,view: 'number', type: 'number',},
+ serverUrl: {title: '服务器后台接口地址',order: 24,view: 'text', type: 'string',},
+ picUrl: {title: '机构图片',order: 25,view: 'text', type: 'string',},
+ province: {title: '省份 sys_category.id',order: 26,view: 'text', type: 'string',},
+ city: {title: '城市 sys_category.id',order: 27,view: 'text', type: 'string',},
+ district: {title: '区域 sys_category.id',order: 28,view: 'text', type: 'string',},
+};
diff --git a/src/views/utils/nuUtils/HldyUtilsList.vue b/src/views/utils/nuUtils/HldyUtilsList.vue
new file mode 100644
index 0000000..2c54c64
--- /dev/null
+++ b/src/views/utils/nuUtils/HldyUtilsList.vue
@@ -0,0 +1,174 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/utils/nuUtils/HldyUtilsModal.vue b/src/views/utils/nuUtils/HldyUtilsModal.vue
new file mode 100644
index 0000000..751ad0d
--- /dev/null
+++ b/src/views/utils/nuUtils/HldyUtilsModal.vue
@@ -0,0 +1,66 @@
+
+
+
+
+
+
+
+
+
+