当前位置: 首页 > news >正文

萤火php端: 查询数据的时候报错: “message“: “Undefined index: pay_status“,

代码:getGoodsFromHistory  

<?php
// +----------------------------------------------------------------------
// | 萤火商城系统 [ 致力于通过产品和服务,帮助商家高效化开拓市场 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2017~2024 https://www.yiovo.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed 这不是一个自由软件,不允许对程序代码以任何形式任何目的的再发行
// +----------------------------------------------------------------------
// | Author: 萤火科技 <admin@yiovo.com>
// +----------------------------------------------------------------------
declare (strict_types=1);namespace app\api\service;use app\api\model\Order as OrderModel;
use app\api\model\order\Delivery as DeliveryModel;
use app\api\model\OrderAddress as OrderAddressModel;
use app\api\service\User as UserService;
use app\common\service\Order as OrderService;
use app\common\service\Express as ExpressService;
use app\common\enum\order\OrderStatus as OrderStatusEnum;
use cores\exception\BaseException;/*** 订单服务类* Class Order* @package app\common\service*/
class Order extends OrderService
{/*** 获取物流信息* @param int $orderId 订单ID* @return mixed* @throws BaseException* @throws \think\db\exception\DataNotFoundException* @throws \think\db\exception\DbException* @throws \think\db\exception\ModelNotFoundException*/public function express(int $orderId){// 获取发货单列表$model = new DeliveryModel;$list = $model->getList($orderId);// 整理物流跟踪信息return $this->getExpressTraces($orderId, $list);}/*** 整理物流跟踪信息* @param int $orderId 订单ID* @param $list* @return mixed* @throws BaseException* @throws \think\db\exception\DataNotFoundException* @throws \think\db\exception\DbException* @throws \think\db\exception\ModelNotFoundException*/private function getExpressTraces(int $orderId, $list){// 订单收货地址$address = OrderAddressModel::detail(['order_id' => $orderId]);// 整理物流跟踪信息$Express = new ExpressService;foreach ($list as $item) {if (!empty($item['express'])) {$item['traces'] = $Express->traces($item['express'],$item['express_no'],$address,$this->getStoreId());}}return $list;}/*** 获取某商品的购买件数* @param int $userId 用户ID* @param int $goodsId 商品ID* @param int $orderSource* @return int*/public static function getGoodsBuyNum(int $userId, int $goodsId, int $orderSource): int{return (int) (new OrderModel)->setBaseQuery('order', [['order_goods', 'order_id']])->where('order_goods.user_id', '=', $userId)->where('order_goods.goods_id', '=', $goodsId)->where('order.order_source', '=', $orderSource)->where('order.order_status', '<>', OrderStatusEnum::CANCELLED)->where('order.is_delete', '=', 0)->sum('order_goods.total_num');}/*** 根据用户id 来判断是否是新用户* @return \app\api\model\Goods[]|array|\think\Collection* @throws \cores\exception\BaseException* @throws \think\db\exception\DataNotFoundException* @throws \think\db\exception\DbException* @throws \think\db\exception\ModelNotFoundException*/public function getGoodsList(){// 当前用户ID$userId = UserService::getCurrentLoginUserId();// 查询列表记录return (new orderModel)->where('user_id', '=', $userId)->where('is_delete', '=', 0)->select();}public function getGoodsFromHistory(){$userId = UserService::getCurrentLoginUserId();return (new OrderModel())->alias('a')->join('order_goods b', 'a.order_id = b.order_id')->where('a.user_id', '=', $userId)->where('a.is_delete', '=', 0)//->field('b.goods_id,a.order_status')->field('b.goods_id,a.order_status,a.pay_status,a.delivery_status,a.receipt_status') // 选择商品ID和购买总数->select()->toArray();}}

表结构:

CREATE TABLE `yoshop_order` (`order_id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '订单ID',`order_no` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '订单号',`order_type` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '订单类型(10实物订单)',`total_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '商品总金额(不含优惠折扣)',`order_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '订单金额(含优惠折扣)',`coupon_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '优惠券ID',`coupon_money` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '优惠券抵扣金额',`points_money` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '积分抵扣金额',`points_num` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '积分抵扣数量',`pay_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '实际付款金额(包含运费)',`update_price` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '后台修改的订单金额(差价)',`buyer_remark` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '买家留言',`pay_method` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '支付方式(余额/微信/支付宝)',`pay_status` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '付款状态(10未付款 20已付款)',`pay_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '付款时间',`trade_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '第三方交易记录ID',`delivery_type` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '配送方式(10快递配送 20门店自提 30无需配送)',`express_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '运费金额',`delivery_status` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '发货状态(10未发货 20已发货 30部分发货)',`delivery_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '发货时间',`receipt_status` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '收货状态(10未收货 20已收货)',`receipt_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '收货时间',`order_status` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '订单状态(10进行中 20取消 21待取消 30已完成)',`points_bonus` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '赠送的积分数量',`merchant_remark` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '商家备注',`is_settled` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '订单是否已结算(0未结算 1已结算)',`settled_time` int(10) unsigned NOT NULL DEFAULT '0' COMMENT '订单结算时间',`is_comment` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '是否已评价(0否 1是)',`order_source` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '订单来源(10普通订单 20砍价订单 30秒杀订单)',`order_source_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '来源记录ID',`order_source_data` varchar(500) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '来源记录的参数 (json格式)',`platform` varchar(20) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '来源客户端 (APP、H5、小程序等)',`user_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户ID',`is_delete` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '是否删除',`store_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商城ID',`create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',`update_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '更新时间',PRIMARY KEY (`order_id`),UNIQUE KEY `order_no` (`order_no`),KEY `store_id` (`store_id`),KEY `user_id` (`user_id`),KEY `pay_status` (`pay_status`),KEY `delivery_status` (`delivery_status`),KEY `receipt_status` (`receipt_status`),KEY `order_status` (`order_status`),KEY `is_settled` (`is_settled`),KEY `order_source` (`order_source`)
) ENGINE=InnoDB AUTO_INCREMENT=26 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订单记录表';CREATE TABLE `yoshop_order_goods` (`order_goods_id` int(11) unsigned NOT NULL AUTO_INCREMENT COMMENT '订单商品ID',`goods_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商品ID',`goods_type` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '商品类型(10实物商品)',`goods_name` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '商品名称',`image_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商品封面图ID',`deduct_stock_type` tinyint(3) unsigned NOT NULL DEFAULT '20' COMMENT '库存计算方式(10下单减库存 20付款减库存)',`spec_type` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '规格类型(10单规格 20多规格)',`goods_sku_id` varchar(150) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '商品sku唯一标识',`goods_props` varchar(255) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT 'SKU的规格属性(json格式)',`content` longtext COLLATE utf8mb4_unicode_ci NOT NULL COMMENT '商品详情',`goods_no` varchar(100) COLLATE utf8mb4_unicode_ci NOT NULL DEFAULT '' COMMENT '商品编码',`goods_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '商品价格(单价)',`line_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '商品划线价',`goods_weight` double unsigned NOT NULL DEFAULT '0' COMMENT '商品重量(Kg)',`is_user_grade` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '是否存在会员等级折扣',`grade_ratio` tinyint(3) unsigned NOT NULL DEFAULT '0' COMMENT '会员折扣比例(0-10)',`grade_goods_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '会员折扣的商品单价',`grade_total_money` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '会员折扣的总额差',`coupon_money` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '优惠券折扣金额',`points_money` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '积分金额',`points_num` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '积分抵扣数量',`points_bonus` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '赠送的积分数量',`total_num` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '购买数量',`total_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '商品总价(数量×单价)',`total_pay_price` decimal(10,2) unsigned NOT NULL DEFAULT '0.00' COMMENT '实际付款价(折扣和优惠后)',`delivery_status` tinyint(3) unsigned NOT NULL DEFAULT '10' COMMENT '发货状态(10未发货 20已发货 30部分发货)',`delivery_num` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '已发货数量',`is_comment` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '是否已评价(0否 1是)',`order_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '订单ID',`user_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '用户ID',`goods_source_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '来源记录ID',`store_id` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '商城ID',`create_time` int(11) unsigned NOT NULL DEFAULT '0' COMMENT '创建时间',PRIMARY KEY (`order_goods_id`),KEY `goods_id` (`goods_id`),KEY `order_id` (`order_id`),KEY `user_id` (`user_id`),KEY `store_id` (`store_id`)
) ENGINE=InnoDB AUTO_INCREMENT=27 DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_unicode_ci COMMENT='订单商品记录表';

我只想查到用户下单的商品的id 。  然后filed 中只写了  goods_id  报错如上。 

然后发现在Order 模型中有一个将 订单的付款状态返回成  0-》 未支付 的函数 ,因为我查询出来的数据没有这个字段所以报错。  加上所需要的字段就正常了

Order 模型代码:getStateTextAttr

<?php
// +----------------------------------------------------------------------
// | 萤火商城系统 [ 致力于通过产品和服务,帮助商家高效化开拓市场 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2017~2024 https://www.yiovo.com All rights reserved.
// +----------------------------------------------------------------------
// | Licensed 这不是一个自由软件,不允许对程序代码以任何形式任何目的的再发行
// +----------------------------------------------------------------------
// | Author: 萤火科技 <admin@yiovo.com>
// +----------------------------------------------------------------------
declare (strict_types=1);namespace app\common\model;use app\api\model\Order as OrderModel;
use app\api\service\User as UserService;
use cores\BaseModel;
use app\common\service\Order as OrderService;
use app\common\enum\order\PayStatus as PayStatusEnum;
use app\common\enum\order\OrderStatus as OrderStatusEnum;
use app\common\enum\order\ReceiptStatus as ReceiptStatusEnum;
use app\common\enum\order\DeliveryStatus as DeliveryStatusEnum;
use app\common\library\helper;
use think\db\exception\DataNotFoundException;
use think\db\exception\DbException;
use think\db\exception\ModelNotFoundException;
use think\model\relation\HasOne;
use think\model\relation\HasMany;
use think\model\relation\BelongsTo;/*** 订单模型* Class Order* @package app\common\model*/
class Order extends BaseModel
{// 定义表名protected $name = 'order';// 定义表名(外部引用)public static string $tableName = 'order';// 定义主键protected $pk = 'order_id';// 定义别名protected string $alias = 'order';/*** 追加字段* @var array*/protected $append = ['state_text',   // 售后单状态文字描述];/*** 订单商品列表* @return HasMany*/public function goods(): HasMany{$module = self::getCalledModule();return $this->hasMany("app\\{$module}\\model\\OrderGoods")->withoutField('content');}/*** 关联订单发货单* @return hasMany*/public function delivery(): HasMany{$module = self::getCalledModule();return $this->hasMany("app\\{$module}\\model\\order\\Delivery");}/*** 关联订单收货地址表* @return HasOne*/public function address(): HasOne{$module = self::getCalledModule();return $this->hasOne("app\\{$module}\\model\\OrderAddress");}/*** 关联用户表* @return BelongsTo*/public function user(): BelongsTo{$module = self::getCalledModule();return $this->belongsTo("app\\{$module}\\model\\User");}/*** 关联物流公司表 (仅用于兼容旧物流数据)* @return BelongsTo*/public function express(): BelongsTo{$module = self::getCalledModule();return $this->belongsTo("app\\{$module}\\model\\Express");}/*** 关联模型:第三方交易记录* @return BelongsTo*/public function trade(): BelongsTo{$module = self::getCalledModule();return $this->belongsTo("app\\{$module}\\model\\PaymentTrade", 'trade_id', 'trade_id');}/*** 获取器:订单状态文字描述* @param $value* @param $data* @return string*/public function getStateTextAttr($value, $data): string{//todo  这种设置了TextAttr 的查询的时候会加上这个// 订单状态if ($data['order_status'] != OrderStatusEnum::NORMAL) {return OrderStatusEnum::data()[$data['order_status']]['name'];}// 付款状态if ($data['pay_status'] == PayStatusEnum::PENDING) {return '待支付';}// 发货状态if ($data['delivery_status'] != DeliveryStatusEnum::DELIVERED) {$enum = [DeliveryStatusEnum::NOT_DELIVERED => '待发货', DeliveryStatusEnum::PART_DELIVERED => '部分发货'];return $enum[$data['delivery_status']];}// 收货状态if ($data['receipt_status'] == ReceiptStatusEnum::NOT_RECEIVED) {return '待收货';}return $value;}/*** 获取器:订单金额(含优惠折扣)* @param $value* @param $data* @return string*/public function getOrderPriceAttr($value, $data): string{// 兼容旧数据:订单金额if ($value == 0) {return helper::bcadd(helper::bcsub($data['total_price'], $data['coupon_money']), $data['update_price']);}return $value;}/*** 获取器:改价金额(差价)* @param $value* @return array*/public function getUpdatePriceAttr($value): array{return ['symbol' => $value < 0 ? '-' : '+','value' => sprintf('%.2f', abs((float)$value))];}/*** 获取器:付款时间* @param $value* @return false|string*/public function getPayTimeAttr($value){return format_time($value);}/*** 获取器:发货时间* @param $value* @return false|string*/public function getDeliveryTimeAttr($value){return format_time($value);}/*** 获取器:收货时间* @param $value* @return false|string*/public function getReceiptTimeAttr($value){return format_time($value);}/*** 获取器:来源记录的参数* @param $json* @return array*/public function getOrderSourceDataAttr($json): array{return $json ? helper::jsonDecode($json) : [];}/*** 修改器:来源记录的参数* @param array $data* @return string*/public function setOrderSourceDataAttr(array $data): string{return helper::jsonEncode($data);}/*** 生成订单号* @return string*/public function orderNo(): string{return OrderService::createOrderNo();}/*** 订单详情* @param $where* @param array $with* @return static|array|null*/public static function detail($where, array $with = []){is_array($where) ? $filter = $where : $filter['order_id'] = (int)$where;return self::get($filter, $with);}/*** 批量获取订单列表* @param array $orderIds* @param array $with* @return array* @throws DataNotFoundException* @throws DbException* @throws ModelNotFoundException*/public function getListByIds(array $orderIds, array $with = []): array{$data = $this->getListByInArray('order_id', $orderIds, $with);return helper::arrayColumn2Key($data, 'order_id');}/*** 批量获取订单列表* @param $field* @param $data* @param array $with* @return \think\Collection* @throws \think\db\exception\DataNotFoundException* @throws \think\db\exception\DbException* @throws \think\db\exception\ModelNotFoundException*/private function getListByInArray($field, $data, array $with = []): \think\Collection{return $this->with($with)->where($field, 'in', $data)->where('is_delete', '=', 0)->select();}/*** 根据订单号批量查询* @param $orderNos* @param array $with* @return \think\Collection* @throws \think\db\exception\DataNotFoundException* @throws \think\db\exception\DbException* @throws \think\db\exception\ModelNotFoundException*/public function getListByOrderNos($orderNos, array $with = []): \think\Collection{return $this->getListByInArray('order_no', $orderNos, $with);}/*** 批量更新订单* @param $orderIds* @param $data* @return bool|false*/public function onBatchUpdate($orderIds, $data): bool{return static::updateBase($data, [['order_id', 'in', $orderIds]]);}
}

相关文章:

萤火php端: 查询数据的时候报错: “message“: “Undefined index: pay_status“,

代码&#xff1a;getGoodsFromHistory <?php // ---------------------------------------------------------------------- // | 萤火商城系统 [ 致力于通过产品和服务&#xff0c;帮助商家高效化开拓市场 ] // -----------------------------------------------------…...

程序人生-2024我的个人总结

可能现在写个人总结比较早&#xff0c;但是眼看着还有三个月&#xff0c;今年就过去了&#xff0c;所以决定提前写写&#xff0c;今年对于我来说是不平凡的一年&#xff0c;先是加薪&#xff0c;之后求婚&#xff0c;以为快要走上人生巅峰的时候&#xff0c;被裁员&#xff0c;…...

SQL自学:什么是联结,如何编写使用联结的SELECT语句

在 SQL&#xff08;Structured Query Language&#xff0c;结构化查询语言&#xff09;的世界里&#xff0c;联结&#xff08;JOIN&#xff09;是一个强大且至关重要的概念。它允许我们从多个表中检索数据&#xff0c;从而实现更复杂的查询和数据分析。本文将深入探讨联结的概念…...

【C++】函数重载+引用

大家好&#xff0c;我是苏貝&#xff0c;本篇博客带大家了解C的函数重载和引用&#xff0c;如果你觉得我写的还不错的话&#xff0c;可以给我一个赞&#x1f44d;吗&#xff0c;感谢❤️ 目录 一. 预处理、编译、汇编、链接二. 函数重载1 概念2 C支持函数重载的原理—名字修饰…...

华为S5735交换机console密码重置和恢复出厂设置

比较简单&#xff0c;简单说就是进入bootload清除密码&#xff0c;然后进入default mode下重置密码。 1.开机按CtrlB&#xff0c;进入启动加载菜单&#xff08;BootLoad menu&#xff09; 拨电源重启交换机&#xff0c;大约开机10多秒的时候会出现提示按CtrlB可以进入BootLoa…...

Spring Security无脑使用

步骤1&#xff1a;添加Spring Security依赖 在你的Spring Boot项目的pom.xml文件中&#xff0c;添加Spring Security的依赖&#xff1a; <dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-security</art…...

学习 PostgreSQL + Spring Boot 3 +mybatisplus整合过程中的报错记录

今天计划学习 PostgreSQL&#xff0c;并顺便尝试使用 Spring Boot 3.x 框架&#xff0c;打算整合 Spring Boot 3、PostgreSQL 和 MyBatis-Plus。整合后一直出现以下报错&#xff1a; 去AI上面搜了讲的是sqlSessionFactory 或 sqlSessionTemplate 没有正确配置 初始分析&#…...

立仪光谱共焦传感器在玻璃测量技术上的突破

近年来&#xff0c;随着科技的不断发展&#xff0c;光谱共焦传感器逐渐成为了工业检测领域的重要工具。尤其是在玻璃这种透明材质的厚度测量中&#xff0c;光谱共焦传感器展现出了其独特的优势。立仪科技小编将围绕光谱共焦传感器在玻璃行业中的应用&#xff0c;从问题、分析到…...

Llama系列上新多模态!3.2版本开源超闭源,还和Arm联手搞了手机优化版,Meta首款多模态Llama 3.2开源!1B羊驼宝宝,跑在手机上了

Llama系列上新多模态&#xff01;3.2版本开源超闭源&#xff0c;还和Arm联手搞了手机优化版&#xff0c;Meta首款多模态Llama 3.2开源&#xff01;1B羊驼宝宝&#xff0c;跑在手机上了&#xff01; 在多模态领域&#xff0c;开源模型也超闭源了&#xff01; 就在刚刚结束的Met…...

系统缺失mfc140.dll的修复方法,有效修复错误mfc140.dll详细步骤

mfc140.dll丢失原因分析 1 系统文件损坏或病毒感染 系统文件损坏或被病毒感染是导致mfc140.dll丢失的常见原因之一。根据用户反馈和安全研究报告&#xff0c;大约有30%的mfc140.dll丢失案例与系统文件损坏或病毒感染有关。病毒、木马或其他恶意软件可能会破坏或删除系统中的m…...

移动app的UI和接口自动化测试怎么进行?

标题&#xff1a;从0到1&#xff1a;移动App的UI和接口自动化测试 导语&#xff1a;移动App的快速发展使得UI和接口自动化测试成为了确保应用质量的重要环节。本文将从零开始介绍移动App的UI和接口自动化测试的基本概念以及如何进行测试。 第一部分&#xff1a;了解移动App自动…...

Unity实现自定义图集(二)

以下内容是根据Unity 2020.1.0f1版本进行编写的   实现一个自定义图集,该怎么入手呢。首先简单思考一下unity是怎么实现图集的。 因为unity的ui部分是开源的,所以我们可以看到UGUI的源代码,另外,Unity的内置Shader也是开源的,可以直接在官网下载(在下载的网页选择Built…...

智能码二维码zhinengma.cn的动态数据更新是如何实现的?

智能码二维码的动态数据更新功能是通过其背后的技术原理实现的&#xff0c;主要依赖于服务器和二维码的链接结构。以下是具体介绍&#xff1a; 动态数据更新的实现原理 链接嵌入&#xff1a;动态二维码中嵌入了一个链接&#xff0c;该链接指向服务器上的数据源。数据请求与更…...

uniapp view怎么按长度排列一行最多四个元素,并且换行后,每一行之间都有间隔

推荐学习文档 golang应用级os框架&#xff0c;欢迎stargolang应用级os框架使用案例&#xff0c;欢迎star案例&#xff1a;基于golang开发的一款超有个性的旅游计划app经历golang实战大纲golang优秀开发常用开源库汇总想学习更多golang知识&#xff0c;这里有免费的golang学习笔…...

Android列表组件api

目录 1.ListView控件 1&#xff09;android:divider 2&#xff09;android:dividerHeight 3&#xff09;android:entries 4&#xff09;android:footerDividersEnabled 5&#xff09;android:headerDividersEnabled 6&#xff09;android:listSelector 7&#xff09;android:sc…...

ToB项目身份认证AD集成(完):利用ldap.js实现与windows AD对接实现用户搜索、认证、密码修改等功能 - 以及针对中文转义问题的补丁方法介绍

在前面的两篇文章中&#xff0c;我详细的介绍了使用ldap与window AD服务集成&#xff0c;实现ToB项目中的身份认证集成方案&#xff0c;包括技术方案介绍、环境配置&#xff1a; ToB项目身份认证AD集成&#xff08;一&#xff09;&#xff1a;基于目录的用户管理、LDAP和Active…...

SpringBoot+SeetaFace6搭建人脸识别平台

前言 最近多个项目需要接入人脸识别功能&#xff0c;之前的方案是使用百度云api集成&#xff0c;但是后续部分项目是内网部署及使用&#xff0c;考虑到接入复杂程度及收费等多种因素&#xff0c;决定参考开源方案自己搭建&#xff0c;保证服务的稳定性与可靠性 项目地址&…...

MySQL-06.DDL-表结构操作-创建

一.DDL(表操作) create database db01;use db01;create table tb_user(id int comment ID&#xff0c;唯一标识,username varchar(20) comment 用户名,name varchar(10) comment 姓名,age int comment 年龄,gender char(1) comment 性别 ) comment 用户表; 此时并没有限制ID为…...

在Visual Studio中使用CMakeLists.txt集成EasyX库的详细指南

EasyX库是一款专为Windows平台设计的轻量级C图形库&#xff0c;适合初学者和教育领域使用。结合Visual Studio和CMake工具链&#xff0c;用户可以轻松创建C项目&#xff0c;并集成EasyX库&#xff0c;实现丰富的图形编程效果。本文将详细介绍如何在Visual Studio中通过CMakeLis…...

CRC码计算原理

CRC8这里先以CRC8来说明CRC的计算过程1、CRC8在线计算器通过CRC在线计算器可以看见CRC8的特征多项式:x8+x2+x+1,初始值为0000’0000。CRC计算的核心是:反转+异或+移位(此处的CRC8没有涉及反转,见后面CRC16)。2、CRC8计算过程(1)、取值从高到低依次取需校验数据的位,这里…...

对高危漏洞“Docker Engine API is accessible without authentication”的修复

一.背景 之前文章maven项目容器化运行之1-基于1Panel软件将docker镜像构建能力分享给局域网_1panel 构建镜像-CSDN博客将1Panel软件的Doocker端口给到了局域网&#xff0c;安全组兄弟扫描认为是高危漏洞&#xff0c;可能导致攻击者获取对Docker主机的完全控制权。 二.修复的建…...

两种方式创建Vue项目

文章目录 引言利用Vue命令创建Vue项目准备工作安装Vue CLI创建Vue项目方法一&#xff1a;使用vue init命令方法二&#xff1a;使用vue create命令启动Vue项目 利用Vite工具创建Vue项目概述利用Vite创建项目启动项目 结语 引言 大家好&#xff0c;今天我将向大家展示如何使用不…...

深入理解 C/C++ 指针

深入理解 C 指针&#xff1a;指针、解引用与指针变量的详细解析 前言 在 C 编程语言中&#xff0c;指针 是一个非常强大且重要的概念。对于初学者来说&#xff0c;指针往往会让人感到困惑不解。本文将通过形象的比喻&#xff0c;帮助大家深入理解指针、解引用与指针变量的概念…...

有什么方法可以保护ppt文件不被随意修改呢?

在工作或学习中&#xff0c;我们常常需要制作powerpoint演示文稿&#xff0c;担心自己不小心改动了或者不想他人随意更改&#xff0c;我们可以如何保护PPT呢&#xff1f;下面小编就来分享两个常用的方法。 方法一&#xff1a;为PPT设置打开密码 为PPT设置打开密码是最直接有效…...

[C#]项目中如何用 GraphQL 代替传统 WebAPI服务

在现代应用程序开发中&#xff0c;传统的 WebAPI 通常使用 RESTful 设计风格&#xff0c;然而近年来 GraphQL 作为一种新的 API 查询语言逐渐获得广泛应用。GraphQL 允许客户端精确地查询所需的数据&#xff0c;减少了过度请求和不足请求的问题。本文将详细讨论在项目中用 Grap…...

对后端返回的日期属性进行格式化(扩展 Spring MVC 的消息转换器)

格式化之前 格式化之后&#xff1a; 解决方式 方式一 在属性中加上注解&#xff0c;对日期进行格式化 JsonFormat(pattern "yyyy-MM-dd HH:mm:ss")private LocalDateTime createTime;//JsonFormat(pattern &quo…...

踩坑记录-用python解析php Laravel8生成的jwt token一直提示 Invalid audience

import jwtdef token_required(token):with open(storage/oauth-public.key, r) as f:public_key f.read()try:# 尝试使用当前算法解码 token&#xff0c;同时指定受众decoded jwt.decode(token, public_key, algorithms[RS256], options{"verify_aud": False})# p…...

使用IOT-Tree Server制作一个边缘计算设备(Arm Linux)

最近实现了一个小项目&#xff0c;现场有多个不同厂家的设备&#xff0c;用户需要对此进行简单的整合&#xff0c;并实现一些联动控制。 我使用了IOT-Tree Server这个软件轻松实现了&#xff0c;不外乎有如下过程&#xff1a; 1&#xff09;使用Modbus协议对接现有设备&#…...

(JAVA)B树和B+树的实现原理阐述

1. B 树 2-3树中&#xff0c;一个节点最多能有两个key&#xff0c;它的实现红黑树中适用对链接染色的方式去表达这两个key。下面将学习另一种树形结构B树&#xff0c;这种数据结构中&#xff0c;一个节点允许多余两个key的存在。 B树是一种树状数据结构&#xff0c;它能够存储…...

JC系列CAN通信说明

目录 一、CAN协议二、指令格式三、通信接线3.1、一对一通信3.2、组网通信 四、寄存器定义五、指令说明4、读取电源电压5、读取母线电流6、读取实时速度8、读取实时位置10、读取驱动器温度11、读取电机温度12、读取错误信息32、设定电流33、设定速度35、设定绝对位置37、设定相对…...