Commit db1f5b33 authored by 赵啸非's avatar 赵啸非

Merge remote-tracking branch 'origin/master'

parents 2deadd67 0e7b74a2
This diff is collapsed.
......@@ -2,11 +2,11 @@ import http from "../request/http";
let baseURL = process.env.VUE_APP_API_BASE_URL
// 1.10.1. 查询应用服务列表
export function serviceList(params) {
return http.post(`${baseURL}/zwfw/system/service/list`, params);
return http.post(`${baseURL}/zwfw/product/apps/list`, params);
}
// 1.10.2. 查看应用服务
export function serviceInfo(params) {
return http.get(`${baseURL}/zwfw/system/service/info`, params);
return http.get(`${baseURL}/zwfw/product/document/list`, params);
}
// 1.10.3. 保存更新应用服务
export function serviceSave(params) {
......
......@@ -194,3 +194,11 @@ export function getImpossibleInfo(params) {
export function getKqalert(params) {
return http.get(`${BASEURL}/admin/kqalert/list`, params);
}
/**
* 查询设备告警日志列表
*/
// 查询设备告警日志列表
export function getInfoList(params) {
return http.post(`${baseURL}/m/device/alarm/info/list`, params);
}
......@@ -414,6 +414,15 @@ const routes = [
),
meta: { title: "12345拨打记录报表" },
},
{
path: "letterRecordForm",
name: "letterRecordForm",
component: () =>
import(
/* webpackChunkName: "letterRecordForm" */ "@/views/dataAdmin/components/networkGovernance/letterRecordForm.vue"
),
meta: { title: "12345写信记录报表" },
},
],
},
],
......
......@@ -8,43 +8,48 @@
>
<a-form-model
ref="ruleForm"
:model="detailsForm"
:model="msg"
:rules="detailsRules"
:label-col="{ span: 4 }"
:wrapper-col="{ span: 20 }"
>
<a-form-model-item label="告警设备" prop="告警设备">
<a-input v-model="detailsForm.告警设备" placeholder="请输入" disabled />
<a-input v-model="msg.deviceName" placeholder="请输入" disabled />
</a-form-model-item>
<a-form-model-item label="告警时间" prop="告警时间">
<a-input v-model="detailsForm.告警时间" placeholder="请输入" disabled />
<a-input v-model="msg.alarmTime" placeholder="请输入" disabled />
</a-form-model-item>
<a-form-model-item label="告警内容" prop="告警内容">
<a-input v-model="detailsForm.告警内容" placeholder="请输入" disabled />
<a-input v-model="msg.alarmContent" placeholder="请输入" disabled />
</a-form-model-item>
<a-form-model-item label="告警程度" prop="告警程度">
<a-input v-model="detailsForm.告警程度" placeholder="请输入" disabled />
<a-input v-model="msg.alarmLevel" placeholder="请输入" disabled />
</a-form-model-item>
<a-form-model-item label="告警状态" prop="告警状态">
<a-input v-model="detailsForm.告警状态" placeholder="请输入" disabled />
<a-input v-model="msg.alarmStatus" placeholder="请输入" disabled />
</a-form-model-item>
<a-form-model-item label="接收人员" prop="接收人员">
<a-input v-model="detailsForm.接收人员" placeholder="请输入" disabled />
<a-input
v-model="msg.alarmReceivePersonnel"
placeholder="请输入"
disabled
/>
</a-form-model-item>
<a-form-model-item label="告警详情" prop="告警详情">
<a-textarea
v-model="detailsForm.告警详情"
v-model="msg.alarmContent"
placeholder="请输入"
:rows="4"
disabled
/>
</a-form-model-item>
<a-form-model-item label="清楚时间" prop="清楚时间">
<a-input v-model="detailsForm.清楚时间" placeholder="请输入" disabled />
<!-- <a-form-model-item label="清楚时间" prop="清楚时间">
<a-input v-model="msg.updateTime" placeholder="请输入" disabled />
</a-form-model-item>
<a-form-model-item label="清楚人员" prop="清楚人员">
<a-input v-model="detailsForm.清楚人员" placeholder="请输入" disabled />
</a-form-model-item>
<a-input v-model="msg.updateUserId" placeholder="请输入" disabled />
</a-form-model-item> -->
</a-form-model>
</a-drawer>
</template>
......@@ -54,7 +59,9 @@ import modal from "../mixins/modal";
export default {
mixins: [modal],
name: "PortalAdminVuePicWorks",
props: {
msg: Object,
},
data() {
return {
detailsForm: {
......@@ -84,5 +91,3 @@ export default {
overflow-x: hidden !important;
}
</style>
......@@ -45,11 +45,13 @@
:columns="tableHeaders" :dataSource="tableSourceData">
<template slot="评价人照片" slot-scope="text">
<a-avatar v-if="!text || !baseurl" shape="square" :size="40" icon="user" />
<img v-else :src="baseurl + '/' + text" style="max-width: 100px; max-height: 100px" @click="$viewerApi({images:[baseurl + '/' + text]})"/>
<img v-else :src="baseurl + '/' + text" style="max-width: 100px; max-height: 100px"
@click="$viewerApi({ images: [baseurl + '/' + text] })" />
</template>
<template slot="操作" slot-scope="text, record">
<a-button type="link" style="color: #ff7370" @click="handleDel(record.id)">删除</a-button>
<a-button type="link" @click="openHandlingDetails(record)">详情</a-button>
<a-button type="link" @click="openHandlingDetails(record)"
v-if="record.queueid == 0 && record.pjxt != 1">详情</a-button>
</template>
</a-table>
<HandlingDetails ref="HandlingDetails" />
......@@ -324,6 +326,7 @@ export default {
},
//详情模块
openHandlingDetails(record) {
console.log(record)
// 判断为窗口屏或者其他状况,调用不同接口
if (record.pjxt == 1) {
this.$refs.HandlingDetails.modalInfo.title = "办理明细";
......
<template>
<div class="callRecord-Container">
<div class="header_box">
<div>
<a-button
:loading="btnLoading"
type="primary"
class="addclass"
@click="handleExportTable"
>
<span>{{ tableSelectedRows.length ? "导出" : "导出全部" }}</span>
</a-button>
<b
>写信次数:<i>{{ total }}</i></b
>
</div>
<span>
<a-select v-model="status" style="margin: 0 10px">
<a-select-option value=""> 全部类型 </a-select-option>
<a-select-option value="0"> 离线 </a-select-option>
</a-select>
<a-select v-model="source">
<a-select-option value=""> 全部来源 </a-select-option>
<a-select-option value="0"> 离线 </a-select-option>
</a-select>
<a-range-picker
format="YYYY-MM-DD"
class="range_picker_style"
@change="rangePickerChange"
style="margin: 0 10px"
>
</a-range-picker>
<a-input
style="width: 250px"
v-model="searchName"
placeholder="请输入标题或姓名关键字搜索"
>
<a-icon slot="prefix" type="search" />
</a-input>
<a-button
type="primary"
class="addclass"
style="margin: 0 0 0 10px"
@click="getList"
>搜索</a-button
>
</span>
</div>
<div class="main">
<a-table
size="small"
bordered
:row-key="(record) => record.id"
:row-selection="{
selectedRowKeys: tableSelectedKeys,
onChange: onSelectChange,
}"
:scroll="{ y: 590 }"
:pagination="tablePagination"
@change="pagTableChange"
:loading="tableLoading"
:columns="tableHeaders"
:dataSource="tableSourceData"
>
<template slot="operation" slot-scope="text, record, index">
<a-button type="link" @click="showDrawer(record)">详情</a-button>
</template>
</a-table>
</div>
<FormDetails
ref="FormDetails"
@onClose="onClose"
@showDrawer="showDrawer"
:visible="visible"
/>
</div>
</template>
<script>
import table from "@/mixins/table";
import { getSys12345 } from "@/api/dataAdmin";
import { export2Excel } from "@/utils/js/exportExcel";
export default {
mixins: [table],
name: "callRecordForm",
data() {
return {
status: "",
source: "",
tableHeaders: [
{
title: "序号",
dataIndex: "index",
width: "60px",
key: "index",
align: "center",
customRender: (text, record, index) => `${index + 1}`,
},
{
title: "工单编号",
align: "center",
dataIndex: "nickname",
customRender: (text, record, index) => `${record.nickname || "--"}`,
},
{
title: "信件标题",
align: "center",
dataIndex: "phone",
customRender: (text, record, index) => `${record.phone || "--"}`,
},
{
title: "信件类别",
align: "center",
dataIndex: "address",
customRender: (text, record, index) => `${record.address || "--"}`,
},
{
title: "姓名",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "性别",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "联系电话",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "信件来源",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "提交时间",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "办理状态",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "办理时间",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "办理部门",
align: "center",
dataIndex: "create_time",
customRender: (text, record, index) =>
`${record.create_time || "--"}`,
},
{
title: "操作",
align: "center",
width: "110px",
scopedSlots: {
customRender: "operation",
},
},
],
btnLoading: false,
tableSelectedKeys: [],
tableSelectedRows: [],
BegindAndEndTime: [],
searchName: undefined,
visible: false,
total: 0,
};
},
components: {},
mounted() {
this.getList();
},
methods: {
getList() {
getSys12345({
phone: this.searchName,
}).then((res) => {
this.tableSourceData = res.data.data;
this.total = res.data.total;
});
},
rangePickerChange(val) {
console.log(val);
},
QueueState(type) {
switch (type) {
case 0:
return "type1";
case 1:
return "type2";
default:
return "type0";
}
},
// 选中
onSelectChange(keys, rows) {
this.tableSelectedKeys = keys;
const res = new Map();
this.tableSelectedRows = [...this.tableSelectedRows, ...rows]
.filter((v) => {
return !res.has(v.id) && res.set(v.id, 1);
})
.filter((v) => {
return this.tableSelectedKeys.some((val) => v.id == val);
});
},
// 导出
async handleExportTable() {
this.btnLoading = true;
let obj = {
1: "本地打印",
2: "在线提交",
};
let data = [];
if (this.tableSelectedKeys.length && this.tableSelectedRows.length) {
// 深度克隆避免影响页面表格展示
data = this.$_.cloneDeep(this.tableSelectedRows);
data.forEach((item) => {
Object.keys(obj).forEach((keys) => {
if (item.type == keys) {
item.type = obj[keys];
}
});
});
} else {
let datas = this.$_.cloneDeep(
await getSys12345({
page: 1,
size: -1,
})
);
data = datas.data.data;
if (!data.length) return;
for (let item of data) {
Object.keys(obj).forEach((key) => {
if (item.type == key) {
item.type = obj[key];
}
});
}
}
export2Excel(
this.tHeader,
this.filterVal,
data,
"填单记录报表" + this.$moment().format("YYYYMMDDHHmmss")
);
this.btnLoading = false;
},
showDrawer(val) {
this.visible = true;
},
onClose() {
this.visible = false;
},
},
};
</script>
<style lang="less" scoped>
/deep/.ant-spin-container {
display: block;
}
.header_box {
padding-bottom: 1rem;
display: flex;
justify-content: space-between;
align-items: center;
& > div {
display: flex;
justify-content: flex-start;
align-items: center;
b {
font-style: normal;
font-weight: unset;
font-size: 16px;
margin-left: 20px;
i {
color: #0595fd;
font-style: normal;
}
}
sub {
font-size: 14px;
font-style: normal;
bottom: unset;
margin-left: 20px;
}
}
}
.tabFont {
font-size: 12px;
font-weight: 300;
}
/deep/.ant-drawer-content {
background-color: #f3f4f5;
}
</style>
......@@ -25,8 +25,7 @@
<a-table size="small" bordered :row-key="(record) => record.id" :scroll="{ y: 590 }" :pagination="tablePagination"
@change="pagTableChange" :loading="tableLoading" :columns="tableHeaders" :dataSource="tableSourceData">
<template slot="operation" slot-scope="text, record, index">
<a-button type="link" v-if="record.appFileUrl"
@click="handleDowload(record.appFileUrl)">下载应用</a-button>
<a-button type="link" v-if="record.appFileUrl" @click="handleDowload(record.appFileUrl)">下载应用</a-button>
<a-button type="link" @click="openDetails(record)">编辑</a-button>
<a-popconfirm title="确定要删除此应用吗?" ok-text="确定" cancel-text="取消" @confirm="delRow(record)">
<a-button type="link" style="color: #ff4420">删除</a-button>
......@@ -43,6 +42,9 @@
import { getApps, deleteApps } from "@/api/thePlatformIsSet.js";
import table from "@/mixins/table";
import Details from "./components/Details.vue";
let obj = {
}
export default {
mixins: [table],
name: "PortalAdminVueAlerting",
......@@ -66,6 +68,7 @@ export default {
title: "开发语言",
align: "center",
dataIndex: "deveLanguage",
customRender: (text, record, index) => this.dict.deveLanguage[text],
},
{
title: "版本",
......@@ -164,11 +167,12 @@ export default {
handleDowload(url) {
let arr = url.split('/')
const a = document.createElement("a");
a.href = process.env.VUE_APP_API_BASE_URL+'/' + url;
a.href = process.env.VUE_APP_API_BASE_URL + '/' + url;
a.download = arr[arr.length - 1];
a.click();
},
openDetails(item) {
if (item) {
this.$refs.Details.modalInfo.title = "编辑应用";
this.$refs.Details.getInfo(item.id)
......@@ -176,6 +180,17 @@ export default {
this.$refs.Details.modalInfo.title = "新增应用";
}
this.$refs.Details.modalInfo.visible = true;
//重置数据
this.$refs.Details.appForm = {
appName: "",
deveLanguage: undefined,
versionNumber: "",
versionInfo: "",
appFileUrl: "",
isEnable: false,
}
this.$refs.Details.uploadInfo.fileList = []
// this.$refs.Details.appForm.resetFields()
this.$refs.Details.modalInfo.width = "30%";
},
......
......@@ -82,11 +82,13 @@ export default {
},
mounted() {
},
methods: {
getInfo(id) {
getAppsInfo({ id: id }).then(res => {
res.data.isEnable = res.data.isEnable == 1
res.data.deveLanguage = this.deveLanguage[res.data.deveLanguage]
this.appForm = res.data
if (res.data.appFileUrl) {
this.uploadInfo.fileList = [
......
......@@ -1608,7 +1608,7 @@
"@vue/vue-loader-v15@npm:vue-loader@^15.9.7":
version "15.10.1"
resolved "https://registry.npmmirror.com/vue-loader/-/vue-loader-15.10.1.tgz"
resolved "https://registry.npmjs.org/vue-loader/-/vue-loader-15.10.1.tgz"
integrity sha512-SaPHK1A01VrNthlix6h1hq4uJu7S/z0kdLUb6klubo738NeQoLbS6V9/d8Pv19tU0XdQKju3D1HSKuI8wJ5wMA==
dependencies:
"@vue/component-compiler-utils" "^3.1.0"
......@@ -6175,7 +6175,7 @@ vue-highlightjs@^1.3.3:
vue-hot-reload-api@^2.3.0:
version "2.3.4"
resolved "https://registry.npmmirror.com/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz"
resolved "https://registry.npmjs.org/vue-hot-reload-api/-/vue-hot-reload-api-2.3.4.tgz"
integrity sha512-BXq3jwIagosjgNVae6tkHzzIk6a8MHFtzAdwhnV5VlvPTFxDCvIttgSiHWjdGoTJvXtmRu5HacExfdarRcFhog==
vue-loader@^17.0.0:
......
......@@ -84,3 +84,6 @@ CREATE TABLE `mortals_xhx_product_document` (
`updateTime` datetime DEFAULT NULL COMMENT '更新时间',
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='产品资料表';
ALTER TABLE `mortals_xhx_product_interface` ADD COLUMN `normalResponse` text DEFAULT NULL COMMENT '正常返回示例' AFTER `remark`,
ADD COLUMN `abnormalResponse` text DEFAULT NULL COMMENT '异常返回示例' AFTER `normalResponse`;
package com.mortals.xhx.module.product.model;
import com.mortals.xhx.module.product.model.vo.ProductInterfaceVo;
import lombok.Data;
/**
* 产品接口实体对象
*
* @author zxfei
* @date 2023-05-16
* @date 2023-05-29
*/
@Data
public class ProductInterfaceEntity extends ProductInterfaceVo {
private static final long serialVersionUID = 1L;
......@@ -83,266 +83,14 @@ public class ProductInterfaceEntity extends ProductInterfaceVo {
* 接口描述
*/
private String remark;
public ProductInterfaceEntity(){}
/**
* 获取 产品id
* @return Long
*/
public Long getProductId(){
return productId;
}
/**
* 设置 产品id
* @param productId
*/
public void setProductId(Long productId){
this.productId = productId;
}
/**
* 获取 接口名称
* @return String
*/
public String getInterfaceName(){
return interfaceName;
}
/**
* 设置 接口名称
* @param interfaceName
*/
public void setInterfaceName(String interfaceName){
this.interfaceName = interfaceName;
}
/**
* 获取 版本号
* @return String
*/
public String getVersionNumber(){
return versionNumber;
}
/**
* 设置 版本号
* @param versionNumber
*/
public void setVersionNumber(String versionNumber){
this.versionNumber = versionNumber;
}
/**
* 获取 请求类型1:POST,2:GET
* @return Integer
* 正常返回示例
*/
public Integer getRequestType(){
return requestType;
}
/**
* 设置 请求类型1:POST,2:GET
* @param requestType
*/
public void setRequestType(Integer requestType){
this.requestType = requestType;
}
/**
* 获取 请求协议1:HTTP,2:HTTPS
* @return Integer
*/
public Integer getRequestProtocol(){
return requestProtocol;
}
private String normalResponse;
/**
* 设置 请求协议1:HTTP,2:HTTPS
* @param requestProtocol
* 异常返回示例
*/
public void setRequestProtocol(Integer requestProtocol){
this.requestProtocol = requestProtocol;
}
/**
* 获取 请求路径
* @return String
*/
public String getRequestUrl(){
return requestUrl;
}
/**
* 设置 请求路径
* @param requestUrl
*/
public void setRequestUrl(String requestUrl){
this.requestUrl = requestUrl;
}
/**
* 获取 超时时间(秒)
* @return Long
*/
public Long getTimeoutValue(){
return timeoutValue;
}
/**
* 设置 超时时间(秒)
* @param timeoutValue
*/
public void setTimeoutValue(Long timeoutValue){
this.timeoutValue = timeoutValue;
}
/**
* 获取 限流策略1:分钟,2:小时
* @return Integer
*/
public Integer getLimitStrategy(){
return limitStrategy;
}
/**
* 设置 限流策略1:分钟,2:小时
* @param limitStrategy
*/
public void setLimitStrategy(Integer limitStrategy){
this.limitStrategy = limitStrategy;
}
/**
* 获取 访问网络1互联网2政务网
* @return String
*/
public String getNetwork(){
return network;
}
/**
* 设置 访问网络1互联网2政务网
* @param network
*/
public void setNetwork(String network){
this.network = network;
}
/**
* 获取 接口描述
* @return String
*/
public String getDescription(){
return description;
}
/**
* 设置 接口描述
* @param description
*/
public void setDescription(String description){
this.description = description;
}
/**
* 获取 内容类型
* @return String
*/
public String getContentType(){
return contentType;
}
/**
* 设置 内容类型
* @param contentType
*/
public void setContentType(String contentType){
this.contentType = contentType;
}
/**
* 获取 标签
* @return Integer
*/
public Integer getInterfaceTag(){
return interfaceTag;
}
/**
* 设置 标签
* @param interfaceTag
*/
public void setInterfaceTag(Integer interfaceTag){
this.interfaceTag = interfaceTag;
}
/**
* 获取 来源1自有2非自有
* @return Integer
*/
public Integer getInterfaceSource(){
return interfaceSource;
}
/**
* 设置 来源1自有2非自有
* @param interfaceSource
*/
public void setInterfaceSource(Integer interfaceSource){
this.interfaceSource = interfaceSource;
}
/**
* 获取 入参是否加密
* @return Integer
*/
public Integer getInEncrypt(){
return inEncrypt;
}
/**
* 设置 入参是否加密
* @param inEncrypt
*/
public void setInEncrypt(Integer inEncrypt){
this.inEncrypt = inEncrypt;
}
/**
* 获取 请求参数
* @return String
*/
public String getRequestParameters(){
return requestParameters;
}
/**
* 设置 请求参数
* @param requestParameters
*/
public void setRequestParameters(String requestParameters){
this.requestParameters = requestParameters;
}
/**
* 获取 出参是否加密
* @return Integer
*/
public Integer getOutEncrypt(){
return outEncrypt;
}
/**
* 设置 出参是否加密
* @param outEncrypt
*/
public void setOutEncrypt(Integer outEncrypt){
this.outEncrypt = outEncrypt;
}
/**
* 获取 响应数据
* @return String
*/
public String getResponseParameters(){
return responseParameters;
}
/**
* 设置 响应数据
* @param responseParameters
*/
public void setResponseParameters(String responseParameters){
this.responseParameters = responseParameters;
}
/**
* 获取 接口描述
* @return String
*/
public String getRemark(){
return remark;
}
/**
* 设置 接口描述
* @param remark
*/
public void setRemark(String remark){
this.remark = remark;
}
private String abnormalResponse;
@Override
public int hashCode() {
return this.getId().hashCode();
......@@ -359,32 +107,9 @@ public class ProductInterfaceEntity extends ProductInterfaceVo {
return false;
}
public String toString(){
StringBuilder sb = new StringBuilder("");
sb.append(",productId:").append(getProductId());
sb.append(",interfaceName:").append(getInterfaceName());
sb.append(",versionNumber:").append(getVersionNumber());
sb.append(",requestType:").append(getRequestType());
sb.append(",requestProtocol:").append(getRequestProtocol());
sb.append(",requestUrl:").append(getRequestUrl());
sb.append(",timeoutValue:").append(getTimeoutValue());
sb.append(",limitStrategy:").append(getLimitStrategy());
sb.append(",network:").append(getNetwork());
sb.append(",description:").append(getDescription());
sb.append(",contentType:").append(getContentType());
sb.append(",interfaceTag:").append(getInterfaceTag());
sb.append(",interfaceSource:").append(getInterfaceSource());
sb.append(",inEncrypt:").append(getInEncrypt());
sb.append(",requestParameters:").append(getRequestParameters());
sb.append(",outEncrypt:").append(getOutEncrypt());
sb.append(",responseParameters:").append(getResponseParameters());
sb.append(",remark:").append(getRemark());
return sb.toString();
}
public void initAttrValue(){
this.productId = null;
this.productId = -1L;
this.interfaceName = "";
......@@ -396,9 +121,9 @@ public class ProductInterfaceEntity extends ProductInterfaceVo {
this.requestUrl = "";
this.timeoutValue = null;
this.timeoutValue = -1L;
this.limitStrategy = null;
this.limitStrategy = -1;
this.network = "";
......@@ -406,18 +131,22 @@ public class ProductInterfaceEntity extends ProductInterfaceVo {
this.contentType = "";
this.interfaceTag = null;
this.interfaceTag = -1;
this.interfaceSource = 1;
this.inEncrypt = null;
this.inEncrypt = -1;
this.requestParameters = "";
this.outEncrypt = null;
this.outEncrypt = -1;
this.responseParameters = "";
this.remark = "";
this.normalResponse = "";
this.abnormalResponse = "";
}
}
\ No newline at end of file
......@@ -5,7 +5,7 @@ import java.util.List;
* 产品接口查询对象
*
* @author zxfei
* @date 2023-05-16
* @date 2023-05-29
*/
public class ProductInterfaceQuery extends ProductInterfaceEntity {
/** 开始 序号,主键,自增长 */
......@@ -245,6 +245,16 @@ public class ProductInterfaceQuery extends ProductInterfaceEntity {
/** 结束 更新时间 */
private String updateTimeEnd;
/** 正常返回示例 */
private List<String> normalResponseList;
/** 正常返回示例排除列表 */
private List <String> normalResponseNotList;
/** 异常返回示例 */
private List<String> abnormalResponseList;
/** 异常返回示例排除列表 */
private List <String> abnormalResponseNotList;
/** OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4) */
private List<ProductInterfaceQuery> orConditionList;
......@@ -1577,6 +1587,70 @@ public class ProductInterfaceQuery extends ProductInterfaceEntity {
this.updateTimeEnd = updateTimeEnd;
}
/**
* 获取 正常返回示例
* @return normalResponseList
*/
public List<String> getNormalResponseList(){
return this.normalResponseList;
}
/**
* 设置 正常返回示例
* @param normalResponseList
*/
public void setNormalResponseList(List<String> normalResponseList){
this.normalResponseList = normalResponseList;
}
/**
* 获取 正常返回示例
* @return normalResponseNotList
*/
public List<String> getNormalResponseNotList(){
return this.normalResponseNotList;
}
/**
* 设置 正常返回示例
* @param normalResponseNotList
*/
public void setNormalResponseNotList(List<String> normalResponseNotList){
this.normalResponseNotList = normalResponseNotList;
}
/**
* 获取 异常返回示例
* @return abnormalResponseList
*/
public List<String> getAbnormalResponseList(){
return this.abnormalResponseList;
}
/**
* 设置 异常返回示例
* @param abnormalResponseList
*/
public void setAbnormalResponseList(List<String> abnormalResponseList){
this.abnormalResponseList = abnormalResponseList;
}
/**
* 获取 异常返回示例
* @return abnormalResponseNotList
*/
public List<String> getAbnormalResponseNotList(){
return this.abnormalResponseNotList;
}
/**
* 设置 异常返回示例
* @param abnormalResponseNotList
*/
public void setAbnormalResponseNotList(List<String> abnormalResponseNotList){
this.abnormalResponseNotList = abnormalResponseNotList;
}
/**
* 设置 序号,主键,自增长
* @param id
......@@ -2398,6 +2472,44 @@ public class ProductInterfaceQuery extends ProductInterfaceEntity {
}
/**
* 设置 正常返回示例
* @param normalResponse
*/
public ProductInterfaceQuery normalResponse(String normalResponse){
setNormalResponse(normalResponse);
return this;
}
/**
* 设置 正常返回示例
* @param normalResponseList
*/
public ProductInterfaceQuery normalResponseList(List<String> normalResponseList){
this.normalResponseList = normalResponseList;
return this;
}
/**
* 设置 异常返回示例
* @param abnormalResponse
*/
public ProductInterfaceQuery abnormalResponse(String abnormalResponse){
setAbnormalResponse(abnormalResponse);
return this;
}
/**
* 设置 异常返回示例
* @param abnormalResponseList
*/
public ProductInterfaceQuery abnormalResponseList(List<String> abnormalResponseList){
this.abnormalResponseList = abnormalResponseList;
return this;
}
/**
* 获取 OR条件集合,列表项之间是OR,项内容之间是AND,如:(list[0].1 and list[0].2) or (list[1].3 and list[1].4)
* @return orConditionList
......
package com.mortals.xhx.module.product.model.vo;
import com.mortals.framework.model.BaseEntityLong;
import com.mortals.xhx.module.product.model.ProductAppsEntity;
import java.util.ArrayList;
import java.util.List;
/**
* 协议管理视图对象
......@@ -10,5 +9,27 @@ import java.util.List;
* @date 2023-02-22
*/
public class ProductAppsVo extends BaseEntityLong {
/**
* 产品名称
*/
private String productName;
/** 产品id列表 */
private List <Long> productIdList;
public String getProductName() {
return productName;
}
public void setProductName(String productName) {
this.productName = productName;
}
public List<Long> getProductIdList() {
return productIdList;
}
public void setProductIdList(List<Long> productIdList) {
this.productIdList = productIdList;
}
}
\ No newline at end of file
package com.mortals.xhx.module.product.service.impl;
import org.springframework.stereotype.Service;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.framework.exception.AppException;
import com.mortals.framework.model.Context;
import com.mortals.framework.model.PageInfo;
import com.mortals.framework.service.impl.AbstractCRUDServiceImpl;
import com.mortals.xhx.module.product.dao.ProductAppsDao;
import com.mortals.xhx.module.product.model.ProductAppsEntity;
import com.mortals.xhx.module.product.model.ProductEntity;
import com.mortals.xhx.module.product.model.ProductQuery;
import com.mortals.xhx.module.product.service.ProductAppsService;
import com.mortals.xhx.module.product.service.ProductService;
import org.apache.commons.collections4.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List;
/**
* ProductAppsService
* 产品应用 service实现
......@@ -16,4 +26,31 @@ import com.mortals.xhx.module.product.service.ProductAppsService;
@Service("productAppsService")
public class ProductAppsServiceImpl extends AbstractCRUDServiceImpl<ProductAppsDao, ProductAppsEntity, Long> implements ProductAppsService {
@Autowired
private ProductService productService;
@Override
protected ProductAppsEntity findBefore(ProductAppsEntity params, PageInfo pageInfo, Context context) throws AppException {
if(params.getProductId()==null) {
List<ProductEntity> productList = productService.find(new ProductQuery());
List<Long> productIdList = new ArrayList<>();
for (ProductEntity item : productList) {
productIdList.add(item.getId());
}
params.setProductIdList(productIdList);
}
return params;
}
@Override
protected void findAfter(ProductAppsEntity params, PageInfo pageInfo, Context context, List<ProductAppsEntity> list) throws AppException {
if(CollectionUtils.isNotEmpty(list)){
for(ProductAppsEntity item:list){
ProductEntity productEntity = productService.get(item.getProductId());
if(productEntity!=null){
item.setProductName(productEntity.getProductName());
}
}
}
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment