Commit 1319eb91 authored by tianhongyang's avatar tianhongyang

Merge branch 'V20230915' of http://192.168.60.201/root/dsk-operate-sys into V20230915

parents 4cd91f55 aa8f04f8
version: "3"
services:
dsk-operate-sys:
image: swr.cn-north-4.myhuaweicloud.com/dsk/java:8u111-jdk-alpine-creditreport
container_name: dsk-operate-sys
network_mode: host
restart: always
working_dir: /app
environment:
TZ: Asia/Shanghai
volumes:
- ./dsk-operate-sys:/app
- /etc/localtime:/etc/localtime
command: "java -jar dsk-operate-sys.jar"
nginx:
image: nginx:perl
container_name: nginx
restart: always
network_mode: host
working_dir: /app
environment:
TZ: Asia/Shanghai
volumes:
- /etc/localtime:/etc/localtime
- ./dsk-operate-ui/dist/:/www/szh/web/dist/
- ./dsk-operate-ui/operate.conf:/etc/nginx/conf.d/operate.conf
- ./dsk-operate-ui/log:/var/log/nginx
\ No newline at end of file
FROM anapsix/alpine-java:8_server-jre_unlimited
MAINTAINER Tanyang
RUN mkdir -p /ruoyi/server/logs \
/ruoyi/server/temp \
/ruoyi/skywalking/agent
WORKDIR /ruoyi/server
ENV SERVER_PORT=8080
EXPOSE ${SERVER_PORT}
ADD ./target/dsk-operate-sys.jar ./dsk-operate-sys.jar
ENTRYPOINT ["java", \
"-Djava.security.egd=file:/dev/./urandom", \
"-Dserver.port=${SERVER_PORT}", \
# 应用名称 如果想区分集群节点监控 改成不同的名称即可
# "-Dskywalking.agent.service_name=ruoyi-server", \
# "-javaagent:/ruoyi/skywalking/agent/skywalking-agent.jar", \
"-jar", "dsk-operate-sys.jar"]
......@@ -61,6 +61,11 @@
<artifactId>dsk-biz-api</artifactId>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
<scope>test</scope>
</dependency>
<dependency>
<groupId>org.springframework.boot</groupId>
<artifactId>spring-boot-starter-test</artifactId>
......
......@@ -49,9 +49,12 @@ spring:
driverClassName: com.mysql.cj.jdbc.Driver
# jdbc 所有参数配置参考 https://lionli.blog.csdn.net/article/details/122018562
# rewriteBatchedStatements=true 批处理优化 大幅提升批量插入更新删除性能(对数据库有性能损耗 使用批量操作应考虑性能问题)
url: jdbc:mysql://192.168.0.79:3306/dsk_operate_sys?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: dev
password: 8AXjjCHZ666!
# url: jdbc:mysql://192.168.0.79:3306/dsk_operate_sys?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
# username: dev
# password: 8AXjjCHZ666!
url: jdbc:mysql://rds-szh.dsk.com/dos?useUnicode=true&characterEncoding=utf8&zeroDateTimeBehavior=convertToNull&useSSL=true&serverTimezone=GMT%2B8
username: dsk_api_szh
password: j1nxbVPF0QS*B57C
# 从库数据源
# slave:
# lazy: true
......@@ -101,13 +104,13 @@ spring:
--- # redis 单机配置(单机与集群只能开启一个另一个需要注释掉)
spring:
redis:
host: 192.168.0.79
host: redis-szh.dsk.com
# 端口,默认为6379
port: 6379
# 数据库索引
database: 6
# 密码
password: zfTFIJjaN#6xB83r
password: Xi8$r*@d7zn5FaP2
# 密码(如没有密码请注释掉)
# password:
# 连接超时时间
......
......@@ -107,7 +107,7 @@ sa-token:
# token名称 (同时也是cookie名称)
token-name: Authorization
# token有效期 设为一天 (必定过期) 单位: 秒
timeout: 18000
timeout: 28800
# 多端不同 token 有效期 可查看 LoginHelper.loginByDevice 方法自定义
# token最低活跃时间 (指定时间无操作就过期) 单位: 秒
active-timeout: 18000
......
......@@ -56,7 +56,8 @@ public class EconomicServiceImpl implements EconomicService {
if (ObjectUtil.isEmpty(dto.getYear())) {
dto.setYear(DateUtils.getYear() - 1);
}
Map<String, Object> map = dskOpenApiUtil.requestBody("/operate/economic/national/nationalPage", BeanUtil.beanToMap(dto, false, false));
Map<String, Object> map = dskOpenApiUtil.requestBody("/economic/national/nationalPage", BeanUtil.beanToMap(dto, false, false));
Integer code = MapUtils.getInteger(map, "code", 300);
if (!code.equals(HttpStatus.OK.value())) {
throw new RuntimeException();
......
server
{
listen 80;
server_name hwszh.jiansheku.com szh.jiansheku.com;
index index.php index.html index.htm default.php default.htm default.html;
error_page 500 502 503 504 /50x.html;
access_log /var/log/nginx/szh.jiansheku.com.access.log;
error_log /var/log/nginx/szh.jiansheku.com.error.log;
location / {
root /www/szh/web/dist/;
index index.html index.htm;
try_files $uri $uri/ /index.html;
}
location /prod-api/ {
proxy_redirect off;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
# 后端服务地址
proxy_pass http://localhost:9098/;
}
location = /50x.html {
root html;
}
}
......@@ -54,8 +54,48 @@ function saveFixed(field, num=2){
return parseFloat(field.toFixed(num))
}
//移除字符串中指定标签
let removeTag = function(str, external, implant, row) { //str字符串, external外部引用方式的标签组[一个标签], implant嵌入引用的标签组[包含首尾标签], row行内标签组
let newHtml = str
if(external){
let externalArr = external.split(",")
for (let item of externalArr){
newHtml = newHtml.replace(new RegExp("<"+item+"([^>]+)>", "img"),"")
}
}
if(implant){
let implantArr = implant.split(",")
for (let item of implantArr){
newHtml = newHtml.replace(new RegExp("<"+item+"[^>]*>([\\S\\s]*?)<\/"+item+">", "img"),"")
}
}
if(row){
let rowArr = row.split(",")
for (let item of rowArr){
newHtml = newHtml.replace(new RegExp(""+item+"\\s*?=\\s*?(['`\"])[\\s\\S]*?\\1", "img"),"")
}
}
return newHtml
}
//替换字符串中指定标签
let checkTag = function(str, oldTag, newTag) { //str字符串, oldTag当前标签数组, newTag替换后的新标签数组
let newHtml = str
if(oldTag && newTag){
let oldArr = oldTag.split(",")
let newArr = newTag.split(",")
if(oldArr.length==newArr.length){
for (let i=0; i<oldArr.length; i++){
newHtml = newHtml.replace(new RegExp("<"+oldArr[i]+"\\b[^>]*>([\\S\\s]*?)<\\/"+oldArr[i]+">", "img"), "<"+newArr[i]+">$1</"+newArr[i]+">")
}
}
}
return newHtml
}
export {
encodeStr,
changePath,
saveFixed
saveFixed,
removeTag,
checkTag
}
......@@ -228,10 +228,12 @@ li {
.app-main {
background-color: #f5f5f5;
>div{
width: calc(100% - 48px);
}
}
.app-container {
width: 100%;
padding: 16px 24px;
margin: 16px 24px;
background-color: #f5f5f5;
box-sizing: border-box;
.el-input__inner {
......
......@@ -5,7 +5,7 @@
.miantitle{
color: #232323;
font-size: 12px;
margin: 12px 24px;
margin: 12px 0;
>span{
opacity: 0.4;
&:last-child{opacity:0.8}
......
<template>
<div @click = 'handleALL'>
<div @click = 'handleALL' class="app-container">
<div class="miantitle">
<span>客户管理</span>
<span> / 客户列表</span>
</div>
<div class="app-container">
<div>
<el-card class="box-card noborder min1370">
<div class="tables ">
<div class="empty" v-if="tableData.total==0 && !isSkeleton">
......
......@@ -32,7 +32,7 @@
}
},
created() {
if(window.location.host === 'http://szh.jiansheku.com' || window.location.host === 'szh.jiansheku.com'){
if(window.location.host === 'http://szh.jiansheku.com' || window.location.host === 'szh.jiansheku.com'|| window.location.host === 'hwszh.jiansheku.com'){
this.domain='https://plug.jiansheku.com'
}else {
this.domain='https://pre-plug.jiansheku.com'
......
......@@ -223,10 +223,10 @@ export default {
page:this.pageIndex,
}
if(this.queryParams.field){
params.field=this.queryParams.field
params.page.field=this.queryParams.field
}
if(this.queryParams.order){
params.order=this.queryParams.order
params.page.order=this.queryParams.order
}
params.aptitudeQueryDto={
filePlaceType:this.activeName === 'first' ? 3 : 2,
......
<template>
<div class="zhaobiao">
<p class="text_p">注:数据来源大司空建筑大数据平台,统计范围为全国公开的招标项目,未公开的不含在内</p>
<div class="zb-content content1">
<div class="flex-box query-box">
<div class="flex-box query-params">
......@@ -490,7 +489,7 @@ export default {
border-radius: 4px;
color: #0081FF;
}
.shangji{
.zhaobiao{
.zb-content{
background: #ffffff;
border-radius: 4px;
......
......@@ -39,7 +39,7 @@ export default {
if (window.location.host === 'http://szh.jiansheku.com' || window.location.host === 'szh.jiansheku.com') {
this.domain = 'https://plug.jiansheku.com';
} else {
this.domain = 'https://pre-plug.jiansheku.com';
this.domain='https://pre-plug.jiansheku.com'
// this.domain = 'http://192.168.60.104:3400';
}
this.gettokens();
......
<template>
<el-dialog
class="popups"
:visible.sync="dialogVisible"
width="464px">
<div class="poptitle">
<img src="@/assets/images/economies/icon.png">
<span>{{projectname}}</span>
</div>
<el-form class="popform" label-width="137px">
<el-form-item label="联系人姓名:" class="row">
<el-input type="text" v-model="queryParam.name" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="联系人性别:" class="row">
<el-radio-group v-model="queryParam.sex">
<el-radio label=1></el-radio>
<el-radio label=0></el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="联系人角色:" class="row">
<el-input type="text" v-model="queryParam.role" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="关联企业:" class="row">
<el-input type="text" v-model="queryParam.office" placeholder="请输入"></el-input>
</el-form-item>
<el-form-item label="联系人职位:" class="row">
<el-input type="text" v-model="queryParam.position" placeholder="请输入"></el-input>
</el-form-item>
<!--<el-form-item label="内部维护人:" class="row">-->
<!--<el-input type="text" v-model="queryParam.accendant" placeholder="请输入"></el-input>-->
<!--</el-form-item>-->
<el-form-item label="联系方式:" class="row">
<el-input type="text" v-model="queryParam.phone" placeholder="请输入"></el-input>
</el-form-item>
<div class="popbot">
<div class="btn btn_cancel h32" @click="cancel">返回</div>
<div class="btn btn_primary h32" @click="save">保存</div>
</div>
</el-form>
</el-dialog>
</template>
<script>
import {editLXR,addLXR} from '@/api/project/project'
export default {
name: 'addContacts'
}
</script>
<style scoped>
</style>
......@@ -23,7 +23,7 @@
</div>
<div class="sels">
<img src="@/assets/images/project/ico_2.png">
<el-input v-model="queryParam.target" placeholder="拜访对象" style="width: 100px;">
<el-input v-model="queryParam.target" placeholder="拜访对象" maxlength="500" style="width: 100px;">
</el-input>
</div>
<div class="wc">
......
......@@ -10,7 +10,7 @@
<span class="list-label list-label-zb" v-if="textList.tenderStage">
{{textList.tenderStage}}
</span>
<span class="list-label" v-if="textList.province||textList.city||textList.area">{{textList.province}}<template v-if="textList.city">-{{textList.city}}</template><template v-if="textList.area">-{{textList.area}}</template></span>
<span class="list-label list-label-zb" v-if="textList.businessType">
{{textList.businessType}}
......@@ -19,22 +19,22 @@
{{textList.industry}}
</span>
</div>
<div class="list-content">
<p class="list-content-text" v-if="textList.tenderee">
<span>招采单位:</span>
<router-link v-if="textList.tenderee" :to="textList.tendereeUipId?'/enterprise/' + encodeStr(textList.tendereeId) :'/company/' + encodeStr(textList.tendereeId) " tag="a" class="list-titel-a blue" v-html="textList.tenderee"></router-link>
<span v-else>--</span>
</p>
<p class="list-content-text" v-if="textList.agency">
<span>代理单位:</span>
<router-link v-if="textList.agency" :to="textList.agencyUipId?'/enterprise/' + encodeStr(textList.agencyId) :'/company/' + encodeStr(textList.agencyId) " tag="a" class="list-titel-a blue" v-html="textList.agency"></router-link>
<span v-else>--</span>
</p>
</div>
<div class="list-content" v-if="textList.projectAmount||textList.contact">
<p class="list-content-text" v-if="textList.projectAmount">
......@@ -47,7 +47,7 @@
<span >招采单位 {{textList.contact}}{{textList.contactTel}}</span>
</p>
</div>
<div class="list-content" v-if="textList.issueTime||textList.overTime||textList.dataSource">
<p class="list-content-text" v-if="textList.issueTime">
<span>发布时间:</span>
......@@ -66,7 +66,7 @@
<span >{{textList.dataSource||'--'}}</span>
</p>
</div>
</li>
</ul>
......@@ -82,20 +82,20 @@
</span>
</div>
<div class="main3-box" v-html="textList.content">
</div>
</div>
</div>
</template>
<script>
import "@/assets/styles/public.scss";
import api from '@/api/radar/radar.js';
import {encodeStr} from "@/assets/js/common.js"
import {encodeStr,removeTag,checkTag} from "@/assets/js/common.js"
export default {
name: 'TenderDetails',
......@@ -118,11 +118,13 @@
}).then(res => {
// console.log(res);
this.textList = res.data;
this.textList.content = removeTag(res.data.content, 'link,meta', 'script,style', 'href,target,style') //采集详情针对性处理
this.textList.content = checkTag(res.data.content, 'h1,a', 'b,span') //采集详情针对性处理
}).catch(error => {
});
},
}
}
......@@ -325,7 +327,7 @@
min-height: 400px;
border: 1px solid #D8D8D8;
padding: 16px;
overflow: hidden;
}
.list-content-img{
position: absolute;
......@@ -349,4 +351,4 @@
}
</style>
\ No newline at end of file
</style>
......@@ -34,8 +34,8 @@ module.exports = {
proxy: {
// detail: https://cli.vuejs.org/config/#devserver-proxy
[process.env.VUE_APP_BASE_API]: {
target: `http://47.104.91.229:9099/prod-api`,//测试
// target: `http://localhost:9099`,//测试
// target: `http://47.104.91.229:9099/prod-api`,//测试
target: `http://localhost`,//测试
// target: `http://122.9.160.122:9011`, //线上
// target: `http://192.168.0.165:9098`,//施
// target: `http://192.168.60.6:9098`,//谭
......
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