forked from nsjcy/frontEnd/nsjcy

liuwh
2020-05-09 894ab56e0e650dda334273f21f948677163f134b
xiangjianlaji
3 files added
13 files modified
544 ■■■■ changed files
SunshineIns/src/conf/cover.scss 6 ●●●● patch | view | raw | blame | history
SunshineIns/src/fetch/_fetch.js 4 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/CareList.jsx 10 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/CareListEdit.jsx 273 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/lib/jb_background.png patch | view | raw | blame | history
SunshineLnsMinApp/lib/jb_person.png patch | view | raw | blame | history
SunshineLnsMinApp/lib/jb_phone.png patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxkt/fzxkt.js 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/index/index.js 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/index/index.wxml 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/wjjb/wjjb.js 5 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/wjjb/wjjb.wxml 40 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/wjjb/wjjb.wxss 76 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/xsuojb/xsuojb.js 8 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/xsuojb/xsuojb.wxml 40 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/xsuojb/xsuojb.wxss 76 ●●●●● patch | view | raw | blame | history
SunshineIns/src/conf/cover.scss
@@ -54,9 +54,9 @@
    #33c3ff
  ); /* 标准的语法(必须放在最后) */
}
.ant-modal-header {
  background: #1790ff;
}
// .ant-modal-header {
//   background: #1790ff;
// }
.bf-content {
  height: 300px;
SunshineIns/src/fetch/_fetch.js
@@ -1,7 +1,7 @@
import fetch from 'hife/fetch';
export const base = 'http://xnwj.gznsjc.gov.cn';
// export const base = 'http://1p885086k1.iok.la';
// export const base = 'http://xnwj.gznsjc.gov.cn';
export const base = 'http://nsjc.vaiwan.com';
//export const base = 'http://120.79.193.119:9021/';
// export const base = 'http://localhost:6060';
SunshineIns/src/page/CareList.jsx
@@ -3,7 +3,7 @@
import HeadView from '../view/HeadView';
import TableBtnView from '../view/TableBtnView';
import CommonSearchForm from '../view/CommonSearchForm';
import { Input, Button, DatePicker, Divider, message, Popconfirm, Select, Badge } from 'antd';
import { Input, Button, DatePicker, Divider, message, Popconfirm, Select, Badge, Breadcrumb } from 'antd';
import moment from 'moment';
import Fetch from '../fetch';
import TableView from '../view/TableView';
@@ -222,13 +222,13 @@
        return (
            <div className="app-page">
                <HeadView history={this.props.history} />
                {/* <Breadcrumb style={{ padding: '20px' }}>
                    <Breadcrumb.Item><a href="">后台中心</a></Breadcrumb.Item>
                    <Breadcrumb.Item>社会关护</Breadcrumb.Item>
                </Breadcrumb> */}
                <div style={{ marginLeft: '90%', marginBottom: '20px', marginTop: '20px' }}>
                    <Button type="primary" size='large' onClick={() => this.showModal('new')}>新建任务</Button>
                </div>
                <Breadcrumb style={{ padding: '20px' }}>
                    <Breadcrumb.Item><a href="">后台中心</a></Breadcrumb.Item>
                    <Breadcrumb.Item>社会关护</Breadcrumb.Item>
                </Breadcrumb>
                <div style={{ background: '#fff', margin: 20 }}>
                    <CommonSearchForm
                        {...this.props}
SunshineIns/src/page/CareListEdit.jsx
@@ -1,7 +1,7 @@
import React from 'react';
import { Row, Col, Input, DatePicker, Button, Modal, Upload, Icon, message, Breadcrumb, TimePicker, Badge, Select, Popconfirm, Spin } from 'antd';
import { Row, Col, Input, DatePicker, Button, Modal, Upload, Table, message, Breadcrumb, TimePicker, Badge, Select, Popconfirm, Spin } from 'antd';
const { TextArea } = Input;
import HeadView from '../view/HeadView';
import BusDetailView from '../view/BusDetailView';
@@ -40,6 +40,7 @@
        this.state = {
            dateSource: [],
            savedate: {},
            modalData: {},
            formdata: {},
            fileList: [],
            previewVisible: false,
@@ -55,6 +56,7 @@
            // rowNum: 4,
            editorState: BraftEditor.createEditorState(null),
            editorStatetaskProcess: BraftEditor.createEditorState(null),
            list: []
        };
    }
@@ -85,8 +87,6 @@
                        endHour: moment(endTime).format(format),
                        taskType: res.taskType || 1
                    },
                    editorState: BraftEditor.createEditorState(res.taskRequire),
                    editorStatetaskProcess: BraftEditor.createEditorState(res.taskProcess),
                    taskType: res.taskType || 1,
                    // status: res.activityStatus || '',
                    socialTaskObject: res.socialTaskObject ? { id: res.socialTaskObject.objectId, objectName: res.socialTaskObject.objectName, taskReport: res.socialTaskObject.taskReport } : {},
@@ -128,10 +128,6 @@
            message.warning("任务标题不能为空");
            return;
        }
        if (!savedate.taskAddress) {
            message.warning("任务地点不能为空");
            return;
        }
        if (moment(savedate.startTime) < moment(new Date())) {
            message.warning("开始时间必须大于当前时间");
            console.log(moment(savedate.startTime))
@@ -140,14 +136,6 @@
        }
        if (moment(savedate.endTime) < moment(savedate.startTime)) {
            message.warning("结束时间必须大于开始时间");
            return;
        }
        if (!savedate.taskRequire) {
            message.warning("任务要求不能为空");
            return;
        }
        if (!savedate.taskProcess) {
            message.warning("任务流程不能为空");
            return;
        }
        if (!socialTaskObject.id) {
@@ -335,6 +323,7 @@
                    autoPlay: true, // 指定音视频是否自动播放
                    controls: true, // 指定音视频是否显示控制栏
                    poster: domain + 'api/v1/attachment/image/' + res[0].id, // 指定视频播放器的封面
                    modalshowVisible: false
                }
            })
        }
@@ -364,9 +353,9 @@
        this.setState({ editorState })
        const htmlContent = editorState.toHTML()
        console.log(htmlContent)
        this.setState(({ savedate }) => ({
            savedate: {
                ...savedate,
        this.setState(({ modalData }) => ({
            modalData: {
                ...modalData,
                taskRequire: htmlContent
            }
        }))
@@ -375,19 +364,133 @@
    handleEditorLChange = (editorStatetaskProcess) => {
        this.setState({ editorStatetaskProcess })
        const htmlContent = editorStatetaskProcess.toHTML()
        this.setState(({ savedate }) => ({
            savedate: {
                ...savedate,
        this.setState(({ modalData }) => ({
            modalData: {
                ...modalData,
                taskProcess: htmlContent
            }
        }))
    }
    modalshow = () => {
        this.setState({ modalshowVisible: true })
        const { id } = this.props.match.params;
        this.setState({ loading: true })
        Fetch.socialfind(id)
            .then(res => {
                console.log(res)
                this.setState({
                    modalData: {
                        ...res,
                    },
                    editorState: BraftEditor.createEditorState(res.taskRequire),
                    editorStatetaskProcess: BraftEditor.createEditorState(res.taskProcess),
                    taskType: res.taskType || 1,
                    socialTaskObject: res.socialTaskObject ? { id: res.socialTaskObject.objectId, objectName: res.socialTaskObject.objectName, taskReport: res.socialTaskObject.taskReport } : {},
                    modaldisabled: res.status ? true : false,
                    fileList: res.attachments || [],
                    loading: false,
                });
            })
    }
    modalshowCancel = () => {
        this.setState({ modalshowVisible: false })
    }
    handleOk = () => {
        console.log('success')
        this.setState({ confirmLoading: true });
        const { modalData } = this.state;
        console.log(modalData)
        if (!modalData.taskAddress) {
            return message.warning("任务地点不能为空");
        }
        if (!modalData.taskTitle) {
            return message.warning("任务标题不能为空");
        }
        if (!modalData.taskRequire) {
            message.warning("任务要求不能为空");
            return;
        }
        if (!modalData.taskProcess) {
            message.warning("任务流程不能为空");
            return;
        }
        console.log(modalData)
        //提交完成后关闭弹窗,刷新列表
        // Fetch.addResult({ ...modalData })
        //     .then(res => {
        //         console.log(res)
        //         if (res.code === 0) {
        //             this.setState({
        //                 confirmLoading: false,
        //                 modal: false,
        //                 closeKey: Date.now()
        //             }, this.getData);
        //             message.success("提交成功!")
        //         } else {
        //             message.error('保存失败,请联系管理员', 2)
        //         }
        //     });
    }
    handleCancel = () => this.setState({ previewVisible: false })
    renderColumns = () => {
        return [
            {
                title: '编号',
                dataIndex: 'key',
                key: 'key',
            },
            {
                title: '任务流程',
                dataIndex: 'taskAddress',
                key: 'taskAddress',
            },
            {
                title: '任务要求',
                dataIndex: 'taskProcess',
                key: 'taskProcess',
            }, {
                title: '操作',
                key: 'action',
                render: (text, record) => (
                    <span>
                        <label onClick={() => { this.onDetail(text, record) }} className="theme-color">详情</label>
                        <Divider type="vertical" />
                        <Popconfirm placement="topRight" title={'你确定要删除该条记录吗'} onConfirm={() => { this.onDel(text, record) }} okText="确定" cancelText="取消">
                            <label className="theme-color">删除</label>
                        </Popconfirm>
                    </span>
                ),
            }
        ]
    }
    onDel = (_text, _record) => {
        console.log(_text, _record)
        // Fetch.businessDel({ businessId: _text.businessId }).then(res => {
        //     if (res.code == 0) {
        //         message.warning('正在更新列表');
        //         this.onTableChange();
        //     }
        // }, err => {
        //     message.error(err);
        // });
    }
    onDetail = (_text, _record) => {
        console.log(_text, _record)
    }
    render() {
        const { savedate, editorState, socialTaskObject, fileList, editorStatetaskProcess, hitList, taskType, disabled, loading } = this.state;
        console.log('list', socialTaskObject)
        const { savedate, editorState, socialTaskObject, fileList, editorStatetaskProcess, hitList, taskType, disabled, loading, modalData, modalshowVisible, list, modaldisabled } = this.state;
        const props = {
            action: domain + 'api/v1/attachment/materials?entityId=' + savedate.id,
            onChange: ({ file, fileList }) => {
@@ -488,17 +591,11 @@
                                        <Option value={4}>心理疏导</Option>
                                    </Select>
                                </Col>
                                <Col span={12} pull={0}></Col>
                            </Row>
                        </div>
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务标题</span></Col>
                                <Col span={6} push={0} ><Input disabled={disabled} placeholder="请输入任务标题" style={{ width: '300px' }} name='taskTitle' onChange={this.saveInputChange} value={savedate.taskTitle || ""} /></Col>
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务地点</span></Col>
                                <Col span={6} push={0} ><Input disabled={disabled} placeholder="请输入任务地点" style={{ width: '300px' }} name='taskAddress' onChange={this.saveInputChange} value={savedate.taskAddress || ""} /></Col>
                            </Row>
                        </div>
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
@@ -514,57 +611,19 @@
                            </Row>
                        </div>
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务要求</span></Col>
                                <Col span={18} push={0} style={{ border: 'solid 1px rgba(0, 0, 0, 0.25)', borderRadius: '5PX' }}>
                                    <BraftEditor
                                        value={editorState}
                                        disabled={disabled}
                                        placeholder='请输入活动进程'
                                        media={{
                                            allowPasteImage: true, // 是否允许直接粘贴剪贴板图片(例如QQ截图等)到编辑器
                                            image: true, // 开启图片插入功能
                                            video: false, // 开启视频插入功能
                                            audio: false, // 开启音频插入功能
                                            uploadFn: this.uploadFn
                                        }}
                                        excludeControls={['emoji']}
                                        onChange={this.handleEditorChange}
                                        onSave={this.submitContent}
                                        onBlur={this.submitContent}
                                    />
                                    {/* <TextArea disabled={disabled} rows={4} placeholder="请输入任务要求" style={{ width: '92%' }} value={savedate.taskRequire || ""} onChange={this.saveInputChange} name='taskRequire' /> */}
                                </Col>
                            </Row>
                        </div>
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务流程</span></Col>
                                <Col span={18} push={0} style={{ border: 'solid 1px rgba(0, 0, 0, 0.25)', borderRadius: '5PX' }}>
                                    <BraftEditor
                                        value={editorStatetaskProcess}
                                        disabled={disabled}
                                        placeholder='请输入活动进程'
                                        media={{
                                            allowPasteImage: true, // 是否允许直接粘贴剪贴板图片(例如QQ截图等)到编辑器
                                            image: true, // 开启图片插入功能
                                            video: false, // 开启视频插入功能
                                            audio: false, // 开启音频插入功能
                                            uploadFn: this.uploadFn
                                        }}
                                        excludeControls={['emoji']}
                                        onChange={this.handleEditorLChange}
                                        onSave={this.submitLContent}
                                        onBlur={this.submitLContent}
                                    />
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>添加子任务</span></Col>
                                <Col span={6} push={0} >
                                    <Button style={{ width: '300px' }} disabled={disabled} onClick={this.modalshow}>请添加</Button>
                                </Col>
                                {/* <Col span={18} push={0} ><TextArea disabled={disabled} rows={4} placeholder="请输入任务流程" style={{ width: '92%' }} value={savedate.taskProcess || ""} onChange={this.saveInputChange} name='taskProcess' /></Col> */}
                                <Col span={12} pull={0}></Col>
                            </Row>
                        </div>
                        <Table dataSource={list} pagination={false} columns={this.renderColumns()} />
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
@@ -640,6 +699,72 @@
                    >
                        <p>确认结束任务吗?</p>
                    </Modal>
                    <Modal
                        width='60%'
                        title="添加"
                        confirmLoading={confirmLoading}
                        visible={modalshowVisible}
                        onOk={this.modalhandleOk}
                        onCancel={this.modalshowCancel}
                    >
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务地点</span></Col>
                                <Col span={6} push={0} ><Input disabled={modaldisabled} placeholder="请输入任务地点" name='taskAddress' onChange={this.saveInputChange} value={modalData.taskAddress || ""} /></Col>
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务标题</span></Col>
                                <Col span={6} push={0} ><Input disabled={modaldisabled} placeholder="请输入任务标题" name='taskTitle' onChange={this.saveInputChange} value={modalData.taskTitle || ""} /></Col>
                            </Row>
                        </div>
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务要求</span></Col>
                                <Col span={18} push={0} style={{ border: 'solid 1px rgba(0, 0, 0, 0.25)', borderRadius: '5PX' }}>
                                    <BraftEditor
                                        value={editorState}
                                        disabled={modaldisabled}
                                        placeholder='请输入活动进程'
                                        media={{
                                            allowPasteImage: true, // 是否允许直接粘贴剪贴板图片(例如QQ截图等)到编辑器
                                            image: true, // 开启图片插入功能
                                            video: false, // 开启视频插入功能
                                            audio: false, // 开启音频插入功能
                                            uploadFn: this.uploadFn
                                        }}
                                        excludeControls={['emoji']}
                                        onChange={this.handleEditorChange}
                                        onSave={this.submitContent}
                                        onBlur={this.submitContent}
                                    />
                                </Col>
                            </Row>
                        </div>
                        <div style={divStyle}>
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务流程</span></Col>
                                <Col span={18} push={0} style={{ border: 'solid 1px rgba(0, 0, 0, 0.25)', borderRadius: '5PX' }}>
                                    <BraftEditor
                                        value={editorStatetaskProcess}
                                        disabled={modaldisabled}
                                        placeholder='请输入活动进程'
                                        media={{
                                            allowPasteImage: true, // 是否允许直接粘贴剪贴板图片(例如QQ截图等)到编辑器
                                            image: true, // 开启图片插入功能
                                            video: false, // 开启视频插入功能
                                            audio: false, // 开启音频插入功能
                                            uploadFn: this.uploadFn
                                        }}
                                        excludeControls={['emoji']}
                                        onChange={this.handleEditorLChange}
                                        onSave={this.submitLContent}
                                        onBlur={this.submitLContent}
                                    />
                                </Col>
                            </Row>
                        </div>
                    </Modal>
                </Spin>
            </div>
        );
SunshineLnsMinApp/lib/jb_background.png
SunshineLnsMinApp/lib/jb_person.png
SunshineLnsMinApp/lib/jb_phone.png
SunshineLnsMinApp/pages/fzxkt/fzxkt.js
@@ -42,7 +42,7 @@
      data: {
        page: 1,
        size: 1000,
        flag:'法治小课堂',
        flag:'法制小课堂',
      },
      success: function (res) {
        wx.hideLoading();
SunshineLnsMinApp/pages/index/index.js
@@ -39,7 +39,7 @@
    }, {
      name: '检务公开'
    }, {
      name: '知识产权'
      name: '智能咨询'
    }],
  },
  //事件处理函数
SunshineLnsMinApp/pages/index/index.wxml
@@ -222,7 +222,7 @@
        <view class="bg-img" style="margin: 6px;height: 78px;flex: 1; line-height: 78px;">
          <view class="bg-img" data-str="fzxkt" bindtap='linkFunction' style="background-image: url('https://ss2.bdstatic.com/70cFvnSh_Q1YnxGkpoWK1HF6hhy/it/u=1291150546,1510144282&fm=26&gp=0.jpg');">
            <view class="bg-shadeTop">
              法治小课堂
              法制小课堂
            </view>
          </view>
        </view>
SunshineLnsMinApp/pages/wjjb/wjjb.js
@@ -1,11 +1,14 @@
// pages/wjjb/wjjb.js
var app = getApp();
Page({
  /**
   * 页面的初始数据
   */
  data: {
    jb_background: './../../lib/jb_background.png',
    jb_person: './../../lib/jb_person.png',
    jb_phone: './../../lib/jb_phone.png',
  },
  /**
SunshineLnsMinApp/pages/wjjb/wjjb.wxml
@@ -1,12 +1,34 @@
<!--pages/wjjb/wjjb.wxml-->
<view class="padding-xl">
  <button class="cu-btn block line-blue lg" data-str="xsjb" bindtap='linkFunction'>
    <!-- <text class="cuIcon-upload"></text> -->
    线上举报
  </button>
<view>
  <image class="index-icon" src="{{jb_background}}"></image>
</view>
<view class="paddingtop-12">
  <view class="wjjb-button" data-str="xsjb" bindtap='linkFunction'>
    <view class="wjjb-button-l">
      <view class="wjjb-button-l-large-size">电话举报</view>
      <view class="wjjb-button-l-s-size">一键拨打检察院官方举报电话</view>
      <view class="wjjb-button-l-button">立即拨打</view>
    </view>
    <view class="wjjb-button-r">
      <image class="wjjb-button-r-img" src="{{jb_phone}}"></image>
    </view>
  </view>
</view>
<view class="paddingtop-12">
  <view class="wjjb-button zise" data-str="xsjb" bindtap='linkFunction'>
    <view class="wjjb-button-l">
      <view class="wjjb-button-l-large-size">电话举报</view>
      <view class="wjjb-button-l-s-size">一键拨打检察院官方举报电话</view>
      <view class="wjjb-button-l-button color_zise">立即拨打</view>
    </view>
    <view class="wjjb-button-r">
      <image class="wjjb-button-r-img" src="{{jb_person}}"></image>
    </view>
  </view>
</view>
  <button class="cu-btn block line-blue lg margin-tb-lg" bindtap='makePhoneCall'>
    <!-- <text class="cuIcon-upload"></text> -->
    电话举报
  </button>
<view class="bottom-center">
  <view class="title-size">举报人隐私保护声明</view>
  <view class="text">检察院官方将严格保障举报人的个人隐私信息及举报人在举报过程中的合法权益,切实保障举报人信息安全,如有疑问,请随时致电。</view>
  <view class="text">官方电话:12309</view>
</view>
SunshineLnsMinApp/pages/wjjb/wjjb.wxss
@@ -1 +1,75 @@
/* pages/wjjb/wjjb.wxss */
/* pages/wjjb/wjjb.wxss */
.index-icon {
  width: 100%;
}
.wjjb-button {
  display: flex;
  background: #fe605f;
  color: #fff;
  border-radius: 6px;
  width: 100%;
  padding: 12px;
  justify-content: space-between;
  align-items: center;
}
.wjjb-button-l-large-size {
  font-size: 18px;
  margin: 12px 0;
}
.wjjb-button-l-s-size {
  font-size: 14px;
  margin: 12px 0;
}
.paddingtop-12 {
  padding: 12px;
}
.wjjb-button-l-button {
  width: 80px;
  background-color: #fff;
  color: #fe605f;
  text-align: center;
  padding: 8px;
  border-radius: 16px;
}
.wjjb-button-r {
  width: 68px;
  height: 68px;
  padding: 8px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.3);
}
.zise {
  background-color: #c650fe;
}
.color_zise {
  color: #c650fe;
}
.wjjb-button-r-img {
  width: 100%;
  height: 100%;
}
.bottom-center {
  background-color: #d8dbfe;
  padding: 24px;
  font-size: 12px;
  /* position: fixed;
  bottom: 0; */
}
.title-size {
  font-size: 14px;
  text-align: center;
  color: #6776e7;
  margin-bottom: 12px;
}
SunshineLnsMinApp/pages/xsuojb/xsuojb.js
@@ -5,18 +5,20 @@
   * 页面的初始数据
   */
  data: {
    jb_background: './../../lib/jb_background.png',
    jb_person: './../../lib/jb_person.png',
    jb_phone: './../../lib/jb_phone.png',
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  onLoad: function(options) {
  },
  // 跳转
  linkFunction: function (event) {
  linkFunction: function(event) {
    var str = event.currentTarget.dataset['str'];
    wx.navigateTo({
      url: `../${str}/${str}`
SunshineLnsMinApp/pages/xsuojb/xsuojb.wxml
@@ -1,12 +1,34 @@
<!--pages/wjjb/wjjb.wxml-->
<view class="padding-xl">
  <button class="cu-btn block line-blue lg" data-str="xsuojbInfo" bindtap='linkFunction'>
    <!-- <text class="cuIcon-upload"></text> -->
    线上举报
  </button>
<view>
  <image class="index-icon" src="{{jb_background}}"></image>
</view>
<view class="paddingtop-12">
  <view class="wjjb-button" data-str="xsjb" bindtap='linkFunction'>
    <view class="wjjb-button-l">
      <view class="wjjb-button-l-large-size">电话举报</view>
      <view class="wjjb-button-l-s-size">一键拨打检察院官方举报电话</view>
      <view class="wjjb-button-l-button">立即拨打</view>
    </view>
    <view class="wjjb-button-r">
      <image class="wjjb-button-r-img" src="{{jb_phone}}"></image>
    </view>
  </view>
</view>
<view class="paddingtop-12">
  <view class="wjjb-button zise" data-str="xsjb" bindtap='linkFunction'>
    <view class="wjjb-button-l">
      <view class="wjjb-button-l-large-size">电话举报</view>
      <view class="wjjb-button-l-s-size">一键拨打检察院官方举报电话</view>
      <view class="wjjb-button-l-button color_zise">立即拨打</view>
    </view>
    <view class="wjjb-button-r">
      <image class="wjjb-button-r-img" src="{{jb_person}}"></image>
    </view>
  </view>
</view>
  <button class="cu-btn block line-blue lg margin-tb-lg" bindtap='makePhoneCall'>
    <!-- <text class="cuIcon-upload"></text> -->
    电话举报
  </button>
<view class="bottom-center">
  <view class="title-size">举报人隐私保护声明</view>
  <view class="text">检察院官方将严格保障举报人的个人隐私信息及举报人在举报过程中的合法权益,切实保障举报人信息安全,如有疑问,请随时致电。</view>
  <view class="text">官方电话:12309</view>
</view>
SunshineLnsMinApp/pages/xsuojb/xsuojb.wxss
@@ -1 +1,75 @@
/* pages/wjjb/wjjb.wxss */
/* pages/wjjb/wjjb.wxss */
.index-icon {
  width: 100%;
}
.wjjb-button {
  display: flex;
  background: #fe605f;
  color: #fff;
  border-radius: 6px;
  width: 100%;
  padding: 12px;
  justify-content: space-between;
  align-items: center;
}
.wjjb-button-l-large-size {
  font-size: 18px;
  margin: 12px 0;
}
.wjjb-button-l-s-size {
  font-size: 14px;
  margin: 12px 0;
}
.paddingtop-12 {
  padding: 12px;
}
.wjjb-button-l-button {
  width: 80px;
  background-color: #fff;
  color: #fe605f;
  text-align: center;
  padding: 8px;
  border-radius: 16px;
}
.wjjb-button-r {
  width: 68px;
  height: 68px;
  padding: 8px;
  border-radius: 50%;
  background: rgba(0, 0, 0, 0.3);
}
.zise {
  background-color: #c650fe;
}
.color_zise {
  color: #c650fe;
}
.wjjb-button-r-img {
  width: 100%;
  height: 100%;
}
.bottom-center {
  background-color: #d8dbfe;
  padding: 24px;
  font-size: 12px;
  /* position: fixed;
  bottom: 0; */
}
.title-size {
  font-size: 14px;
  text-align: center;
  color: #6776e7;
  margin-bottom: 12px;
}