Showing
2 changed files
with
74 additions
and
29 deletions
| @@ -8,7 +8,8 @@ import { | @@ -8,7 +8,8 @@ import { | ||
| 8 | TouchableOpacity, | 8 | TouchableOpacity, |
| 9 | ScrollView, | 9 | ScrollView, |
| 10 | ListView, | 10 | ListView, |
| 11 | - Dimensions | 11 | + Dimensions, |
| 12 | + AsyncStorage, | ||
| 12 | } from "react-native"; | 13 | } from "react-native"; |
| 13 | import { StackNavigator, TabNavigator } from "react-navigation"; | 14 | import { StackNavigator, TabNavigator } from "react-navigation"; |
| 14 | import post from "../../utils/fetch"; | 15 | import post from "../../utils/fetch"; |
| @@ -17,13 +18,17 @@ export default class Import extends Component { | @@ -17,13 +18,17 @@ export default class Import extends Component { | ||
| 17 | constructor(props) { | 18 | constructor(props) { |
| 18 | super(props); | 19 | super(props); |
| 19 | this.state = { | 20 | this.state = { |
| 21 | + IS_LOGIN: "", | ||
| 22 | + USER_ID: "", | ||
| 20 | customersList: this.props.navigation.state.params.customersList, | 23 | customersList: this.props.navigation.state.params.customersList, |
| 21 | selected_list: [], | 24 | selected_list: [], |
| 22 | selected_all: false, | 25 | selected_all: false, |
| 23 | - selected_len: 0, | 26 | + selected_len: 0 |
| 24 | }; | 27 | }; |
| 25 | } | 28 | } |
| 26 | - componentWillMount() {} | 29 | + componentWillMount() { |
| 30 | + this.getAsyncStorage() | ||
| 31 | + } | ||
| 27 | 32 | ||
| 28 | componentDidMount() { | 33 | componentDidMount() { |
| 29 | console.log("导入客户", this.props.navigation.state.params); | 34 | console.log("导入客户", this.props.navigation.state.params); |
| @@ -33,6 +38,22 @@ export default class Import extends Component { | @@ -33,6 +38,22 @@ export default class Import extends Component { | ||
| 33 | post("/test/insurance/article", {}, res => {}, err => {}); | 38 | post("/test/insurance/article", {}, res => {}, err => {}); |
| 34 | } | 39 | } |
| 35 | 40 | ||
| 41 | + getAsyncStorage() { | ||
| 42 | + const that = this; | ||
| 43 | + AsyncStorage.multiGet( | ||
| 44 | + ["IS_LOGIN", "USER_ID"], | ||
| 45 | + (err, result) => { | ||
| 46 | + if (err) { | ||
| 47 | + console.error(err); | ||
| 48 | + } | ||
| 49 | + that.setState({ | ||
| 50 | + IS_LOGIN: result[0][1], | ||
| 51 | + USER_ID: result[1][1] != null ? result[1][1] : "", | ||
| 52 | + }); | ||
| 53 | + } | ||
| 54 | + ); | ||
| 55 | + } | ||
| 56 | + | ||
| 36 | selectItem(item, index) { | 57 | selectItem(item, index) { |
| 37 | const { customersList, selected_all, selected_len } = this.state; | 58 | const { customersList, selected_all, selected_len } = this.state; |
| 38 | let Temp = customersList; | 59 | let Temp = customersList; |
| @@ -56,22 +77,20 @@ export default class Import extends Component { | @@ -56,22 +77,20 @@ export default class Import extends Component { | ||
| 56 | () => { | 77 | () => { |
| 57 | if (selected_all) { | 78 | if (selected_all) { |
| 58 | this.setState({ | 79 | this.setState({ |
| 59 | - selected_list: customersList, | 80 | + customersList: customersList.map((item, index) => { |
| 60 | - customersList: customersList.map((item,index) => { | ||
| 61 | return { | 81 | return { |
| 62 | ...item, | 82 | ...item, |
| 63 | selected: false | 83 | selected: false |
| 64 | - } | 84 | + }; |
| 65 | }) | 85 | }) |
| 66 | }); | 86 | }); |
| 67 | } else { | 87 | } else { |
| 68 | this.setState({ | 88 | this.setState({ |
| 69 | - selected_list: [], | 89 | + customersList: customersList.map((item, index) => { |
| 70 | - customersList: customersList.map((item,index) => { | ||
| 71 | return { | 90 | return { |
| 72 | ...item, | 91 | ...item, |
| 73 | selected: true | 92 | selected: true |
| 74 | - } | 93 | + }; |
| 75 | }) | 94 | }) |
| 76 | }); | 95 | }); |
| 77 | } | 96 | } |
| @@ -79,6 +98,18 @@ export default class Import extends Component { | @@ -79,6 +98,18 @@ export default class Import extends Component { | ||
| 79 | ); | 98 | ); |
| 80 | } | 99 | } |
| 81 | 100 | ||
| 101 | + import() { | ||
| 102 | + const { customersList,USER_ID } = this.state; | ||
| 103 | + let Temp = []; | ||
| 104 | + for (let i = 0, len = customersList.length; i < len; i++) { | ||
| 105 | + if (customersList[i].selected) { | ||
| 106 | + Temp.push(customersList[i]); | ||
| 107 | + } | ||
| 108 | + } | ||
| 109 | + console.log("发送通信录", Temp); | ||
| 110 | + post(`/test/insurance/contact/lot/${USER_ID}`,{'Temp':Temp},res => {console.log('导入成功')},err => {console.log(err)}); | ||
| 111 | + } | ||
| 112 | + | ||
| 82 | render() { | 113 | render() { |
| 83 | const { navigate } = this.props.navigation; | 114 | const { navigate } = this.props.navigation; |
| 84 | const { customersList, selected_all, selected_len } = this.state; | 115 | const { customersList, selected_all, selected_len } = this.state; |
| @@ -151,7 +182,12 @@ export default class Import extends Component { | @@ -151,7 +182,12 @@ export default class Import extends Component { | ||
| 151 | <Text>项</Text> | 182 | <Text>项</Text> |
| 152 | </View> | 183 | </View> |
| 153 | </View> | 184 | </View> |
| 154 | - <TouchableOpacity style={styles.importBtnContaier}> | 185 | + <TouchableOpacity |
| 186 | + style={styles.importBtnContaier} | ||
| 187 | + onPress={() => { | ||
| 188 | + this.import(); | ||
| 189 | + }} | ||
| 190 | + > | ||
| 155 | <Text style={styles.importBtnText}>导入</Text> | 191 | <Text style={styles.importBtnText}>导入</Text> |
| 156 | </TouchableOpacity> | 192 | </TouchableOpacity> |
| 157 | </View> | 193 | </View> |
| @@ -24,7 +24,7 @@ export default class Customer extends Component { | @@ -24,7 +24,7 @@ export default class Customer extends Component { | ||
| 24 | USER_ID: "", | 24 | USER_ID: "", |
| 25 | NICKNAME: "", | 25 | NICKNAME: "", |
| 26 | PROFESSION: "", | 26 | PROFESSION: "", |
| 27 | - hasCustomer: false, | 27 | + hasCustomer: true, |
| 28 | customersList: ["张某某", "周某某", "林某某", "李某某"], | 28 | customersList: ["张某某", "周某某", "林某某", "李某某"], |
| 29 | customersList2: [ | 29 | customersList2: [ |
| 30 | { | 30 | { |
| @@ -50,11 +50,9 @@ export default class Customer extends Component { | @@ -50,11 +50,9 @@ export default class Customer extends Component { | ||
| 50 | this.getAsyncStorage(); | 50 | this.getAsyncStorage(); |
| 51 | } | 51 | } |
| 52 | 52 | ||
| 53 | - componentDidMount() {} | 53 | + componentDidMount() { |
| 54 | - | ||
| 55 | - getListData() { | ||
| 56 | - post("/test/insurance/article", {}, res => {}, err => {}); | ||
| 57 | } | 54 | } |
| 55 | + | ||
| 58 | getAllPhone() { | 56 | getAllPhone() { |
| 59 | const { navigate } = this.props.navigation; | 57 | const { navigate } = this.props.navigation; |
| 60 | Contacts.getAll((err, contacts) => { | 58 | Contacts.getAll((err, contacts) => { |
| @@ -65,7 +63,7 @@ export default class Customer extends Component { | @@ -65,7 +63,7 @@ export default class Customer extends Component { | ||
| 65 | customersList.push({ | 63 | customersList.push({ |
| 66 | name: item.familyName + item.givenName, | 64 | name: item.familyName + item.givenName, |
| 67 | phone: item.phoneNumbers[0] ? item.phoneNumbers[0].number : "", | 65 | phone: item.phoneNumbers[0] ? item.phoneNumbers[0].number : "", |
| 68 | - selected: false, | 66 | + selected: false |
| 69 | }); | 67 | }); |
| 70 | }); | 68 | }); |
| 71 | // console.log("通信录", contacts); | 69 | // console.log("通信录", contacts); |
| @@ -77,20 +75,31 @@ export default class Customer extends Component { | @@ -77,20 +75,31 @@ export default class Customer extends Component { | ||
| 77 | 75 | ||
| 78 | getAsyncStorage() { | 76 | getAsyncStorage() { |
| 79 | const that = this; | 77 | const that = this; |
| 80 | - AsyncStorage.multiGet( | 78 | + const { USER_ID } = this.state; |
| 81 | - ["IS_LOGIN", "USER_ID", "NICKNAME", "PROFESSION"], | 79 | + AsyncStorage.multiGet(["IS_LOGIN", "USER_ID"], (err, result) => { |
| 82 | - (err, result) => { | 80 | + if (err) { |
| 83 | - if (err) { | 81 | + console.error(err); |
| 84 | - console.error(err); | ||
| 85 | - } | ||
| 86 | - that.setState({ | ||
| 87 | - IS_LOGIN: result[0][1], | ||
| 88 | - USER_ID: result[1][1] != null ? result[1][1] : "", | ||
| 89 | - NICKNAME: result[2][1] != null ? result[2][1] : "", | ||
| 90 | - PROFESSION: result[3][1] != null ? result[3][1] : "" | ||
| 91 | - }); | ||
| 92 | } | 82 | } |
| 93 | - ); | 83 | + that.setState( |
| 84 | + { | ||
| 85 | + IS_LOGIN: result[0][1], | ||
| 86 | + USER_ID: result[1][1] != null ? result[1][1] : "" | ||
| 87 | + }, | ||
| 88 | + () => { | ||
| 89 | + console.log(that.state.USER_ID) | ||
| 90 | + post( | ||
| 91 | + `/test/insurance/contact/get/${that.state.USER_ID}`, | ||
| 92 | + {}, | ||
| 93 | + res => { | ||
| 94 | + console.log("通信录返回值", res); | ||
| 95 | + }, | ||
| 96 | + err => { | ||
| 97 | + console.log("通信录err", err); | ||
| 98 | + } | ||
| 99 | + ); | ||
| 100 | + } | ||
| 101 | + ); | ||
| 102 | + }); | ||
| 94 | } | 103 | } |
| 95 | 104 | ||
| 96 | _renderBegin() { | 105 | _renderBegin() { |
-
Please register or login to post a comment