# Conflicts:
#	jnpf-java-boot/jnpf-web/src/views/enterpriserecyclestation/form.vue
master
CJYXTX\27961 7 months ago
commit 40c2f558ec

@ -70,9 +70,10 @@ spring:
# redis单机模式
redis:
database: 0 #缓存库编号
host: 222.71.165.187
# host: 222.71.165.187
host: 127.0.0.1
port: 6379
password: qawsed,.123 # 密码为空时,请将本行注释
# password: qawsed,.123 # 密码为空时,请将本行注释
timeout: 3000 #超时时间(单位:秒)
lettuce: #Lettuce为Redis的Java驱动包
pool:

@ -756,7 +756,7 @@ public class UserController extends SuperController<UserService, UserEntity> {
}
}
return ActionResult.success("操作失败,用户不存在");
return ActionResult.fail("操作失败,用户不存在");
}
/**

@ -356,9 +356,9 @@ public class EnterpriseServiceImpl extends ServiceImpl<EnterpriseMapper, Enterpr
id = form.getId();
}
//主表字段验证
if(StringUtil.isEmpty(form.getEnterpriseCode())){
return "商户代码不能为空";
}
// if(StringUtil.isEmpty(form.getEnterpriseCode())){
// return "商户代码不能为空";
// }
if(StringUtil.isNotEmpty(form.getEnterpriseCode())){
form.setEnterpriseCode(form.getEnterpriseCode().trim());
QueryWrapper<EnterpriseEntity> enterpriseCodeWrapper=new QueryWrapper<>();
@ -387,14 +387,10 @@ public class EnterpriseServiceImpl extends ServiceImpl<EnterpriseMapper, Enterpr
if(StringUtil.isEmpty(form.getAddress())){
return "详细地址不能为空";
}
if(StringUtil.isEmpty(form.getLandline())){
return "固话不能为空";
}
if(StringUtil.isNotEmpty(form.getLandline())){
if(!Pattern.compile("^1[3456789]\\d{9}$|^0\\d{2,3}-?\\d{7,8}$").matcher(String.valueOf(form.getLandline())).matches()){
return "请输入正确的联系方式";
}
}
// if(StringUtil.isEmpty(form.getLandline())){
// return "固话不能为空";
// }
if(StringUtil.isEmpty(form.getInvoiceHeader())){
return "发票抬头不能为空";
}
@ -432,9 +428,13 @@ public class EnterpriseServiceImpl extends ServiceImpl<EnterpriseMapper, Enterpr
if(isSave){
String mainId = RandomUtil.uuId() ;
entity.setEnterpriseCode(generaterSwapUtil.getBillNumber("shanghu", false));
entity.setId(mainId);
// entity.setVersion(0);
}else{
entity.setEnterpriseCode(generaterSwapUtil.getBillNumber("shanghu", false));
}
this.saveOrUpdate(entity);
}

@ -537,9 +537,7 @@ public class EnterpriserecyclestationServiceImpl extends ServiceImpl<Enterpriser
id = form.getId();
}
//主表字段验证
if(StringUtil.isEmpty(form.getStationCode())){
return "回收站编号不能为空";
}
if(StringUtil.isEmpty(form.getStationName())){
return "回收站名称不能为空";
}
@ -584,9 +582,12 @@ public class EnterpriserecyclestationServiceImpl extends ServiceImpl<Enterpriser
if(isSave){
String mainId = RandomUtil.uuId() ;
entity.setStationCode(generaterSwapUtil.getBillNumber("huishou", false));
entity.setId(mainId);
}else{
entity.setStationCode(generaterSwapUtil.getBillNumber("huishou", false));
}
this.saveOrUpdate(entity);
//Recyclestationprice子表数据新增修改

@ -154,6 +154,11 @@ public class HousingEstateServiceImpl extends ServiceImpl<HousingEstateMapper, H
}
if(housingEstatePagination.getExcludeIdList() != null && housingEstatePagination.getExcludeIdList().size() > 0){
housingEstateNum++;
housingEstateQueryWrapper.lambda().notIn(HousingEstateEntity::getId,housingEstatePagination.getExcludeIdList());
}
if(ObjectUtil.isNotEmpty(housingEstatePagination.getSourceType())){
housingEstateNum++;

@ -36,4 +36,7 @@ public class HousingEstatePagination extends Pagination {
/** 小区详细地址 */
@JsonProperty("address")
private Object address;
@JsonProperty("excludeIdList")
private List<String> excludeIdList;
}

@ -3,7 +3,7 @@
<template v-if="fileList.length">
<transition-group class="el-upload-list el-upload-list--picture-card" tag="ul" name="el-list">
<li class="el-upload-list__item is-success" v-for="(file, index) in fileList" :key="index">
<el-image :src="define.comUrl + file.url" class="el-upload-list__item-thumbnail"
<el-image :src="define.uploadDomain + file.url" class="el-upload-list__item-thumbnail"
:preview-src-list="getImgList(fileList)" :z-index="10000" :ref="'image' + index">
</el-image>
<span class="el-upload-list__item-actions">
@ -18,13 +18,13 @@
</transition-group>
</template>
<template v-if="!detailed">
<!-- <el-upload :action="define.comUploadUrl + '/' + type" :headers="uploadHeaders" :data="params"
<!-- <el-upload :action="define.uploadUrl + '/' + type" :headers="uploadHeaders" :data="params"
ref="elUpload" :on-success="handleSuccess" :multiple="limit !== 1" :show-file-list="false"
accept="image/*" :before-upload="beforeUpload" :disabled="disabled" list-type="picture-card"
class="upload-btn">
<i class="el-icon-plus"></i>
</el-upload> -->
<el-upload :action="define.comUploadUrl + '/' + type" :headers="uploadHeaders" ref="elUpload"
<el-upload :action="define.uploadUrl + '/' + type" :headers="uploadHeaders" ref="elUpload"
:on-success="handleSuccess" :multiple="limit !== 1" :show-file-list="false" accept="image/*"
:before-upload="beforeUpload" :disabled="disabled" list-type="picture-card"
class="upload-btn">
@ -191,7 +191,7 @@ export default {
dispatch.call(this, "ElFormItem", "el.form.change", this.fileList);
},
getImgList(list) {
const newList = list.map((o) => this.define.comUrl + o.url);
const newList = list.map((o) => this.define.uploadDomain + o.url);
return newList;
},
},

@ -1,17 +1,17 @@
const { APIURl } = require('./apiUrl')
const COM_URL = process.env.NODE_ENV === 'development' ? 'http://192.168.0.166:8808' : 'http://222.71.165.188:8808';
const COM_UPLOAD_URL = COM_URL + '/api/file';
const UPLOAD_DOMAIN = process.env.NODE_ENV === 'development' ? 'http://192.168.0.166:8808' : 'http://222.71.165.188:8808';
const UPLOAD_URL = UPLOAD_DOMAIN + '/api/file';
const UPLOAD_KEY = '8bd2aa89033ead51c505e44994e42189'
module.exports = {
APIURl,
uploadKey: UPLOAD_KEY,
uploadUrl: UPLOAD_URL,
uploadDomain: UPLOAD_DOMAIN,
timeout: process.env.NODE_ENV === 'development' ? 1000000 : 1000000,
// comUploadUrl: process.env.VUE_APP_BASE_API + '/api/file/Uploader',
comUploadUrl: COM_UPLOAD_URL,
// comUrl: process.env.VUE_APP_BASE_API,
comUrl: COM_URL,
comUploadUrl: process.env.VUE_APP_BASE_API + '/api/file/Uploader',
comUrl: process.env.VUE_APP_BASE_API,
// 本地文件预览
// filePreviewServer: process.env.NODE_ENV === 'development' ? 'http://localhost:30090' : process.env.VUE_APP_BASE_API + '/FileServer',
// 大屏应用前端路径

File diff suppressed because one or more lines are too long

File diff suppressed because it is too large Load Diff

File diff suppressed because one or more lines are too long

@ -266,10 +266,12 @@
</jnpf-form-tip-item>
</el-col>
<!-- <el-col :span="24">
<jnpf-form-tip-item label-width="0">
<div class="JNPF-common-title">
<h2>价格配置</h2>
</div>
<el-table :data="dataForm.recyclestationpriceList" size="mini">
<el-table-column
type="index"
@ -277,11 +279,13 @@
label="序号"
align="center"
/>
<el-table-column label="回收类目" prop="recycleTypeId">
<template slot="header" v-if="false">
<span class="required-sign">*</span>回收类目
</template>
<template slot-scope="scope">
<JnpfSelect
v-model="scope.row.recycleTypeId"
@change="
@ -296,6 +300,7 @@
:options="recyclestationpricerecycleTypeIdOptions"
:props="recyclestationpricerecycleTypeIdProps"
>
</JnpfSelect>
</template>
</el-table-column>
@ -304,6 +309,7 @@
<span class="required-sign">*</span>单价(kg)
</template>
<template slot-scope="scope">
<JnpfInput
v-model="scope.row.unitPrice"
@change="
@ -316,6 +322,7 @@
clearable
:style="{ width: '100%' }"
>
</JnpfInput>
</template>
</el-table-column>
@ -339,6 +346,7 @@
</div>
</jnpf-form-tip-item>
</el-col> -->
<el-col :span="24">
<jnpf-form-tip-item>
<JnpfGroupTitle content="业务配置" contentPosition="left">
@ -420,6 +428,7 @@
<div class="JNPF-common-title">
<h2>范围内小区</h2>
</div>
<el-table
:data="dataForm.recycleStationHousingEstateList"
size="mini"
@ -512,6 +521,7 @@
<!-- 表单结束 -->
</template>
</el-form>
<mapComponent
v-if="visibleMap"
:visibleMap="visibleMap"
@ -772,6 +782,28 @@ export default {
recyclestationhousingestatehousingEstateIdcolumnOptions: [
{ label: "小区名称", value: "name" },
],
recycleTypeIdsProps: { label: "fullName", value: "id" },
businessDaysOptions: [
{ fullName: "周一", id: "1" },
{ fullName: "周二", id: "2" },
{ fullName: "周三", id: "3" },
{ fullName: "周四", id: "4" },
{ fullName: "周五", id: "5" },
{ fullName: "周六", id: "6" },
{ fullName: "周日", id: "7" },
],
businessDaysProps: { label: "fullName", value: "id" },
acceptRangeOptions: [
{ fullName: "5KM以内", id: 5000 },
{ fullName: "10KM以内", id: 100000 },
{ fullName: "20KM以内", id: 200000 },
],
acceptRangeProps: { label: "fullName", value: "id" },
recyclestationpricerecycleTypeIdOptions: [],
recyclestationpricerecycleTypeIdProps: { label: "fullName", value: "id" },
recyclestationhousingestatehousingEstateIdcolumnOptions: [
{ label: "小区名称", value: "name" },
],
childIndex: -1,
isEdit: false,
interfaceRes: {

@ -12,69 +12,127 @@
<el-form @submit.native.prevent>
<el-col :span="6">
<el-form-item label="回收站编号">
<el-input v-model="query.stationCode" placeholder="请输入" clearable> </el-input>
<el-input
v-model="query.stationCode"
placeholder="请输入"
clearable
>
</el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="回收站名称">
<el-input v-model="query.stationName" placeholder="请输入" clearable> </el-input>
<el-input
v-model="query.stationName"
placeholder="请输入"
clearable
>
</el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="经营模式">
<JnpfSelect v-model="query.managementModel" placeholder="请选择" clearable
:options="managementModelOptions" :props="managementModelProps" multiple>
<JnpfSelect
v-model="query.managementModel"
placeholder="请选择"
clearable
:options="managementModelOptions"
:props="managementModelProps"
multiple
>
</JnpfSelect>
</el-form-item>
</el-col>
<template v-if="showAll">
<el-col :span="6">
<el-form-item label="所在城市">
<JnpfAreaSelect v-model="query.city" placeholder="请选择" :level="1" clearable />
<JnpfAreaSelect
v-model="query.city"
placeholder="请选择"
:level="1"
clearable
/>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="回收类目">
<JnpfSelect v-model="query.recycleTypeIds" placeholder="请选择" clearable
:options="recycleTypeIdsOptions" :props="recycleTypeIdsProps" multiple>
<JnpfSelect
v-model="query.recycleTypeIds"
placeholder="请选择"
clearable
:options="recycleTypeIdsOptions"
:props="recycleTypeIdsProps"
multiple
>
</JnpfSelect>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="范围内小区-小区名称">
<el-input v-model="query.tableField119_housingEstateName" placeholder="请输入"
clearable> </el-input>
<el-input
v-model="query.tableField119_housingEstateName"
placeholder="请输入"
clearable
>
</el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="首联系人">
<el-input v-model="query.firstContactPerson" placeholder="请输入" clearable>
<el-input
v-model="query.firstContactPerson"
placeholder="请输入"
clearable
>
</el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="回收站简称">
<el-input v-model="query.shortName" placeholder="请输入" clearable> </el-input>
<el-input
v-model="query.shortName"
placeholder="请输入"
clearable
>
</el-input>
</el-form-item>
</el-col>
<el-col :span="6">
<el-form-item label="价格配置-回收类目名称">
<JnpfSelect v-model="query.tableField135_recycleTypeName" placeholder="请选择"
clearable :options="tableField135_recycleTypeNameOptions"
:props="tableField135_recycleTypeNameProps" multiple>
<JnpfSelect
v-model="query.tableField135_recycleTypeName"
placeholder="请选择"
clearable
:options="tableField135_recycleTypeNameOptions"
:props="tableField135_recycleTypeNameProps"
multiple
>
</JnpfSelect>
</el-form-item>
</el-col>
</template>
<el-col :span="6">
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="search()"></el-button>
<el-button icon="el-icon-refresh-right" @click="reset()"></el-button>
<el-button type="text" icon="el-icon-arrow-down" @click="showAll=true"
v-if="!showAll">
<el-button type="primary" icon="el-icon-search" @click="search()"
>查询</el-button
>
<el-button icon="el-icon-refresh-right" @click="reset()"
>重置</el-button
>
<el-button
type="text"
icon="el-icon-arrow-down"
@click="showAll = true"
v-if="!showAll"
>
展开
</el-button>
<el-button type="text" icon="el-icon-arrow-up" @click="showAll=false" v-else>
<el-button
type="text"
icon="el-icon-arrow-up"
@click="showAll = false"
v-else
>
收起
</el-button>
</el-form-item>
@ -84,22 +142,40 @@
<div class="JNPF-common-layout-main JNPF-flex-main">
<div class="JNPF-common-head">
<div>
<el-button type="primary" icon="icon-ym icon-ym-btn-add" @click="addOrUpdateHandle()">
<el-button
type="primary"
icon="icon-ym icon-ym-btn-add"
@click="addOrUpdateHandle()"
>新增
</el-button>
</div>
<div class="JNPF-common-head-right">
<el-tooltip content="高级查询" placement="top" v-if="true">
<el-link icon="icon-ym icon-ym-filter JNPF-common-head-icon" :underline="false"
@click="openSuperQuery()" />
<el-link
icon="icon-ym icon-ym-filter JNPF-common-head-icon"
:underline="false"
@click="openSuperQuery()"
/>
</el-tooltip>
<el-tooltip effect="dark" :content="$t('common.refresh')" placement="top">
<el-link icon="icon-ym icon-ym-Refresh JNPF-common-head-icon" :underline="false"
@click="initData()" />
<el-tooltip
effect="dark"
:content="$t('common.refresh')"
placement="top"
>
<el-link
icon="icon-ym icon-ym-Refresh JNPF-common-head-icon"
:underline="false"
@click="initData()"
/>
</el-tooltip>
</div>
</div>
<JNPF-table v-loading="listLoading" :data="list" @sort-change='sortChange'
:span-method="arraySpanMethod">
<JNPF-table
v-loading="listLoading"
:data="list"
@sort-change="sortChange"
:span-method="arraySpanMethod"
>
<el-table-column prop="stationCode" label="回收站编号" align="left">
</el-table-column>
<el-table-column prop="stationName" label="回收站名称" align="left">
@ -112,30 +188,56 @@
</el-table-column>
<!-- <el-table-column prop="recycleTypeIds" label="回收类目" align="left">
</el-table-column> -->
<el-table-column prop="firstContactPerson" label="首联系人" align="left">
</el-table-column>
<el-table-column prop="firstContactPersonPosition" label="职位" align="left">
<!-- <el-table-column prop="firstContactPerson" label="首联系人" align="left">
</el-table-column> -->
<el-table-column
prop="firstContactPersonPosition"
label="职位"
align="left"
>
</el-table-column>
<el-table-column prop="firstContactPersonTel" label="手机号码" align="left" width="100px">
<el-table-column
prop="firstContactPersonTel"
label="手机号码"
align="left"
width="100px"
>
</el-table-column>
<el-table-column prop="address" label="详细地址" align="left">
</el-table-column>
<el-table-column prop="recycleTel" label="回收电话" align="left" width="100px">
<el-table-column
prop="recycleTel"
label="回收电话"
align="left"
width="100px"
>
</el-table-column>
<el-table-column prop="stationDescription" label="回收站介绍" align="left">
<el-table-column
prop="stationDescription"
label="回收站介绍"
align="left"
>
</el-table-column>
<el-table-column label="营业时间" prop="businessDays" algin="left">
<template slot-scope="scope">
{{ scope.row.businessDays}}
{{ scope.row.businessDays }}
</template>
</el-table-column>
<el-table-column prop="appointmentTimeStart" label="营业时间起" align="left">
<el-table-column
prop="appointmentTimeStart"
label="营业时间起"
align="left"
>
</el-table-column>
<el-table-column prop="appointmentTimeEnd" label="营业时间止" align="left">
<el-table-column
prop="appointmentTimeEnd"
label="营业时间止"
align="left"
>
</el-table-column>
<el-table-column label="接单范围" prop="acceptRange" algin="left">
<template slot-scope="scope">
{{ scope.row.acceptRange}}
{{ scope.row.acceptRange }}
</template>
</el-table-column>
<!-- <el-table-column prop="tableField119" label="范围内小区" align="center">
@ -182,13 +284,16 @@
</el-table-column> -->
<el-table-column prop="stationStatus" label="回收站状态" align="left">
<template slot-scope="scope">
<div v-if="scope.row.stationStatus == '开'" style="display: flex;align-items: center;">
<div
v-if="scope.row.stationStatus == '开'"
style="display: flex; align-items: center"
>
<div class="green"></div>
<span style="margin-left:10px;">启用</span>
<span style="margin-left: 10px">启用</span>
</div>
<div v-else style="display: flex;align-items: center;">
<div v-else style="display: flex; align-items: center">
<div class="red"></div>
<span style="margin-left:10px;color:#8898AA;">禁用</span>
<span style="margin-left: 10px; color: #8898aa">禁用</span>
</div>
</template>
</el-table-column>
@ -247,59 +352,80 @@
</el-table-column>-->
<el-table-column label="操作" fixed="right" width="150">
<template slot-scope="scope">
<el-button type="text" @click="addOrUpdateHandle(scope.row)">
<el-button type="text" @click="addOrUpdateHandle(scope.row)"
>编辑
</el-button>
<el-button type="text" class="JNPF-table-delBtn" @click="handleDel(scope.row.id)">
<el-button
type="text"
class="JNPF-table-delBtn"
@click="handleDel(scope.row.id)"
>删除
</el-button>
<el-button type="text" @click="goDetail(scope.row.id)">
<el-button type="text" @click="goDetail(scope.row.id)"
>详情
</el-button>
</template>
</el-table-column>
</JNPF-table>
<pagination :total="total" :page.sync="listQuery.currentPage"
:limit.sync="listQuery.pageSize" @pagination="initData" />
<pagination
:total="total"
:page.sync="listQuery.currentPage"
:limit.sync="listQuery.pageSize"
@pagination="initData"
/>
</div>
</div>
<JNPF-Form v-if="formVisible" ref="JNPFForm" @refresh="refresh" />
<ExportBox v-if="exportBoxVisible" ref="ExportBox" @download="download" />
<ImportBox v-if="uploadBoxVisible" ref="UploadBox" @refresh="initData" />
<Detail v-if="detailVisible" ref="Detail" @refresh="detailVisible=false" />
<ToFormDetail v-if="toFormDetailVisible" ref="toFormDetail"
@close="toFormDetailVisible = false" />
<SuperQuery v-if="superQueryVisible" ref="SuperQuery" :columnOptions="superQueryJson"
@superQuery="superQuery" />
<Detail
v-if="detailVisible"
ref="Detail"
@refresh="detailVisible = false"
/>
<ToFormDetail
v-if="toFormDetailVisible"
ref="toFormDetail"
@close="toFormDetailVisible = false"
/>
<SuperQuery
v-if="superQueryVisible"
ref="SuperQuery"
:columnOptions="superQueryJson"
@superQuery="superQuery"
/>
</div>
</template>
<script>
import request from '@/utils/request'
import request from "@/utils/request";
import { mapGetters } from "vuex";
import { getDictionaryDataSelector } from '@/api/systemData/dictionary'
import JNPFForm from './form'
import Detail from './Detail'
import ExportBox from '@/components/ExportBox'
import ToFormDetail from '@/views/basic/dynamicModel/list/detail'
import { getDataInterfaceRes } from '@/api/systemData/dataInterface'
import { getConfigData } from '@/api/onlineDev/visualDev'
import { getDefaultCurrentValueUserIdAsync } from '@/api/permission/user'
import { getDefaultCurrentValueDepartmentIdAsync } from '@/api/permission/organize'
import columnList from './columnList'
import { thousandsFormat } from "@/components/Generator/utils/index"
import SuperQuery from '@/components/SuperQuery'
import superQueryJson from './superQueryJson'
import { getDictionaryDataSelector } from "@/api/systemData/dictionary";
import JNPFForm from "./form";
import Detail from "./Detail";
import ExportBox from "@/components/ExportBox";
import ToFormDetail from "@/views/basic/dynamicModel/list/detail";
import { getDataInterfaceRes } from "@/api/systemData/dataInterface";
import { getConfigData } from "@/api/onlineDev/visualDev";
import { getDefaultCurrentValueUserIdAsync } from "@/api/permission/user";
import { getDefaultCurrentValueDepartmentIdAsync } from "@/api/permission/organize";
import columnList from "./columnList";
import { thousandsFormat } from "@/components/Generator/utils/index";
import SuperQuery from "@/components/SuperQuery";
import superQueryJson from "./superQueryJson";
export default {
components: {
JNPFForm,
Detail,
ExportBox, ToFormDetail, SuperQuery
ExportBox,
ToFormDetail,
SuperQuery,
},
data() {
return {
keyword: '',
keyword: "",
expandsTree: true,
refreshTree: true,
toFormDetailVisible: false,
@ -326,17 +452,17 @@ export default {
tableField135_recycleTypeName: undefined,
},
treeProps: {
children: 'children',
label: 'fullName',
value: 'id',
isLeaf: 'isLeaf'
children: "children",
label: "fullName",
value: "id",
isLeaf: "isLeaf",
},
list: [],
listLoading: true,
total: 0,
queryData: {},
listQuery: {
superQueryJson: '',
superQueryJson: "",
currentPage: 1,
pageSize: 20,
sort: "desc",
@ -348,216 +474,230 @@ export default {
flowList: [],
exportBoxVisible: false,
managementModelOptions: [],
managementModelProps: { "label": "fullName", "value": "id" },
managementModelProps: { label: "fullName", value: "id" },
recycleTypeIdsOptions: [],
recycleTypeIdsProps: { "label": "fullName", "value": "id" },
businessDaysOptions: [{ "fullName": "周一", "id": "1" }, { "fullName": "周二", "id": "2" }, { "fullName": "周三", "id": "3" }, { "fullName": "周四", "id": "4" }, { "fullName": "周五", "id": "5" }, { "fullName": "周六", "id": "6" }, { "fullName": "周日", "id": "7" }],
businessDaysProps: { "label": "fullName", "value": "id" },
acceptRangeOptions: [{ "fullName": "无限制", "id": "0" }, { "fullName": "1KM", "id": "1" }, { "fullName": "3KM", "id": "3" }, { "fullName": "5KM", "id": "5" }],
acceptRangeProps: { "label": "fullName", "value": "id" },
recycleTypeIdsProps: { label: "fullName", value: "id" },
businessDaysOptions: [
{ fullName: "周一", id: "1" },
{ fullName: "周二", id: "2" },
{ fullName: "周三", id: "3" },
{ fullName: "周四", id: "4" },
{ fullName: "周五", id: "5" },
{ fullName: "周六", id: "6" },
{ fullName: "周日", id: "7" },
],
businessDaysProps: { label: "fullName", value: "id" },
acceptRangeOptions: [
{ fullName: "无限制", id: "0" },
{ fullName: "1KM", id: "1" },
{ fullName: "3KM", id: "3" },
{ fullName: "5KM", id: "5" },
],
acceptRangeProps: { label: "fullName", value: "id" },
tableField135_recycleTypeIdOptions: [],
tableField135_recycleTypeIdProps: { "label": "fullName", "value": "id" },
tableField119_housingEstateIdcolumnOptions: [{ "label": "小区名称", "value": "name" },],
tableField135_recycleTypeIdProps: { label: "fullName", value: "id" },
tableField119_housingEstateIdcolumnOptions: [
{ label: "小区名称", value: "name" },
],
interfaceRes: {
tableField119_housingEstateId: [],
},
}
};
},
computed: {
...mapGetters(['userInfo']),
...mapGetters(["userInfo"]),
menuId() {
return this.$route.meta.modelId || ''
}
return this.$route.meta.modelId || "";
},
},
created() {
this.getColumnList(),
this.initSearchDataAndListData()
this.getColumnList(), this.initSearchDataAndListData();
this.getmanagementModelOptions();
this.getrecycleTypeIdsOptions();
this.gettableField135_recycleTypeNameOptions();
this.queryData = JSON.parse(JSON.stringify(this.query))
this.queryData = JSON.parse(JSON.stringify(this.query));
},
methods: {
toDetail(defaultValue, modelId) {
if (!defaultValue) return
getConfigData(modelId).then(res => {
if (!res.data || !res.data.formData) return
let formData = JSON.parse(res.data.formData)
formData.popupType = 'general'
this.toFormDetailVisible = true
if (!defaultValue) return;
getConfigData(modelId).then((res) => {
if (!res.data || !res.data.formData) return;
let formData = JSON.parse(res.data.formData);
formData.popupType = "general";
this.toFormDetailVisible = true;
this.$nextTick(() => {
this.$refs.toFormDetail.init(formData, modelId, defaultValue)
})
})
this.$refs.toFormDetail.init(formData, modelId, defaultValue);
});
});
},
toggleTreeExpand(expands) {
this.refreshTree = false
this.expandsTree = expands
this.refreshTree = false;
this.expandsTree = expands;
this.$nextTick(() => {
this.refreshTree = true
this.refreshTree = true;
this.$nextTick(() => {
this.$refs.treeBox.setCurrentKey(null)
})
})
this.$refs.treeBox.setCurrentKey(null);
});
});
},
filterNode(value, data) {
if (!value) return true;
return data[this.treeProps.label].indexOf(value) !== -1;
},
loadNode(node, resolve) {
const nodeData = node.data
const nodeData = node.data;
const config = {
treeInterfaceId: "",
treeTemplateJson: []
}
treeTemplateJson: [],
};
if (config.treeInterfaceId) {
//
if (config.treeTemplateJson && config.treeTemplateJson.length) {
for (let i = 0; i < config.treeTemplateJson.length; i++) {
const element = config.treeTemplateJson[i];
element.defaultValue = nodeData[element.relationField] || ''
element.defaultValue = nodeData[element.relationField] || "";
}
}
//
let query = {
paramList: config.treeTemplateJson || [],
}
};
//
getDataInterfaceRes(config.treeInterfaceId, query).then(res => {
let data = res.data
getDataInterfaceRes(config.treeInterfaceId, query).then((res) => {
let data = res.data;
if (Array.isArray(data)) {
resolve(data);
} else {
resolve([]);
}
})
});
}
},
getColumnList() {
//
this.columnOptions = this.transformColumnList(this.columnList)
this.columnOptions = this.transformColumnList(this.columnList);
},
transformColumnList(columnList) {
let list = []
let list = [];
for (let i = 0; i < columnList.length; i++) {
const e = columnList[i];
if (!e.prop.includes('-')) {
list.push(e)
if (!e.prop.includes("-")) {
list.push(e);
} else {
let prop = e.prop.split('-')[0]
let label = e.label.split('-')[0]
let vModel = e.prop.split('-')[1]
let prop = e.prop.split("-")[0];
let label = e.label.split("-")[0];
let vModel = e.prop.split("-")[1];
let newItem = {
align: "center",
jnpfKey: "table",
prop,
label,
children: []
}
e.vModel = vModel
if (!this.expandObj.hasOwnProperty(`${prop}Expand`)) this.$set(this.expandObj, `${prop}Expand`, false)
if (!list.some(o => o.prop === prop)) list.push(newItem)
children: [],
};
e.vModel = vModel;
if (!this.expandObj.hasOwnProperty(`${prop}Expand`))
this.$set(this.expandObj, `${prop}Expand`, false);
if (!list.some((o) => o.prop === prop)) list.push(newItem);
for (let i = 0; i < list.length; i++) {
if (list[i].prop === prop) {
list[i].children.push(e)
break
list[i].children.push(e);
break;
}
}
}
}
this.getMergeList(list)
this.getExportList(list)
return list
this.getMergeList(list);
this.getExportList(list);
return list;
},
arraySpanMethod({ column }) {
for (let i = 0; i < this.mergeList.length; i++) {
if (column.property == this.mergeList[i].prop) {
return [this.mergeList[i].rowspan, this.mergeList[i].colspan]
return [this.mergeList[i].rowspan, this.mergeList[i].colspan];
}
}
},
getMergeList(list) {
let newList = JSON.parse(JSON.stringify(list))
newList.forEach(item => {
let newList = JSON.parse(JSON.stringify(list));
newList.forEach((item) => {
if (item.children && item.children.length) {
let child = {
prop: item.prop + '-child-first'
}
item.children.unshift(child)
prop: item.prop + "-child-first",
};
item.children.unshift(child);
}
})
newList.forEach(item => {
});
newList.forEach((item) => {
if (item.children && item.children.length) {
item.children.forEach((child, index) => {
if (index == 0) {
this.mergeList.push({
prop: child.prop,
rowspan: 1,
colspan: item.children.length
})
colspan: item.children.length,
});
} else {
this.mergeList.push({
prop: child.prop,
rowspan: 0,
colspan: 0
})
colspan: 0,
});
}
})
});
} else {
this.mergeList.push({
prop: item.prop,
rowspan: 1,
colspan: 1
})
colspan: 1,
});
}
})
});
},
getExportList(list) {
let exportList = []
let exportList = [];
for (let i = 0; i < list.length; i++) {
if (list[i].jnpfKey === 'table') {
if (list[i].jnpfKey === "table") {
for (let j = 0; j < list[i].children.length; j++) {
exportList.push(list[i].children[j])
exportList.push(list[i].children[j]);
}
} else {
exportList.push(list[i])
exportList.push(list[i]);
}
}
this.exportList = exportList
this.exportList = exportList;
},
getmanagementModelOptions() {
getDictionaryDataSelector('519073654609283077').then(res => {
this.managementModelOptions = res.data.list
})
getDictionaryDataSelector("519073654609283077").then((res) => {
this.managementModelOptions = res.data.list;
});
},
getrecycleTypeIdsOptions() {
getDictionaryDataSelector('519096374193555461').then(res => {
this.recycleTypeIdsOptions = res.data.list
})
getDictionaryDataSelector("519096374193555461").then((res) => {
this.recycleTypeIdsOptions = res.data.list;
});
},
gettableField135_recycleTypeNameOptions() {
getDictionaryDataSelector('519096374193555461').then(res => {
this.tableField135_recycleTypeNameOptions = res.data.list
})
getDictionaryDataSelector("519096374193555461").then((res) => {
this.tableField135_recycleTypeNameOptions = res.data.list;
});
},
goDetail(id) {
this.detailVisible = true
this.detailVisible = true;
this.$nextTick(() => {
this.$refs.Detail.init(id)
})
this.$refs.Detail.init(id);
});
},
sortChange({ column, prop, order }) {
this.listQuery.sort = order == 'ascending' ? 'asc' : 'desc'
this.listQuery.sidx = !order ? '' : prop
this.initData()
this.listQuery.sort = order == "ascending" ? "asc" : "desc";
this.listQuery.sidx = !order ? "" : prop;
this.initData();
},
async initSearchDataAndListData() {
await this.initSearchData()
this.initData()
await this.initSearchData();
this.initData();
},
//
async initSearchData() {
},
async initSearchData() {},
initData() {
this.listLoading = true;
let _query = {
@ -566,106 +706,112 @@ export default {
keyword: this.keyword,
dataType: 0,
menuId: this.menuId,
moduleId: '518043449954403781',
moduleId: "518043449954403781",
type: 1,
};
request({
url: `/api/scm/Enterpriserecyclestation/getList`,
method: 'post',
data: _query
}).then(res => {
method: "post",
data: _query,
}).then((res) => {
var _list = res.data.list;
this.list = _list.map(o => ({
this.list = _list.map((o) => ({
...o,
...this.expandObj,
}))
this.total = res.data.pagination.total
this.listLoading = false
})
}));
this.total = res.data.pagination.total;
this.listLoading = false;
});
},
handleDel(id) {
this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
type: 'warning'
}).then(() => {
this.$confirm("此操作将永久删除该数据, 是否继续?", "提示", {
type: "warning",
})
.then(() => {
request({
url: `/api/scm/Enterpriserecyclestation/${id}`,
method: 'DELETE'
}).then(res => {
method: "DELETE",
}).then((res) => {
this.$message({
type: 'success',
type: "success",
message: res.msg,
onClose: () => {
this.initData()
}
this.initData();
},
});
})
}).catch(() => {
});
})
.catch(() => {});
},
handelUpload() {
this.uploadBoxVisible = true
this.uploadBoxVisible = true;
this.$nextTick(() => {
this.$refs.UploadBox.init("", "scm/Enterpriserecyclestation")
})
this.$refs.UploadBox.init("", "scm/Enterpriserecyclestation");
});
},
openSuperQuery() {
this.superQueryVisible = true
this.superQueryVisible = true;
this.$nextTick(() => {
this.$refs.SuperQuery.init()
})
this.$refs.SuperQuery.init();
});
},
superQuery(queryJson) {
this.listQuery.superQueryJson = queryJson
this.listQuery.currentPage = 1
this.initData()
this.listQuery.superQueryJson = queryJson;
this.listQuery.currentPage = 1;
this.initData();
},
addOrUpdateHandle(row, isDetail) {
let id = row ? row.id : ""
this.formVisible = true
let id = row ? row.id : "";
this.formVisible = true;
this.$nextTick(() => {
this.$refs.JNPFForm.init(id, isDetail, this.list)
})
this.$refs.JNPFForm.init(id, isDetail, this.list);
});
},
exportData() {
this.exportBoxVisible = true
this.exportBoxVisible = true;
this.$nextTick(() => {
this.$refs.ExportBox.init(this.exportList)
})
this.$refs.ExportBox.init(this.exportList);
});
},
download(data) {
let query = { ...data, ...this.listQuery, ...this.query, menuId: this.menuId }
let query = {
...data,
...this.listQuery,
...this.query,
menuId: this.menuId,
};
request({
url: `/api/scm/Enterpriserecyclestation/Actions/Export`,
method: 'post',
data: query
}).then(res => {
if (!res.data.url) return
this.jnpf.downloadFile(res.data.url)
this.$refs.ExportBox.visible = false
this.exportBoxVisible = false
})
method: "post",
data: query,
}).then((res) => {
if (!res.data.url) return;
this.jnpf.downloadFile(res.data.url);
this.$refs.ExportBox.visible = false;
this.exportBoxVisible = false;
});
},
search() {
this.listQuery.currentPage = 1
this.listQuery.pageSize = 20
this.listQuery.sort = "desc"
this.listQuery.sidx = ""
this.initData()
this.listQuery.currentPage = 1;
this.listQuery.pageSize = 20;
this.listQuery.sort = "desc";
this.listQuery.sidx = "";
this.initData();
},
refresh(isrRefresh) {
this.formVisible = false
if (isrRefresh) this.reset()
this.formVisible = false;
if (isrRefresh) this.reset();
},
reset() {
this.query = JSON.parse(JSON.stringify(this.queryData))
this.search()
this.query = JSON.parse(JSON.stringify(this.queryData));
this.search();
},
colseFlow(isrRefresh) {
this.flowVisible = false
if (isrRefresh) this.reset()
this.flowVisible = false;
if (isrRefresh) this.reset();
},
}
}
},
};
</script>
<style scoped>
.green {

@ -29,7 +29,7 @@
</el-form>
</div>
<span slot="footer" class="dialog-footer">
<!-- <el-button type="primary" @click="dialogVisible = false">确认修改</el-button> -->
<el-button @click="back()"></el-button>
<el-button type="primary" @click="dataFormSubmit()"></el-button>
</span>
</el-dialog>
@ -92,6 +92,12 @@ export default {
query: "",
});
},
back() {
this.$router.push({
path: "/login",
query: "",
});
},
dataFormSubmit() {
this.$refs["dataForm"].validate((valid) => {
if (valid) {
@ -102,6 +108,13 @@ export default {
};
resetUserPasswordForge(formData)
.then((res) => {
console.log(res);
if (res.code == 200) {
this.$router.push({
path: "/login",
query: "",
});
}
this.$message({
message: res.msg,
type: "success",

@ -29,7 +29,7 @@
<el-step title="资质上传" description="确认商户开店资质"></el-step>
</el-steps>
</div>
<div class="step step1" v-if="!active">
<div class="step step1" v-if="active == 1">
<div id="u9_text" class="text">
<p style="font-size: 15px">
<span
@ -187,7 +187,7 @@
</p>
</div>
</div>
<div class="step step2" v-if="active == 1">
<div class="step step2" v-if="active == 2">
<el-form
:model="dataForm"
:rules="dataRule"
@ -228,7 +228,7 @@
</el-form-item>
</el-form>
</div>
<div class="step step3" v-if="active == 2">
<div class="step step3" v-if="active == 3">
<el-form
:model="dataForm"
ref="ruleForStep2"
@ -299,7 +299,7 @@
@change="changeData('stationImg', -1)"
:fileSize="10"
sizeUnit="MB"
:limit="2"
:limit="1"
pathType="defaultPath"
:isAccount="0"
>
@ -311,7 +311,7 @@
@change="changeData('stationImg', -1)"
:fileSize="10"
sizeUnit="MB"
:limit="2"
:limit="1"
pathType="defaultPath"
:isAccount="0"
>
@ -321,15 +321,15 @@
</div>
</div>
<span slot="footer" class="dialog-footer">
<template v-if="!active">
<template v-if="active == 1">
<el-button @click="reject"></el-button>
<el-button type="primary" @click="next"></el-button>
</template>
<template v-if="active == 1">
<template v-if="active == 2">
<el-button @click="pre"></el-button>
<el-button type="primary" @click="next"></el-button>
</template>
<template v-if="active == 2">
<template v-if="active == 3">
<el-button @click="pre"></el-button>
<el-button type="primary" :loading="btnLoading" @click="complete()"
@ -491,7 +491,7 @@ export default {
this.active -= 1;
},
next() {
if (this.active == 2) {
if (this.active == 3) {
debugger;
this.$refs["ruleForStep1"].validate((valid) => {
if (valid) {
@ -530,11 +530,6 @@ export default {
this.dialogVisible = true;
},
complete() {
// this.$router.push({
// path: "/login",
// query: "",
// });
this.btnLoading = true;
const formMethod = this.dataForm.id
? updateOrganize
@ -553,6 +548,10 @@ export default {
this.$emit("close", true);
},
});
this.$router.push({
path: "/login",
query: "",
});
})
.catch(() => {
this.btnLoading = false;

@ -0,0 +1,180 @@
<template>
<el-dialog
title="选择商品"
:close-on-click-modal="false"
:visible.sync="visible"
class="JNPF-dialog JNPF-dialog_center"
lock-scroll
append-to-body
width="800px"
>
<el-row class="JNPF-common-search-box" :gutter="16">
<el-form @submit.native.prevent>
<el-col :span="10">
<el-form-item label="关键词">
<el-input
v-model="keyword"
placeholder="请输入关键词查询"
clearable
@keyup.enter.native="search()"
/>
</el-form-item>
</el-col>
<el-col :span="8">
<el-form-item>
<el-button type="primary" icon="el-icon-search" @click="search()"
>{{ $t("common.search") }}
</el-button>
<el-button icon="el-icon-refresh-right" @click="refresh()"
>{{ $t("common.reset") }}
</el-button>
</el-form-item>
</el-col>
</el-form>
<div class="JNPF-common-search-box-right">
<el-tooltip
effect="dark"
:content="$t('common.refresh')"
placement="top"
>
<el-link
icon="icon-ym icon-ym-Refresh JNPF-common-head-icon"
:underline="false"
@click="search()"
/>
</el-tooltip>
</div>
</el-row>
<JNPF-table
v-loading="listLoading"
:data="list"
hasC
@selection-change="handleSelectionChange"
:border="false"
>
<el-table-column prop="name" label="小区名" align="left">
</el-table-column>
<el-table-column prop="address" label="小区详细地址" align="left">
</el-table-column>
<el-table-column prop="longitude" label="经度" align="left">
</el-table-column>
<el-table-column prop="latitude" label="纬度" align="left">
</el-table-column>
<el-table-column
prop="hasSchedule"
label="是否是定时定点回收"
align="left"
>
</el-table-column>
<el-table-column prop="recycleAddress" label="定点回收地址" align="left">
</el-table-column>
</JNPF-table>
<pagination
:total="total"
:page.sync="listQuery.currentPage"
:limit.sync="listQuery.pageSize"
@pagination="init"
/>
<span slot="footer" class="dialog-footer">
<el-button @click="visible = false">{{
$t("common.cancelButton")
}}</el-button>
<el-button type="primary" @click="select()">{{
$t("common.confirmButton")
}}</el-button>
</span>
</el-dialog>
</template>
<script>
import request from "@/utils/request";
import { GoodsList } from "@/api/extend/order";
export default {
data() {
return {
visible: false,
listLoading: true,
keyword: "",
list: [],
total: 0,
listQuery: {
superQueryJson: "",
currentPage: 1,
pageSize: 20,
sort: "desc",
sidx: "",
},
excludeIdList: [],
checked: [],
};
},
methods: {
init(excludeIdList) {
this.visible = true;
this.listLoading = true;
if (excludeIdList) {
this.excludeIdList = excludeIdList;
}
let query = {
...this.listQuery,
keyword: this.keyword,
excludeIdList: this.excludeIdList,
dataType: 0,
};
/* GoodsList(query).then(res => {
this.list = res.data.list
this.listLoading = false
}) */
request({
url: `/api/scm/HousingEstate/getList`,
method: "post",
data: query,
}).then((res) => {
this.list = res.data.list;
this.listLoading = false;
this.total = res.data.pagination.total;
});
},
refresh() {
this.keyword = "";
this.listQuery.currentPage = 1;
this.listQuery.pageSize = 20;
this.listQuery.sort = "desc";
this.listQuery.sidx = "";
this.init();
},
search() {
this.listQuery.currentPage = 1;
this.listQuery.pageSize = 20;
this.listQuery.sort = "desc";
this.listQuery.sidx = "";
this.init();
},
select() {
if (!this.checked.length) return;
this.visible = false;
this.$emit("refreshDataList", this.checked);
},
handleSelectionChange(val) {
this.checked = val;
},
},
};
</script>
<style lang="scss" scoped>
>>> .el-dialog__body {
height: 70vh;
padding: 0 0 10px !important;
display: flex;
flex-direction: column;
overflow: hidden;
.JNPF-common-search-box {
margin-bottom: 0;
.JNPF-common-search-box-right {
padding: 10px 10px 0 0;
}
}
}
</style>
Loading…
Cancel
Save