forked from nsjcy/frontEnd/nsjcy

liuwh
2020-03-30 8d68b6a1dcdf5008fba6bdac5858d1085a0e63e7
提交
23 files modified
866 ■■■■ changed files
SunshineIns/src/page/ApplyFor.jsx 29 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/ApplyForEdit.jsx 55 ●●●●● patch | view | raw | blame | history
SunshineIns/src/page/ArticleEidt.jsx 2 ●●● patch | view | raw | blame | history
SunshineIns/src/page/CareListEdit.jsx 22 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/Examine.jsx 10 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/ExamineEdit.jsx 87 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/PoliceSecurity.jsx 10 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/policeSecurityEdit.jsx 85 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/app.js 4 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/createSub/createSub.js 77 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/createSub/createSub.wxml 6 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/rzcx/rzcx.wxss 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/xsjb/xsjb.js 47 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/xsjb/xsjb.wxml 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/yshjqyfw/yshjqyfw.js 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zdyf/zdyf.js 2 ●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.js 100 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.wxml 80 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgk/zhgk.js 87 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgk/zhgk.wxml 57 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhgk/zhgk.wxss 79 ●●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhwj/zhwj.wxml 14 ●●●● patch | view | raw | blame | history
SunshineLnsMinApp/pages/zhwj/zhwj.wxss 7 ●●●● patch | view | raw | blame | history
SunshineIns/src/page/ApplyFor.jsx
@@ -64,7 +64,7 @@
            formData: data,
        });
        this.setState({ loading: true })
        Fetch.entryQuery({ ...data,type:1 })
        Fetch.entryQuery({ ...data, type: 1 })
            .then(res => {
                console.log(res)
                for (var i = 0; i < res.rows.length; i++) {
@@ -79,7 +79,7 @@
    getData = () => {
        this.setState({ loading: true })
        Fetch.entryQuery({ ...this.state.formData,type:1 })
        Fetch.entryQuery({ ...this.state.formData, type: 1 })
            .then(res => {
                console.log(res)
                for (var i = 0; i < res.rows.length; i++) {
@@ -168,16 +168,21 @@
            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" />
                                <Popconfirm
                                    title="确认删除任务吗?"
                                    id={record.id}
                                    onConfirm={e => this.confirm(record.id)}
                                    okText="确定"
                                    cancelText="取消"
                                >
                                    <a href="#">删除</a>
                                </Popconfirm>
                            </React.Fragment> : ''
                    }
                </span>
            ),
        }];
SunshineIns/src/page/ApplyForEdit.jsx
@@ -6,6 +6,7 @@
import HeadView from '../view/HeadView';
import BusDetailView from '../view/BusDetailView';
import TableView from '../view/TableView';
import LineView from "../view/LineView";
import ImageBoxView from '../view/ImageBoxView'
// 引入编辑器以及编辑器样式
import Fetch from '../fetch';
@@ -293,6 +294,60 @@
                                </Col>
                            </Row>
                        </div>
                        {
                            savedate.approveLogs ?
                                <LineView title="审核记录" style="15vh">
                                    {
                                        savedate.approveLogs.length == 1 ?
                                            <table>
                                                <tbody>
                                                    <tr>
                                                        <td className="table-vaule1">检察院审核人</td>
                                                        <td className="table-vaule2">{savedate.approveLogs[0].approverName}</td>
                                                        <td className="table-vaule3">检察院审核时间</td>
                                                        <td className="table-vaule4">{moment(savedate.approveLogs[0].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                    </tr>
                                                    <tr>
                                                        <td className="table-vaule1">检察院回复内容</td>
                                                        <td className="table-vaule2">{savedate.approveLogs[0].opinion}</td>
                                                    </tr>
                                                </tbody>
                                            </table>
                                            : savedate.approveLogs.length == 2 ?
                                                <React.Fragment>
                                                    <table>
                                                        <tbody>
                                                            <tr>
                                                                <td className="table-vaule1">检察院审核人</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[0].approverName}</td>
                                                                <td className="table-vaule3">检察院审核时间</td>
                                                                <td className="table-vaule4">{moment(savedate.approveLogs[0].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                            </tr>
                                                            <tr>
                                                                <td className="table-vaule1">检察院回复内容</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[0].opinion}</td>
                                                            </tr>
                                                        </tbody>
                                                    </table><table>
                                                        <tbody>
                                                            <tr>
                                                                <td className="table-vaule1">公安审核人</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[1].approverName}</td>
                                                                <td className="table-vaule3">公安审核时间</td>
                                                                <td className="table-vaule4">{moment(savedate.approveLogs[1].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                            </tr>
                                                            <tr>
                                                                <td className="table-vaule1">公安回复内容</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[1].opinion}</td>
                                                            </tr>
                                                        </tbody>
                                                    </table>
                                                </React.Fragment> : ''
                                    }
                                </LineView>
                                : ''
                        }
                        {
                            savedate.status ?
SunshineIns/src/page/ArticleEidt.jsx
@@ -46,7 +46,7 @@
        this.setState({
          savedate: res,
          selectedRow: res.companyList || [],
          fileList: res.attachments || [],
          fileList: res.attachments ? res.attachments.map((item, index) => ({ uid: item.uid, id: item.uid, name: item.name, status: 'done', url: domain + `api/v1/attachment/downloadDisk/${item.uid}?online=false` })) : [],
          cover: res.cover || [],
          editorState: BraftEditor.createEditorState(res.content),
          dateSource: res.channelList || []
SunshineIns/src/page/CareListEdit.jsx
@@ -130,6 +130,16 @@
            message.warning("任务地点不能为空");
            return;
        }
        if (moment(savedate.startTime) < moment(new Date())) {
            message.warning("开始时间必须大于当前时间");
            console.log(moment(savedate.startTime))
            console.log(moment(new Date()))
            return;
        }
        if (moment(savedate.endTime) < moment(savedate.startTime)) {
            message.warning("结束时间必须大于开始时间");
            return;
        }
        if (!savedate.taskRequire) {
            message.warning("任务要求不能为空");
            return;
@@ -294,7 +304,7 @@
    submitLContent = () => {
        // 在编辑器获得焦点时按下ctrl+s会执行此方法
        // 编辑器内容提交到服务端之前,可直接调用editorState.toHTML()来获取HTML格式的内容
        const htmlContent = this.state.editorState.toHTML()
        const htmlContent = this.state.editorStatetaskProcess.toHTML()
        this.setState(({ savedate }) => ({
            savedate: {
                ...savedate,
@@ -310,6 +320,7 @@
    handleEditorLChange = (editorStatetaskProcess) => {
        this.setState({ editorStatetaskProcess })
    }
    handleCancel = () => this.setState({ previewVisible: false })
    render() {
@@ -514,8 +525,8 @@
                                <div style={divStyle}>
                                    <Row type="flex" align='middle' justify="space-around">
                                        <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>任务汇报</span></Col>
                                        <Col span={6} push={0} >
                                            <TextArea disabled={disabled} rows={4} style={{ width: '92%' }} value={socialTaskObject.taskReport || ""} onChange={this.saveInputChange} name='taskReport' />
                                        <Col span={18} push={0} >
                                            <TextArea disabled={disabled} rows={4} value={socialTaskObject.taskReport || ""} onChange={this.saveInputChange} name='taskReport' />
                                        </Col>
                                        <Col span={12} pull={0}></Col>
                                    </Row>
@@ -573,3 +584,8 @@
    }
}
function disabledDate(current) {
    // Can not select days before today and today
    return current && current < moment().endOf('day');
}
SunshineIns/src/page/Examine.jsx
@@ -136,9 +136,13 @@
            title: '操作',
            key: 'action',
            render: (text, record) => (
                <span>
                    <a onClick={() => this.showModal(record.id)}>审核</a>
                </span>
                record.status == 1 ?
                    <span>
                        <a onClick={() => this.showModal(record.id)}>审核</a>
                    </span>
                    : <span>
                        <a onClick={() => this.showModal(record.id)}>详情</a>
                    </span>
            ),
        }];
        const { data, loading, resetKey, formData } = this.state;
SunshineIns/src/page/ExamineEdit.jsx
@@ -6,6 +6,7 @@
import HeadView from '../view/HeadView';
import BusDetailView from '../view/BusDetailView';
import TableView from '../view/TableView';
import LineView from "../view/LineView";
import ImageBoxView from '../view/ImageBoxView'
// 引入编辑器以及编辑器样式
import Fetch from '../fetch';
@@ -49,7 +50,8 @@
            status: '',
            loading: false,
            opinion: '',
            modalLoading:false,
            modalLoading: false,
            disabled: false,
        };
    }
@@ -68,8 +70,9 @@
                    savedate: {
                        ...res,
                    },
                    disabled: res.status == 1 ? false : true,
                    loading: false,
                    fileList: res.list ? res.list.map((item, index) => ({ uid: uid, id: item.uid, name: item.name, status: 'done', url: domain + `/api/v1/attachment/download/${item.uid}?online=false` })) : []
                    fileList: res.list ? res.list.map((item, index) => ({ uid: item.uid, id: item.uid, name: item.name, status: 'done', url: domain + `/api/v1/attachment/download/${item.uid}?online=false` })) : []
                });
            })
@@ -105,7 +108,7 @@
    }
    cancle = () => {
        this.props.history.push("/entry/applyFor");
        this.props.history.push("/entry/examine");
    }
    handlePreview = (file) => {
        this.setState({
@@ -232,8 +235,10 @@
    handleCancel = () => this.setState({ previewVisible: false })
    render() {
        const { savedate, opinion, fileList, loading } = this.state;
        const { savedate, opinion, fileList, loading, disabled } = this.state;
        console.log('list', fileList)
        console.log('disabled', disabled)
        console.log('savedate', savedate)
        const props = {
            action: domain + `api/v1/attachment/materials?associateTypeId=1019&entityId=` + savedate.id,
            onChange: ({ file, fileList }) => {
@@ -262,7 +267,7 @@
                <Spin spinning={loading}>
                    <HeadView history={this.props.history} />
                    <Breadcrumb style={{ padding: '20px' }}>
                        <Breadcrumb.Item><a href="index.html#/entry/applyFor">检察院审核</a></Breadcrumb.Item>
                        <Breadcrumb.Item><a href="index.html#/entry/examine">检察院审核</a></Breadcrumb.Item>
                        <Breadcrumb.Item>检察院审核详情</Breadcrumb.Item>
                    </Breadcrumb>
                    <BusDetailView type='检察院审核' >
@@ -304,14 +309,76 @@
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>审批意见</span></Col>
                                <Col span={18} push={0} >
                                    <TextArea rows={4} placeholder="请输入审批意见" style={{ width: '92%' }} value={opinion || ""} onChange={this.saveInputChange} name='opinion' /></Col>
                                    <TextArea disabled={disabled} rows={4} placeholder="请输入审批意见" style={{ width: '92%' }} value={opinion || ""} onChange={this.saveInputChange} name='opinion' /></Col>
                            </Row>
                        </div>
                        <div style={{ display: 'flex', justifyContent: 'center' }}>
                            <Button style={{ marginRight: '15px', width: '150px' }} type="primary" onClick={this.showModal}>提交</Button>
                            <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.cancle}>返回</Button>
                        </div>
                        {
                            savedate.approveLogs ?
                                <LineView title="审核记录" style="15vh">
                                    {
                                        savedate.approveLogs.length == 1 ?
                                            <table>
                                                <tbody>
                                                    <tr>
                                                        <td className="table-vaule1">检察院审核人</td>
                                                        <td className="table-vaule2">{savedate.approveLogs[0].approverName}</td>
                                                        <td className="table-vaule3">检察院审核时间</td>
                                                        <td className="table-vaule4">{moment(savedate.approveLogs[0].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                    </tr>
                                                    <tr>
                                                        <td className="table-vaule1">检察院回复内容</td>
                                                        <td className="table-vaule2">{savedate.approveLogs[0].opinion}</td>
                                                    </tr>
                                                </tbody>
                                            </table>
                                            : savedate.approveLogs.length == 2 ?
                                                <React.Fragment>
                                                    <table>
                                                        <tbody>
                                                            <tr>
                                                                <td className="table-vaule1">检察院审核人</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[0].approverName}</td>
                                                                <td className="table-vaule3">检察院审核时间</td>
                                                                <td className="table-vaule4">{moment(savedate.approveLogs[0].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                            </tr>
                                                            <tr>
                                                                <td className="table-vaule1">检察院回复内容</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[0].opinion}</td>
                                                            </tr>
                                                        </tbody>
                                                    </table><table>
                                                        <tbody>
                                                            <tr>
                                                                <td className="table-vaule1">公安审核人</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[1].approverName}</td>
                                                                <td className="table-vaule3">公安审核时间</td>
                                                                <td className="table-vaule4">{moment(savedate.approveLogs[1].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                            </tr>
                                                            <tr>
                                                                <td className="table-vaule1">公安回复内容</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[1].opinion}</td>
                                                            </tr>
                                                        </tbody>
                                                    </table>
                                                </React.Fragment> : ''
                                    }
                                </LineView>
                                : ''
                        }
                        {
                            savedate.status == 1 ?
                                <div style={{ display: 'flex', justifyContent: 'center' }}>
                                    <Button style={{ marginRight: '15px', width: '150px' }} type="primary" onClick={this.showModal}>提交</Button>
                                    <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.cancle}>返回</Button>
                                </div>
                                :
                                <div style={{ display: 'flex', justifyContent: 'center' }}>
                                    <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.cancle}>返回</Button>
                                </div>
                        }
                    </BusDetailView>
                    <Modal
SunshineIns/src/page/PoliceSecurity.jsx
@@ -153,9 +153,13 @@
            title: '操作',
            key: 'action',
            render: (text, record) => (
                <span>
                    <a onClick={() => this.showModal(record.id)}>审核</a>
                </span>
                record.status == 2 ?
                    <span>
                        <a onClick={() => this.showModal(record.id)}>审核</a>
                    </span>
                    : <span>
                        <a onClick={() => this.showModal(record.id)}>详情</a>
                    </span>
            ),
        }];
        const { data, loading, resetKey, formData } = this.state;
SunshineIns/src/page/policeSecurityEdit.jsx
@@ -6,6 +6,7 @@
import HeadView from '../view/HeadView';
import BusDetailView from '../view/BusDetailView';
import TableView from '../view/TableView';
import LineView from "../view/LineView";
import ImageBoxView from '../view/ImageBoxView'
// 引入编辑器以及编辑器样式
import Fetch from '../fetch';
@@ -49,7 +50,8 @@
            status: '',
            loading: false,
            opinion: '',
            modalLoading:false,
            modalLoading: false,
            disabled: false,
        };
    }
@@ -68,8 +70,9 @@
                    savedate: {
                        ...res,
                    },
                    disabled: res.status == 2 ? false : true,
                    loading: false,
                    fileList: res.list ? res.list.map((item, index) => ({ uid: uid, id: item.uid, name: item.name, status: 'done', url: domain + `/api/v1/attachment/download/${item.uid}?online=false` })) : []
                    fileList: res.list ? res.list.map((item, index) => ({ uid: item.uid, id: item.uid, name: item.name, status: 'done', url: domain + `/api/v1/attachment/download/${item.uid}?online=false` })) : []
                });
            })
@@ -232,7 +235,7 @@
    handleCancel = () => this.setState({ previewVisible: false })
    render() {
        const { savedate, opinion, fileList, loading } = this.state;
        const { savedate, opinion, fileList, loading, disabled } = this.state;
        console.log('list', fileList)
        const props = {
            action: domain + `api/v1/attachment/materials?associateTypeId=1019&entityId=` + savedate.id,
@@ -262,8 +265,8 @@
                <Spin spinning={loading}>
                    <HeadView history={this.props.history} />
                    <Breadcrumb style={{ padding: '20px' }}>
                        <Breadcrumb.Item><a href="index.html#/entry/applyFor">检察院审核</a></Breadcrumb.Item>
                        <Breadcrumb.Item>检察院审核详情</Breadcrumb.Item>
                        <Breadcrumb.Item><a href="index.html#/entry/policeSecurityEdit">公安审核</a></Breadcrumb.Item>
                        <Breadcrumb.Item>公安审核详情</Breadcrumb.Item>
                    </Breadcrumb>
                    <BusDetailView type='公安审核' >
                        <div style={divStyle}>
@@ -304,13 +307,75 @@
                            <Row type="flex" align='middle' justify="space-around">
                                <Col span={6} pull={0} style={{ textAlign: 'center' }}><span>审批意见</span></Col>
                                <Col span={18} push={0} >
                                    <TextArea rows={4} placeholder="请输入审批意见" style={{ width: '92%' }} value={opinion || ""} onChange={this.saveInputChange} name='opinion' /></Col>
                                    <TextArea disabled={disabled} rows={4} placeholder="请输入审批意见" style={{ width: '92%' }} value={opinion || ""} onChange={this.saveInputChange} name='opinion' /></Col>
                            </Row>
                        </div>
                        <div style={{ display: 'flex', justifyContent: 'center' }}>
                            <Button style={{ marginRight: '15px', width: '150px' }} type="primary" onClick={this.showModal}>提交</Button>
                            <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.cancle}>返回</Button>
                        </div>
                        {
                            savedate.approveLogs ?
                                <LineView title="审核记录" style="15vh">
                                    {
                                        savedate.approveLogs.length == 1 ?
                                            <table>
                                                <tbody>
                                                    <tr>
                                                        <td className="table-vaule1">检察院审核人</td>
                                                        <td className="table-vaule2">{savedate.approveLogs[0].approverName}</td>
                                                        <td className="table-vaule3">检察院审核时间</td>
                                                        <td className="table-vaule4">{moment(savedate.approveLogs[0].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                    </tr>
                                                    <tr>
                                                        <td className="table-vaule1">检察院回复内容</td>
                                                        <td className="table-vaule2">{savedate.approveLogs[0].opinion}</td>
                                                    </tr>
                                                </tbody>
                                            </table>
                                            : savedate.approveLogs.length == 2 ?
                                                <React.Fragment>
                                                    <table>
                                                        <tbody>
                                                            <tr>
                                                                <td className="table-vaule1">检察院审核人</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[0].approverName}</td>
                                                                <td className="table-vaule3">检察院审核时间</td>
                                                                <td className="table-vaule4">{moment(savedate.approveLogs[0].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                            </tr>
                                                            <tr>
                                                                <td className="table-vaule1">检察院回复内容</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[0].opinion}</td>
                                                            </tr>
                                                        </tbody>
                                                    </table><table>
                                                        <tbody>
                                                            <tr>
                                                                <td className="table-vaule1">公安审核人</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[1].approverName}</td>
                                                                <td className="table-vaule3">公安审核时间</td>
                                                                <td className="table-vaule4">{moment(savedate.approveLogs[1].createTime).format('YYYY/MM/DD HH:mm:ss')}</td>
                                                            </tr>
                                                            <tr>
                                                                <td className="table-vaule1">公安回复内容</td>
                                                                <td className="table-vaule2">{savedate.approveLogs[1].opinion}</td>
                                                            </tr>
                                                        </tbody>
                                                    </table>
                                                </React.Fragment> : ''
                                    }
                                </LineView>
                                : ''
                        }
                        {
                            savedate.status == 2 ?
                                <div style={{ display: 'flex', justifyContent: 'center' }}>
                                    <Button style={{ marginRight: '15px', width: '150px' }} type="primary" onClick={this.showModal}>提交</Button>
                                    <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.cancle}>返回</Button>
                                </div>
                                :
                                <div style={{ display: 'flex', justifyContent: 'center' }}>
                                    <Button style={{ marginLeft: '15px', width: '150px' }} onClick={this.cancle}>返回</Button>
                                </div>
                        }
                    </BusDetailView>
SunshineLnsMinApp/app.js
@@ -10,8 +10,8 @@
  globalData: {
    userInfo: null,
    pageData: {},
    url: 'https://nsjcy.hugeinfo.com.cn/nsjc-charge',
    // url: 'http://1p885086k1.iok.la/nsjc-charge',
    // url: 'https://nsjcy.hugeinfo.com.cn/nsjc-charge',
    url: 'http://1p885086k1.iok.la/nsjc-charge',
    // url: 'http://192.168.0.31:8085/nsjc-charge',
    imgUrl: 'https://nsjcy.hugeinfo.com.cn/nsjc-charge',
    // url: 'http://nsjc.vaiwan.com/nsjc-charge',
SunshineLnsMinApp/pages/createSub/createSub.js
@@ -9,7 +9,9 @@
  data: {
    question: {},
    confirm: true,
    value1:''
    value1: '',
    answer: [],
    id: ''
  },
  // 去单选页面
  toRadio(e) {
@@ -27,6 +29,48 @@
  },
  // 提交信息
  submit() {
    console.log(this.data.question)
    var list = this.data.question.psqList.map(({
      questionId,
      questionItemId,
      objectId,
      questionnaireId
    }) => ({
      questionId,
      questionItemId,
      objectId,
      questionnaireId
    }))
    console.log(list)
    var that = this;
    wx.request({
      url: app.globalData.url + '/api/question/submitResult',
      data: list,
      method: 'POST',
      header: {
        "Content-Type": "application/json"
      },
      success: function(res) {
        if (res.data.code == 0) {
          wx.showToast({
            title: '提交成功!',
            icon: 'success',
            duration: 2000
          })
          setTimeout(function() {
            wx.reLaunch({
              url: '../yshjqyfw/yshjqyfw',
            })
          }, 2000)
        } else {
          wx.showModal({
            title: '提示',
            content: "提交失败!"
          })
        }
      }
    })
    // if ($v.psqList.length == 0) {
    //   wx.showToast({
    //     title: '你还没有创建题目',
@@ -35,14 +79,14 @@
    //   });
    //   return;
    // }
    wx.showToast({
      title: '提交成功!',
      icon: 'success',
      duration: 2000
    }, wx.reLaunch({
      url: '../yshjqyfw/yshjqyfw',
    }))
    // wx.showToast({
    //   title: '提交成功!',
    //   icon: 'success',
    //   duration: 2000
    // }, wx.reLaunch({
    //   url: '../yshjqyfw/yshjqyfw',
    // }))
  },
  // 发布信息
  publish() {
@@ -93,6 +137,7 @@
        if (res.data.code == 0) {
          console.log(res)
          that.setData({
            id: res.data.data.id,
            [_m]: {
              "paper": {
                "title": res.data.data.title,
@@ -155,16 +200,23 @@
  onChange1(e) {
    var index = e.currentTarget.dataset['index'];
    var userinfo = wx.getStorageSync("user");
    var questionId = e.currentTarget.dataset['questionId'];
    const {
      value
    } = e.detail;
    console.log('checkbox', e, '索引', index);
    console.log('value', value);
    console.log('questionId', questionId);
    console.log('this.data.question', this.data.question);
    const data = this.data.question.psqList[index].value || [];
    console.log(data)
    this.data.question.psqList[index].value = value
    this.data.question.psqList[index].questionItemId = this.data.question.psqList[index].optionsId[this.data.question.psqList[index].options.indexOf(value)]
    this.data.question.psqList[index].objectId = userinfo.id
    this.data.question.psqList[index].questionnaireId = this.data.id
    console.log('this.data.question', this.data.question)
    this.setData({
      question: this.data.question
@@ -173,6 +225,8 @@
  onChange: function(e) {
    var index = e.currentTarget.dataset['index'];
    var userinfo = wx.getStorageSync("user");
    var questionId = e.currentTarget.dataset['questionId'];
    const {
      value
    } = e.detail;
@@ -182,6 +236,9 @@
    const current = idx === -1 ? [...data, value] : data.filter((n) => n !== value)
    console.log('current', current);
    this.data.question.psqList[index].value = current
    this.data.question.psqList[index].questionItemId = this.data.question.psqList[index].optionsId[this.data.question.psqList[index].options.indexOf(value)]
    this.data.question.psqList[index].objectId = userinfo.id
    this.data.question.psqList[index].questionnaireId = this.data.id
    this.setData({
      question: this.data.question
    })
SunshineLnsMinApp/pages/createSub/createSub.wxml
@@ -13,13 +13,13 @@
        </view>
      </view>
      <view class="questionA">
        <wux-radio-group name="a" data-index="{{index}}" value="{{ item.value || [] }}" bind:change="onChange1" wx:if="{{item.type == 'radio'}}">
          <wux-radio color="positive" title="{{item}}" value="{{item}}" wx:for="{{item.options}}" wx:key="{{index}}">
        <wux-radio-group name="a" data-index="{{index}}" data-questionId="{{item.questionId}}" value="{{ item.value || [] }}" bind:change="onChange1" wx:if="{{item.type == 'radio'}}">
          <wux-radio color="positive" title="{{item}}" data-index="{{index}}" value="{{item}}" wx:for="{{item.options}}" wx:key="{{index}}">
            {{item}}
          </wux-radio>
        </wux-radio-group>
        <wux-checkbox-group name="a" data-index="{{index}}" value="{{ item.value || [] }}" bind:change="onChange" wx:if="{{item.type == 'checkbox'}}">
        <wux-checkbox-group name="a" data-index="{{index}}" data-questionId="{{item.questionId}}" value="{{ item.value || [] }}" bind:change="onChange" wx:if="{{item.type == 'checkbox'}}">
          <wux-checkbox color="positive" title="{{item}}" value="{{item}}" wx:for="{{item.options}}" wx:key="{{index}}">
            {{item}}
          </wux-checkbox>
SunshineLnsMinApp/pages/rzcx/rzcx.wxss
@@ -116,7 +116,7 @@
  font-size: 14px;
  color: #333;
  margin-right: auto;
  width: 20%;
  width: 26%;
}
.publicSnapshot-main span:nth-child(3) {
SunshineLnsMinApp/pages/xsjb/xsjb.js
@@ -32,13 +32,13 @@
    evalList: {},
    disabled: true,
    showInfo: false,
    id:''
    id: ''
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  onLoad: function(options) {
    const id = options.id || 'new';
    let that = this;
    var userinfo = wx.getStorageSync("user");
@@ -49,22 +49,23 @@
      data: {
        id,
      },
      success: function (res) {
      success: function(res) {
        console.log('res', res);
        var dataSet = res.data;
        var evalList1000 = dataSet.attachments || [];
        var evalList1000 = dataSet.attachmentList || [];
        var evalList = {
          evalList1000,
        };
        for (var i in evalList) {
          evalList[i] = evalList[i].map(({
            imgPath: pic,
            attachmentId: id
            id
          }) => ({
            pic,
            pic: app.globalData.url + '/api/v1/attachment/image/' + id,
            id
          }))
        }
        console.log(evalList)
        const data = res.data || {}
        if (options.id) {
          that.setData({
@@ -112,29 +113,29 @@
  onSubmit() {
    console.log(this.data.thisData)
    if(!this.data.thisData.tipoffObject){
    if (!this.data.thisData.tipoffObject) {
      return app.showModal("请填写举报对象!");
    }
    if(!this.data.thisData.tipoffAddress){
    if (!this.data.thisData.tipoffAddress) {
      return app.showModal("请填写发生地!");
    }
    if(!this.data.thisData.tipoffContent){
    if (!this.data.thisData.tipoffContent) {
      return app.showModal("请填写具体事项!");
    }
    if(!this.data.evalList){
    if (!this.data.evalList) {
      return app.showModal("请上传证明材料!");
    }
    if(!this.data.thisData.tipoffType){
    if (!this.data.thisData.tipoffType) {
      return app.showModal("请选择方式!");
    }
    if(this.data.thisData.tipoffType=='2'){
      if(!this.data.thisData.createrName){
    if (this.data.thisData.tipoffType == '2') {
      if (!this.data.thisData.createrName) {
        return app.showModal("请填写姓名!");
      }
      if(!this.data.thisData.createrMobile){
      if (!this.data.thisData.createrMobile) {
        return app.showModal("请填写手机号码!");
      }
      if(!this.data.thisData.createrAddress){
      if (!this.data.thisData.createrAddress) {
        return app.showModal("请填写联系方式!");
      }
    }
@@ -145,7 +146,7 @@
      header: {
        "Content-Type": "application/json"
      },
      success: function (res) {
      success: function(res) {
        if (res.data.code == 0) {
          wx.showToast({
            title: '提交成功!',
@@ -161,10 +162,10 @@
  },
  // 选择地理位置
  chooseLocation: function (e) {
  chooseLocation: function(e) {
    const that = this;
    wx.chooseLocation({
      success: function (res) {
      success: function(res) {
        console.log('res', res);
        that.setData({
          thisData: {
@@ -177,7 +178,7 @@
  },
  //添加图片
  joinPicture: function (e) {
  joinPicture: function(e) {
    console.log(e)
    var that = this;
    console.log(that)
@@ -186,13 +187,13 @@
  },
  // 删除图片
  clearImg: function (e) {
  clearImg: function(e) {
    var that = this;
    app.clearImg(e, that);
  },
  //预览图片
  previewImage: function (e) {
  previewImage: function(e) {
    app.previewImage(e);
  },
@@ -205,13 +206,13 @@
      this.setData({
        [key]: e.detail.value,
        [`display${key}`]: e.detail.label,
        showInfo:true,
        showInfo: true,
        thisData: {
          ...this.data.thisData,
          [key]: e.detail.value,
        }
      });
    }else{
    } else {
      this.setData({
        [key]: e.detail.value,
        [`display${key}`]: e.detail.label,
SunshineLnsMinApp/pages/xsjb/xsjb.wxml
@@ -50,7 +50,7 @@
            <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}}" class="{{imgdisabled? 'displayNone':'activity-uploadImag-del'}}" bindtap='clearImg' data-index="{{index}}" id="{{item.id}}" data-associatetypeid="{{1000}}"></image>
                    <image src="{{del}}" class="{{disabled? 'displayNone':'activity-uploadImag-del'}}" bindtap='clearImg' data-index="{{index}}" id="{{item.id}}" data-associatetypeid="{{1000}}"></image>
                </view>
                <view bindtap="joinPicture" data-index="{{0}}" data-associatetypeid="{{1000}}">
                    <image class="{{disabled? 'educt_upload_add activity-uploadImag-icon':'displayNone activity-uploadImag-icon'}}" src="{{add}}"></image>
SunshineLnsMinApp/pages/yshjqyfw/yshjqyfw.js
@@ -72,7 +72,7 @@
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/question/publicMsgQuery',
      url: app.globalData.url + '/api/article/publicMsgQuery',
      data: {
        page: 1,
        size: 1000,
SunshineLnsMinApp/pages/zdyf/zdyf.js
@@ -21,7 +21,7 @@
    var that = this;
    wx.showLoading();
    wx.request({
      url: app.globalData.url + '/api/question/publicMsgQuery',
      url: app.globalData.url + '/api/article/publicMsgQuery',
      data: {
        page: 1,
        size: 1000,
SunshineLnsMinApp/pages/zhghInfo/zhghInfo.js
@@ -13,19 +13,19 @@
    id: "",
    status: 4,
    disabled: false,
    taskReport: ''
    socialTaskObject: {}
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  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) {
      success: function(res) {
        wx.hideLoading();
        console.log('res', res);
        if (res.data.code == 0) {
@@ -37,14 +37,15 @@
          };
          for (var i in evalList) {
            evalList[i] = evalList[i].map(({
              imgPath: pic,
              attachmentId: id
              url: pic,
              uid: id
            }) => ({
              pic,
              id
            }))
          }
          console.log('48', evalList)
          console.log('48', res.data.data.status)
          that.setData({
            data: {
              ...res.data.data,
@@ -52,11 +53,13 @@
              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 ? '结束' : '(未知)',
            },
            disabled: res.data.data.status == 2 ? true : false,
            id: res.data.data.id,
            evalList,
            taskReport: res.data.data.taskReport || ''
            taskReport: res.data.data.taskReport || '',
            socialTaskObject: res.data.data.socialTaskObject
          })
        } else {
          wx.showToast({
@@ -67,16 +70,20 @@
    })
  },
  //输入框
  inputChange: function (e) {
  inputChange: function(e) {
    console.log(e)
    var that = this;
    var taskReport = e.detail.value;
    this.setData({
      taskReport
      socialTaskObject: {
        ...that.data.socialTaskObject,
        taskReport
      }
    })
  },
  //添加图片
  joinPicture: function (e) {
  joinPicture: function(e) {
    console.log(e)
    var that = this;
    console.log(that)
@@ -84,13 +91,13 @@
  },
  // 删除图片
  clearImg: function (e) {
  clearImg: function(e) {
    var that = this;
    app.clearImg(e, that);
  },
  //预览图片
  previewImage: function (e) {
  previewImage: function(e) {
    app.previewImage(e);
  },
@@ -128,7 +135,7 @@
              attId: file.id,
              owenId: id
            },
            success: function (res) {
            success: function(res) {
              console.log('res', res);
              that.data.item.supplyAttachmentList = supplyAttachmentList.filter((n) => n.uid !== file.uid)
              that.setData({
@@ -143,36 +150,49 @@
  },
  // 提交
  linkFunction: function () {
  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,
          })
    var data = {
      taskId: that.data.id,
      userId: wx.getStorageSync('id'),
      taskReport: that.data.socialTaskObject.taskReport
    }
    console.log(that.data.data.startTime)
    console.log(app.formatDate(new Date()))
    if (app.formatDate(new Date()) < that.data.data.startTime) {
      wx.hideLoading();
      return app.showModal("任务还未开始,暂时无法提交");
    } else {
      wx.request({
        url: app.globalData.url + '/api/social/submitTask',
        method: 'GET',
        data: {
          taskId: that.data.id,
          userId: wx.getStorageSync('id'),
          taskReport: that.data.socialTaskObject.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,45 +1,49 @@
<!--pages/zhghInfo/zhghInfo.wxml-->
<view class="zhghInfo-bg">
    <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-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>{{data.createTime}}</text>
        </view>
        <view class="zhghInfo-center-title">任务要求</view>
        <view class="zhghInfo-center-txt">{{data.taskRequire}}</view>
        <view class="zhghInfo-center-title">任务流程</view>
        <view class="zhghInfo-center-txt">{{data.taskRequire}}</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">
      <rich-text nodes="{{data.taskRequire}}"></rich-text>
    </view>
    <view class="zhghInfo-center-title">任务流程</view>
    <view class="zhghInfo-center-txt">
      <rich-text nodes="{{data.taskProcess}}"></rich-text>
    </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-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 data-name="taskReport" value='{{data.socialTaskObject.taskReport}}' bindinput="inputChange" disabled="{{disabled}}" 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" value='{{data.socialTaskObject.taskReport}}' bindinput="inputChange" disabled="{{disabled}}" placeholder="学会与老人沟通,耐心积极,心态良好" placeholder-style="color:#9B9B9B;"></textarea>
    </view>
    <view class="{{disabled? 'displayNone':'button-submit'}}" disabled="{{disabled}}" bindtap='linkFunction'>提交</view>
  </view>
</view>
SunshineLnsMinApp/pages/zhgk/zhgk.js
@@ -1,31 +1,89 @@
// pages/zhgk/zhgk.js
var app = getApp()
var WxParse = require('../wxParse/wxParse.js');
Page({
  /**
   * 页面的初始数据
   */
  data: {
    user: app.globalData.imgUrl + '/image/user.svg',
    yes: app.globalData.imgUrl + '/image/yes.svg',
    add: app.globalData.imgUrl + '/image/add.svg',
    del: app.globalData.imgUrl + '/image/del.svg',
    wjgk: './../../images/wjgk.jpg',
    data:{},
    data: {},
    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',
  },
  /**
   * 生命周期函数--监听页面加载
   */
  onLoad: function (options) {
  onLoad: function(options) {
    var that = this;
    wx.request({
      url: app.globalData.url + '/api/article/findByName',
      data: {
        typeName:'未检概况',
        typeName: '未检概况',
      },
      success: function (res) {
      success: function(res) {
        wx.hideLoading();
        console.log(res)
        if (res.data.code == 0) {
          // var article = res.data.data;
          // WxParse.wxParse('article', 'html', article, that, 5);
          var attList = res.data.data.maps;
          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({
            data: res.data.data
            data: res.data.data,
            attList,
          })
        } else {
          wx.showModal({
@@ -37,5 +95,24 @@
    })
  },
  // 预览附件
  open: function (e) {
    var path = e.currentTarget.dataset.path;
    console.log(path)
    wx.downloadFile({
      url: path,
      success: function (res) {
        const filePath = res.tempFilePath
        wx.openDocument({
          filePath: filePath,
          success: function (res) {
            console.log('打开文档成功')
          }
        })
      }
    })
  }
})
SunshineLnsMinApp/pages/zhgk/zhgk.wxml
@@ -1,16 +1,57 @@
<!--pages/zhgk/zhgk.wxml-->
<view class="bg-img padding-tb-xl" style="background-image: url({{wjgk}});background-size:100% auto;height:200px"></view>
<!-- <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">{{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 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>
<div class="boxshadow">
  <div class="PetitionLetters-message1">
    <span></span>
    <span>相关附件</span>
  </div>
  <div class="detail-img">
    <view class="attList" wx:for="{{attList.attList22}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList23}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList24}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList25}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList26}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList27}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList28}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
    <view class="attList" wx:for="{{attList.attList99}}" class="file" wx:key="{{key}}">
      <image src="{{item.iconSrc}}" class="fileIcon" bindtap="open" data-path="{{item.path}}" class="detail-img-top"></image>
      <div class="detail-img-bottom">{{item.name}}</div>
    </view>
  </div>
</div>
<!-- <view class="zhgk-main">
  <view class=" text-lg" style="padding:30rpx 30rpx 0;">
    <text class="zhgk-main-title text-black">指导文件</text>
SunshineLnsMinApp/pages/zhgk/zhgk.wxss
@@ -7,3 +7,82 @@
.zhgk-main-title {
  color: #249eff;
}
.PetitionLetters-message1 {
  display: flex;
  padding: 2vh;
}
.PetitionLetters-message1 span:nth-child(1) {
  border-left: 3px solid #2195ff;
}
.PetitionLetters-message1 span:nth-child(2) {
  padding-left: 1vh;
  font-size: 18px;
  font-weight: bold;
}
.PetitionLetters-textarea {
  font-size: 14px;
}
textarea {
  box-sizing: border-box;
  width: 100%;
  height: 100px;
  display: block;
  position: relative;
  padding: 2vh;
}
.activity-uploadImage {
  display: flex;
  padding: 1vh 2vh;
}
.upload {
  width: 48px;
  height: 48px;
}
.detail-img {
  display: flex;
  flex-direction: columns;
  align-items: center;
  padding: 2vh;
}
.detail-img-top {
  width: 48px;
  height: 48px;
}
.detail-img-bottom {
  font-size: 12px;
  color: #333;
  width: 70px;
  overflow: hidden;
  white-space: nowrap;
  text-overflow: ellipsis;
  text-align: center;
}
.activity-uploadImag-del {
  width: 20px;
  height: 20px;
  position: absolute;
  left: 28px;
}
.educt_hasupload_pic {
  display: flex;
  position: relative;
  padding-right: 1vh;
}
.activity-uploadImag-icon {
  width: 48px;
  height: 48px;
}
SunshineLnsMinApp/pages/zhwj/zhwj.wxml
@@ -6,14 +6,14 @@
<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="cu-avatar round margin-leftll 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="cu-avatar round margin-leftll 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>
@@ -22,14 +22,14 @@
    </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="cu-avatar round margin-leftl 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="cu-avatar round margin-leftl 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>
@@ -38,14 +38,14 @@
    </view>
    <view class="zhwj-list-flex">
        <view class="zhwj-list-flex-l" data-str="rzcx" data-id='new' 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="cu-avatar round margin-leftl 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="pfyy" data-id='new' 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="cu-avatar round margin-leftl 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>
@@ -53,7 +53,7 @@
    </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="cu-avatar round margin-leftl 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>
SunshineLnsMinApp/pages/zhwj/zhwj.wxss
@@ -1,4 +1,5 @@
/* pages/zhwj/zhwj.wxss */
.zhwj-list {
  background-color: #fff;
}
@@ -56,7 +57,11 @@
.zhwj-b-head-title {
  margin-left: 8px;
  font-weight: 600
  font-weight: 600;
}
.margin-leftl {
  margin-left: 20rpx;
}
.zhwj-b-main {