|  | @@ -1,96 +1,590 @@
 | 
	
		
			
				|  |  |  <template>
 | 
	
		
			
				|  |  |    <div class="app-container">
 | 
	
		
			
				|  |  | -    <div class="search">
 | 
	
		
			
				|  |  | -      <el-input v-model="table.getdataListParm.parammaps.drivername" placeholder="驾驶员名称" style="width: 180px;" class="filter-item" clearable />
 | 
	
		
			
				|  |  | -      <el-input v-model="table.getdataListParm.parammaps.drivercode" placeholder="驾驶员编号" style="width: 180px;" class="filter-item" clearable />
 | 
	
		
			
				|  |  | -      <el-select v-model="table.getdataListParm.parammaps.enable" filterable placeholder="是否启用" class="filter-item" style="width: 120px;" clearable>
 | 
	
		
			
				|  |  | -        <el-option v-for="item in enableList" :key="item.id" :label="item.name" :value="item.id" />
 | 
	
		
			
				|  |  | -      </el-select>
 | 
	
		
			
				|  |  | -      <el-button class="successBorder" @click="handleSearch">查询</el-button>
 | 
	
		
			
				|  |  | -      <el-button class="successBorder" @click="handleRefresh">重置</el-button>
 | 
	
		
			
				|  |  | -    </div>
 | 
	
		
			
				|  |  | -    <div class="operation">
 | 
	
		
			
				|  |  | -      <el-button v-if="isRoleEdit" class="success" icon="el-icon-plus" @click="handleCreate">新增</el-button>
 | 
	
		
			
				|  |  | -      <el-button v-if="isRoleEdit" class="danger" icon="el-icon-delete" @click="handleDelete">删除</el-button>
 | 
	
		
			
				|  |  | -    </div>
 | 
	
		
			
				|  |  | -
 | 
	
		
			
				|  |  | -    <div class="table">
 | 
	
		
			
				|  |  | -      <el-table
 | 
	
		
			
				|  |  | -        :key="table.tableKey"
 | 
	
		
			
				|  |  | -        v-loading="table.listLoading"
 | 
	
		
			
				|  |  | -        element-loading-text="给我一点时间"
 | 
	
		
			
				|  |  | -        :data="table.list"
 | 
	
		
			
				|  |  | -        border
 | 
	
		
			
				|  |  | -        fit
 | 
	
		
			
				|  |  | -        highlight-current-row
 | 
	
		
			
				|  |  | -        style="width: 100%;"
 | 
	
		
			
				|  |  | -        :row-style="rowStyle"
 | 
	
		
			
				|  |  | -        :cell-style="cellStyle"
 | 
	
		
			
				|  |  | -        class="elTable table-fixed"
 | 
	
		
			
				|  |  | -        @selection-change="handleSelectionChange"
 | 
	
		
			
				|  |  | -      >
 | 
	
		
			
				|  |  | -        <el-table-column type="selection" align="center" width="50" />
 | 
	
		
			
				|  |  | -        <el-table-column label="序号" align="center" type="index" width="50px">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span v-if="table.pageNum">{{ scope.$index + (table.pageNum-1) * table.pageSize + 1 }}</span>
 | 
	
		
			
				|  |  | -            <span v-else>1</span>
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | -        </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="驾驶员编号" min-width="130px" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span v-if="scope.row.NoEdit">{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | -            <el-input v-if="scope.row.Edit" v-model="scope.row.drivercode" placeholder="1-32个字符" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" maxlength="32" style="width:95%;padding:10px 0;" />
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | -        </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="驾驶员名称" min-width="130px" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <span v-if="scope.row.NoEdit">{{ scope.row.drivername }}</span>
 | 
	
		
			
				|  |  | -            <el-input v-if="scope.row.Edit" v-model="scope.row.drivername" placeholder="1-32个字符" type="textarea" :autosize="{ minRows: 1.3, maxRows: 4}" maxlength="32" style="width:95%;padding:10px 0;" />
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | -        </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="是否启用" min-width="110px" align="center">
 | 
	
		
			
				|  |  | -          <template slot-scope="scope">
 | 
	
		
			
				|  |  | -            <el-switch v-model="scope.row.enable" :disabled="scope.row.NoEdit==true" active-color="#13ce66" inactive-color="#ff4949" :active-value="1" :inactive-value="0" @change="handleEnableChange(scope.$index, scope.row)" />
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | -        </el-table-column>
 | 
	
		
			
				|  |  | -        <el-table-column label="操作" align="center" width="80" class-name="small-padding fixed-width" fixed="right">
 | 
	
		
			
				|  |  | -          <template slot-scope="{row}">
 | 
	
		
			
				|  |  | -            <!-- 新增 -->
 | 
	
		
			
				|  |  | -            <el-button v-if="row.isCreate" :disabled="isokDisable" icon="el-icon-folder-checked" class="miniSuccess" @click="createData(row)" />
 | 
	
		
			
				|  |  | -            <span v-if="row.isCreate" class="centerSpan">|</span>
 | 
	
		
			
				|  |  | -            <el-button v-if="row.isCreate" class="minCancel" icon="el-icon-close" @click="createCancel(row)" />
 | 
	
		
			
				|  |  | -            <!-- 编辑 -->
 | 
	
		
			
				|  |  | -            <el-button v-if="row.isUpdate && isRoleEdit" class="miniSuccess" icon="el-icon-edit-outline" @click="handleUpdate(row)" />
 | 
	
		
			
				|  |  | -            <span v-if="row.isUpdate && isRoleEdit" class="centerSpan">|</span>
 | 
	
		
			
				|  |  | -            <el-button v-if="row.isUpdate && isRoleEdit" class="miniDanger" icon="el-icon-delete" @click="handleRowDelete(row)" />
 | 
	
		
			
				|  |  | -            <!-- 编辑保存 -->
 | 
	
		
			
				|  |  | -            <el-button v-if="row.isUpdateSave" :disabled="isokDisable" icon="el-icon-folder-checked" class="miniSuccess" @click="updateData(row)" />
 | 
	
		
			
				|  |  | -            <span v-if="row.isUpdateSave" class="centerSpan">|</span>
 | 
	
		
			
				|  |  | -            <el-button v-if="row.isUpdateSave" class="minCancel" icon="el-icon-close" @click="updateCancel(row)" />
 | 
	
		
			
				|  |  | -          </template>
 | 
	
		
			
				|  |  | -        </el-table-column>
 | 
	
		
			
				|  |  | -      </el-table>
 | 
	
		
			
				|  |  | -      <pagination v-show="table.total>0" :total="table.total" :page.sync="table.getdataListParm.offset" :limit.sync="table.getdataListParm.pagecount" @pagination="getList" />
 | 
	
		
			
				|  |  | -    </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <!-- <el-dialog
 | 
	
		
			
				|  |  | +        v-dialogDrag
 | 
	
		
			
				|  |  | +        ref="dialog__wrapper">
 | 
	
		
			
				|  |  | +        <div class="dialog-body">
 | 
	
		
			
				|  |  | +            
 | 
	
		
			
				|  |  | +            <div 
 | 
	
		
			
				|  |  | +                class="line"
 | 
	
		
			
				|  |  | +                v-dialogDrag Width="$refs.dialog__wrapper">1111111111111111111</div>
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +    </el-dialog> -->
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    <el-row :gutter="20">
 | 
	
		
			
				|  |  | +      <el-col :span="18">
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +<draggable v-model="arr1" group="itxst"   animation="300" :group="{name: 'dashboard',pull: true}">
 | 
	
		
			
				|  |  | +                    <transition-group>
 | 
	
		
			
				|  |  | +                        <div style = "width:300px;height:20px;border:1px soild #333" :class="item.id==1?'item forbid':'item'" v-for="item in arr1"  key="1">{{item.name}}</div>
 | 
	
		
			
				|  |  | +                    </transition-group>
 | 
	
		
			
				|  |  | +                </draggable>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        <div class="search">
 | 
	
		
			
				|  |  | +          
 | 
	
		
			
				|  |  | +          <el-select v-model="tableObj.getDataParameters.parammaps.dateType" placeholder="查询日期" @change="change_date_type">
 | 
	
		
			
				|  |  | +            <el-option  v-for="item in dateTypeList" :key="item.id" :label="item.name" :value="item.id" ></el-option>
 | 
	
		
			
				|  |  | +          </el-select>
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +          <el-select v-model="tableObj.getDataParameters.parammaps.type" filterable placeholder="数据类型" class="filter-item" style="width: 120px;" clearable>
 | 
	
		
			
				|  |  | +            <el-option v-for="item in typeList" :key="item.id" :label="item.name" :value="item.id" />
 | 
	
		
			
				|  |  | +          </el-select>
 | 
	
		
			
				|  |  | +          <el-select v-model="tableObj.getDataParameters.parammaps.dimension" @change="change_dimension" filterable placeholder="维度" class="filter-item" style="width: 120px;"  >
 | 
	
		
			
				|  |  | +            <el-option v-for="item in dimensionList"   :key="item.id" :label="item.name" :value="item.id" />
 | 
	
		
			
				|  |  | +          </el-select> 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <!-- <el-select v-model="tableObj.getDataParameters.parammaps.mixture" multiple placeholder="混料数据">
 | 
	
		
			
				|  |  | +            <el-option  v-for="item in mixtureList" :key="item.id" :label="item.name" :value="item.id" ></el-option>
 | 
	
		
			
				|  |  | +          </el-select>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <el-select v-model="tableObj.getDataParameters.parammaps.spread" multiple placeholder="撒料数据">
 | 
	
		
			
				|  |  | +            <el-option  v-for="item in spreadList" :key="item.id" :label="item.name" :value="item.id" ></el-option>
 | 
	
		
			
				|  |  | +          </el-select> -->
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +          <el-cascader style = "width:400px;" ref = "cascader1" v-model="tableObj.getDataParameters.parammaps.mixture" :options="mixtureList" :props = "{ multiple: true, emitPath: false,}"   :show-all-levels="false" @change="change_cascader1"></el-cascader>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <el-cascader style = "width:400px;" ref = "cascader2" v-model="tableObj.getDataParameters.parammaps.spread" :options="spreadList" :props = "{ multiple: true, emitPath: false,}"   :show-all-levels="false" @change="change_cascader2"></el-cascader>
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <el-button class="successBorder" @click="form_search">查询</el-button>
 | 
	
		
			
				|  |  | +          <el-button class="successBorder" @click="form_clear">重置</el-button>
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +        <div class="operation">
 | 
	
		
			
				|  |  | +          <el-button class="success" icon="el-icon-plus" @click="form_add_screening">添加筛选条件</el-button>
 | 
	
		
			
				|  |  | +          <el-button   class="danger" icon="el-icon-delete" @click="form_clear_screening">清空筛选条件</el-button>
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        <div v-if="screeningVisible">
 | 
	
		
			
				|  |  | +           <div class="search">
 | 
	
		
			
				|  |  | +     
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +            <el-select v-model="screeningObj.screeningCondition" filterable placeholder="筛选条件" class="filter-item" style="width: 120px;" clearable  @change="change_screening">
 | 
	
		
			
				|  |  | +              <el-option v-for="item in screeningList" :key="item.id" :label="item.name" :value="item.id" />
 | 
	
		
			
				|  |  | +            </el-select>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            <el-input v-model="screeningObj.screeningField" placeholder="筛选字段" style="width: 180px;" class="filter-item" clearable />
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            <el-select v-model="screeningObj.screeningField" placeholder="筛选字段">
 | 
	
		
			
				|  |  | +              <el-option  v-for="item in screeningFieldList1" :key="item.id" :label="item.name" :value="item.id" ></el-option>
 | 
	
		
			
				|  |  | +            </el-select>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            <el-select v-model="screeningObj.screeningField" placeholder="筛选字段">
 | 
	
		
			
				|  |  | +              <el-option  v-for="item in screeningFieldList2" :key="item.id" :label="item.name" :value="item.id" ></el-option>
 | 
	
		
			
				|  |  | +            </el-select>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            <el-date-picker v-model="screeningObj.inputDatetime" class="inputDatetime filter-item" type="daterange" range-separator="至" start-placeholder="开始日期" end-placeholder="结束日期" style="width: 250px;" />
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            <el-button class="successBorder" @click="form_search_screening">查询</el-button>
 | 
	
		
			
				|  |  | +             <el-button class="successBorder" @click="form_cancel_screening">重置</el-button> 
 | 
	
		
			
				|  |  | +          </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <div>
 | 
	
		
			
				|  |  | +            <el-row :gutter="20">
 | 
	
		
			
				|  |  | +                <el-col :span="6"  v-for = "(item,index) in screeningArr">
 | 
	
		
			
				|  |  | +                  <span style="font-size:14px;color:#555">{{index+1}}、条件:{{item.txt}}</span>
 | 
	
		
			
				|  |  | +                  
 | 
	
		
			
				|  |  | +                </el-col>
 | 
	
		
			
				|  |  | +            </el-row>
 | 
	
		
			
				|  |  | +                        
 | 
	
		
			
				|  |  | +          </div>
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        <div class="table">
 | 
	
		
			
				|  |  | +          <el-table
 | 
	
		
			
				|  |  | +            :key="tableObj.tableKey"
 | 
	
		
			
				|  |  | +            v-loading="tableObj.listLoading"
 | 
	
		
			
				|  |  | +            element-loading-text="给我一点时间"
 | 
	
		
			
				|  |  | +            :data="tableObj.list"
 | 
	
		
			
				|  |  | +            border
 | 
	
		
			
				|  |  | +            fit
 | 
	
		
			
				|  |  | +            highlight-current-row
 | 
	
		
			
				|  |  | +            style="width: 100%;"
 | 
	
		
			
				|  |  | +            :row-style="rowStyle"
 | 
	
		
			
				|  |  | +            :cell-style="cellStyle"
 | 
	
		
			
				|  |  | +            class="elTable table-fixed" 
 | 
	
		
			
				|  |  | +          >
 | 
	
		
			
				|  |  | +            <el-table-column type="selection" align="center" width="50" />
 | 
	
		
			
				|  |  | +            <el-table-column label="序号" align="center" type="index" width="50px">
 | 
	
		
			
				|  |  | +              <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                <span v-if="tableObj.pageNum">{{ scope.$index + (tableObj.pageNum-1) * tableObj.pageSize + 1 }}</span>
 | 
	
		
			
				|  |  | +                <span v-else>1</span>
 | 
	
		
			
				|  |  | +              </template>
 | 
	
		
			
				|  |  | +            </el-table-column>
 | 
	
		
			
				|  |  | +            <el-table-column label="分日日期/维度" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +              <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                <span>{{ scope.row.drivername }}</span>
 | 
	
		
			
				|  |  | +              </template>
 | 
	
		
			
				|  |  | +            </el-table-column>
 | 
	
		
			
				|  |  | +            <el-table-column label="混料数据" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +              <el-table-column label="理论重量" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +                <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                  <span>{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +              </el-table-column>
 | 
	
		
			
				|  |  | +              <el-table-column label="实际重量" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +                <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                  <span>{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +              </el-table-column>
 | 
	
		
			
				|  |  | +              <el-table-column label="误差值" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +                <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                  <span>{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +              </el-table-column>
 | 
	
		
			
				|  |  | +            </el-table-column>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            <el-table-column label="混料数据" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +              <el-table-column label="理论重量" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +                <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                  <span>{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +              </el-table-column>
 | 
	
		
			
				|  |  | +              <el-table-column label="实际重量" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +                <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                  <span>{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +              </el-table-column>
 | 
	
		
			
				|  |  | +              <el-table-column label="误差值" min-width="130px" align="center">
 | 
	
		
			
				|  |  | +                <template slot-scope="scope">
 | 
	
		
			
				|  |  | +                  <span>{{ scope.row.drivercode }}</span>
 | 
	
		
			
				|  |  | +                </template>
 | 
	
		
			
				|  |  | +              </el-table-column>
 | 
	
		
			
				|  |  | +            </el-table-column>
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +          </el-table>
 | 
	
		
			
				|  |  | +          <pagination v-show="tableObj.total>0" :total="tableObj.total" :page.sync="tableObj.getDataParameters.offset" :limit.sync="tableObj.getDataParameters.pagecount" @pagination="getList" />
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +        <div>
 | 
	
		
			
				|  |  | +          <!-- <div style = "">
 | 
	
		
			
				|  |  | +            <el-select v-model="tableObj.getDataParameters.parammaps.dateType" multiple placeholder="维度">
 | 
	
		
			
				|  |  | +              <el-option  v-for="item in fieldTypeList" :key="item.id" :label="item.name" :value="item.id" ></el-option>
 | 
	
		
			
				|  |  | +            </el-select>
 | 
	
		
			
				|  |  | +          </div> -->
 | 
	
		
			
				|  |  | +          
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          <div id="chartLine" style="width:100%;height:385px;" >
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +          </div>
 | 
	
		
			
				|  |  | +        </div>
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      </el-col>
 | 
	
		
			
				|  |  | +      <el-col :span="6">
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +          <div  class="chart-style-panel">
 | 
	
		
			
				|  |  | +            <el-form label-position="top" size="mini">
 | 
	
		
			
				|  |  | +              <el-form-item  label="图表类型">
 | 
	
		
			
				|  |  | +                <div class="chart-type-list">
 | 
	
		
			
				|  |  | +                  <!-- <span v-for="item in chartTypeList" :key="item.type" :class="{activedIcon :item.type===chartType, disabledIcon: !isUsable(item)}" @click="switchChartType(item)">
 | 
	
		
			
				|  |  | +                    <el-tooltip :content="item.name +': '+item.matchRule.desc" placement="top">
 | 
	
		
			
				|  |  | +                      <svg-icon class="icon" :icon-class="isUsable(item)? item.icon : (item.icon + '_disabled')" />
 | 
	
		
			
				|  |  | +                    </el-tooltip>
 | 
	
		
			
				|  |  | +                  </span> -->
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                  <span  @click="switch_chart_type(item)" v-for="item in chartTypeList" style = "display:inline-block;height:30px;width:30px;margin-right:10px;margin-bottom:10px">
 | 
	
		
			
				|  |  | +                    <el-tooltip  :content="item.desc" placement="top">
 | 
	
		
			
				|  |  | +                      <svg-icon class="icon"  style="height:20px;width:20px" :icon-class="item.isUse? item.icon : (item.icon + '_disabled')" />   
 | 
	
		
			
				|  |  | +                    </el-tooltip>
 | 
	
		
			
				|  |  | +                  </span>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                  <!-- <el-tooltip   content="1" placement="top">
 | 
	
		
			
				|  |  | +                      <svg-icon class="icon"  style="height:100px;width:100px"  icon-class="chart_line_disabled" />   
 | 
	
		
			
				|  |  | +                    </el-tooltip> -->
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +                </div>
 | 
	
		
			
				|  |  | +              </el-form-item>
 | 
	
		
			
				|  |  | +            </el-form>
 | 
	
		
			
				|  |  | +          </div>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      </el-col>
 | 
	
		
			
				|  |  | +    </el-row>
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  |    </div>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  </template>
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |  <script>
 | 
	
		
			
				|  |  | +import echarts from 'echarts'
 | 
	
		
			
				|  |  | + import draggable from 'vuedraggable'
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +require('echarts/theme/macarons')
 | 
	
		
			
				|  |  |  import { GetDataByName, PostDataByName, failproccess, ExecDataByConfig, checkButtons } from '@/api/common'
 | 
	
		
			
				|  |  |  import Cookies from 'js-cookie'
 | 
	
		
			
				|  |  |  import Pagination from '@/components/Pagination'
 | 
	
		
			
				|  |  |  import { MessageBox } from 'element-ui'
 | 
	
		
			
				|  |  |  export default {
 | 
	
		
			
				|  |  |    name: 'ChartPanel2',
 | 
	
		
			
				|  |  | -  components: { Pagination },
 | 
	
		
			
				|  |  | +  components: { Pagination, draggable  },
 | 
	
		
			
				|  |  |    data() {
 | 
	
		
			
				|  |  |      return {
 | 
	
		
			
				|  |  | +      arr1: [
 | 
	
		
			
				|  |  | +                        { id: 1, name: "ce111" },
 | 
	
		
			
				|  |  | +                        { id: 2, name: "ce12221" },
 | 
	
		
			
				|  |  | +                        { id: 3, name: "ce133311" },
 | 
	
		
			
				|  |  | +                        { id: 5, name: "ce11441" },
 | 
	
		
			
				|  |  | +                        { id: 4, name: "ce1411" }
 | 
	
		
			
				|  |  | +                    ],
 | 
	
		
			
				|  |  | +      chartType:'line',
 | 
	
		
			
				|  |  | +      chartTypeList:[
 | 
	
		
			
				|  |  | +          // {type:'table', desc:"表格:任意维度数据" ,icon:'chart_table',isUse:true,id:0}, 
 | 
	
		
			
				|  |  | +          {type:'line', desc:"折线图:任意维度数据" ,icon:'chart_line',isUse:false,id:0}, 
 | 
	
		
			
				|  |  | +          {type:'bar', desc:"柱状图:任意维度数据" ,icon:'chart_bar',isUse:false,id:1}, 
 | 
	
		
			
				|  |  | +          {type:'horizontal_bar', desc:"条形图:任意维度数据" ,icon:'horizontal_bar',isUse:false,id:2}, 
 | 
	
		
			
				|  |  | +          {type:'pie', desc:"饼图:任意维度数据" ,icon:'chart_pie',isUse:false,id:3}, 
 | 
	
		
			
				|  |  | +          {type:'line_bar', desc:"线柱图:任意维度数据" ,icon:'linebar_chart',isUse:false,id:4}, 
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +  
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  |        isRoleEdit: [],
 | 
	
		
			
				|  |  | -      enableList: [{ id: 1, name: '是' }, { id: 0, name: '否' }], // 是否启用
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -      table: {
 | 
	
		
			
				|  |  | -        getdataListParm: {
 | 
	
		
			
				|  |  | +      dateTypeList: [
 | 
	
		
			
				|  |  | +        { id: '汇总', name: '汇总' }, 
 | 
	
		
			
				|  |  | +        { id: '分日', name: '分日' }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      typeList: [
 | 
	
		
			
				|  |  | +        { id: '车次', name: '车次' }, 
 | 
	
		
			
				|  |  | +        { id: '栏舍', name: '栏舍' }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      dimensionList: [
 | 
	
		
			
				|  |  | +        { id: '栏舍', name: '栏舍' }, 
 | 
	
		
			
				|  |  | +        { id: '配方', name: '配方' }, 
 | 
	
		
			
				|  |  | +        { id: '班次', name: '班次' }, 
 | 
	
		
			
				|  |  | +        { id: '车次', name: '车次' }, 
 | 
	
		
			
				|  |  | +        { id: 'TMR', name: 'TMR' }, 
 | 
	
		
			
				|  |  | +        { id: '牲畜大类', name: '牲畜大类' }, 
 | 
	
		
			
				|  |  | +        { id: '牲畜小类', name: '牲畜小类' }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      //混料数据
 | 
	
		
			
				|  |  | +      mixtureList: [],
 | 
	
		
			
				|  |  | +      //撒料数据
 | 
	
		
			
				|  |  | +      spreadList: [],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      //车次 - 数据1 - 栏舍 - 理论重量、实际重量、误差值、允许误差数、准确率(平均)、是否超出误差
 | 
	
		
			
				|  |  | +      mixtureSpreadArr1: [
 | 
	
		
			
				|  |  | +        { 
 | 
	
		
			
				|  |  | +          value: '理论重量',label: '理论重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '理论重量-合计', label: '理论重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-平均', label: '理论重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最大值', label: '理论重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最小值', label: '理论重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-标准差', label: '理论重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-变异系数', label: '理论重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '实际重量',label: '实际重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '实际重量-合计', label: '实际重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-平均', label: '实际重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最大值', label: '实际重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最小值', label: '实际重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-标准差', label: '实际重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-变异系数', label: '实际重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '误差值',label: '误差值',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '误差值-合计', label: '误差值-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-平均', label: '误差值-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最大值', label: '误差值-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最小值', label: '误差值-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-标准差', label: '误差值-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-变异系数', label: '误差值-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '允许误差数',label: '允许误差数',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '允许误差数-合计', label: '允许误差数-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '允许误差数-平均', label: '允许误差数-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '允许误差数-最大值', label: '允许误差数-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '允许误差数-最小值', label: '允许误差数-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '允许误差数-标准差', label: '允许误差数-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '允许误差数-变异系数', label: '允许误差数-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { value: '准确率-平均',label: '准确率-平均'},
 | 
	
		
			
				|  |  | +        { value: '是否超出误差',label: '是否超出误差'}
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      //车次 - 数据2 - 配方 - 理论重量、实际重量、误差值、准确率(平均)
 | 
	
		
			
				|  |  | +      mixtureSpreadArr2: [
 | 
	
		
			
				|  |  | +        { 
 | 
	
		
			
				|  |  | +          value: '理论重量',label: '理论重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '理论重量-合计', label: '理论重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-平均', label: '理论重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最大值', label: '理论重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最小值', label: '理论重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-标准差', label: '理论重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-变异系数', label: '理论重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '实际重量',label: '实际重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '实际重量-合计', label: '实际重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-平均', label: '实际重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最大值', label: '实际重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最小值', label: '实际重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-标准差', label: '实际重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-变异系数', label: '实际重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '误差值',label: '误差值',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '误差值-合计', label: '误差值-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-平均', label: '误差值-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最大值', label: '误差值-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最小值', label: '误差值-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-标准差', label: '误差值-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-变异系数', label: '误差值-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { value: '准确率-平均',label: '准确率-平均'} 
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      //车次 - 数据3 - 班次 - 理论重量、实际重量、误差值、准确率(平均)、开始重量、结束重量
 | 
	
		
			
				|  |  | +      mixtureSpreadArr3: [
 | 
	
		
			
				|  |  | +        { 
 | 
	
		
			
				|  |  | +          value: '理论重量',label: '理论重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '理论重量-合计', label: '理论重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-平均', label: '理论重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最大值', label: '理论重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最小值', label: '理论重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-标准差', label: '理论重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-变异系数', label: '理论重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '实际重量',label: '实际重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '实际重量-合计', label: '实际重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-平均', label: '实际重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最大值', label: '实际重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最小值', label: '实际重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-标准差', label: '实际重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-变异系数', label: '实际重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '误差值',label: '误差值',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '误差值-合计', label: '误差值-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-平均', label: '误差值-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最大值', label: '误差值-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最小值', label: '误差值-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-标准差', label: '误差值-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-变异系数', label: '误差值-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { value: '准确率-平均',label: '准确率-平均'},
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '开始重量',label: '开始重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '开始重量-合计', label: '开始重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-平均', label: '开始重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-最大值', label: '开始重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-最小值', label: '开始重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-标准差', label: '开始重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-变异系数', label: '开始重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '结束重量',label: '结束重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '结束重量-合计', label: '结束重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-平均', label: '结束重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-最大值', label: '结束重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-最小值', label: '结束重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-标准差', label: '结束重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-变异系数', label: '结束重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      //车次 - 数据4 - 车次 - 理论重量、实际重量、误差值、准确率(平均)、跳转方式、开始重量、结束重量、计划时间、开始时间、结束时间、过程时间
 | 
	
		
			
				|  |  | +      mixtureSpreadArr4: [
 | 
	
		
			
				|  |  | +        { 
 | 
	
		
			
				|  |  | +          value: '理论重量',label: '理论重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '理论重量-合计', label: '理论重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-平均', label: '理论重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最大值', label: '理论重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最小值', label: '理论重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-标准差', label: '理论重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-变异系数', label: '理论重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '实际重量',label: '实际重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '实际重量-合计', label: '实际重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-平均', label: '实际重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最大值', label: '实际重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最小值', label: '实际重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-标准差', label: '实际重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-变异系数', label: '实际重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '误差值',label: '误差值',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '误差值-合计', label: '误差值-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-平均', label: '误差值-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最大值', label: '误差值-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最小值', label: '误差值-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-标准差', label: '误差值-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-变异系数', label: '误差值-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { value: '准确率-平均',label: '准确率-平均'},
 | 
	
		
			
				|  |  | +        { value: '跳转方式',label: '跳转方式'},
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '开始重量',label: '开始重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '开始重量-合计', label: '开始重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-平均', label: '开始重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-最大值', label: '开始重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-最小值', label: '开始重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-标准差', label: '开始重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '开始重量-变异系数', label: '开始重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '结束重量',label: '结束重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '结束重量-合计', label: '结束重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-平均', label: '结束重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-最大值', label: '结束重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-最小值', label: '结束重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-标准差', label: '结束重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '结束重量-变异系数', label: '结束重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { value: '计划时间',label: '计划时间'},
 | 
	
		
			
				|  |  | +        { value: '开始时间',label: '开始时间'},
 | 
	
		
			
				|  |  | +        { value: '结束时间',label: '结束时间'},
 | 
	
		
			
				|  |  | +        { value: '过程时间',label: '过程时间'},
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      //车次 - 数据5 - 牲畜大类 - 理论重量、实际重量、误差值、准确率(平均)
 | 
	
		
			
				|  |  | +      //车次 - 数据5 - 牲畜小类 - 理论重量、实际重量、误差值、准确率(平均)
 | 
	
		
			
				|  |  | +      //车次 - 数据5 - TMR - 理论重量、实际重量、误差值、准确率(平均)
 | 
	
		
			
				|  |  | +      mixtureSpreadArr5: [
 | 
	
		
			
				|  |  | +        { 
 | 
	
		
			
				|  |  | +          value: '理论重量',label: '理论重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '理论重量-合计', label: '理论重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-平均', label: '理论重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最大值', label: '理论重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-最小值', label: '理论重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-标准差', label: '理论重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '理论重量-变异系数', label: '理论重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '实际重量',label: '实际重量',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '实际重量-合计', label: '实际重量-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-平均', label: '实际重量-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最大值', label: '实际重量-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-最小值', label: '实际重量-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-标准差', label: '实际重量-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '实际重量-变异系数', label: '实际重量-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        {  
 | 
	
		
			
				|  |  | +          value: '误差值',label: '误差值',
 | 
	
		
			
				|  |  | +          children: [
 | 
	
		
			
				|  |  | +            { value: '误差值-合计', label: '误差值-合计'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-平均', label: '误差值-平均'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最大值', label: '误差值-最大值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-最小值', label: '误差值-最小值'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-标准差', label: '误差值-标准差'}, 
 | 
	
		
			
				|  |  | +            { value: '误差值-变异系数', label: '误差值-变异系数'}, 
 | 
	
		
			
				|  |  | +          ]
 | 
	
		
			
				|  |  | +        },
 | 
	
		
			
				|  |  | +        { value: '准确率-平均',label: '准确率-平均'}
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      mixScreenArr:[],
 | 
	
		
			
				|  |  | +      spreadScreenArr:[],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +   
 | 
	
		
			
				|  |  | +      screeningVisible:true,
 | 
	
		
			
				|  |  | +      // 筛选条件
 | 
	
		
			
				|  |  | +      screeningList: [
 | 
	
		
			
				|  |  | +        // { id: '配方名称', name: '配方名称' }, 
 | 
	
		
			
				|  |  | +        // { id: 'TMR名称', name: 'TMR名称' }, 
 | 
	
		
			
				|  |  | +        // { id: '班次', name: '班次' }, 
 | 
	
		
			
				|  |  | +        // { id: '车次计划', name: '车次计划' }, 
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // 筛选条件 - 参数
 | 
	
		
			
				|  |  | +      screeningObj:{
 | 
	
		
			
				|  |  | +            screeningCondition: '',
 | 
	
		
			
				|  |  | +            screeningField: '',
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            inputDatetime: '',
 | 
	
		
			
				|  |  | +             startTime: '',
 | 
	
		
			
				|  |  | +             stopTime: '',
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +      // 筛选条件 - 参数
 | 
	
		
			
				|  |  | +      screeningArr:[
 | 
	
		
			
				|  |  | +         
 | 
	
		
			
				|  |  | +        
 | 
	
		
			
				|  |  | +         
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      screeningFieldList1:[
 | 
	
		
			
				|  |  | +        { id: '是', name: '是' }, 
 | 
	
		
			
				|  |  | +        { id: '否', name: '否' }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +      screeningFieldList2:[
 | 
	
		
			
				|  |  | +        { id: '自动', name: '自动' }, 
 | 
	
		
			
				|  |  | +        { id: '手动', name: '手动' }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      // 筛选条件 - 结果
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +      fieldTypeList: [
 | 
	
		
			
				|  |  | +        { id: '配方A', name: '配方A' }, 
 | 
	
		
			
				|  |  | +        { id: '配方B', name: '配方B' }
 | 
	
		
			
				|  |  | +      ],
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      tableObj: {
 | 
	
		
			
				|  |  | +         getDataParameters: {
 | 
	
		
			
				|  |  |            name: 'getDriverList',
 | 
	
		
			
				|  |  |            page: 1,
 | 
	
		
			
				|  |  |            offset: 1,
 | 
	
	
		
			
				|  | @@ -98,17 +592,44 @@ export default {
 | 
	
		
			
				|  |  |            returntype: 'Map',
 | 
	
		
			
				|  |  |            parammaps: {
 | 
	
		
			
				|  |  |              pastureid: Cookies.get('pastureid'),
 | 
	
		
			
				|  |  | -            enable: '',
 | 
	
		
			
				|  |  | -            drivername: '',
 | 
	
		
			
				|  |  | -            drivercode: ''
 | 
	
		
			
				|  |  | +            dateType:'',
 | 
	
		
			
				|  |  | +            type: '',
 | 
	
		
			
				|  |  | +            dimension: '',
 | 
	
		
			
				|  |  | +            mixture: [],
 | 
	
		
			
				|  |  | +            spread: [],
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  |          },
 | 
	
		
			
				|  |  |          tableKey: 0,
 | 
	
		
			
				|  |  |          list: [],
 | 
	
		
			
				|  |  |          total: 0,
 | 
	
		
			
				|  |  | -        listLoading: true,
 | 
	
		
			
				|  |  | +        listLoading: false,
 | 
	
		
			
				|  |  |          temp: {}
 | 
	
		
			
				|  |  |        },
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      chartLine:null,
 | 
	
		
			
				|  |  | +      chartLine_data:{
 | 
	
		
			
				|  |  | +        chartType:'line',
 | 
	
		
			
				|  |  | +        xAxisArr: ['2019-01', '2019-02', '2019-03', '2019-04', '2019-05', '2019-06', '2019-07', '2019-08', '2019-09', '2019-10', '2019-11', '2019-12'],
 | 
	
		
			
				|  |  | +        legendArr: ['数据1', '数据2', '数据3', '数据4', '线条1'],
 | 
	
		
			
				|  |  | +        dataArr:[
 | 
	
		
			
				|  |  | +          [1, 10, 7, 0, 1, 7, 7, 6, 4, 4, 1, 6],
 | 
	
		
			
				|  |  | +          [1, 10, 7, 0, 1, 7, 7, 6, 4, 4, 1, 6],
 | 
	
		
			
				|  |  | +          [1, 10, 7, 0, 1, 7, 7, 6, 4, 4, 1, 6],
 | 
	
		
			
				|  |  | +          [2, 10, 3, 2, 10, 4, 4, 9, 3, 9, 3, 8],
 | 
	
		
			
				|  |  | +          [2, 10, 3, 2, 10, 4, 4, 9, 3, 9, 3, 8]
 | 
	
		
			
				|  |  | +        ]
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      chartLine_data2:{
 | 
	
		
			
				|  |  | +        chartType:'pie',
 | 
	
		
			
				|  |  | +        xAxisArr: ['2019-01', '2019-02', '2019-03', '2019-04', '2019-05', '2019-06', '2019-07', '2019-08', '2019-09', '2019-10', '2019-11', '2019-12'],
 | 
	
		
			
				|  |  | +        legendArr: ['数据1', '数据2', '数据3', '数据4', '线条1'],
 | 
	
		
			
				|  |  | +        dataArr:[1, 10, 7, 0, 1, 7, 7, 6, 4, 4, 1, 6],
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +      },
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |        requestParam: {},
 | 
	
		
			
				|  |  |        isokDisable: false,
 | 
	
		
			
				|  |  |        selectList: [],
 | 
	
	
		
			
				|  | @@ -120,20 +641,25 @@ export default {
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    created() {
 | 
	
		
			
				|  |  |      // console.log(VUE_APP_BASE_pageCount)
 | 
	
		
			
				|  |  | -    console.log(this.VUE_APP_BASE_pageCount, 'this.VUE_APP_BASE_pageCount')
 | 
	
		
			
				|  |  | -    this.getList()
 | 
	
		
			
				|  |  | -    this.getButtons()
 | 
	
		
			
				|  |  | +    // console.log(this.VUE_APP_BASE_pageCount, 'this.VUE_APP_BASE_pageCount')
 | 
	
		
			
				|  |  | +    // this.getList()
 | 
	
		
			
				|  |  | +    // this.getButtons()
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  |    },
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  |    methods: {
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      getButtons() {
 | 
	
		
			
				|  |  |        const Edit = 'Driver'
 | 
	
		
			
				|  |  |        const isRoleEdit = checkButtons(JSON.parse(sessionStorage.getItem('buttons')), Edit)
 | 
	
		
			
				|  |  |        this.isRoleEdit = isRoleEdit
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |      getList() {
 | 
	
		
			
				|  |  | -      this.table.listLoading = true
 | 
	
		
			
				|  |  | -      GetDataByName(this.table.getdataListParm).then(response => {
 | 
	
		
			
				|  |  | +      this.tableObj.listLoading = true
 | 
	
		
			
				|  |  | +      GetDataByName(this.tableObj.getDataParameters).then(response => {
 | 
	
		
			
				|  |  |          console.log('table数据', response.data.list)
 | 
	
		
			
				|  |  |          if (response.data.list !== null) {
 | 
	
		
			
				|  |  |            for (let i = 0; i < response.data.list.length; i++) {
 | 
	
	
		
			
				|  | @@ -143,210 +669,432 @@ export default {
 | 
	
		
			
				|  |  |              this.$set(response.data.list[i], 'isUpdate', true) // 编辑操作
 | 
	
		
			
				|  |  |              this.$set(response.data.list[i], 'isUpdateSave', false) // 编辑保存
 | 
	
		
			
				|  |  |            }
 | 
	
		
			
				|  |  | -          this.table.list = response.data.list
 | 
	
		
			
				|  |  | -          this.table.pageNum = response.data.pageNum
 | 
	
		
			
				|  |  | -          this.table.pageSize = response.data.pageSize
 | 
	
		
			
				|  |  | -          this.table.total = response.data.total
 | 
	
		
			
				|  |  | +          this.tableObj.list = response.data.list
 | 
	
		
			
				|  |  | +          this.tableObj.pageNum = response.data.pageNum
 | 
	
		
			
				|  |  | +          this.tableObj.pageSize = response.data.pageSize
 | 
	
		
			
				|  |  | +          this.tableObj.total = response.data.total
 | 
	
		
			
				|  |  |          } else {
 | 
	
		
			
				|  |  | -          this.table.list = []
 | 
	
		
			
				|  |  | +          this.tableObj.list = []
 | 
	
		
			
				|  |  |          }
 | 
	
		
			
				|  |  |          setTimeout(() => {
 | 
	
		
			
				|  |  | -          this.table.listLoading = false
 | 
	
		
			
				|  |  | +          this.tableObj.listLoading = false
 | 
	
		
			
				|  |  |          }, 100)
 | 
	
		
			
				|  |  |        })
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleEnableChange() {
 | 
	
		
			
				|  |  | -      console.log('点击了是否启用')
 | 
	
		
			
				|  |  | -    },
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    handleSearch() {
 | 
	
		
			
				|  |  | -      console.log('点击了查询')
 | 
	
		
			
				|  |  | -      this.table.getdataListParm.offset = 1
 | 
	
		
			
				|  |  | -      this.getList()
 | 
	
		
			
				|  |  | +    form_search() {
 | 
	
		
			
				|  |  | +      console.log('点击了查询 - 表单 tableObj', this.tableObj.getDataParameters.parammaps)
 | 
	
		
			
				|  |  | +      // this.tableObj.getDataParameters.offset = 1
 | 
	
		
			
				|  |  | +      // this.getList()
 | 
	
		
			
				|  |  | +      console.log('点击了查询 - this.chartLine_data', this.chartLine_data)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +      this.roadChartLine(this.chartLine_data)
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleRefresh() {
 | 
	
		
			
				|  |  | +    form_clear() {
 | 
	
		
			
				|  |  |        console.log('点击了重置')
 | 
	
		
			
				|  |  | -      this.table.getdataListParm.parammaps.drivername = ''
 | 
	
		
			
				|  |  | -      this.table.getdataListParm.parammaps.enable = ''
 | 
	
		
			
				|  |  | -      this.table.getdataListParm.parammaps.drivercode = ''
 | 
	
		
			
				|  |  | -      this.table.getdataListParm.offset = 1
 | 
	
		
			
				|  |  | -      this.getList()
 | 
	
		
			
				|  |  | +      // this.tableObj.getDataParameters.parammaps.drivername = ''
 | 
	
		
			
				|  |  | +      // this.tableObj.getDataParameters.parammaps.enable = ''
 | 
	
		
			
				|  |  | +      // this.tableObj.getDataParameters.parammaps.drivercode = ''
 | 
	
		
			
				|  |  | +      // this.tableObj.getDataParameters.offset = 1
 | 
	
		
			
				|  |  | +      //this.getList() 
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -    handleCreate() {
 | 
	
		
			
				|  |  | -      // 编辑true/不可编辑false
 | 
	
		
			
				|  |  | -      // 新增操true,编辑false,编辑保存false
 | 
	
		
			
				|  |  | -      for (let i = 0; i < this.table.list.length; i++) {
 | 
	
		
			
				|  |  | -        if (this.table.list[i].Edit === true) {
 | 
	
		
			
				|  |  | -          this.$message({ type: 'error', message: '当前内容未保存,请点击取消或保存继续进行操作', duration: 2000 })
 | 
	
		
			
				|  |  | -          return false
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -      this.table.list.unshift({ 'myId': (new Date()).valueOf(), 'Edit': true, 'NoEdit': false, 'isCreate': true, 'isUpdate': false, 'isUpdateSave': false, 'enable': 1, 'drivercode': '', 'drivername': '' })
 | 
	
		
			
				|  |  | +  //查询 - 汇总/分日
 | 
	
		
			
				|  |  | +    change_date_type(value) {
 | 
	
		
			
				|  |  | +      console.log('查询日期', value)
 | 
	
		
			
				|  |  | +     
 | 
	
		
			
				|  |  | +  
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    createData(row) {
 | 
	
		
			
				|  |  | -      console.log('点击了新增保存', row)
 | 
	
		
			
				|  |  | -      this.table.temp.pastureid = Cookies.get('pastureid')
 | 
	
		
			
				|  |  | -      this.table.temp.drivercode = row.drivercode
 | 
	
		
			
				|  |  | -      this.table.temp.drivername = row.drivername
 | 
	
		
			
				|  |  | -      this.table.temp.enable = row.enable
 | 
	
		
			
				|  |  | -      // 检验用户名称/角色是否为空
 | 
	
		
			
				|  |  | -      if (this.table.temp.drivercode == '' && this.table.temp.drivername == '') {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '驾驶员编号/驾驶员名称不能为空', duration: 2000 })
 | 
	
		
			
				|  |  | -        return false
 | 
	
		
			
				|  |  | -      } else if (this.table.temp.drivercode == '') {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '驾驶员编号不能为空', duration: 2000 })
 | 
	
		
			
				|  |  | -        return false
 | 
	
		
			
				|  |  | -      } else if (this.table.temp.drivername == '') {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '驾驶员名称不能为空', duration: 2000 })
 | 
	
		
			
				|  |  | -        return false
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //维度
 | 
	
		
			
				|  |  | +    change_dimension(value) {
 | 
	
		
			
				|  |  | +      console.log('维度', value)
 | 
	
		
			
				|  |  | +      this.tableObj.getDataParameters.parammaps.mixture = []
 | 
	
		
			
				|  |  | +      this.tableObj.getDataParameters.parammaps.spread = []
 | 
	
		
			
				|  |  | +      if(value == "栏舍"){
 | 
	
		
			
				|  |  | +        this.mixtureList = this.mixtureSpreadArr1
 | 
	
		
			
				|  |  | +        this.spreadList = this.mixtureSpreadArr1
 | 
	
		
			
				|  |  | +      } else if(value == "配方"){
 | 
	
		
			
				|  |  | +        this.mixtureList = this.mixtureSpreadArr2
 | 
	
		
			
				|  |  | +        this.spreadList = this.mixtureSpreadArr2
 | 
	
		
			
				|  |  | +      } else if(value == "班次"){
 | 
	
		
			
				|  |  | +        this.mixtureList = this.mixtureSpreadArr3
 | 
	
		
			
				|  |  | +        this.spreadList = this.mixtureSpreadArr3
 | 
	
		
			
				|  |  | +      } else if(value == "车次"){
 | 
	
		
			
				|  |  | +        this.mixtureList = this.mixtureSpreadArr4
 | 
	
		
			
				|  |  | +        this.spreadList = this.mixtureSpreadArr4
 | 
	
		
			
				|  |  | +      } else if(value == "牲畜大类" || value == "牲畜小类"  || value == "TMR"){
 | 
	
		
			
				|  |  | +        this.mixtureList = this.mixtureSpreadArr5
 | 
	
		
			
				|  |  | +        this.spreadList = this.mixtureSpreadArr5
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | -      this.isokDisable = true
 | 
	
		
			
				|  |  | -      setTimeout(() => {
 | 
	
		
			
				|  |  | -        this.isokDisable = false
 | 
	
		
			
				|  |  | -      }, 1000)
 | 
	
		
			
				|  |  | -      this.requestParam.name = 'insertDriver'
 | 
	
		
			
				|  |  | -      this.requestParam.parammaps = this.table.temp
 | 
	
		
			
				|  |  | -      PostDataByName(this.requestParam).then(response => {
 | 
	
		
			
				|  |  | -        console.log('新增保存发送参数', this.requestParam)
 | 
	
		
			
				|  |  | -        if (response.msg !== 'fail') {
 | 
	
		
			
				|  |  | -          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
 | 
	
		
			
				|  |  | -          this.getList()
 | 
	
		
			
				|  |  | -        } else {
 | 
	
		
			
				|  |  | -          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | +  
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    createCancel(row) {
 | 
	
		
			
				|  |  | -      console.log('点击了新增取消')
 | 
	
		
			
				|  |  | -      for (let i = 0; i < this.table.list.length; i++) {
 | 
	
		
			
				|  |  | -        if (row.myId === this.table.list[i].myId) {
 | 
	
		
			
				|  |  | -          var listIndex = this.table.list.indexOf(this.table.list[i])
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -        if (listIndex > -1) {
 | 
	
		
			
				|  |  | -          this.table.list.splice(listIndex, 1)
 | 
	
		
			
				|  |  | -          return
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //级联选择 - 混料数据
 | 
	
		
			
				|  |  | +    change_cascader1(value) {
 | 
	
		
			
				|  |  | +      console.log('级联选择 - 混料数据', value)
 | 
	
		
			
				|  |  | +      var allNode = this.$refs['cascader1'].getCheckedNodes()
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      console.log("级联选择 - 混料数据的Node", allNode)
 | 
	
		
			
				|  |  | +      var mixScreenArr = []
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +        value.forEach(function(i){
 | 
	
		
			
				|  |  | +          allNode.forEach(function(j){
 | 
	
		
			
				|  |  | +            if(i == j.value){
 | 
	
		
			
				|  |  | +              mixScreenArr.push({name: "混料-"+j.label, id:j.value})
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +      // allNode.forEach(function(item){
 | 
	
		
			
				|  |  | +      //   if(item.children.length == 0){
 | 
	
		
			
				|  |  | +      //     mixScreenArr.push({name: "混料-"+item.label, id:item.value})
 | 
	
		
			
				|  |  | +      //   }
 | 
	
		
			
				|  |  | +      // })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +      var spreadScreenArr = this.spreadScreenArr
 | 
	
		
			
				|  |  | +      this.mixScreenArr = mixScreenArr
 | 
	
		
			
				|  |  | +      this.screeningList = mixScreenArr.concat(spreadScreenArr)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleUpdate(row) {
 | 
	
		
			
				|  |  | -      for (let i = 0; i < this.table.list.length; i++) {
 | 
	
		
			
				|  |  | -        if (this.table.list[i].Edit == true) {
 | 
	
		
			
				|  |  | -          this.$message({ type: 'error', message: '当前内容未保存,请点击取消或保存继续进行操作', duration: 2000 })
 | 
	
		
			
				|  |  | -          return false
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | -      // 编辑true,不可编辑false
 | 
	
		
			
				|  |  | -      row.Edit = true
 | 
	
		
			
				|  |  | -      row.NoEdit = false
 | 
	
		
			
				|  |  | -      // 新增false,编辑false,编辑保存true
 | 
	
		
			
				|  |  | -      row.isCreate = false
 | 
	
		
			
				|  |  | -      row.isUpdate = false
 | 
	
		
			
				|  |  | -      row.isUpdateSave = true
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //级联选择 - 撒料数据
 | 
	
		
			
				|  |  | +    change_cascader2(value) {
 | 
	
		
			
				|  |  | +      console.log('级联选择 - 撒料数据', value)
 | 
	
		
			
				|  |  | +      var allNode2 = this.$refs['cascader2'].getCheckedNodes()
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +      console.log("级联选择 - 撒料数据的Node", allNode2)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      var spreadScreenArr = []
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       value.forEach(function(i){
 | 
	
		
			
				|  |  | +          allNode2.forEach(function(j){
 | 
	
		
			
				|  |  | +            if(i == j.value){
 | 
	
		
			
				|  |  | +              spreadScreenArr.push({name: "撒料-"+j.label, id:j.value})
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +          })
 | 
	
		
			
				|  |  | +        })
 | 
	
		
			
				|  |  | +      // allNode2.forEach(function(item){
 | 
	
		
			
				|  |  | +      //   if(item.children.length == 0){
 | 
	
		
			
				|  |  | +      //     spreadScreenArr.push({name: "撒料-"+item.label, id:item.value})
 | 
	
		
			
				|  |  | +      //   }
 | 
	
		
			
				|  |  | +      // })
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      var mixScreenArr = this.mixScreenArr
 | 
	
		
			
				|  |  | +      this.spreadScreenArr = spreadScreenArr
 | 
	
		
			
				|  |  | +      this.screeningList = mixScreenArr.concat(spreadScreenArr)
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    updateData(row) {
 | 
	
		
			
				|  |  | -      console.log('点击了编辑保存', row)
 | 
	
		
			
				|  |  | -      this.table.temp.pastureid = row.pastureid
 | 
	
		
			
				|  |  | -      this.table.temp.drivercode = row.drivercode
 | 
	
		
			
				|  |  | -      this.table.temp.drivername = row.drivername
 | 
	
		
			
				|  |  | -      this.table.temp.enable = row.enable
 | 
	
		
			
				|  |  | -      this.table.temp.id = row.id
 | 
	
		
			
				|  |  | -      // 检验用户名称/角色是否为空
 | 
	
		
			
				|  |  | -      console.log(this.table.temp.drivercode)
 | 
	
		
			
				|  |  | -      console.log(this.table.temp.drivername)
 | 
	
		
			
				|  |  | -      if (this.table.temp.drivercode == '' && this.table.temp.drivername == '') {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '驾驶员编号/驾驶员名称不能为空', duration: 2000 })
 | 
	
		
			
				|  |  | -        return false
 | 
	
		
			
				|  |  | -      } else if (this.table.temp.drivercode == undefined || this.table.temp.drivercode == '') {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '驾驶员编号不能为空', duration: 2000 })
 | 
	
		
			
				|  |  | -        return false
 | 
	
		
			
				|  |  | -      } else if (this.table.temp.drivername == undefined || this.table.temp.drivername == '') {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '驾驶员名称不能为空', duration: 2000 })
 | 
	
		
			
				|  |  | -        return false
 | 
	
		
			
				|  |  | -      }
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +    change_screening(value) {
 | 
	
		
			
				|  |  | +      console.log('筛选', value)
 | 
	
		
			
				|  |  | +      console.log('筛选数组', this.screeningList)
 | 
	
		
			
				|  |  |  
 | 
	
		
			
				|  |  | -      this.isokDisable = true
 | 
	
		
			
				|  |  | -      setTimeout(() => {
 | 
	
		
			
				|  |  | -        this.isokDisable = false
 | 
	
		
			
				|  |  | -      }, 1000)
 | 
	
		
			
				|  |  | -      this.requestParam.name = 'updateDriver'
 | 
	
		
			
				|  |  | -      this.requestParam.parammaps = this.table.temp
 | 
	
		
			
				|  |  | -      PostDataByName(this.requestParam).then(response => {
 | 
	
		
			
				|  |  | -        console.log('编辑保存发送参数', this.requestParam)
 | 
	
		
			
				|  |  | -        if (response.msg !== 'fail') {
 | 
	
		
			
				|  |  | -          this.$notify({ title: '成功', message: '保存成功', type: 'success', duration: 2000 })
 | 
	
		
			
				|  |  | -          this.getList()
 | 
	
		
			
				|  |  | -        } else {
 | 
	
		
			
				|  |  | -          this.$notify({ title: '保存失败', message: response.data, type: 'warning', duration: 2000 })
 | 
	
		
			
				|  |  | -        }
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    updateCancel(row) {
 | 
	
		
			
				|  |  | -      console.log('点击了编辑取消')
 | 
	
		
			
				|  |  | -      // 编辑false,不可编辑true
 | 
	
		
			
				|  |  | -      row.Edit = false
 | 
	
		
			
				|  |  | -      row.NoEdit = true
 | 
	
		
			
				|  |  | -      // 新增false,编辑true,编辑保存false
 | 
	
		
			
				|  |  | -      row.isCreate = false
 | 
	
		
			
				|  |  | -      row.isUpdate = true
 | 
	
		
			
				|  |  | -      row.isUpdateSave = false
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    handleCreate() {
 | 
	
		
			
				|  |  | +      // this.resetRequestParam()
 | 
	
		
			
				|  |  | +      // this.dialogStatus = 'create'
 | 
	
		
			
				|  |  | +      // this.parent = this.parentmenu
 | 
	
		
			
				|  |  | +      // this.screeningVisible = true
 | 
	
		
			
				|  |  | +      // this.$nextTick(() => {
 | 
	
		
			
				|  |  | +      //   this.$refs['dataForm'].clearValidate()
 | 
	
		
			
				|  |  | +      //   this.$refs.name.focus()
 | 
	
		
			
				|  |  | +      // })
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +   
 | 
	
		
			
				|  |  | +    
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    form_search_screening() {
 | 
	
		
			
				|  |  | +      console.log('点击了筛选条件 - 确认 - screeningObj',this.screeningObj)
 | 
	
		
			
				|  |  | +      var screeningCondition = this.screeningObj.screeningCondition
 | 
	
		
			
				|  |  | +      var screeningField = this.screeningObj.screeningField
 | 
	
		
			
				|  |  | +      var txt = { txt:    screeningCondition + screeningField}
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      console.log(txt)
 | 
	
		
			
				|  |  | +      this.screeningArr.push(txt)
 | 
	
		
			
				|  |  | + 
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    form_add_screening() {
 | 
	
		
			
				|  |  | +      console.log('点击了查询')
 | 
	
		
			
				|  |  | +      this.tableObj.getDataParameters.offset = 1
 | 
	
		
			
				|  |  |        this.getList()
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleRowDelete(row) {
 | 
	
		
			
				|  |  | -      console.log('点击了行内删除')
 | 
	
		
			
				|  |  | -      MessageBox.confirm('是否确认删除此信息?', {
 | 
	
		
			
				|  |  | -        confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
 | 
	
		
			
				|  |  | -      }).then(() => {
 | 
	
		
			
				|  |  | -        this.selectList = []
 | 
	
		
			
				|  |  | -        this.requestParam.name = 'deleteDriver'
 | 
	
		
			
				|  |  | -        this.requestParam.parammaps = {}
 | 
	
		
			
				|  |  | -        this.requestParam.parammaps.pastureid = row.pastureid
 | 
	
		
			
				|  |  | -        this.requestParam.parammaps.id = row.id
 | 
	
		
			
				|  |  | -        PostDataByName(this.requestParam).then(response => {
 | 
	
		
			
				|  |  | -          if (response.msg === 'fail') {
 | 
	
		
			
				|  |  | -            this.$notify({ title: '删除失败', message: response.data, type: 'warning', duration: 2000 })
 | 
	
		
			
				|  |  | -          } else {
 | 
	
		
			
				|  |  | -            this.$notify({ title: '成功', message: '删除成功', type: 'success', duration: 2000 })
 | 
	
		
			
				|  |  | -            this.getList()
 | 
	
		
			
				|  |  | -          }
 | 
	
		
			
				|  |  | -        })
 | 
	
		
			
				|  |  | -      }).catch(() => {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'info', message: '已取消删除' })
 | 
	
		
			
				|  |  | -      })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    form_clear_screening() {
 | 
	
		
			
				|  |  | +      console.log('点击了查询')
 | 
	
		
			
				|  |  | +      this.tableObj.getDataParameters.offset = 1
 | 
	
		
			
				|  |  | +      this.getList()
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleSelectionChange(val) {
 | 
	
		
			
				|  |  | -      console.log('勾选数据', val)
 | 
	
		
			
				|  |  | -      this.selectList = val
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    form_cancel_screening() {
 | 
	
		
			
				|  |  | +      console.log('点击了查询')
 | 
	
		
			
				|  |  | +      this.tableObj.getDataParameters.offset = 1
 | 
	
		
			
				|  |  | +      this.getList()
 | 
	
		
			
				|  |  |      },
 | 
	
		
			
				|  |  | -    handleDelete() {
 | 
	
		
			
				|  |  | -      console.log('点击了删除')
 | 
	
		
			
				|  |  | -      if (this.selectList.length == 0) {
 | 
	
		
			
				|  |  | -        this.$message({ type: 'error', message: '请选择驾驶员信息', duration: 2000 })
 | 
	
		
			
				|  |  | -      } else {
 | 
	
		
			
				|  |  | -        MessageBox.confirm('当前选中' + this.selectList.length + '条信息,是否删除?', {
 | 
	
		
			
				|  |  | -          confirmButtonText: '确认', cancelButtonText: '取消', type: 'warning'
 | 
	
		
			
				|  |  | -        }).then(() => {
 | 
	
		
			
				|  |  | -          console.log(this.selectList)
 | 
	
		
			
				|  |  | -          this.requestParam.common = { 'returnmap': '0' }
 | 
	
		
			
				|  |  | -          this.requestParam.data = []
 | 
	
		
			
				|  |  | -          this.requestParam.data[0] = { 'name': 'insertSpotList', 'resultmaps': { 'list': this.selectList }}
 | 
	
		
			
				|  |  | -          this.requestParam.data[0].children = []
 | 
	
		
			
				|  |  | -          this.requestParam.data[0].children[0] = { 'name': 'deleteDriver', 'type': 'e', 'parammaps': {
 | 
	
		
			
				|  |  | -            id: '@insertSpotList.id',
 | 
	
		
			
				|  |  | -            pastureid: '@insertSpotList.pastureid'
 | 
	
		
			
				|  |  | -          }}
 | 
	
		
			
				|  |  | -          ExecDataByConfig(this.requestParam).then(response => {
 | 
	
		
			
				|  |  | -            console.log('删除保存发送参数', this.requestParam)
 | 
	
		
			
				|  |  | -            if (response.msg === 'fail') {
 | 
	
		
			
				|  |  | -              this.$notify({ title: '删除失败', message: response.data, type: 'warning', duration: 2000 })
 | 
	
		
			
				|  |  | -            } else {
 | 
	
		
			
				|  |  | -              this.$notify({ title: '', message: '删除成功', type: 'success', duration: 2000 })
 | 
	
		
			
				|  |  | -              this.getList()
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    roadChartLine(chartLine_data) {
 | 
	
		
			
				|  |  | +      console.log(1111111111)
 | 
	
		
			
				|  |  | +      if (this.chartLine != null) {
 | 
	
		
			
				|  |  | +        this.chartLine.dispose()
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      this.chartLine = echarts.init(document.getElementById('chartLine'))
 | 
	
		
			
				|  |  | +      var option_line = {
 | 
	
		
			
				|  |  | +        title: { text: 'Stacked Line' },
 | 
	
		
			
				|  |  | +        tooltip: { trigger: 'axis' },
 | 
	
		
			
				|  |  | +        legend: {   data:chartLine_data.legendArr, right: 10, show: true, type: 'scroll' },
 | 
	
		
			
				|  |  | +        grid: { top: '15%', left: '8%', right: '8%', containLabel: true },
 | 
	
		
			
				|  |  | +        xAxis: [{ type: 'category',data:chartLine_data.xAxisArr }],
 | 
	
		
			
				|  |  | +        yAxis: [
 | 
	
		
			
				|  |  | +          {type: 'value', name: 'kg'},
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  | +         series: function (e) {
 | 
	
		
			
				|  |  | +            var serie = [];
 | 
	
		
			
				|  |  | +            for (var i = 0; i < chartLine_data.xAxisArr.length; i++) {
 | 
	
		
			
				|  |  | +              console.log(i)
 | 
	
		
			
				|  |  | +               
 | 
	
		
			
				|  |  | +                var item = {
 | 
	
		
			
				|  |  | +                  name: chartLine_data.legendArr[i],
 | 
	
		
			
				|  |  | +                  data: chartLine_data.dataArr[i],
 | 
	
		
			
				|  |  | +                  type: 'line',
 | 
	
		
			
				|  |  | +                  emphasis: { label: { show: true, position: 'inside' } },
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +             
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +              serie.push(item);
 | 
	
		
			
				|  |  |              }
 | 
	
		
			
				|  |  | -          })
 | 
	
		
			
				|  |  | -        })
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            console.log(serie)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return serie;
 | 
	
		
			
				|  |  | +          }()
 | 
	
		
			
				|  |  | +        // series: [
 | 
	
		
			
				|  |  | +        //           {
 | 
	
		
			
				|  |  | +        //       name: 'Email',
 | 
	
		
			
				|  |  | +        //       type: 'line',
 | 
	
		
			
				|  |  | +        //       stack: 'Total',
 | 
	
		
			
				|  |  | +        //       data: [120, 132, 101, 134, 90, 230, 210]
 | 
	
		
			
				|  |  | +        //     },
 | 
	
		
			
				|  |  | +        //     {
 | 
	
		
			
				|  |  | +        //       name: 'Union Ads',
 | 
	
		
			
				|  |  | +        //       type: 'line',
 | 
	
		
			
				|  |  | +        //       stack: 'Total',
 | 
	
		
			
				|  |  | +        //       data: [220, 182, 191, 234, 290, 330, 310]
 | 
	
		
			
				|  |  | +        //     },
 | 
	
		
			
				|  |  | +        //     {
 | 
	
		
			
				|  |  | +        //       name: 'Video Ads',
 | 
	
		
			
				|  |  | +        //       type: 'line',
 | 
	
		
			
				|  |  | +        //       stack: 'Total',
 | 
	
		
			
				|  |  | +        //       data: [150, 232, 201, 154, 190, 330, 410]
 | 
	
		
			
				|  |  | +        //     },
 | 
	
		
			
				|  |  | +        //     {
 | 
	
		
			
				|  |  | +        //       name: 'Direct',
 | 
	
		
			
				|  |  | +        //       type: 'line',
 | 
	
		
			
				|  |  | +        //       stack: 'Total',
 | 
	
		
			
				|  |  | +        //       data: [320, 332, 301, 334, 390, 330, 320]
 | 
	
		
			
				|  |  | +        //     },
 | 
	
		
			
				|  |  | +        //     {
 | 
	
		
			
				|  |  | +        //       name: 'Search Engine',
 | 
	
		
			
				|  |  | +        //       type: 'line',
 | 
	
		
			
				|  |  | +        //       stack: 'Total',
 | 
	
		
			
				|  |  | +        //       data: [820, 932, 901, 934, 1290, 1330, 1320]
 | 
	
		
			
				|  |  | +        //     }
 | 
	
		
			
				|  |  | +        // ]
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +      var option_bar = {
 | 
	
		
			
				|  |  | +        title: { text: 'Stacked Line' },
 | 
	
		
			
				|  |  | +        tooltip: { trigger: 'axis' },
 | 
	
		
			
				|  |  | +        legend: {   data:chartLine_data.legendArr, right: 10, show: true, type: 'scroll' },
 | 
	
		
			
				|  |  | +        grid: { top: '15%', left: '8%', right: '8%', containLabel: true },
 | 
	
		
			
				|  |  | +        xAxis: [{ type: 'category',data:chartLine_data.xAxisArr }],
 | 
	
		
			
				|  |  | +        yAxis: [
 | 
	
		
			
				|  |  | +          {type: 'value', name: 'kg'},
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  | +         series: function (e) {
 | 
	
		
			
				|  |  | +            var serie = [];
 | 
	
		
			
				|  |  | +            for (var i = 0; i < chartLine_data.xAxisArr.length; i++) {
 | 
	
		
			
				|  |  | +              console.log(i)
 | 
	
		
			
				|  |  | +               
 | 
	
		
			
				|  |  | +                var item = {
 | 
	
		
			
				|  |  | +                  name: chartLine_data.legendArr[i],
 | 
	
		
			
				|  |  | +                  data: chartLine_data.dataArr[i],
 | 
	
		
			
				|  |  | +                  type: 'bar',
 | 
	
		
			
				|  |  | +                  emphasis: { label: { show: true, position: 'inside' } },
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +             
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +              serie.push(item);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            console.log(serie)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return serie;
 | 
	
		
			
				|  |  | +          }()
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  |        }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      var option_horizontal_bar = {
 | 
	
		
			
				|  |  | +        title: { text: 'Stacked Line' },
 | 
	
		
			
				|  |  | +        tooltip: { trigger: 'axis' },
 | 
	
		
			
				|  |  | +        legend: {   data:chartLine_data.legendArr, right: 10, show: true, type: 'scroll' },
 | 
	
		
			
				|  |  | +        grid: { top: '15%', left: '8%', right: '8%', containLabel: true },
 | 
	
		
			
				|  |  | +        xAxis: {type: 'value', name: 'kg'},
 | 
	
		
			
				|  |  | +        yAxis: [
 | 
	
		
			
				|  |  | +          { type: 'category',data:chartLine_data.xAxisArr }
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  | +         series: function (e) {
 | 
	
		
			
				|  |  | +            var serie = [];
 | 
	
		
			
				|  |  | +            for (var i = 0; i < chartLine_data.xAxisArr.length; i++) {
 | 
	
		
			
				|  |  | +              console.log(i)
 | 
	
		
			
				|  |  | +               
 | 
	
		
			
				|  |  | +                var item = {
 | 
	
		
			
				|  |  | +                  name: chartLine_data.legendArr[i],
 | 
	
		
			
				|  |  | +                  data: chartLine_data.dataArr[i],
 | 
	
		
			
				|  |  | +                  type: 'bar',
 | 
	
		
			
				|  |  | +                  emphasis: { label: { show: true, position: 'inside' } },
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +             
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +              serie.push(item);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            console.log(serie)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return serie;
 | 
	
		
			
				|  |  | +          }()
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      var option_pie = {
 | 
	
		
			
				|  |  | +        title: { text: 'Stacked Line' },
 | 
	
		
			
				|  |  | +        tooltip: { trigger: 'axis' },
 | 
	
		
			
				|  |  | +        legend: {   data:chartLine_data.legendArr, right: 10, show: true,  },
 | 
	
		
			
				|  |  | +        grid: { top: '15%', left: '8%', right: '8%', containLabel: true },
 | 
	
		
			
				|  |  | +        xAxis: [{ type: 'category',data:chartLine_data.xAxisArr }],
 | 
	
		
			
				|  |  | +        yAxis: [
 | 
	
		
			
				|  |  | +          {type: 'value', name: 'kg'},
 | 
	
		
			
				|  |  | +           
 | 
	
		
			
				|  |  | +        ],
 | 
	
		
			
				|  |  | +         series: function (e) {
 | 
	
		
			
				|  |  | +            var serie = [
 | 
	
		
			
				|  |  | +               {
 | 
	
		
			
				|  |  | +                  name: 'Access From',
 | 
	
		
			
				|  |  | +                  type: 'pie',
 | 
	
		
			
				|  |  | +                  radius: '50%',
 | 
	
		
			
				|  |  | +                  data: [
 | 
	
		
			
				|  |  | +                    // { value: 1048, name: 'Search Engine' },
 | 
	
		
			
				|  |  | +                    // { value: 735, name: 'Direct' },
 | 
	
		
			
				|  |  | +                    // { value: 580, name: 'Email' },
 | 
	
		
			
				|  |  | +                    // { value: 484, name: 'Union Ads' },
 | 
	
		
			
				|  |  | +                    // { value: 300, name: 'Video Ads' }
 | 
	
		
			
				|  |  | +                  ],
 | 
	
		
			
				|  |  | +                  emphasis: {
 | 
	
		
			
				|  |  | +                    itemStyle: {
 | 
	
		
			
				|  |  | +                      shadowBlur: 10,
 | 
	
		
			
				|  |  | +                      shadowOffsetX: 0,
 | 
	
		
			
				|  |  | +                      shadowColor: 'rgba(0, 0, 0, 0.5)'
 | 
	
		
			
				|  |  | +                    }
 | 
	
		
			
				|  |  | +                  }
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +              ];
 | 
	
		
			
				|  |  | +            for (var i = 0; i < chartLine_data.xAxisArr.length; i++) {
 | 
	
		
			
				|  |  | +              console.log(i)
 | 
	
		
			
				|  |  | +               
 | 
	
		
			
				|  |  | +                var item = {
 | 
	
		
			
				|  |  | +                  name: chartLine_data.legendArr[i],
 | 
	
		
			
				|  |  | +                  value: chartLine_data.dataArr[i],
 | 
	
		
			
				|  |  | +                
 | 
	
		
			
				|  |  | +                }
 | 
	
		
			
				|  |  | +             
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +              serie[0].data.push(item);
 | 
	
		
			
				|  |  | +            }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            console.log(serie)
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +            return serie;
 | 
	
		
			
				|  |  | +          }()
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +     
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      if(chartLine_data.chartType == 'line'){
 | 
	
		
			
				|  |  | +        this.chartLine.setOption(option_line)
 | 
	
		
			
				|  |  | +      } else if(chartLine_data.chartType == 'bar'){
 | 
	
		
			
				|  |  | +         this.chartLine.setOption(option_bar)
 | 
	
		
			
				|  |  | +      } else if(chartLine_data.chartType == 'horizontal_bar'){
 | 
	
		
			
				|  |  | +         this.chartLine.setOption(option_horizontal_bar)
 | 
	
		
			
				|  |  | +      } else if(chartLine_data.chartType == 'pie'){
 | 
	
		
			
				|  |  | +         this.chartLine.setOption(option_pie)
 | 
	
		
			
				|  |  | +      } 
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +       
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  | +      window.onresize = function() {
 | 
	
		
			
				|  |  | +        this.chartLine.resize()
 | 
	
		
			
				|  |  | +      }
 | 
	
		
			
				|  |  | +    },
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +    //切换图表类型
 | 
	
		
			
				|  |  | +    switch_chart_type(item){
 | 
	
		
			
				|  |  | +      console.log(item)
 | 
	
		
			
				|  |  | +      console.log(this.chartTypeList)
 | 
	
		
			
				|  |  | +      var chartTypeList = this.chartTypeList
 | 
	
		
			
				|  |  | +      chartTypeList.forEach(function(i){
 | 
	
		
			
				|  |  | +        i.isUse = false
 | 
	
		
			
				|  |  | +      })
 | 
	
		
			
				|  |  | +      chartTypeList[item.id].isUse = true
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      this.chartType = item.type
 | 
	
		
			
				|  |  | +      this.chartTypeList = chartTypeList
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  | +      if(item.type == 'line'){
 | 
	
		
			
				|  |  | +        this.chartLine_data.chartType = 'line'
 | 
	
		
			
				|  |  | +        this.roadChartLine(this.chartLine_data)
 | 
	
		
			
				|  |  | +      } else if(item.type == 'bar'){
 | 
	
		
			
				|  |  | +        this.chartLine_data.chartType = 'bar'
 | 
	
		
			
				|  |  | +        this.roadChartLine(this.chartLine_data)
 | 
	
		
			
				|  |  | +      } else if(item.type == 'horizontal_bar'){
 | 
	
		
			
				|  |  | +        this.chartLine_data.chartType = 'horizontal_bar'
 | 
	
		
			
				|  |  | +         this.roadChartLine(this.chartLine_data)
 | 
	
		
			
				|  |  | +      }  else if(item.type == 'pie'){
 | 
	
		
			
				|  |  | +        this.chartLine_data2.chartType = 'pie'
 | 
	
		
			
				|  |  | +         this.roadChartLine(this.chartLine_data2)
 | 
	
		
			
				|  |  | +      } 
 | 
	
		
			
				|  |  | +      
 | 
	
		
			
				|  |  |      }
 | 
	
		
			
				|  |  | +
 | 
	
		
			
				|  |  |    }
 | 
	
		
			
				|  |  |  }
 | 
	
		
			
				|  |  |  </script>
 |