- 博客(64)
- 资源 (3)
- 问答 (1)
- 收藏
- 关注
![](https://csdnimg.cn/release/blogv2/dist/pc/img/listFixedTop.png)
原创 使用.Net Core+Vue打造企业通用管理端
转眼间,2021年,已经不知不觉的过去了十二分之一,时间过的真的是快,快到让人害怕。俗话说,做事情要有计划,百亿富豪,有他们自己的小目标,比如先赚十个亿;而我,就不同了,我的目标是今年打造出来一个切切实实能帮到中小型企业进行信息化管理的一个平台,或者是能为中小型企业信息化建设提供一块板砖的作用,同时也能帮助其他想我一样的“码农”们,一起学习、一起成长、一起改变自己,使我们进步一点点,优秀一点点。知道我的朋友(ennn,估计就我一人,哈哈),一直在努力做一个商城系统,但是个人的时间精力真的是有限,然后
2021-02-01 14:51:05
2215
8
原创 vue打包之后,可以进行修改配置后端地址、端口等信息方法
用vue-cli构建的项目通常是采用前后端分离的开发模式,也就是前端与后台完全分离,此时就需要将后台接口地址打包进项目中,但是,难道我们只是改个接口地址也要重新打包吗?当然不行了,那就太麻烦了,怎么解决呢?本文推荐俩种方式。
2023-04-12 23:04:14
5572
6
原创 .Net 使用SqlBulkCopy提示“从 bcp 客户端收到一个对 colid 23 无效的列长度”问题处理
在使用SqlBulkCopy,进行批量数据插入时,有时会提示“从 bcp 客户端收到一个对 colid 23 无效的列长度”,其实看这个,我们都知道是数据库字段长度不够导致的,那问题来了,是哪个字段长度不够呢?
2023-01-11 15:00:08
731
原创 .NetCore基于SignalR、Reids实现客服WebIM系统
WebIM客服系统,说明当前系统与自己的业务系统关联性不强。基于这个前提,最终把WebIM完善成了一个易接入、高度开放、不依赖于业务系统、支持接入多个业务系统的售后服务系统
2022-09-19 11:02:47
887
原创 .Net Core+Vue企业通用管理端之角色权限管理(RBAC)
什么是RBAC?全称:role-based access control 基于角色的权限访问控制作用:实现访问控制
2022-08-08 10:56:10
907
原创 记一次数据迁移的全过程
背景某大型项目的二期开发完成上线,需要初始化大量的数据源,并且第三方BPM系统提供的数据源也并非是完全按照我们所需要的格式、表结构给出的,所以需要做一次数据迁移。所用数据库为SqlServer,本次迁移思路可用于任何数据库间、表结构不一致的迁移。前提及要求明确本地数据迁移的范围数据迁移中数据保持一致性业务表增加迁移数据标识,业务表迁移数据字段ISMOVE='Y'逻辑由第三方提供数据源,经过清洗、过滤、写入到自己的业务库、业务表...
2022-07-11 09:45:00
516
原创 C# Winform 使用 PuppeteerSharp 进行网页截图、生成pdf等操作
基于原项目使用的WebVIew,控件老旧,并且功能不太优化,所以采用了PuppeteerSharp进行了重构。
2022-07-06 14:57:33
4156
1
原创 Nodejs多版本管理安装
由于最近小编新入手一台MateBooks 14s,作为开发者,最刺激的莫过于体验最新版的开发工具,所以开机之后,我全部安装的最新版本的开发工具,奈何,公司的框架有些老旧,导致一个前端vue的项目install安装,各种版本不兼容问题,为此才想到了nodejs多版本管理。...
2022-06-12 16:07:48
1796
原创 优雅的搜索拼多多优惠券(一)
如何快速查询目标商品的隐藏优惠券PC端访问网址:http://51softwarebox.com/duoduojuan/#手机端: 1.微信搜索小程序:券多多呀 2.手机端访问网址:http://mjuan.51softwarebox.com/通过上述俩个方法,快速查询隐藏优惠券...
2021-09-08 16:57:53
174
原创 .NetCore获取拼多多平台优惠券
一、前期准备工作1.打开多多进宝,进行账号注册,打开推广者管理,新增媒体登记,选择自有平台=>网站,进行网站信息的登记,同时完成网站校验。到此,基础工作基本完成,具体详细步骤不再赘述,主要讲下接口对接以及编码,这才是让人最兴奋的地方。二、公共部分提取1.在进行接口对接前,先熟读下其开发文档,由文档我们知道,其接口地址、以及接口中有公共参数俩部分是雷同的,所以,我们把接口请求封装为帮助类DuoduokeRequestUntil.cs,因为其所有接口的错误返回部分一致,我们可以创建一个错误类,
2021-08-15 17:58:25
426
原创 Vue自定义控件封装---数据选择框
控件背景:做业务系统,我们都知道,经常会用一些弹框,然后进行数据选择,选择完之后,将数据返回到上一个页面,并关闭当前弹框目的:主要是为了减少代码量,提高工作效率 将更多的一些配置放到数据库中,后续调整的时候,主要调整数据库,减少代码的调整率,同时也就减少了系统部署的次数实现结果:1.前端// 引用控件import userSelect from '@/layout/components/DataSelect/SelectDataDialog'// 注册控件components:
2021-05-25 18:25:26
477
原创 .Net Core通过Signalr搭建WebIM,跨域问题处理
1.我们都知道.net core的跨域问题处理,此处我们简单描述下,我们可以通过自定义中间件CorsSetup.cs来实现自定义多个域名之前的跨域访问,代码如下:/// <summary> /// Cors 跨域 启动服务 /// </summary> public static class CorsSetup { public static void AddCorsSetup(this IServiceCollection se
2021-04-13 22:42:55
824
1
原创 .Net Core +signlar + redis webim代码实现(三)
接上篇文章,上篇文章,我们大概实现了signlar的相互通知、发送消息的功能,但是一个webim怎么可以没有表情、怎么可以不能发送文件呢,这期我们主要说下发送表情、以及文件。
2021-04-13 18:27:55
344
原创 .Net Core +signlar + redis webim代码实现(二)
项目简述: 本项目主题思想是通过signalr+redis实现的webim,项目更多应用场景用于客户使用软件过程中的问题沟通,主要用于软件的售后场景部分,一个后端,兼容多个前端项目,具体代码实现,此处不过多赘述,直接查看github,点击直通车>>>,简述下前端的使用步骤:1. 在前端项目中,引用全局js:http://signlar.51softwarebox.com/script/signalr/ChatMain1.0.js2.在页面底部调用初始化方法:new InitChat
2021-04-06 14:43:02
324
2
原创 nginx支持signalr
问题点:最近在做一个在线客服系统,已经基本上完成了,所以想着部署到测试上进行测试一番,结果刚部署上去就碰到了“妖娥子”,打开地址,点击上线按钮,没有反应,F12监控看了一下,发现报错,错误信息如下:SignalR地址直接报错404然后看后端服务器报错信息,好像并没有发现什么错误,因为本地没有问题,所以就想到了服务器上nginx是不是拦截了,因为Nginx做代理的时候,默认配置不支持WebSocket。而Signalr本质就是WebSocket,所以问题点就找到了。解决方案:1.需要修
2021-04-06 11:37:00
1908
原创 .Net Core +signlar + redis webim代码实现(一)
前言之前大概画过一个关于webim项目的架构设计,架构肯定还有很多需要改进地方,最近这段时间就大概把这个进行了代码实现,分享、记录一下,也请各位大佬多多指点
2021-03-08 15:51:34
327
4
原创 解决阿里云windows服务器运行nginx报错
Nginx在阿里云win2012R2下启动报错:bind() to 0.0.0.0:80 failed (10013: An attempt was made to access a socket in a way forbidden by its access permissions) 。大概意思是80端口被占用,通过下面的命令可以具体查看哪些进程占用了80端口netstat -aon | findstr "80" 结果发现占用的pid是4,名字是System。怎么禁用呢?解决方案如.
2021-02-03 23:53:27
443
1
原创 vue使用element-ui,替换svg,使用iconfont
由于项目中的菜单图标是使用的是svg,更换图标有些麻烦,所以直接改成了阿里的iconfont。1.首先下载在阿里iconfont上准备好的图标,下载下来的文件解压如下2.在项目的assets文件夹下增加iconfont文件夹,将上述文件copy过去3.在main.js中全局引入import'@/assets/iconfont/iconfont.css'//引入iconfont4.找到项目中菜单的图标部分可以看到,实在dom元素渲染的时候增加的,所以我们只需要简单修改下就...
2021-01-19 17:13:36
2152
原创 SuperCode登录业务流程简述
SuperCode登录业务讲解1.先看业务流程图2.因为是前后端分离项目所以用了Jwt进行用户状态的鉴权等。然后可能有有人问,在使用UUID,不就有点多此一举了吗?强行解释一波,因为有在线人员的管理功能(强踢),而如果单纯的使用Jwt进行鉴权,解析出来的用户ID,然后进行强踢,这样的话就会有一个问题:如果允许同一个账号允许多地同时登录的话,那就不知道该踢哪个用户的链接了,所以通过UUID来进行用户强踢功能,所以才有了UUID的生成逻辑.3.用户登录的时候,生成UUID+Jwt字符串,保存到redis
2021-01-12 19:20:13
358
原创 用Sql搞定SqlServer上只读用户的增加与授权
1.第一步exec sp_addlogin '只读用户名', '只读用户名密码', '数据库名称'go2.第二步use刚授权的数据库名称exec sp_grantdbaccess '只读用户名'go3.第三步use 刚授权的数据库名称grant selecton需要授权的表名to "只读用户名"4.需要授权多个表,重复执行第三步即可...
2020-11-23 15:11:03
483
原创 SqlServer删除列报错
1.删除字段:ALTER TABLE CM_DynamicCostSnapshotNoTaxAmt DROP COLUMN VOWithNoSignOffAmt提示报错原因是,该列存在约束,需要先删掉约束执行:exec sp_helpconstraint CM_DynamicCostSnapshotNoTaxAmt查看表的所有约束,找到上述列对应的约束删掉alter table CM_DynamicCostSnapshotNoTaxAmt drop constraint DF__C.
2020-08-25 14:51:24
811
原创 将PPT文件转换成HTML格式
/// /// 将PPT文件转换成HTML格式 /// /// PPT文件路径 private void PptToHtmlFile(string PptFilePath) { ApplicationClass ac = new ApplicationClass();
2020-08-25 13:53:43
987
1
原创 Nuxtjs-Error:unable to verify the first certificate 解决方案
在Nuxtjs中,使用axios发起https请求时,有时候会报错,显示:unable to verify the first certificate,这个是因为我们发起https请求时,后端没有处理一些证书认证的问题,如果是正式环境,一定要后端来处理这个问题,这样的话,能提交系统接口的安全性,但是更多时候,我们在前端开发就有时候可可有可无了,为了提高效率嘛,更主要的是可以不依附于后端,哈哈哈....1.在封装的axios.js文件中引入http,对http进行配置import https fro
2020-08-23 23:12:45
4446
原创 SqlServer俩张表取差集、交集、并集
Union 获取两个表的合集并且自动过滤重复数据SELECT * FROM tableAUNION SELECT * FROM tableBUnion all 获取两个表的合集并且不过滤重复数据SELECT * FROM tableAUNION ALL SELECT * FROM tableBIntersect 获取两个表的交集SELECT * FROM tableAINTERSECTSELECT * FROM tableBEXCEPT获取俩个表的差集示例:..
2020-08-21 16:04:40
4366
原创 一个VUE的开源商城系统,前后端分离
前端简介:GitHub开源地址 语言:Javascript 主框架:Vue UI框架:element-UI 状态管理:Vuex 网络请求:axios 富文本编辑器:tinymce 日期时间处理:moment 代码自动格式化插件:eslint后端简介:语言:.Net Core物理数据库:Mysql 缓存数据库:Redis/MemoryCache(.Net Core内置缓存),可配置选择 前后端鉴权:JWT ORM:SqlSugar IOC容器:Aut...
2020-08-20 18:12:14
3184
9
原创 sql server增加只读用户,授权读取指定表
exec sp_addlogin '用户名', '密码', '库名'gouse 库名exec sp_grantdbaccess '用户名'gouse库名grant selecton表明to "用户名"授权多个表,重复执行:use库名grant selecton表明to "用户名"
2020-08-18 15:27:40
1059
原创 记录:Nuxt.js使用scss,页面中引入公共变量解决方案
实战项目记录:Nuxt.js使用scss,页面中引入公共变量解决方案1.首先安装必备依赖npm install css-loader node-sass postcss-loader sass-loader style-loader --save -dev2.在项目的assets目录下新建一个css目录,然后在该目录下新建一个index.scss文件,用这个文件作为scss的入口文件,在这个文件里引入其他的scss即可3.nuxt.config.js中配置经过以上配置发现,i
2020-08-16 00:06:37
815
原创 Vue使用Nuxt.js进行服务器端渲染
Nuxt.js项目创建基于 Vue.js 自动代码分层 服务端渲染 强大的路由功能,支持异步数据 静态文件服务 ES6/ES7 语法支持 打包和压缩 JS 和 CSS HTML 头部标签管理 本地开发支持热加载 集成 ESLint 支持各种样式预处理器: SASS、LESS、 Stylus 等等新建项目:npx create-nuxt-app <项目名称> 执行上述命令会进行一些依赖按照,紧接着会有一些简单配置 在集成的服务器端框架之间进行选择 UI框架 ..
2020-08-15 17:26:44
480
原创 Vue自定义控件封装---操作按钮栏的封装
做过后端管理系统的“猿们”都知道,后端界面的框架无非就是左右结构【左边是菜单栏,右边是具体业务的功能界面】。但是右边的功能界面,我们又能拆分出来一些公用的控件:搜索栏、操作按钮栏、列表【table、tree、treetable】等,今天小编大致说下自定义操作按钮栏控件的封装以及实现。首先,在做自定义控件之前,我们要想清楚我们封装自定义控件的目的,以目标为导向去实现。(以上内容纯属片汤话儿)1.目的:实现操作按钮的公用、以及按钮权限控制2.实现结果:<MenuBottomToolbar
2020-08-05 15:56:49
1299
原创 SuperMall简介
最近一直在学习. net core以及vue,个人觉得可以拿出来溜溜了,哈哈,所以想做一个商城管理系统,最近疫情确实给线下实体店带来了很大的冲击,所以搞个线上商城没准还能解决一部分用户的实际情况,也正好检验一下自己的学习水平。准备搭建的商城我叫它SuperMall(超级商城),也真的希望能给自己、商家以及有需要的人带来方便。SuperMall的系统搭建分为:后端. net core+mysql,前端采用element-UI框架。后端使用到的技术为:redis来做缓存数据库,signalR做即时通讯,jwt
2020-05-20 10:21:27
3869
原创 Oracle行转列,并同时递归向上汇总
SELECTACCOUNTCODEID, PARENTCODEID, COMPANYID, BUDGETYEAR, PLANMAINID, PLANMAINCODE,SUM(THISADJUSTMENT1) AS THISADJUSTMENT1,SUM(THISADJUSTMENT2) AS THISADJUSTMENT2,SUM(THISADJUSTMENT3) AS THISADJU...
2020-01-13 17:48:00
1182
原创 一条sql搞定递归向上汇总
1.根据末级递归查询出上级,形成树形结构SELECT DISTINCT ACC.ACCOUNTCODEID, ACC.PARENTCODEID, ACC.ACCOUNTCODE, ACC.ACCOUNTCODENAME,ACC.FIRSTORDER, ACC.SECONDORDER,T.PLANMAINID, T.PLANMAINNAME, T.PLANMAINCODE,'Y' AS ...
2019-12-20 17:21:24
2402
2
原创 Oracle with as 临时表的高级用法
--利用with as 临时表 进行插入(修改)操作INSERT INTO TEMP_REFRESHMANAGERDETAIL (PLAZABUDGETINFOID, PLAZABUDGETID, ACCOUNTCODEID, CODEFORMAT, NFNBUDGETMONTH1, NFNBUDGETMONTH2, NFNBUDGETMONTH3, NFNBUDGETMONTH4, NF...
2019-11-22 14:41:49
1355
原创 mvc 继承Controller,实现页面的权限控制
创建BaseController.cs ,重写Initialize()方法protected override void Initialize(RequestContext requestContext) { base.Initialize(requestContext); bool IsOK = false;
2018-02-05 11:42:54
1978
原创 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错
异常信息: 使用 JSON JavaScriptSerializer 进行序列化或反序列化时出错。字符串的长度超过了为 maxJsonLength 属性设置的值。利用JavaScriptSerializer 反序列话是提示字符串长度过长,解决方法一:1. 在web.config中configuration
2016-12-27 13:44:55
4097
原创 js拖动div或图片
function small_down(e) { var obig = document.getElementById("imgArr"); var osmall = document.getElementById("UserImg"); document.onmousemove = small_move;
2016-12-18 12:19:50
754
jquery-migrate-1.2.1.js
2016-11-26
.Net Core + Mysql后端接口返回日期格式,数值丢失
2022-07-28
TA创建的收藏夹 TA关注的收藏夹
TA关注的人