Browse Source

feat: 增加必要的信息提示

lanjianrong 4 years ago
parent
commit
d384f82f4d

+ 1 - 1
src/pages/Contract/Content/Income/components/Modal/index.tsx

@@ -75,7 +75,7 @@ const ContractModal: React.FC<iModalCommonProps> = ({ modalObj: { type, visible,
       okText: '确认解锁'
     },
     return: {
-      title: '添加回款',
+      title: contractType === 'income' ? '添加回款' : '添加支出',
       cancelText: '关闭',
       okText: '确认'
     }

+ 0 - 1
src/pages/Contract/Content/Spending/components/TableContent/index.tsx

@@ -383,7 +383,6 @@ const GCsheet: React.FC<iTableContentPorps> = ({ changeModalType, row, setRow, h
                   contractPaidStore.contract.id && contractPaidStore.contract.status === contractConsts.status.checking ?
                     <>
                       <Button type="primary" size="small" onClick={() => changeModalType('return')} >添加支出</Button>
-
                     </>
                     : null
                 }

+ 13 - 10
src/pages/Management/Setting/components/Modal.tsx

@@ -1,3 +1,4 @@
+import StrengthMeter from '@/components/StrengthMeter'
 import { userStore } from '@/store/mobx'
 import { iUserInfo } from '@/types/setting'
 import consts from '@/utils/consts'
@@ -39,10 +40,6 @@ const UserModal: React.FC<iUserModal> = ({ visible, loading, onCreate, onCancel,
     }
     setDelLoading(false)
   }
-  const pswHandler = () => {
-    const password = generatePsw(12)
-    form.setFieldsValue({ password })
-  }
   return (
     <>
       <Modal
@@ -102,12 +99,18 @@ const UserModal: React.FC<iUserModal> = ({ visible, loading, onCreate, onCancel,
           </Form.Item>
           {
             !userInfo.id ?
-              <Form.Item name="password" label="登录密码" rules={[ { required: true, message: '请输入登录密码' } ]}>
-                <Input.Password
-                  placeholder="密码支持英文数字及符号"
-                  addonAfter={<span className="pi-pd-lr-11" onClick={() => pswHandler()}>随机密码</span>}
-                  iconRender={visible => (visible ? <EyeTwoTone /> : <EyeInvisibleOutlined />)}
-                />
+              <Form.Item name="password" label="登录密码" rules={[ { required: true, message: '请输入登录密码' }, () => ({
+                validator(_, value) {
+                  if (value) {
+                    if (/(?=.*[0-9])(?=.*[a-zA-Z]).{6,30}/.test(value)) {
+                      return Promise.resolve()
+                    }
+                    return Promise.reject('密码必须带有字母与数字的组合且大于6位')
+                  }
+                  return Promise.resolve()
+                }
+              }) ]}>
+                <StrengthMeter />
               </Form.Item>
               : ''
           }

+ 9 - 12
src/pages/Management/Setting/components/PswModal.tsx

@@ -33,10 +33,7 @@ const PswModal: React.FC<iPswModalProps> = ({ visible, onCancel, userInfo: { id,
     form.setFieldsValue({ id, ps_account: account })
   }, [ visible ])
 
-  const handlePsw = () => {
-    const ps_password = generatePsw(12)
-    form.setFieldsValue({ ps_password })
-  }
+
   return (
     <div>
       <Modal
@@ -49,7 +46,7 @@ const PswModal: React.FC<iPswModalProps> = ({ visible, onCancel, userInfo: { id,
         onCancel={onCancel}
         onOk={() => {
           form.validateFields().then((values: any) => {
-            form.setFieldsValue({ ps_password: '' })
+            form.resetFields()
             onCreate(values)
           })
         }}
@@ -68,16 +65,16 @@ const PswModal: React.FC<iPswModalProps> = ({ visible, onCancel, userInfo: { id,
           </Form.Item>
           <Form.Item name="ps_password" label="登录密码" rules={[ { required: true, message: '请输入登录密码' }, () => ({
             validator(_, value) {
-              if (/(?=.*[0-9])(?=.*[a-zA-Z]).{6,30}/.test(value)) {
-                return Promise.resolve()
+              if (value) {
+                if (/(?=.*[0-9])(?=.*[a-zA-Z]).{6,30}/.test(value)) {
+                  return Promise.resolve()
+                }
+                return Promise.reject('密码必须带有字母与数字的组合且大于6位')
               }
-              return Promise.reject('密码必须带有字母与数字的组合且大于6位')
+              return Promise.resolve()
             }
           }) ]}>
-            <StrengthMeter placeholder="密码支持英文数字及符号"
-              addonAfter={<span className="pi-pd-lr-11" onClick={() => handlePsw()}>随机密码</span>}
-              allowClear
-              iconRender={visible => (visible ? <EyeTwoTone /> : <EyeInvisibleOutlined />)} />
+            <StrengthMeter />
 
           </Form.Item>
         </Form>

+ 31 - 26
src/pages/Quality/Content/Info/Detail/components/Modal/index.tsx

@@ -25,29 +25,6 @@ interface iModalObjState {
   auditType: string
 }
 
-const textObj = {
-  start: {
-    title: '提交审批',
-    okText: '确认提交'
-  },
-  delete: {
-    title: '删除巡检',
-    okText: '确认删除'
-  },
-  close: {
-    title: '审批关闭',
-    okText: '确认关闭'
-  },
-  back: {
-    title: '审批退回',
-    okText: '确认退回'
-  },
-  pass: {
-    title: '审批通过',
-    okText: '确认通过'
-  }
-}
-
 
 const AuditModal: React.FC<iAuditModalProps> = props => {
   const [ form ] = Form.useForm()
@@ -99,8 +76,12 @@ const AuditModal: React.FC<iAuditModalProps> = props => {
   }
 
   useEffect(() => {
-    if (visible && isLastAuditor && type === 'pass') {
-      initGroupList()
+    if (visible && type === 'pass') {
+      if(curAuditor.progress === '1') {
+        form.setFieldsValue({ opinion: '已按要求整改完成。' })
+      }
+
+      isLastAuditor && initGroupList()
     }
     if (visible && type === 'back') {
       if (curAuditor.progress === '1') {
@@ -118,6 +99,30 @@ const AuditModal: React.FC<iAuditModalProps> = props => {
     setGroups(data)
   }
 
+
+  const textObj = {
+    start: {
+      title: '提交审批',
+      okText: '确认提交'
+    },
+    delete: {
+      title: '删除巡检',
+      okText: '确认删除'
+    },
+    close: {
+      title: '审批关闭',
+      okText: '确认关闭'
+    },
+    back: {
+      title: '审批退回',
+      okText: '确认退回'
+    },
+    pass: {
+      title: curAuditor.progress === '1' ? '整改完成' : '审批通过',
+      okText: curAuditor.progress === '1' ? '整改完成' : '确认通过'
+    }
+  }
+
   // 初始化审批退回下拉选择框
   const initAuditBackGroup = () => {
     const newGroup: iAccountGroupItem[] = []
@@ -305,7 +310,7 @@ const AuditModal: React.FC<iAuditModalProps> = props => {
         ) : null}
         {type === 'pass' ? (
           <>
-            <Form.Item name="opinion" label="审批意见">
+            <Form.Item name="opinion" label={curAuditor.progress === '1' ? '整改意见' : "审批意见"}>
               <Input.TextArea rows={5} />
             </Form.Item>
             {isLastAuditor && curAuditor.progress === '0' ? (

+ 14 - 5
src/pages/Quality/Content/Info/Detail/index.tsx

@@ -169,6 +169,15 @@ const Detail: React.FC<RouteComponentProps> = props => {
   }, [])
 
   const btnClick = (type: string) => {
+    if (type === 'start') {
+      if (!detail.inspectionDetail || !detail.demand) {
+        return message.error('现场检查情况或处理要求措施不能为空')
+      }
+    }
+    if (type === 'pass' && detail.latestAuditor.progress === '1' && !detail.checkOrder.opinion) {
+
+      return message.error('请填写整改单!')
+    }
     setModalObj({ ...modalObj, auditType: type, auditModal: true })
   }
   const onModalConfirm = async (values?: object) => {
@@ -193,11 +202,11 @@ const Detail: React.FC<RouteComponentProps> = props => {
     if (modalObj.auditType === 'pass' || modalObj.auditType === 'back') {
       payload.id = detail.latestAuditor.id
       if (detail.latestAuditor.progress === '1') {
-        if (!detail.checkOrder.opinion) {
-          return message.error('请填写整改单!')
-        } else {
-          payload.rectifiedInfo = detail.checkOrder.opinion
-        }
+        // if (!detail.checkOrder.opinion) {
+        //   return message.error('请填写整改单!')
+        // } else {
+        // }
+        payload.rectifiedInfo = detail.checkOrder.opinion
       }
     }
 

+ 11 - 5
src/pages/Safe/Content/Info/Detail/index.tsx

@@ -175,6 +175,12 @@ const Detail: React.FC<RouteComponentProps> = props => {
         return message.error('现场检查情况或处理要求措施不能为空')
       }
     }
+
+    if (type === 'pass' && detail.latestAuditor.progress === '1' && !detail.checkOrder.opinion) {
+
+      return message.error('请填写整改单!')
+    }
+
     setModalObj({ ...modalObj, auditType: type, auditModal: true })
   }
   const onModalConfirm = (values?: object) => {
@@ -199,11 +205,11 @@ const Detail: React.FC<RouteComponentProps> = props => {
     if (modalObj.auditType === 'pass' || modalObj.auditType === 'back') {
       payload.id = detail.latestAuditor.id
       if (detail.latestAuditor.progress === '1') {
-        if (!detail.checkOrder.opinion) {
-          return message.error("请填写整改单!")
-        } else {
-          payload.rectifiedInfo = detail.checkOrder.opinion
-        }
+        // if (!detail.checkOrder.opinion) {
+        //   return message.error("请填写整改单!")
+        // } else {
+        // }
+        payload.rectifiedInfo = detail.checkOrder.opinion
       }
     }
 

+ 3 - 0
src/utils/util.ts

@@ -173,6 +173,9 @@ const generatePsw = (len: number): string => {
     const x = Math.floor(Math.random() * pasArr.length)
     password += pasArr[x]
   }
+  if (!/\d/.test(password)) {
+    password += '0'
+  }
   return password
 }
 // 用于审批日志的日期的显示