diff --git a/src/views/zh/hy/hy.api.ts b/src/views/zh/hy/hy.api.ts index 089c894..0f93917 100644 --- a/src/views/zh/hy/hy.api.ts +++ b/src/views/zh/hy/hy.api.ts @@ -5,6 +5,8 @@ enum Api { registerList = '/zh/hy/queryHyRegisterList', xzList = '/zh/hy/queryHyXzList', tdcsList = '/zh/hy/queryHyTdcsList', + allTdcsList = '/zh/hy/queryAllHyTdcsList', + queryHyjlList = '/zh/hy/queryHyjlList', } /** @@ -27,3 +29,13 @@ export const xzList = (params) => defHttp.get({ url: Api.xzList, params }); * @param params */ export const tdcsList = (params) => defHttp.get({ url: Api.tdcsList, params }); +/** + * 所有会员投递次数排行榜 + * @param params + */ +export const allTdcsList = (params) => defHttp.get({ url: Api.allTdcsList, params }); +/** + * 查询会员投递历史 + * @param params + */ +export const queryHyjlList = (params) => defHttp.get({ url: Api.queryHyjlList, params }); \ No newline at end of file diff --git a/src/views/zh/hy/tdcs/index.vue b/src/views/zh/hy/tdcs/index.vue index ac90d2f..65a596b 100644 --- a/src/views/zh/hy/tdcs/index.vue +++ b/src/views/zh/hy/tdcs/index.vue @@ -2,7 +2,7 @@
- + 当天 近3天 @@ -10,102 +10,275 @@ 近30天 自定义 - + - - 全部 - {{item.housingestateName}} + + 全部 + {{ + item.housingestateName }} + + + + + + + + + 查询 + 重置 + + + + 统计图 + 列表页 + + - + + + + + + + + + +
diff --git a/src/views/zh/shebei/shebei.api.ts b/src/views/zh/shebei/shebei.api.ts new file mode 100644 index 0000000..b308a82 --- /dev/null +++ b/src/views/zh/shebei/shebei.api.ts @@ -0,0 +1,41 @@ +import { defHttp } from '/@/utils/http/axios'; + +enum Api { + housingestateList = '/zh/hy/queryHousingestateList', + registerList = '/zh/hy/queryHyRegisterList', + xzList = '/zh/hy/queryHyXzList', + tdcsList = '/zh/hy/querySheBeiTdcsList', + allTdcsList = '/zh/hy/queryAllSheBeiTdcsList', + queryHyjlList = '/zh/hy/queryHyjlList', +} + +/** + * 获取小区 + * @param params + */ +export const housingestateList = (params) => defHttp.get({ url: Api.housingestateList, params }); +/** + * 会员注册时间段统计 + * @param params + */ +export const registerList = (params) => defHttp.get({ url: Api.registerList, params }); +/** + * 新增会员统计 + * @param params + */ +export const xzList = (params) => defHttp.get({ url: Api.xzList, params }); +/** + * 会员投递次数排行榜 + * @param params + */ +export const tdcsList = (params) => defHttp.get({ url: Api.tdcsList, params }); +/** + * 所有会员投递次数排行榜 + * @param params + */ +export const allTdcsList = (params) => defHttp.get({ url: Api.allTdcsList, params }); +/** + * 查询会员投递历史 + * @param params + */ +export const queryHyjlList = (params) => defHttp.get({ url: Api.queryHyjlList, params }); \ No newline at end of file diff --git a/src/views/zh/shebei/tdcs/index.vue b/src/views/zh/shebei/tdcs/index.vue new file mode 100644 index 0000000..9971fb2 --- /dev/null +++ b/src/views/zh/shebei/tdcs/index.vue @@ -0,0 +1,284 @@ + + + diff --git a/src/views/zh/shebei/zcxx/DeviceInfo.api.ts b/src/views/zh/shebei/zcxx/DeviceInfo.api.ts new file mode 100644 index 0000000..8204a73 --- /dev/null +++ b/src/views/zh/shebei/zcxx/DeviceInfo.api.ts @@ -0,0 +1,72 @@ +import { defHttp } from '/@/utils/http/axios'; +import { useMessage } from "/@/hooks/web/useMessage"; + +const { createConfirm } = useMessage(); + +enum Api { + list = '/deviceinfo/deviceInfo/list', + save='/deviceinfo/deviceInfo/add', + edit='/deviceinfo/deviceInfo/edit', + deleteOne = '/deviceinfo/deviceInfo/delete', + deleteBatch = '/deviceinfo/deviceInfo/deleteBatch', + importExcel = '/deviceinfo/deviceInfo/importExcel', + exportXls = '/deviceinfo/deviceInfo/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/zh/shebei/zcxx/DeviceInfo.data.ts b/src/views/zh/shebei/zcxx/DeviceInfo.data.ts new file mode 100644 index 0000000..815e9f3 --- /dev/null +++ b/src/views/zh/shebei/zcxx/DeviceInfo.data.ts @@ -0,0 +1,75 @@ +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: 'imei', + }, + { + title: 'ICCID', + align: 'center', + dataIndex: 'iccid', + }, + { + title: '是否在线', + align: 'center', + dataIndex: 'isOnline', + format(text, record, index) { + console.log("🌊 ~ format ~ text:", text) + + if (text == 'true') { + return '在线'; + } else { + return '离线'; + } + }, + }, + { + title: '区域名称', + align: 'center', + dataIndex: 'housingestateName', + }, + { + title: '设备点位', + align: 'center', + dataIndex: 'content', + }, + { + title: '桶数量', + align: 'center', + dataIndex: 'boxNum', + }, + { + title: '是否在仓库中', + align: 'center', + dataIndex: 'inWarehouse', + format(text, record, index) { + if (text == 0) { + return '0待翻译'; + } else { + return '1待翻译'; + } + }, + }, + // { + // title: '区域ID', + // align: 'center', + // dataIndex: 'housingestateId', + // }, +]; + +// 高级查询数据 +export const superQuerySchema = { + imei: { title: '设备编码', order: 0, view: 'text', type: 'string' }, + iccid: { title: 'ICCID', order: 1, view: 'text', type: 'string' }, + isOnline: { title: '是否在线', order: 2, view: 'text', type: 'string' }, + content: { title: '设备点位', order: 3, view: 'text', type: 'string' }, + boxNum: { title: '桶数量', order: 4, view: 'text', type: 'string' }, + inWarehouse: { title: '是否在仓库中', order: 5, view: 'text', type: 'string' }, + housingestateId: { title: '区域ID', order: 6, view: 'text', type: 'string' }, +}; diff --git a/src/views/zh/shebei/zcxx/DeviceInfoList.vue b/src/views/zh/shebei/zcxx/DeviceInfoList.vue new file mode 100644 index 0000000..206add0 --- /dev/null +++ b/src/views/zh/shebei/zcxx/DeviceInfoList.vue @@ -0,0 +1,296 @@ + + + + + diff --git a/src/views/zh/shebei/zcxx/components/DeviceInfoForm.vue b/src/views/zh/shebei/zcxx/components/DeviceInfoForm.vue new file mode 100644 index 0000000..9610e4e --- /dev/null +++ b/src/views/zh/shebei/zcxx/components/DeviceInfoForm.vue @@ -0,0 +1,181 @@ + + + + + diff --git a/src/views/zh/shebei/zcxx/components/DeviceInfoModal.vue b/src/views/zh/shebei/zcxx/components/DeviceInfoModal.vue new file mode 100644 index 0000000..1c0d582 --- /dev/null +++ b/src/views/zh/shebei/zcxx/components/DeviceInfoModal.vue @@ -0,0 +1,77 @@ + + + + + +