定制 gosiming/dcat-distpicker 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

gosiming/dcat-distpicker

Composer 安装命令:

composer require gosiming/dcat-distpicker

包简介

Distpicker extension for dcat-admin

README 文档

README

Distpicker 是一个中国省市区三级联动选择组件,这个包是基于 Distpickerdcat-admin 扩展,用来将 Distpicker 集成进 dcat-admin的表单中。如果此插件给你带来的帮助,麻烦给我一个 star。如果在使用过程中发现地区不完整的情况,欢迎随时反馈给我。

super-eggs/dcat-distpicker 基于 super-eggs/dcat-distpicker 进行修改

推荐环境

  • php >= 7.4
  • laravel >= v8.0.0
  • dcat-admin >= v2.2.0

截图

image-20200628150204971

安装

首先

# jqhph/dcat-admin 1.x
composer require "gosiming/dcat-distpicker:^1.0"

# jqhph/dcat-admin 2.x
composer require "gosiming/dcat-distpicker:^2.0"

然后: (dcat-admin 2.x 无需执行!!!)

php artisan admin:import dcat-distpicker

开启扩展

后台开启

  • dcat-admin 1.x image-20200628150337687
  • dcat-admin 2.x image-20201201230850804

使用

数据表单中使用

比如在表中有三个字段province_id, city_id, district_id, 在 form 表单中使用它:

$form->distpicker(['province_id', 'city_id', 'district_id']);

设置默认值

$form->distpicker([
    'province_id' => '省份',
    'city_id' => '',
    'district_id' => ''
], '地域选择')->default([
    'province' => 130000,
    'city'     => 130200,
    'district' => 130203,
]);

可以设置每个字段的 placeholder

// 省、市、区
$form->distpicker([
    'province_id' => '',
    'city_id'     => '',
    'district_id' => ''
]);
// 省、市 (Available in v2.1.0+)
$form->distpicker([
    'province_id' => '',
    'city_id'     => '',
]);
// 只显示省 (Available in v2.1.0+)
$form->distpicker([
    'province_id' => '',
]);

设置 label

$form->distpicker(['province_id', 'city_id', 'district_id'], '请选择区域');

设置自动选择, 可以设置 1,2,3 表示自动选择到第几级

$form->distpicker(['province_id', 'city_id', 'district_id'])->autoselect(1);

表格筛选中使用

$filter->distpicker('province_id', 'city_id', 'district_id', '地域选择');

筛选同样支持多级选择:

// 省、市 (Available in v2.1.0+)
$filter->distpicker('province_id', 'city_id','', '地域选择');
//or
$filter->distpicker('province_id', 'city_id');
// 只显示省 (Available in v2.1.0+)
$filter->distpicker('province_id','','', '地域选择');
//or
$filter->distpicker('province_id');

数据表格中使用

省市区名称回显 (Available in v2.1.0+):

$grid->column('province_id')->distpicker();
$grid->column('city_id')->distpicker();
$grid->column('district_id')->distpicker();

并且提供了一个全局可用的辅助函数:

use GoSiming\DcatDistpicker\DcatDistpickerHelper;

DcatDistpickerHelper::getAreaName($code); // return string

地区编码数据

Distpicker 所使用的地域编码是基于国家统计局发布的数据, 数据字典为china_area.json文件.

鸣谢

由衷感谢以下开源软件、框架等(包括但不限于)

License

licensed under The MIT License (MIT).

gosiming/dcat-distpicker 适用场景与选型建议

gosiming/dcat-distpicker 是一款 基于 PHP 开发的 Composer 扩展包,目前已累计 20 次下载、GitHub Stars 达 0, 最近一次更新时间为 2024 年 11 月 11 日, 在 PHP 生态内属于活跃度较高的组件。

它主要适用于以下技术方向: 「extension」 「distpicker」 「dcat-admin」 等业务场景。在实际项目中,围绕这些方向常见需要落地的问题包括:接口对接、性能调优、并发安全、与既有框架(Laravel / ThinkPHP / Yii / Webman 等)的兼容适配,以及生产环境的日志埋点与稳定性保障。

我们在过去多个企业项目中使用过 gosiming/dcat-distpicker 或与其功能相近的方案,如果你在选型或落地过程中遇到问题,例如 版本兼容、二次改造、私有化封装、与内部系统对接、生产 BUG 排查,欢迎联系我们协助评估。

围绕 gosiming/dcat-distpicker 我们能提供哪些服务?
定制开发 / 二次开发

基于 gosiming/dcat-distpicker 在你已有业务上做功能扩展、字段裁剪、UI 适配、与内部账号 / 权限 / 日志系统的深度对接。

BUG 修复 & 性能优化

线上偶发问题、内存泄漏、慢查询、并发异常等排查修复;针对高流量场景做缓存、队列、索引层面的调优。

项目外包 & 长期维护

承接完整的项目从需求 → 设计 → 开发 → 上线 → 长期运维;也可按月提供技术保姆服务。

yvsm@zunyunkeji.com QQ:316430983 微信:yvsm316 西安尊云信息科技 · 专注 PHP / Go / 分布式系统研发

统计信息

  • 总下载量: 20
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 0
  • 点击次数: 11
  • 依赖项目数: 0
  • 推荐数: 0

GitHub 信息

  • Stars: 0
  • Watchers: 0
  • Forks: 0
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2024-11-11