客户管理系统-删除客户|学习笔记

简介: 快速学习客户管理系统-删除客户

开发者学堂课程【Go 语言核心编程 - 面向对象、文件、单元测试、反射、TCP 编程:客户管理系统-删除客户】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/626/detail/9723


客户管理系统-删除客户

 

内容介绍

一、功能说明

二、思路分析

三、代码实现

 

一、功能说明

image.png

它是当用户输入希望删除客户这个选项后,系统就会提示:请选择待删除客户的编号(-1退出,即如果输入-1就代表它不想删除了) ,如果输入的是其他的数,需要删除id。如果输入的id 号不存在,应该提示删除失败,id 不存在。而且输入一个具体的编号过后,应该再提示一下:确认是否删除(Y/N)。如果输入Y就代表需要删除,再根据输入的id 去查找客户,再去删除。如果查找不到客户,就说明客户不存在,此时删除完成。

 

二、思路分析

image.png

1.customer[表示数话] model 层

(1)表示一个客户

(2)客户各种字段

customer表示一个客户信息,因此它需要其含有客户必须的各种字段。

type Customerstruct

Id int

Name string

Genderstring...

写个方法 ,显示该用户的信息Getinfo

2.customerService [处理业务逻辑]

(1)完成对用户的各种操作

(2)对客户的增,删除,修改,显示

(3)会声明一个customer的切片

显示客户列表

编写方法List【返回客户信息,其实就是切片】

编写NewCustomerService返回一个customerService实例

添加客户

编写方法Add[将新的客户加入到customers切片]

编写方法Delete(idint) 删除一个客户

编写方法FindByld(id int)返回id号对应的切片的下标

3.customerView.go [界面]V【含 customerService 字段】

(1)可以显示界面

(2)可以接收用户的输入

(3)根据用户的输入,调用customerService的方法完成客户的管理【修改,删除,显示等等】,它是调用。

编写一个方法

list去调用customerService的List方法,并显示客户列表。

add 方法去调用customerService的Add方法,完成客户添加。delete方法 调用customerService 的Delete方法,完成客户删除。

image.png


三、代码实现

1.//根据id查找客户在切片中对应下标

如果没有该客户,返回-1

func (this *CustomerService)FindById(id int) int

//遍历this *Customer切片

for i := 0; i< len(this.customers);i++

if this.customers[i].Id =id

//找到

index = i

return index

2.//根据id删除客户(从切片中删除)

func (this *CustomerService) Delete(id int)boolf

index := this.FindById(id)

//如果index ==-1,说明没有这个客户

if index == -1

return false

3.//如何从切片中删除一个元素

this. customers = append(this . customers : index]

this.customers[ indext1:])

return true

4. delete方法 调用

customerService 的Delete方法,完成客户删除。

//得到用户的输入id,删除该id对应的客户

func (this *customerView) delete()

fmt.Println(”. 删除客户”)

fmt.Println("请选择待删除客户编号(-1退出):“)id := -1

fmt.Scanln(&id)

if id == -1

return

//如果id不等于-1,表示放弃删除操作

5.fmt.Println("确认是否删除(Y/N):")

//在这个里面可以加入一个循环判断,直到用户输入y 或者n,才退出。

choice:=“”

fmt.Scanln(&choice)

if choice =="y"|choice == "Y”[

//调用customerService 的 Delete方法

if this.customerService.Delete(id) [

fmt.Println("删除完成")

else

fmt.Println(“删除失败,输入的id号不存在")

此时删除任务完成。

case "1”:

this.add()

case“2”:

fmt.Println(“修改客户”)

case "3”:

this.delete() I

case"4":

this.list()

case "5”:

this.loop = false

default:

fmt.Println("你的输入有误,请重新输入...”)

全部保存后,打开d盘,进入到所写文件中,输入cmd,go run.

请选择1-5,并逐步添加人物。

客户列表:

编号

姓名

性别

年龄

电话

邮箱

1

张三

20

112

ZS@sohu.com

2

tom

20

112

tom@sohu.com

3

mary

24

113

mary@qq.com

客户列表完成

客户信息管理软件

1添加客户

2修改客户

3删除客户

4客户列表

5 退出

此时删除编号2的操作:

删除客户

请选择待删除客户编号(-1退出):

2

确认是否删除(Y/N):

y

删除完成

此时编号如下:

编号

姓名

性别

年龄

电话

邮箱

1

张三

20

112

ZS@sohu.com

3

mary

24

113

mary@qq.com

表示删除成功。

总结:

customerManage/model/customer.go [没有变化]

customerManage service customerService.go[有变化]

增加了两个方法:

1. Delete

func (this *CustomerService) Delete(id int) bool

index := this.FindById(id)

//如果index == -1,说明没有这个客A5

if index == -1 (

return false

//如何从切片中删除一个元素this.customers = append(this.customers[:index], this.customers[index+1:]...)return true

//根据id查找客户在切片中对应下标,如果没有该客户,返回-1

2. FindById

func (this *CustomerService) FindById(id int) int [

index := -1

//遍历 this.customers 切片

for i := 0; i< len(this.customers); i++ f

if this.customers[i].Id == id f

//找到

index = i

customerManage/view customerView.go[有变化]

在这个方法里接受了一个id,而在切片中主要起作用的还是delete方法:

//调用customerService 的 Delete方法

if this.customerService.Delete(id) [

fmt.Println("删除完成")

else

fmt.Println(“删除失败,输入的id号不存在")

相关文章
|
4天前
|
存储 数据采集 安全
客户管理CRM系统排行:使用最广泛的5款测评
在数字化时代,CRM系统成为企业提升销售效率、优化客户体验和增强竞争力的重要工具。本文综合评测了市场上五款广泛使用的CRM系统:销售易、天衣云、简道云、红圈和金蝶云之家,从推荐理由、产品功能、优势特色到适用企业,为读者提供全面参考。这些系统各具特色,企业应根据自身需求选择合适的CRM系统,以提升运营效率和客户满意度。
|
4月前
|
监控 数据挖掘 数据安全/隐私保护
ERP系统中的客户投诉管理与解决方案解析
【7月更文挑战第25天】 ERP系统中的客户投诉管理与解决方案解析
355 1
|
4月前
|
监控 数据安全/隐私保护 Python
ERP系统中的员工培训与知识管理解析
【7月更文挑战第25天】 ERP系统中的员工培训与知识管理解析
276 2
|
4月前
|
监控 搜索推荐 数据挖掘
ERP系统中的客户关系管理与客户满意度调查解析
【7月更文挑战第25天】 ERP系统中的客户关系管理与客户满意度调查解析
289 1
客户信息管理软件的实现
客户信息管理软件的实现
|
存储 搜索推荐 数据可视化
基于电子商务平台客户管理系统的设计与实现_kaic
本论文旨在设计和实现一个基于电子商务平台的客户关系管理系统,以提高企业与客户之间的互动和关系维护效率。本文首先介绍了客户关系管理系统的相关理论和技术,并分析了其在电子商务平台中的应用价值。接着,进行了电子商务平台客户关系管理系统的需求分析,详细阐述了系统的功能需求和数据需求,并提出了相应的解决方案。在此基础上,本文设计了系统的结构和数据库,并实现了后台管理模块和前台客户模块。最后,本文进行了系统应用和效果评价,发现该系统能够有效提高企业与客户之间的沟通效率和关系维护效果。本文的研究成果为电子商务平台客户关系管理系统的设计和实现提供了有益的参考和借鉴,并为今后相关研究提供了一定的指导和启示。
|
Java 关系型数据库 MySQL
删除客户 | 学习笔记
快速学习删除客户.
删除客户 | 学习笔记
|
Scala 开发者
CRM 项目-添加客户 | 学习笔记
快速学习 CRM 项目-添加客户
CRM 项目-添加客户 | 学习笔记
|
机器学习/深度学习 网络协议 测试技术
客户管理系统-显示客户列表|学习笔记
快速学习客户管理系统-显示客户列表
客户管理系统-显示客户列表|学习笔记
|
Scala 开发者 索引
CRM 项目-删除客户 | 学习笔记
快速学习 CRM 项目-删除客户