2023-11-24 11:46:34 +08:00
|
|
|
|
<!doctype html>
|
|
|
|
|
<html xmlns:th="http://www.thymeleaf.org">
|
|
|
|
|
<head>
|
|
|
|
|
<base th:href="${#request.getContextPath() + '/'}">
|
|
|
|
|
<meta charset="utf-8">
|
|
|
|
|
<meta name="renderer" content="webkit">
|
|
|
|
|
<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
|
|
|
|
|
<meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=0">
|
|
|
|
|
<link rel="stylesheet" href="assets/fonts/font-awesome/css/font-awesome.css"/>
|
|
|
|
|
<link rel="stylesheet" href="assets/layuiadmin/layui/css/layui.css" media="all">
|
|
|
|
|
<link rel="stylesheet" href="assets/layuiadmin/style/admin.css" media="all">
|
|
|
|
|
<style>
|
|
|
|
|
.layui-form-select{
|
|
|
|
|
min-width:200px!important;
|
|
|
|
|
}
|
|
|
|
|
.layui-select-title{
|
|
|
|
|
min-width:200px!important;
|
|
|
|
|
}
|
|
|
|
|
.layui-select-title input{
|
|
|
|
|
min-width:200px!important;
|
|
|
|
|
}
|
2023-11-29 18:02:39 +08:00
|
|
|
|
#queryTab{
|
|
|
|
|
background-color: #FFFFFF;
|
|
|
|
|
}
|
2023-11-24 11:46:34 +08:00
|
|
|
|
</style>
|
|
|
|
|
</head>
|
|
|
|
|
<body>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<div class="layui-fluid layui-anim layui-anim-fadein">
|
|
|
|
|
<div class="layui-row layui-col-space10">
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-col-xs2">
|
|
|
|
|
<div class="layui-card" id="queryTab">
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<form class="layui-form layui-form-pane" lay-filter="dataForm">
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-form-item layui-form-text">
|
|
|
|
|
<label class="layui-form-label">人员所在街道</label>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<input type="hidden" id="creatorArea1" name="creatorArea1" class="layui-input" value="" maxlength="36">
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-input-block layui-form layui-text" id="streetNameSelectTemplateBox" lay-filter="streetNameSelectTemplateBox"></div>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<script id="streetNameSelectTemplate" type="text/html">
|
|
|
|
|
<select id="street" name="street" lay-filter="street" lay-verify="required" lay-search>
|
|
|
|
|
<option value="">请选择街道</option>
|
2023-11-28 19:58:36 +08:00
|
|
|
|
{{# for(var i = 0, item; item = d.list[i++];) { }}
|
|
|
|
|
{{# if(d.jiedao == item.name){ }}
|
|
|
|
|
<option selected value="{{item.id}}">{{item.name}}</option>
|
|
|
|
|
{{# } else { }}
|
|
|
|
|
<option value="{{item.id}}">{{item.name}}</option>
|
|
|
|
|
{{# } }}
|
2023-11-28 18:13:19 +08:00
|
|
|
|
{{# } }}
|
|
|
|
|
</select>
|
|
|
|
|
</script>
|
|
|
|
|
</div>
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-form-item layui-form-text">
|
|
|
|
|
<label class="layui-form-label">人员所在社区</label>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<input type="hidden" id="creatorArea2" name="creatorArea2" class="layui-input" value="" maxlength="36">
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-input-block layui-form layui-text" id="communityNameSelectTemplateBox" lay-filter="communityNameSelectTemplateBox"></div>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<script id="communityNameSelectTemplate" type="text/html">
|
|
|
|
|
<select id="community" name="community" lay-filter="community" lay-verify="required" lay-search>
|
|
|
|
|
<option value="">请选择社区</option>
|
|
|
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
|
|
|
|
<option value="{{item.communityId}}">{{item.communityName}}</option>
|
|
|
|
|
{{# } }}
|
|
|
|
|
</select>
|
|
|
|
|
</script>
|
|
|
|
|
</div>
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-form-item layui-form-text">
|
|
|
|
|
<label class="layui-form-label">人员所在小区</label>
|
|
|
|
|
<div class="layui-input-block layui-form layui-text" id="residentialNameSelectTemplateBox" lay-filter="residentialNameSelectTemplateBox"></div>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<script id="residentialNameSelectTemplate" type="text/html">
|
|
|
|
|
<select id="residentialId" name="residentialId" lay-filter="residentialId" lay-verify="required" lay-search>
|
|
|
|
|
<option value="">请选择小区</option>
|
|
|
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
|
|
|
|
<option value="{{item.residentialId}}">{{item.name}}</option>
|
|
|
|
|
{{# } }}
|
|
|
|
|
</select>
|
|
|
|
|
</script>
|
|
|
|
|
</div>
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-form-item layui-form-text">
|
|
|
|
|
<label class="layui-form-label">人员所在楼/排</label>
|
|
|
|
|
<div class="layui-input-block layui-form layui-text" id="buildingNameSelectTemplateBox" lay-filter="buildingNameSelectTemplateBox"></div>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
<script id="buildingNameSelectTemplate" type="text/html">
|
|
|
|
|
<select id="buildingId" name="buildingId" lay-filter="buildingId" lay-verify="required" lay-search>
|
|
|
|
|
<option value="">请选择楼/排</option>
|
|
|
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
2023-11-28 19:58:36 +08:00
|
|
|
|
<option value="{{item.buildingId}}">{{item.name}}</option>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
{{# } }}
|
|
|
|
|
</select>
|
|
|
|
|
</script>
|
|
|
|
|
</div>
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<div class="layui-form-item layui-form-text">
|
|
|
|
|
<label class="layui-form-label">人员所在房屋</label>
|
|
|
|
|
<div class="layui-input-block layui-form layui-text" id="houseNameSelectTemplateBox" lay-filter="houseNameSelectTemplateBox"></div>
|
2023-11-28 19:58:36 +08:00
|
|
|
|
<script id="houseNameSelectTemplate" type="text/html">
|
|
|
|
|
<select id="houseId" name="houseId" lay-filter="houseId" lay-verify="required" lay-search>
|
|
|
|
|
<option value="">请选择房屋</option>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
2023-11-28 19:58:36 +08:00
|
|
|
|
<option value="{{item.houseId}}">{{item.affiliationUnit}} / {{item.affiliationFloors}} / {{item.houseNum}}</option>
|
2023-11-28 18:13:19 +08:00
|
|
|
|
{{# } }}
|
|
|
|
|
</select>
|
|
|
|
|
</script>
|
|
|
|
|
</div>
|
|
|
|
|
</form>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-12-14 18:43:31 +08:00
|
|
|
|
<div class="layui-col-xs7">
|
2023-11-24 11:46:34 +08:00
|
|
|
|
<div class="layui-card">
|
|
|
|
|
<div class="layui-card-body">
|
|
|
|
|
<div class="test-table-reload-btn" style="margin-bottom: 10px;">
|
|
|
|
|
<div class="layui-inline">
|
|
|
|
|
<input type="text" id="name" class="layui-input search-item" placeholder="请输入姓名">
|
|
|
|
|
</div>
|
|
|
|
|
<div class="layui-inline layui-form search-item" id="idcardTypeSelectTemplateBox" lay-filter="idcardTypeSelectTemplateBox"></div>
|
|
|
|
|
<div class="layui-inline">
|
|
|
|
|
<input type="text" id="idcard" class="layui-input search-item" placeholder="请输入证件号">
|
|
|
|
|
</div>
|
|
|
|
|
<button type="button" id="search" class="layui-btn layui-btn-sm">
|
|
|
|
|
<i class="fa fa-lg fa-search"></i> 搜索
|
|
|
|
|
</button>
|
2023-11-29 18:02:39 +08:00
|
|
|
|
<button type="button" id="clear-search" class="layui-btn layui-btn-sm">
|
|
|
|
|
<i class="fa fa-lg fa-close"></i> 清空条件
|
|
|
|
|
</button>
|
2023-11-24 11:46:34 +08:00
|
|
|
|
</div>
|
|
|
|
|
<table class="layui-hide" id="dataTable" lay-filter="dataTable"></table>
|
|
|
|
|
<!-- 表头按钮组 -->
|
|
|
|
|
<script type="text/html" id="headerToolBar">
|
|
|
|
|
<div class="layui-btn-group">
|
|
|
|
|
<button type="button" class="layui-btn layui-btn-normal layui-btn-sm" lay-event="updateEvent">
|
2023-11-25 13:47:05 +08:00
|
|
|
|
<i class="fa fa-lg fa-edit"></i> 查看
|
2023-11-24 11:46:34 +08:00
|
|
|
|
</button>
|
|
|
|
|
</div>
|
|
|
|
|
</script>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
</div>
|
2023-12-14 18:43:31 +08:00
|
|
|
|
<div class="layui-col-xs3">
|
|
|
|
|
<div style="width:100%; height:400px; margin-top: 100px" id="dataPie"></div>
|
|
|
|
|
</div>
|
2023-11-24 11:46:34 +08:00
|
|
|
|
</div>
|
|
|
|
|
</div>
|
|
|
|
|
<script id="idcardTypeSelectTemplate" type="text/html" lay-search>
|
|
|
|
|
<select id="idcardType" name="idcardType">
|
|
|
|
|
<option value="">请选择证件类型</option>
|
|
|
|
|
{{# for(var i = 0, item; item = d[i++];) { }}
|
|
|
|
|
<option value="{{item.dictionaryName}}">{{item.dictionaryName}}</option>
|
|
|
|
|
{{# } }}
|
|
|
|
|
</select>
|
|
|
|
|
</script>
|
|
|
|
|
<script src="assets/layuiadmin/layui/layui.js"></script>
|
|
|
|
|
<script src="assets/js/vendor/viewer/viewer.min.js"></script>
|
2023-12-14 18:43:31 +08:00
|
|
|
|
<script src="assets/js/echarts.js"></script>
|
|
|
|
|
<script src="assets/js/echarts-gl.js"></script>
|
2023-11-24 11:46:34 +08:00
|
|
|
|
<script>
|
|
|
|
|
layui.config({
|
|
|
|
|
base: 'assets/layuiadmin/'
|
|
|
|
|
}).extend({
|
|
|
|
|
index: 'lib/index'
|
|
|
|
|
}).use(['index', 'table', 'form', 'laytpl', 'laydate', 'common'], function() {
|
|
|
|
|
var $ = layui.$;
|
|
|
|
|
var $win = $(window);
|
|
|
|
|
var table = layui.table;
|
|
|
|
|
var admin = layui.admin;
|
|
|
|
|
var laydate = layui.laydate;
|
|
|
|
|
var form = layui.form;
|
|
|
|
|
var laytpl = layui.laytpl;
|
|
|
|
|
var common = layui.common;
|
|
|
|
|
var resizeTimeout = null;
|
2023-12-14 18:43:31 +08:00
|
|
|
|
var tableUrl = 'api/populationinfo/listpage-system?[[${params}]]';
|
|
|
|
|
var countUrl = 'api/populationinfo/count-system?[[${params}]]';
|
2023-11-24 11:46:34 +08:00
|
|
|
|
|
2023-11-29 18:02:39 +08:00
|
|
|
|
$("#queryTab").height($win.height() - 30);
|
2023-12-14 18:43:31 +08:00
|
|
|
|
$("#dataPie").height($win.height() - 200);
|
|
|
|
|
|
|
|
|
|
function initPie(groupBy, data) {
|
|
|
|
|
console.log(groupBy)
|
|
|
|
|
$.ajax({
|
|
|
|
|
url: countUrl + "&groupBy=" + groupBy,
|
|
|
|
|
cache: false,
|
|
|
|
|
data: data,
|
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (dataSource) {
|
|
|
|
|
const paramsList = dataSource.map((item, index) => {
|
|
|
|
|
return {
|
|
|
|
|
...item,
|
|
|
|
|
shading: "realistic"
|
|
|
|
|
};
|
|
|
|
|
});
|
|
|
|
|
// echarts清除旧的循环任务
|
|
|
|
|
echarts.dispose(document.getElementById("dataPie"))
|
|
|
|
|
var option = getPie3D(paramsList);
|
|
|
|
|
var elem = echarts.init(document.getElementById("dataPie"));
|
|
|
|
|
elem.setOption(option);
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
initPie("getCommunity", {});
|
2023-11-29 18:02:39 +08:00
|
|
|
|
|
2023-11-28 19:58:36 +08:00
|
|
|
|
// 初始化街道下拉选择
|
|
|
|
|
var jiedao = "[[${jiedao}]]";
|
|
|
|
|
initStreetNameSelect();
|
|
|
|
|
initResidentialNameSelect('9999', '9999');
|
|
|
|
|
initBuildingNameSelect("9999");
|
|
|
|
|
initHouseNameSelect("9999");
|
|
|
|
|
|
2023-11-28 18:13:19 +08:00
|
|
|
|
// 初始化街道下拉选择
|
2023-11-29 18:02:39 +08:00
|
|
|
|
function initStreetNameSelect() {
|
2023-11-28 18:13:19 +08:00
|
|
|
|
$.ajax({
|
|
|
|
|
url: 'api/residential/getStreetList',
|
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (data) {
|
2023-11-28 19:58:36 +08:00
|
|
|
|
laytpl(document.getElementById('streetNameSelectTemplate').innerHTML).render({jiedao: jiedao , list: data}, function(html) {
|
2023-11-28 18:13:19 +08:00
|
|
|
|
document.getElementById('streetNameSelectTemplateBox').innerHTML = html;
|
|
|
|
|
});
|
|
|
|
|
form.render('select', 'streetNameSelectTemplateBox');
|
2023-11-28 19:58:36 +08:00
|
|
|
|
if (jiedao) {
|
|
|
|
|
$("#creatorArea1").val(jiedao);
|
|
|
|
|
initCommunityNameSelect($("#street").val());
|
|
|
|
|
}else{
|
|
|
|
|
initCommunityNameSelect('9999');
|
|
|
|
|
}
|
2023-11-28 18:13:19 +08:00
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
// 初始化街道变化
|
|
|
|
|
form.on('select(street)', function(data){
|
|
|
|
|
var selectedText = data.elem[data.elem.selectedIndex].text;
|
|
|
|
|
$("#creatorArea1").val(selectedText);
|
|
|
|
|
if(data.value) {
|
|
|
|
|
initCommunityNameSelect(data.value);
|
|
|
|
|
}else {
|
|
|
|
|
initCommunityNameSelect('9999');
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// 初始化社区变化
|
|
|
|
|
form.on('select(community)', function(data){
|
|
|
|
|
var streetValue = $("#street").val();
|
|
|
|
|
var selectedText = data.elem[data.elem.selectedIndex].text;
|
|
|
|
|
$("#creatorArea2").val(selectedText);
|
|
|
|
|
if(data.value) {
|
|
|
|
|
initResidentialNameSelect(streetValue, data.value);
|
|
|
|
|
}else {
|
|
|
|
|
initResidentialNameSelect(streetValue, '');
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
2023-11-28 19:58:36 +08:00
|
|
|
|
// 初始化社区下拉选择
|
2023-11-29 18:02:39 +08:00
|
|
|
|
function initCommunityNameSelect(areaId) {
|
2023-11-28 19:58:36 +08:00
|
|
|
|
$.ajax({
|
|
|
|
|
url: 'api/residential/getCommunityList?areaId=' + areaId,
|
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (data) {
|
|
|
|
|
laytpl(document.getElementById('communityNameSelectTemplate').innerHTML).render(data, function(html) {
|
|
|
|
|
document.getElementById('communityNameSelectTemplateBox').innerHTML = html;
|
|
|
|
|
});
|
|
|
|
|
form.render('select', 'communityNameSelectTemplateBox');
|
|
|
|
|
initResidentialNameSelect('9999', '9999');
|
|
|
|
|
initBuildingNameSelect("9999");
|
|
|
|
|
initHouseNameSelect("9999");
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-28 18:13:19 +08:00
|
|
|
|
// 初始化小区变化
|
|
|
|
|
form.on('select(residentialId)', function(data){
|
|
|
|
|
if(data.value) {
|
|
|
|
|
initBuildingNameSelect(data.value);
|
|
|
|
|
}else {
|
|
|
|
|
initBuildingNameSelect('9999');
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// 初始化小区下拉选择
|
2023-11-29 18:02:39 +08:00
|
|
|
|
function initResidentialNameSelect(street, community) {
|
2023-11-28 18:13:19 +08:00
|
|
|
|
$.ajax({
|
|
|
|
|
url: 'api/residential/list?street=' + street + '&community=' + community,
|
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (data) {
|
|
|
|
|
laytpl(document.getElementById('residentialNameSelectTemplate').innerHTML).render(data, function(html) {
|
|
|
|
|
document.getElementById('residentialNameSelectTemplateBox').innerHTML = html;
|
|
|
|
|
});
|
|
|
|
|
form.render('select', 'residentialNameSelectTemplateBox');
|
2023-11-28 19:58:36 +08:00
|
|
|
|
initBuildingNameSelect("9999");
|
|
|
|
|
initHouseNameSelect("9999");
|
2023-11-28 18:13:19 +08:00
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-28 19:58:36 +08:00
|
|
|
|
// 初始化楼栋变化
|
|
|
|
|
form.on('select(buildingId)', function(data){
|
|
|
|
|
if(data.value) {
|
|
|
|
|
initHouseNameSelect(data.value);
|
|
|
|
|
}else {
|
|
|
|
|
initHouseNameSelect('9999');
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
|
|
|
|
|
// 初始化楼/排下拉选择
|
2023-11-29 18:02:39 +08:00
|
|
|
|
function initBuildingNameSelect(residentialId) {
|
2023-11-28 18:13:19 +08:00
|
|
|
|
$.ajax({
|
2023-11-28 19:58:36 +08:00
|
|
|
|
url: 'api/building/list?residentialId=' + residentialId,
|
2023-11-28 18:13:19 +08:00
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (data) {
|
2023-11-28 19:58:36 +08:00
|
|
|
|
if(data.length < 1 && residentialId != 9999) {
|
|
|
|
|
layer.msg("该小区暂无录入楼/排");
|
|
|
|
|
}
|
|
|
|
|
|
|
|
|
|
laytpl(document.getElementById('buildingNameSelectTemplate').innerHTML).render(data, function(html) {
|
|
|
|
|
document.getElementById('buildingNameSelectTemplateBox').innerHTML = html;
|
2023-11-28 18:13:19 +08:00
|
|
|
|
});
|
2023-11-28 19:58:36 +08:00
|
|
|
|
form.render('select', 'buildingNameSelectTemplateBox');
|
|
|
|
|
initHouseNameSelect("9999");
|
2023-11-28 18:13:19 +08:00
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-28 19:58:36 +08:00
|
|
|
|
// 初始化房屋下拉选择
|
2023-11-29 18:02:39 +08:00
|
|
|
|
function initHouseNameSelect(buildingId) {
|
2023-11-28 18:13:19 +08:00
|
|
|
|
$.ajax({
|
2023-11-28 19:58:36 +08:00
|
|
|
|
url: 'api/house/list?buildingId=' + buildingId,
|
2023-11-28 18:13:19 +08:00
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (data) {
|
2023-11-28 19:58:36 +08:00
|
|
|
|
if(data.length < 1 && buildingId != 9999) {
|
|
|
|
|
layer.msg("该楼/排暂无录入房屋");
|
|
|
|
|
}
|
|
|
|
|
laytpl(document.getElementById('houseNameSelectTemplate').innerHTML).render(data, function(html) {
|
|
|
|
|
document.getElementById('houseNameSelectTemplateBox').innerHTML = html;
|
2023-11-28 18:13:19 +08:00
|
|
|
|
});
|
2023-11-28 19:58:36 +08:00
|
|
|
|
form.render('select', 'houseNameSelectTemplateBox');
|
2023-11-28 18:13:19 +08:00
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-24 11:46:34 +08:00
|
|
|
|
// 初始化证件类型下拉选择
|
|
|
|
|
function initIdcardTypeSelect() {
|
2023-11-26 00:11:32 +08:00
|
|
|
|
$.ajax({
|
|
|
|
|
url: 'api/datadictionary/listdictionarybyparentid/76c5044f-805a-4313-b1e8-79e966b97c0d',
|
|
|
|
|
type: 'get',
|
|
|
|
|
dataType: 'json',
|
|
|
|
|
success: function (data) {
|
|
|
|
|
laytpl(document.getElementById('idcardTypeSelectTemplate').innerHTML).render(data, function(html) {
|
|
|
|
|
document.getElementById('idcardTypeSelectTemplateBox').innerHTML = html;
|
|
|
|
|
});
|
|
|
|
|
form.render('select', 'idcardTypeSelectTemplateBox');
|
|
|
|
|
}
|
2023-11-24 11:46:34 +08:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
initIdcardTypeSelect();
|
|
|
|
|
|
|
|
|
|
// 初始化表格
|
|
|
|
|
function initTable() {
|
|
|
|
|
table.render({
|
|
|
|
|
elem: '#dataTable',
|
|
|
|
|
id: 'dataTable',
|
2023-11-26 00:11:32 +08:00
|
|
|
|
url: tableUrl,
|
2023-11-24 11:46:34 +08:00
|
|
|
|
width: admin.screen() > 1 ? '100%' : '',
|
2023-11-29 18:02:39 +08:00
|
|
|
|
height: $win.height() - 90,
|
2023-11-26 00:11:32 +08:00
|
|
|
|
defaultToolbar: [],
|
2023-11-24 11:46:34 +08:00
|
|
|
|
limit: 20,
|
|
|
|
|
limits: [20, 40, 60, 80, 100, 200],
|
|
|
|
|
toolbar: '#headerToolBar',
|
|
|
|
|
request: {
|
|
|
|
|
pageName: 'page',
|
|
|
|
|
limitName: 'rows'
|
|
|
|
|
},
|
|
|
|
|
cols: [
|
|
|
|
|
[
|
|
|
|
|
{type:'checkbox', fixed: 'left'},
|
|
|
|
|
{field:'rowNum', width:80, title: '序号', fixed: 'left', align:'center', templet: '<span>{{d.LAY_INDEX}}</span>'},
|
2023-12-14 18:43:31 +08:00
|
|
|
|
// {field: 'populationInfoId', width: 130, title: 'ID', align:'center',
|
|
|
|
|
// templet: function(row) {
|
|
|
|
|
// var rowData = row[this.field];
|
|
|
|
|
// if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
// return '-';
|
|
|
|
|
// }
|
|
|
|
|
// return rowData;
|
|
|
|
|
// }
|
|
|
|
|
// },
|
2023-11-24 11:46:34 +08:00
|
|
|
|
{field: 'name', width: 130, title: '姓名', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{field: 'idcardType', width: 130, title: '证件类型', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{field: 'idcard', width: 180, title: '证件号码', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{field: 'birthday', width: 130, title: '出生日期', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{field: 'sex', width: 130, title: '性别', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
{field: 'nation', width: 130, title: '民族', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
},
|
2023-12-14 18:43:31 +08:00
|
|
|
|
// {field: 'label', width: 380, title: '标签', align:'center',
|
|
|
|
|
// templet: function(row) {
|
|
|
|
|
// var rowData = row['labelList'];
|
|
|
|
|
// if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
// return '-';
|
|
|
|
|
// }
|
|
|
|
|
// var b = "";
|
|
|
|
|
// for(var i = 0 ; i < rowData.length; i++) {
|
|
|
|
|
// b = b + '<button type="button" class="layui-btn layui-btn-xs" style="background-color: ' + rowData[i].color + ';">' + rowData[i].name + '</button>';
|
|
|
|
|
// }
|
|
|
|
|
// return b;
|
|
|
|
|
// }
|
|
|
|
|
// },
|
2023-11-24 11:46:34 +08:00
|
|
|
|
{field: 'creatorName', width: 120, title: '当前认领人', align:'center',
|
|
|
|
|
templet: function(row) {
|
|
|
|
|
var rowData = row[this.field];
|
|
|
|
|
if(typeof(rowData) === 'undefined' || rowData == null || rowData == '') {
|
|
|
|
|
return '-';
|
|
|
|
|
}
|
|
|
|
|
return rowData;
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
]
|
|
|
|
|
],
|
|
|
|
|
page: true,
|
|
|
|
|
parseData: function(data) {
|
|
|
|
|
return {
|
|
|
|
|
'code': 0,
|
|
|
|
|
'msg': '',
|
|
|
|
|
'count': data.total,
|
|
|
|
|
'data': data.rows
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
// 重载表格
|
|
|
|
|
function reloadTable(currentPage) {
|
2023-11-29 18:02:39 +08:00
|
|
|
|
var data = getParams();
|
2023-11-24 11:46:34 +08:00
|
|
|
|
table.reload('dataTable', {
|
2023-11-26 00:11:32 +08:00
|
|
|
|
url: tableUrl,
|
2023-11-29 18:02:39 +08:00
|
|
|
|
where: data,
|
2023-11-24 11:46:34 +08:00
|
|
|
|
page: {
|
|
|
|
|
curr: currentPage
|
|
|
|
|
},
|
2023-11-29 18:02:39 +08:00
|
|
|
|
height: $win.height() - 90,
|
2023-11-24 11:46:34 +08:00
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-29 18:02:39 +08:00
|
|
|
|
function getParams() {
|
|
|
|
|
var dataParams = {
|
|
|
|
|
name: $('#name').val(),
|
|
|
|
|
idcardType: $('#idcardType').val(),
|
|
|
|
|
idcard: $('#idcard').val(),
|
|
|
|
|
creatorArea1: "",
|
|
|
|
|
creatorArea2: "",
|
|
|
|
|
residentialId: "",
|
|
|
|
|
buildingId: "",
|
|
|
|
|
houseId:""
|
|
|
|
|
};
|
|
|
|
|
if ($("#creatorArea1").val() == undefined || $("#creatorArea1").val() == "" || $("#creatorArea1").val() == "请选择街道" ) {
|
2023-12-14 18:43:31 +08:00
|
|
|
|
initPie("getCommunity", dataParams);
|
2023-11-29 18:02:39 +08:00
|
|
|
|
return dataParams;
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}else{
|
2023-11-29 18:02:39 +08:00
|
|
|
|
dataParams.creatorArea1 = $("#creatorArea1").val();
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}
|
2023-11-29 18:02:39 +08:00
|
|
|
|
if ($("#creatorArea2").val() == undefined || $("#creatorArea2").val() == "" || $("#creatorArea2").val() == "请选择社区" ) {
|
2023-12-14 18:43:31 +08:00
|
|
|
|
initPie("getStreet", dataParams);
|
2023-11-29 18:02:39 +08:00
|
|
|
|
return dataParams;
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}else{
|
2023-11-29 18:02:39 +08:00
|
|
|
|
dataParams.creatorArea2 = $("#creatorArea2").val();
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}
|
2023-11-29 18:02:39 +08:00
|
|
|
|
if ($("#residentialId").val() == undefined || $("#residentialId").val() == "" || $("#creatorArea2").val() == "请选择小区" ) {
|
2023-12-14 18:43:31 +08:00
|
|
|
|
//initPie("getResidential", dataParams);
|
2023-11-29 18:02:39 +08:00
|
|
|
|
return dataParams;
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}else{
|
2023-11-29 18:02:39 +08:00
|
|
|
|
dataParams.residentialId = $("#residentialId").val();
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}
|
2023-11-29 18:02:39 +08:00
|
|
|
|
if ($("#buildingId").val() == undefined || $("#buildingId").val() == "" || $("#creatorArea2").val() == "请选择楼/排" ) {
|
2023-12-14 18:43:31 +08:00
|
|
|
|
//initPie("getBuilding", dataParams);
|
2023-11-29 18:02:39 +08:00
|
|
|
|
return dataParams;
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}else{
|
2023-11-29 18:02:39 +08:00
|
|
|
|
dataParams.residentialId = "";
|
|
|
|
|
dataParams.buildingId = $("#buildingId").val();
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}
|
2023-11-29 18:02:39 +08:00
|
|
|
|
if ($("#houseId").val() == undefined || $("#houseId").val() == "" || $("#creatorArea2").val() == "请选择房屋" ) {
|
2023-12-14 18:43:31 +08:00
|
|
|
|
//initPie("getHouse", dataParams);
|
2023-11-29 18:02:39 +08:00
|
|
|
|
return dataParams;
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}else{
|
2023-11-29 18:02:39 +08:00
|
|
|
|
dataParams.residentialId = "";
|
|
|
|
|
dataParams.buildingId = "";
|
|
|
|
|
dataParams.houseId = $("#houseId").val();
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}
|
2023-11-29 18:02:39 +08:00
|
|
|
|
return dataParams;
|
2023-11-28 19:58:36 +08:00
|
|
|
|
}
|
|
|
|
|
|
2023-11-24 11:46:34 +08:00
|
|
|
|
initTable();
|
|
|
|
|
// 事件 - 页面变化
|
|
|
|
|
$win.on('resize', function() {
|
|
|
|
|
clearTimeout(resizeTimeout);
|
|
|
|
|
resizeTimeout = setTimeout(function() {
|
|
|
|
|
reloadTable();
|
|
|
|
|
}, 500);
|
|
|
|
|
});
|
|
|
|
|
// 事件 - 搜索
|
|
|
|
|
$(document).on('click', '#search', function() {
|
|
|
|
|
reloadTable(1);
|
|
|
|
|
});
|
2023-11-29 18:02:39 +08:00
|
|
|
|
|
|
|
|
|
$(document).on('click', '#clear-search', function() {
|
|
|
|
|
initStreetNameSelect("9999");
|
|
|
|
|
$("#creatorArea1").val("");
|
|
|
|
|
$("#creatorArea2").val("");
|
|
|
|
|
$("#residential").val("");
|
|
|
|
|
$("#building").val("");
|
|
|
|
|
$("#house").val("");
|
|
|
|
|
$('#name').val("");
|
|
|
|
|
$('#idcard').val("");
|
|
|
|
|
initIdcardTypeSelect();
|
|
|
|
|
$('#idcardType').val("");
|
|
|
|
|
reloadTable(1);
|
|
|
|
|
});
|
|
|
|
|
|
2023-11-24 11:46:34 +08:00
|
|
|
|
// 事件 - 增删改
|
|
|
|
|
table.on('toolbar(dataTable)', function(obj) {
|
|
|
|
|
var layEvent = obj.event;
|
|
|
|
|
var checkStatus = table.checkStatus('dataTable');
|
|
|
|
|
var checkDatas = checkStatus.data;
|
2023-11-26 00:11:32 +08:00
|
|
|
|
if(layEvent === 'updateEvent') {
|
2023-11-24 11:46:34 +08:00
|
|
|
|
if(checkDatas.length === 0) {
|
2023-11-26 12:17:42 +08:00
|
|
|
|
layer.msg("至少选择一个人员");
|
2023-11-24 11:46:34 +08:00
|
|
|
|
} else if(checkDatas.length > 1) {
|
2023-11-26 12:17:42 +08:00
|
|
|
|
layer.msg("只能选择一个人员");
|
2023-11-24 11:46:34 +08:00
|
|
|
|
} else {
|
2023-11-26 23:04:31 +08:00
|
|
|
|
layer.open({
|
2023-11-24 11:46:34 +08:00
|
|
|
|
type: 2,
|
2023-11-26 00:11:32 +08:00
|
|
|
|
title: '个人信息卡片',
|
2023-11-24 11:46:34 +08:00
|
|
|
|
closeBtn: 1,
|
2023-11-26 00:11:32 +08:00
|
|
|
|
area: ['80%', '80%'],
|
|
|
|
|
shadeClose: false,
|
2023-11-24 11:46:34 +08:00
|
|
|
|
anim: 2,
|
2023-11-26 00:11:32 +08:00
|
|
|
|
content: 'pages/housepopulation/index.html#/population-info?populationInfoId=' + checkDatas[0].populationInfoId,
|
2023-11-24 11:46:34 +08:00
|
|
|
|
end: function() {
|
|
|
|
|
reloadTable();
|
|
|
|
|
}
|
|
|
|
|
});
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
});
|
2023-12-14 18:43:31 +08:00
|
|
|
|
|
|
|
|
|
function getParametricEquation(startRatio, endRatio) {
|
|
|
|
|
let midRatio = (startRatio + endRatio) / 2;
|
|
|
|
|
let startRadian = startRatio * Math.PI * 2;
|
|
|
|
|
let endRadian = endRatio * Math.PI * 2;
|
|
|
|
|
let midRadian = midRatio * Math.PI * 2;
|
|
|
|
|
let offsetX = 0;
|
|
|
|
|
let offsetY = 0;
|
|
|
|
|
let offsetZ = 0;
|
|
|
|
|
let tmp;
|
|
|
|
|
return {
|
|
|
|
|
u: {
|
|
|
|
|
min: 0,
|
|
|
|
|
max: Math.PI * 2,
|
|
|
|
|
step: Math.PI / 250,
|
|
|
|
|
},
|
|
|
|
|
v: {
|
|
|
|
|
min: 0,
|
|
|
|
|
max: Math.PI,
|
|
|
|
|
step: Math.PI / 50,
|
|
|
|
|
},
|
|
|
|
|
x: function (u, v) {
|
|
|
|
|
if (midRatio < 0.5) {
|
|
|
|
|
if (u < startRadian || u > midRadian + Math.PI) {
|
|
|
|
|
tmp =
|
|
|
|
|
u - Math.PI - midRadian < 0
|
|
|
|
|
? u + Math.PI - midRadian
|
|
|
|
|
: u - Math.PI - midRadian;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.sin(startRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
if (u > endRadian && u < midRadian + Math.PI) {
|
|
|
|
|
tmp = midRadian + Math.PI - u;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.sin(endRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (u < startRadian && u > midRadian - Math.PI) {
|
|
|
|
|
tmp = u + Math.PI - midRadian;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.sin(startRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
if (u > endRadian || u < midRadian - Math.PI) {
|
|
|
|
|
tmp =
|
|
|
|
|
midRadian - Math.PI - u < 0
|
|
|
|
|
? midRadian + Math.PI - u
|
|
|
|
|
: midRadian - Math.PI - u;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.sin(endRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return offsetX + Math.sin(v) * Math.sin(u);
|
|
|
|
|
},
|
|
|
|
|
y: function (u, v) {
|
|
|
|
|
if (midRatio < 0.5) {
|
|
|
|
|
if (u < startRadian || u > midRadian + Math.PI) {
|
|
|
|
|
tmp =
|
|
|
|
|
u - Math.PI - midRadian < 0
|
|
|
|
|
? u + Math.PI - midRadian
|
|
|
|
|
: u - Math.PI - midRadian;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.cos(startRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
if (u > endRadian && u < midRadian + Math.PI) {
|
|
|
|
|
tmp = midRadian + Math.PI - u;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.cos(endRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
} else {
|
|
|
|
|
if (u < startRadian && u > midRadian - Math.PI) {
|
|
|
|
|
tmp = u + Math.PI - midRadian;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.cos(startRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
if (u > endRadian || u < midRadian - Math.PI) {
|
|
|
|
|
tmp =
|
|
|
|
|
midRadian - Math.PI - u < 0
|
|
|
|
|
? midRadian + Math.PI - u
|
|
|
|
|
: midRadian - Math.PI - u;
|
|
|
|
|
return (
|
|
|
|
|
offsetX +
|
|
|
|
|
(Math.cos(endRadian) * tmp) /
|
|
|
|
|
(Math.PI - midRadian + startRadian)
|
|
|
|
|
);
|
|
|
|
|
}
|
|
|
|
|
}
|
|
|
|
|
return offsetX + Math.sin(v) * Math.cos(u);
|
|
|
|
|
},
|
|
|
|
|
z: function (u, v) {
|
|
|
|
|
return offsetZ + (Math.cos(v) > 0 ? 0.1 : -0.1);
|
|
|
|
|
},
|
|
|
|
|
};
|
|
|
|
|
}
|
|
|
|
|
// 生成模拟 3D 饼图的配置项
|
|
|
|
|
function getPie3D(pieData) {
|
|
|
|
|
let series = [];
|
|
|
|
|
let sumValue = 0;
|
|
|
|
|
let startValue = 0;
|
|
|
|
|
let endValue = 0;
|
|
|
|
|
let legendData = [];
|
|
|
|
|
for (let i = 0; i < pieData.length; i++) {
|
|
|
|
|
sumValue += pieData[i].value;
|
|
|
|
|
let seriesItem = {
|
|
|
|
|
name: !pieData[i].name ? `series${i}` : pieData[i].name,
|
|
|
|
|
type: "surface",
|
|
|
|
|
parametric: true,
|
|
|
|
|
wireframe: {
|
|
|
|
|
show: false,
|
|
|
|
|
},
|
|
|
|
|
pieData: pieData[i],
|
|
|
|
|
pieStatus: {
|
|
|
|
|
selected: false,
|
|
|
|
|
hovered: false,
|
|
|
|
|
}
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
if (pieData[i].itemStyle) {
|
|
|
|
|
let itemStyle = {};
|
|
|
|
|
if (pieData[i].itemStyle.color) {
|
|
|
|
|
itemStyle.color = pieData[i].itemStyle.color;
|
|
|
|
|
}
|
|
|
|
|
if (pieData[i].itemStyle.opacity) {
|
|
|
|
|
itemStyle.opacity = pieData[i].itemStyle.opacity;
|
|
|
|
|
}
|
|
|
|
|
seriesItem.itemStyle = itemStyle;
|
|
|
|
|
}
|
|
|
|
|
series.push(seriesItem);
|
|
|
|
|
}
|
|
|
|
|
for (let i = 0; i < series.length; i++) {
|
|
|
|
|
endValue = startValue + series[i].pieData.value;
|
|
|
|
|
series[i].pieData.startRatio = startValue / sumValue;
|
|
|
|
|
series[i].pieData.endRatio = endValue / sumValue;
|
|
|
|
|
series[i].parametricEquation = getParametricEquation(series[i].pieData.startRatio, series[i].pieData.endRatio);
|
|
|
|
|
startValue = endValue;
|
|
|
|
|
legendData.push(series[i].name);
|
|
|
|
|
}
|
|
|
|
|
let option = {
|
|
|
|
|
legend: {
|
|
|
|
|
// type:'scroll',
|
|
|
|
|
show: true,
|
|
|
|
|
data: legendData,
|
|
|
|
|
textStyle: {
|
|
|
|
|
color: "#FFF"
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
tooltip: {
|
|
|
|
|
formatter: (params) => {
|
|
|
|
|
if (params.seriesName !== "mouseoutSeries") {
|
|
|
|
|
return `${
|
|
|
|
|
params.seriesName
|
|
|
|
|
}<br/><span style="display:inline-block;margin-right:5px;border-radius:10px;width:10px;height:10px;background-color:${
|
|
|
|
|
params.color
|
|
|
|
|
};"></span>${
|
|
|
|
|
option.series[params.seriesIndex].pieData
|
|
|
|
|
.value
|
|
|
|
|
}`;
|
|
|
|
|
}
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
xAxis3D: {
|
|
|
|
|
min: -1,
|
|
|
|
|
max: 1,
|
|
|
|
|
},
|
|
|
|
|
yAxis3D: {
|
|
|
|
|
min: -1,
|
|
|
|
|
max: 1,
|
|
|
|
|
},
|
|
|
|
|
zAxis3D: {
|
|
|
|
|
min: -1,
|
|
|
|
|
max: 1,
|
|
|
|
|
},
|
|
|
|
|
grid3D: {
|
|
|
|
|
show: false,
|
|
|
|
|
boxHeight: 100, // 厚度
|
|
|
|
|
top: 4,
|
|
|
|
|
left: 0,
|
|
|
|
|
viewControl: {
|
|
|
|
|
//3d效果可以放大、旋转等,请自己去查看官方配置
|
|
|
|
|
alpha: 43, // 角度
|
|
|
|
|
beta: 0, // 饼块开始位置角度
|
|
|
|
|
rotateSensitivity: 0,
|
|
|
|
|
zoomSensitivity: 0,
|
|
|
|
|
panSensitivity: 0,
|
|
|
|
|
autoRotate: false,
|
|
|
|
|
},
|
|
|
|
|
light: {
|
|
|
|
|
main: {
|
|
|
|
|
color: "rgb(85, 84, 84)", // 主光源的颜色。
|
|
|
|
|
shadow: false, // 主光源是否投射阴影
|
|
|
|
|
alpha: 80, // 主光源绕 x 轴,即上下旋转的角度
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
},
|
|
|
|
|
series: series,
|
|
|
|
|
};
|
|
|
|
|
return option;
|
|
|
|
|
}
|
|
|
|
|
|
2023-11-24 11:46:34 +08:00
|
|
|
|
});
|
|
|
|
|
</script>
|
|
|
|
|
</body>
|
|
|
|
|
</html>
|