forked from nsjcy/frontEnd/nsjcy

LAPTOP-RI7D261L\Mr Ke
2020-03-09 a2d1b9886b00b5f4d4722c3379d3bd4f2f94b421
Merge branch 'master' of http://120.79.193.119:9090/r/nsjcy/frontEnd/nsjcy
5 files added
41 files modified
1957 ■■■■■ changed files
SunshineIns/src/data/menu.js 6 ●●●● patch | view | raw | blame | history
SunshineIns/src/fetch/questionQuery.js 4 ●●●● patch | view | raw | blame | history
SunshineIns/src/fetch/socialCompany.js 2 ●●● patch | view | raw | blame | history
SunshineIns/src/fetch/socialQuery.js 2 ●●● patch | view | raw | blame | history
SunshineIns/src/index.jsx 2 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/ActiveManage.jsx 14 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/ActiveManageEdit.jsx 282 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/ArticleEidt.jsx 6 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/ArticlePublish.jsx 5 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/CareList.jsx 49 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/Index.jsx 4 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/KnowledgeBase.jsx 6 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/Login.jsx 4 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/PoliceSecurity.jsx 2 ●●● patch | view | raw | blame | history
SunshineIns/src/page/SignIn.jsx 13 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/UnderAgeList.jsx 69 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/.gitignore 14 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/app.js 9 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/app.json 1 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/activityDetail/activityDetail.wxml 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js 6 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml 5 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxkt/fzxkt.js 53 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxkt/fzxkt.wxml 60 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxkt/fzxkt.wxss 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxktDetail/fzxktDetail.js 101 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxktDetail/fzxktDetail.wxml 37 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/fzxktDetail/fzxktDetail.wxss 33 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhdt/zhdt.js 41 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhdt/zhdt.wxml 29 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhdtInfo/zhdtInfo.js 96 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhdtInfo/zhdtInfo.wxml 77 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgh/zhgh.js 63 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgh/zhgh.wxml 177 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgh/zhgh.wxss 8 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.js 167 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.wxml 70 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.wxss 28 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.js 68 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.json 3 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.wxml 17 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.wxss 39 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgk/zhgk.js 71 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgk/zhgk.wxml 25 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhwj/zhwj.js 39 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhwj/zhwj.wxml 146 ●●●●● patch | view | raw | blame | history
SunshineIns/src/data/menu.js
@@ -85,7 +85,7 @@
  path: '/sweeping'
}, {
  id: 'activeManage',
  name: '法制活动',
  name: '法治活动',
  icon: active,
  iconCheck: activeCheck,
  path: '/activeManage'
@@ -113,7 +113,7 @@
},
{
  id: 'questionnaire',
  name: '问卷管理部分',
  name: '调查问卷管理',
  icon: msgManage,
  iconCheck: activeCheck,
  children: [{
@@ -232,7 +232,7 @@
  name: '系统管理',
  icon: sys,
  iconCheck: sysCheck,
  path: 'http://xnwj.gznsjc.gov.cn/nsjc-charge/base/home.html'
  path: 'http://nsjcy.hugeinfo.com.cn/nsjc-charge/base/home.html'
}];
SunshineIns/src/fetch/questionQuery.js
@@ -1,6 +1,6 @@
import fetch from './_fetch';
import { message } from 'antd';
export default ({ page, size }) =>
  fetch(`api/question/query?size=${size}&page=${page}`)
export default ({ page, size, status }) =>
  fetch(`api/question/query?size=${size}&page=${page}&status=${status||''}`)
    .then(json => json)
    .catch(error => message.error('详情加载失败,请联系管理员', 2));
SunshineIns/src/fetch/socialCompany.js
@@ -1,6 +1,6 @@
import fetch from './_fetch';
import { message } from 'antd';
export default ({ companyName, companyLegal,companyTel,companyAccount, createTime }) => fetch(`api/socialCompany/finds?companyName=${companyName || ''}&companyLegal=${companyLegal || ''}&companyTel=${companyTel || ''}&companyAccount=${companyAccount || ''}&createTime=${createTime || ''}`)
export default ({ companyName, companyLegal,companyTel }) => fetch(`api/socialCompany/finds?companyName=${companyName || ''}&companyLegal=${companyLegal || ''}&companyTel=${companyTel || ''}`)
    .then(
        json => json.rows
    )
SunshineIns/src/fetch/socialQuery.js
@@ -1,6 +1,6 @@
import fetch from './_fetch';
import { message } from 'antd';
export default ({page,size, taskType, status, startTime,endTime}) => fetch(`api/social/query?size=${size}&page=${page}&taskType=${taskType}&status=${status}&startTime=${startTime}&endTime=${endTime}`)
export default ({ page, size, taskType, status, startTime, endTime }) => fetch(`api/social/query?size=${size}&page=${page}&taskType=${taskType || ''}&status=${status || ''}&startTime=${startTime || ''}&endTime=${endTime || ''}`)
    .then(
        json => json
    )
SunshineIns/src/index.jsx
@@ -62,6 +62,8 @@
          <Route path="/bus/attachment/:busId/:attachmentId" component={AttTree} />
          <Route path="/bus/attachment/:busId" component={AttTree} />
          {/* <Route path='/questionnaire/newly' component={AttTree} /> */}
           {/* 签到墙 */}
           <Route path='/signIn/:id' component={null} />
          <Route component={Menu} />
        </Switch>
        <Switch>
SunshineIns/src/page/ActiveManage.jsx
@@ -89,7 +89,7 @@
    }
    componentDidMount() {
        document.title = '活动管理';
        document.title = '法治活动';
        this.getData();
    }
@@ -144,7 +144,17 @@
        this.setState({
            formData: data,
        });
        this.getData();
        this.setState({ loading: true })
        Fetch.activeManage({ ...this.state.formData })
            .then(res => {
                for (var i = 0; i < res.length; i++) {
                    res[i]['index'] = i + 1;
                }
                this.setState({
                    data: res,
                    loading: false
                });
            });
    }
    saveInputChange = ({ target: { value, name } }) => {
SunshineIns/src/page/ActiveManageEdit.jsx
@@ -5,8 +5,8 @@
 */
import React from 'react';
import { Row, Col, Input, DatePicker, Button, Modal, Upload, Icon, message, Divider, TimePicker, Badge, Select, Popconfirm, Spin, Breadcrumb } from 'antd';
const { TextArea } = Input;
import { Row, Col, Input, DatePicker, Button, Modal, Upload, Table, Icon, message, Divider, TimePicker, Badge, Select, Popconfirm, Spin, Breadcrumb } from 'antd';
const { TextArea, Search } = Input;
import HeadView from '../view/HeadView';
import BusDetailView from '../view/BusDetailView';
import TableView from '../view/TableView';
@@ -46,6 +46,7 @@
            savedate: {},
            formdata: {},
            fileList: [],
            attList1: [],
            previewVisible: false,
            previewImage: '',
            visible: false,
@@ -56,7 +57,12 @@
            status: '',
            loading: false,
            code: '',
            editorState: BraftEditor.createEditorState(null)
            editorState: BraftEditor.createEditorState(null),
            questionnaireModal: false,
            pageSize: 10,
            page: 1,
            selectedRowKeys: [],
            selectedQuestionnaireData: {}
        };
    }
@@ -77,7 +83,7 @@
                if (endTime == null) {
                    endTime = Date.now();
                }
                console.log
                console.log(res.attachments)
                this.setState({
                    savedate: {
                        ...res.activity,
@@ -93,10 +99,21 @@
                    status: res.activity.activityStatus || '',
                    disabled: res.activity.activityStatus == 0 ? false : true,
                    dateSource: res.personList || [],
                    // fileList: res.attachments.length > 0 ? res.attachments.filter(item=>(item.typeId==1000)) : [],
                    fileList: res.attachments || [],
                    attList1: res.attList1 || [],
                    loading: false,
                    modalLoading: false,
                    selectedQuestionnaireData: res.questionnaire || {}
                });
            })
    }
    onShowSizeChange = (current, pageSize) => {
        this.setState({ pageSize, page: 1 })
        this.loadData(1, pageSize);
    }
    pageChange = (page, pageSize) => {
        this.loadData(page, pageSize);
    }
    saveInputChange = ({ target: { value, name } }) => {
@@ -108,13 +125,74 @@
        }))
    }
    selectonClick = () => {
        this.setState({
            questionnaireModal: true,
            modalLoading: true
        })
        Fetch.questionQuery({
            status: 3,
            page: this.state.page,
            size: this.state.pageSize,
        })
            .then(res => {
                console.log('res', res);
                this.setState({
                    modalLoading: false
                })
                if (res.code == 0) {
                    for (var i = 0; i < res.data.content.length; i++) {
                        res.data.content[i]['index'] = i + 1;
                        res.data.content[i]['key'] = i;
                    }
                    this.setState({
                        tableData: res.data.content,
                        totalElements: res.data.totalElements
                    });
                }
            });
    }
    selectCancelModel = () => {
        this.setState({
            questionnaireModal: false,
            selectedRowKeys: [],
            selectedQuestionnaireData: {},
        })
    }
    questionnaireCancle = () => {
        const {selectedQuestionnaireData}=this.state;
        this.props.history.push(`/questionnaire/detail/${selectedQuestionnaireData.id}`)
    }
    questionnaireDel = () => {
        this.setState({ selectedQuestionnaireData: {} })
    }
    handleOk = (e) => {
        console.log(e)
        this.setState({
            questionnaireModal: false,
            selectedRowKeys: []
        })
    }
    questionnaireSearch = (value) => {
        console.log(value)
    }
    submit = () => {
        const { savedate } = this.state;
        const { savedate, selectedQuestionnaireData, fileList } = this.state;
        savedate.startTime = moment(savedate.startDate + " " + moment(savedate.startHour).format(format), 'YYYY-MM-DD HH:mm')
        savedate.endTime = moment(savedate.endDate + " " + moment(savedate.endHour).format(format), 'YYYY-MM-DD HH:mm')
        // console.log({...savedate,queId:selectedQuestionnaireData[0].id});
        console.log(savedate);
        if (!savedate.activityPersonQuota) {
            message.warning("活动人数不能为空");
        console.log(selectedQuestionnaireData);
        if (!savedate.host) {
            message.warning("主持人不能为空");
            return;
        }
        if (savedate.activityPhone) {
@@ -122,7 +200,37 @@
                return message.warning("联系电话不能为空");
            }
        }
        Fetch.saveActive(savedate)
        if (!savedate.activityTitle) {
            message.warning("活动标题不能为空");
            return;
        }
        if (!savedate.activityAddress) {
            message.warning("活动地址不能为空");
            return;
        }
        if (!savedate.activityPersonQuota) {
            message.warning("活动人数不能为空");
            return;
        }
        if (!savedate.activityDesc) {
            message.warning("活动描述不能为空");
            return;
        }
        if (!savedate.requirement) {
            message.warning("报名要求不能为空");
            return;
        }
        if (fileList.length = 0) {
            message.warning("添加图片不能为空");
            return;
        }
        if (!selectedQuestionnaireData) {
            return message.warning("调查问卷不能为空");
        }
        Fetch.saveActive({ ...savedate, queId: selectedQuestionnaireData.id })
            .then(res => {
                if (res.code === 0) {
                    message.success("提交成功!");
@@ -293,10 +401,22 @@
        }))
    }
    onSelectChange = (selectedRowKeys, selectedRows) => {
        const { tableData } = this.state;
        console.log('selectedRowKeys changed: ', selectedRowKeys);
        console.log('selectedRowKeys changed: ', selectedRows);
        console.log(tableData[selectedRowKeys[0]]);
        console.log(tableData);
        this.setState({
            selectedQuestionnaireData: tableData[selectedRowKeys[0]],
            selectedRowKeys
        })
    };
    handleCancel = () => this.setState({ previewVisible: false })
    render() {
        const { savedate, previewVisible, previewImage,editorState, fileList, dateSource, code, hitList, activityType, disabled, loading } = this.state;
        console.log('disabled', disabled)
        const { savedate, previewVisible, previewImage, editorState, selectedRowKeys, fileList, attList1, dateSource, code, hitList, activityType, disabled, loading, modalLoading } = this.state;
        console.log('disabled', fileList)
        const props = {
            action: domain + 'api/v1/attachment/materials?entityId=' + savedate.id,
            onChange: ({ file, fileList }) => {
@@ -311,6 +431,27 @@
                this.setState(({ fileList }) => {
                    const index = fileList.indexOf(file);
                    const newFileList = fileList.slice();
                    newFileList.splice(index, 1);
                    return {
                        fileList: newFileList,
                    };
                });
            }
        };
        const bottmProps = {
            action: domain + 'api/v1/attachment/materials?entityId=' + savedate.id,
            onChange: ({ file, fileList }) => {
                this.setState({ attList1: fileList });
            },
            fileList: attList1,
            onRemove: (file) => {
                Fetch.deleteAttachment(file.uid)
                    .then(res => {
                        message.success("移除成功!");
                    });
                this.setState(({ attList1 }) => {
                    const index = attList1.indexOf(file);
                    const newFileList = attList1.slice();
                    newFileList.splice(index, 1);
                    return {
                        fileList: newFileList,
@@ -338,6 +479,30 @@
                    )
            )
            )
        }];
        const questionnaireColumns = [{
            title: '主题',
            dataIndex: 'title',
            key: 'title',
            ellipsis: true,
            render: (cur, item) => {
                return cur || '暂无'
            }
        }, {
            title: '描述',
            dataIndex: 'content',
            key: 'content',
            ellipsis: true,
            render: (cur, item) => {
                return cur || '暂无'
            }
        }, {
            title: '发布时间',
            dataIndex: 'publicTime',
            key: 'publicTime',
            render: (cur, item) => {
                return cur ? moment(cur).format("YYYY-MM-DD HH:mm") : '暂无'
            }
        }];
        const act2columns = [{
@@ -382,7 +547,7 @@
                <Spin spinning={loading}>
                    <HeadView history={this.props.history} />
                    <Breadcrumb style={{ padding: '20px' }}>
                        <Breadcrumb.Item><a href="index.html#/activeManage">活动管理</a></Breadcrumb.Item>
                        <Breadcrumb.Item><a href="index.html#/activeManage">法治活动</a></Breadcrumb.Item>
                        <Breadcrumb.Item>活动发布</Breadcrumb.Item>
                    </Breadcrumb>
                    <BusDetailView type='活动发布' >
@@ -498,6 +663,41 @@
                                </Col>
                            </Row>
                        </div>
                        {
                            savedate.activityStatus == null || savedate.activityStatus == 0 ?
                                <div style={divStyle}>
                                    <Row type="flex" align='top' justify="space-around">
                                        <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>调查问卷</span></Col>
                                        <Col span={18} push={0} >
                                            {
                                                this.state.selectedQuestionnaireData.title ?
                                                    <div>
                                                        <span style={{ margin: '0 20px' }}>{this.state.selectedQuestionnaireData.title}</span>
                                                        <Button type="link" onClick={this.questionnaireCancle}>查看</Button>
                                                        <Button type="link" onClick={this.questionnaireDel}>删除</Button>
                                                    </div> :
                                                    <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.selectonClick}>请选择</Button>
                                            }
                                        </Col>
                                    </Row>
                                </div> :
                                <div style={divStyle}>
                                    <Row type="flex" align='top' justify="space-around">
                                        <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>调查问卷</span></Col>
                                        <Col span={18} push={0} >
                                            {
                                                this.state.selectedQuestionnaireData.title ?
                                                    <div>
                                                        <span style={{ margin: '0 20px' }}>{this.state.selectedQuestionnaireData.title}</span>
                                                        <Button type="link" disabled onClick={this.questionnaireCancle}>查看</Button>
                                                        <Button type="link" disabled onClick={this.questionnaireDel}>删除</Button>
                                                    </div> :
                                                    <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.selectonClick}>请选择</Button>
                                            }
                                        </Col>
                                    </Row>
                                </div>
                        }
                        {
                            activityType == 'act_1' ? (dateSource.length > 0 ?
@@ -513,6 +713,26 @@
                                    <TableView columns={act2columns} data={dateSource} pageSize='6' size='small' />
                                </div> : null) : null
                        }
                        {
                            activityType == 'act_2' || activityType == 'act_3' ? (dateSource.length > 0 ?
                                <div style={divStyle}>
                                    <Divider orientation="left" style={{ margin: '20px', width: '97%' }}>培训结果</Divider>
                                    <div style={divStyle}>
                                        <Row type="flex" align='top' justify="space-around">
                                            <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>添加结果图片</span></Col>
                                            <Col span={18} push={0} >
                                                <Upload disabled={disabled} listType="picture-card" onPreview={this.handlePreview} {...bottmProps}>
                                                </Upload>
                                                <Modal visible={previewVisible} footer={null} onCancel={this.handleCancel}>
                                                    <img alt="example" style={{ width: '100%' }} src={previewImage} />
                                                </Modal>
                                            </Col>
                                        </Row>
                                    </div>
                                </div> : null) : null
                        }
                        {
                            activityType == 'act_1' && (
                                savedate.activityStatus == null || savedate.activityStatus == 0 ?
@@ -595,6 +815,46 @@
                        }
                    </Modal>
                    <Modal
                        title="选择调查问卷"
                        visible={this.state.questionnaireModal}
                        onCancel={this.selectCancelModel}
                        onOk={this.handleOk}
                        width='1000px'
                    >
                        <Search
                            placeholder="请输入问卷调查标题"
                            enterButton="查询"
                            size="large"
                            style={{ margin: '12px' }}
                            onSearch={value => this.questionnaireSearch(value)}
                        />
                        <Table
                            size="middle"
                            dataSource={this.state.tableData}
                            rowSelection={{
                                selectedRowKeys,
                                type: 'radio',
                                onChange: this.onSelectChange,
                            }}
                            loading={{ spinning: this.state.modalLoading }}
                            columns={questionnaireColumns}
                            pagination={{
                                pageSize: this.state.pageSize,
                                onChange: this.pageChange,
                                total: this.state.totalElements,
                                showSizeChanger: true,
                                onShowSizeChange: this.onShowSizeChange,
                                showTotal: (total, range) => `共${total}条记录 `,
                                // itemRender: this.itemRender,
                                showQuickJumper: true,
                                defaultCurrent: 1,
                                current: this.state.page
                            }}
                        />
                        {/* <TableView columns={columns} data={this.state.tableData} pageSize='10' size='default' loading={modalLoading} /> */}
                    </Modal>
                </Spin>
            </div>
        );
SunshineIns/src/page/ArticleEidt.jsx
@@ -5,7 +5,7 @@
 */
import React from 'react';
import { Row, Col, Input, Select, DatePicker, Button, Tag, Tooltip, Modal, Upload, Icon, message, TreeSelect } from 'antd';
import { Row, Col, Input, Select, DatePicker, Button, Tag, Tooltip, Modal, Upload, Icon, message, TreeSelect, Breadcrumb } from 'antd';
import HeadView from '../view/HeadView';
import BusDetailView from '../view/BusDetailView';
import AddComView from '../view/AddComView';
@@ -219,6 +219,10 @@
    return (
      <div className="app-page">
        <HeadView history={this.props.history} />
        <Breadcrumb style={{ padding: '20px' }}>
                        <Breadcrumb.Item><a href="index.html#/articlePublish">信息发布</a></Breadcrumb.Item>
                        <Breadcrumb.Item>信息公布详情</Breadcrumb.Item>
                    </Breadcrumb>
        <BusDetailView type='信息添加' >
          <div style={divStyle}>
            <Row type="flex" align='middle' justify="space-around">
SunshineIns/src/page/ArticlePublish.jsx
@@ -137,16 +137,17 @@
      title: '标题',
      dataIndex: 'title',
      key: 'title',
      render: text => <span>{subStr(text, 20)}</span>
      render: text => <span>{text?subStr(text, 20):'暂无'}</span>
    }, {
      title: '信息类型',
      dataIndex: 'channelName',
      key: 'channelName',
      render: text => <span>{text||'暂无'}</span>
    }, {
      title: '信息内容',
      dataIndex: 'content',
      key: 'content',
      render: text => <span>{subStr(text, 40)}</span>
      render: text => <span>{text?subStr(text, 40):'暂无'}</span>
    }, {
      title: '操作人',
      dataIndex: 'author',
SunshineIns/src/page/CareList.jsx
@@ -77,12 +77,23 @@
        this.setState({
            formData: data,
        });
        this.getData();
        this.setState({ loading: true })
        Fetch.socialQuery({ ...data })
            .then(res => {
                console.log(res)
                for (var i = 0; i < res.rows.length; i++) {
                    res.rows[i]['index'] = i + 1;
                }
                this.setState({
                    data: res.rows,
                    loading: false,
                });
            });
    }
    getData = () => {
        const { formData } = this.state;
        this.setState({loading:true})
        this.setState({ loading: true })
        Fetch.socialQuery({ ...formData })
            .then(res => {
                console.log(res)
@@ -91,7 +102,7 @@
                }
                this.setState({
                    data: res.rows,
                    loading:false,
                    loading: false,
                });
            });
    }
@@ -158,7 +169,7 @@
            key: 'status',
            render: text => (
                text == 0 ?
                    <Badge style={{ backgroundColor: '#6C757C' }} count={'已结束'} /> : text == 1 ? <Badge count={'进行中'} style={{ backgroundColor: '#6C757C' }} />: text == 2 ? <Badge count={'进行中'} style={{ backgroundColor: '#6C757C' }} /> : <Badge count={'已结束'} style={{ backgroundColor: '#2ECC71' }} />
                    <Badge style={{ backgroundColor: '#6C757C' }} count={'未开始'} /> : text == 1 ? <Badge count={'进行中'} style={{ backgroundColor: '#6C757C' }} /> : text == 2 ? <Badge count={'已结束'} style={{ backgroundColor: '#6C757C' }} /> : <Badge count={'结束'} style={{ backgroundColor: '#2ECC71' }} />
            )
        }, {
            title: '创建时间',
@@ -175,28 +186,30 @@
            dataIndex: 'endTime',
            key: 'endTime',
            render: text => <span>{moment(text).format("YYYY-MM-DD HH:mm")}</span>
        },{
        }, {
            title: '操作',
            key: 'action',
            render: (text, record) => (
                <span>
                    <a onClick={() => this.showModal(record.id)}>编辑</a>
                    <Divider type="vertical" />
                    <Popconfirm
                        title="确认删除任务吗?"
                        id={record.id}
                        onConfirm={e => this.confirm(record.id)}
                        okText="确定"
                        cancelText="取消"
                    >
                        <a href="#">删除</a>
                    </Popconfirm>
                    {
                        record.status == 1 ?
                            <React.Fragment>
                                <Divider type="vertical" />
                                <a onClick={() => this.showModal(record.id)}>结束任务</a>
                            </React.Fragment> : ''
                            </React.Fragment> :
                            <React.Fragment>
                                <a onClick={() => this.showModal(record.id)}>编辑</a>
                                <Divider type="vertical" />
                                <Popconfirm
                                    title="确认删除任务吗?"
                                    id={record.id}
                                    onConfirm={e => this.confirm(record.id)}
                                    okText="确定"
                                    cancelText="取消"
                                >
                                    <a href="#">删除</a>
                                </Popconfirm>
                            </React.Fragment>
                    }
                </span>
            ),
@@ -240,7 +253,7 @@
                                keylistName: 'rangeTimelist',
                            },
                        ]} />
                    <TableView columns={columns} data={data} pageSize='10' size='default' loading={loading}/>
                    <TableView columns={columns} data={data} pageSize='10' size='default' loading={loading} />
                </div>
            </div>
        );
SunshineIns/src/page/Index.jsx
@@ -55,10 +55,6 @@
        <Badge count={text} />
      )
    }, {
      title: '创建时间',
      dataIndex: 'createTime',
      key: 'createTime',
    }, {
      title: '操作',
      key: 'action',
      render: (text, record) => (
SunshineIns/src/page/KnowledgeBase.jsx
@@ -152,20 +152,22 @@
      title: '问题',
      dataIndex: 'title',
      key: 'title',
      render: text => <span>{subStr(text,20)}</span>
      render: text => <span>{text?subStr(text,20):'暂无'}</span>
    }, {
      title: '分类',
      dataIndex: 'faqType',
      key: 'faqType',
      render: text => <span>{text||'暂无'}</span>
    }, {
      title: '具体内容',
      dataIndex: 'content',
      key: 'content',
      render: text => <span>{subStr(text,50)}</span>
      render: text => <span>{text?subStr(text,50):'暂无'}</span>
    }, {
      title: '操作人',
      dataIndex: 'createrName',
      key: 'createrName',
      render: text => <span>{text||'暂无'}</span>
    }, {
      title: '创建时间',
      dataIndex: 'createTime',
SunshineIns/src/page/Login.jsx
@@ -40,10 +40,10 @@
    Fetch.userLogin({ userName, password }).then(res => {
      console.log(res)
      // debugger;
      location.href ='http://localhost:8080/index.html#/'
      // location.href ='http://localhost:8080/index.html#/'
      if (res.code === 0) {
        // location.href = res.data;
        // location.href ='http://192.168.0.159:8080/index.html#/'
        location.href ='http://nsjcy.hugeinfo.com.cn/nsjc-charge/pc/index.html#/'
      } else {
        message.error(res.msg, 2)
      }
SunshineIns/src/page/PoliceSecurity.jsx
@@ -87,7 +87,7 @@
        }))
    }
    showModal = (id) => {
        this.props.history.push("/entry/ExamineEdit/" + id);
        this.props.history.push("/entry/policeSecurity/" + id);
    }
    Seaech = () => {
SunshineIns/src/page/SignIn.jsx
@@ -56,17 +56,18 @@
        return (
            <div className="app-page">
                <Spin spinning={loading}>
                    <Affix style={{ position: 'absolute', top: 520, right: 20 }}>
                    {/* <Affix style={{ position: 'absolute', top: 520, right: 20 }}>
                        <Card>
                            < img style={{ width: '150px', height: '150px' }} src={`data:image/png;base64,${code}`} alt=""></img>
                        </Card>
                    </Affix>
                    </Affix> */}
                    <Card style={{ margin: "8%" }}>
                        <div>
                            <Row type="flex" justify="center" align="middle" style={{ borderBottom: '1px solid #D8D8D8' }}>
                                <Col style={{ color: '#3D444D', fontSize: 26, fontWeight: 'bold', lineHeight: '75px' }}>
                                    {activityName}
                            <Row type="flex"  align="middle" style={{ borderBottom: '1px solid #D8D8D8' }}>
                                <Col span={20} style={{ color: '#3D444D', fontSize: 26, fontWeight: 'bold', lineHeight: '75px' }}>
                                    活动标题:{activityName}
                                </Col>
                                <Col>< img style={{ width: '150px', height: '150px' }} src={`data:image/png;base64,${code}`} alt=""></img></Col>
                            </Row>
                        </div>
@@ -85,7 +86,7 @@
                                        <div style={{ width: '150px', height: '150px', color:'#000', position: 'absolute', display:'flex',justifyContent:'flex-end' }}><Icon type="check-circle" style={{fontSize:'32px'}} theme="twoTone" twoToneColor="#52c41a" /></div> : ''
                                        }
                                    </div>
                                )) : <span>暂无数据</span>
                                )) : <div style={{height:'150px'}}>暂无人员签到</div>
                            }
                        </div>
                    </Card>
SunshineIns/src/page/UnderAgeList.jsx
@@ -2,6 +2,7 @@
import HeadView from '../view/HeadView';
import TableBtnView from '../view/TableBtnView';
import CommonSearchForm from '../view/CommonSearchForm';
import { Input, Button, DatePicker, Divider, Modal, message } from 'antd'
import moment from 'moment'
import Fetch from '../fetch';
@@ -15,7 +16,12 @@
      loading: false,
      visible: false,
      savedate: {},
      formdata: {},
      formData: {
        __key: Date.now(),
        companyName: '',
        companyLegal: '',
        companyTel: '',
    },
      resetKey: Date.now(),
      closeKey: Date.now()
    };
@@ -25,15 +31,42 @@
    document.title = '涉未成年负责部门组织';
    this.getData();
  }
  getData = () => {
    const { formdata } = this.state;
    Fetch.socialCompany(formdata)
  setFormData = data => {
    console.log('form', data);
    this.setState({
      formData: data,
    });
  }
  searchonClick = data => {
    console.log('form', data);
    this.setState({
      formData: data,
    });
    this.setState({ loading: true })
    Fetch.socialCompany({...data})
      .then(res => {
        for (var i = 0; i < res.length; i++) {
          res[i]['index'] = i + 1;
        }
        this.setState({
          data: res
          data: res,
          loading: false
        });
      });
  }
  getData = () => {
    const { formdata } = this.state;
    this.setState({ loading: true })
    Fetch.socialCompany({formdata})
      .then(res => {
        for (var i = 0; i < res.length; i++) {
          res[i]['index'] = i + 1;
        }
        this.setState({
          data: res,
          loading: false
        });
      });
  }
@@ -186,12 +219,32 @@
        </span>
      ),
    }];
    const { data, resetKey, visible, loading, savedate, closeKey } = this.state;
    const { data, resetKey, visible, loading, savedate, closeKey, formData } = this.state;
    return (
      <div className="app-page">
        <HeadView history={this.props.history} />
        <TableBtnView key={-resetKey} type="infoManage" name='涉未成年负责部门组织' btnName='新建公司' onClick={() => this.showModal('new')}>
        <div style={{ background: '#fff', margin: 20 }}>
          <CommonSearchForm
            {...this.props}
            formData={formData}
            setFormData={this.setFormData}
            searchonClick={this.searchonClick}
            pathName={this.props.location.pathname}
            data={[
              {
                type: 'input', name: '公司名称', label: '公司名称', key: 'companyName'
              },
              {
                type: 'input', name: '法人姓名', label: '法人姓名', key: 'companyLegal'
              },
              {
                type: 'input', name: '联系电话', label: '联系电话', key: 'companyTel'
              },
            ]} />
          <TableView columns={columns} data={data} pageSize='10' size='default' loading={loading} />
        </div>
        {/* <TableBtnView key={-resetKey} type="infoManage" name='涉未成年负责部门组织' btnName='新建公司' onClick={() => this.showModal('new')}>
          <Input placeholder="根据公司名称模糊查询" style={{ width: "200px" }} name='companyName' onChange={this.onInputChange} />
          <Input placeholder="根据法人姓名模糊查询" style={{ width: "200px" }} name='companyLegal' onChange={this.onInputChange} />
          <Input placeholder="根据联系电话模糊查询" style={{ width: "200px" }} name='companyTel' onChange={this.onInputChange} />
@@ -200,7 +253,7 @@
          <Button type="primary" onClick={this.Seaech}>查询</Button>
          <Button onClick={this.Reset}>重置</Button>
        </TableBtnView>
        <TableView columns={columns} data={data} pageSize='10' size='default' />
        <TableView columns={columns} data={data} pageSize='10' size='default' /> */}
        <Modal
          key={closeKey}
          confirmLoading={loading}
SunshineLnsMinApp/.gitignore
New file
@@ -0,0 +1,14 @@
# Windows
[Dd]esktop.ini
Thumbs.db
$RECYCLE.BIN/
# macOS
.DS_Store
.fseventsd
.Spotlight-V100
.TemporaryItems
.Trashes
# Node.js
node_modules/
SunshineLnsMinApp/app.js
@@ -10,7 +10,7 @@
  globalData: {
    userInfo: null,
    pageData: {},
    //url: 'https://hugeinfo.com.cn/nsjc-charge',
    // url: 'https://nsjcy.hugeinfo.com.cn/nsjc-charge',
    //url: 'http://192.168.0.31:8085/nsjc-charge',
    //imgUrl: 'https://hugeinfo.com.cn/nsjc-charge',
    url: 'http://nsjc.vaiwan.com/nsjc-charge',
@@ -92,6 +92,11 @@
  },
  //上传文件
  upload: function(these, path, associateTypeId, way, id) {
    console.log(these)
    console.log(path)
    console.log(associateTypeId)
    console.log(way)
    console.log(id)
    var status = these.data['status'];
    var batch;
    if (status == 4) {
@@ -99,6 +104,7 @@
    } else {
      batch = 0
    }
    console.log(batch)
    wx.showToast({
      icon: "loading",
      title: "正在上传"
@@ -116,6 +122,7 @@
        batch
      },
      success: function(res) {
        console.log(res)
        var evalList = these.data.evalList;
        var evalListType = 'evalList' + associateTypeId;
        var data = JSON.parse(res.data)
SunshineLnsMinApp/app.json
@@ -9,6 +9,7 @@
    "pages/fzxktDetail/fzxktDetail",
    "pages/fzjdvisitList/fzjdvisitList",
    "pages/weiwc/weiwc",
    "pages/zhghLogin/zhghLogin",
    "pages/zhgh/zhgh",
    "pages/zhghInfo/zhghInfo",
    "pages/zhgk/zhgk",
SunshineLnsMinApp/pages/activityDetail/activityDetail.wxml
@@ -8,7 +8,7 @@
<view class="activityDetail-main">
    <view class="headLineTitle">
        {{activity.activityTitle}}
        {{activity.activityTitle||'暂无'}}
    </view>
    <view class="headLineInfo">
        {{activity.startTime}}
SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.js
@@ -53,7 +53,7 @@
            that.setData({
              signStatus: options.signStatus
            })
          } else {
          } else {sign
            if (options.flag == 'true') {
              //可报名
              console.log('可报名')
@@ -138,7 +138,7 @@
          title: '识别中',
        })
        wx.request({
          url: app.globalData.url + '/api/activity/sign?id'+id+'&code='+res.result+'&userId='+userId,
          url: app.globalData.url + '/api/activity/sign?id='+id+'&code='+res.result+'&userId='+userId,
          method: 'GET',
          header: {
            "Content-Type": "application/json"
@@ -153,7 +153,7 @@
              })
            } else {
              wx.showToast({
                title: '报名失败,请稍后重试!',
                title: '签到失败,请稍后重试!',
                icon: 'none'
              })
            }
SunshineLnsMinApp/pages/fzpxInfo/fzpxInfo.wxml
@@ -33,6 +33,11 @@
                <view class="fzpxInfo-main-group-title">报名要求</view>
                <view class="fzpxInfo-main-group-around">{{activity.requirement}}</view>
            </view>
            <view class="fzpxInfo-main-group">
                <view class="fzpxInfo-main-group-title">培训进程</view>
                <view class="fzpxInfo-main-group-around">
                <rich-text nodes="{{activity.course||'暂无'}}"></rich-text></view>
            </view>
            <view class="fzpxInfo-main-group" style="display:block;padding: 10rpx 30rpx;">
                <view class="fzpxInfo-main-group-title">培训内容</view>
                <view>
SunshineLnsMinApp/pages/fzxkt/fzxkt.js
@@ -1,4 +1,5 @@
// pages/fzxkt/fzxkt.js
var app = getApp()
Page({
  /**
@@ -8,15 +9,7 @@
    TabCur: 0,
    scrollLeft: 0,
    tabList: ['未成年人', '公益诉讼', '其他'],
    dataSet: [{
      createTime: '2020/2/3 15:30',
      readCount: 2,
      title: '课堂名称'
    }, {
      createTime: '2020/2/3 15:30',
      readCount: 2,
      title: '课堂名称'
    }],
    dataSet: [],
    isHideLoadMore: true, //loading样式
    isHideMorebtn: true, //更多按钮样式
    isHideEnd: true, //有底线样式  (三者默认隐藏)
@@ -41,35 +34,65 @@
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
  onLoad: function (options) {
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/article/publicMsgQuery',
      data: {
        page: 1,
        size: 1000,
        flag:'法治小课堂',
      },
      success: function (res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
          let content = res.data.data.result.content.map(({
            createTime,
            ...i
          }) => ({
            ...i,
            createTime: app.formatDate(createTime),
          }));
          console.log(content)
          that.setData({
            dataSet: content
          })
        } else {
          wx.showToast({
            title: res.data.msg,
          })
        }
      }
    })
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {
  onShow: function () {
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {
  onHide: function () {
  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
  onReachBottom: function () {
  },
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {
  onShareAppMessage: function () {
  }
})
SunshineLnsMinApp/pages/fzxkt/fzxkt.wxml
@@ -1,47 +1,47 @@
<!--pages/fzxkt/fzxkt.wxml-->
<scroll-view scroll-x class="bg-white nav solid-top">
<!-- <scroll-view scroll-x class="bg-white nav solid-top">
  <view class="flex text-center">
    <view class="cu-item flex-sub {{index==TabCur?'text-blue cur':''}}" wx:for="{{tabList}}" wx:key bindtap="tabSelect" data-id="{{index}}">
      {{item}}
    </view>
  </view>
</scroll-view>
</scroll-view> -->
<view class="lawPublicity-list">
  <!-- <view wx:for="{{dataSet}}" wx:key="{{item.id}}" data-Id="{{item.id}}" bindtap="link"> -->
  <view class="weui-panel weui-panel_access">
    <view class="weui-panel__bd">
      <view class="weui-media-box weui-media-box_text" wx:for="{{ dataSet }}" wx:key="">
        <view class="lawPublicity-item">
          <view class="content-right">
            <image src="{{item.coverUrl}}"></image>
          </view>
          <view class="content-left">
            <view class="headLineTitle">
              {{item.title}}
            </view>
            <text class="cuIcon-favorfill lg text-blue"></text>
            <view class="headLineInfo">
              <view class="info-source">{{item.createTime}}</view>
              <view class="info-viewer">{{item.readCount}}人观看</view>
            </view>
          </view>
        </view>
      </view>
    </view>
  </view>
    <!-- <view wx:for="{{dataSet}}" wx:key="{{item.id}}" data-Id="{{item.id}}" > -->
    <view class="weui-panel weui-panel_access">
        <view class="weui-panel__bd">
            <view class="weui-media-box weui-media-box_text" wx:for="{{ dataSet }}" bindtap="link" data-Id="{{item.id}}" wx:key="">
        <view class=" lawPublicity-item">
                <!-- <view class="content-right">
            <video src="{{item.attList[0].path}}" enable-danmu danmu-btn controls></video>
          </view> -->
                <view class="content-left">
                    <view class="headLineTitle">
                        {{item.title}}
                    </view>
                    <!-- <text class="cuIcon-favorfill lg text-blue"></text> -->
                    <view class="headLineInfo">
                        <view class="info-source">{{item.createTime}}</view>
                        <view class="info-viewer">{{item.readCount}}人观看</view>
                    </view>
                </view>
            </view>
        </view>
    </view>
</view>
  <!-- <view class="border">
<!-- <view class="border">
    </view> -->
  <!-- </view> -->
<!-- </view> -->
</view>
<view class="weui-loadmore" hidden="{{isHideMorebtn}}">
  <view class="weui-loadmore__tips" bindtap='getMore'>点击加载更多</view>
    <view class="weui-loadmore__tips" bindtap='getMore'>点击加载更多</view>
</view>
<view class="weui-loadmore" hidden="{{isHideLoadMore}}">
  <view class="weui-loading"></view>
  <view class="weui-loadmore__tips">正在加载</view>
    <view class="weui-loading"></view>
    <view class="weui-loadmore__tips">正在加载</view>
</view>
<view class="weui-loadmore" hidden="{{isHideEnd}}">
  <view class="weui-loadmore__tips">------------我是有底线的------------</view>
    <view class="weui-loadmore__tips">------------我是有底线的------------</view>
</view>
SunshineLnsMinApp/pages/fzxkt/fzxkt.wxss
@@ -13,7 +13,7 @@
}
.lawPublicity-item {
  height: 148rpx;
  height: 122rpx;
  display: flex;
  flex-direction: row;
  color: rgba(51, 51, 51, 1);
SunshineLnsMinApp/pages/fzxktDetail/fzxktDetail.js
@@ -8,83 +8,48 @@
   */
  data: {
    content: '',
    attList: {},
    excelSrc: app.globalData.imgUrl +'/image/fileIcon/excel.svg',
    fileSrc: app.globalData.imgUrl +'/image/fileIcon/file.svg',
    mp3Src: app.globalData.imgUrl +'/image/fileIcon/mp3.svg',
    mp4Src: app.globalData.imgUrl +'/image/fileIcon/mp4.svg',
    pdfSrc: app.globalData.imgUrl +'/image/fileIcon/pdf.svg',
    pictureSrc: app.globalData.imgUrl +'/image/fileIcon/picture.svg',
    pptSrc: app.globalData.imgUrl +'/image/fileIcon/ppt.svg',
    wordSrc: app.globalData.imgUrl +'/image/fileIcon/word.svg',
    zipSrc: app.globalData.imgUrl +'/image/fileIcon/zip.svg',
    data: {},
    excelSrc: app.globalData.imgUrl + '/image/fileIcon/excel.svg',
    fileSrc: app.globalData.imgUrl + '/image/fileIcon/file.svg',
    mp3Src: app.globalData.imgUrl + '/image/fileIcon/mp3.svg',
    mp4Src: app.globalData.imgUrl + '/image/fileIcon/mp4.svg',
    pdfSrc: app.globalData.imgUrl + '/image/fileIcon/pdf.svg',
    pictureSrc: app.globalData.imgUrl + '/image/fileIcon/picture.svg',
    pptSrc: app.globalData.imgUrl + '/image/fileIcon/ppt.svg',
    wordSrc: app.globalData.imgUrl + '/image/fileIcon/word.svg',
    zipSrc: app.globalData.imgUrl + '/image/fileIcon/zip.svg',
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    console.log(options.id)
    var that = this;
    // wx.request({
    //   url: app.globalData.url + '/api/article/legalServiceInfo?articleId=' + options.id,
    //   success: function(res) {
    //     if (res.data.code == 0){
    //       var article = res.data.data.content;
    //       WxParse.wxParse('article', 'html', article, that, 5);
    //       var attList = res.data.data.attList;
    //       var attList21 = app.where(attList, { type: 21 }) || [];
    //       attList21.forEach(e => {
    //         e.iconSrc = that.data.mp4Src
    //       })
    //       var attList22 = app.where(attList, { type: 22 }) || [];
    //       attList22.forEach(e => {
    //         e.iconSrc = that.data.pictureSrc
    //       })
    //       var attList23 = app.where(attList, { type: 23 }) || [];
    //       attList23.forEach(e => {
    //         e.iconSrc = that.data.wordSrc
    //       })
    //       var attList24 = app.where(attList, { type: 24 }) || [];
    //       attList24.forEach(e => {
    //         e.iconSrc = that.data.excelSrc
    //       })
    //       var attList25 = app.where(attList, { type: 25 }) || [];
    //       attList25.forEach(e => {
    //         e.iconSrc = that.data.pptSrc
    //       })
    //       var attList26 = app.where(attList, { type: 26 }) || [];
    //       attList26.forEach(e => {
    //         e.iconSrc = that.data.pdfSrc
    //       })
    //       var attList27 = app.where(attList, { type: 27 }) || [];
    //       attList27.forEach(e => {
    //         e.iconSrc = that.data.zipSrc
    //       })
    //       var attList28 = app.where(attList, { type: 28 }) || [];
    //       attList28.forEach(e => {
    //         e.iconSrc = that.data.fileSrc
    //       })
    //       var attList99 = app.where(attList, { type: 99 }) || [];
    //       attList99.forEach(e => {
    //         e.iconSrc = that.data.fileSrc
    //       })
    //       var attList = { attList21, attList22, attList23, attList24, attList25, attList26, attList27, attList28, attList99 };
    //       console.log(attList)
    //       that.setData({
    //         attList
    //       })
    //     } else{
    //       wx.showModal({
    //         title: '提示',
    //         content: "请求失败!"
    //       })
    //     }
    //   }
    // })
    wx.request({
      url: app.globalData.url + '/api/article/publicMsgDetails?msgId=' + options.id,
      success: function (res) {
        wx.hideLoading();
        console.log(res)
        if (res.data.code == 0) {
          that.setData({
            data: {
              ...res.data.data,
              createTime: app.formatDate(res.data.data.createTime),
            }
          })
        } else {
          wx.showModal({
            title: '提示',
            content: "请求失败!"
          })
        }
      }
    })
  },
  // 预览附件
  open:function(e) {
  open: function (e) {
    var path = e.currentTarget.dataset.path;
    console.log(path)
    wx.downloadFile({
@@ -99,7 +64,7 @@
        })
      }
    })
  }
})
SunshineLnsMinApp/pages/fzxktDetail/fzxktDetail.wxml
@@ -1,25 +1,22 @@
<!--lawPublicityDetail.wxml-->
<import src="../wxParse/wxParse.wxml" />
<view class="detail">
  <!-- <template is="wxParse" data="{{wxParseData:article.nodes}}" /> -->
  <!-- <view wx:for="{{attList.attList21}}" wx:key="{{key}}"> -->
  <!-- <video id="myVideo" src="{{item.path}}"
    <!-- <template is="wxParse" data="{{wxParseData:article.nodes}}" /> -->
    <!-- <view wx:for="{{attList.attList21}}" wx:key="{{key}}"> -->
    <!-- <video id="myVideo" src="{{item.path}}"
    danmu-list="{{danmuList}}" enable-danmu danmu-btn controls></video> -->
  <view class="video-area">
    <video id="myVideo" src="http://wxsnsdy.tc.qq.com/105/20210/snsdyvideodownload?filekey=30280201010421301f0201690402534804102ca905ce620b1241b726bc41dcff44e00204012882540400&bizid=1023&hy=SH&fileparam=302c020101042530230204136ffd93020457e3c4ff02024ef202031e8d7f02030f42400204045a320a0201000400"
      danmu-list="{{danmuList}}" enable-danmu danmu-btn controls></video>
  </view>
  <!-- </view> -->
</view>
    <view class="video-area">
        <video id="myVideo" src="{{data.attList[0].path}}" danmu-list="{{danmuList}}" enable-danmu danmu-btn controls></video>
    </view>
<div class="index-gray"></div>
<div class="detail-main">
  <div class="detail-message">
    <span></span>
    <span>相关视频</span>
  </div>
</div>
    <view class="content-left">
        <view class="headLineTitle">
            {{data.title}}
        </view>
        <!-- <text class="cuIcon-favorfill lg text-blue"></text> -->
        <view class="headLineInfo">
            <view class="info-source">{{data.createTime}}</view>
            <view class="info-viewer">{{data.readCount}}人观看</view>
        </view>
    </view>
</view>
SunshineLnsMinApp/pages/fzxktDetail/fzxktDetail.wxss
@@ -21,6 +21,31 @@
  margin:20rpx 0 0 20rpx;
}
.content-right {
  flex: 1;
  margin-right: 50rpx;
  background: #ccc;
  width: 100%;
  height: 100%;
}
.headLineTitle {
  /* height: 88rpx; */
  font-size: 16px;
  line-break: 44rpx;
  color: rgba(51, 51, 51, 1);
  /* margin-bottom: 26rpx; */
}
.headLineInfo {
  display: flex;
  font-size: 12px;
  color: rgba(153, 153, 153, 1);
}
.info-source {
  margin-right: 20rpx;
}
#myVideo{
  display: block;
  width: 100%;
@@ -45,6 +70,14 @@
  height: 48px;
}
.content-left {
  width: 416rpx;
  display: flex;
  flex-direction: column;
  justify-content: space-between;
  margin:14px 0;
}
.detail-img-bottom {
  font-size: 12px;
  color: #333;
SunshineLnsMinApp/pages/zhdt/zhdt.js
@@ -11,13 +11,44 @@
    dongtai3_1: app.globalData.imgUrl + '/image/dongtai3-1.jpg',
    inputShowed: false,
    inputVal: "",
    dataSet:[]
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
  onLoad: function (options) {
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/article/publicMsgQuery',
      data: {
        page: 1,
        size: 1000,
        flag: '未检动态',
      },
      success: function (res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
          let content = res.data.data.result.content.map(({
            createTime,
            ...i
          }) => ({
            ...i,
            createTime: app.formatDate(createTime),
          }));
          console.log(content)
          that.setData({
            dataSet: content
          })
        } else {
          wx.showToast({
            title: res.data.msg,
          })
        }
      }
    })
  },
  linkFunction: function (event) {
@@ -28,19 +59,19 @@
    })
  },
  showInput: function() {
  showInput: function () {
    this.setData({
      inputShowed: true
    });
  },
  hideInput: function() {
  hideInput: function () {
    this.setData({
      inputVal: "",
      inputShowed: false
    });
  },
  clearInput: function() {
  clearInput: function () {
    this.setData({
      inputVal: ""
    }, () => {});
SunshineLnsMinApp/pages/zhdt/zhdt.wxml
@@ -24,34 +24,13 @@
  </view>
<!-- <view class="index-gray "></view> -->
<view class="zhwj-b">
  <view class="zhwj-b-main" data-str="zhdtInfo" data-id="1" bindtap='linkFunction'>
  <view class="zhwj-b-main" wx:for="{{ dataSet }}" data-str="zhdtInfo" data-Id="{{item.id}}" bindtap='linkFunction'>
    <view class="zhwj-b-head-l">
      <view class="zhwj-b-head-l-title text-black">南沙区院召开2019“沙鸥”法治宣讲团年度总结暨课件评选会</view>
      <view class="text-grey">检察宣传部 60阅读</view>
      <view class="zhwj-b-head-l-title text-black">{{item.title}}</view>
      <view class="text-grey">{{item.createTime}}<text decode="{{true}}" space="{{true}}">&nbsp;&nbsp;&nbsp;&nbsp;</text>{{item.readCount}}阅读</view>
    </view>
    <view class="zhwj-b-head-r">
      <image mode='widthFix' src="{{dongtai1_1}}"></image>
      <image mode='widthFix' src="{{item.attList[0].path}}"></image>
    </view>
  </view>
  <view class="zhwj-b-main" data-str="zhdtInfo" data-id="2" bindtap='linkFunction'>
    <view class="zhwj-b-head-l">
      <view class="zhwj-b-head-l-title text-black">“沙鸥”法治宣讲团进校园开展假前安全教育</view>
      <view class="text-grey">检察宣传部 225阅读</view>
    </view>
    <view class="zhwj-b-head-r">
      <image mode='widthFix' src="{{dongtai2_1}}"></image>
    </view>
  </view>
  <view class="zhwj-b-main" data-str="zhdtInfo" data-id="3" bindtap='linkFunction'>
    <view class="zhwj-b-head-l">
      <view class="zhwj-b-head-l-title text-black">我院与华尔心理咨询中心开展反家暴普法宣传</view>
      <view class="text-grey">检察宣传部 361阅读</view>
    </view>
    <view class="zhwj-b-head-r">
      <image mode='widthFix' src="{{dongtai3_1}}"></image>
    </view>
  </view>
</view>
SunshineLnsMinApp/pages/zhdtInfo/zhdtInfo.js
@@ -8,121 +8,83 @@
  data: {
    id: '',
    swiperList: [],
    data:{},
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
  onLoad: function (options) {
    console.log(options.id)
    this.setData({
      id: options.id,
    var that = this;
    wx.request({
      url: app.globalData.url + '/api/article/publicMsgDetails?msgId=' + options.id,
      success: function (res) {
        wx.hideLoading();
        console.log(res)
        if (res.data.code == 0) {
          that.setData({
            data: {
              ...res.data.data,
              createTime: app.formatDate(res.data.data.createTime),
            }
          })
        } else {
          wx.showModal({
            title: '提示',
            content: "请求失败!"
          })
        }
      }
    })
    if (options.id == '1') {
      this.setData({
        swiperList: [{
          id: 0,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai1-1.jpg',
        }, {
          id: 1,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai1-2.jpg',
        }, {
          id: 2,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai1-3.jpg',
        }],
      })
    } else if (options.id == '2') {
      this.setData({
        swiperList: [{
          id: 0,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai2-1.jpg',
        }, {
          id: 1,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai2-2.jpg',
        }, {
          id: 4,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai2-5.jpg',
        }, {
          id: 5,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai2-6.jpg',
        }, {
          id: 6,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai2-7.jpg',
        }],
      })
    }else{
      this.setData({
        swiperList: [{
          id: 0,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai3-1.jpg',
        }, {
          id: 1,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai3-2.jpg',
        }, {
          id: 2,
          type: 'image',
          url: app.globalData.imgUrl + '/image/dongtai3-3.jpg',
        }],
      })
    }
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function() {
  onReady: function () {
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function() {
  onShow: function () {
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function() {
  onHide: function () {
  },
  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function() {
  onUnload: function () {
  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function() {
  onPullDownRefresh: function () {
  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function() {
  onReachBottom: function () {
  },
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function() {
  onShareAppMessage: function () {
  }
})
SunshineLnsMinApp/pages/zhdtInfo/zhdtInfo.wxml
@@ -1,49 +1,46 @@
<!--pages/zhdtInfo/zhdtInfo.wxml-->
<swiper class="screen-swiper square-dot" indicator-dots="true" circular="true" autoplay="true" interval="5000" duration="500">
  <swiper-item wx:for="{{swiperList}}" wx:key>
    <image src="{{item.url}}" mode="aspectFill"></image>
    <!-- <video src="{{item.url}}" autoplay loop muted show-play-btn="{{false}}" controls="{{false}}" objectFit="cover" wx:if="{{item.type=='video'}}"></video> -->
  </swiper-item>
    <swiper-item wx:for="{{data.attList}}" wx:key>
        <image src="{{item.url}}" mode="aspectFill"></image>
        <!-- <video src="{{item.url}}" autoplay loop muted show-play-btn="{{false}}" controls="{{false}}" objectFit="cover" wx:if="{{item.type=='video'}}"></video> -->
    </swiper-item>
</swiper>
<view class="zhgk-Info-main">
  <view class=" text-lg" style="padding:30rpx 30rpx 0;">
    <text class="zhgk-Info-main-title text-black">总体介绍</text>
  </view>
  <view class=' text-df padding' wx:if="{{id=='1'}}"> 2020年1月14日,我院召开2019“沙鸥”法治宣讲团年度总结暨课件评选会。广东省人民检察院第九检察部主任王霞、广州市人民检察院第七检察部主任王银梅、团市委权益与社会工作部副科长陈鹏君、团区委副书记徐千秋、区法宣办、区教育局等部门负责人应邀出席会议并对9个普法课件进行评选。会上,我院以视频花絮与大家回顾了“沙鸥”宣讲团2019年的工作点滴。9名宣讲员以饱满的热情、清晰的脉络分别介绍了自己的课件特色。省检第九检察部主任王霞、市检第七检察部主任王银梅分别对9个课件进行精彩点评。最后,我院党组成员、副检察长李东蓊从“全、新、精”三个方面总结2019年“沙鸥”宣讲团工作,并提出2020年的工作展望。经过评选,吴美玉、吴堃、姜玥、颜淑娜等四名干警荣获年度普法课件优胜奖。
  </view>
  <view class=' text-df padding' wx:if="{{id=='2'}}"> 2020年1月15日至17日,我院“沙鸥”法治宣讲团先后来到华南师范大学附属南沙中学、广州外国语学校附属学校、黄阁小学、麒麟中学开展假前安全教育,受众师生3000余人。宣讲员围绕交通安全、防性侵、网络安全等主题,通过生动活泼、喜闻乐见的方式开展精准化法治教育。
  </view>
  <view class=' text-df padding' wx:if="{{id=='3'}}"> 家庭暴力无小事。近日,我院应南沙区妇联、广州市华尔心理健康咨询中心的邀请,到广东岭东技工职业学校开展以“一起向家庭暴力说不”为主题的反家暴法律知识讲座。检察官结合新闻热点、司法判例,解读《中华人民共和国反家暴法》,重点讲解《反家暴法》中的强制报告制度、公安告诫书、人身安全保护令等,讲授如何应对家暴保护自己和家人的合法权益。
  </view>
    <view class=" text-lg" style="padding:30rpx 30rpx 0;">
        <text class="zhgk-Info-main-title text-black">{{data.title}}</text>
    </view>
    <view class=' text-df padding'>
        <rich-text nodes="{{data.content}}"></rich-text>
    </view>
</view>
<!-- <view class="zhgk-Info-main">
    <view class=" text-lg" style="padding:30rpx 30rpx 0;">
        <text class="zhgk-Info-main-title text-black">指导文件</text>
    </view>
    <view class="padding">
        <view class=' text-df'>最高人民检察院《中华人民共和国最高人民检察院检察建议书》</view>
        <view class=' text-df'>最高人民检察院《2018-2022年检察改革工作规划》</view>
        <view class=' text-df'>最高人民检察院《最高人民检察院关于全面加强未成年人国家司法救助工作的意见》</view>
    </view>
</view>
<view class="zhgk-Info-main">
  <view class=" text-lg" style="padding:30rpx 30rpx 0;">
    <text class="zhgk-Info-main-title text-black">指导文件</text>
  </view>
  <view class="padding">
    <view class=' text-df'>最高人民检察院《中华人民共和国最高人民检察院检察建议书》</view>
    <view class=' text-df'>最高人民检察院《2018-2022年检察改革工作规划》</view>
    <view class=' text-df'>最高人民检察院《最高人民检察院关于全面加强未成年人国家司法救助工作的意见》</view>
  </view>
</view>
<view class="zhgk-Info-main">
  <view class=" text-lg" style="padding:30rpx 30rpx 0;">
    <text class="zhgk-Info-main-title text-black">未检职能</text>
  </view>
  <view class="padding">
    <view class=' text-df'> 广州市南沙区人民检察院是国家法律监督机关,负责辖区各项检察工作,接受广州市人民检察院的领导,对区人民代表大会及其常委会负责并报告工作,接受其监督,执行其决议。主要职责是:</view>
    <view class=' text-df'>1.制定辖区检察工作计划,落实检察工作任务。</view>
    <view class=' text-df'>2.依法对公安机关和检察机关直接受理的犯罪案件进行审查批准逮捕、决定逮捕、提起公诉、出庭支持公诉。</view>
    <view class=' text-df'>4.依法对执行机关执行刑罚的活动以及监狱、看守所的活动是否合法实行监督。</view>
    <view class=' text-df'>5.对同级人民法院已经发生法律效力,确有错误的判决和裁定,依法提请上一级人民检察院向同级人民法院提出抗诉。</view>
    <view class=' text-df'> 6.受理单位和个人的报案、控告、申诉、举报以及犯罪嫌疑人的自首。</view>
    <view class=' text-df'>7.开展检察环节的综合治理工作。</view>
    <view class=' text-df'> 8.负责本院队伍建设和思想政治工作,协助上级检察机关和区有关主管部门管理本院的机构编制,实施相关人员的管理办法;协助区委有关部门对本院的领导班子成员的管理和考核;提请区人大常委会对本院检察员、检察委员会委员、副检察长的任免;负责管理本院直属机构;管理本院的教育培训工作。</view>
    <view class=' text-df'> 9.组织领导本院的纪检监察和宣传工作。</view>
    <view class=' text-df'>10.承办其他应由本院负责的事项。</view>
  </view>
</view>
    <view class=" text-lg" style="padding:30rpx 30rpx 0;">
        <text class="zhgk-Info-main-title text-black">未检职能</text>
    </view>
    <view class="padding">
        <view class=' text-df'> 广州市南沙区人民检察院是国家法律监督机关,负责辖区各项检察工作,接受广州市人民检察院的领导,对区人民代表大会及其常委会负责并报告工作,接受其监督,执行其决议。主要职责是:</view>
        <view class=' text-df'>1.制定辖区检察工作计划,落实检察工作任务。</view>
        <view class=' text-df'>2.依法对公安机关和检察机关直接受理的犯罪案件进行审查批准逮捕、决定逮捕、提起公诉、出庭支持公诉。</view>
        <view class=' text-df'>4.依法对执行机关执行刑罚的活动以及监狱、看守所的活动是否合法实行监督。</view>
        <view class=' text-df'>5.对同级人民法院已经发生法律效力,确有错误的判决和裁定,依法提请上一级人民检察院向同级人民法院提出抗诉。</view>
        <view class=' text-df'> 6.受理单位和个人的报案、控告、申诉、举报以及犯罪嫌疑人的自首。</view>
        <view class=' text-df'>7.开展检察环节的综合治理工作。</view>
        <view class=' text-df'> 8.负责本院队伍建设和思想政治工作,协助上级检察机关和区有关主管部门管理本院的机构编制,实施相关人员的管理办法;协助区委有关部门对本院的领导班子成员的管理和考核;提请区人大常委会对本院检察员、检察委员会委员、副检察长的任免;负责管理本院直属机构;管理本院的教育培训工作。</view>
        <view class=' text-df'> 9.组织领导本院的纪检监察和宣传工作。</view>
        <view class=' text-df'>10.承办其他应由本院负责的事项。</view>
    </view>
</view> -->
SunshineLnsMinApp/pages/zhgh/zhgh.js
@@ -1,4 +1,5 @@
// pages/zhgh/zhgh.js
var app = getApp();
Page({
  /**
@@ -6,27 +7,53 @@
   */
  data: {
    TabCur: 0,
    list: ['合适成年人', '跟踪帮教', '社会调查', '疏导干预'],
    infoList: [{
      img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576749884261&di=4aea8bc541cc566e82c98bbab89c3a50&imgtype=0&src=http%3A%2F%2F5b0988e595225.cdn.sohucs.com%2Fimages%2F20180329%2Fd244aac01ed543d5a9ddbfdde6796e67.jpeg',
      name: '农村老人关护',
      status: '待完成'
    }, {
        img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576749926263&di=25f2103c52b624a5333b195cafa1feb4&imgtype=0&src=http%3A%2F%2Fphotocdn.sohu.com%2F20131023%2FImg388741073.jpg',
      name: '老人院陪护聊天',
      status: '已完成'
    }, {
        img: 'https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576749996179&di=3285ac9bfc16e70040ab17572ddc9adb&imgtype=0&src=http%3A%2F%2Finews.gtimg.com%2Fnewsapp_match%2F0%2F10906442862%2F0.jpg',
      name: '广场卫生执勤辅助',
      status: '已完成'
    }, ]
    list: ['全部', '跟踪帮教', '合适成年人', '社会调查', '心理疏导'],
    infoList: [],
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
  onLoad: function (options) {
    this.daTatoGet('')
  },
  daTatoGet: function (type) {
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/social/myTask',
      data: {
        page: 1,
        size: 1000,
        userId: wx.getStorageSync('id'),
        taskType: type,
      },
      success: function (res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
          let content = res.data.data.content.map(({
            startTime,
            endTime,
            status,
            ...i
          }) => ({
            ...i,
            startTime: app.formatDate(startTime),
            endTime: app.formatDate(endTime),
            status:status==0?'未开始':status==1?'进行中':status==2?'已结束':status==3?'结束':status==99?'':'(未知)'
          }));
          that.setData({
            infoList: content
          })
        } else {
          wx.showToast({
            title: res.data.msg,
          })
        }
      }
    })
  },
@@ -35,13 +62,15 @@
      TabCur: e.currentTarget.dataset.id,
      scrollLeft: (e.currentTarget.dataset.id - 1) * 60
    })
    this.daTatoGet(e.currentTarget.dataset.id)
  },
  // 跳转
  linkFunction: function(event) {
  linkFunction: function (event) {
    var str = event.currentTarget.dataset['str'];
    var id = event.currentTarget.dataset['id'];
    wx.navigateTo({
      url: '../' + str + '/' + str
      url: '../' + str + '/' + str + '?id=' + id
    })
  }
})
SunshineLnsMinApp/pages/zhgh/zhgh.wxml
@@ -1,107 +1,86 @@
<!--pages/zhgh/zhgh.wxml-->
<view class='zhgh-bg'>
  <scroll-view scroll-x class="bg-white nav">
    <view class="flex text-center">
      <view class="cu-item flex-sub {{index==TabCur?'text-blue cur':''}}" wx:for="{{4}}" wx:key bindtap="tabSelect" data-id="{{index}}">
        {{list[index]}}
      </view>
    </view>
  </scroll-view>
    <scroll-view scroll-x class="bg-white nav">
        <view class="flex text-center">
            <view class="cu-item flex-sub {{index==TabCur?'text-blue cur':''}}" wx:for="{{5}}" wx:key bindtap="tabSelect" data-id="{{index}}">
                {{list[index]}}
            </view>
        </view>
    </scroll-view>
  <view class="zhgh-list" wx:if='{{TabCur==0}}' wx:for="{{infoList}}" wx:key>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="{{item.img}}"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">{{item.name}}</view>
          <view class="zhgh-list-b-left-div">2019.12.12 20:00</view>
        </view>
        <view class="zhgh-list-b-right">{{item.status}}</view>
      </view>
    </view>
  </view>
    <view class="zhgh-list" wx:if='{{TabCur==0}}' wx:for="{{infoList}}" wx:key>
        <view class="zhgh-list1" data-str="zhghInfo" data-id="{{item.id}}" bindtap='linkFunction'>
            <view class="zhgh-list-b">
                <view class="zhgh-list-b-left">
                    <view class="zhgh-list-b-left-div font-lg">{{item.taskTitle}}</view>
                    <view class="zhgh-list-b-left-div">{{item.taskRequire}}</view>
                    <view class="text-grey">{{item.startTime}}~{{item.endTime}}</view>
                </view>
                <view class="zhgh-list-b-right">
                    <view class="round cu-tag margin-tb-sm lg {{item.status=='未开始'?bg-grey:item.status=='进行中'?bg-red:bg-blue}}">{{item.status}}</view>
                </view>
            </view>
        </view>
    </view>
  <view wx:if='{{TabCur==1}}'>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1577344816&di=7e4576e47e6cbbce2e4e4c80ce501c85&imgtype=jpg&er=1&src=http%3A%2F%2Fhz.wenming.cn%2Fwm_jy%2Ffocus%2F201809%2FW020180917332975135768.jpg"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">帮教未成年人</view>
          <view class="zhgh-list-b-left-div">2019.11.23 12:00</view>
        </view>
        <view class="zhgh-list-b-right">待完成</view>
      </view>
    </view>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="https://ss0.bdstatic.com/70cFuHSh_Q1YnxGkpoWK1HF6hhy/it/u=3881324343,2281839731&fm=15&gp=0.jpg"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">学习辅导</view>
          <view class="zhgh-list-b-left-div">2019.12.12 20:00</view>
        </view>
        <view class="zhgh-list-b-right">待完成</view>
      </view>
    </view>
  </view>
    <view class="zhgh-list" wx:if='{{TabCur==1}}' wx:for="{{infoList}}" wx:key>
        <view class="zhgh-list1" data-str="zhghInfo" data-id="{{item.id}}" bindtap='linkFunction'>
            <view class="zhgh-list-b">
                <view class="zhgh-list-b-left">
                    <view class="zhgh-list-b-left-div font-lg">{{item.taskTitle}}</view>
                    <view class="zhgh-list-b-left-div">{{item.taskRequire}}</view>
                    <view class="text-grey">{{item.startTime}}~{{item.endTime}}</view>
                </view>
                <view class="zhgh-list-b-right">
                    <view class="round cu-tag margin-tb-sm lg {{item.status=='未开始'?bg-grey:item.status=='进行中'?bg-red:bg-blue}}">{{item.status}}</view>
                </view>
            </view>
        </view>
    </view>
    <view class="zhgh-list" wx:if='{{TabCur==2}}' wx:for="{{infoList}}" wx:key>
        <view class="zhgh-list1" data-str="zhghInfo" data-id="{{item.id}}" bindtap='linkFunction'>
            <view class="zhgh-list-b">
                <view class="zhgh-list-b-left">
                    <view class="zhgh-list-b-left-div font-lg">{{item.taskTitle}}</view>
                    <view class="zhgh-list-b-left-div">{{item.taskRequire}}</view>
                    <view class="text-grey">{{item.startTime}}~{{item.endTime}}</view>
                </view>
                <view class="zhgh-list-b-right">
                    <view class="round cu-tag margin-tb-sm lg {{item.status=='未开始'?bg-grey:item.status=='进行中'?bg-red:bg-blue}}">{{item.status}}</view>
                </view>
            </view>
        </view>
    </view>
  <view wx:if='{{TabCur==2}}'>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576750458167&di=f36e82a737b6ffe14a638c3e9a1afd6c&imgtype=0&src=http%3A%2F%2Fimg.cjyun.org%2Fa%2F10064%2F201701%2Fd5fd012d0f7be1c0ee68738178595a4c.jpeg"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">社会环境调查</view>
          <view class="zhgh-list-b-left-div">2019.12.12 20:00</view>
        </view>
        <view class="zhgh-list-b-right">待完成</view>
      </view>
    </view>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576750537170&di=d7533f2546f856da44eb44d5acb33f90&imgtype=0&src=http%3A%2F%2Fimage.codes51.com%2FArticle%2Fimage%2F20160530%2F20160530024642_5901.jpg"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">环境数据调查</view>
          <view class="zhgh-list-b-left-div">2019.12.12 20:00</view>
        </view>
        <view class="zhgh-list-b-right">待完成</view>
      </view>
    </view>
  </view>
    <view class="zhgh-list" wx:if='{{TabCur==3}}' wx:for="{{infoList}}" wx:key>
        <view class="zhgh-list1" data-str="zhghInfo" data-id="{{item.id}}" bindtap='linkFunction'>
            <view class="zhgh-list-b">
                <view class="zhgh-list-b-left">
                    <view class="zhgh-list-b-left-div font-lg">{{item.taskTitle}}</view>
                    <view class="zhgh-list-b-left-div">{{item.taskRequire}}</view>
                    <view class="text-grey">{{item.startTime}}~{{item.endTime}}</view>
                </view>
                <view class="zhgh-list-b-right">
                    <view class="round cu-tag margin-tb-sm lg {{item.status=='未开始'?bg-grey:item.status=='进行中'?bg-red:bg-blue}}">{{item.status}}</view>
                </view>
            </view>
        </view>
    </view>
  <view wx:if='{{TabCur==3}}'>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1577345685&di=556a32729fa812cc81c060243816111d&imgtype=jpg&er=1&src=http%3A%2F%2Fwww.zhanjiang.gov.cn%2Ffileserver%2FNews%2Fb8bfdf37-7242-4d16-bbc0-1244d78aeca4.jpg"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">未成年人心理辅导</view>
          <view class="zhgh-list-b-left-div">2019.12.12 20:00</view>
        </view>
        <view class="zhgh-list-b-right">待完成</view>
      </view>
    </view>
    <view class="zhgh-list" data-str="zhghInfo" bindtap='linkFunction'>
      <view class="zhgh-list-img">
        <image src="https://ss1.bdstatic.com/70cFvXSh_Q1YnxGkpoWK1HF6hhy/it/u=1146387832,2824320615&fm=15&gp=0.jpg"></image>
      </view>
      <view class="zhgh-list-b">
        <view class="zhgh-list-b-left">
          <view class="zhgh-list-b-left-div font-lg">教育疏导</view>
          <view class="zhgh-list-b-left-div">2019.12.12 20:00</view>
        </view>
        <view class="zhgh-list-b-right">待完成</view>
      </view>
    </view>
  </view>
    <view class="zhgh-list" wx:if='{{TabCur==4}}' wx:for="{{infoList}}" wx:key>
        <view class="zhgh-list1" data-str="zhghInfo" data-id="{{item.id}}" bindtap='linkFunction'>
            <view class="zhgh-list-b">
                <view class="zhgh-list-b-left">
                    <view class="zhgh-list-b-left-div font-lg">{{item.taskTitle}}</view>
                    <view class="zhgh-list-b-left-div">{{item.taskRequire}}</view>
                    <view class="text-grey">{{item.startTime}}~{{item.endTime}}</view>
                </view>
                <view class="zhgh-list-b-right">
                    <view class="round cu-tag margin-tb-sm lg {{item.status=='未开始'?bg-grey:item.status=='进行中'?bg-red:bg-blue}}">{{item.status}}</view>
                </view>
            </view>
        </view>
    </view>
</view>
SunshineLnsMinApp/pages/zhgh/zhgh.wxss
@@ -2,14 +2,20 @@
.zhgh-bg {
  background-color: #f1f1f1;
  height: 100vh;
}
.zhgh-list {
  background: #fff;
  background: #f1f1f1;
  margin: 10PX;
  border-radius: 6PX;
}
.zhgh-list1 {
  background: #fff;
  border-radius: 6px;
}
.zhgh-list-img {
}
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.js
@@ -1,26 +1,177 @@
// pages/zhghInfo/zhghInfo.js
var app = getApp();
Page({
  /**
   * 页面的初始数据
   */
  data: {
    data: {},
    add: app.globalData.imgUrl + '/image/add.svg',
    del: app.globalData.imgUrl + '/image/del.svg',
    evalList: {},
    id: "",
    status: 4,
    disabled: false,
    taskReport: ''
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that = this;
    console.log(options.id)
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/social/find/' + options.id,
      success: function (res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
          var dataSet = res.data.data;
          var evalList1000 = dataSet.attachments || [];
          console.log('37', evalList1000)
          var evalList = {
            evalList1000,
          };
          for (var i in evalList) {
            evalList[i] = evalList[i].map(({
              imgPath: pic,
              attachmentId: id
            }) => ({
              pic,
              id
            }))
          }
          console.log('48', evalList)
          that.setData({
            data: {
              ...res.data.data,
              createTime: app.formatDate(res.data.data.createTime),
              startTime: app.formatDate(res.data.data.startTime),
              endTime: app.formatDate(res.data.data.endTime),
              status: res.data.data.status == 0 ? '未开始' : res.data.data.status == 1 ? '进行中' : res.data.data.status == 2 ? '已结束' : res.data.data.status == 99 ? '结束' : '(未知)'
            },
            id: res.data.data.id,
            evalList,
            taskReport: res.data.data.taskReport || ''
          })
        } else {
          wx.showToast({
            title: res.data.msg,
          })
        }
      }
    })
  },
  //输入框
  inputChange: function (e) {
    var taskReport = e.currentTarget.dataset.name;
    this.setData({
      taskReport
    })
  },
  // 跳转
  linkFunction: function () {
    wx.showToast({
      title: '提交成功',
      icon: 'success',
      duration: 2000
  //添加图片
  joinPicture: function (e) {
    console.log(e)
    var that = this;
    console.log(that)
    app.joinPicture(e, that, e.currentTarget.dataset.associatetypeid, that.data.id);
  },
  // 删除图片
  clearImg: function (e) {
    var that = this;
    app.clearImg(e, that);
  },
  //预览图片
  previewImage: function (e) {
    app.previewImage(e);
  },
  onPreview(e) {
    console.log('onPreview', e)
    const {
      file,
      fileList
    } = e.detail
    wx.previewImage({
      current: file.url,
      urls: fileList.map((n) => n.url),
    })
  },
  onRemove(e) {
    const {
      file,
      fileList
    } = e.detail;
    let that = this;
    var id = e.currentTarget.dataset['id'];
    console.log(id);
    let {
      supplyAttachmentList
    } = that.data.item;
    wx.showModal({
      content: '确定删除?',
      success: (res) => {
        if (res.confirm) {
          wx.showLoading();
          wx.request({
            url: app.globalData.url + '/api/v1/attachment/deleteByOwnerAtt',
            method: 'GET',
            data: {
              attId: file.id,
              owenId: id
            },
            success: function (res) {
              console.log('res', res);
              that.data.item.supplyAttachmentList = supplyAttachmentList.filter((n) => n.uid !== file.uid)
              that.setData({
                item: that.data.item
              })
              wx.hideLoading();
            }
          })
        }
      },
    })
  },
  // 提交
  linkFunction: function () {
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/social/submitTask',
      method: 'GET',
      data: {
        taskId: that.data.id,
        userId: wx.getStorageSync('id'),
        taskReport:that.data.taskReport
      },
      success: function (res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
          wx.showToast({
            title: '提交成功',
            icon: 'success',
            duration: 2000
          })
          wx.navigateBack({
            delta: 1
          })
        } else {
          wx.showToast({
            title: res.data.msg,
          })
        }
      }
    })
  },
})
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.wxml
@@ -1,41 +1,43 @@
<!--pages/zhghInfo/zhghInfo.wxml-->
<view class="zhghInfo-bg">
  <view class="zhghInfo-main">
    <view class="zhghInfo-main-img">
      <image src="http://www.gzns.gov.cn/nsjcy/njxw/201911/W020191101471253416700.jpg"></image>
    </view>
    <view class="zhghInfo-main-b">
      <view class="zhghInfo-main-b-left">
        <view class="zhghInfo-main-b-left-div font-lg">街镇老人关护任务</view>
        <view class="zhghInfo-main-b-left-div">2019.12.12 20:00</view>
      </view>
      <view class="zhghInfo-main-b-right">待完成</view>
    </view>
  </view>
    <view class="zhghInfo-main">
        <view class="zhghInfo-main-b">
            <view class="zhghInfo-main-b-left">
                <view class="zhghInfo-main-b-left-div font-lg">{{data.taskTitle}}</view>
                <view class="zhghInfo-main-b-left-div">{{data.startTime}}~{{data.endTime}}</view>
            </view>
            <!-- <view class="zhghInfo-main-b-right">{{data.status}}</view> -->
            <view class="zhghInfo-main-b-right round cu-tag margin-tb-sm lg {{data.status=='未开始'?bg-grey:data.status=='进行中'?bg-red:bg-blue}}">{{data.status}}</view>
        </view>
    </view>
  <view class="zhghInfo-center">
    <view class="zhghInfo-center-title">任务分派时间:
      <text>2019/11/11</text>
    </view>
    <view class="zhghInfo-center-title">任务描述</view>
    <view class="zhghInfo-center-txt">老人们读书讲故事 陪护聊天 积极有耐心</view>
    <view class="zhghInfo-center-txt">处理好老人周边环境,打扫卫生,制造良好环境</view>
  </view>
    <view class="zhghInfo-center">
        <view class="zhghInfo-center-title">任务分派时间:
            <text>{{data.createTime}}</text>
        </view>
        <view class="zhghInfo-center-title">任务描述</view>
        <view class="zhghInfo-center-txt">{{data.taskRequire}}</view>
    </view>
  <view class="zhghInfo-accessory">
    <view class="zhghInfo-center-title">附件</view>
    <view class="zhghInfo-center-img">
      <image mode='widthFix' src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576751446711&di=9a51ccd14d7d6223f49cf72979e74ca0&imgtype=0&src=http%3A%2F%2F08imgmini.eastday.com%2Fmobile%2F20191208%2F20191208110046_ce457572d1c4ffd2702fb562caa4180e_1.jpeg"></image>
      <image mode='widthFix' src="https://timgsa.baidu.com/timg?image&quality=80&size=b9999_10000&sec=1576751446712&di=e0b0e646cc1dd468fafbc791182aeac6&imgtype=0&src=http%3A%2F%2Fcsgy.rmzxb.com.cn%2Fupload%2Fresources%2Fimage%2F2016%2F10%2F17%2F1180737_500x500.jpg"></image>
    </view>
  </view>
    <view class="zhghInfo-accessory">
        <view class="zhghInfo-center-title">附件</view>
        <div class="activity-uploadImage">
            <view class="educt_hasupload_pic" wx:for="{{evalList.evalList1000}}" wx:key="index">
                <image src="{{item.pic}}" class="upload" bindtap="previewImage" data-src="{{item.pic}}"></image>
                <image src="{{del}}" bindtap='clearImg' data-index="{{index}}" id="{{item.id}}" data-associatetypeid="{{1000}}" class="{{disabled? 'displayNone':'activity-uploadImag-del'}}"></image>
            </view>
            <view bindtap="joinPicture" data-index="{{0}}" data-associatetypeid="{{1000}}" class="{{disabled? 'displayNone':'educt_upload_add'}}">
                <image class="activity-uploadImag-icon" src="{{add}}"></image>
            </view>
        </div>
    </view>
  <view class="zhghInfo-text">
    <view class="zhghInfo-center-title">任务汇报</view>
    <view class="zhghInfo-center-textarea">
      <textarea placeholder="学会与老人沟通,耐心积极,心态良好" placeholder-style="color:#9B9B9B;"></textarea>
    </view>
    <view class="button-submit" bindtap='linkFunction'>提交</view>
  </view>
    <view class="zhghInfo-text">
        <view class="zhghInfo-center-title">任务汇报</view>
        <view class="zhghInfo-center-textarea">
            <textarea data-name="taskReport" bindinput="inputChange" disabled="{{disabled}}"  placeholder="学会与老人沟通,耐心积极,心态良好" placeholder-style="color:#9B9B9B;"></textarea>
        </view>
        <view class="button-submit" bindtap='linkFunction'>提交</view>
    </view>
</view>
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.wxss
@@ -53,11 +53,39 @@
  margin: 10PX;
}
.upload {
  width: 48px;
  height: 48px;
}
.activity-uploadImag-del {
  width: 20px;
  height: 20px;
  position: absolute;
  left: 28px;
}
.activity-uploadImage {
  display: flex;
  padding: 1vh 2vh;
}
.zhghInfo-center-title text {
  font-size: 14px;
  font-weight: 300;
}
.educt_hasupload_pic {
  display: flex;
  position: relative;
  padding-right: 1vh;
}
.activity-uploadImag-icon {
  width: 48px;
  height: 48px;
}
.zhghInfo-center-txt {
  line-height: 24PX;
  margin-left: 12PX;
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.js
New file
@@ -0,0 +1,68 @@
// pages/zhghLogin/zhghLogin.js
//获取应用实例
var app = getApp();
Page({
  /**
   * 页面的初始数据
   */
  data: {
    src: app.globalData.imgUrl + '/image/bg1.jpg',
    logo: app.globalData.imgUrl + '/image/logo.png',
    companyAccount: 'admin456',
    companyPassword: 'admin'
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {},
  // 输入框内容
  inputHandler: function (event) {
    var type = event.currentTarget.dataset['type'];
    console.log(type)
    console.log(event.detail.value)
    this.setData({
      [type]: event.detail.value
    })
  },
  //登录
  simulationButton: function () {
    const {
      companyAccount,
      companyPassword
    } = this.data;
    let that = this;
    wx.request({
      url: app.globalData.url + '/api/socialCompany/loginCheck',
      method: 'POST',
      data: {
        companyAccount,
        companyPassword
      },
      success: function (res) {
        console.log(res)
        if (res.data.code == 0) {
          wx.showToast({
            title: '登录成功!',
            icon: 'success',
            duration: 1500,
            success: function () {
              wx.setStorageSync('id', res.data.data.id)
              setTimeout(() => {
                wx.navigateTo({
                  url: '../zhgh/zhgh'
                })
              }, 1500);
            }
          })
        } else {
          wx.showToast({
            title: res.data.msg,
            icon: 'none'
          })
        }
      }
    })
  }
})
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.json
New file
@@ -0,0 +1,3 @@
{
  "navigationBarTitleText": "社会关护"
}
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.wxml
New file
@@ -0,0 +1,17 @@
<!--pages/zhghLogin/zhghLogin.wxml-->
<view class="index-main">
    <image class="index-icon" src="{{src}}"></image>
</view>
<view class='buttom-button'>
    <view class='login-item'>
        <text class="cuIcon-people lg text-black"></text>
        <input bindinput='inputHandler' data-type='companyAccount' class='login-item-input' placeholder='请输入账号' type='text'></input>
    </view>
    <view class='login-item'>
        <text class="cuIcon-lock lg text-black"></text>
        <input bindinput='inputHandler' data-type='companyPassword' type='password' class='login-item-input' placeholder='请输入密码'></input>
    </view>
    <button bindtap='simulationButton' class='login-submit-btn'>登录</button>
</view>
SunshineLnsMinApp/pages/zhghLogin/zhghLogin.wxss
New file
@@ -0,0 +1,39 @@
/* pages/zhghLogin/zhghLogin.wxss */
.index-icon {
  width: 100%;
  height: 32vh;
  background-size: cover;
}
.login-item {
  display: flex;
  margin: 24rpx 42rpx;
  background-color: #fafafa;
  font-size: 28rpx;
  align-items: center;
}
.login-main {
  height: 100vh;
  background-color: #fff;
}
.login-img {
  width: 38rpx;
  height: 38rpx;
}
.login-item-input {
  margin-left: 12rpx;
  height: 98rpx;
  line-height: 98rpx;
}
.login-submit-btn {
  color: #fff !important;
  margin: 42rpx;
  font-size: 32rpx;
  border-radius: 8rpx;
  background: linear-gradient(135deg, rgba(61, 155, 241) 0%, rgba(23, 144, 255) 100%);
}
SunshineLnsMinApp/pages/zhgk/zhgk.js
@@ -1,4 +1,5 @@
// pages/zhgk/zhgk.js
var app = getApp()
Page({
  /**
@@ -6,61 +7,35 @@
   */
  data: {
    wjgk: './../../images/wjgk.jpg',
    data:{},
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
    var that = this;
    wx.request({
      url: app.globalData.url + '/api/article/findByName',
      data: {
        typeName:'未检概况',
      },
      success: function (res) {
        wx.hideLoading();
        console.log(res)
        if (res.data.code == 0) {
          that.setData({
            data: res.data.data
          })
        } else {
          wx.showModal({
            title: '提示',
            content: "请求失败!"
          })
        }
      }
    })
  },
  /**
   * 生命周期函数--监听页面初次渲染完成
   */
  onReady: function () {
  },
  /**
   * 生命周期函数--监听页面显示
   */
  onShow: function () {
  },
  /**
   * 生命周期函数--监听页面隐藏
   */
  onHide: function () {
  },
  /**
   * 生命周期函数--监听页面卸载
   */
  onUnload: function () {
  },
  /**
   * 页面相关事件处理函数--监听用户下拉动作
   */
  onPullDownRefresh: function () {
  },
  /**
   * 页面上拉触底事件的处理函数
   */
  onReachBottom: function () {
  },
  /**
   * 用户点击右上角分享
   */
  onShareAppMessage: function () {
  }
})
SunshineLnsMinApp/pages/zhgk/zhgk.wxml
@@ -2,13 +2,16 @@
<view class="bg-img padding-tb-xl" style="background-image: url({{wjgk}});background-size:100% auto;height:200px"></view>
<view class="zhgk-main">
  <view class=" text-lg" style="padding:30rpx 30rpx 0;">
    <text class="zhgk-main-title text-black">总体介绍</text>
  </view>
  <view class=' text-df padding'> 2016年4月,南沙检察成立了未成年人检察工作办公室。2019年1月,我院成立“许淑妍命名检察官办公室”,适用“捕诉监防助”一体化工作模式,负责办理未成年人犯罪和侵害未成年人犯罪案件,开展未成年人司法保护和预防未成年人犯罪等工作。南沙检察以专业化办案为依托,以规范化建设为抓手,认真贯彻“教育、感化、挽救”方针,坚持“教育为主、惩罚为辅”原则,全面落实未成年人指定辩护、社会调查、心理评估、合适成年人等特别程序,不断打造未检新品牌。以社会化服务为路径,以多元化平台为支点,组建心理咨询师团队和社工团队,通过法治宣传大平台、两微一端、“沙鸥”法治宣讲团开展普法宣传,构建多维度的未成年人维权、犯罪预防网络。近年来,南沙检察先后获评全国青少年维权岗、全国检察机关未成年人检察工作联系点。队伍中涌现出全国检察机关未成年人检察业务竞赛能手和全市检察机关未成年人检察业务标兵。</view>
    <view class=" text-lg" style="padding:30rpx 30rpx 0;">
        <text class="zhgk-main-title text-black">{{data.title}}</text>
    </view>
    <!-- <view class=' text-df padding'> 2016年4月,南沙检察成立了未成年人检察工作办公室。2019年1月,我院成立“许淑妍命名检察官办公室”,适用“捕诉监防助”一体化工作模式,负责办理未成年人犯罪和侵害未成年人犯罪案件,开展未成年人司法保护和预防未成年人犯罪等工作。南沙检察以专业化办案为依托,以规范化建设为抓手,认真贯彻“教育、感化、挽救”方针,坚持“教育为主、惩罚为辅”原则,全面落实未成年人指定辩护、社会调查、心理评估、合适成年人等特别程序,不断打造未检新品牌。以社会化服务为路径,以多元化平台为支点,组建心理咨询师团队和社工团队,通过法治宣传大平台、两微一端、“沙鸥”法治宣讲团开展普法宣传,构建多维度的未成年人维权、犯罪预防网络。近年来,南沙检察先后获评全国青少年维权岗、全国检察机关未成年人检察工作联系点。队伍中涌现出全国检察机关未成年人检察业务竞赛能手和全市检察机关未成年人检察业务标兵。</view> -->
    <view class=' text-df padding'>
        <rich-text nodes="{{data.content}}"></rich-text>
    </view>
</view>
<view class="zhgk-main">
<!-- <view class="zhgk-main">
  <view class=" text-lg" style="padding:30rpx 30rpx 0;">
    <text class="zhgk-main-title text-black">指导文件</text>
  </view>
@@ -25,15 +28,5 @@
  </view>
  <view class="padding">
  <view class=' text-df'> 负责未成年人犯罪和侵害未成年人犯罪案件的审查批捕、审查起诉、出庭公诉、诉讼监督、犯罪预防、教育挽救工作,实现专人审查、全程办理,“一竿子捅到底”,为涉罪未成年人提供全面高效、协调一致的检察保护。</view>
    <!-- <view class=' text-df'> 广州市南沙区人民检察院是国家法律监督机关,负责辖区各项检察工作,接受广州市人民检察院的领导,对区人民代表大会及其常委会负责并报告工作,接受其监督,执行其决议。主要职责是:</view>
    <view class=' text-df'>1.制定辖区检察工作计划,落实检察工作任务。</view>
    <view class=' text-df'>2.依法对公安机关和检察机关直接受理的犯罪案件进行审查批准逮捕、决定逮捕、提起公诉、出庭支持公诉。</view>
    <view class=' text-df'>4.依法对执行机关执行刑罚的活动以及监狱、看守所的活动是否合法实行监督。</view>
    <view class=' text-df'>5.对同级人民法院已经发生法律效力,确有错误的判决和裁定,依法提请上一级人民检察院向同级人民法院提出抗诉。</view>
    <view class=' text-df'> 6.受理单位和个人的报案、控告、申诉、举报以及犯罪嫌疑人的自首。</view>
    <view class=' text-df'>7.开展检察环节的综合治理工作。</view>
    <view class=' text-df'> 8.负责本院队伍建设和思想政治工作,协助上级检察机关和区有关主管部门管理本院的机构编制,实施相关人员的管理办法;协助区委有关部门对本院的领导班子成员的管理和考核;提请区人大常委会对本院检察员、检察委员会委员、副检察长的任免;负责管理本院直属机构;管理本院的教育培训工作。</view>
    <view class=' text-df'> 9.组织领导本院的纪检监察和宣传工作。</view>
    <view class=' text-df'>10.承办其他应由本院负责的事项。</view> -->
  </view>
</view>
</view> -->
SunshineLnsMinApp/pages/zhwj/zhwj.js
@@ -6,7 +6,7 @@
   * 页面的初始数据
   */
  data: {
    wjgk:'./../../images/wjgk.jpg',
    wjgk: './../../images/wjgk.jpg',
    dongtai1_1: app.globalData.imgUrl + '/image/dongtai1-1.jpg',
    dongtai2_1: app.globalData.imgUrl + '/image/dongtai2-1.jpg',
    dongtai3_1: app.globalData.imgUrl + '/image/dongtai3-1.jpg',
@@ -61,17 +61,48 @@
      badge: 0,
      name: '版权'
    }],
    dataSet: []
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function(options) {
  onLoad: function (options) {
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/article/publicMsgQuery',
      data: {
        page: 1,
        size: 1000,
        flag: '未检动态',
      },
      success: function (res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
          let content = res.data.data.result.content.map(({
            createTime,
            ...i
          }) => ({
            ...i,
            createTime: app.formatDate(createTime),
          }));
          console.log(content)
          that.setData({
            dataSet: content
          })
        } else {
          wx.showToast({
            title: res.data.msg,
          })
        }
      }
    })
  },
  // 跳转
  linkFunction: function(event) {
  linkFunction: function (event) {
    var str = event.currentTarget.dataset['str'];
    var id = event.currentTarget.dataset['id'];
    wx.navigateTo({
SunshineLnsMinApp/pages/zhwj/zhwj.wxml
@@ -4,47 +4,47 @@
</view>
<view class="zhwj-list">
  <view class="zhwj-list-flex">
    <view class="zhwj-list-flex-l" data-str="zhgk" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj1.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">未检概况</view>
        <view class="text-gray">未检简介</view>
      </view>
    </view>
    <view class="zhwj-list-flex-r" data-str="zhdt" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj2.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">未检动态</view>
        <view class="text-gray">最美未检剪影</view>
      </view>
    </view>
  </view>
  <view class="zhwj-list-flex">
    <view class="zhwj-list-flex-l" data-str="zhgh" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj3.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">社会关护</view>
        <view class="text-gray">社会支持与配合</view>
      </view>
    </view>
    <view class="zhwj-list-flex-r" data-str="wjjb" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj4.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">举报平台</view>
        <view class="text-gray">未成年人侵害案件</view>
      </view>
    </view>
  </view>
  <view class="zhwj-list-flex">
    <view class="zhwj-list-flex-l" data-str="weiwc" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj5.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">入职查询</view>
        <view class="text-gray">未检职工入职查询</view>
      </view>
    </view>
    <!-- <view class="zhwj-list-flex-r" data-str="weiwc" bindtap='linkFunction'>
    <view class="zhwj-list-flex">
        <view class="zhwj-list-flex-l" data-str="zhgk" bindtap='linkFunction'>
            <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj1.png');"></view>
            <view class="zhwj-list-flex-l-text">
                <view class="text-black text-bold text-lg">未检概况</view>
                <view class="text-gray">未检简介</view>
            </view>
        </view>
        <view class="zhwj-list-flex-r" data-str="zhdt" bindtap='linkFunction'>
            <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj2.png');"></view>
            <view class="zhwj-list-flex-l-text">
                <view class="text-black text-bold text-lg">未检动态</view>
                <view class="text-gray">最美未检剪影</view>
            </view>
        </view>
    </view>
    <view class="zhwj-list-flex">
        <view class="zhwj-list-flex-l" data-str="zhghLogin" bindtap='linkFunction'>
            <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj3.png');"></view>
            <view class="zhwj-list-flex-l-text">
                <view class="text-black text-bold text-lg">社会关护</view>
                <view class="text-gray">社会支持与配合</view>
            </view>
        </view>
        <view class="zhwj-list-flex-r" data-str="wjjb" bindtap='linkFunction'>
            <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj4.png');"></view>
            <view class="zhwj-list-flex-l-text">
                <view class="text-black text-bold text-lg">举报平台</view>
                <view class="text-gray">未成年人侵害案件</view>
            </view>
        </view>
    </view>
    <view class="zhwj-list-flex">
        <view class="zhwj-list-flex-l" data-str="weiwc" bindtap='linkFunction'>
            <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj5.png');"></view>
            <view class="zhwj-list-flex-l-text">
                <view class="text-black text-bold text-lg">入职查询</view>
                <view class="text-gray">未检职工入职查询</view>
            </view>
        </view>
        <!-- <view class="zhwj-list-flex-r" data-str="weiwc" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj6.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">普法预约</view>
@@ -52,51 +52,35 @@
      </view>
    </view> -->
     <view class="zhwj-list-flex-r" data-str="fzjdvisitList" bindtap='linkFunction'>
      <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj6.png');"></view>
      <view class="zhwj-list-flex-l-text">
        <view class="text-black text-bold text-lg">法治基地参观</view>
        <view class="text-gray">预约参观法治基地</view>
      </view>
    </view>
  </view>
        <view class="zhwj-list-flex-r" data-str="fzjdvisitList" bindtap='linkFunction'>
            <view class="cu-avatar round margin-left zhwj-list-flex-l-img" style="background-image: url('https://xnwj.gznsjc.gov.cn/nsjc-charge/image/zuj6.png');"></view>
            <view class="zhwj-list-flex-l-text">
                <view class="text-black text-bold text-lg">法治基地参观</view>
                <view class="text-gray">预约参观法治基地</view>
            </view>
        </view>
    </view>
</view>
<view class="index-gray "></view>
<view class="zhwj-b">
  <view class="zhwj-b-head">
    <span></span>
    <view class="zhwj-b-head-title text-black">未检动态</view>
  </view>
    <view class="zhwj-b-head">
        <span></span>
        <view class="zhwj-b-head-title text-black">未检动态</view>
    </view>
  <view class="zhwj-b-main" data-str="zhdtInfo" data-id="1" bindtap='linkFunction'>
    <view class="zhwj-b-head-l">
      <view class="zhwj-b-head-l-title text-black">南沙区院召开2019“沙鸥”法治宣讲团年度总结暨课件评选会</view>
      <view class="text-grey">检察宣传部 60阅读</view>
    </view>
    <view class="zhwj-b-head-r">
      <image mode='widthFix' src="{{dongtai1_1}}"></image>
    </view>
  </view>
  <view class="zhwj-b-main" data-str="zhdtInfo" data-id="2" bindtap='linkFunction'>
    <view class="zhwj-b-head-l">
      <view class="zhwj-b-head-l-title text-black">“沙鸥”法治宣讲团进校园开展假前安全教育</view>
      <view class="text-grey">检察宣传部 56阅读</view>
    </view>
    <view class="zhwj-b-head-r">
      <image src="{{dongtai2_1}}" mode='widthFix'></image>
    </view>
  </view>
  <view class="zhwj-b-main" data-str="zhdtInfo" data-id="3" bindtap='linkFunction'>
    <view class="zhwj-b-head-l">
      <view class="zhwj-b-head-l-title text-black">我院与华尔心理咨询中心开展反家暴普法宣传</view>
      <view class="text-grey">检察宣传部 245阅读</view>
    </view>
    <view class="zhwj-b-head-r">
      <image src="{{dongtai3_1}}" mode='widthFix'></image>
    </view>
  </view>
    <view class="zhwj-b">
        <view class="zhwj-b-main" wx:for="{{ dataSet }}" data-str="zhdtInfo" data-Id="{{item.id}}" bindtap='linkFunction'>
            <view class="zhwj-b-head-l">
                <view class="zhwj-b-head-l-title text-black">{{item.title}}</view>
                <view class="text-grey">{{item.createTime}}<text decode="{{true}}" space="{{true}}">&nbsp;&nbsp;&nbsp;&nbsp;</text>{{item.readCount}}阅读</view>
            </view>
            <view class="zhwj-b-head-r">
                <image mode='widthFix' src="{{item.attList[0].path}}"></image>
            </view>
        </view>
    </view>
</view>