|
@@ -26,11 +26,12 @@ import "taro-ui/dist/style/components/icon.scss";
|
|
|
import "taro-ui/dist/style/components/textarea.scss";
|
|
|
import "taro-ui/dist/style/components/modal.scss";
|
|
|
import "taro-ui/dist/style/components/timeline.scss";
|
|
|
-import "taro-ui/dist/style/components/calendar.scss";
|
|
|
+import "taro-ui/dist/style/components/calendar.scss"; 2
|
|
|
import "taro-ui/dist/style/components/input.scss";
|
|
|
import "taro-ui/dist/style/components/checkbox.scss";
|
|
|
import MessageNoticebar from "../../components/common/messageNoticebar";
|
|
|
-import { industry } from '../../utils/tools/config';
|
|
|
+import { industry, channelTypeList } from '../../utils/tools/config';
|
|
|
+import { getChannel } from "../../utils/tools";
|
|
|
import Superior from "../../components/common/superior";
|
|
|
|
|
|
|
|
@@ -50,8 +51,8 @@ class CustomerProfile extends Component {
|
|
|
userList: [],
|
|
|
options: [],
|
|
|
checkOptions: [],
|
|
|
-
|
|
|
isSuperior: false,
|
|
|
+ channe: {},
|
|
|
};
|
|
|
this.queryByUidAll = this.queryByUidAll.bind(this);
|
|
|
this.update = this.update.bind(this);
|
|
@@ -68,6 +69,34 @@ class CustomerProfile extends Component {
|
|
|
componentDidShow() {
|
|
|
|
|
|
}
|
|
|
+
|
|
|
+ onShareAppMessage() {
|
|
|
+ this.limitUser();
|
|
|
+ return {
|
|
|
+ title: "客户档案",
|
|
|
+ path: "pages/customerProfile/index?id=" + this.$instance.router.params.id + "&signBills=" + this.$instance.router.params.signBills,
|
|
|
+ };
|
|
|
+ }
|
|
|
+
|
|
|
+ // onShareAppMessage() {
|
|
|
+ // this.limitUser();
|
|
|
+ // if (!this.isLogin()) {
|
|
|
+ // return {
|
|
|
+ // title: '登录',
|
|
|
+ // path: '/pages/login/index', // 登录页面的路径
|
|
|
+ // }
|
|
|
+ // } else {
|
|
|
+ // return {
|
|
|
+ // title: '客户档案',
|
|
|
+ // path: "pages/customerProfile/index?id=" + this.$instance.router.params.id + "&signBills=" + this.$instance.router.params.signBills + "&scene=1007", // 假设的分享路径
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+ // }
|
|
|
+
|
|
|
+ isLogin() {
|
|
|
+ return !!Taro.getStorageSync('userInfor');
|
|
|
+ }
|
|
|
+
|
|
|
// 客户档案详情
|
|
|
queryByUidAll() {
|
|
|
queryByUidAll({
|
|
@@ -79,7 +108,16 @@ class CustomerProfile extends Component {
|
|
|
dtails: v.data
|
|
|
})
|
|
|
} else {
|
|
|
- Taro.showToast({ title: v.error[0].message, icon: "none" });
|
|
|
+ setTimeout(() => {
|
|
|
+ Taro.navigateBack({
|
|
|
+ delta: 1
|
|
|
+ })
|
|
|
+ }, 1800);
|
|
|
+ Taro.showToast({
|
|
|
+ title: v.error[0].message,
|
|
|
+ icon: "none",
|
|
|
+ duration: 1800,
|
|
|
+ });
|
|
|
}
|
|
|
})
|
|
|
.catch((err) => {
|
|
@@ -98,6 +136,9 @@ class CustomerProfile extends Component {
|
|
|
{ key: "financialData", value: "请填写财务数据" },
|
|
|
{ key: "earlyCommunication", value: "请填写前期沟通" },
|
|
|
{ key: "interviewIdeas", value: "请填写面谈思路及目的" },
|
|
|
+ { key: "interviewDistribution", value: "请填写主要面谈人及分工" },
|
|
|
+ { key: "enterpriseCount", value: "请填写覆盖企业数" },
|
|
|
+ { key: "channelIndicators", value: "请填写渠道考核指标" },
|
|
|
]
|
|
|
if (!info.id) {
|
|
|
delete info.id
|
|
@@ -113,7 +154,16 @@ class CustomerProfile extends Component {
|
|
|
}
|
|
|
}
|
|
|
return
|
|
|
+ } else if (info[i] == 0) {
|
|
|
+ if (i == "channelType") {
|
|
|
+ Taro.showToast({
|
|
|
+ title: "请选择渠道类型",
|
|
|
+ icon: "none",
|
|
|
+ });
|
|
|
+ return
|
|
|
+ }
|
|
|
}
|
|
|
+
|
|
|
}
|
|
|
updateUserDate(upType, info).then((v) => {
|
|
|
if (v.error.length === 0) {
|
|
@@ -260,13 +310,6 @@ class CustomerProfile extends Component {
|
|
|
})
|
|
|
}
|
|
|
|
|
|
- onShareAppMessage() {
|
|
|
- this.limitUser();
|
|
|
- return {
|
|
|
- title: "客户档案",
|
|
|
- path: "pages/customerProfile/index?id=" + this.$instance.router.params.id + "&signBills=" + this.$instance.router.params.signBills,
|
|
|
- };
|
|
|
- }
|
|
|
|
|
|
render() {
|
|
|
const { dtails, upType, info, obj, userList } = this.state;
|
|
@@ -275,9 +318,6 @@ class CustomerProfile extends Component {
|
|
|
<MessageNoticebar />
|
|
|
<View
|
|
|
className="titleContent"
|
|
|
- style={{
|
|
|
- padding: Object.keys(dtails).length === 0 ? "0 20px" : "0px 0px",
|
|
|
- }}
|
|
|
>
|
|
|
{Object.keys(dtails).length === 0 ? (
|
|
|
<Skeleton
|
|
@@ -334,202 +374,349 @@ class CustomerProfile extends Component {
|
|
|
<View className="time">{dtails.createTime}</View>
|
|
|
</View>
|
|
|
|
|
|
- <View className="first">
|
|
|
- <View className="tit">
|
|
|
- 企业所属行业及主要产品
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.setState({
|
|
|
- upType: 0,
|
|
|
- isOpened: true,
|
|
|
- info: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- industry: dtails.industry,
|
|
|
- businessScope: dtails.businessScope,
|
|
|
- },
|
|
|
- sector: {
|
|
|
- id: dtails.industry,
|
|
|
- title: dtails.industryName
|
|
|
- }
|
|
|
- })
|
|
|
- }}
|
|
|
- >修改</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- <View className="val">行业:{dtails.industryName}</View>
|
|
|
- <View className="val">主营产品/服务:{dtails.businessScope}</View>
|
|
|
- <View className="tit">
|
|
|
- 意向合作项目
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.getBusinessProjectByName()
|
|
|
- this.setState({
|
|
|
- upType: 5,
|
|
|
- isOpened: true,
|
|
|
- info: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- intendedProject: dtails.intendedProject,
|
|
|
- },
|
|
|
- checkOptions: !!dtails.intendedProject ? dtails.intendedProject.split(",") : []
|
|
|
- })
|
|
|
- }}
|
|
|
- >修改</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- <View className="val">{dtails.intendedProject || "无"}</View>
|
|
|
- <View className="tit">
|
|
|
- <Text>
|
|
|
- 联系人
|
|
|
- <Text className="txt">(面谈人)</Text>
|
|
|
- </Text>
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.getUserList();
|
|
|
- this.setState({
|
|
|
- isAdd: true,
|
|
|
- obj: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- name: "",
|
|
|
- position: "",
|
|
|
- department: "",
|
|
|
- mobile: "",
|
|
|
- }
|
|
|
- })
|
|
|
- }}
|
|
|
- >新增</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- {
|
|
|
- !!dtails.contactList && dtails.contactList.map((v, k) =>
|
|
|
- <View className="val" key={k}>{v.name} {v.position} {v.department} {v.mobile}</View>
|
|
|
- )
|
|
|
- }
|
|
|
- </View>
|
|
|
-
|
|
|
- <View className="two">
|
|
|
- <View className="title">面谈企业情况</View>
|
|
|
- <View className="tit">
|
|
|
- <Text>
|
|
|
- 知识产权情况
|
|
|
- <Text className="txt">(专利信息、标准、专利、软著)</Text>
|
|
|
- </Text>
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.setState({
|
|
|
- upType: 1,
|
|
|
- isOpened: true,
|
|
|
- info: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- id: dtails.id,
|
|
|
- inventionPatentCount: dtails.inventionPatentCount || 0,
|
|
|
- utilityModelCount: dtails.utilityModelCount || 0,
|
|
|
- appearancePatentCount: dtails.appearancePatentCount || 0,
|
|
|
- softwareWorksCount: dtails.softwareWorksCount || 0,
|
|
|
- otherCount: dtails.otherCount || 0,
|
|
|
- }
|
|
|
- })
|
|
|
- }}
|
|
|
- >修改</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- <View className="val">
|
|
|
- 专利 <Text className="num">{dtails.patentCount || 0}</Text>
|
|
|
- 其中发明专利 <Text className="num">{dtails.inventionPatentCount || 0}</Text>
|
|
|
- 实用新型 <Text className="num">{dtails.utilityModelCount || 0}</Text>
|
|
|
- 外观设计 <Text className="num">{dtails.appearancePatentCount || 0}</Text>
|
|
|
- 软著 <Text className="num">{dtails.softwareWorksCount || 0}</Text>
|
|
|
- 其他类型 <Text className="num">{dtails.otherCount || 0}</Text>
|
|
|
- </View>
|
|
|
- <View className="tit">
|
|
|
- <Text>
|
|
|
- 财务数据
|
|
|
- <Text className="txt">(包括营收、税收、资产、研发费用等)</Text>
|
|
|
- </Text>
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.setState({
|
|
|
- upType: 2,
|
|
|
- isOpened: true,
|
|
|
- info: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- id: dtails.id,
|
|
|
- financialData: dtails.financialData,
|
|
|
- }
|
|
|
- })
|
|
|
- }}
|
|
|
- >修改</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- <View className="val">{dtails.financialData || "无"}</View>
|
|
|
- <View className="tit">
|
|
|
- <Text>
|
|
|
- 前期沟通
|
|
|
- <Text className="txt">(客户的难处、需求)</Text>
|
|
|
- </Text>
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.setState({
|
|
|
- upType: 3,
|
|
|
- isOpened: true,
|
|
|
- info: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- id: dtails.id,
|
|
|
- earlyCommunication: dtails.earlyCommunication,
|
|
|
- }
|
|
|
- })
|
|
|
- }}
|
|
|
- >修改</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- <View className="val">{dtails.earlyCommunication || "无"}</View>
|
|
|
- <View className="tit">
|
|
|
- <Text>
|
|
|
- 面谈思路及目的
|
|
|
- </Text>
|
|
|
- {
|
|
|
- dtails.myUser == 1 &&
|
|
|
- <View className="up"
|
|
|
- onClick={e => {
|
|
|
- e.stopPropagation()
|
|
|
- this.setState({
|
|
|
- upType: 4,
|
|
|
- isOpened: true,
|
|
|
- info: {
|
|
|
- uid: this.$instance.router.params.id,
|
|
|
- id: dtails.id,
|
|
|
- interviewIdeas: dtails.interviewIdeas,
|
|
|
- }
|
|
|
- })
|
|
|
- }}
|
|
|
- >修改</View>
|
|
|
- }
|
|
|
- </View>
|
|
|
- <View className="val">{dtails.interviewIdeas || "无"}</View>
|
|
|
- </View>
|
|
|
+ {
|
|
|
+ dtails.newChannel == 1
|
|
|
+ ?
|
|
|
+ <View className="first">
|
|
|
+ <View className="tit">
|
|
|
+ 已知渠道情况
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 7,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ channelType: dtails.channelType,
|
|
|
+ enterpriseCount: dtails.enterpriseCount,
|
|
|
+ channelIndicators: dtails.channelIndicators,
|
|
|
+ },
|
|
|
+ channe: {
|
|
|
+ id: dtails.channelType,
|
|
|
+ title: getChannel(dtails.channelType)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">渠道类别:{getChannel(dtails.channelType)}</View>
|
|
|
+ <View className="val">渠道企业数:{dtails.enterpriseCount}</View>
|
|
|
+ <View className="val">渠道考核指标:{dtails.channelIndicators}</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 联系人
|
|
|
+ <Text className="txt">(面谈人)</Text>
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.getUserList();
|
|
|
+ this.setState({
|
|
|
+ isAdd: true,
|
|
|
+ obj: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ name: "",
|
|
|
+ position: "",
|
|
|
+ department: "",
|
|
|
+ mobile: "",
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >新增</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ {
|
|
|
+ !!dtails.contactList && dtails.contactList.map((v, k) =>
|
|
|
+ <View className="val" key={k}>{v.name} {v.position} {v.department} {v.mobile}</View>
|
|
|
+ )
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ :
|
|
|
+ <View className="first">
|
|
|
+ <View className="tit">
|
|
|
+ 企业所属行业及主要产品
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 0,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ industry: dtails.industry,
|
|
|
+ businessScope: dtails.businessScope,
|
|
|
+ },
|
|
|
+ sector: {
|
|
|
+ id: dtails.industry,
|
|
|
+ title: dtails.industryName
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">行业:{dtails.industryName}</View>
|
|
|
+ <View className="val">主营产品/服务:{dtails.businessScope}</View>
|
|
|
+ <View className="tit">
|
|
|
+ 意向合作项目
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.getBusinessProjectByName()
|
|
|
+ this.setState({
|
|
|
+ upType: 5,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ intendedProject: dtails.intendedProject,
|
|
|
+ },
|
|
|
+ checkOptions: !!dtails.intendedProject ? dtails.intendedProject.split(",") : []
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.intendedProject || "无"}</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 联系人
|
|
|
+ <Text className="txt">(面谈人)</Text>
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.getUserList();
|
|
|
+ this.setState({
|
|
|
+ isAdd: true,
|
|
|
+ obj: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ name: "",
|
|
|
+ position: "",
|
|
|
+ department: "",
|
|
|
+ mobile: "",
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >新增</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ {
|
|
|
+ !!dtails.contactList && dtails.contactList.map((v, k) =>
|
|
|
+ <View className="val" key={k}>{v.name} {v.position} {v.department} {v.mobile}</View>
|
|
|
+ )
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ }
|
|
|
+ {
|
|
|
+ dtails.newChannel == 1
|
|
|
+ ?
|
|
|
+ <View className="two">
|
|
|
+ <View className="title">面谈前渠道情况</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 面谈项目
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.getBusinessProjectByName()
|
|
|
+ this.setState({
|
|
|
+ upType: 5,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ intendedProject: dtails.intendedProject,
|
|
|
+ },
|
|
|
+ checkOptions: !!dtails.intendedProject ? dtails.intendedProject.split(",") : []
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.intendedProject || "无"}</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 面谈思路及目的
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 4,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ id: dtails.id,
|
|
|
+ interviewIdeas: dtails.interviewIdeas,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.interviewIdeas || "无"}</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 我方主要面谈人及分工
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 6,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ id: dtails.id,
|
|
|
+ interviewDistribution: dtails.interviewDistribution,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.interviewDistribution || "无"}</View>
|
|
|
+ </View>
|
|
|
+ :
|
|
|
+ <View className="two">
|
|
|
+ <View className="title">面谈企业情况</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 知识产权情况
|
|
|
+ <Text className="txt">(专利信息、标准、专利、软著)</Text>
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 1,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ id: dtails.id,
|
|
|
+ inventionPatentCount: dtails.inventionPatentCount || 0,
|
|
|
+ utilityModelCount: dtails.utilityModelCount || 0,
|
|
|
+ appearancePatentCount: dtails.appearancePatentCount || 0,
|
|
|
+ softwareWorksCount: dtails.softwareWorksCount || 0,
|
|
|
+ otherCount: dtails.otherCount || 0,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">
|
|
|
+ 专利 <Text className="num">{dtails.patentCount || 0}</Text>
|
|
|
+ 其中发明专利 <Text className="num">{dtails.inventionPatentCount || 0}</Text>
|
|
|
+ 实用新型 <Text className="num">{dtails.utilityModelCount || 0}</Text>
|
|
|
+ 外观设计 <Text className="num">{dtails.appearancePatentCount || 0}</Text>
|
|
|
+ 软著 <Text className="num">{dtails.softwareWorksCount || 0}</Text>
|
|
|
+ 其他类型 <Text className="num">{dtails.otherCount || 0}</Text>
|
|
|
+ </View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 财务数据
|
|
|
+ <Text className="txt">(包括营收、税收、资产、研发费用等)</Text>
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 2,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ id: dtails.id,
|
|
|
+ financialData: dtails.financialData,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.financialData || "无"}</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 前期沟通
|
|
|
+ <Text className="txt">(客户的难处、需求)</Text>
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 3,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ id: dtails.id,
|
|
|
+ earlyCommunication: dtails.earlyCommunication,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.earlyCommunication || "无"}</View>
|
|
|
+ <View className="tit">
|
|
|
+ <Text>
|
|
|
+ 面谈思路及目的
|
|
|
+ </Text>
|
|
|
+ {
|
|
|
+ dtails.myUser == 1 &&
|
|
|
+ <View className="up"
|
|
|
+ onClick={e => {
|
|
|
+ e.stopPropagation()
|
|
|
+ this.setState({
|
|
|
+ upType: 4,
|
|
|
+ isOpened: true,
|
|
|
+ info: {
|
|
|
+ uid: this.$instance.router.params.id,
|
|
|
+ id: dtails.id,
|
|
|
+ interviewIdeas: dtails.interviewIdeas,
|
|
|
+ }
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ >修改</View>
|
|
|
+ }
|
|
|
+ </View>
|
|
|
+ <View className="val">{dtails.interviewIdeas || "无"}</View>
|
|
|
+ </View>
|
|
|
+ }
|
|
|
</View>
|
|
|
)}
|
|
|
</View>
|
|
|
|
|
|
<AtModal
|
|
|
isOpened={this.state.isOpened}
|
|
|
+ onClose={() => {
|
|
|
+ this.setState({
|
|
|
+ isOpened: false
|
|
|
+ })
|
|
|
+ }}
|
|
|
>
|
|
|
<AtModalHeader>信息修改</AtModalHeader>
|
|
|
<AtModalContent>
|
|
@@ -653,7 +840,7 @@ class CustomerProfile extends Component {
|
|
|
})
|
|
|
}}
|
|
|
maxLength={200}
|
|
|
- placeholder='请填写~'
|
|
|
+ placeholder='请填写财务数据~'
|
|
|
/>
|
|
|
</View>
|
|
|
}
|
|
@@ -671,7 +858,7 @@ class CustomerProfile extends Component {
|
|
|
})
|
|
|
}}
|
|
|
maxLength={200}
|
|
|
- placeholder='请填写~'
|
|
|
+ placeholder='请填写前期沟通~'
|
|
|
/>
|
|
|
</View>
|
|
|
}
|
|
@@ -689,7 +876,7 @@ class CustomerProfile extends Component {
|
|
|
})
|
|
|
}}
|
|
|
maxLength={200}
|
|
|
- placeholder='请填写~'
|
|
|
+ placeholder='请填写面谈思路及目的~'
|
|
|
/>
|
|
|
</View>
|
|
|
}
|
|
@@ -710,6 +897,76 @@ class CustomerProfile extends Component {
|
|
|
/>
|
|
|
</View>
|
|
|
}
|
|
|
+ {
|
|
|
+ upType == 6 &&
|
|
|
+ <View>
|
|
|
+ <View className='selectTitle'>我方主要面谈人及分工</View>
|
|
|
+ <AtTextarea
|
|
|
+ value={info.interviewDistribution || ""}
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({
|
|
|
+ info: Object.assign(info, {
|
|
|
+ interviewDistribution: e,
|
|
|
+ }),
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ maxLength={200}
|
|
|
+ placeholder='请填写我方主要面谈人及分工~'
|
|
|
+ />
|
|
|
+ </View>
|
|
|
+ }
|
|
|
+ {
|
|
|
+ upType == 7 &&
|
|
|
+ <View>
|
|
|
+ <View className='selectTitle' style={{ height: "30px" }}>
|
|
|
+ 渠道类别:
|
|
|
+ <Picker
|
|
|
+ value={this.state.channe.id}
|
|
|
+ range={channelTypeList} rangeKey='title' mode='selector'
|
|
|
+ onChange={(e) => {
|
|
|
+ this.setState({
|
|
|
+ channe: channelTypeList[e.detail.value],
|
|
|
+ info: Object.assign(info, {
|
|
|
+ channelType: channelTypeList[e.detail.value].id,
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }}>
|
|
|
+ <View style={{ marginBottom: "10px", width: "160px", color: !this.state.channe.title && "#CCCCCC" }}>
|
|
|
+ {!this.state.channe.title ? "请选择" : this.state.channe.title}
|
|
|
+ </View>
|
|
|
+ </Picker>
|
|
|
+ </View>
|
|
|
+ <View className='selectTitle' style={{ height: "30px" }}>
|
|
|
+ 覆盖企业数:
|
|
|
+ <Input
|
|
|
+ style={{ width: "50%" }}
|
|
|
+ type='number'
|
|
|
+ placeholder='请填写个数'
|
|
|
+ value={info.enterpriseCount}
|
|
|
+ onInput={e => {
|
|
|
+ this.setState({
|
|
|
+ info: Object.assign(info, {
|
|
|
+ enterpriseCount: e.detail.value,
|
|
|
+ })
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ />
|
|
|
+ </View>
|
|
|
+ <View className='selectTitle' >渠道考核指标</View>
|
|
|
+ <AtTextarea
|
|
|
+ value={info.channelIndicators || ""}
|
|
|
+ onChange={e => {
|
|
|
+ this.setState({
|
|
|
+ info: Object.assign(info, {
|
|
|
+ channelIndicators: e,
|
|
|
+ }),
|
|
|
+ })
|
|
|
+ }}
|
|
|
+ maxLength={200}
|
|
|
+ placeholder='请填写渠道考核指标~'
|
|
|
+ />
|
|
|
+ </View>
|
|
|
+ }
|
|
|
</AtModalContent>
|
|
|
<AtModalAction>
|
|
|
<Button type='secondary' onClick={() => { this.setState({ isOpened: false }) }}>取消</Button>
|
|
@@ -719,16 +976,21 @@ class CustomerProfile extends Component {
|
|
|
|
|
|
<AtModal
|
|
|
isOpened={this.state.isAdd}
|
|
|
+ onClose={() => {
|
|
|
+ this.setState({
|
|
|
+ isAdd: false
|
|
|
+ })
|
|
|
+ }}
|
|
|
>
|
|
|
<AtModalHeader>联系人</AtModalHeader>
|
|
|
<AtModalContent>
|
|
|
{
|
|
|
userList.map((item) =>
|
|
|
<View key={item.id} className="additem">
|
|
|
- <Text className="txt">{item.name || "无"}</Text>
|
|
|
- <Text className="txt">{item.position || "无"}</Text>
|
|
|
- <Text className="txt">{item.department || "无"}</Text>
|
|
|
- <Text className="mobile">{item.mobile || "无"}</Text>
|
|
|
+ <Text className="txt">{item.name || " "}</Text>
|
|
|
+ <Text className="txt">{item.position || " "}</Text>
|
|
|
+ <Text className="txt">{item.department || " "}</Text>
|
|
|
+ <Text className="mobile">{item.mobile || " "}</Text>
|
|
|
<View
|
|
|
className={item.major == 1 ? "bts" : "bt"}
|
|
|
onClick={() => {
|