فهرست منبع

软件锁升级

outaozhen 5 سال پیش
والد
کامیت
1ee0de02f5

+ 2 - 25
src/components/PopContent/Contacts/ContanctTabList.jsx

@@ -3,7 +3,7 @@ import React, { useEffect, useState } from 'react'
 import consts from '@/consts'
 import SvgIcon from '@/components/SvgIcon'
 import { apiAddService } from '@/services/contact'
-import AddRecord from '@/components/PopContent/Contacts/AddRecord'
+import AddRecord from './AddRecord'
 import { useDispatch } from 'dva'
 // import { connect } from 'umi'
 
@@ -33,31 +33,8 @@ const ContanctTabList = ({ clientid }) => {
     })
     // await initData()
   }
-  useEffect(() => {
-    // const curinglisData = () => {
-    //   const { dispatch } = props
-    //   dispatch({
-    //     type: 'curinglist/fetch'
-    //   }) // 派发出这个action就会调用contact中的fetch函数,然后就会请求数据
-    // }
-    // curinglisData()
-  }, [])
-  // const { curinglistName } = props
-  // const curinglist = [...curinglistName.list]
-  // console.log(curinglist)
+  useEffect(() => {}, [])
   const { TabPane } = Tabs
-  // const curingcolumns = [
-  //   {
-  //     title: '产品',
-  //     dataIndex: 'productname',
-  //     key: 'productname'
-  //   },
-  //   {
-  //     title: '专业版',
-  //     dataIndex: 'majorcont',
-  //     key: 'majorcont'
-  //   }
-  // ]
   return (
     <div>
       <div className="zh-pd-left-15">

+ 11 - 0
src/components/PopContent/Locks/LockRecover.jsx

@@ -0,0 +1,11 @@
+import React from 'react'
+
+const LockRecover = () => {
+  return (
+    <div>
+      <a>收回</a>
+    </div>
+  )
+}
+
+export default LockRecover

+ 11 - 0
src/components/PopContent/Locks/LockRemarks.jsx

@@ -0,0 +1,11 @@
+import React from 'react'
+
+const LockRemarks = () => {
+  return (
+    <div>
+      <a></a>备注
+    </div>
+  )
+}
+
+export default LockRemarks

+ 11 - 0
src/components/PopContent/Locks/LockReplace.jsx

@@ -0,0 +1,11 @@
+import React from 'react'
+
+const LockReplace = () => {
+  return (
+    <div>
+      <a>更换</a>
+    </div>
+  )
+}
+
+export default LockReplace

+ 7 - 0
src/components/PopContent/Locks/LockSales.jsx

@@ -0,0 +1,7 @@
+import React from 'react'
+
+const LockSales = () => {
+  return <div>借出</div>
+}
+
+export default LockSales

+ 50 - 3
src/components/PopContent/Locks/LockTabList.jsx

@@ -1,11 +1,47 @@
-import React from 'react'
+import React, { useState } from 'react'
 import { Row, Col, List, Tabs, Button } from 'antd'
 import { dayjsFormat } from '@/utils/utils'
+import { apiSoftwareAddLonglelog } from '@/services/lock'
 import { ProductLabel } from '@/pages/Product/Lock/Lockstore'
+import LockUpgrade from './LockUpgrade'
 
 const LockTabList = props => {
   const { longleLog } = props
+  const [state, setState] = useState({
+    visible: false
+  })
   const { TabPane } = Tabs
+  const servicelogEnum = {
+    1: '生成',
+    2: '接收',
+    3: '借出',
+    4: '销售',
+    5: '升级',
+    6: '更换',
+    7: '收回',
+    8: '备注',
+    9: '赠送'
+  }
+  const [addLonglelog, setAddLonglelog] = useState({
+    visible: false,
+    loading: false
+  })
+
+  const handleAddLonglelog = async values => {
+    setAddLonglelog({ ...addLonglelog, loading: true })
+    const { code = -1 } = await apiSoftwareAddLonglelog({ ...values, clientid })
+    if (code === consts.RET_CODE.SUCCESS) {
+      message.success('新增成功')
+      setState({ ...state, data: values })
+    }
+    // 请求完了
+    setAddLonglelog({ ...addLonglelog, loading: false, visible: false })
+    // 刷新数据
+    // dispatch({
+    //   type: 'refresh/commitAction',
+    //   payload: 'contact'
+    // })
+  }
   return (
     <div>
       <div className="zh-pd-left-15">
@@ -23,7 +59,7 @@ const LockTabList = props => {
                   <List.Item>
                     <Row className="zh-width-100P">
                       <Col span="8">
-                        {item.status} <a>{item.responsible}</a>
+                        {servicelogEnum[item.status]} <a>{item.responsible}</a>
                         <br />
                         <a>@{item.operator}</a>{' '}
                         <span className="zh-gray">
@@ -54,7 +90,12 @@ const LockTabList = props => {
         >
           借出/销售/赠送
         </Button>
-        <Button type="primary" ghost size="small" className="zh-mg-right-3">
+        <Button
+          type="primary"
+          ghost
+          size="small"
+          className="zh-mg-right-3"
+          onClick={() => setAddLonglelog({ ...setAddLonglelog, visible: true })}>
           升级
         </Button>
         <Button type="primary" ghost size="small" className="zh-mg-right-3">
@@ -66,6 +107,12 @@ const LockTabList = props => {
         <Button type="primary" ghost size="small">
           备注
         </Button>
+        <LockUpgrade
+          onConfirm={handleAddLonglelog}
+          loading={addLonglelog.loading}
+          visible={addLonglelog.visible}
+          onCancel={() => setAddLonglelog({ ...addLonglelog, visible: false })}
+        />
       </div>
     </div>
   )

+ 35 - 0
src/components/PopContent/Locks/LockUpgrade.jsx

@@ -0,0 +1,35 @@
+import React from 'react'
+import { Modal } from 'antd'
+import ProForm, { ProFormSelect } from '@ant-design/pro-form'
+
+const LockUpgrade = props => {
+  const { visible, onCancel, onConfirm, loading } = props
+  return (
+    <div>
+      <Modal
+        title="升级软件锁"
+        visible={visible}
+        confirmLoading={loading}
+        onCancel={onCancel}
+        onOk={() => {
+          onConfirm(values)
+        }}
+        width={500}>
+        <ProForm>
+          <ProFormSelect
+            options={[
+              {
+                value: '广东算量新定额',
+                label: '广东算量新定额'
+              }
+            ]}
+            width="sm"
+            name="name"
+            label="新增产品"></ProFormSelect>
+        </ProForm>
+      </Modal>
+    </div>
+  )
+}
+
+export default LockUpgrade

+ 9 - 1
src/pages/Product/Lock/Lockstore/index.jsx

@@ -5,6 +5,7 @@ import useAutoTable from '@/hooks/useAutoTable'
 import consts from '@/consts'
 import { queryLock } from '@/services/lock'
 import Locks from '@/components/PopContent/Locks'
+import { useDebounceFn } from 'ahooks'
 import { useModal } from '@/components/Modal'
 
 // 渲染产品标签
@@ -53,6 +54,11 @@ const Lockstore = props => {
   const handleSearch = value => {
     initData({ search: value })
   }
+  const searchOnchange = e => {
+    const { value = '' } = e.target
+    initData({ search: value })
+  }
+  const { run: handleSearchInputChange } = useDebounceFn(searchOnchange)
   // 展示drawer
   const showDrawer = id => {
     setDrawerProps({
@@ -133,7 +139,9 @@ const Lockstore = props => {
         scroll={{ x, y }}
         toolbar={{
           search: {
-            onSearch: handleSearch
+            allowClear: true,
+            onSearch: handleSearch,
+            onChange: handleSearchInputChange
           }
         }}
       />