diff --git a/src/api/chatSettings/index.js b/src/api/chatSettings/index.js
index e194d2c..346c10d 100644
--- a/src/api/chatSettings/index.js
+++ b/src/api/chatSettings/index.js
@@ -9,3 +9,21 @@ export const ServeQueryGroupInfo = (data) => {
data,
})
}
+
+// 查看群成员
+export const ServeQueryGroupMembers = (data) => {
+ return request({
+ url: '/api/v1/group/member/list',
+ method: 'GET',
+ data,
+ })
+}
+
+// 群公告查询
+export const ServeQueryGroupNotice = (data) => {
+ return request({
+ url: '/api/v1/group/notice/list',
+ method: 'GET',
+ data,
+ })
+}
diff --git a/src/api/search/index.js b/src/api/search/index.js
index 30f7fd1..8c321ab 100644
--- a/src/api/search/index.js
+++ b/src/api/search/index.js
@@ -36,3 +36,12 @@ export const ServeTalkRecord = (data) => {
data,
})
}
+
+//查看存在聊天记录的天数
+export const ServeTalkDate = (data) => {
+ return request({
+ url: '/api/v1/talk/date',
+ method: 'POST',
+ data,
+ })
+}
diff --git a/src/pages.json b/src/pages.json
index ce3ce4c..964d9d5 100644
--- a/src/pages.json
+++ b/src/pages.json
@@ -83,6 +83,14 @@
"enablePullDownRefresh": false
}
},
+ {
+ "path": "pages/search/searchByCondition/index",
+ "type": "page",
+ "style": {
+ "navigationStyle": "custom",
+ "enablePullDownRefresh": false
+ }
+ },
{
"path": "pages/chatSettings/index",
"type": "page",
@@ -90,6 +98,14 @@
"navigationStyle": "custom",
"enablePullDownRefresh": false
}
+ },
+ {
+ "path": "pages/chatSettings/groupManage/manageNotice",
+ "type": "page",
+ "style": {
+ "navigationStyle": "custom",
+ "enablePullDownRefresh": false
+ }
}
],
"globalStyle": {
diff --git a/src/pages/chatSettings/components/settingFormItem.vue b/src/pages/chatSettings/components/settingFormItem.vue
index 685da61..45c8136 100644
--- a/src/pages/chatSettings/components/settingFormItem.vue
+++ b/src/pages/chatSettings/components/settingFormItem.vue
@@ -4,7 +4,7 @@
{{ item.label }}
-
+
{{ item.value }}
@@ -28,7 +28,7 @@
diff --git a/src/pages/chatSettings/index.vue b/src/pages/chatSettings/index.vue
index 09a7d8d..f6fa3fa 100644
--- a/src/pages/chatSettings/index.vue
+++ b/src/pages/chatSettings/index.vue
@@ -23,8 +23,24 @@
{{ '(' + groupNum + ')' }}
-
-
{{ groupType }}
+
+
+ {{ groupType }}
+
@@ -41,13 +57,20 @@
-
![]()
-
- {{ memberItem.avatar }}
+
+
+ {{
+ memberItem.nickname.length >= 2
+ ? memberItem.nickname.slice(-2)
+ : memberItem.nickname
+ }}
@@ -57,7 +80,7 @@
- {{ memberItem.name }}
+ {{ memberItem.nickname }}
@@ -71,7 +94,10 @@
v-for="(item, index) in state.chatGroupInfos"
:key="index"
>
-
+
@@ -88,6 +114,7 @@
class="record-search-types-each"
v-for="(item, index) in state.recordSearchTypeList"
:key="index"
+ @click="toSearchByConditionPage(index)"
>
{{ item.value }}
@@ -135,6 +162,10 @@
diff --git a/src/static/image/search/down-pointer.png b/src/static/image/search/down-pointer.png
new file mode 100644
index 0000000..6f6b2cf
Binary files /dev/null and b/src/static/image/search/down-pointer.png differ
diff --git a/src/uni_modules/tmui/components/tm-calendar-view/month-day.vue b/src/uni_modules/tmui/components/tm-calendar-view/month-day.vue
index a86f0c8..7533f44 100644
--- a/src/uni_modules/tmui/components/tm-calendar-view/month-day.vue
+++ b/src/uni_modules/tmui/components/tm-calendar-view/month-day.vue
@@ -1,82 +1,149 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
-
+
+
diff --git a/src/uni_modules/tmui/components/tm-calendar-view/tm-calendar-view.vue b/src/uni_modules/tmui/components/tm-calendar-view/tm-calendar-view.vue
index 02b9d28..230572c 100644
--- a/src/uni_modules/tmui/components/tm-calendar-view/tm-calendar-view.vue
+++ b/src/uni_modules/tmui/components/tm-calendar-view/tm-calendar-view.vue
@@ -1,137 +1,139 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/uni_modules/tmui/components/tm-time-picker/tm-time-picker.vue b/src/uni_modules/tmui/components/tm-time-picker/tm-time-picker.vue
index 18beac2..bc42457 100644
--- a/src/uni_modules/tmui/components/tm-time-picker/tm-time-picker.vue
+++ b/src/uni_modules/tmui/components/tm-time-picker/tm-time-picker.vue
@@ -123,7 +123,8 @@ const props = defineProps({
day: true,
hour: false,
minute: false,
- second: false
+ second: false,
+ am_pm: true
}
}
},
diff --git a/src/uni_modules/tmui/components/tm-time-view/interface.ts b/src/uni_modules/tmui/components/tm-time-view/interface.ts
index fedd600..3599dda 100644
--- a/src/uni_modules/tmui/components/tm-time-view/interface.ts
+++ b/src/uni_modules/tmui/components/tm-time-view/interface.ts
@@ -5,6 +5,7 @@ export interface showDetail {
hour: boolean,
minute: boolean,
second: boolean,
+ am_pm: boolean
}
export enum timeDetailType {
year = "year",
@@ -25,4 +26,4 @@ export interface timeArrayType {
hour: Array
,
minute: Array,
second: Array,
-}
\ No newline at end of file
+}
diff --git a/src/uni_modules/tmui/components/tm-time-view/tm-time-view.vue b/src/uni_modules/tmui/components/tm-time-view/tm-time-view.vue
index a68c94d..ddb4729 100644
--- a/src/uni_modules/tmui/components/tm-time-view/tm-time-view.vue
+++ b/src/uni_modules/tmui/components/tm-time-view/tm-time-view.vue
@@ -1,11 +1,14 @@
-
-
+
+
- {{item + showSuffix['year']}}
+
+ {{ item + showSuffix['year'] }}
+
-
@@ -38,7 +41,6 @@
class="flex itemcel flex-row flex-row-center-center"
:class="[colIndex[1] == index ? '' : 'UnitemSelected']"
>
-
- {{item + 1 + showSuffix['month']}}
+
+ {{ item + 1 + showSuffix['month'] }}
+
-
@@ -59,7 +62,6 @@
class="flex itemcel flex-row flex-row-center-center"
:class="[colIndex[2] == index ? '' : 'UnitemSelected']"
>
-
- {{item + showSuffix['date']}}
+
+ {{ item + showSuffix['date'] }}
+
@@ -79,7 +83,6 @@
class="flex itemcel flex-row flex-row-center-center"
:class="[colIndex[3] == index ? '' : 'UnitemSelected']"
>
-
- {{item + showSuffix['hour']}}
+
+ {{ item + showSuffix['hour'] }}
+
@@ -99,7 +104,6 @@
class="flex itemcel flex-row flex-row-center-center"
:class="[colIndex[4] == index ? '' : 'UnitemSelected']"
>
-
- {{item + showSuffix['minute']}}
+
+ {{ item + showSuffix['minute'] }}
+
@@ -119,7 +125,6 @@
class="flex itemcel flex-row flex-row-center-center"
:class="[colIndex[5] == index ? '' : 'UnitemSelected']"
>
-
- {{item + showSuffix['second']}}
+
+ {{ item + showSuffix['second'] }}
+
@@ -136,19 +143,24 @@
-
+
-
- {{item}}
+
+ {{ item }}
+
@@ -177,7 +189,7 @@
* 时间选择
* @description 嵌入在页面的时间选择器。
*/
-import { useTmpiniaStore } from "../../tool/lib/tmpinia";
+import { useTmpiniaStore } from '../../tool/lib/tmpinia'
import {
computed,
PropType,
@@ -189,44 +201,44 @@ import {
watch,
onUpdated,
Ref,
-} from "vue";
-import { showDetail, coltimeData, timeDetailType } from "./interface";
-import * as dayjs from "../../tool/dayjs/esm";
-import { propsOpts } from "./props";
+} from 'vue'
+import { showDetail, coltimeData, timeDetailType } from './interface'
+import * as dayjs from '../../tool/dayjs/esm'
+import { propsOpts } from './props'
import {
rangeTimeArray,
getNowbyIndex,
getIndexNowbydate,
checkNowDateisBetween,
-} from "./time";
-import TmText from "../tm-text/tm-text.vue";
-import TmIcon from "../tm-icon/tm-icon.vue";
+} from './time'
+import TmText from '../tm-text/tm-text.vue'
+import TmIcon from '../tm-icon/tm-icon.vue'
// #ifdef APP-PLUS-NVUE
-const dom = uni.requireNativePlugin("dom");
+const dom = uni.requireNativePlugin('dom')
// #endif
-const proxy = getCurrentInstance()?.proxy ?? null;
-const store = useTmpiniaStore();
-const emits = defineEmits(["update:modelValue", "update:modelStr", "change"]);
-const tmTimeViewName = "tmTimeViewName";
-const DayJs = dayjs.default;
-const props = defineProps({ ...propsOpts });
+const proxy = getCurrentInstance()?.proxy ?? null
+const store = useTmpiniaStore()
+const emits = defineEmits(['update:modelValue', 'update:modelStr', 'change'])
+const tmTimeViewName = 'tmTimeViewName'
+const DayJs = dayjs.default
+const props = defineProps({ ...propsOpts })
const _nowtime = ref(
- DayJs(checkNowDateisBetween(props.defaultValue, props.start, props.end))
-);
-const _nowtimeValue = computed(() => _nowtime.value.format());
+ DayJs(checkNowDateisBetween(props.defaultValue, props.start, props.end)),
+)
+const _nowtimeValue = computed(() => _nowtime.value.format())
-const show = ref(true);
+const show = ref(true)
const _startTime = computed(() => {
return DayJs(props.start).isValid()
? DayJs(props.start).format()
- : DayJs().subtract(3, "year").format();
-});
+ : DayJs().subtract(3, 'year').format()
+})
const _endTime = computed(() => {
return DayJs(props.end).isValid()
? DayJs(props.end).format()
- : DayJs().add(1, "year").format();
-});
+ : DayJs().add(1, 'year').format()
+})
const showCol = computed(() => {
return {
year: props.showDetail?.year ?? true,
@@ -235,24 +247,25 @@ const showCol = computed(() => {
hour: props.showDetail?.hour ?? false,
minute: props.showDetail?.minute ?? false,
second: props.showDetail?.second ?? false,
- };
-});
+ am_pm: props.showDetail?.am_pm ?? true,
+ }
+})
const trueCount = computed(() => {
- return Object.values(showCol.value).filter(value => value === true).length;
-});
+ return Object.values(showCol.value).filter((value) => value === true).length
+})
const showSuffix = computed(() => {
return {
- year: props.showSuffix?.year ?? "年",
- month: props.showSuffix?.month ?? "月",
- hour: props.showSuffix?.hour ?? "时",
- minute: props.showSuffix?.minute ?? "分",
- second: props.showSuffix?.second ?? "秒",
- date: props.showSuffix?.day ?? "日",
- };
-});
-const isDark = computed(() => store.tmStore.dark);
-let colIndex: Ref> = ref([0, 0, 0, 0, 0, 0]);
-let ampmIndex: Ref> = ref([0]);
+ year: props.showSuffix?.year ?? '年',
+ month: props.showSuffix?.month ?? '月',
+ hour: props.showSuffix?.hour ?? '时',
+ minute: props.showSuffix?.minute ?? '分',
+ second: props.showSuffix?.second ?? '秒',
+ date: props.showSuffix?.day ?? '日',
+ }
+})
+const isDark = computed(() => store.tmStore.dark)
+let colIndex: Ref> = ref([0, 0, 0, 0, 0, 0])
+let ampmIndex: Ref> = ref([0])
const _col = ref({
year: [] as Array,
month: [] as Array,
@@ -260,129 +273,144 @@ const _col = ref({
hour: [] as Array,
minute: [] as Array,
second: [] as Array,
-});
+})
-let timid = NaN;
-const maskWidth = ref(0);
+let timid = NaN
+const maskWidth = ref(0)
const maskHeight = computed(() => {
- return (uni.upx2px(props.height) - 50) / 2;
-});
+ return (uni.upx2px(props.height) - 50) / 2
+})
const maskStyle = computed(() => {
let str_white =
- "background-image:linear-gradient(rgba(255,255,255,0.95),rgba(255,255,255,0.6)),linear-gradient(rgba(255,255,255,0.6),rgba(255,255,255,0.95))";
+ 'background-image:linear-gradient(rgba(255,255,255,0.95),rgba(255,255,255,0.6)),linear-gradient(rgba(255,255,255,0.6),rgba(255,255,255,0.95))'
let str_black =
- "background-image:linear-gradient(rgba(17, 17, 17, 1.0),rgba(106, 106, 106, 0.2)),linear-gradient(rgba(106, 106, 106, 0.2),rgba(17, 17, 17, 1.0))";
+ 'background-image:linear-gradient(rgba(17, 17, 17, 1.0),rgba(106, 106, 106, 0.2)),linear-gradient(rgba(106, 106, 106, 0.2),rgba(17, 17, 17, 1.0))'
// #ifdef APP-NVUE
str_black =
- "background-image: linear-gradient(to bottom,rgba(30, 30, 30, 0.9),rgba(104, 104, 104, 0.6))";
+ 'background-image: linear-gradient(to bottom,rgba(30, 30, 30, 0.9),rgba(104, 104, 104, 0.6))'
// #endif
if (!isDark.value) {
- return str_white;
+ return str_white
}
- return str_black;
-});
+ return str_black
+})
_col.value = rangeTimeArray(
_nowtimeValue.value,
_startTime.value,
_endTime.value,
- showCol.value
-);
-function change1(data){
- console.log('data',data)
+ showCol.value,
+)
+function change1(data) {
+ console.log('data', data)
}
function colchange(e: any) {
-
- let changedate = getNowbyIndex(_col.value, e.detail.value, showCol.value, _startTime.value,_endTime.value);
- let testDate = checkNowDateisBetween(changedate, _startTime.value,_endTime.value)
-
-
+ let changedate = getNowbyIndex(
+ _col.value,
+ e.detail.value,
+ showCol.value,
+ _startTime.value,
+ _endTime.value,
+ )
+ let testDate = checkNowDateisBetween(
+ changedate,
+ _startTime.value,
+ _endTime.value,
+ )
let testRang = rangeTimeArray(
- testDate,
- _startTime.value,
- _endTime.value,
- showCol.value
- );
-
-
-
-
- _nowtime.value = DayJs(testDate);
- colIndex.value = getIndexNowbydate(testRang, _nowtime.value, showCol.value);
- emits("update:modelValue", _nowtime.value.format("YYYY/MM/DD HH:mm:ss"));
- emits("update:modelStr", _nowtime.value.format(props.format));
- emits("change", _nowtime.value.format(props.format));
-
- _col.value= testRang;
+ testDate,
+ _startTime.value,
+ _endTime.value,
+ showCol.value,
+ )
+ _nowtime.value = DayJs(testDate)
+ colIndex.value = getIndexNowbydate(testRang, _nowtime.value, showCol.value)
+ emits('update:modelValue', _nowtime.value.format('YYYY/MM/DD HH:mm:ss'))
+ emits('update:modelStr', _nowtime.value.format(props.format))
+ emits('change', _nowtime.value.format(props.format))
+ _col.value = testRang
}
watch(
() => props.modelValue,
() => {
- if (!DayJs(props.modelValue).isValid()) return;
- let deattime = DayJs(checkNowDateisBetween(props.modelValue, props.start, props.end));
+ if (!DayJs(props.modelValue).isValid()) return
+ let deattime = DayJs(
+ checkNowDateisBetween(props.modelValue, props.start, props.end),
+ )
- if (DayJs(deattime).isSame(_nowtime.value)) return;
- _nowtime.value = deattime;
- emits("update:modelStr", _nowtime.value.format(props.format));
+ if (DayJs(deattime).isSame(_nowtime.value)) return
+ _nowtime.value = deattime
+ emits('update:modelStr', _nowtime.value.format(props.format))
// #ifdef APP-NVUE
_col.value = rangeTimeArray(
deattime,
_startTime.value,
_endTime.value,
- showCol.value
- );
- show.value = false;
- colIndex.value = getIndexNowbydate(_col.value, _nowtime.value, showCol.value);
+ showCol.value,
+ )
+ show.value = false
+ colIndex.value = getIndexNowbydate(
+ _col.value,
+ _nowtime.value,
+ showCol.value,
+ )
nextTick(() => {
/**这力着重解释下,uni sdk从3.6.8开始,在nvue下直接对picker view赋值value,页面不会有任何变化,必须刷新下页面才可以显示正确
* 其它平台没有这问题
*/
- show.value = true;
- });
+ show.value = true
+ })
// #endif
// #ifndef APP-NVUE
_col.value = rangeTimeArray(
deattime,
_startTime.value,
_endTime.value,
- showCol.value
- );
- colIndex.value = getIndexNowbydate(_col.value, _nowtime.value, showCol.value);
+ showCol.value,
+ )
+ colIndex.value = getIndexNowbydate(
+ _col.value,
+ _nowtime.value,
+ showCol.value,
+ )
// #endif
- }
-);
+ },
+)
function nvuegetClientRect() {
nextTick(function () {
// #ifdef APP-PLUS-NVUE
dom.getComponentRect(proxy.$refs.picker, function (res) {
if (res?.size) {
- maskWidth.value = res.size.width;
+ maskWidth.value = res.size.width
if (res.size.width == 0) {
- nvuegetClientRect();
+ nvuegetClientRect()
}
}
- });
+ })
// #endif
- });
+ })
}
onMounted(() => {
- nvuegetClientRect();
+ nvuegetClientRect()
nextTick(() => {
- emits("update:modelValue", _nowtime.value.format("YYYY/MM/DD HH:mm:ss"));
- emits("update:modelStr", _nowtime.value.format(props.format));
- colIndex.value = getIndexNowbydate(_col.value, _nowtime.value, showCol.value);
- });
-});
+ emits('update:modelValue', _nowtime.value.format('YYYY/MM/DD HH:mm:ss'))
+ emits('update:modelStr', _nowtime.value.format(props.format))
+ colIndex.value = getIndexNowbydate(
+ _col.value,
+ _nowtime.value,
+ showCol.value,
+ )
+ })
+})
-
-onUpdated(() => nvuegetClientRect());
+onUpdated(() => nvuegetClientRect())
// defineExpose({tmTimeViewName,setNowtime})
@@ -397,7 +425,11 @@ onUpdated(() => nvuegetClientRect());
}
.bottom {
- background-image: linear-gradient(to top, rgba(17, 17, 17, 1), rgba(36, 36, 36, 0.6));
+ background-image: linear-gradient(
+ to top,
+ rgba(17, 17, 17, 1),
+ rgba(36, 36, 36, 0.6)
+ );
}
.itemcel {
diff --git a/src/uni_modules/tmui/locale/zh-Hans.json b/src/uni_modules/tmui/locale/zh-Hans.json
index 14e8854..ee28c25 100644
--- a/src/uni_modules/tmui/locale/zh-Hans.json
+++ b/src/uni_modules/tmui/locale/zh-Hans.json
@@ -100,5 +100,9 @@
"record.searchType.link": "链接",
"group.identify.admin": "管理员",
"group.disband.btn": "解散该群",
- "group.quit.btn": "退出群聊"
+ "group.quit.btn": "退出群聊",
+ "search.condition.date": "按日期查找",
+ "search.condition.date_pickerTitle": "请选择聊天日期",
+ "button.text.done": "完成",
+ "input.placeholder.enter": "请输入..."
}