diff --git a/apis/user/account.js b/apis/user/account.js index 5d9bd69..f2afb88 100644 --- a/apis/user/account.js +++ b/apis/user/account.js @@ -36,4 +36,9 @@ export default { GetCurrentbalance(data){ return request.get('/Users/GetCurrentbalance',data) }, + // 通知修改为已读 + updateInfoTell(id){ + // ALERT(1111) + return request.put(`/api/extend/demo/UpdateIsReadEnd?MessageId=`+id,null) + }, } diff --git a/pages.json b/pages.json index 8e3e1a3..235d206 100644 --- a/pages.json +++ b/pages.json @@ -426,6 +426,30 @@ "navigationBarTitleText" : "通知详情填写", "enablePullDownRefresh" : false } + }, + { + "path" : "pages/Feedback/reponseAppeal/reponseAppeal", + "style" : + { + "navigationBarTitleText" : "诉求信息", + "enablePullDownRefresh" : false + } + }, + { + "path" : "pages/my/userReponse/userReponse", + "style" : + { + "navigationBarTitleText" : "诉求列表", + "enablePullDownRefresh" : false + } + }, + { + "path" : "pages/my/adminMessageList/adminMessageList", + "style" : + { + "navigationBarTitleText" : "管理员信息列表", + "enablePullDownRefresh" : false + } } // { diff --git a/pages/Feedback/Feedback.scss b/pages/Feedback/Feedback.scss index 4ef2d34..aa8ced6 100644 --- a/pages/Feedback/Feedback.scss +++ b/pages/Feedback/Feedback.scss @@ -29,6 +29,38 @@ } } } +.item-box{ + width: 96%; + margin: 0 auto; + margin-top: 20rpx; + border-radius: 30rpx; + background-color: white; + padding: 20rpx; + display: flex; + justify-content: space-between; + align-items: center; + .lef{ + width: 60%; + // background-color: red; + overflow: hidden; + white-space: nowrap; + text-overflow: ellipsis; + } + .rig{ + display: flex; + align-items: center; + .status{ + font-size: 20rpx; + } + button{ + margin-left: 20rpx; + font-size: 20rpx; + width: 150rpx; + background-color: dodgerblue; + color: white; + } + } +} /* 反馈类型 */ .feedback-type{ position: relative; diff --git a/pages/Feedback/Feedback.vue b/pages/Feedback/Feedback.vue index 5610ac8..d5c7c24 100644 --- a/pages/Feedback/Feedback.vue +++ b/pages/Feedback/Feedback.vue @@ -1,5 +1,33 @@ diff --git a/pages/Feedback/reponseAppeal/Feedback.scss b/pages/Feedback/reponseAppeal/Feedback.scss new file mode 100644 index 0000000..8c4297d --- /dev/null +++ b/pages/Feedback/reponseAppeal/Feedback.scss @@ -0,0 +1,187 @@ +.page{ + position: absolute; + left: 0; + top: 0; + width: 100%; + height: 100%; + background-color: #f6f6f6; +} +.titleall-box { + display: flex; + justify-content: space-between; + padding: 40rpx 20rpx 20rpx 0; + .titleall-left { + font-size: 32rpx; + font-weight: bold; + display: flex; + align-items: center; + .titleall-left-line { + width: 14rpx; + height: 36rpx; + border-radius: 0 10rpx 10rpx 0; + background-color: #E60012; + box-shadow: 0 0 10rpx 5rpx #fbdadc; + margin-right: 20rpx; + } + text { + font-size: 28rpx; + color: #999999; + } + } +} +/* 反馈类型 */ +.feedback-type{ + position: relative; + display: flex; + align-items: center; + justify-content: space-between; + width: 94%; + height: 100rpx; + margin: 20rpx auto; + background-color: #FFFFFF; + border-radius: 20rpx; + padding: 0 4%; + .feedback-type-left { + color: #909090; + } + .title{ + display: flex; + align-items: center; + text{ + font-size: 26rpx; + } + } + .picker{ + position: absolute; + width: 100%; + height: 100%; + opacity: 0; + } + .more{ + display: flex; + align-items: center; + text{ + color: #000; + font-size: 34rpx; + } + image { + width: 20rpx; + height: 20rpx; + margin-left: 10rpx; + } + } + .feedback-type-right { + display: flex; + align-items: center; + } +} +.example-body { + padding: 10px; + padding-top: 0; + } + + .custom-image-box { + /* #ifndef APP-NVUE */ + display: flex; + /* #endif */ + flex-direction: row; + justify-content: space-between; + align-items: center; + } + + .text { + font-size: 14px; + color: #333; + } +.segmented-control { + margin-bottom: 15px; + } + + .button-group { + margin-top: 15px; + display: flex; + justify-content: space-around; + } + + .form-item { + display: flex; + align-items: center; + } + + .button { + display: flex; + align-items: center; + height: 35px; + margin-left: 10px; + } +/* 反馈内容 */ +.feedback-data{ + width: 94%; + // height: 600rpx; + margin: 20rpx auto; + background-color: #FFFFFF; + border-radius: 20rpx; + .content{ + padding: 20rpx; + textarea{ + width: 94%; + height: 320rpx; + background-color: #f6f6f6; + border-radius: 20rpx; + padding: 20rpx; + font-size: 26rpx; + color: #222222; + } + } + .voucher-img{ + display: flex; + align-items: center; + padding: 0 20rpx; + height: 240rpx; + margin-top: 20rpx; + .list{ + width: 33%; + height: 100%; + image{ + width: 160rpx; + height: 160rpx; + border-radius: 10rpx; + } + } + } +} + +/* 联系方式 */ +.contact-way{ + display: flex; + align-items: center; + justify-content: center; + width: 94%; + height: 100rpx; + margin: 20rpx auto; + background-color: #FFFFFF; + border-radius: 20rpx; + input{ + width: 100%; + height: 100%; + padding: 0 4%; + font-size: 26rpx; + color: #222222; + } +} + +/* 提交 */ +.submit-btn{ + display: flex; + align-items: center; + justify-content: center; + width: 94%; + height: 80rpx; + margin: 30rpx auto; + background: #E60012; + border-radius: 80rpx; + text{ + color: #FFFFFF; + font-size: 28rpx; + } +} \ No newline at end of file diff --git a/pages/Feedback/reponseAppeal/reponseAppeal.vue b/pages/Feedback/reponseAppeal/reponseAppeal.vue new file mode 100644 index 0000000..9517fca --- /dev/null +++ b/pages/Feedback/reponseAppeal/reponseAppeal.vue @@ -0,0 +1,226 @@ + + + + + \ No newline at end of file diff --git a/pages/fileLook/fileLook.vue b/pages/fileLook/fileLook.vue index 543d5f8..19e38f0 100644 --- a/pages/fileLook/fileLook.vue +++ b/pages/fileLook/fileLook.vue @@ -88,7 +88,7 @@ }); }, }); - } + }, } } diff --git a/pages/my/adminMessageList/adminMessageList.vue b/pages/my/adminMessageList/adminMessageList.vue new file mode 100644 index 0000000..5895e1e --- /dev/null +++ b/pages/my/adminMessageList/adminMessageList.vue @@ -0,0 +1,153 @@ + + + + + diff --git a/pages/my/messageList/messageList.vue b/pages/my/messageList/messageList.vue index 1093ade..cef0b61 100644 --- a/pages/my/messageList/messageList.vue +++ b/pages/my/messageList/messageList.vue @@ -1,7 +1,7 @@ @@ -68,13 +82,20 @@ fileName: '文件名', // 当前用户ID: userId: '', - isAdmin:false + isAdmin:false, + // 用户公司ID + companyId: '', + // 公文列表 + fileList: [], + isNull: false, + baseUrl: 'http://deyanggaoxin.fengshiyun.com' } }, onShow() { this.getUser() this.getTypeOfCompany() this.getTypeCompanyList('365139048618001669') + this.getFileList() // this.getCompanyList() // this.getTypeOfCompany() }, @@ -353,7 +374,7 @@ console.log(res) if (res.code === 200) { if(this.check){ - this.tellNotice() + this.tellNotice(res.data.Id,res.data.DocmentUrl) } uni.showToast({ icon: "success", @@ -371,16 +392,19 @@ }, // 进行通知 - tellNotice(){ + tellNotice(id,url){ // 进行通知 + console.log("进入通知") request({ url:'/api/extend/demo/SendMessageByApp', method:'post', data:{ title:'公文消息', - companys:'公文消息,请及时查看!', + companys:this.city_ids5, desc:this.noticeDesc, - fangshi:'通知' + fangshi:'通知', + reid:id, + link:url } }).then(res=>{ console.log('通知结果',res) @@ -402,11 +426,64 @@ }) }) return city_name.join(','); - } + }, + // 获取当前用户的公文 + getFileList() { + let userInfo = uni.getStorageSync('user') + request({ + url: '/api/Extend/basedocumenthandle/GetListByCurrentUser', + method: 'get', + data: {} + }).then(res => { + console.log(res) + if (res.code === 200) { + this.fileList = res.data.list + if (this.fileList.length > 0) { + this.isNull = true + } + } + }) + }, + download(it) { + uni.downloadFile({ + url: this.baseUrl + it,//下载地址接口返回 + success: (data) => { + if (data.statusCode === 200) { + //文件保存到本地 + uni.saveFile({ + tempFilePath: data.tempFilePath, //临时路径 + success: function(res) { + uni.showToast({ + icon: 'none', + mask: true, + title: '文件已保存:' + res.savedFilePath, //保存路径 + duration: 3000, + }); + setTimeout(() => { + //打开文档查看 + uni.openDocument({ + filePath: res.savedFilePath, + success: function(res) { + // console.log('打开文档成功'); + } + }); + }, 3000) + } + }); + } + }, + fail: (err) => { + that.loadelshow = false + console.log(err); + uni.showToast({ + icon: 'none', + mask: true, + title: '失败请重新下载', + }); + }, + }); + }, }, - created() { - - } } diff --git a/pages/recommend/postRecommend/postRecommend.vue b/pages/recommend/postRecommend/postRecommend.vue index 4bbdbb1..0d8a205 100644 --- a/pages/recommend/postRecommend/postRecommend.vue +++ b/pages/recommend/postRecommend/postRecommend.vue @@ -59,6 +59,7 @@ + + \ No newline at end of file diff --git a/uni_modules/zb-tab/package.json b/uni_modules/zb-tab/package.json new file mode 100644 index 0000000..8ef9c6f --- /dev/null +++ b/uni_modules/zb-tab/package.json @@ -0,0 +1,85 @@ +{ + "id": "zb-tab", + "displayName": "zb-tab 多端兼容", + "version": "1.0.11", + "description": "Tab 标签页 选项卡组件,用于在不同的内容区域之间进行切换。", + "keywords": [ + "zb-tab", + "tab", + "选项卡", + "标签页", + "" +], + "repository": "", + "engines": { + "HBuilderX": "^3.1.0" + }, + "dcloudext": { + "type": "component-vue", + "sale": { + "regular": { + "price": "0.00" + }, + "sourcecode": { + "price": "0.00" + } + }, + "contact": { + "qq": "" + }, + "declaration": { + "ads": "无", + "data": "无", + "permissions": "无" + }, + "npmurl": "" + }, + "uni_modules": { + "dependencies": [], + "encrypt": [], + "platforms": { + "cloud": { + "tcb": "y", + "aliyun": "y" + }, + "client": { + "Vue": { + "vue2": "y", + "vue3": "y" + }, + "App": { + "app-vue": "y", + "app-nvue": "u" + }, + "H5-mobile": { + "Safari": "y", + "Android Browser": "y", + "微信浏览器(Android)": "y", + "QQ浏览器(Android)": "y" + }, + "H5-pc": { + "Chrome": "y", + "IE": "y", + "Edge": "y", + "Firefox": "y", + "Safari": "y" + }, + "小程序": { + "微信": "y", + "阿里": "y", + "百度": "y", + "字节跳动": "y", + "QQ": "y", + "钉钉": "y", + "快手": "y", + "飞书": "y", + "京东": "y" + }, + "快应用": { + "华为": "y", + "联盟": "y" + } + } + } + } +} \ No newline at end of file diff --git a/uni_modules/zb-tab/readme.md b/uni_modules/zb-tab/readme.md new file mode 100644 index 0000000..6f98856 --- /dev/null +++ b/uni_modules/zb-tab/readme.md @@ -0,0 +1,66 @@ +# zb-tab tab 切换 + +### 微信=》 19550102670 拉进群 + +### 友情链接 +#### 在线预览点击 —— [企业级、通用型中后台前端解决方案 ](https://yuanzbz.gitee.io/vue-admin-perfect/#/home) +#### vue-admin-perfect —— [企业级、通用型中后台前端解决方案(基于vue3.0+TS+Element-Plus 最新版,同时支持电脑,手机,平板)](https://github.com/zouzhibin/vue-admin-perfect) + + +### zb-tab Props 属性 +| 参数 | 说明 | 类型 | 默认值 | 是否必须 | +|-------------|--------------|---------------------------|----------|------| +| v-model | 绑定当前选中标签的标识符 | number , string] | 0 |非必须 | +| data | 数组对象 | Array | [] | 必须 | +| height | 设置tab高度 | string,number | 40px | -- | +| shrink | 是否开启左侧收缩布局 | boolean | false | 非必须 | +| lineWidth | 底部条宽度 | number , string | -- | - | +| lineColor | 底部条颜色 | string | #ee0a24 | - | +| activeStyle | 设置选中样式 | object | {} | - | +| scrollable | 菜单是否可以滚动 | boolean | true | - | + +### 特别注意 +v-model v-model绑定的变量值与data绑定的数组内某一项元素的value值相等才能显示默认下划线。 +对应的是 data中的 value值 + +未选中class 可以用 zb-no-active 来覆盖样式 + +##3 DropdownItem Events +| 参数 | 说明 | 回调参数 | +| ------ | ------ | ------ | ------ | ------ |------ | +| change | 选项改变导致 value 变化时触发 | item | +| click-tab | 点击选项改变导致 value 变化时触发 | item | + + +### 使用示例 +``` + + + v-model 对应得是 data中选中得value +``` +### 数据格式 +``` +list0 = [{ + name: '标签1', + value: 0, +}, { + name: '标签2', + value: 1, +}, { + name: '标签3', + value: 2, +}, { + name: '标签4', + value: 3, +}] +``` + + + \ No newline at end of file