0 引言 本文主要介绍 Spring Boot 中 Redis 的配置和基本使用. 1 配置 Redis 1. 修改pom.xml,添加Redis依赖 <!-- Spring Boot Redis --> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-redis</artifactId> </dep…
1.引言 CRM,客户关系管理系统(Customer Relationship Management).企业用CRM技术来管理与客户之间的关系,以求提升企业成功的管理方式,其目的是协助企业管理销售循环:新客户的招徕.保留旧客户.提供客户服务及进一步提升企业和客户的关系,并运用市场营销工具,提供创新式的个人化的客户商谈和服务,辅以相应的信息系统或信息技术如数据挖掘和数据库营销来协调所有公司与顾客间在销售.营销以及服务上的交互. 此系统主要是以教育行业为背景,为公司开发的一套客户关系管理系统.为了扩…
一.CRM项目(2) 利用Q查询中的q对象完成条件筛选功能. 批量删除.公户转私户功能. 新增一张跟进记录表ConsultRecord,迁移数据库并添加测试数据,实现跟进记录列表页面. 客户列表新增跟进记录字段,并与对应客户的跟进记录列表页面建立链接. 二.补充 1.Q查询补充 示例一: q=Q() # 实例化一个Q的对象q,我们可以给它加条件 q.children.append(("name","alex")) # 添加筛选条件,即name字段为alex的记录 #…
一.CRM项目的业务逻辑与表结构梳理 1.分析业务逻辑 (1) 引流(sem) (2) 网络咨询师(客服):添加客户信息和查看客户,分配销售 (3) 销售:查看私户 添加跟进记录 失败:加入公户 成功:缴费,修改状态 (4)产生的表有: 员工表,部门表,客户表,跟进记录表,缴费表,报名表 学生表,班级表,课程记录表,学生学习记录表 2.crm项目进度 (1)整合优化添加和编辑的代码 (2)私户转公户 (3)添加跟进记录 二.补充知识点 1.model模型类中表的自关联 class Custome…
一.登录功能 1.采用ajax 提交form表单的方式 2.后台生成随机验证码,登录时提交验证码 3.用PLI库生成随机验证码,置于session中,登录时与前台提交的code进行upeer()的验证 <div class="col-lg-6"> <img height=" src="/get_code/" alt=""> </div> 二.首页 1.index.html分别采用头和container…
一.三种获取页面元素的方式: getElementById:通过id来获取 <body> <input type="text" value="请输入一个值:" id="txt"/> <input type="button" value="按钮" id="btn"/> <script> var txt=document.getElementB…
开始今日份整理,主要为stark组件的增删改以及model_form组件的使用以及form组件的回顾 1.list_display_link功能 功能:客制化字段进行跳转到指定的页面(编辑页面) 1.1 stark组件设置接口 1.2 app01中stark注册表中填写注册的内容 注意:该列表内对应的的字段需要和model中的属性名保持一致 1.3 stark中给普通属性增加a标签 if info_obj.choices: vim = getattr(obj, 'get_%s_display'…
工具代码记录 版权声明:本文为博主初学经验,未经博主允许不得转载. 一.前言 记录在学习与制作WPF过程中遇到的解决方案. 分页控件的制作,邮件发送,日志代码,excel导入导出等代码的实现过程: 二.配置 系统环境:win10 开发工具:Visual Studio 2017 开发语言:C#.WPF (MVVM框架) 三.功能 1. 分页控件的制作 1.1 前端xaml代码 <UserControl x:Class="SCB.RPS.Client.Controls.UcPager"…
前言:以下内容均为学习慕课网高级实战课程的实践爬坑笔记. 项目github地址:https://github.com/66Web/ljq_vue_music,欢迎Star. 搜索歌手歌曲 搜索历史保存 一.搜索页面布局 search-Box组件开发 <div class="search-box"> <i class="icon-search"></i> <input class="box" v-model…
前言:以下内容均为学习慕课网高级实战课程的实践爬坑笔记. 项目github地址:https://github.com/66Web/ljq_vue_music,欢迎Star. 一.歌手页面布局与设计 需求:联系人列表形式.左右联动的滚动列表.顶部标题随列表滚动而改变 歌手列表 快速入口列表 二.歌手数据接口抓取 api目录下创建singer.js——同recommend.js,依赖jsonp和一些公共参数 import jsonp from '@/common/js/jsonp' import {…
前言:以下内容均为学习慕课网高级实战课程的实践爬坑笔记. 上一篇总结了项目概述.项目准备.页面骨架搭建.这一篇重点梳理推荐页面开发.项目github地址:https://github.com/66Web/ljq_vue_music,欢迎Star. 一.页面简介+轮播图数据分析 数据:从QQ音乐抓取的真实数据 轮播图 热门歌单推荐 二.JSONP原理介绍 一句话解释JSONP原理:动态生成一个JavaScript标签,其src由接口url.请求参数.callback函数名拼接而成:利用js标签没有…
Django框架基础-03数据库新增数据    1.save⽅法        >>> from datetime import date        >>> from booktest.models import BookInfo, HeroInfo        >>> book = BookInfo(        ... btitle='⻄游记',        ... bpub_date=date(1989,1,1),        ...…
Django  2.1  python 3.7 创建一个虚拟环境 python  -m  venv  虚拟环境名称 进入虚拟环境 下载django pip install  django==2.1 创建项目: django-admin startproject 项目名称 . -->创建项目 有个点 创建应用: python manage.py startapp 创建应用 一个干净的Django 框架,我们需要打开settings.py 进行设置 第一步: 创建数据库 : MyDB  mysql…
0 引言 在做服务端开发的时候,难免会涉及到API 接口文档的编写,可以经历过手写API 文档的过程,就会发现,一个自动生成API文档可以提高多少的效率. 以下列举几个手写API 文档的痛点: 文档需要更新的时候,需要再次发送一份给前端,也就是文档更新交流不及时. 接口返回结果不明确 不能直接在线测试接口,通常需要使用工具,比如postman 接口文档太多,不好管理 Swagger也就是为了解决这个问题,当然也不能说Swagger就一定是完美的,当然也有缺点,最明显的就是代码移入性比较强. 1…
0 引言 本文主要记录借用Idea 开发环境下,搭建 Spring Boot 项目框架的过程. 1 系列文档目录 Spring Boot 项目学习 (一) 项目搭建 Spring Boot 项目学习 (二) MySql + MyBatis 注解 + 分页控件 配置 Spring Boot 项目学习 (三) Spring Boot + Redis 搭建 Spring Boot 项目学习 (四) Spring Boot整合Swagger2自动生成API文档 2 第一个Spring boot web…
0 引言 本文主要在Spring Boot 基础项目的基础上,添加 Mysql .MyBatis(注解方式)与 分页控件 的配置,用于协助完成数据库操作. 1 创建数据表 这个过程就暂时省略了. 2 搭建 MyBatis 2.1 修改pom.xml,添加一下依赖 <!-- mybatis --> <dependency> <groupId>org.mybatis.spring.boot</groupId> <artifactId>mybatis-…
django里自带了一个管理页面,也就是后台,下面来学习一下 1.创建超级管理员 python manage.py createsuperuser 键入你想要使用的用户名,然后按下回车键: Username: admin 然后提示你输入想要使用的邮件地址: Email address: admin@163.com 最后一步是输入密码: Password: ********** Password (again): ********* Superuser created successfully.…
###############    stark组件     ################ """ 这个stark组件是非常神奇的 1,独立的一个组件 2,没有model 3,没有views """ ###############    stark组件     ################ """ stark组件站点类 这个是一个重点类,应该是研究这个组件的起点 做了几件事 1,模仿admin,利用了单例模式…
###############  admin基本认识和常用的定制功能    ############### stark组件 对admin的基本认识 1,就是一个app,嵌入到了django里面,你可以在settings中看到 2,就是一个web后台管理工具,使用它可以更加的方便 3,通常我们在生成项目时会在 urls.py 中自动设置好url访问路径 urlpatterns = [ url(r'^admin/', admin.site.urls) ] 4,启动开发服务器,然后在浏览器中访问 ht…
项目需求: 1.分讲师\学员\课程顾问角色,2.学员可以属于多个班级,学员成绩按课程分别统计3.每个班级至少包含一个或多个讲师4.一个学员要有状态转化的过程 ,比如未报名前,报名后,毕业老学员5.客户要有咨询纪录, 后续的定期跟踪纪录也要保存6.每个学员的所有上课出勤情况\学习成绩都要保存7.学校可以有分校区,默认每个校区的员工只能查看和管理自己校区的学员8.客户咨询要区分来源 开发一个项目 首选就是先设计好表结构 表结构设计完成 后面写代码就比较轻松了 我这边创建的项目是crm 项目名为app…
开始今日份整理 1.stark模块基本操作 1.1 stark模块的启动 保证django自动的加载每一个app下的stark.py文件 创建django项目,创建stark项目,start app stark settings注册app stark.app中的apps.py创建def(函数名必须是ready才会自动执行) from django.utils.module_loading import autodiscover_modules class StarkConfig(AppConfi…
. stark也是一个app(用startapp stark创建),目标时把这个做成一个可以拔插的组件 . setting文件下INSTALLED_APPS 路径要配置好(app的注册) . 写好sites.py中的site类,实例化出一个类对象,其他文件都直接引用这个类对象(单例模式), . 模型类和数据库也要确定好 本节内容: 1.写stark的前期准备工作 2.stark组件之启动 3.stark组件之注册功能 4.stark组件之类变量查询 5.stark组件之url二级分发 6.静态文…
今天想把之前写的CRM项目梳理下,顺便回顾一下djiango的部分重要知识. 1.登录页面(包含简单验证码) 首先来看下CRM的登录页面,样式啥的不重要,大家可以去jquery ui的网站上或者其他地方找前端页面,这里主要说一下django的后台实现 登录的视图函数回顾,首先这里登陆我用的是ajax的请求做的,图中有代码注释,主要是提交数据并展示登录错误信息 //登录提交数据 $('#login_in').on('click',function () { // 点击图片后刷新,通过+?的形式实现…
一.实体简介 实体用于在 Microsoft Dynamics CRM 中建立业务数据模型和管理业务数据.例如,可以使用客户.市场活动和事件(案例)等实体跟踪和支持销售.市场营销和服务活动.实体具有一组属性,每个属性表示一个特定类型的数据项.例如,客户实体具有 Name.Address 和 OwnerId 属性.从概念上讲,实体类似于数据库表,实体属性对应于表列.在 Microsoft Dynamics CRM 中创建实体记录(或记录)类似于在数据库表中添加记录.实体划分成三个类别:系统.业务和…
1.环境 win10 python 2.7.14 django 1.8.2 需要用到的依赖包:MySQLdb(数据库的接口包).PIL/pillow(处理图片的包) 安装命令: pip install django==1.8.2 pip install pillow 2.学习django需要的知识点: python基础 mysql基本查询 Html   css  js   web基础  ajax 3.首先开启一个Django项目 在命令行中进入需要创建django项目的目录,目录名称最好不要包括…
中小研发团队架构实践之生产环境诊断工具WinDbg 生产环境偶尔会出现一些异常问题,WinDbg或GDB是解决此类问题的利器.调试工具WinDbg如同医生的听诊器,是系统生病时做问题诊断的逆向分析工具,Dump文件类似于飞机的黑匣子,记录着生产环境程序运行的状态.本文主要介绍了调试工具WinDbg和抓包工具ProcDump的使用,并分享一个真实的案例.N年前不知谁写的代码,导致每一两个月偶尔出现CPU飙高的现象.我们先使用ProcDump在生产环境中抓取异常进程的Dump文件,然后在不了解代码的…
{#portal.html#} {## ————————46PerfectCRM实现登陆后页面才能访问————————#} {#{% extends 'king_admin/table_index.html' %}#} {#{% block right-container-content %}#} {#<div class="container col-lg-offset-3">#} {# <h2><a class="form-signin-he…
培训学校第1到3天先学习HTML现在流行的是HTML5,目前学习的是HTML5规范.(给有基础一定的人学习)前三天学习的是京东页面的编写,和以前写的不同,页面看上去和自己写的一样,但老师讲的还是有很多不同,更加详细和细节.1.程序员的规范写法很重要,要方便别人的观看,因此注释十分重要.<注意点>2.页面的布局先要看好,分成几块,头部和尾部有很多通用的,可以写在一个css文件里.3.在用户主要访问的地方,可以写的尽可能美观,如"|"号,首部标签之间可以用<li>&…
我们知道在CRM的js文件里引用XrmPageTemplate.js后,就可以实现智能提示,但每个js文件都引用太麻烦了,其实可以利用vs的功能让每个js文件自动实现智能提示CRM的js: 另外,我们调试js,发布js文件也是比较繁琐的事情,最好的办法是全部调好,再发布上去,本文介绍用firefox + firebug + frame可以很方便地调试CRM js,全部调好后,再上传js,明显可以加快开发的速度. 1. 智能提示 CRM相关的方法属性的vs 里加上XrmPageTemplate.j…
我们有时要验证下页面上的一些逻辑,比如开始时间不能晚于结束时间,不对时不让保存.我们可以在相关的字段事件上处理,但这如果要判断的字段比较多时,就比较麻烦了. 这时候我们就可以利用Form的OnSave事件,下面介绍下具体的做法: 1. Form的OnSave事件 2. JS方法 function formSave(context) { if (!dateCheck("new_valid_on", "new_valid_to")) { alert("Vali…