TMS

基于C#.NET三层架构物流运输管理系统(TMS)-C/S框架网原创作品

流过昼夜 提交于 2020-12-19 04:56:12
TMS系统为三方物流、专线物流企业提供物流运输一体化服务,提高运输效率,降低管理成本。 物流运输管理系统(TMS)适用于物流运输公司、各企业下面的运输车队等,它主要包括订单管理、配载作业、调度分配、行车管理、GPS车辆定位系统、车辆管理、人员管理、数据报表、基本信息维护、系统管理等模块。该系统对车辆、驾驶员、线路等进行全面详细的统计考核,能大大提高运作效率,降低运输成本,使您在激烈的市场竞争中处于领先优势。 TMS系统产品优势: 1) 中大型三方物流企业成功案例 物流运输管理系统(TMS)于2016年研发成功并正式上线,安装有150多个PC客户端。 客户企业全国拥有多家分公司,年营业额5~8个亿,TMS系统具备集团企业报表分析能力以及财务独立核算体系。系统已成功运行3年,为客户创造巨大经济效益。 2) 拥有产品独立销售权 与客户签订《TMS系统代理销售协议》,珠海市喜鹊信息技术有限公司拥有独立销售权。 3) 拥有定制开发能力 TMS团队拥有7年经验的物流行业管理顾问,以及提供TMS系统定制开发服务团队。 C/S架构的物流运输管理系统-TMS系统基于 CSFramework快速开发框架V4.5.3企业版 研发,项目总投资100万,项目研发周期8个月,上线稳定期2个月。先后服务30家物流企业。 C/S系统开发框架-企业版 v4.5.3: http://www.csframework

以开发者大赛为新起点 诺捷科技演绎用友平台生态新范式

偶尔善良 提交于 2020-12-18 14:01:36
面向中国企业服务市场,用友已经构建起平台生态新范式。 出品 | 常言道 作者 | 丁常彦 1962年,美国著名科学哲学家托马斯·库恩提出了一种新概念——范式,在库恩看来,“科学革命”的实质就是“范式转换”。如今,云计算等新技术的普及,商业软件领域也正在上演一场“范式转换”。 尤其在企业加速应用数智化技术开展商业创新的今天,传统管理软件从开发模式到销售模式,从实施模式到服务模式,都发生了翻天覆地的变化。企业也迫切需要能够便捷实现商业创新的平台,但这样的平台如何构建?又会给平台的参与者和企业客户带来怎样的价值? 在不久前圆满落幕的“万物生长 SaaS加速——‘用友·华为云杯’第二届企业云服务开发者大赛”上,上海诺捷信息科技公司凭借其参赛作品“WMS仓储管理系统”,不仅荣获企业赛道二等奖和华为EI创新奖,还充分展现了商业创新平台的落地和平台生态的新范式。 透过这一新范式,我们既看到了用友低代码开发平台YonBuilder与华为云融合,给软件开发带来的强大助力;也看到了用友商业创新平台YonBIP在推动传统管理软件变革上,所激发出的无限想象空间。 从今天起,用一种新的方式构建WMS 众所周知,在企业数智化转型过程中,WMS仓储管理系统负责管理仓库所有活动流程。一套功能强大的WMS,可以帮助企业大大提升供应链的整体效率,继而增强企业的竞争力。 作为一家专业的供应链与物流管理解决方案供应商

Rocket

你。 提交于 2020-12-18 02:57:24
https://mp.weixin.qq.com/s/0u9jM2u-FkTlrk3QNuZaBw 简单介绍JtagTap的实现。 1. 简单介绍 定义TAP(Test Access Port)所需要的相关模块,并实现一个生成TAP的方法。 2. JTAGIO 定义JTAG模块的输入输出接口,输入输出方向是从master side的视角出发决定: 其中,TDO是一个三态值: 3. JtagOutput 定义JTAG模块的输出信号: a. state:JTAG的当前状态; b. instruction:当前执行的指令; c. reset:在Test-Logic-Reset状态输出的复位信号; 4. JtagControl 输入Jtag模块的控制信号,这里是复位信号: 5. JtagBlockIO 聚合在一起的Jtag模块的输入输出接口: 其中: a. jtag:从slave侧看的TCK/TMS/TDI/TDO等接口; b. control:Jtag模块控制信号,这里是复位信号; c. output:Jtag模块的输出信号; d. idcode:根据类参数决定是否包含JTAGIdcodeBundle数据,用以支持IDCODE指令: e. irLength:指令寄存器的宽度; 6. JtagControllerIO 定义Jtag控制器的输入输出接口: a. dataChainOut

“页面权限控制”还不够!企业级低代码开发平台安全机制解密

筅森魡賤 提交于 2020-12-10 07:37:21
在之前的文章中,我们讨论了企业级低代码开发平台对系统架构和开放性的技术要求。 今天,我们再深入一层,从安全可控角度审视低代码开发平台需要提供哪些安全机制,才能保障企业级应用的安全可控。这里的“安全可控”不仅指应用层面的用户认证与访问权限控制,更是一个由部署安全、系统安全和应用安全三个层次构成的全方位安全体系。 什么是企业级应用开发平台? 在现实操作中,企业系统的安全性与成本投入之间通常会存在一个平衡点,企业级应用的安全性要求会远高于周边非核心业务系统。这里的企业级应用是企业软件应用中的一个类别,被称为软件开发领域的“明珠”。典型的企业级应用通常可以分为三个大类,即支撑企业核心业务的应用系统(如生产制造业的MES、交通运输业的TMS)、涵盖企业全流程的大规模综合型系统和基于行业软件定制开发的个性化模块。这些企业级应用支撑着企业的核心业务发展,能给企业带来更高价值的同时,也提出了更严格的技术标准。 所以,选择一款企业级应用低代码开发平台,除了生产力外,我们还需关注工具本身的技术架构、开放程度及安全可控性等关键指标。这有这样才能构建出满足核心业务需求的企业级应用,给企业数智化转型升级打下坚实的基础。 本文将专注于安全机制,以活字格企业级低代码开发平台为例,从部署到应用,全面介绍具备能够支撑企业级应用开发的低代码开发工具,及这类工具的安全可控设计。 部署安全,企业对应用和数据具有完整控制权

“外联数据库”还不够!企业级低代码开发平台开放性解密

故事扮演 提交于 2020-12-10 07:37:06
在之前的文章中,我们讨论了企业级低代码开发平台对系统架构提出的技术要求。今天,我们在架构的基础上,关注开放性为企业级应用开发带来的重要价值,详细了解低代码开发平台如何通过与各种软硬件与互联网服务深度集成,打通数据孤岛,协同增效推进企业数智化转型升级。 什么是企业级应用开发平台? 企业级应用是企业软件应用中的一个类别,被称为软件开发领域的“明珠”。典型的企业级应用通常可以分为三个大类,即支撑企业核心业务的应用系统(如生产制造业的MES、交通运输业的TMS)、涵盖企业全流程的大规模综合型系统和基于行业软件定制开发的个性化模块。这些企业级应用支撑着企业的核心业务发展,为推进企业数字化打下坚实的基础。 这些特性决定了能够开发企业级应用的工具,必然能够满足互联网应用的开发,反之则不尽然。这就意味着选择一款企业级应用低代码开发平台,除了生产力外,还需关注工具本身的技术架构、开放程度及安全可控性等关键指标。 本文将专注于开放性,以活字格企业级低代码开发平台为例,从多源数据整合到各层编程接口,全面介绍具备能够支撑企业级应用开发的低代码开发工具,及这类工具的开放性设计。 剑指“数据孤岛”,支持多源数据整合 作为系统集成的重要组成部分和基础能力,多源数据整合被更多开发者和企业 IT 决策人员视为低代码开发平台产品的必备功能。截止目前,少数先进的低代码开发平台厂商已经开放了数据访问能力

【mybatis】-- if标签判断字符串相等时失效

有些话、适合烂在心里 提交于 2020-12-08 07:44:20
原mapper的sql语句如下: <select id="countOutFinishedOrdersByDeliverSign" resultType="int" > select count(1) cnt from order_customer where status = #{status} <if test="sign!=null and sign!='' and sign=='1'"> AND tms_delivery_flag is null </if> <if test="sign!=null and sign!='' and sign=='2'"> AND tms_delivery_flag = 1 </if> and last_modified_date > #{startDate} and last_modified_date <= #{endDate} </select> 以上:sign是字符串,判断等于的条件时,使用了sign=='1' 和sign=='2' 由于项目暂时还没有集成p6spy,没办法打印出sql,所以,自己按照条件拼接的sql语句到Navicat中执行,条件不一样,执行结果也不一样。但是程序接口返回的结果集却是一样的。 分析原因: sql没有问题,查询结果没有问题。然后尝试去掉了其中的判断条件 AND tms_delivery_flag is

JTAG各类接口针脚定义及含义

核能气质少年 提交于 2020-12-05 09:57:14
一、引脚定义 Test Clock Input (TCK) -----强制要求1 TCK在IEEE1149.1标准里是强制要求的。TCK为TAP的操作提供了一个独立的、基本的时钟信号,TAP的所有操作都是通过这个时钟信号来驱动的。 Test Mode Selection Input (TMS) -----强制要求2 TMS信号在TCK的上升沿有效。TMS在IEEE1149.1标准里是强制要求的。TMS信号用来控制TAP状态机的转换。通过TMS信号,可以控制TAP在不同的状态间相互转换。 Test Data Input (TDI) -----强制要求3 TDI在IEEE1149.1标准里是强制要求的。TDI是数据输入的接口。所有要输入到特定寄存器的数据都是通过TDI接口一位一位串行输入的(由TCK驱动)。 Test Data Output (TDO) -----强制要求4 TDO在IEEE1149.1标准里是强制要求的。TDO是数据 输出 的接口。所有要从特定的寄存器中输出的数据都是通过TDO接口一位一位串行输出的(由TCK驱动)。 Test Reset Input (TRST) ---- 可选项1 这个信号接口在IEEE 1149.1标准里 是可选的 ,并不是强制要求的。TRST可以用来对TAPController进行复位(初始化)。因为通过TMS也可以对TAP

TMS320C6678开发笔记---IBL编译与分析3

陌路散爱 提交于 2020-11-20 11:23:20
9.3.7 makefile 修改 C:\MinGW\msys\1.0\ibl\boot_loader\ibl\src\make\makefile 9.3.8 iblinit.c 修改 C:\MinGW\msys\1.0\ibl\boot_loader\ibl\src\main\iblinit.c 将IBL_ENTER_ROM设为0,或者将函数iblEnterRom();注释掉 9.3.9 将MinGW命令行输出信息输出到文件 IBL_buildibl_6678 2>&1 | tee -a log3 9.3.10 编译小问题 将IBL_CFG_SPI_MAP_TABLE_DATA_ADDR_LSW擅自改成0x500了,导致一下问题出现(乌龙) C:\MinGW\msys\1.0\ibl\boot_loader\ibl\src\cfg\c66x\iblcfg.h 9.3.11 spiRom.dat 后期处理 修改文件:C:\MinGW\msys\1.0\ibl\boot_loader\ibl\src\make\makestg2 修改后编译现象为: 9.3.12 spiRom.map.pre 文件修改 IBL烧写到NOR flash中,原理和普通的app程序烧到flash中一样,生成的i2crom.ccs(spi和i2c模式下生成的均叫作此文件)文件

SOM-TL665x是TI系列多核架构的定点/浮点TMS320C665x高端DSP核心板

白昼怎懂夜的黑 提交于 2020-11-15 19:31:08
1.核心板简介 基于TI KeyStone C66x多核定点/浮点DSP TMS320C665x,单核TMS320C6655和双核TMS320C6657管脚pin to pin兼容,同等频率下具有四倍于C64x+器件的乘累加能力; 主频1.0/1.25GHz,每核运算能力可高达40GMACS和20GFLOPS,包含2个Viterbi协处理器和1个Turbo协处理解码器,每核心32KByte L1P、32KByte L1D、1MByte L2,1MByte多核共享内存,8192个多用途硬件队列,支持DMA传输; 支持PCIe、SRIO、HyperLink、uPP、EMIF16、千兆网口等多种高速接口,同时支持I2C、SPI、UART、McBSP等常见接口; 连接稳定可靠,80mm*58mm,体积极小的C66x核心板,采用工业级高速B2B连接器,关键大数据接口使用高速连接器,保证信号完整性; 提供丰富的开发例程,入门简单,支持裸机和SYS/BIOS操作系统。 图 1 核心板正面图 图 2 核心板背面图 由广州创龙自主研发的SOM-TL665x是一款基于TI KeyStone系列多核架构的定点/浮点TMS320C665x高端DSP核心板,采用沉金无铅工艺的8层板设计,专业的PCB Layout保证信号完整性的同时,经过严格的质量控制,满足多种环境应用。 SOM

TI6678 MSMC关闭Cache方法总结

独自空忆成欢 提交于 2020-10-25 00:52:47
背景 TI6678的MSMC在默认条件下是开启对L1d的缓存的,但是却没有硬件机制维护MSMC的Cache一致性,在这种情况下如果将多核共享变量存放在MSMC中,将会出现多核访问共享变量不一致的问题。在某个项目进行过程中需要使用MSMC存放核间信号量等共享数据供八核使用,经过查阅资料与实验实现了这一功能,故总结如下,仅供参考。 (推荐使用方法二) 简单举例 假设共享变量Flag存放于0x0c000000处,核0负责对Flag进行写,核1负责对Flag进行读。 核0操作如下: while(1) { *(unsigned int*)(0x0c000000)=0x1; //将Flag设置为0x1; *(unsigned int*)(0x0c000000)=0x2; //将Flag设置为0x2; } 核1操作如下: unsigned int flag=0; unsigned int *val=(unsigned int*)(0x0c000000); while(1) { flag= *val; //读取Flag值 } 运行的具体过程为:核0先将FLag写为0x1,然后等待在写0x2的语句处,此时核1读取一次Flag。接着核0将Flag写为0x2,然后等待在写0x1的语句处,此时核1再次读取FLag,以此循环读写。 **在MSMC默认开启Cache的条件下