本系统基于QT界面实现,连接了Mysql数据库来存取汽车数量信息,xml来保存销售信息
1.1背景分析
随着现代科学技术的迅猛发展,计算机技术已经渗透到各个领域,成为各行业必不可少的工具,特别是Internet技术的推广和信息高速公路的建立,使IT产业在市场竞争中越发显示出其独特的优势,步入信息化时代,有巨大的数据信息等待加工处理和传输,这使得对数据库的进一步开发和利用显得尤为迫切。汽车工业经历了一百多年的发展历史,对国家经济的发展和腾飞以及对人类社会的文明带来了巨大影响。在许多国家,汽车工业已成为支柱产业,随着人们生活水平以及汽车性能的不断提高,人们对汽车的消费和需求也越来越旺盛,世界汽车工业也保持庞大的市场需求和生产规模。1.2系统需求分析
近年来,中国汽车市场发展迅猛,以接近40%的速度增长,特别是政府新政策的出台,大大刺激了消费市场。巨大的市场容量和可观的经济效益,引起各汽车厂家(包括世界各著名汽车厂家的在华企业)纷纷加大投资,汽车市场烽烟四起,汽车销售策略和模式新招频出,竞争已是空前的激烈。在如此形式下,一种介于生产厂家和用户之间的桥梁,汽车销售公司正在不断的产生和发展壮大。汽车销售公司的汽车销售管理水平不高,直接关系着各汽车厂家的根本利益,但现有的汽车销售公司的汽车销售管理水平还停留在纸介质的基础上,这样的机制已经不能适应时代的发展,因为它浪费了许多的人力和物力。在信息时代这种传统的管理方法必然被计算机为基础的信息管理所取代。
1.3系统可行性分析
在IT行业中从业的工作人员一般都要求掌握计算机技术,具有一定的软硬件基础,会使用各种管理软件,熟悉IT产品。因为,有的公司对职工的素质要求比较高,从管理层到下面的销售人员,都要求具有一定的计算机基础,所以在新系统投入使用时,只要对职工进行少量的培训,系统的功能和使用方法就基本上能够是系统顺利运行。因为通过网络传递销售信息可以不受距离的限制,因此可以借阅许多的人力和物力,方便管理,由此可以减少不必要的开支,同时该系统可以提高公司的销售效率,提高了公司的经济效益。销售管理系统是一个信息化、智能化和先进管理理念的集合体。而销售管理是一个动态过程,在其运行过程中要采取多项措施。所以在销售管理中获得经济效益是一个综合效益,要对它进行直接定量的分析是比较困难的。一般新系统带来的经济效益是简介的,其最主要的表现就是减少了企业管理费用和人力开支。系统采用基于Windows的图形用户界面,而该系统是大家熟悉的操作系统,对于那些有一般的计算机知识的人员就可以轻松上手。而整个公司管理系统采用最友好的交互界面,简介明了,不需要对数据库进行深入的了解。由此,该系统的操作是可行的,有必要开发该系统。
实现如图所示:
主界面
2.左上角的菜单可以切换不同页面
3.其中一张数据库中的数据
4.选择厂家以及品牌,还有销售数量
5.车辆管理界面,右边的销售信息是用xml写的
6.可视化数据库,增加删除设置了手动提交事务
7.选择厂家爱和品牌可以显示出车辆样子
8.选择相应厂家可以饼图显示相对的销售情况
工程文件中加
QT += core gui sql xml
QT += charts
RC_ICONS = pygame.ico //改变图标
主要实现代码:
关于存取销售信息的xml文件
domxml.cpp
#include "domxml.h"
#include <QDebug>
#include <QTextStream> //文件流
#include <QString>
#include <QFile> //文件
#include <QDomDocument> //xml文件指针
#include <QDomProcessingInstruction> //格式头部
#include <QDomElement> //元素
#include <QStringList>
#include <QDateTime>
#define cout qDebug() << "[" << __FILE__ << ":" << __LINE__ << "]"
DomXML::DomXML()
{
}
void DomXML::createXML(QString filePath)
{
QFile file(filePath);
if(true == file.exists()) //如果文件存在,就不创建
{
cout << "文件已经存在";
return;
}
else //不存在就创建
{
//只写方式打开
bool isOk = file.open(QIODevice::WriteOnly);
if(true == isOk) // 如果打开成功
{
//创建XML文档
QDomDocument doc;
//创建XML头部格式
QDomProcessingInstruction ins;
ins = doc.createProcessingInstruction("xml","version=\'1.0\' encoding=\'utf-8\