修改的接口:客户,供应商,车辆,自然人

product
chuang 2 years ago
parent 6ed099df61
commit cb6b659070

@ -65,6 +65,7 @@ config:
Path: D:\project\resources\
ServiceDirectoryPath: TemporaryFile
# Linux、MacOS环境配置静态资源根目录和代码生成器临时目录
# Path: /www/wwwroot/JNPF.Admin.test/Resources/
# ServiceDirectoryPath: /www/wwwroot/JNPF.Admin.test/Resources/CodeTemp/

@ -9,6 +9,7 @@ import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jnpf.Jg_natural.entity.Jg_naturalEntity;
import jnpf.Jg_natural.entity.Jg_naturalMobileEntity;
import jnpf.Jg_natural.jg_natural.*;
import jnpf.Jg_natural.service.Jg_naturalService;
import jnpf.base.ActionResult;
@ -73,9 +74,9 @@ public class Jg_naturalController {
*/
@PostMapping("/getList")
public ActionResult list(@RequestBody Jg_naturalPagination jg_naturalPagination)throws IOException{
List<Jg_naturalEntity> list= jg_naturalService.getList(jg_naturalPagination);
List<Jg_naturalMobileEntity> list= jg_naturalService.getList(jg_naturalPagination);
//处理id字段转名称若无需转或者为空可删除
for(Jg_naturalEntity entity:list){
for(Jg_naturalMobileEntity entity:list){
}
List<Jg_naturalListVO> listVO=JsonUtil.getJsonToList(list,Jg_naturalListVO.class);
for(Jg_naturalListVO jg_naturalVO:listVO){

@ -49,5 +49,11 @@ public class Jg_naturalListVO{
@JsonProperty("creatorTime")
private Date creatorTime;
//运输总量
@JsonProperty("naturalSum")
private Integer naturalSum;
// 总次数
@JsonProperty("naturalCount")
private Integer naturalCount;
}

@ -1,8 +1,13 @@
package jnpf.Jg_natural.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import jnpf.Jg_natural.entity.Jg_naturalEntity;
import jnpf.Jg_natural.entity.Jg_naturalMobileEntity;
import org.apache.ibatis.annotations.Param;
/**
*
@ -13,5 +18,5 @@ import jnpf.Jg_natural.entity.Jg_naturalEntity;
* 2023-02-01
*/
public interface Jg_naturalMapper extends BaseMapper<Jg_naturalEntity> {
IPage<Jg_naturalMobileEntity> getNaturalList(@Param("page") Page<Jg_naturalMobileEntity> page, @Param("ew") Wrapper<Jg_naturalEntity> queryWrapper);
}

@ -1,10 +1,15 @@
package jnpf.Jg_natural.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import jnpf.Jg_natural.entity.Jg_naturalEntity;
import jnpf.Jg_natural.entity.Jg_naturalMobileEntity;
import jnpf.Jg_natural.jg_natural.Jg_naturalPagination;
import java.util.List;
/**
*
* jg_natural
@ -15,9 +20,11 @@ import java.util.List;
*/
public interface Jg_naturalService extends IService<Jg_naturalEntity> {
List<Jg_naturalEntity> getList(Jg_naturalPagination jg_naturalPagination);
List<Jg_naturalMobileEntity> getList(Jg_naturalPagination jg_naturalPagination);
IPage<Jg_naturalMobileEntity> page(Page<Jg_naturalMobileEntity> page, Wrapper<Jg_naturalEntity> queryWrapper);
List<Jg_naturalEntity> getTypeList(Jg_naturalPagination jg_naturalPagination,String dataType);
List<Jg_naturalEntity> getTypeList(Jg_naturalPagination jg_naturalPagination, String dataType);

@ -2,11 +2,13 @@ package jnpf.Jg_natural.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.Jg_natural.entity.Jg_naturalEntity;
import jnpf.Jg_natural.entity.Jg_naturalMobileEntity;
import jnpf.Jg_natural.jg_natural.Jg_naturalPagination;
import jnpf.Jg_natural.mapper.Jg_naturalMapper;
import jnpf.Jg_natural.service.Jg_naturalService;
@ -18,6 +20,7 @@ import jnpf.util.UserProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
@ -40,12 +43,14 @@ public class Jg_naturalServiceImpl extends ServiceImpl<Jg_naturalMapper, Jg_natu
@Autowired
private AuthorizeService authorizeService;
@Resource
private Jg_naturalMapper naturalMapper;
@Override
public List<Jg_naturalEntity> getList(Jg_naturalPagination jg_naturalPagination){
public List<Jg_naturalMobileEntity> getList(Jg_naturalPagination jg_naturalPagination){
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
int total=0;
@ -107,14 +112,20 @@ public class Jg_naturalServiceImpl extends ServiceImpl<Jg_naturalMapper, Jg_natu
}
}
if((total>0 && AllIdList.size()>0) || total==0){
Page<Jg_naturalEntity> page=new Page<>(jg_naturalPagination.getCurrentPage(), jg_naturalPagination.getPageSize());
IPage<Jg_naturalEntity> userIPage=this.page(page, jg_naturalQueryWrapper);
return jg_naturalPagination.setData(userIPage.getRecords(),userIPage.getTotal());
Page<Jg_naturalMobileEntity> page=new Page<>(jg_naturalPagination.getCurrentPage(), jg_naturalPagination.getPageSize());
IPage<Jg_naturalMobileEntity> userIPage = this.page(page, jg_naturalQueryWrapper);
return jg_naturalPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<Jg_naturalEntity> list = new ArrayList();
List<Jg_naturalMobileEntity> list = new ArrayList();
return jg_naturalPagination.setData(list, list.size());
}
}
@Override
public IPage<Jg_naturalMobileEntity> page(Page<Jg_naturalMobileEntity> page, Wrapper<Jg_naturalEntity> queryWrapper) {
return naturalMapper.getNaturalList(page,queryWrapper);
}
@Override
public List<Jg_naturalEntity> getTypeList(Jg_naturalPagination jg_naturalPagination,String dataType){
String userId=userProvider.get().getUserId();

@ -1 +0,0 @@
{"flowEngine":{"appFormUrl":null,"category":"crm","creatorTime":1670572225000,"creatorUser":"admin","dbLinkId":"0","deleteMark":null,"deleteTime":null,"deleteUserId":null,"description":"获取摄像头的地址,定期更新","enCode":"002","enabledMark":1,"flowTemplateJson":"{\"type\":\"start\",\"content\":\"所有人\",\"properties\":{\"initiator\":[],\"initiatePos\":[],\"initiateRole\":[],\"title\":\"流程发起\",\"formOperates\":[{\"id\":\"mId\",\"name\":\"主表ID\",\"required\":false,\"requiredDisabled\":false,\"jnpfKey\":\"select\",\"dataType\":\"\",\"read\":true,\"write\":true},{\"id\":\"mName\",\"name\":\"设备名\",\"required\":true,\"requiredDisabled\":true,\"jnpfKey\":\"comInput\",\"dataType\":\"\",\"read\":true,\"write\":true},{\"id\":\"serialnumber\",\"name\":\"设备序列号\",\"required\":true,\"requiredDisabled\":true,\"jnpfKey\":\"comInput\",\"dataType\":\"\",\"read\":true,\"write\":true},{\"id\":\"flvaddress\",\"name\":\"标清flv直播地址\",\"required\":true,\"requiredDisabled\":true,\"jnpfKey\":\"comInput\",\"dataType\":\"\",\"read\":true,\"write\":true},{\"id\":\"flvhdaddress\",\"name\":\"高清flv直播地址\",\"required\":true,\"requiredDisabled\":true,\"jnpfKey\":\"comInput\",\"dataType\":\"\",\"read\":true,\"write\":true},{\"id\":\"mStatus\",\"name\":\"设备状态:不在线、在线\",\"required\":false,\"requiredDisabled\":false,\"jnpfKey\":\"switch\",\"dataType\":\"\",\"read\":true,\"write\":true}],\"initFuncConfig\":{\"on\":false,\"interfaceId\":\"\",\"interfaceName\":\"\",\"templateJson\":[]},\"endFuncConfig\":{\"on\":false,\"interfaceId\":\"\",\"interfaceName\":\"\",\"templateJson\":[]},\"flowRecallFuncConfig\":{\"on\":false,\"interfaceId\":\"\",\"interfaceName\":\"\",\"templateJson\":[]},\"waitMsgConfig\":{\"on\":0,\"msgId\":\"\",\"msgName\":\"\",\"templateJson\":[]},\"endMsgConfig\":{\"on\":0,\"msgId\":\"\",\"msgName\":\"\",\"templateJson\":[]},\"approveMsgConfig\":{\"on\":0,\"msgId\":\"\",\"msgName\":\"\",\"templateJson\":[]},\"rejectMsgConfig\":{\"on\":0,\"msgId\":\"\",\"msgName\":\"\",\"templateJson\":[]},\"copyMsgConfig\":{\"on\":0,\"msgId\":\"\",\"msgName\":\"\",\"templateJson\":[]},\"hasSubmitBtn\":true,\"submitBtnText\":\"提 交\",\"hasSaveBtn\":true,\"saveBtnText\":\"暂 存\",\"hasPressBtn\":false,\"pressBtnText\":\"催 办\",\"hasRevokeBtn\":false,\"revokeBtnText\":\"撤 回\",\"hasPrintBtn\":false,\"printBtnText\":\"打 印\",\"printId\":\"\",\"isComment\":false,\"isBatchApproval\":false,\"isSummary\":false,\"summaryType\":0},\"nodeId\":\"RbGc8G1\"}","formData":"[{\"filedId\":\"mId\",\"filedName\":\"主表ID\",\"required\":false},{\"filedId\":\"mName\",\"filedName\":\"设备名\",\"required\":true},{\"filedId\":\"serialnumber\",\"filedName\":\"设备序列号\",\"required\":true},{\"filedId\":\"flvaddress\",\"filedName\":\"标清flv直播地址\",\"required\":true},{\"filedId\":\"flvhdaddress\",\"filedName\":\"高清flv直播地址\",\"required\":true},{\"filedId\":\"mStatus\",\"filedName\":\"设备状态:不在线、在线\",\"required\":false}]","formType":1,"formUrl":"extend/monitoring_item/form.vue","fullName":"摄像头数据","icon":"fa fa-file-text-o","iconBackground":null,"id":"370926725908927749","lastModifyTime":1670574143000,"lastModifyUser":"admin","sortCode":0,"tables":"[]","type":1,"version":null,"visibleType":0},"visibleList":[]}

@ -1,175 +0,0 @@
<template>
<view class="jnpf-wrap jnpf-wrap-workflow" v-if="!loading">
<u-form :model="dataForm" :rules="rules" ref="dataForm" :errorType="['toast']"
label-position="left" label-align="left" :label-width="labelwidth" class="jnpf-form">
<u-form-item
label="主表ID" v-if="judgeShow('mId')" :required="requiredList.mId" prop="mId" >
<jnpf-select v-model="dataForm.mId" :disabled="judgeWrite('mId')"
placeholder="请选择" :props="mIdProps" :options="mIdOptions" :style='{"width":"100%"}'>
</jnpf-select>
</u-form-item>
<u-form-item
label="设备名" v-if="judgeShow('mName')" :required="requiredList.mName" prop="mName" >
<u-input v-model="dataForm.mName" :disabled="judgeWrite('mName')"
placeholder="请输入" :style='{"width":"100%"}'>
</u-input>
</u-form-item>
<u-form-item
label="设备序列号" v-if="judgeShow('serialnumber')" :required="requiredList.serialnumber" prop="serialnumber" >
<u-input v-model="dataForm.serialnumber" :disabled="judgeWrite('serialnumber')"
placeholder="请输入" :style='{"width":"100%"}'>
</u-input>
</u-form-item>
<u-form-item
label="标清flv直播地址" v-if="judgeShow('flvaddress')" :required="requiredList.flvaddress" prop="flvaddress" >
<u-input v-model="dataForm.flvaddress" :disabled="judgeWrite('flvaddress')"
placeholder="请输入" :style='{"width":"100%"}'>
</u-input>
</u-form-item>
<u-form-item
label="高清flv直播地址" v-if="judgeShow('flvhdaddress')" :required="requiredList.flvhdaddress" prop="flvhdaddress" >
<u-input v-model="dataForm.flvhdaddress" :disabled="judgeWrite('flvhdaddress')"
placeholder="请输入" :style='{"width":"100%"}'>
</u-input>
</u-form-item>
<u-form-item
label="设备状态:不在线、在线" v-if="judgeShow('mStatus')" :required="requiredList.mStatus" prop="mStatus" >
<jnpf-switch v-model="dataForm.mStatus" :disabled="judgeWrite('mStatus')"
>
</jnpf-switch>
</u-form-item>
</u-form>
</view>
</template>
<script>
import {
getDictionaryDataSelector,
getDataInterfaceRes
} from '@/api/common'
import comMixin from '../mixin'
import request from '@/utils/request'
export default {
mixins: [comMixin],
data(){
return{
loading: false,
dataForm:{
id:"",
flowId: '',
status: 1,
candidateList:{},
freeapproveruserid: '',
mId : "",
mName : '',
serialnumber : '',
flvaddress : '',
flvhdaddress : '',
mStatus : 0,
},
rules:{
},
mIdOptions:[],
mIdProps:{"label":"M_Name","value":"id"},
labelwidth: 100*1.5,
}
},
created(){
this.dataAll()
},
onReady() {
this.$refs.dataForm.setRules(this.rules);
},
watch:{
dataForm: {
handler(val, oldVal) {
},
deep: true
}
},
methods:{
dataAll(){
this.getmIdOptions()
},
getmIdOptions() {
getDataInterfaceRes('370933183241262469').then(res => {
let data = res.data.data
this.mIdOptions = data
})
},
selfGetInfo() {
this.loading = true
request({
url: '/api/example/Monitoring_item/'+this.dataForm.id,
method: 'get',
}).then(res => {
this.dataInfo(res.data)
this.loading = false
})
},
selfSubmit() {
this.dataForm.status = this.eventType === 'submit' ? 0 : 1
if (this.eventType === 'save') return this.selfHandleRequest()
uni.showModal({
title: '提示',
content: '您确定要提交当前流程吗?',
success: res => {
if (res.confirm) {
this.selfHandleRequest()
}
}
})
},
selfHandleRequest() {
var _data =this.dataList()
if (this.dataForm.id) {
request({
url: '/api/example/Monitoring_item/' + this.dataForm.id,
method: 'put',
data: _data,
}).then(res => {
uni.showToast({
title: res.msg,
complete: () => {
setTimeout(() => {
uni.$emit('refresh')
uni.navigateBack()
}, 1500)
}
})
})
}else{
delete (this.dataForm.id)
request({
url: '/api/example/Monitoring_item',
method: 'post',
data: _data,
}).then(res => {
uni.showToast({
title: res.msg,
complete: () => {
setTimeout(() => {
uni.$emit('refresh')
uni.navigateBack()
}, 1500)
}
})
})
}
},
selfInit() {
this.$store.commit('base/UPDATE_RELATION_DATA', {})
},
dataList(){
var _data = JSON.parse(JSON.stringify(this.dataForm));
return _data;
},
dataInfo(dataAll){
let _dataAll =dataAll
this.dataForm=_dataAll
},
},
}
</script>

@ -1,389 +0,0 @@
<template>
<view class="dynamicModel-list-v">
<view class="head-warp com-dropdown">
<u-dropdown class="u-dropdown" ref="uDropdown" @close="closeData">
<u-dropdown-item title="排序">
<view class="dropdown-slot-content">
<view class="dropdown-slot-content-main">
<u-cell-group>
<u-cell-item @click="cellClick(item)" :arrow="false" :title="item.label"
v-for="(item, index) in sortOptions" :key="index" :title-style="{color: sortValue == item.value ? '#2979ff' : '#606266' }">
<u-icon v-if="sortValue == item.value" name="checkbox-mark" color="#2979ff" size="32"></u-icon>
</u-cell-item>
</u-cell-group>
</view>
</view>
</u-dropdown-item>
<u-dropdown-item title="筛选" >
<view class="dropdown-slot-content">
<view class="dropdown-slot-content-main search-main">
<view class="u-p-l-32 u-p-r-32 search-form">
<u-form :model="searchForm" ref="searchForm" :errorType="['toast']" label-position="left" label-width="150">
<u-form-item label="设备名" prop="mName">
<u-input v-model="searchForm.mName" placeholder="请输入设备名" />
</u-form-item>
</u-form>
</view>
<view class="buttom-actions">
<u-button class="buttom-btn" @click="reset"></u-button>
<u-button class="buttom-btn" type="primary" @click="closeDropdown"></u-button>
</view>
<view class="dropdown-slot-bg" @click="$refs.uDropdown.close()"></view>
</view>
</view>
</u-dropdown-item>
</u-dropdown>
</view>
<view class="list-warp">
<mescroll-uni ref="mescrollRef" @init="mescrollInit" @down="downCallback" @up="upCallback" :fixed="false" :down="downOption" :up="upOption">
<view class="list">
<view class="list-box" v-for="(item, index) in list" :key="item.prop">
<u-swipe-action :index="index" @click="handleClick" @open="open" :options="options" @content-click="goDetail(item.id,item.flowState)">
<view class="item">
<view class="item-cell u-line-1" v-if="$setPermission.hasP('mId',menuId)">
<text>主表ID</text>
<text>{{item.mid}}</text>
</view>
<view class="item-cell u-line-1" v-if="$setPermission.hasP('mName',menuId)">
<text>设备名</text>
<text>{{item.mname}}</text>
</view>
<view class="item-cell u-line-1" v-if="$setPermission.hasP('serialnumber',menuId)">
<text>设备序列号</text>
<text>{{item.serialnumber}}</text>
</view>
<view class="item-cell u-line-1" v-if="$setPermission.hasP('flvaddress',menuId)">
<text>标清flv直播地址</text>
<text>{{item.flvaddress}}</text>
</view>
<view class="item-cell u-line-1" v-if="$setPermission.hasP('flvhdaddress',menuId)">
<text>高清flv直播地址</text>
<text>{{item.flvhdaddress}}</text>
</view>
<view class="item-cell u-line-1" v-if="$setPermission.hasP('mStatus',menuId)">
<text>设备状态不在线在线</text>
<text>{{item.mstatus}}</text>
</view>
<view class="item-cell">
<text>审批状态</text>
<text :class="getFlowStatus(item.flowState).statusCss">
{{getFlowStatus(item.flowState).text}}
</text>
</view>
</view>
</u-swipe-action>
</view>
</view>
</mescroll-uni>
</view>
<view class="com-addBtn" @click="addPage()" v-if="$setPermission.hasBtnP('btn_add',menuId)" >
<u-icon name="plus" size="60" color="#fff" />
</view>
</view>
</template>
<script>
import resources from '@/libs/resources.js'
import MescrollMixin from "@/uni_modules/mescroll-uni/components/mescroll-uni/mescroll-mixins.js";
import {
getDictionaryDataSelector,
getDataInterfaceRes
} from '@/api/common'
import request from '@/utils/request'
export default {
mixins: [MescrollMixin],
data() {
return {
sortValue: '',
searchForm: {
mName:undefined,
},
downOption: {
use: true,
auto: false
},
upOption: {
page: {
num: 0,
size: 20,
time: null,
},
empty: {
use: true,
icon: resources.message.nodata,
tip: "暂无数据",
fixed: true,
top: "300rpx",
zIndex: 5,
},
textNoMore: '没有更多数据',
toTop: {
bottom: 250
}
},
mIdOptions:[],
mIdProps:{"label":"M_Name","value":"id"},
list: [],
listQuery: {
sort: 'asc',
sidx: '',
keyword: '',
json: ''
},
options: [
{
text: '删除',
style: {
backgroundColor: '#dd524d'
}
}
],
sortOptions:[
{
label: '主表ID降序',
sidx: 'mId',
value: 'mIddesc',
sort: 'desc'
},
{
label: '主表ID升序',
sidx: 'mId',
value: 'mIdasc',
sort: 'asc'
},
],
menuId:'',
}
},
onLoad(e){
this.menuId = e.menuId
uni.$on('refresh', () => {
this.list = [];
this.mescroll.resetUpScroll();
})
this.dataAll()
},
onUnload() {
uni.$off('refresh')
},
methods:{
dataAll(){
this.getmIdOptions()
},
getmIdOptions() {
getDataInterfaceRes('370933183241262469').then(res => {
let data = res.data.data
this.mIdOptions = data
})
},
closeData(e){
if(e==1){
// this.reset()
}
},
upCallback(page) {
// for(let i in this.searchForm){
// if(!this.searchForm[i]){
// delete this.searchForm[i]
// }
// }
const query = {
currentPage: page.num,
pageSize: page.size,
menuId : this.menuId,
...this.listQuery,
...this.searchForm
}
request({
url: '/api/example/Monitoring_item/getList',
method: 'post',
data: query,
}).then(res => {
let _list = this.dataList(res.data);
this.mescroll.endSuccess(res.data.list.length);
if (page.num == 1) this.list = [];
const list = _list.map(o => ({
show: false,
...o
}));
this.list = this.list.concat(_list);
}).catch(() => {
this.mescroll.endErr();
})
},
handleClick(index, index1) {
if (!this.$setPermission.hasBtnP("btn_remove",this.menuId)) return this.$u.toast("未开启删除权限")
const item = this.list[index]
if([1,3,5].includes(item.flowState)){
this.$u.toast("流程正在审核,请勿删除")
this.list[index].show = false
return
}
request({
url: '/api/example/Monitoring_item/' + item.id,
method: 'delete'
}).then(res => {
uni.showToast({
title: res.msg,
complete: () => {
this.$u.toast(res.msg)
this.list.splice(index, 1)
if (!this.list.length) this.mescroll.showEmpty()
}
})
})
},
open(index) {
this.list[index].show = true;
this.list.map((val, idx) => {
if (index != idx) this.list[idx].show = false;
})
},
search() {
if (this.isPreview == '1') return
this.searchTimer && clearTimeout(this.searchTimer)
this.searchTimer = setTimeout(() => {
this.list = [];
this.mescroll.resetUpScroll();
}, 300)
},
goDetail(id, status) {
let btnType = ''
let btnList = []
btnList.push('btn_edit')
if(btnList.includes('btn_detail')){
btnType = "btn_detail"
}
if(btnList.includes('btn_edit')){
btnType = "btn_edit"
}
if(!btnType) return
if(!this.$setPermission.hasBtnP('btn_edit',this.menuId) && !this.$setPermission.hasBtnP('',this.menuId)) return
if(this.$setPermission.hasBtnP('btn_edit',this.menuId)) btnType = 'btn_edit'
this.jumPage(id, status,btnType)
},
addPage() {
this.jumPage()
},
jumPage(id, status,btnType){
if (!id && !status) btnType = 'btn_add'
let _title=""
if(btnType=='btn_add'){
_title = "新增"
}
if(btnType=='btn_detail'){
_title = "详情"
}
if(btnType=='btn_edit'){
_title = "编辑"
}
let opType = '-1'
if ([1,2,4,5].includes(status)) opType = 0
const config = {
id: id || '',
enCode: '002',
flowId: '370926725908927749',
formType: 1,
type: 1,
opType,
status: status || '',
fullName: _title,
jurisdictionType: btnType || ''
}
uni.navigateTo({
url: '/pages/workFlow/flowBefore/index?config=' + encodeURIComponent(JSON.stringify(config))
})
},
getFlowStatus(val) {
let status
switch (val) {
case 0:
status = {
text: '等待提交',
statusCss: 'u-type-info'
}
break;
case 1:
status = {
text: '等待审核',
statusCss: 'u-type-primary'
}
break;
case 2:
status = {
text: '审核通过',
statusCss: 'u-type-success'
}
break;
case 3:
status = {
text: '审核驳回',
statusCss: 'u-type-error'
}
break;
case 4:
status = {
text: '审核撤回',
statusCss: 'u-type-error'
}
break;
case 5:
status = {
text: '审核终止',
statusCss: 'u-type-info'
}
break;
default:
status = {
text: '等待提交',
statusCss: 'u-type-info'
}
break;
}
return status
},
cellClick(item) {
if (this.sortValue === item.value) return
this.listQuery.sort = item.sort
this.listQuery.sidx = item.sidx
this.sortValue = item.value
this.$refs.uDropdown.close();
this.$nextTick(() => {
this.list = [];
this.mescroll.resetUpScroll();
})
},
reset() {
this.$refs.searchForm.resetFields()
},
closeDropdown() {
this.$refs.uDropdown.close();
this.$nextTick(() => {
this.list = [];
this.mescroll.resetUpScroll();
})
},
dataList(data){
let _list =[]
for(let i=0;i<data.list.length;i++){
let _data = data.list[i]
_list.push(_data)
}
return _list;
},
},
}
</script>
<style lang="scss">
page {
background-color: #f0f2f6;
height: 100%;
/* #ifdef MP-ALIPAY */
position: absolute;
top: 0;
left: 0;
width: 100%;
/* #endif */
}
</style>

@ -1,68 +0,0 @@
<template>
<el-dialog title="导出数据" :close-on-click-modal="false" :visible.sync="visible"
class="JNPF-dialog JNPF-dialog_center" lock-scroll width="600px">
<el-form label-position="top" label-width="80px">
<el-form-item label="数据选择">
<el-radio-group v-model="type">
<el-radio :label="0">当前页面数据</el-radio>
<el-radio :label="1">全部页面数据</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="导出字段">
<el-checkbox :indeterminate="isIndeterminate" v-model="checkAll"
@change="handleCheckAllChange">全选</el-checkbox>
<el-checkbox-group v-model="columns" @change="handleCheckedChange">
<el-checkbox v-for="item in columnList" :label="item.prop" :key="item.prop">
{{item.label}}
</el-checkbox>
</el-checkbox-group>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button @click="visible=false"> </el-button>
<el-button type="primary" @click="downLoad"> </el-button>
</span>
</el-dialog>
</template>
<script>
export default {
data() {
return {
visible: false,
btnLoading: false,
type: 0,
columns: [],
checkAll: true,
isIndeterminate: false,
columnList: []
}
},
methods: {
init(columnList) {
this.visible = true
this.checkAll = true
this.isIndeterminate = false
this.columnList = columnList
this.columns = columnList.map(o => o.prop)
},
handleCheckAllChange(val) {
this.columns = val ? this.columnList.map(o => o.prop) : [];
this.isIndeterminate = false;
},
handleCheckedChange(value) {
let checkedCount = value.length;
this.checkAll = checkedCount === this.columnList.length;
this.isIndeterminate = checkedCount > 0 && checkedCount < this.columnList.length;
},
downLoad() {
this.$emit('download', { dataType: this.type, selectKey: this.columns.join(',') })
}
}
}
</script>
<style lang="scss" scoped>
>>> .el-dialog__body {
padding: 20px !important;
}
</style>

@ -1,341 +0,0 @@
<template>
<div>
<el-row :gutter="15">
<el-form ref="elForm" :model="dataForm" :rules="dataRule" size="medium" label-width="100px" label-position="left" :disabled="setting.readonly" >
<template v-if="!loading && formOperates">
<el-col :span="24" v-if="judgeShow('mId')" >
<el-form-item label="主表ID"
prop="mId" >
<el-select :disabled="judgeWrite('mId')" v-model="dataForm.mId"
placeholder="请选择" clearable :style='{"width":"100%"}'>
<el-option v-for="(item, index) in mIdOptions" :key="index" :label="item.M_Name" :value="item.id" :disabled="item.disabled" ></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="24" v-if="judgeShow('mName')" >
<el-form-item label="设备名"
prop="mName" >
<el-input :disabled="judgeWrite('mName')" v-model="dataForm.mName"
placeholder="请输入" clearable :style='{"width":"100%"}'>
</el-input>
</el-form-item>
</el-col>
<el-col :span="24" v-if="judgeShow('serialnumber')" >
<el-form-item label="设备序列号"
prop="serialnumber" >
<el-input :disabled="judgeWrite('serialnumber')" v-model="dataForm.serialnumber"
placeholder="请输入" clearable :style='{"width":"100%"}'>
</el-input>
</el-form-item>
</el-col>
<el-col :span="24" v-if="judgeShow('flvaddress')" >
<el-form-item label="标清flv直播地址"
prop="flvaddress" >
<el-input :disabled="judgeWrite('flvaddress')" v-model="dataForm.flvaddress"
placeholder="请输入" clearable :style='{"width":"100%"}'>
</el-input>
</el-form-item>
</el-col>
<el-col :span="24" v-if="judgeShow('flvhdaddress')" >
<el-form-item label="高清flv直播地址"
prop="flvhdaddress" >
<el-input :disabled="judgeWrite('flvhdaddress')" v-model="dataForm.flvhdaddress"
placeholder="请输入" clearable :style='{"width":"100%"}'>
</el-input>
</el-form-item>
</el-col>
<el-col :span="24" v-if="judgeShow('mStatus')" >
<el-form-item label="设备状态:不在线、在线"
prop="mStatus" >
<el-switch :disabled="judgeWrite('mStatus')" v-model="dataForm.mStatus"
:active-value="1" :inactive-value="0" >
</el-switch>
</el-form-item>
</el-col>
</template>
</el-form>
</el-row>
<UserBox v-if="userBoxVisible" ref="userBox" @submit="submit" />
</div>
</template>
<script>
import request from '@/utils/request'
import { getDataInterfaceRes } from '@/api/systemData/dataInterface'
import { getDictionaryDataSelector } from '@/api/systemData/dictionary'
export default {
components: {},
props: [],
data() {
return {
visible: false,
loading: false,
setting:{},
eventType: '',
userBoxVisible:false,
dataForm: {
id:'',
flowId: '',
status: 1,
freeapproveruserid: '',
mId : "",
mName : '',
serialnumber : '',
flvaddress : '',
flvhdaddress : '',
mStatus : 0,
},
tableRequiredData: {},
dataRule:
{
mName: [
{
required: true,
message: '请输入',
trigger: 'blur'
},
],
serialnumber: [
{
required: true,
message: '请输入',
trigger: 'blur'
},
],
flvaddress: [
{
required: true,
message: '请输入',
trigger: 'blur'
},
],
flvhdaddress: [
{
required: true,
message: '请输入',
trigger: 'blur'
},
],
},
mIdOptions:[],
}
},
computed: {
formOperates() {
return this.setting.formOperates
}
},
watch: {},
created() {
this.getmIdOptions();
},
mounted() {},
methods: {
judgeShow(id) {
if (!this.setting.formOperates || !this.setting.formOperates.length) return true
let arr = this.setting.formOperates.filter(o => o.id === id) || []
if (!arr.length) return true
let item = arr[0]
return item.read
},
judgeWrite(id) {
if (!this.setting.formOperates || !this.setting.formOperates.length) return false
let arr = this.setting.formOperates.filter(o => o.id === id) || []
if (!arr.length) return true
let item = arr[0]
return !item.write
},
getmIdOptions() {
getDataInterfaceRes('370933183241262469').then(res => {
let data = res.data.data
this.mIdOptions = data
})
},
goBack() {
this.$emit('refresh')
},
init(data) {
this.dataForm.id = data.id || "";
this.setting = data;
this.visible = true;
this.updateDataRule()
this.$nextTick(() => {
this.$refs['elForm'].resetFields();
if(this.dataForm.id){
this.loading = true
request({
url: '/api/example/Monitoring_item/'+this.dataForm.id,
method: 'get'
}).then(res => {
this.dataInfo(res.data)
this.loading = false
})
}
this.$emit('setPageLoad')
})
this.$store.commit('generator/UPDATE_RELATION_DATA', {})
},
updateDataRule() {
let newRules = {}
for (let i = 0; i < this.setting.formOperates.length; i++) {
const item = this.setting.formOperates[i]
if (!item.id.includes('-')) {
const newRulesItem = {
required: item.required,
message: item.name + '不能为空',
trigger: item.trigger || 'blur'
}
if (!this.dataRule.hasOwnProperty(item.id)) {
if (item.required) this.$set(newRules, item.id, [newRulesItem])
} else {
let withoutRequiredItem = true
for (let i = 0; i < this.dataRule[item.id].length; i++) {
if (this.dataRule[item.id][i].hasOwnProperty('required')) {
this.dataRule[item.id][i].required = item.required
withoutRequiredItem = false
}
}
if (withoutRequiredItem && item.required) this.dataRule[item.id].push(newRulesItem)
}
} else {
let key = item.id.split('-')[0]
let newId = item.id.split('-')[1]
let newItem = {
...item,
id: newId
}
if (!this.tableRequiredData.hasOwnProperty(key)) {
this.$set(this.tableRequiredData, key, [newItem])
} else {
this.tableRequiredData[key].push(newItem)
}
}
}
this.dataRule = { ...this.dataRule, ...newRules }
},
exist() {
let isOk = true
for (let key in this.tableRequiredData) {
if (this.dataForm[key] && Array.isArray(this.dataForm[key])) {
for (let i = 0; i < this.dataForm[key].length; i++) {
let item = this.dataForm[key][i]
inner: for (let id in item) {
let arr = this.tableRequiredData[key].filter(o => o.id === id) || []
if (!arr.length) continue inner
if (arr[0].required) {
let msg = `${arr[0].name}不能为空`
let boo = true
if (arr[0].dataType === 'array') {
boo = !this.jnpf.isEmptyArray(item[id])
} else {
boo = !this.jnpf.isEmpty(item[id])
}
if (!boo) {
this.$message({
message: msg,
type: 'error',
duration: 1000
})
isOk = false
break
}
}
}
}
}
}
return isOk
},
judgeRequired(id) {
if (!this.formOperates || !this.formOperates.length) return false
let arr = this.formOperates.filter(o => o.id === id) || []
if (!arr.length) return false
let item = arr[0]
return item.required
},
//
dataFormSubmit(eventType) {
this.$refs['elForm'].validate((valid) => {
if (valid) {
if (this.exist && !this.exist()) return
if (eventType === 'audit' || eventType === 'reject') {
this.$emit('eventReceiver', this.dataForm, eventType)
return
}
this.dataForm.status = eventType === 'submit' ? 0 : 1
this.dataForm.flowId=this.setting.flowId
this.eventType = eventType
if (this.eventType === 'submit') {
this.$confirm('您确定要提交当前流程吗, 是否继续?', '提示', {
type: 'warning'
}).then(() => {
this.request()
}).catch(() => { });
} else {
this.request()
}
}
})
},
request() {
var _data =this.dataList()
if (!this.dataForm.id) {
request({
url: '/api/example/Monitoring_item',
method: 'post',
data: _data
}).then((res) => {
this.$message({
message: res.msg,
type: 'success',
duration: 1000,
onClose: () => {
this.visible = false
this.$emit('close', true)
}
})
})
}else{
request({
url: '/api/example/Monitoring_item/'+this.dataForm.id,
method: 'PUT',
data: _data
}).then((res) => {
this.$message({
message: res.msg,
type: 'success',
duration: 1000,
onClose: () => {
this.visible = false
this.$emit('close', true)
}
})
})
}
},
dataList(){
var _data = JSON.parse(JSON.stringify(this.dataForm));
_data.mStatus = parseInt(_data.mStatus)
return _data;
},
dataInfo(dataAll){
let _dataAll =dataAll
_dataAll.mStatus = parseInt( _dataAll.mStatus)
this.dataForm = _dataAll
},
},
}
</script>

@ -1,307 +0,0 @@
<template>
<div class="JNPF-common-layout">
<div class="JNPF-common-layout-left">
<div class="JNPF-common-title">
<h2>左侧标题</h2>
</div>
<el-tree :data="treeData" :props="treeProps" default-expand-all highlight-current
ref="treeBox" :expand-on-click-node="false" @node-click="handleNodeClick"
class="JNPF-common-el-tree" node-key="id">
<span class="custom-tree-node" slot-scope="{ node, data }">
<i :class="data.icon"></i>
<span class="text">{{node.label}}</span>
</span>
</el-tree>
</div>
<div class="JNPF-common-layout-center">
<el-row class="JNPF-common-search-box" :gutter="16">
<el-form @submit.native.prevent>
<el-col :span="6">
<el-form-item label="设备名">
<el-input v-model="query.mName" placeholder="请输入" clearable> </el-input>
</el-form-item>
</el-col>
<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-form-item>
</el-col>
</el-form>
</el-row>
<div class="JNPF-common-layout-main JNPF-flex-main">
<div class="JNPF-common-head">
<div>
<el-button type="primary" icon="el-icon-plus" v-has="'btn_add'" @click="addOrUpdateHandle()">
</el-button>
<el-button type="text" icon="el-icon-download" @click="exportData()" v-has="'btn_download'" >导出
</el-button>
<el-button type="text" icon="el-icon-delete" @click="handleBatchRemoveDel()" v-has="'btn_batchRemove'" >批量删除
</el-button>
</div>
<div class="JNPF-common-head-right">
<el-tooltip effect="dark" content="刷新" placement="top">
<el-link icon="icon-ym icon-ym-Refresh JNPF-common-head-icon" :underline="false"
@click="reset()"/>
</el-tooltip>
<screenfull isContainer />
</div>
</div>
<JNPF-table v-loading="listLoading" :data="list" @sort-change='sortChange' has-c @selection-change="handleSelectionChange">
<el-table-column prop="mId" label="主表ID" width="0" align="left"
v-if="jnpf.hasP('mId')" />
<el-table-column prop="mName" label="设备名" width="0" align="left"
v-if="jnpf.hasP('mName')" />
<el-table-column prop="serialnumber" label="设备序列号" width="0" align="left"
v-if="jnpf.hasP('serialnumber')" />
<el-table-column prop="flvaddress" label="标清flv直播地址" width="0" align="left"
v-if="jnpf.hasP('flvaddress')" />
<el-table-column prop="flvhdaddress" label="高清flv直播地址" width="0" align="left"
v-if="jnpf.hasP('flvhdaddress')" />
<el-table-column prop="mStatus" label="设备状态:不在线、在线" width="0" align="left"
v-if="jnpf.hasP('mStatus')" />
<el-table-column prop="flowState" label="状态" width="100">
<template slot-scope="scope">
<el-tag v-if="scope.row.flowState==1"></el-tag>
<el-tag type="success" v-else-if="scope.row.flowState==2">审核通过</el-tag>
<el-tag type="danger" v-else-if="scope.row.flowState==3">审核驳回</el-tag>
<el-tag type="info" v-else-if="scope.row.flowState==4">流程撤回</el-tag>
<el-tag type="info" v-else-if="scope.row.flowState==5">审核终止</el-tag>
<el-tag type="warning" v-else></el-tag>
</template>
</el-table-column>
<el-table-column label="操作" fixed="right"
width="150" >
<template slot-scope="scope">
<el-button type="text" :disabled="[1,2,4,5].indexOf(scope.row.flowState)>-1"
@click="addOrUpdateHandle(scope.row.id)" v-has="'btn_edit'" >编辑
</el-button>
<el-button type="text" class="JNPF-table-delBtn" :disabled="!!scope.row.flowState" v-has="'btn_remove'" @click="handleDel(scope.row.id)">
</el-button>
<el-button size="mini" type="text" :disabled="!scope.row.flowState"
@click="addOrUpdateHandle(scope.row.id,scope.row.flowState)"
>详情</el-button>
</template>
</el-table-column>
</JNPF-table>
<pagination :total="total" :page.sync="listQuery.currentPage" :limit.sync="listQuery.pageSize" @pagination="initData"/>
</div>
</div>
<FlowBox v-if="flowVisible" ref="FlowBox" @close="colseFlow" />
<ExportBox v-if="exportBoxVisible" ref="ExportBox" @download="download"/>
</div>
</template>
<script>
import request from '@/utils/request'
import {getDictionaryDataSelector} from '@/api/systemData/dictionary'
import FlowBox from '@/views/workFlow/components/FlowBox'
import ExportBox from './ExportBox'
import {getDataInterfaceRes} from '@/api/systemData/dataInterface'
export default {
components: {FlowBox, ExportBox},
data() {
return {
query: {
mName:undefined,
},
treeProps: {
children: 'M_Name',
label: 'M_Name',
value: 'id'
},
list: [],
listLoading: true,
multipleSelection: [], total: 0,
listQuery: {
currentPage: 1,
pageSize: 20,
sort: "asc",
sidx: "mId",
},
flowVisible: false,
exportBoxVisible: false,
columnList: [
{prop: 'mId', label: '主表ID'},
{prop: 'mName', label: '设备名'},
{prop: 'serialnumber', label: '设备序列号'},
{prop: 'flvaddress', label: '标清flv直播地址'},
{prop: 'flvhdaddress', label: '高清flv直播地址'},
{prop: 'mStatus', label: '设备状态:不在线、在线'},
],
treeData: [],
treeActiveId: '',
mIdOptions:[],
mIdProps:{"label":"M_Name","value":"id"},
}
},
computed: {
menuId() {
return this.$route.meta.modelId || ''
}
},
created() {
this.getTreeView();
},
methods: {
sortChange({ column, prop, order }) {
this.listQuery.sort = order == 'ascending' ? 'asc' : 'desc'
this.listQuery.sidx = !order ? '' : prop
this.initData()
},
getTreeView() {
getDataInterfaceRes('370933183241262469').then(res => {
let data = res.data.data
this.treeData = data
this.initData()
})
},
handleNodeClick(data) {
this.treeActiveId = data.id
for (let key in this.query) {
this.query[key] = undefined
}
this.query.mId = data.id
this.listQuery = {
currentPage: 1,
pageSize: 20,
sort: "asc",
sidx: "mId",
}
this.initData()
},
initData() {
this.listLoading = true;
let _query = {
...this.listQuery,
...this.query,
menuId:this.menuId
};
request({
url: `/api/example/Monitoring_item/getList`,
method: 'post',
data: _query
}).then(res => {
var _list =[];
for(let i=0;i<res.data.list.length;i++){
let _data = res.data.list[i];
_list.push(_data)
}
this.list = _list
this.total = res.data.pagination.total
this.listLoading = false
})
},
handleDel(id) {
this.$confirm('此操作将永久删除该数据, 是否继续?', '提示', {
type: 'warning'
}).then(() => {
request({
url: `/api/example/Monitoring_item/${id}`,
method: 'DELETE'
}).then(res => {
this.$message({
type: 'success',
message: res.msg,
onClose: () => {
this.initData()
}
});
})
}).catch(() => {
});
},
handleSelectionChange(val) {
const res = val.map(item => item.id)
this.multipleSelection = res
},
handleBatchRemoveDel() {
if (!this.multipleSelection.length) {
this.$message({
type: 'error',
message: '请选择一条数据',
duration: 1500,
})
return
}
const ids = this.multipleSelection.join()
this.$confirm('您确定要删除这些数据吗, 是否继续?', '提示', {
type: 'warning'
}).then(() => {
request({
url: `/api/example/Monitoring_item/batchRemove/${ids}`,
method: 'DELETE'
}).then(res => {
this.$message({
type: 'success',
message: res.msg,
onClose: () => {
this.initData()
}
});
})
}).catch(() => { })
},
addOrUpdateHandle(id,flowState) {
let data = {
id: id || '',
enCode: '002',
flowId:'370926725908927749',
formType: 1,
opType: flowState ? 0 : '-1',
status: flowState
}
this.flowVisible = true
this.$nextTick(() => {
this.$refs.FlowBox.init(data)
})
},
exportData() {
this.exportBoxVisible = true
this.$nextTick(() => {
this.$refs.ExportBox.init(this.columnList)
})
},
download(data) {
let query = {...data, ...this.listQuery, ...this.query,menuId:this.menuId}
request({
url: `/api/example/Monitoring_item/Actions/Export`,
method: 'GET',
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,
pageSize: 20,
sort: "asc",
sidx: "mId",
}
this.initData()
},
colseFlow(isrRefresh) {
this.flowVisible = false
if (isrRefresh) this.reset()
},
reset() {
for (let key in this.query) {
this.query[key] = undefined
}
this.listQuery = {
currentPage: 1,
pageSize: 20,
sort: "asc",
sidx: "mId",
}
this.initData()
}
}
}
</script>

@ -1,356 +0,0 @@
package jnpf.camera.controller;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jnpf.base.ActionResult;
import jnpf.base.UserInfo;
import jnpf.base.entity.VisualdevEntity;
import jnpf.base.vo.DownloadVO;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.camera.entity.Monitoring_itemEntity;
import jnpf.camera.model.monitoring_item.*;
import jnpf.camera.service.Monitoring_itemService;
import jnpf.config.ConfigValueUtil;
import jnpf.engine.entity.FlowTaskEntity;
import jnpf.engine.enums.FlowStatusEnum;
import jnpf.exception.DataException;
import jnpf.exception.WorkFlowException;
import jnpf.util.*;
import jnpf.util.enums.FileTypeEnum;
import jnpf.util.file.UploadUtil;
import lombok.Cleanup;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.io.FileOutputStream;
import java.io.IOException;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
*
* monitoring_item
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Slf4j
@RestController
@Api(tags = "监控摄像头视频流的获取" , value = "监控摄像头视频流的获取")
@RequestMapping("/api/example/Monitoring_item")
public class Monitoring_itemController {
@Autowired
private GeneraterSwapUtil generaterSwapUtil;
@Autowired
private ConfigValueUtil configValueUtil;
@Autowired
private UserProvider userProvider;
@Autowired
private Monitoring_itemService monitoring_itemService;
/**
*
*
* @param monitoring_itemPagination
* @return
*/
@PostMapping("/getList")
public ActionResult list(@RequestBody Monitoring_itemPagination monitoring_itemPagination)throws IOException{
List<Monitoring_itemEntity> list= monitoring_itemService.getList(monitoring_itemPagination);
//处理id字段转名称若无需转或者为空可删除
for(Monitoring_itemEntity entity:list){
entity.setMId(generaterSwapUtil.getDynName("370933183241262469" ,"M_Name" ,"id","" ,entity.getMId()));
entity.setMStatus(generaterSwapUtil.switchSelectValue(entity.getMStatus() ,"开" ,"关"));
}
List<Monitoring_itemListVO> listVO=JsonUtil.getJsonToList(list,Monitoring_itemListVO.class);
for(Monitoring_itemListVO monitoring_itemVO:listVO){
}
for(Monitoring_itemListVO vo:listVO){
FlowTaskEntity flowTaskEntity = generaterSwapUtil.getInfoSubmit(vo.getId(), FlowTaskEntity::getStatus);
if (flowTaskEntity!=null){
vo.setFlowState(flowTaskEntity.getStatus());
}else{
vo.setFlowState(null);
}
}
PageListVO vo=new PageListVO();
vo.setList(listVO);
PaginationVO page=JsonUtil.getJsonToBean(monitoring_itemPagination,PaginationVO.class);
vo.setPagination(page);
return ActionResult.success(vo);
}
/**
*
*
* @param crData
* @return
*/
@PostMapping
@Transactional
public ActionResult create(@RequestBody @Valid Map<String,Object> crData) throws DataException {
Monitoring_itemCrForm monitoring_itemCrForm = JsonUtil.getJsonToBean(crData,Monitoring_itemCrForm.class);
String visualId ="370926725908927749";
VisualdevEntity visualdevEntity =generaterSwapUtil.getVisualEntity(visualId);
String mainId =RandomUtil.uuId();
UserInfo userInfo=userProvider.get();
Monitoring_itemEntity entity = JsonUtil.getJsonToBean(monitoring_itemCrForm, Monitoring_itemEntity.class);
entity.setId(mainId);
monitoring_itemService.save(entity);
if (FlowStatusEnum.submit.getMessage().equals(monitoring_itemCrForm.getStatus())){
try {
generaterSwapUtil.submitFlowTask(visualdevEntity,mainId,monitoring_itemCrForm,userInfo,monitoring_itemCrForm.getCandidateList());
} catch (WorkFlowException e) {
e.printStackTrace();
}
return ActionResult.success("提交成功,请耐心等待");
}
return ActionResult.success("保存成功");
}
/**
*
*
* @return
*/
@ApiOperation("模板下载")
@GetMapping("/templateDownload")
public ActionResult<DownloadVO> TemplateDownload(){
UserInfo userInfo=userProvider.get();
DownloadVO vo=DownloadVO.builder().build();
try{
vo.setName("职员信息.xlsx");
vo.setUrl(UploaderUtil.uploaderFile("/api/Common/DownloadModel?encryption=" ,userInfo.getId()+"#"+"职员信息.xlsx"+"#"+"Temporary"));
}catch(Exception e){
log.error("信息导出Excel错误:{}" ,e.getMessage());
}
return ActionResult.success(vo);
}
/**
* Excel
*
* @return
*/
@ApiOperation("导出Excel")
@GetMapping("/Actions/Export")
public ActionResult Export(Monitoring_itemPaginationExportModel monitoring_itemPaginationExportModel) throws IOException {
if (StringUtil.isEmpty(monitoring_itemPaginationExportModel.getSelectKey())){
return ActionResult.fail("请选择导出字段");
}
Monitoring_itemPagination monitoring_itemPagination=JsonUtil.getJsonToBean(monitoring_itemPaginationExportModel, Monitoring_itemPagination.class);
List<Monitoring_itemEntity> list= monitoring_itemService.getTypeList(monitoring_itemPagination,monitoring_itemPaginationExportModel.getDataType());
//处理id字段转名称若无需转或者为空可删除
for(Monitoring_itemEntity entity:list){
entity.setMId(generaterSwapUtil.getDynName("370933183241262469" ,"M_Name" ,"id","" ,entity.getMId()));
entity.setMStatus(generaterSwapUtil.switchSelectValue(entity.getMStatus() ,"开" ,"关"));
}
List<Monitoring_itemListVO> listVO=JsonUtil.getJsonToList(list,Monitoring_itemListVO.class);
for(Monitoring_itemListVO monitoring_itemVO:listVO){
}
//转换为map输出
List<Map<String, Object>>mapList=JsonUtil.getJsonToListMap(JsonUtil.getObjectToStringDateFormat(listVO,"yyyy-MM-dd HH:mm:ss"));
String[]keys=!StringUtil.isEmpty(monitoring_itemPaginationExportModel.getSelectKey())?monitoring_itemPaginationExportModel.getSelectKey().split(","):new String[0];
UserInfo userInfo=userProvider.get();
DownloadVO vo=this.creatModelExcel(configValueUtil.getTemporaryFilePath(),mapList,keys,userInfo);
return ActionResult.success(vo);
}
//导出表格
public DownloadVO creatModelExcel(String path,List<Map<String, Object>>list,String[]keys,UserInfo userInfo){
DownloadVO vo=DownloadVO.builder().build();
List<ExcelExportEntity> entitys=new ArrayList<>();
if(keys.length>0){
for(String key:keys){
switch(key){
case "mId" :
entitys.add(new ExcelExportEntity("主表ID" ,"mId"));
break;
case "mName" :
entitys.add(new ExcelExportEntity("设备名" ,"mName"));
break;
case "serialnumber" :
entitys.add(new ExcelExportEntity("设备序列号" ,"serialnumber"));
break;
case "flvaddress" :
entitys.add(new ExcelExportEntity("标清flv直播地址" ,"flvaddress"));
break;
case "flvhdaddress" :
entitys.add(new ExcelExportEntity("高清flv直播地址" ,"flvhdaddress"));
break;
case "mStatus" :
entitys.add(new ExcelExportEntity("设备状态:不在线、在线" ,"mStatus"));
break;
default:
break;
}
}
}
ExportParams exportParams = new ExportParams(null, "表单信息");
exportParams.setType(ExcelType.XSSF);
try{
@Cleanup Workbook workbook = new HSSFWorkbook();
if (entitys.size()>0){
workbook = ExcelExportUtil.exportExcel(exportParams, entitys, list);
}
String name = "表单信息" + DateUtil.dateNow("yyyyMMdd") + "_" + RandomUtil.uuId() + ".xlsx";
String fileName = configValueUtil.getTemporaryFilePath() + name;
@Cleanup FileOutputStream output = new FileOutputStream(XSSEscape.escapePath(fileName));
workbook.write(output);
//上传文件
UploadUtil.uploadFile(configValueUtil.getFileType(), fileName, FileTypeEnum.TEMPORARY, name);
vo.setName(name);
vo.setUrl(UploaderUtil.uploaderFile(userInfo.getId() + "#" + name + "#" + "Temporary"));
} catch (Exception e) {
log.error("信息导出Excel错误:{}", e.getMessage());
e.printStackTrace();
}
return vo;
}
/**
*
*
* @param ids
* @return
*/
@DeleteMapping("/batchRemove/{ids}")
@Transactional
public ActionResult batchRemove(@PathVariable("ids") String ids){
String[] idList = ids.split(",");
List<String> allIdList = Arrays.asList(idList);
List<String> columnIdList = new ArrayList<>(20);
int i =0;
for (String allId : allIdList){
FlowTaskEntity taskEntity = generaterSwapUtil.getInfoSubmit(allId, FlowTaskEntity::getId, FlowTaskEntity::getStatus);
if (taskEntity==null){
columnIdList.add(allId);
}else if (taskEntity.getStatus().equals(0)){
try {
generaterSwapUtil.deleteFlowTask(taskEntity);
columnIdList.add(allId);
i++;
} catch (WorkFlowException e) {
e.printStackTrace();
}
}
}
monitoring_itemService.removeByIds(columnIdList);
if (i == 0 && columnIdList.size()==0){
return ActionResult.fail("流程已发起,无法删除");
}
return ActionResult.success("删除成功");
}
/**
*
*
* @param id
* @return
*/
@GetMapping("/{id}")
public ActionResult<Monitoring_itemInfoVO> info(@PathVariable("id") String id){
Monitoring_itemEntity entity= monitoring_itemService.getInfo(id);
Monitoring_itemInfoVO vo=JsonUtil.getJsonToBean(entity, Monitoring_itemInfoVO.class);
//子表
//副表
return ActionResult.success(vo);
}
/**
*
*
* @param id
* @return
*/
@PutMapping("/{id}")
@Transactional
public ActionResult update(@PathVariable("id") String id,@RequestBody @Valid Map<String,Object> upData) throws DataException {
Monitoring_itemUpForm monitoring_itemUpForm = JsonUtil.getJsonToBean(upData,Monitoring_itemUpForm.class);
String visualId ="370926725908927749";
VisualdevEntity visualdevEntity =generaterSwapUtil.getVisualEntity(visualId);
UserInfo userInfo=userProvider.get();
Monitoring_itemEntity entity= monitoring_itemService.getInfo(id);
if(entity!=null){
Monitoring_itemEntity subentity=JsonUtil.getJsonToBean(monitoring_itemUpForm, Monitoring_itemEntity.class);
monitoring_itemService.update(id, subentity);
if (FlowStatusEnum.submit.getMessage().equals(monitoring_itemUpForm.getStatus())){
try {
generaterSwapUtil.submitFlowTask(visualdevEntity,id,subentity,userInfo,monitoring_itemUpForm.getCandidateList());
} catch (WorkFlowException e) {
e.printStackTrace();
}
return ActionResult.success("提交成功,请耐心等待");
}
return ActionResult.success("更新成功");
}else{
return ActionResult.fail("更新失败,数据不存在");
}
}
/**
*
*
* @param id
* @return
*/
@DeleteMapping("/{id}")
@Transactional
public ActionResult delete(@PathVariable("id") String id){
Monitoring_itemEntity entity= monitoring_itemService.getInfo(id);
if(entity!=null){
FlowTaskEntity taskEntity = generaterSwapUtil.getInfoSubmit(id, FlowTaskEntity::getId, FlowTaskEntity::getStatus);
if (taskEntity != null) {
try {
generaterSwapUtil.deleteFlowTask(taskEntity);
} catch (WorkFlowException e) {
e.printStackTrace();
}
}
monitoring_itemService.delete(entity);
}
return ActionResult.success("删除成功");
}
}

@ -1,82 +0,0 @@
package jnpf.camera.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import lombok.Data;
import java.util.Date;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
@TableName("monitoring_item")
public class Monitoring_itemEntity {
@TableId(value = "F_ID",type = IdType.AUTO)
private String id;
@TableField("F_CREATORUSERID")
private Integer creatoruserid;
@TableField("F_CREATORUSERNAME")
private String creatorusername;
@TableField("F_CREATORTIME")
private Date creatortime;
@TableField("F_LASTMODIFYUSERID")
private Integer lastmodifyuserid;
@TableField("F_LASTMODIFYUSERNAME")
private String lastmodifyusername;
@TableField("F_LASTMODIFYTIME")
private Date lastmodifytime;
@TableField("F_DELETEUSERID")
private Integer deleteuserid;
@TableField("F_DELETEUSERNAME")
private String deleteusername;
@TableField("F_DELETETIME")
private Date deletetime;
@TableField("F_DELETEMARK")
private String deletemark;
@TableField("Z_ID")
private Integer zId;
@TableField("D_ID")
private Integer dId;
@TableField("M_ID")
private String mId;
@TableField("M_NAME")
private String mName;
@TableField("SERIALNUMBER")
private String serialnumber;
@TableField("M_STATUS")
private String mStatus;
@TableField("FLVADDRESS")
private String flvaddress;
@TableField("FLVHDADDRESS")
private String flvhdaddress;
@TableField("ChannelNumber")
private String channelNumber;
}

@ -1,21 +0,0 @@
package jnpf.camera.imou.utils;
import cn.hutool.json.JSONObject;
public class Testaa {
public static void main(String[] args) {
// {"result":{"msg":"操作成功。","code":"0","data":{"expireTime":252417,"accessToken":"At_0000062668d71c5b455386dcb052b4af"}},"id":"98a7a257-c4e4-4db3-a2d3-d97a3836b87c"}
String a="{\"result\":{\"msg\":\"操作成功。\",\"code\":\"0\",\"data\":{\"expireTime\":252417,\"accessToken\":\"At_0000062668d71c5b455386dcb052b4af\"}},\"id\":\"98a7a257-c4e4-4db3-a2d3-d97a3836b87c\"}";
String resText=a;
if (resText.length()>0){
JSONObject a1=new JSONObject(resText);
JSONObject a2=new JSONObject(a1.get("result"));
JSONObject a3=new JSONObject(a2.get("data"));
// JSONObject a4=new JSONObject(a3.get("accessToken"));
System.out.println(a1);
System.out.println(a2);
System.out.println(a3.get("accessToken"));
// System.out.println(a4);
}
}
}

@ -1,20 +0,0 @@
package jnpf.camera.mapper;
//import jnpf.entity.Monitoring_itemEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import jnpf.camera.entity.Monitoring_itemEntity;
/**
*
* monitoring_item
* V3.2.0
* https://www.jnpfsoft.com
* Allen Pan
* 2022-12-09
*/
public interface Monitoring_itemMapper extends BaseMapper<Monitoring_itemEntity> {
}

@ -1,59 +0,0 @@
package jnpf.camera.model.monitoring_item;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemCrForm {
/** 流程状态 **/
@JsonProperty("status")
private String status;
private Map<String, List<String>> candidateList;
/** 主表ID **/
@JsonProperty("mId")
private String mId;
/** 设备名 **/
@JsonProperty("mName")
private String mName;
/** 设备序列号 **/
@JsonProperty("serialnumber")
private String serialnumber;
/** 标清flv直播地址 **/
@JsonProperty("flvaddress")
private String flvaddress;
/** 高清flv直播地址 **/
@JsonProperty("flvhdaddress")
private String flvhdaddress;
/** 设备状态:不在线、在线 **/
@JsonProperty("mStatus")
private String mStatus;
}

@ -1,45 +0,0 @@
package jnpf.camera.model.monitoring_item;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemInfoVO{
/** 主键 **/
@JsonProperty("id")
private String id;
/** 主表ID **/
@JsonProperty("mId")
private String mId;
/** 设备名 **/
@JsonProperty("mName")
private String mName;
/** 设备序列号 **/
@JsonProperty("serialnumber")
private String serialnumber;
/** 标清flv直播地址 **/
@JsonProperty("flvaddress")
private String flvaddress;
/** 高清flv直播地址 **/
@JsonProperty("flvhdaddress")
private String flvhdaddress;
/** 设备状态:不在线、在线 **/
@JsonProperty("mStatus")
private String mStatus;
}

@ -1,22 +0,0 @@
package jnpf.camera.model.monitoring_item;
import jnpf.base.Pagination;
import lombok.Data;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemListQuery extends Pagination {
/** 设备名 */
private String mName;
/**
* id
*/
private String menuId;
}

@ -1,59 +0,0 @@
package jnpf.camera.model.monitoring_item;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemListVO{
/** 主键 */
private String id;
/** 主表ID **/
@JsonProperty("mId")
private String mId;
/** 设备名 **/
@JsonProperty("mName")
private String mName;
/** 设备序列号 **/
@JsonProperty("serialnumber")
private String serialnumber;
/** 标清flv直播地址 **/
@JsonProperty("flvaddress")
private String flvaddress;
/** 高清flv直播地址 **/
@JsonProperty("flvhdaddress")
private String flvhdaddress;
/** 设备状态:不在线、在线 **/
@JsonProperty("mStatus")
private String mStatus;
@JsonProperty("flowState")
private Integer flowState;
}

@ -1,24 +0,0 @@
package jnpf.camera.model.monitoring_item;
import jnpf.base.Pagination;
import lombok.Data;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemPagination extends Pagination {
/** 设备名 */
private String mName;
/**
* id
*/
private String menuId;
}

@ -1,25 +0,0 @@
package jnpf.camera.model.monitoring_item;
import jnpf.base.Pagination;
import lombok.Data;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemPaginationExportModel extends Pagination {
private String selectKey;
private String json;
private String dataType;
/** 设备名 */
private String mName;
}

@ -1,55 +0,0 @@
package jnpf.camera.model.monitoring_item;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.util.List;
import java.util.Map;
/**
*
*
* @ V3.2.0
* @ https://www.jnpfsoft.com
* @ Allen Pan
* @ 2022-12-09
*/
@Data
public class Monitoring_itemUpForm{
/** 主键 */
private String id;
/** 流程状态 **/
@JsonProperty("status")
private String status;
private Map<String, List<String>> candidateList;
/** 主表ID **/
@JsonProperty("mId")
private String mId;
/** 设备名 **/
@JsonProperty("mName")
private String mName;
/** 设备序列号 **/
@JsonProperty("serialnumber")
private String serialnumber;
/** 标清flv直播地址 **/
@JsonProperty("flvaddress")
private String flvaddress;
/** 高清flv直播地址 **/
@JsonProperty("flvhdaddress")
private String flvhdaddress;
/** 设备状态:不在线、在线 **/
@JsonProperty("mStatus")
private String mStatus;
}

@ -1,35 +0,0 @@
package jnpf.camera.service;
import com.baomidou.mybatisplus.extension.service.IService;
import jnpf.camera.entity.Monitoring_itemEntity;
import jnpf.camera.model.monitoring_item.Monitoring_itemPagination;
import java.util.List;
/**
*
* monitoring_item
* V3.2.0
* https://www.jnpfsoft.com
* Allen Pan
* 2022-12-09
*/
public interface Monitoring_itemService extends IService<Monitoring_itemEntity> {
List<Monitoring_itemEntity> getList(Monitoring_itemPagination monitoring_itemPagination);
List<Monitoring_itemEntity> getTypeList(Monitoring_itemPagination monitoring_itemPagination,String dataType);
Monitoring_itemEntity getInfo(String id);
void delete(Monitoring_itemEntity entity);
void create(Monitoring_itemEntity entity);
boolean update( String id, Monitoring_itemEntity entity);
// 子表方法
//列表子表数据方法
}

@ -1,208 +0,0 @@
package jnpf.camera.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.camera.entity.Monitoring_itemEntity;
import jnpf.camera.mapper.Monitoring_itemMapper;
import jnpf.camera.model.monitoring_item.Monitoring_itemPagination;
import jnpf.camera.service.Monitoring_itemService;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.permission.service.AuthorizeService;
import jnpf.util.ServletUtil;
import jnpf.util.StringUtil;
import jnpf.util.UserProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
/**
*
* monitoring_item
* V3.2.0
* https://www.jnpfsoft.com
* Allen Pan
* 2022-12-09
*/
@Service
public class Monitoring_itemServiceImpl extends ServiceImpl<Monitoring_itemMapper, Monitoring_itemEntity> implements Monitoring_itemService {
@Autowired
private UserProvider userProvider;
@Autowired
private AuthorizeService authorizeService;
@Override
public List<Monitoring_itemEntity> getList(Monitoring_itemPagination monitoring_itemPagination){
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
int total=0;
int monitoring_itemNum =0;
QueryWrapper<Monitoring_itemEntity> monitoring_itemQueryWrapper=new QueryWrapper<>();
boolean pcPermission = true;
boolean appPermission = true;
boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc");
if(isPc && pcPermission){
if (!userProvider.get().getIsAdministrator()){
Object monitoring_itemObj=authorizeService.getCondition(new AuthorizeConditionModel(monitoring_itemQueryWrapper,monitoring_itemPagination.getMenuId(),"monitoring_item"));
if (ObjectUtil.isEmpty(monitoring_itemObj)){
return new ArrayList<>();
} else {
monitoring_itemQueryWrapper = (QueryWrapper<Monitoring_itemEntity>)monitoring_itemObj;
monitoring_itemNum++;
}
}
}
if(!isPc && appPermission){
if (!userProvider.get().getIsAdministrator()){
Object monitoring_itemObj=authorizeService.getCondition(new AuthorizeConditionModel(monitoring_itemQueryWrapper,monitoring_itemPagination.getMenuId(),"monitoring_item"));
if (ObjectUtil.isEmpty(monitoring_itemObj)){
return new ArrayList<>();
} else {
monitoring_itemQueryWrapper = (QueryWrapper<Monitoring_itemEntity>)monitoring_itemObj;
monitoring_itemNum++;
}
}
}
if(StringUtil.isNotEmpty(monitoring_itemPagination.getMName())){
monitoring_itemNum++;
monitoring_itemQueryWrapper.lambda().like(Monitoring_itemEntity::getMName,monitoring_itemPagination.getMName());
}
if(AllIdList.size()>0){
monitoring_itemQueryWrapper.lambda().in(Monitoring_itemEntity::getId, AllIdList);
}
//排序
if(StringUtil.isEmpty(monitoring_itemPagination.getSidx())){
monitoring_itemQueryWrapper.lambda().orderByAsc(Monitoring_itemEntity::getMId);
}else{
try {
String sidx = monitoring_itemPagination.getSidx();
Monitoring_itemEntity monitoring_itemEntity = new Monitoring_itemEntity();
Field declaredField = monitoring_itemEntity.getClass().getDeclaredField(sidx);
declaredField.setAccessible(true);
String value = declaredField.getAnnotation(TableField.class).value();
monitoring_itemQueryWrapper="asc".equals(monitoring_itemPagination.getSort().toLowerCase())?monitoring_itemQueryWrapper.orderByAsc(value):monitoring_itemQueryWrapper.orderByDesc(value);
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}
if((total>0 && AllIdList.size()>0) || total==0){
Page<Monitoring_itemEntity> page=new Page<>(monitoring_itemPagination.getCurrentPage(), monitoring_itemPagination.getPageSize());
IPage<Monitoring_itemEntity> userIPage=this.page(page, monitoring_itemQueryWrapper);
return monitoring_itemPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<Monitoring_itemEntity> list = new ArrayList();
return monitoring_itemPagination.setData(list, list.size());
}
}
@Override
public List<Monitoring_itemEntity> getTypeList(Monitoring_itemPagination monitoring_itemPagination,String dataType){
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
int total=0;
int monitoring_itemNum =0;
QueryWrapper<Monitoring_itemEntity> monitoring_itemQueryWrapper=new QueryWrapper<>();
boolean pcPermission = true;
boolean appPermission = true;
boolean isPc = ServletUtil.getHeader("jnpf-origin").equals("pc");
if(isPc && pcPermission){
if (!userProvider.get().getIsAdministrator()){
Object monitoring_itemObj=authorizeService.getCondition(new AuthorizeConditionModel(monitoring_itemQueryWrapper,monitoring_itemPagination.getMenuId(),"monitoring_item"));
if (ObjectUtil.isEmpty(monitoring_itemObj)){
return new ArrayList<>();
} else {
monitoring_itemQueryWrapper = (QueryWrapper<Monitoring_itemEntity>)monitoring_itemObj;
monitoring_itemNum++;
}
}
}
if(!isPc && appPermission){
if (!userProvider.get().getIsAdministrator()){
Object monitoring_itemObj=authorizeService.getCondition(new AuthorizeConditionModel(monitoring_itemQueryWrapper,monitoring_itemPagination.getMenuId(),"monitoring_item"));
if (ObjectUtil.isEmpty(monitoring_itemObj)){
return new ArrayList<>();
} else {
monitoring_itemQueryWrapper = (QueryWrapper<Monitoring_itemEntity>)monitoring_itemObj;
monitoring_itemNum++;
}
}
}
if(StringUtil.isNotEmpty(monitoring_itemPagination.getMName())){
monitoring_itemNum++;
monitoring_itemQueryWrapper.lambda().like(Monitoring_itemEntity::getMName,monitoring_itemPagination.getMName());
}
if(AllIdList.size()>0){
monitoring_itemQueryWrapper.lambda().in(Monitoring_itemEntity::getId, AllIdList);
}
//排序
if(StringUtil.isEmpty(monitoring_itemPagination.getSidx())){
monitoring_itemQueryWrapper.lambda().orderByAsc(Monitoring_itemEntity::getMId);
}else{
try {
String sidx = monitoring_itemPagination.getSidx();
Monitoring_itemEntity monitoring_itemEntity = new Monitoring_itemEntity();
Field declaredField = monitoring_itemEntity.getClass().getDeclaredField(sidx);
declaredField.setAccessible(true);
String value = declaredField.getAnnotation(TableField.class).value();
monitoring_itemQueryWrapper="asc".equals(monitoring_itemPagination.getSort().toLowerCase())?monitoring_itemQueryWrapper.orderByAsc(value):monitoring_itemQueryWrapper.orderByDesc(value);
} catch (NoSuchFieldException e) {
e.printStackTrace();
}
}
if("0".equals(dataType)){
if((total>0 && AllIdList.size()>0) || total==0){
Page<Monitoring_itemEntity> page=new Page<>(monitoring_itemPagination.getCurrentPage(), monitoring_itemPagination.getPageSize());
IPage<Monitoring_itemEntity> userIPage=this.page(page, monitoring_itemQueryWrapper);
return monitoring_itemPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<Monitoring_itemEntity> list = new ArrayList();
return monitoring_itemPagination.setData(list, list.size());
}
}else{
return this.list(monitoring_itemQueryWrapper);
}
}
@Override
public Monitoring_itemEntity getInfo(String id){
QueryWrapper<Monitoring_itemEntity> queryWrapper=new QueryWrapper<>();
queryWrapper.lambda().eq(Monitoring_itemEntity::getId,id);
return this.getOne(queryWrapper);
}
@Override
public void create(Monitoring_itemEntity entity){
this.save(entity);
}
@Override
public boolean update(String id, Monitoring_itemEntity entity){
entity.setId(id);
return this.updateById(entity);
}
@Override
public void delete(Monitoring_itemEntity entity){
if(entity!=null){
this.removeById(entity.getId());
}
}
//子表方法
//列表子表数据方法
}

@ -1,50 +1,41 @@
package jnpf.customer.controller;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jnpf.base.ActionResult;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.base.UserInfo;
import jnpf.base.vo.DownloadVO;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.config.ConfigValueUtil;
import jnpf.exception.DataException;
import org.springframework.transaction.annotation.Transactional;
import jnpf.base.entity.ProvinceEntity;
import jnpf.customer.entity.CustomerJGEntity;
import jnpf.customer.entity.CustomerJGMobileEntity;
import jnpf.customer.model.customer.*;
import jnpf.customer.model.customer.CustomerPagination;
import jnpf.customer.entity.*;
import jnpf.customer.service.CustomerJGService;
import jnpf.exception.DataException;
import jnpf.util.*;
import jnpf.base.util.*;
import jnpf.base.vo.ListVO;
import jnpf.util.context.SpringContext;
import cn.hutool.core.util.ObjectUtil;
import lombok.extern.slf4j.Slf4j;
import jnpf.util.enums.FileTypeEnum;
import jnpf.util.file.UploadUtil;
import lombok.Cleanup;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import jnpf.customer.entity.CustomerJGEntity;
import jnpf.customer.service.CustomerJGService;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import jnpf.util.GeneraterSwapUtil;
import java.util.*;
import jnpf.util.file.UploadUtil;
import jnpf.util.enums.FileTypeEnum;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
*
@ -83,9 +74,9 @@ public class CustomerJGController {
*/
@PostMapping("/getList")
public ActionResult list(@RequestBody CustomerPagination customerPagination)throws IOException{
List<CustomerJGEntity> list= customerService.getList(customerPagination);
List<CustomerJGMobileEntity> list= customerService.getList(customerPagination);
//处理id字段转名称若无需转或者为空可删除
for(CustomerJGEntity entity:list){
for(CustomerJGMobileEntity entity:list){
entity.setStatus(generaterSwapUtil.switchSelectValue(entity.getStatus() ,"1" ,"2"));
}
List<CustomerListVO> listVO=JsonUtil.getJsonToList(list,CustomerListVO.class);

@ -1,8 +1,14 @@
package jnpf.customer.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import jnpf.customer.entity.CustomerJGEntity;
import jnpf.customer.entity.CustomerJGMobileEntity;
import org.apache.ibatis.annotations.Param;
/**
*
@ -13,5 +19,6 @@ import jnpf.customer.entity.CustomerJGEntity;
* 2023-01-04
*/
public interface CustomerJGMapper extends BaseMapper<CustomerJGEntity> {
IPage<CustomerJGMobileEntity> getMobileList(@Param("page") Page<CustomerJGMobileEntity> page, @Param("ew") Wrapper<CustomerJGEntity> ew);
}

@ -3,12 +3,8 @@
package jnpf.customer.model.customer;
import lombok.Data;
import java.sql.Time;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.math.BigDecimal;
import lombok.Data;
/**
*
*
@ -67,6 +63,20 @@ public class CustomerListVO{
/** 是否启用 **/
@JsonProperty("status")
private String status;
// 收获量
@JsonProperty("settlemenSum")
private Double settlemenSum;
// 净重
@JsonProperty("weightSum")
private Double weightSum;
// 扣重
@JsonProperty("buckleWeightSum")
private Double buckleWeightSum;
// 总重
@JsonProperty("grossWeightSum")
private Double grossWeightSum;
// 总额
@JsonProperty("salesPriceSum")
private Double salesPriceSum;
}

@ -1,7 +1,11 @@
package jnpf.customer.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import jnpf.customer.entity.CustomerJGEntity;
import jnpf.customer.entity.CustomerJGMobileEntity;
import jnpf.customer.model.customer.CustomerPagination;
import java.util.*;
@ -15,7 +19,7 @@ import java.util.*;
*/
public interface CustomerJGService extends IService<CustomerJGEntity> {
List<CustomerJGEntity> getList(CustomerPagination customerPagination);
List<CustomerJGMobileEntity> getList(CustomerPagination customerPagination);
List<CustomerJGEntity> getTypeList(CustomerPagination customerPagination, String dataType);
@ -28,7 +32,8 @@ public interface CustomerJGService extends IService<CustomerJGEntity> {
void create(CustomerJGEntity entity);
boolean update(String id, CustomerJGEntity entity);
public IPage<CustomerJGMobileEntity> page(Page<CustomerJGMobileEntity> page, Wrapper<CustomerJGEntity> queryWrapper);
// 子表方法
//列表子表数据方法

@ -1,36 +1,29 @@
package jnpf.customer.service.impl;
import jnpf.customer.entity.*;
import jnpf.customer.mapper.CustomerJGMapper;
import jnpf.customer.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.util.RandomUtil;
import java.math.BigDecimal;
import cn.hutool.core.util.ObjectUtil;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.customer.model.customer.CustomerPagination;
import jnpf.permission.service.AuthorizeService;
import java.lang.reflect.Field;
import com.baomidou.mybatisplus.annotation.TableField;
import java.util.stream.Collectors;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import java.text.SimpleDateFormat;
import jnpf.util.*;
import java.util.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.customer.entity.CustomerJGEntity;
import jnpf.customer.entity.CustomerJGMobileEntity;
import jnpf.customer.mapper.CustomerJGMapper;
import jnpf.customer.model.customer.CustomerPagination;
import jnpf.customer.service.CustomerJGService;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.permission.service.AuthorizeService;
import jnpf.util.ServletUtil;
import jnpf.util.StringUtil;
import jnpf.util.UserProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
/**
*
@ -50,12 +43,13 @@ public class CustomerJGServiceImpl extends ServiceImpl<CustomerJGMapper, Custome
@Autowired
private AuthorizeService authorizeService;
@Resource
private CustomerJGMapper customerJGMapper;
@Override
public List<CustomerJGEntity> getList(CustomerPagination customerPagination){
public List<CustomerJGMobileEntity> getList(CustomerPagination customerPagination){
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
int total=0;
@ -129,14 +123,26 @@ public class CustomerJGServiceImpl extends ServiceImpl<CustomerJGMapper, Custome
}
}
if((total>0 && AllIdList.size()>0) || total==0){
Page<CustomerJGEntity> page=new Page<>(customerPagination.getCurrentPage(), customerPagination.getPageSize());
IPage<CustomerJGEntity> userIPage=this.page(page, customerQueryWrapper);
Page<CustomerJGMobileEntity> page=new Page<>(customerPagination.getCurrentPage(), customerPagination.getPageSize());
IPage<CustomerJGMobileEntity> userIPage=this.page(page, customerQueryWrapper);
return customerPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<CustomerJGEntity> list = new ArrayList();
List<CustomerJGMobileEntity> list = new ArrayList();
return customerPagination.setData(list, list.size());
}
}
/**
* @TODO page
* @param page
* @param queryWrapper
* @return
*/
@Override
public IPage<CustomerJGMobileEntity> page( Page<CustomerJGMobileEntity> page, Wrapper<CustomerJGEntity> queryWrapper) {
return customerJGMapper.getMobileList(page, queryWrapper);
}
@Override
public List<CustomerJGEntity> getTypeList(CustomerPagination customerPagination,String dataType){
String userId=userProvider.get().getUserId();

@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import lombok.Data;
import java.math.BigDecimal;
import java.util.Date;
/**
@ -106,11 +107,11 @@ public class MaterialMobileEntity extends MaterialEntity {
// 采购次数
private Integer purchasesNumber;
// 采购量(吨)
private Double purchasesWeight;
private BigDecimal purchasesWeight;
// 销售次数
private Integer salesNumber;
// 销售量
private Double salesWeight;
private BigDecimal salesWeight;
// 转换方法
//创建转换方法

@ -2,10 +2,9 @@ package jnpf.material.mapper;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Constants;
import jnpf.material.entity.MaterialEntity;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import jnpf.material.entity.MaterialMobileEntity;
import org.apache.ibatis.annotations.Param;
@ -25,7 +24,6 @@ public interface MaterialMapper extends BaseMapper<MaterialEntity> {
* @param queryWrapper
* @return
*/
Object getMaterialMobileList111();
IPage<MaterialMobileEntity> getMaterialMobileList(@Param("page") IPage<MaterialMobileEntity> page,
@Param("ew") Wrapper<MaterialEntity> queryWrapper);

@ -18,7 +18,7 @@ import java.util.*;
*/
public interface MaterialService extends IService<MaterialEntity> {
IPage<MaterialMobileEntity> pagee(Page<MaterialMobileEntity> page, Wrapper<MaterialEntity> queryWrapper);
Object tesx();
List<MaterialMobileEntity> getList(MaterialPagination materialPagination);
List<MaterialMobileEntity> getTypeList(MaterialPagination materialPagination,String dataType);

@ -1,38 +1,29 @@
package jnpf.material.service.impl;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import jnpf.material.entity.*;
import jnpf.material.mapper.MaterialMapper;
import jnpf.material.service.*;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.util.RandomUtil;
import java.math.BigDecimal;
import cn.hutool.core.util.ObjectUtil;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.material.entity.MaterialEntity;
import jnpf.material.entity.MaterialMobileEntity;
import jnpf.material.mapper.MaterialMapper;
import jnpf.material.model.material.MaterialPagination;
import jnpf.material.service.MaterialService;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.permission.service.AuthorizeService;
import java.lang.reflect.Field;
import com.baomidou.mybatisplus.annotation.TableField;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import java.text.SimpleDateFormat;
import jnpf.util.*;
import jnpf.util.ServletUtil;
import jnpf.util.StringUtil;
import jnpf.util.UserProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.*;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
/**
*
@ -254,10 +245,7 @@ public class MaterialServiceImpl extends ServiceImpl<MaterialMapper, MaterialEnt
return materialMobileList;
}
@Override
public Object tesx() {
return materialMapper.getMaterialMobileList111();
}
//子表方法
//列表子表数据方法

@ -1,17 +1,15 @@
package jnpf.camera.imou.utils;
package jnpf.monitorItem.utils;
import cn.hutool.json.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import jnpf.camera.entity.Monitoring_itemEntity;
import jnpf.camera.service.Monitoring_itemService;
import jnpf.monitorItem.entity.Monitoring_itemEntity;
import jnpf.monitorItem.service.Monitoring_itemService;
import jnpf.util.Md5Util;
import lombok.extern.slf4j.Slf4j;
import okhttp3.*;
import org.junit.jupiter.api.Test;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.time.Instant;
@ -19,7 +17,7 @@ import java.util.Calendar;
import java.util.Date;
@Slf4j
@Component
//@Component
public class ImouConfig {
private String appSecret="189fec75174e487684a16c49dd1789";
@ -36,7 +34,7 @@ public class ImouConfig {
// id请求唯一标示ID每次请求调用时传入唯一非空字符串
private String id="98a7a257-c4e4-4db3-a2d3-d97a3836b87c";
@Resource
// @Resource
private Monitoring_itemService monitoring_itemService;
@ -76,12 +74,12 @@ public class ImouConfig {
Monitoring_itemEntity monitor = new Monitoring_itemEntity();
// 设置区域为日照金属
monitor.setMId("1");
monitor.setMonitoringId("1");
monitor.setMName("NVR-3FA0-"+i);
monitor.setSerialnumber(deviceId);
monitor.setMStatus("0");
monitor.setFlvaddress(flv);
monitor.setFlvhdaddress(flvHD);
monitor.setFlvAddress(flv);
monitor.setFlvHdAddress(flvHD);
monitor.setChannelNumber(channelId);
// boolean save = monitoring_itemService.save(monitor);
// 2 查询本地表中此通道是否存在
@ -91,15 +89,15 @@ public class ImouConfig {
if (one!=null){
// 3 存在根据返回的id进行更新
monitor.setMName(null);
monitor.setLastmodifyuserid(1);
monitor.setLastmodifyusername("wangchuang");
monitor.setLastmodifytime(new Date());
monitor.setLastModifyUserId("1");
monitor.setLastModifyUserName("admin");
monitor.setLastModifyTime(new Date());
monitoring_itemService.update(monitor,wrapper);
}else{
// 4 不存在进行保存
monitor.setCreatoruserid(1);
monitor.setCreatorusername("wangchuang");
monitor.setCreatortime(new Date());
monitor.setCreatorTime(new Date());
monitor.setCreatorUserId("1");
monitor.setCreatorUserName("admin");
monitoring_itemService.save(monitor);
}
}

@ -1,50 +1,41 @@
package jnpf.supplier.controller;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jnpf.base.ActionResult;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.base.UserInfo;
import jnpf.base.vo.DownloadVO;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.config.ConfigValueUtil;
import jnpf.exception.DataException;
import org.springframework.transaction.annotation.Transactional;
import jnpf.base.entity.ProvinceEntity;
import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.entity.SupplierMobileEntity;
import jnpf.supplier.model.supplier.*;
import jnpf.supplier.model.supplier.SupplierPagination;
import jnpf.entity.*;
import jnpf.supplier.service.SupplierService;
import jnpf.util.*;
import jnpf.base.util.*;
import jnpf.base.vo.ListVO;
import jnpf.util.context.SpringContext;
import cn.hutool.core.util.ObjectUtil;
import lombok.extern.slf4j.Slf4j;
import jnpf.util.enums.FileTypeEnum;
import jnpf.util.file.UploadUtil;
import lombok.Cleanup;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.service.SupplierService;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import jnpf.util.GeneraterSwapUtil;
import java.util.*;
import jnpf.util.file.UploadUtil;
import jnpf.util.enums.FileTypeEnum;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
*
@ -83,9 +74,9 @@ public class SupplierController {
*/
@PostMapping("/getList")
public ActionResult list(@RequestBody SupplierPagination supplierPagination)throws IOException{
List<SupplierEntity> list= supplierService.getList(supplierPagination);
List<SupplierMobileEntity> list= supplierService.getList(supplierPagination);
//处理id字段转名称若无需转或者为空可删除
for(SupplierEntity entity:list){
for(SupplierMobileEntity entity:list){
entity.setStatus(generaterSwapUtil.switchSelectValue(entity.getStatus() ,"1" ,"0"));
}
List<SupplierListVO> listVO=JsonUtil.getJsonToList(list,SupplierListVO.class);

@ -1,8 +1,13 @@
package jnpf.supplier.mapper;
import jnpf.supplier.entity.SupplierEntity;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.entity.SupplierMobileEntity;
import org.apache.ibatis.annotations.Param;
/**
*
@ -13,5 +18,6 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* 2023-01-04
*/
public interface SupplierMapper extends BaseMapper<SupplierEntity> {
IPage<SupplierMobileEntity> getSupplierList(@Param("page") Page<SupplierMobileEntity> page, @Param("ew")Wrapper<SupplierEntity> wrapper);
}

@ -3,12 +3,8 @@
package jnpf.supplier.model.supplier;
import lombok.Data;
import java.sql.Time;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.math.BigDecimal;
import lombok.Data;
/**
*
*
@ -78,5 +74,14 @@ public class SupplierListVO{
@JsonProperty("status")
private String status;
// 收获量
private Double settlemenSum;
// 净重
private Double weightSum;
// 扣重
private Double buckleWeightSum;
// 总重
private Double grossWeightSum;
// 总额
private Double salesPriceSum;
}

@ -1,9 +1,14 @@
package jnpf.supplier.service;
import jnpf.supplier.entity.SupplierEntity;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.entity.SupplierMobileEntity;
import jnpf.supplier.model.supplier.SupplierPagination;
import java.util.*;
import java.util.List;
/**
*
*
@ -14,7 +19,10 @@ import java.util.*;
*/
public interface SupplierService extends IService<SupplierEntity> {
List<SupplierEntity> getList(SupplierPagination supplierPagination);
List<SupplierMobileEntity> getList(SupplierPagination supplierPagination);
IPage<SupplierMobileEntity>page(Page<SupplierMobileEntity> page, Wrapper<SupplierEntity> queryWrapper) ;
List<SupplierEntity> getTypeList(SupplierPagination supplierPagination, String dataType);

@ -1,38 +1,29 @@
package jnpf.supplier.service.impl;
import jnpf.entity.*;
import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.mapper.SupplierMapper;
import jnpf.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.supplier.service.SupplierService;
import jnpf.util.RandomUtil;
import java.math.BigDecimal;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.permission.service.AuthorizeService;
import jnpf.supplier.entity.SupplierEntity;
import jnpf.supplier.entity.SupplierMobileEntity;
import jnpf.supplier.mapper.SupplierMapper;
import jnpf.supplier.model.supplier.SupplierPagination;
import jnpf.supplier.service.SupplierService;
import jnpf.util.ServletUtil;
import jnpf.util.StringUtil;
import jnpf.util.UserProvider;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import jnpf.permission.service.AuthorizeService;
import javax.annotation.Resource;
import java.lang.reflect.Field;
import com.baomidou.mybatisplus.annotation.TableField;
import java.util.stream.Collectors;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import java.text.SimpleDateFormat;
import jnpf.util.*;
import java.util.*;
import java.util.ArrayList;
import java.util.List;
/**
*
@ -52,12 +43,13 @@ public class SupplierServiceImpl extends ServiceImpl<SupplierMapper, SupplierEnt
@Autowired
private AuthorizeService authorizeService;
@Resource
private SupplierMapper supplierMapper;
@Override
public List<SupplierEntity> getList(SupplierPagination supplierPagination){
public List<SupplierMobileEntity> getList(SupplierPagination supplierPagination){
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
int total=0;
@ -130,14 +122,20 @@ public class SupplierServiceImpl extends ServiceImpl<SupplierMapper, SupplierEnt
}
}
if((total>0 && AllIdList.size()>0) || total==0){
Page<SupplierEntity> page=new Page<>(supplierPagination.getCurrentPage(), supplierPagination.getPageSize());
IPage<SupplierEntity> userIPage=this.page(page, supplierQueryWrapper);
Page<SupplierMobileEntity> page=new Page<>(supplierPagination.getCurrentPage(), supplierPagination.getPageSize());
IPage<SupplierMobileEntity> userIPage=this.page(page, supplierQueryWrapper);
return supplierPagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<SupplierEntity> list = new ArrayList();
List<SupplierMobileEntity> list = new ArrayList();
return supplierPagination.setData(list, list.size());
}
}
@Override
public IPage<SupplierMobileEntity> page(Page<SupplierMobileEntity> page, Wrapper<SupplierEntity> queryWrapper) {
return supplierMapper.getSupplierList(page,queryWrapper);
}
@Override
public List<SupplierEntity> getTypeList(SupplierPagination supplierPagination,String dataType){
String userId=userProvider.get().getUserId();

@ -1,51 +1,41 @@
package jnpf.vehicle.controller;
import cn.afterturn.easypoi.excel.ExcelExportUtil;
import cn.afterturn.easypoi.excel.entity.ExportParams;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import cn.afterturn.easypoi.excel.entity.enmus.ExcelType;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import jnpf.base.ActionResult;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.base.UserInfo;
import jnpf.base.vo.DownloadVO;
import jnpf.base.vo.PageListVO;
import jnpf.base.vo.PaginationVO;
import jnpf.config.ConfigValueUtil;
import jnpf.exception.DataException;
import jnpf.util.*;
import jnpf.util.enums.FileTypeEnum;
import jnpf.util.file.UploadUtil;
import jnpf.vehicle.entity.VehicleEntity;
import jnpf.vehicle.entity.VehicleMobileEntity;
import jnpf.vehicle.model.vehicle.*;
import jnpf.vehicle.service.VehicleService;
import org.springframework.transaction.annotation.Transactional;
import jnpf.base.entity.ProvinceEntity;
import jnpf.entity.*;
import jnpf.util.*;
import jnpf.base.util.*;
import jnpf.base.vo.ListVO;
import jnpf.util.context.SpringContext;
import cn.hutool.core.util.ObjectUtil;
import lombok.extern.slf4j.Slf4j;
import lombok.Cleanup;
import lombok.extern.slf4j.Slf4j;
import org.apache.poi.hssf.usermodel.HSSFWorkbook;
import org.apache.poi.ss.usermodel.Workbook;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.*;
import javax.validation.Valid;
import java.io.FileNotFoundException;
import java.io.FileOutputStream;
import java.io.IOException;
import jnpf.util.GeneraterSwapUtil;
import java.util.*;
import jnpf.util.file.UploadUtil;
import jnpf.util.enums.FileTypeEnum;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
*
@ -84,9 +74,9 @@ public class VehicleController {
*/
@PostMapping("/getList")
public ActionResult list(@RequestBody VehiclePagination vehiclePagination)throws IOException{
List<VehicleEntity> list= vehicleService.getList(vehiclePagination);
List<VehicleMobileEntity> list= vehicleService.getList(vehiclePagination);
//处理id字段转名称若无需转或者为空可删除
for(VehicleEntity entity:list){
for(VehicleMobileEntity entity:list){
entity.setVehiclephotos(generaterSwapUtil.getFileNameInJson(entity.getVehiclephotos()));
}
List<VehicleListVO> listVO=JsonUtil.getJsonToList(list,VehicleListVO.class);

@ -1,8 +1,15 @@
package jnpf.vehicle.mapper;
import jnpf.vehicle.entity.VehicleEntity;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import jnpf.vehicle.entity.VehicleEntity;
import jnpf.vehicle.entity.VehicleMobileEntity;
import org.apache.ibatis.annotations.Param;
/**
*
@ -13,5 +20,5 @@ import com.baomidou.mybatisplus.core.mapper.BaseMapper;
* 2023-01-05
*/
public interface VehicleMapper extends BaseMapper<VehicleEntity> {
IPage<VehicleMobileEntity> getVehicleList(@Param("page") Page<VehicleMobileEntity> page, @Param("ew") Wrapper<VehicleEntity> queryWrapper);
}

@ -3,12 +3,11 @@
package jnpf.vehicle.model.vehicle;
import lombok.Data;
import java.sql.Time;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import java.math.BigDecimal;
import lombok.Data;
import java.util.Date;
/**
*
*
@ -58,6 +57,11 @@ public class VehicleListVO{
@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss",timezone = "GMT+8")
@JsonProperty("creatortime")
private Date creatortime;
// 运输总次数
@JsonProperty("licenseCount")
private Integer licenseCount;
// 运输总量
@JsonProperty("licenseSum")
private Integer licenseSum;
}

@ -1,12 +1,15 @@
package jnpf.vehicle.service;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
import jnpf.vehicle.entity.VehicleEntity;
import jnpf.vehicle.entity.VehicleMobileEntity;
import jnpf.vehicle.model.vehicle.VehiclePagination;
import java.util.*;
import java.util.List;
/**
*
* vehicle
@ -17,7 +20,7 @@ import java.util.*;
*/
public interface VehicleService extends IService<VehicleEntity> {
List<VehicleEntity> getList(VehiclePagination vehiclePagination);
List<VehicleMobileEntity> getList(VehiclePagination vehiclePagination);
List<VehicleEntity> getTypeList(VehiclePagination vehiclePagination,String dataType);
@ -33,5 +36,7 @@ public interface VehicleService extends IService<VehicleEntity> {
// 子表方法
IPage<VehicleMobileEntity> page(Page<VehicleMobileEntity> page, Wrapper<VehicleEntity> queryWrapper);
//列表子表数据方法
}

@ -1,37 +1,29 @@
package jnpf.vehicle.service.impl;
import jnpf.entity.*;
import jnpf.service.*;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.util.RandomUtil;
import java.math.BigDecimal;
import cn.hutool.core.util.ObjectUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import jnpf.permission.model.authorize.AuthorizeConditionModel;
import jnpf.permission.service.AuthorizeService;
import java.lang.reflect.Field;
import com.baomidou.mybatisplus.annotation.TableField;
import java.util.stream.Collectors;
import jnpf.util.ServletUtil;
import jnpf.util.StringUtil;
import jnpf.util.UserProvider;
import jnpf.vehicle.entity.VehicleEntity;
import jnpf.vehicle.entity.VehicleMobileEntity;
import jnpf.vehicle.mapper.VehicleMapper;
import jnpf.vehicle.model.vehicle.VehiclePagination;
import jnpf.vehicle.service.VehicleService;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.transaction.annotation.Transactional;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import java.text.SimpleDateFormat;
import jnpf.util.*;
import java.util.*;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.lang.reflect.Field;
import java.util.ArrayList;
import java.util.List;
/**
*
@ -51,12 +43,13 @@ public class VehicleServiceImpl extends ServiceImpl<VehicleMapper, VehicleEntity
@Autowired
private AuthorizeService authorizeService;
@Resource
private VehicleMapper vehicleMapper;
@Override
public List<VehicleEntity> getList(VehiclePagination vehiclePagination){
public List<VehicleMobileEntity> getList(VehiclePagination vehiclePagination){
String userId=userProvider.get().getUserId();
List<String> AllIdList =new ArrayList();
int total=0;
@ -128,11 +121,11 @@ public class VehicleServiceImpl extends ServiceImpl<VehicleMapper, VehicleEntity
}
}
if((total>0 && AllIdList.size()>0) || total==0){
Page<VehicleEntity> page=new Page<>(vehiclePagination.getCurrentPage(), vehiclePagination.getPageSize());
IPage<VehicleEntity> userIPage=this.page(page, vehicleQueryWrapper);
Page<VehicleMobileEntity> page=new Page<>(vehiclePagination.getCurrentPage(), vehiclePagination.getPageSize());
IPage<VehicleMobileEntity> userIPage=this.page(page, vehicleQueryWrapper);
return vehiclePagination.setData(userIPage.getRecords(),userIPage.getTotal());
}else{
List<VehicleEntity> list = new ArrayList();
List<VehicleMobileEntity> list = new ArrayList();
return vehiclePagination.setData(list, list.size());
}
}
@ -229,6 +222,12 @@ public class VehicleServiceImpl extends ServiceImpl<VehicleMapper, VehicleEntity
entity.setId(id);
return this.updateById(entity);
}
@Override
public IPage<VehicleMobileEntity> page(Page<VehicleMobileEntity> page, Wrapper<VehicleEntity> queryWrapper) {
return vehicleMapper.getVehicleList(page,queryWrapper);
}
@Override
public void delete(VehicleEntity entity){
if(entity!=null){

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.customer.mapper.CustomerJGMapper">
</mapper>

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.mapper.Jg_naturalMapper">
</mapper>

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.invoices.mapper.SupplierinvoicesMapper">
</mapper>

@ -1,7 +0,0 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.vehicle.mapper.VehicleMapper">
</mapper>

@ -0,0 +1,85 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.customer.mapper.CustomerJGMapper">
<select id="getMobileList" resultMap="customer" >
SELECT
*
FROM
(
SELECT
a.id,
a.creator_user_id,
a.creator_user_name,
a.creator_time,
a.last_modify_user_id,
a.last_modify_user_name,
a.last_modify_time,
a.delete_user_id,
a.delete_user_name,
a.delete_time,
a.delete_mark,
a.orgnize_id,
a.department_id,
a.supplier_cd,
a.supplier_nm,
a.supplier_site_id,
a.supplier_site_code,
a.org_id,
a.org_name,
a.vat_registration_num,
a.customer_level,
a.contact_name,
a.contact_phone,
a.`status`,
a.address,
SUM( b.gross_weight ),
IFNULL( SUM( b.gross_weight ), 0.0000000000 ) settlemenSum,
IFNULL( SUM( b.net_weight ), 0.0000000000 ) weightSum,
IFNULL( SUM( b.buckle_weight ), 0.0000000000 ) buckleWeightSum,
IFNULL( SUM( b.settlement ), 0.0000000000 ) grossWeightSum,
IFNULL( SUM( b.settlement ), 0.0000000000 )* IFNULL( SUM( b.sales_price ), 0.0000000000 ) salesPriceSum
FROM
jg_customer a
LEFT JOIN jg_poundlist b ON a.id = b.customer_code
WHERE
( a.delete_mark != 1 OR a.delete_mark IS NULL )
AND ( b.delete_mark != 1 OR b.delete_mark IS NULL )
GROUP BY
a.id
) a ${ew.customSqlSegment}
</select>
<resultMap id="customer" type="jnpf.customer.entity.CustomerJGMobileEntity">
<result column="id" property="id"/>
<result column="creator_user_id" property="creatoruserid"/>
<result column="creator_user_name" property="creatorusername"/>
<result column="creator_time" property="creatortime"/>
<result column="last_modify_user_id" property="lastmodifyuserid"/>
<result column="last_modify_user_name" property="lastmodifyusername"/>
<result column="last_modify_time" property="lastmodifytime"/>
<result column="delete_user_id" property="deleteuserid"/>
<result column="delete_user_name" property="deleteusername"/>
<result column="delete_time" property="deletetime"/>
<result column="delete_mark" property="deletemark"/>
<result column="orgnize_id" property="originId"/>
<result column="department_id" property="deptId"/>
<result column="supplier_cd" property="supplierCd"/>
<result column="supplier_nm" property="supplierNm"/>
<result column="supplier_site_id" property="supplierSiteId"/>
<result column="supplier_site_code" property="supplierSiteCode"/>
<result column="org_id" property="orgId"/>
<result column="org_name" property="orgName"/>
<result column="vat_registration_num" property="vatRegistrationNum"/>
<result column="customer_level" property="customerLevel"/>
<result column="contact_name" property="contactName"/>
<result column="contact_phone" property="contactPhone"/>
<result column="status" property="status"/>
<result column="address" property="address"/>
<result column="settlemenSum" property="settlemenSum"/>
<result column="weightSum" property="weightSum"/>
<result column="buckleWeightSum" property="buckleWeightSum"/>
<result column="grossWeightSum" property="grossWeightSum"/>
<result column="salesPriceSum" property="salesPriceSum"/>
</resultMap>
</mapper>

@ -1,9 +1,7 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.material.mapper.MaterialMapper">
<select id="getMaterialMobileList111" resultType="map">
select * from jg_poundlist
</select>
<!--获取派工单信息-->
<select id="getMaterialMobileList" resultMap="findWorkOrderByCondition">
@ -51,7 +49,7 @@
END
) salesWeight,
( SELECT COUNT( DISTINCT COALESCE ( purchase_code, 'NULL' )) FROM jg_poundlist WHERE material_code = a.id ) salesNumber,
( SELECT COUNT( DISTINCT COALESCE ( purchase_code, 'NULL' )) FROM jg_poundlist WHERE material_code = a.id OR material_code IS NULL ) purchasesNumber
( SELECT COUNT( DISTINCT COALESCE ( purchase_code, 'NULL' )) FROM jg_poundlist WHERE material_code = a.id) purchasesNumber
FROM
jg_material a
LEFT JOIN jg_poundlist b ON a.id = b.material_code

@ -0,0 +1,56 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.Jg_natural.mapper.Jg_naturalMapper">
<select id="getNaturalList" resultMap="naturalMapper">
SELECT * from (SELECT
a.id,
a.creator_user_id,
a.creator_user_name,
a.creator_time,
a.last_modify_user_id,
a.last_modify_user_name,
a.last_modify_time,
a.delete_user_id,
a.delete_user_name,
a.delete_time,
a.delete_mark,
a.orgnize_id,
a.department_id,
a.adress,
a.`name`,
a.contact,
COUNT( b.id ) naturalCount,
IFNULL( SUM( CASE b.unit WHEN 0 THEN b.settlement ELSE b.settlement / 1000 END ), 0 ) naturalSum
FROM
jg_natural a
LEFT JOIN jg_poundlist b ON a.id = b.natural_id
WHERE
( a.delete_mark != 1 OR a.delete_mark IS NULL )
AND ( b.delete_mark != 1 OR b.delete_mark IS NULL )
GROUP BY
a.id) a ${ew.customSqlSegment}
</select>
<resultMap id="naturalMapper" type="jnpf.Jg_natural.entity.Jg_naturalMobileEntity">
<result column="id" property="id"/>
<result column="creator_user_id" property="creatorUserId"/>
<result column="creator_user_name" property="creatorUserName"/>
<result column="creator_time" property="creatorTime"/>
<result column="last_modify_user_id" property="lastModifyUserId"/>
<result column="last_modify_user_name" property="lastModifyUserName"/>
<result column="last_modify_time" property="lastModifyTime"/>
<result column="delete_user_id" property="deleteUserId"/>
<result column="delete_user_name" property="deleteUserName"/>
<result column="delete_time" property="deleteTime"/>
<result column="delete_mark" property="deleteMark"/>
<result column="orgnize_id" property="orgnizeId"/>
<result column="department_id" property="departmentId"/>
<result column="adress" property="adress"/>
<result column="name" property="name"/>
<result column="contact" property="contact"/>
<result column="naturalSum" property="naturalSum"/>
<result column="naturalCount" property="naturalCount"/>
</resultMap>
</mapper>

@ -0,0 +1,86 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.supplier.mapper.SupplierMapper">
<select id="getSupplierList" resultMap="supplierMap">
SELECT
*
FROM
(
SELECT
a.id,
a.creator_user_id,
a.creator_user_name,
a.creator_time,
a.last_modify_user_id,
a.last_modify_user_name,
a.last_modify_time,
a.delete_user_id,
a.delete_user_name,
a.delete_time,
a.delete_mark,
a.supplier_code,
a.supplier_name,
a.supplier_site_id,
a.supplier_site_code,
a.company_id,
a.company_name,
a.vat_registration_num,
a.orgnize_id,
a.department_id,
a.supply,
a.contact_name,
a.contact_phone,
a.supplier_level,
a.address,
a.`status`,
IFNULL( SUM( b.gross_weight ), 0.0000000000 ) settlemenSum,
IFNULL( SUM( b.net_weight ), 0.0000000000 ) weightSum,
IFNULL( SUM( b.buckle_weight ), 0.0000000000 ) buckleWeightSum,
IFNULL( SUM( b.settlement ), 0.0000000000 ) grossWeightSum,
IFNULL( SUM( b.settlement ), 0.0000000000 )* IFNULL( SUM( b.sales_price ), 0.0000000000 ) salesPriceSum
FROM
jg_supplier a
LEFT JOIN jg_poundlist b ON a.id = b.supplier_code
WHERE
( a.delete_mark != 1 OR a.delete_mark IS NULL )
AND ( b.delete_mark != 1 OR b.delete_mark IS NULL )
GROUP BY
a.id
) a ${ew.customSqlSegment}
</select>
<resultMap id="supplierMap" type="jnpf.supplier.entity.SupplierMobileEntity">
<result column="id" property="id"/>
<result column="creator_user_id" property="creatoruserid"/>
<result column="creator_user_name" property="creatorusername"/>
<result column="creator_time" property="creatortime"/>
<result column="last_modify_user_id" property="lastmodifyuserid"/>
<result column="last_modify_user_name" property="lastmodifyusername"/>
<result column="last_modify_time" property="lastmodifytime"/>
<result column="delete_user_id" property="deleteuserid"/>
<result column="delete_user_name" property="deleteusername"/>
<result column="delete_time" property="deletetime"/>
<result column="delete_mark" property="deletemark"/>
<result column="supplier_code" property="supplierCode"/>
<result column="supplier_name" property="supplierName"/>
<result column="supplier_site_id" property="supplierSiteCode"/>
<result column="supplier_site_code" property="supplierSiteCode"/>
<result column="company_id" property="companyId"/>
<result column="company_name" property="companyName"/>
<result column="vat_registration_num" property="vatRegistrationNum"/>
<result column="orgnize_id" property="orgId"/>
<result column="department_id" property="departmentId"/>
<result column="supply" property="supply"/>
<result column="contact_name" property="contactName"/>
<result column="contact_phone" property="contactPhone"/>
<result column="supplier_level" property="supplierLevel"/>
<result column="address" property="address"/>
<result column="status" property="status"/>
<result column="settlemenSum" property="settlemenSum"/>
<result column="weightSum" property="weightSum"/>
<result column="buckleWeightSum" property="buckleWeightSum"/>
<result column="grossWeightSum" property="grossWeightSum"/>
<result column="salesPriceSum" property="salesPriceSum"/>
</resultMap>
</mapper>

@ -0,0 +1,62 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="jnpf.vehicle.mapper.VehicleMapper">
<select id="getVehicleList" resultMap="vehicleMap">
SELECT
*
FROM
(
SELECT
a.id,
a.creator_user_id,
a.creator_user_name,
a.creator_time,
a.last_modify_user_id,
a.last_modify_user_name,
a.last_modify_time,
a.delete_user_id,
a.delete_user_name,
a.delete_time,
a.delete_mark,
a.orgnize_id,
a.department_id,
a.ticketno,
a.vehiclephotos,
a.drivername,
a.contact,
COUNT( b.id ) licenseCount,
IFNULL( SUM( CASE b.unit WHEN 0 THEN b.settlement ELSE b.settlement / 1000 END ), 0 ) licenseSum
FROM
jg_vehicle a
LEFT JOIN jg_poundlist b ON a.ticketno = b.license_no
WHERE
( a.delete_mark != 1 OR a.delete_mark IS NULL )
AND ( b.delete_mark != 1 OR b.delete_mark IS NULL )
GROUP BY
a.id
) a ${ew.customSqlSegment}
</select>
<resultMap id="vehicleMap" type="jnpf.vehicle.entity.VehicleMobileEntity">
<result column="id" property="id"></result>
<result column="creator_user_id" property="creatoruserid"></result>
<result column="creator_user_name" property="creatorusername"></result>
<result column="creator_time" property="creatortime"></result>
<result column="last_modify_user_id" property="lastmodifyuserid"></result>
<result column="last_modify_user_name" property="lastmodifyusername"></result>
<result column="last_modify_time" property="lastmodifytime"></result>
<result column="delete_user_id" property="deleteuserid"></result>
<result column="delete_user_name" property="deleteusername"></result>
<result column="delete_time" property="deletetime"></result>
<result column="delete_mark" property="deletemark"></result>
<result column="orgnize_id" property="orgnizeId"></result>
<result column="department_id" property="departmentId"></result>
<result column="ticketno" property="ticketno"></result>
<result column="vehiclephotos" property="vehiclephotos"></result>
<result column="drivername" property="drivername"></result>
<result column="contact" property="contact"></result>
<result column="licenseCount" property="licenseCount"></result>
<result column="licenseSum" property="licenseSum"></result>
</resultMap>
</mapper>
Loading…
Cancel
Save