Yansen 2 年之前
父節點
當前提交
5c384a12b0

+ 1
- 1
project.config.json 查看文件

2
   "miniprogramRoot": "./dist",
2
   "miniprogramRoot": "./dist",
3
   "projectname": "civilized-miniapp",
3
   "projectname": "civilized-miniapp",
4
   "description": "文明城市小程序",
4
   "description": "文明城市小程序",
5
-  "appid": "wxe44244d1a5ea3364",
5
+  "appid": "wx39d721c54a0a11c4",
6
   "setting": {
6
   "setting": {
7
     "urlCheck": true,
7
     "urlCheck": true,
8
     "es6": false,
8
     "es6": false,

+ 9
- 3
src/components/IssueCard/index.jsx 查看文件

2
 import Taro from '@tarojs/taro';
2
 import Taro from '@tarojs/taro';
3
 import dayjs from 'dayjs';
3
 import dayjs from 'dayjs';
4
 import { View, ScrollView, RichText, Image, Text } from '@tarojs/components';
4
 import { View, ScrollView, RichText, Image, Text } from '@tarojs/components';
5
-import { getIssueStatus } from '@/utils/biz';
5
+import { APPLY_READY, getIssueStatus } from '@/utils/biz';
6
 import icon from '@/assets/icons/marker.png';
6
 import icon from '@/assets/icons/marker.png';
7
 import style from './style.module.less';
7
 import style from './style.module.less';
8
 
8
 
16
 
16
 
17
 export default (props) => {
17
 export default (props) => {
18
 
18
 
19
-  const { detail, onClick, color, stText } = props;
19
+  const { issue, applyInfo, onClick, color, stText } = props;
20
+  const detail = issue || applyInfo;
20
 
21
 
21
   const [
22
   const [
22
     content,
23
     content,
26
   ] = React.useMemo(() => {
27
   ] = React.useMemo(() => {
27
     if (!detail) return [];
28
     if (!detail) return [];
28
 
29
 
29
-    const {value : bizStatus = 0, label : statusText} = getIssueStatus(detail);
30
+    // detail 有可能是申请信息
31
+    const {value : bizStatus = 0, label : statusText} = getIssueStatus({
32
+      ...detail || {},
33
+      processNode: detail?.processNode || detail?.applyType,
34
+      processStatus: detail?.processStatus || detail?.verifyStatus || APPLY_READY,
35
+    });
30
 
36
 
31
     return [
37
     return [
32
       (detail.issueContent || detail.content || '').replace('\r\n', '<br>').replace('\n', '<br>'),
38
       (detail.issueContent || detail.content || '').replace('\r\n', '<br>').replace('\n', '<br>'),

+ 2
- 3
src/pages/apply/list/index.jsx 查看文件

8
 import { getTaIssueApply } from '@/services/taissueapply';
8
 import { getTaIssueApply } from '@/services/taissueapply';
9
 import { ROLE_MANAGER } from '@/utils/user';
9
 import { ROLE_MANAGER } from '@/utils/user';
10
 import { useModel } from '@/store';
10
 import { useModel } from '@/store';
11
-import { getIssueStatus } from '@/utils/biz';
12
 
11
 
13
 export default (props) => {
12
 export default (props) => {
14
 
13
 
53
             request={getTaIssueApply}
52
             request={getTaIssueApply}
54
             params={{applyType, sourceType: 'inspector'}}
53
             params={{applyType, sourceType: 'inspector'}}
55
             renderItem={(item) => (
54
             renderItem={(item) => (
56
-              <Card key={item.issueId} detail={item} stText={title} onClick={() => onClick(item)} />
55
+              <Card key={item.issueId} applyInfo={item} stText={title} onClick={() => onClick(item)} />
57
             )}
56
             )}
58
           />
57
           />
59
         </Tab>
58
         </Tab>
62
             request={getTaIssueApply}
61
             request={getTaIssueApply}
63
             params={{applyType, sourceType: 'feedback'}}
62
             params={{applyType, sourceType: 'feedback'}}
64
             renderItem={(item) => (
63
             renderItem={(item) => (
65
-              <Card key={item.issueId} detail={item} stText={title} onClick={() => onClick(item)} />
64
+              <Card key={item.issueId} applyInfo={item} stText={title} onClick={() => onClick(item)} />
66
             )}
65
             )}
67
           />
66
           />
68
         </Tab>
67
         </Tab>

+ 1
- 1
src/pages/feedback/issuelist/index.jsx 查看文件

32
         request={getTaFeedback}
32
         request={getTaFeedback}
33
         params={{bizStatus, isMine: true}}
33
         params={{bizStatus, isMine: true}}
34
         renderItem={(item) => (
34
         renderItem={(item) => (
35
-          <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
35
+          <Card key={item.issueId} issue={item} onClick={() => onClick(item)} />
36
         )}
36
         )}
37
       />
37
       />
38
     </Page>
38
     </Page>

+ 1
- 1
src/pages/home/index.jsx 查看文件

13
 const menus = {
13
 const menus = {
14
   // 督察员
14
   // 督察员
15
   [ROLE_INSPECTOR]: [
15
   [ROLE_INSPECTOR]: [
16
-    { icon: 'icon9', text: '我的上报', link: '/pages/issue/list/index' },
16
+    { icon: 'icon9', text: '我的上报', link: '/pages/issue/list/index?mine=true' },
17
     { icon: 'icon11', text: '消息通知', link: '/pages/message/list/index' },
17
     { icon: 'icon11', text: '消息通知', link: '/pages/message/list/index' },
18
     { icon: 'icon10', text: '模拟测评', link: '/pages/check/list/index' },
18
     { icon: 'icon10', text: '模拟测评', link: '/pages/check/list/index' },
19
   ],
19
   ],

+ 1
- 1
src/pages/issue/edit/components/Assigned.jsx 查看文件

32
     // 先提交修改
32
     // 先提交修改
33
     putTaIssue(issue.issueId, data).then(() => {      
33
     putTaIssue(issue.issueId, data).then(() => {      
34
       // 再提交交办
34
       // 再提交交办
35
-      postIssueAssigned({data, nextOrg: data.orgId}).then(() => {
35
+      postIssueAssigned({ ... data, nextOrg: data.orgId}).then(() => {
36
         setLoading1(false);
36
         setLoading1(false);
37
         Taro.navigateBack({delta: 1});
37
         Taro.navigateBack({delta: 1});
38
       }).catch(() => {
38
       }).catch(() => {

+ 11
- 7
src/pages/issue/list/index.jsx 查看文件

14
 export default (props) => {
14
 export default (props) => {
15
   // const { user } = useModel('user');
15
   // const { user } = useModel('user');
16
 
16
 
17
+  const router = Taro.useRouter();
18
+  const { mine = '' } = router.params;
19
+
17
   const onClick = (item) => {
20
   const onClick = (item) => {
18
     Taro.navigateTo({
21
     Taro.navigateTo({
19
       url: `/pages/issue/edit/index?id=${item.issueId}`
22
       url: `/pages/issue/edit/index?id=${item.issueId}`
26
         <Tab title="全部">
29
         <Tab title="全部">
27
           <PowerList
30
           <PowerList
28
             request={getTaIssue}
31
             request={getTaIssue}
32
+            params={{ mine }}
29
             renderItem={(item) => (
33
             renderItem={(item) => (
30
-              <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
34
+              <Card key={item.issueId} issue={item} onClick={() => onClick(item)} />
31
             )}
35
             )}
32
           />
36
           />
33
         </Tab>
37
         </Tab>
34
         <Tab title="未交办">
38
         <Tab title="未交办">
35
           <PowerList
39
           <PowerList
36
             request={getTaIssue}
40
             request={getTaIssue}
37
-            params={{bizStatus: PROCESS_START}}
41
+            params={{mine, bizStatus: PROCESS_START}}
38
             renderItem={(item) => (
42
             renderItem={(item) => (
39
-              <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
43
+              <Card key={item.issueId} issue={item} onClick={() => onClick(item)} />
40
             )}
44
             )}
41
           />
45
           />
42
         </Tab>
46
         </Tab>
43
         <Tab title="已交办">
47
         <Tab title="已交办">
44
           <PowerList
48
           <PowerList
45
             request={getTaIssue}
49
             request={getTaIssue}
46
-            params={{bizStatus: PROCESS_ASSIGNED}}
50
+            params={{mine, bizStatus: PROCESS_ASSIGNED}}
47
             renderItem={(item) => (
51
             renderItem={(item) => (
48
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
52
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
49
             )}
53
             )}
52
         <Tab title="已办结">
56
         <Tab title="已办结">
53
           <PowerList
57
           <PowerList
54
             request={getTaIssue}
58
             request={getTaIssue}
55
-            params={{bizStatus: PROCESS_END}}
59
+            params={{mine, bizStatus: PROCESS_END}}
56
             renderItem={(item) => (
60
             renderItem={(item) => (
57
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
61
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
58
             )}
62
             )}
61
         <Tab title="已逾期">
65
         <Tab title="已逾期">
62
           <PowerList
66
           <PowerList
63
             request={getTaIssue}
67
             request={getTaIssue}
64
-            params={{bizStatus: 'expired'}}
68
+            params={{mine, bizStatus: 'expired'}}
65
             renderItem={(item) => (
69
             renderItem={(item) => (
66
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
70
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
67
             )}
71
             )}
70
         <Tab title="已打回">
74
         <Tab title="已打回">
71
           <PowerList
75
           <PowerList
72
             request={getTaIssue}
76
             request={getTaIssue}
73
-            params={{bizStatus: 'reject'}}
77
+            params={{mine, bizStatus: 'reject'}}
74
             renderItem={(item) => (
78
             renderItem={(item) => (
75
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
79
               <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
76
             )}
80
             )}

+ 2
- 2
src/pages/issue/list2/index.jsx 查看文件

39
             request={getTaIssue}
39
             request={getTaIssue}
40
             params={{bizStatus, mine, sourceType: 'inspector'}}
40
             params={{bizStatus, mine, sourceType: 'inspector'}}
41
             renderItem={(item) => (
41
             renderItem={(item) => (
42
-              <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
42
+              <Card key={item.issueId} issue={item} onClick={() => onClick(item)} />
43
             )}
43
             )}
44
           />
44
           />
45
         </Tab>
45
         </Tab>
48
             request={getTaIssue}
48
             request={getTaIssue}
49
             params={{bizStatus, mine, sourceType: 'feedback'}}
49
             params={{bizStatus, mine, sourceType: 'feedback'}}
50
             renderItem={(item) => (
50
             renderItem={(item) => (
51
-              <Card key={item.issueId} detail={item} onClick={() => onClick(item)} />
51
+              <Card key={item.issueId} issue={item} onClick={() => onClick(item)} />
52
             )}
52
             )}
53
           />
53
           />
54
         </Tab>
54
         </Tab>

+ 15
- 3
src/pages/org/issue/detail/components/Apply.jsx 查看文件

6
 import { getDateStr } from '@/utils/date';
6
 import { getDateStr } from '@/utils/date';
7
 import { postTaIssueApply } from '@/services/taissueapply';
7
 import { postTaIssueApply } from '@/services/taissueapply';
8
 import { warn } from '@/utils/message';
8
 import { warn } from '@/utils/message';
9
+import {
10
+  PROCESS_APPLY_DELAY,
11
+  PROCESS_APPLY_END,
12
+  PROCESS_APPLY_REJECT,
13
+  PROCESS_APPLY_VERIFY
14
+} from '@/utils/biz';
9
 
15
 
10
 const today = new Date();
16
 const today = new Date();
11
 export default (props) => {
17
 export default (props) => {
37
   }
43
   }
38
 
44
 
39
   const onClick = () => {
45
   const onClick = () => {
40
-    if (applyType == 'org-verify' || applyType == 'end') {
46
+    if (applyType == PROCESS_APPLY_VERIFY || applyType == PROCESS_APPLY_END) {
41
       onSubmit();
47
       onSubmit();
42
     } else {
48
     } else {
43
       setShow(true);
49
       setShow(true);
47
   const onSubmit = () => {
53
   const onSubmit = () => {
48
     try {
54
     try {
49
       warn(!orgIssue || !orgIssue.issueId, '未找到问题单');
55
       warn(!orgIssue || !orgIssue.issueId, '未找到问题单');
50
-      if (applyType === 'delay') {
56
+
57
+      if (applyType == PROCESS_APPLY_VERIFY || applyType == PROCESS_APPLY_END) {
58
+        warn(!orgIssue.attachList || !orgIssue.attachList.length, '请上传照片');
59
+        warn(!orgIssue.result, '请填写整改结果');
60
+      }
61
+
62
+      if (applyType === PROCESS_APPLY_DELAY) {
51
         warn(!formData.content, '请选择延期时间');
63
         warn(!formData.content, '请选择延期时间');
52
       }
64
       }
53
 
65
 
54
-      if (applyType == 'delay' || applyType == 'reject') {
66
+      if (applyType == PROCESS_APPLY_DELAY || applyType == PROCESS_APPLY_REJECT) {
55
         warn(!formData.remark, '请填写理由说明');
67
         warn(!formData.remark, '请填写理由说明');
56
       }
68
       }
57
     } catch (e) {
69
     } catch (e) {

+ 11
- 9
src/pages/org/issue/detail/index.jsx 查看文件

6
 import Uploader from '@/components/Uploader/index';
6
 import Uploader from '@/components/Uploader/index';
7
 import { getTaIssueById } from '@/services/taissue';
7
 import { getTaIssueById } from '@/services/taissue';
8
 import { getTaOrgIssueByIssueId } from '@/services/taorgissue';
8
 import { getTaOrgIssueByIssueId } from '@/services/taorgissue';
9
-import { PROCESS_START } from '@/utils/biz';
9
+import { PROCESS_APPLY_END, PROCESS_START, PROCESS_END, PROCESS_APPLY_VERIFY, PROCESS_APPLY_DELAY, PROCESS_APPLY_REJECT } from '@/utils/biz';
10
 
10
 
11
 import IssueInfo from '../../components/issue-info';
11
 import IssueInfo from '../../components/issue-info';
12
 import Apply from './components/Apply';
12
 import Apply from './components/Apply';
29
   const [
29
   const [
30
     readOnly,
30
     readOnly,
31
     statusTxt,
31
     statusTxt,
32
-    showEditBtn,
32
+    showApplyVerify,
33
+    showApplyEnd,
33
   ] = React.useMemo(() => {
34
   ] = React.useMemo(() => {
34
     if (!orgIssue.issueId) return [];
35
     if (!orgIssue.issueId) return [];
35
 
36
 
36
     return [
37
     return [
37
       issue?.applyId,
38
       issue?.applyId,
38
       status[issue.applyType],
39
       status[issue.applyType],
39
-      orgIssue.processStatus == PROCESS_START && !issue?.applyId
40
+      orgIssue.processStatus == PROCESS_START,
41
+      orgIssue.processStatus != PROCESS_END && orgIssue.processStatus != PROCESS_APPLY_END ,
40
     ]
42
     ]
41
 
43
 
42
   }, [issue, orgIssue]);
44
   }, [issue, orgIssue]);
98
           <View style={{marginTop: '20px', padding: 'var(--main-space)'}}>
100
           <View style={{marginTop: '20px', padding: 'var(--main-space)'}}>
99
             <View>
101
             <View>
100
               {
102
               {
101
-                showEditBtn &&
103
+                showApplyEnd &&
102
                   // <Button block type="primary">保存修改</Button> :
104
                   // <Button block type="primary">保存修改</Button> :
103
-                  <Apply block type="primary" applyType="end" orgIssue={orgIssue}>申请办结</Apply>
105
+                  <Apply block type="primary" applyType={PROCESS_APPLY_END} orgIssue={orgIssue}>申请办结</Apply>
104
               }
106
               }
105
             </View>
107
             </View>
106
             {
108
             {
107
-              showEditBtn && (
109
+              showApplyVerify && (
108
                 <View style={{marginTop: '20px'}}>
110
                 <View style={{marginTop: '20px'}}>
109
-                  <Apply block type="primary" applyType="org-verify" orgIssue={orgIssue}>申请审核</Apply>
111
+                  <Apply block type="primary" applyType={PROCESS_APPLY_VERIFY} orgIssue={orgIssue}>申请审核</Apply>
110
                 </View>
112
                 </View>
111
               )
113
               )
112
             }
114
             }
116
                 plain
118
                 plain
117
                 hairline
119
                 hairline
118
                 type="info"
120
                 type="info"
119
-                applyType="delay"
121
+                applyType={PROCESS_APPLY_DELAY}
120
                 orgIssue={orgIssue}
122
                 orgIssue={orgIssue}
121
               >申请延期</Apply>
123
               >申请延期</Apply>
122
               <Apply
124
               <Apply
124
                 plain
126
                 plain
125
                 hairline
127
                 hairline
126
                 type="danger"
128
                 type="danger"
127
-                applyType="reject"
129
+                applyType={PROCESS_APPLY_REJECT}
128
                 orgIssue={orgIssue}
130
                 orgIssue={orgIssue}
129
                 style={{marginLeft: 'var(--main-space)'}}
131
                 style={{marginLeft: 'var(--main-space)'}}
130
               >申请驳回</Apply>
132
               >申请驳回</Apply>

+ 2
- 2
src/pages/org/issue/list/index.jsx 查看文件

39
             request={getTaOrgIssue}
39
             request={getTaOrgIssue}
40
             params={{bizStatus, sourceType: 'inspector'}}
40
             params={{bizStatus, sourceType: 'inspector'}}
41
             renderItem={(item) => (
41
             renderItem={(item) => (
42
-              <Card key={item.issueId} detail={item} stText={title} color={color} onClick={() => onClick(item)} />
42
+              <Card key={item.issueId} issue={item} stText={title} color={color} onClick={() => onClick(item)} />
43
             )}
43
             )}
44
           />
44
           />
45
         </Tab>
45
         </Tab>
48
             request={getTaOrgIssue}
48
             request={getTaOrgIssue}
49
             params={{bizStatus, sourceType: 'feedback'}}
49
             params={{bizStatus, sourceType: 'feedback'}}
50
             renderItem={(item) => (
50
             renderItem={(item) => (
51
-              <Card key={item.issueId} detail={item} stText={title} color={color} onClick={() => onClick(item)} />
51
+              <Card key={item.issueId} issue={item} stText={title} color={color} onClick={() => onClick(item)} />
52
             )}
52
             )}
53
           />
53
           />
54
         </Tab>
54
         </Tab>

+ 1
- 0
src/utils/biz.js 查看文件

30
 
30
 
31
 
31
 
32
 export function getIssueStatus(taIssue) {
32
 export function getIssueStatus(taIssue) {
33
+  console.log('------taIssue-----', taIssue)
33
   if (taIssue.processStatus === APPLY_REJECT) {
34
   if (taIssue.processStatus === APPLY_REJECT) {
34
     return {
35
     return {
35
       value: 4,
36
       value: 4,