Commit a292d17d authored by caixingbing's avatar caixingbing
parents 5d41ea7a bfc6304a
......@@ -42,7 +42,7 @@ public class BusinessBacklogController extends BaseController
private IBusinessBacklogService businessBacklogService;
/**
* 查询项目工作待办列表
* 分页查询项目工作待办列表
*/
// @PreAuthorize("@ss.hasPermi('system:backlog:list')")
@GetMapping("/list")
......
......@@ -36,7 +36,7 @@ public class BusinessContactsController extends BaseController
private IBusinessContactsService businessContactsService;
/**
* 查询项目联系人列表
* 分页查询项目联系人列表
*/
// @PreAuthorize("@ss.hasPermi('system:contacts:list')")
@GetMapping("/list")
......
......@@ -36,15 +36,13 @@ public class BusinessFollowRecordController extends BaseController
private IBusinessFollowRecordService businessFollowRecordService;
/**
* 查询项目跟进记录列表
* 根据项目id查询项目跟进记录
*/
// @PreAuthorize("@ss.hasPermi('system:record:list')")
@GetMapping("/list")
public TableDataInfo list(BusinessFollowRecord businessFollowRecord)
@GetMapping("/list/{businessId}")
public AjaxResult list(@PathVariable Integer businessId)
{
startPage();
List<BusinessFollowRecord> list = businessFollowRecordService.selectBusinessFollowRecordList(businessFollowRecord);
return getDataTable(list);
return success(businessFollowRecordService.selectBusinessFollowRecordList(businessId));
}
/**
......@@ -58,6 +56,18 @@ public class BusinessFollowRecordController extends BaseController
return toAjax(businessFollowRecordService.insertBusinessFollowRecord(businessFollowRecord));
}
/**
* 分页查询项目跟进记录
*/
// @PreAuthorize("@ss.hasPermi('system:record:list')")
// @GetMapping("/list")
// public TableDataInfo list(BusinessFollowRecord businessFollowRecord)
// {
// startPage();
// List<BusinessFollowRecord> list = businessFollowRecordService.selectBusinessFollowRecordList(businessFollowRecord);
// return getDataTable(list);
// }
// /**
// * 导出项目跟进记录列表
// */
......
......@@ -6,6 +6,7 @@ import com.dsk.common.core.domain.entity.BusinessInfo;
import com.dsk.common.dtos.BusinessInfoDto;
import com.dsk.system.domain.BusinessAddDto;
import com.dsk.system.domain.BusinessListDto;
import com.dsk.system.domain.vo.BusinessBrowseVo;
import com.dsk.system.domain.vo.BusinessListVo;
import com.dsk.system.service.IBusinessInfoService;
import org.springframework.security.access.prepost.PreAuthorize;
......@@ -37,7 +38,7 @@ public class BusinessInfoController extends BaseController
// @PreAuthorize("@ss.hasPermi('system:info:list')")
@PostMapping("/query/project")
public AjaxResult queryprojectName(@RequestBody BusinessListDto dto){
return AjaxResult.success(businessInfoService.queryprojectName(dto));
return AjaxResult.success(businessInfoService.selectProjectName(dto));
}
/**
......@@ -53,12 +54,32 @@ public class BusinessInfoController extends BaseController
}
/**
* 删除项目详情
* 查询项目速览
*/
// @PreAuthorize("@ss.hasPermi('system:info:list')")
@GetMapping("/browse/{businessId}")
public AjaxResult browse(@PathVariable Integer id)
{
return success(businessInfoService.browse(id));
}
/**
* 获取项目建设内容
*/
// @PreAuthorize("@ss.hasPermi('system:info:query')")
@GetMapping(value = "/construction/{id}")
public AjaxResult getConstruction(@PathVariable("id") Integer id)
{
return success(businessInfoService.getConstruction(id));
}
/**
* 删除项目列表
*/
// @PreAuthorize("@ss.hasPermi('system:info:remove')")
// @Log(title = "项目详情", businessType = BusinessType.DELETE)
@DeleteMapping("/remove/{ids}")
public AjaxResult remove(@RequestParam(value = "ids",required=false) Long[] ids)
public AjaxResult remove(@PathVariable(value = "ids",required=false) Long[] ids)
{
return toAjax(businessInfoService.deleteBusinessInfoByIds(ids));
}
......@@ -77,14 +98,24 @@ public class BusinessInfoController extends BaseController
/**
* 修改项目详情
*/
@PreAuthorize("@ss.hasPermi('system:info:edit')")
@Log(title = "项目详情", businessType = BusinessType.UPDATE)
// @PreAuthorize("@ss.hasPermi('system:info:edit')")
// @Log(title = "项目详情", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
public AjaxResult edit(@RequestBody BusinessInfo businessInfo)
{
return toAjax(businessInfoService.updateBusinessInfo(businessInfo));
}
// /**
// * 获取项目详情详细信息
// */
// @PreAuthorize("@ss.hasPermi('system:info:query')")
// @GetMapping(value = "/{id}")
// public AjaxResult getInfo(@PathVariable("id") Integer id)
// {
// return success(businessInfoService.selectBusinessInfoById(id));
// }
// /**
// * 导出项目详情列表
// */
......@@ -97,14 +128,5 @@ public class BusinessInfoController extends BaseController
// ExcelUtil<BusinessInfo> util = new ExcelUtil<BusinessInfo>(BusinessInfo.class);
// util.exportExcel(response, list, "项目详情数据");
// }
//
// /**
// * 获取项目详情详细信息
// */
// @PreAuthorize("@ss.hasPermi('system:info:query')")
// @GetMapping(value = "/{id}")
// public AjaxResult getInfo(@PathVariable("id") Long id)
// {
// return success(businessInfoService.selectBusinessInfoById(id));
// }
}
......@@ -67,6 +67,17 @@ public class BusinessRelateCompanyController extends BaseController
return toAjax(businessRelateCompanyService.insertBusinessRelateCompany(businessRelateCompany));
}
/**
* 修改项目关联单位
*/
// @PreAuthorize("@ss.hasPermi('system:company:edit')")
// @Log(title = "项目关联单位", businessType = BusinessType.UPDATE)
@PostMapping("/edit")
public AjaxResult edit(@RequestBody BusinessRelateCompany businessRelateCompany)
{
return toAjax(businessRelateCompanyService.updateBusinessRelateCompany(businessRelateCompany));
}
// /**
// * 导出项目关联单位列表
// */
......@@ -90,17 +101,6 @@ public class BusinessRelateCompanyController extends BaseController
// return success(businessRelateCompanyService.selectBusinessRelateCompanyById(id));
// }
// /**
// * 修改项目关联单位
// */
// @PreAuthorize("@ss.hasPermi('system:company:edit')")
// @Log(title = "项目关联单位", businessType = BusinessType.UPDATE)
// @PutMapping
// public AjaxResult edit(@RequestBody BusinessRelateCompany businessRelateCompany)
// {
// return toAjax(businessRelateCompanyService.updateBusinessRelateCompany(businessRelateCompany));
// }
//
// /**
// * 删除项目关联单位
......
......@@ -3,11 +3,14 @@ package com.dsk.common.core.domain.entity;
import java.util.Date;
import com.dsk.common.core.domain.BaseEntity;
import com.dsk.common.utils.CheckUtils;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.dsk.common.annotation.Excel;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.Pattern;
/**
* 项目联系人对象 business_contacts
*
......
......@@ -33,30 +33,6 @@ public class BusinessFollowRecord extends BaseEntity
@Excel(name = "用户昵称")
private Integer userName;
public Integer getUserName() {
return userName;
}
public String getVisitPerson() {
return visitPerson;
}
public String getPosition() {
return position;
}
public void setUserName(Integer userName) {
this.userName = userName;
}
public void setVisitPerson(String visitPerson) {
this.visitPerson = visitPerson;
}
public void setPosition(String position) {
this.position = position;
}
/** 拜访对象 */
@Excel(name = "拜访对象")
private String visitPerson;
......@@ -88,6 +64,30 @@ public class BusinessFollowRecord extends BaseEntity
@Excel(name = "创建时间", width = 30, dateFormat = "yyyy-MM-dd")
private Date creatTime;
public Integer getUserName() {
return userName;
}
public String getVisitPerson() {
return visitPerson;
}
public String getPosition() {
return position;
}
public void setUserName(Integer userName) {
this.userName = userName;
}
public void setVisitPerson(String visitPerson) {
this.visitPerson = visitPerson;
}
public void setPosition(String position) {
this.position = position;
}
public void setId(Integer id)
{
this.id = id;
......
......@@ -31,12 +31,12 @@ public class BusinessInfo extends BaseEntity
@Excel(name = "项目名称")
private String projectName;
/** 总投金额 */
@Excel(name = "总投金额")
/** 总投金额(万元) */
@Excel(name = "总投金额(万元)")
private Double investmentAmount;
/** 资金来源(万元) */
@Excel(name = "资金来源(万元)")
/** 资金来源 */
@Excel(name = "资金来源")
private String amountSource;
/** 计划招标时间 */
......
......@@ -2,6 +2,8 @@ package com.dsk.common.core.domain.entity;
import com.dsk.common.annotation.Excel;
import com.dsk.common.core.domain.BaseEntity;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
......@@ -11,6 +13,8 @@ import org.apache.commons.lang3.builder.ToStringStyle;
* @author lxl
* @date 2023-05-17
*/
@Data
@NoArgsConstructor
public class BusinessLabel extends BaseEntity
{
private static final long serialVersionUID = 1L;
......@@ -26,34 +30,6 @@ public class BusinessLabel extends BaseEntity
@Excel(name = "标签")
private String label;
public void setId(Integer id)
{
this.id = id;
}
public Integer getId()
{
return id;
}
public void setBusinessId(Integer businessId)
{
this.businessId = businessId;
}
public Integer getBusinessId()
{
return businessId;
}
public void setLabel(String label)
{
this.label = label;
}
public String getLabel()
{
return label;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
......@@ -64,4 +40,8 @@ public class BusinessLabel extends BaseEntity
.append("updateTime", getUpdateTime())
.toString();
}
public BusinessLabel(Integer businessId) {
this.businessId = businessId;
}
}
......@@ -2,15 +2,22 @@ package com.dsk.common.core.domain.entity;
import com.dsk.common.annotation.Excel;
import com.dsk.common.core.domain.BaseEntity;
import com.dsk.common.utils.CheckUtils;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import javax.validation.constraints.Pattern;
/**
* 项目关联单位对象 business_relate_company
*
* @author lxl
* @date 2023-05-17
*/
@Data
@NoArgsConstructor
public class BusinessRelateCompany extends BaseEntity
{
private static final long serialVersionUID = 1L;
......@@ -46,78 +53,6 @@ public class BusinessRelateCompany extends BaseEntity
@Excel(name = "对接深度/竞争力度")
private String depth;
public String getDepth() {
return depth;
}
public void setDepth(String depth) {
this.depth = depth;
}
public void setId(Integer id)
{
this.id = id;
}
public Integer getId()
{
return id;
}
public void setBusinessId(Integer businessId)
{
this.businessId = businessId;
}
public Integer getBusinessId()
{
return businessId;
}
public void setCompanyId(Integer companyId)
{
this.companyId = companyId;
}
public Integer getCompanyId()
{
return companyId;
}
public void setCompanyName(String companyName)
{
this.companyName = companyName;
}
public String getCompanyName()
{
return companyName;
}
public void setCompanyRole(String companyRole)
{
this.companyRole = companyRole;
}
public String getCompanyRole()
{
return companyRole;
}
public void setResponsiblePerson(String responsiblePerson)
{
this.responsiblePerson = responsiblePerson;
}
public String getResponsiblePerson()
{
return responsiblePerson;
}
public void setPhone(String phone)
{
this.phone = phone;
}
public String getPhone()
{
return phone;
}
@Override
public String toString() {
return new ToStringBuilder(this, ToStringStyle.MULTI_LINE_STYLE)
......@@ -140,4 +75,8 @@ public class BusinessRelateCompany extends BaseEntity
this.companyName = companyName;
this.companyRole = companyRole;
}
public BusinessRelateCompany(Integer businessId) {
this.businessId = businessId;
}
}
......@@ -543,6 +543,14 @@ ul, li {
background: #D3D3D3;
}
}
&.btn_shallow{
color: #0081FF;
background: rgba(0, 129, 255, 0.16);
&:hover{
background: #0081FF;
color: #fff;
}
}
&.h28{
line-height: 28px;
}
......@@ -588,7 +596,13 @@ ul, li {
position: relative;
overflow: hidden;
.el-input{
margin: -2px -1px;
margin-top: -1px;
//line-height: 32px;
.el-input__inner{
line-height: 32px;
height: 32px;
border: 0;
}
}
.btn{
background: #F5F5F5;
......
//小导航
.miantitle{
color: #232323;
font-size: 12px;
margin: 12px 24px;
>span{
opacity: 0.4;
&:last-child{opacity:0.8}
}
}
.overflows{
overflow: initial;
}
......@@ -237,6 +246,9 @@
.el-table--striped .el-table__body tr.el-table__row--striped td.el-table__cell{
background: #F9FCFF;
}
.el-table th.el-table__cell.is-leaf{
border-bottom: 0;
}
.has-gutter{
th{
height: 40px;
......@@ -347,13 +359,18 @@
width: 137px;
display: inline-block;
text-align: right;
opacity: 0.8
opacity: 0.8;
i{
color: #FF3C3C;
font-style: initial;
padding-right: 2px;
}
}
.el-input{
display: inline-block;
width: 240px;
.el-input__inner{
width: 240px;
width: 100%;
height: 32px;
border-radius: 0px;
......@@ -376,7 +393,7 @@
.popbot{
text-align: right;
padding-top: 8px;
padding-right: 47px;
padding-right: 0;
.btn{
border-radius: 0;
width: 80px;
......@@ -386,18 +403,17 @@
.popform.i{
.left{
width: 85px;
i{
color: #FF3C3C;
}
}
.el-input{
width: 335px;
.el-input__inner{
width: 335px;
}
}
.popbot{
padding-right: 0;
}
.popform.j{
.left{
width: 116px;
}
.el-input{
width: 374px;
}
}
.types{
......@@ -672,12 +688,9 @@
top: 17px;
.searchInput{
width: 178px;
height: 32px;
border: 1px solid #D9D9D9;
.el-input--medium .el-input__inner{
line-height: 32px;
font-size: 12px;
}
}
.b1{
......@@ -757,3 +770,24 @@
}
}
}
/*
客户管理
*/
//表格搜索
.table_search{
padding-bottom: 16px;
display: flex;
justify-content: space-between;
.searchInput{
width: 320px;
.el-input__inner{
font-size: 12px;
}
}
}
.p10{
padding: 0 10px;
}
* {
padding: 0;
margin: 0;
}
div,
dl,
dt,
dd,
form,
h1,
h2,
h3,
h4,
h5,
h6,
img,
ol,
ul,
li,
table,
th,
td,
p,
span,
a {
border: 0;
}
img,
input {
border: none;
vertical-align: middle;
background: none;
outline: none;
}
html {
height: 100%;
box-sizing: border-box;
}
body {
height: 100%;
-moz-osx-font-smoothing: grayscale;
-webkit-font-smoothing: antialiased;
text-rendering: optimizeLegibility;
font-family: Helvetica Neue, Helvetica, PingFang SC, Hiragino Sans GB, Microsoft YaHei, Arial, sans-serif;
}
ul,
ol {
list-style-type: none;
}
th,
td,
input {
font-size: 12px;
}
h3 {
font-size: 14px;
}
s,
i,
em {
font-style: normal;
text-decoration: none;
}
button {
border: none;
cursor: pointer;
font-size: 12px;
background-color: transparent;
}
select {
border-width: 1px;
_zoom: 1;
border-style: solid;
padding-top: 2px;
font-size: 12px;
}
.clear {
clear: both;
font-size: 1px;
height: 0;
visibility: hidden;
line-height: 0;
}
.clearfix:after {
content: "";
display: block;
clear: both;
}
.clearfix {
zoom: 1;
}
.float_left {
float: left;
}
.float_right {
float: right;
}
<template>
<div class="app-container">
客户列表
<div>
<div class="miantitle">
<span>客户管理</span>
<span> / 客户列表</span>
</div>
<div class="app-container">
<el-card class="box-card noborder">
<div class="tables">
<div class="empty" v-if="tableData == null || tableData.length == 0">
<img src="@/assets/images/project/empty.png">
<div class="p1">添加你的第一位客户吧</div>
<div class="p2">抱歉,你还未添加客户,快去添加吧</div>
<div class="btn btn_primary h36 w88" @click="opennew">添加客户</div>
<div class="btn btn_primary btn_shallow h36 w88">批量导入</div>
</div>
<div class="table_search">
<div class="searchInput">
<el-input type="text" placeholder="输入企业名称查询"></el-input>
<div class="btn">搜索</div>
</div>
<div class="dc">
<div class="total">共126条</div>
<div class="btn-export"><img src="@/assets/images/project/import.png">批量导入</div>
<div class="btn btn_primary h32 p10" @click="opennew"><div class="img img1"></div>添加客户</div>
</div>
</div>
<el-table
:data="tableData"
stripe border
style="width: 100%"
:default-sort = "{prop: 'date', order: 'descending'}"
>
<el-table-column
prop="index"
label="序号"
width="47">
</el-table-column> <el-table-column
prop="date"
label="企业名称"
width="441">
<template slot-scope="scope">
<div class="ps1">
<div class="wordprimary ps2">中国建筑第八工程局有限公司重庆至万州高铁</div>
<div class="ps3">
<div>写跟进<img src="@/assets/images/project/edit_1.png"></div>
<div>编辑信息<img src="@/assets/images/project/edit_2.png"></div>
</div>
</div>
</template>
</el-table-column>
<el-table-column
prop="name"
label="合作项目"
width="76">
</el-table-column>
<el-table-column
prop="name"
label="跟进项目"
width="76">
</el-table-column>
<el-table-column
prop="name"
label="储备项目"
width="76">
</el-table-column>
<el-table-column
prop="name"
label="法定代表人"
width="110">
</el-table-column>
<el-table-column
prop="name"
label="注册地区"
width="160">
</el-table-column>
<el-table-column
prop="name"
label="注册资本金(万元)"
width="140">
</el-table-column>
<el-table-column
prop="address"
label="企业主体评级" width="100">
</el-table-column>
<el-table-column
prop="address"
label="上市公司" width="76">
</el-table-column>
<el-table-column
prop="address"
label="局级大客户" width="88">
</el-table-column>
<el-table-column
prop="address"
label="客户等级" width="76">
</el-table-column>
<el-table-column
prop="address"
label="客户性质" width="76">
</el-table-column>
<el-table-column
prop="address"
label="客户级别" width="76">
</el-table-column>
<el-table-column
prop="address"
label="企业母公司" width="268">
<template slot-scope="scope">
<div class="wordprimary">中国建筑第八工程局有限公司重庆至万州高铁</div>
</template>
</el-table-column>
<el-table-column
prop="address"
label="主营业务" width="120">
</el-table-column>
<el-table-column
prop="address"
label="发包属性" width="120">
</el-table-column>
<el-table-column
prop="address"
label="跟进人" width="110">
</el-table-column>
</el-table>
<div class="bottems">
<el-pagination
background
:page-size="20"
:current-page="1"
@current-change="handleCurrentChange"
layout="prev, pager, next"
:total="1000">
</el-pagination>
</div>
</div>
<el-dialog
class="popups"
:visible.sync="dialogVisible"
width="534px">
<div class="poptitle">
<img src="@/assets/images/economies/icon.png">
<span>添加客户</span>
</div>
<div class="popform j">
<div class="row">
<span class="left"><i>*</i>企业名称:</span>
<el-input type="text" placeholder="请输入"></el-input>
</div>
<div class="row">
<span class="left">法定代表人:</span>
<el-input type="text" placeholder="请输入"></el-input>
</div>
<div class="row">
<span class="left">注册资本(万):</span>
<el-input type="text" placeholder="请输入"></el-input>
</div>
<div class="row">
<span class="left">企业注册地:</span>
<el-select placeholder="请选择">
<el-option label="cccc" value="11"></el-option>
<el-option label="cccc" value="121"></el-option>
</el-select>
</div>
<div class="popbot">
<div class="wordprimary">前往城投平台寻找客户线索></div>
<div class="btn btn_cancel h32" @click="cancel">返回</div>
<div class="btn btn_primary h32">添加</div>
</div>
</div>
</el-dialog>
</el-card>
</div>
</div>
</template>
<script>
import "@/assets/styles/project.scss"
export default {
name: 'CustomList',
data() {
return {
return{
dialogVisible:false,
textarea:"",
nowedit:-1,//当前正在编辑的文本
tipslit:[],//项目标签
tipsvalue:"",//标签填写内容
tableData: [
{
date: '2016-05-02',
name: '王小虎',
address: '上海市普陀区金沙江路 1518 弄'
}, {
date: '2016-05-04',
name: '王小虎',
address: '上海市普陀区金沙江路 1517 弄'
}, {
date: '2016-05-01',
name: '王小虎',
address: '上海市普陀区金沙江路 1519 弄'
}, {
date: '2016-05-03',
name: '王小虎',
address: '上海市普陀区金沙江路 1516 弄'
}
]
}
},
created() {
},
methods: {
methods:{
//翻页
handleCurrentChange(val) {
console.log(`当前页: ${val}`);
},
cancel(){
this.dialogVisible = false
},
//打开新建窗口
opennew(){
this.dialogVisible = true
},
}
}
</script>
<style lang="scss" scoped>
.app-container{
padding: 0;
height: calc(100vh - 134px)
}
.box-card{
padding-top: 16px;
width: 100%;
height: 100%;
}
.dc{
font-size: 12px;
color: #3D3D3D;
font-weight: 400;
position: relative;
&::after{
content: ' ';
width: 2px;
height: 2px;
background: rgba(35,35,35,0.4);
border-radius: 50%;
position: absolute;
top: 16px;
left: 14px;
}
>div{
display: inline-block;
margin-left: 20px;
}
}
.img.img1{
margin-right: 2px;
background: url('../../../../src/assets/images/project/add_2.png')no-repeat center center;
}
.w88{
width: 88px;
}
.tables{
position: relative;
height: calc(100vh - 134px);
.empty{
position: absolute;
top: 50%;
left: 50%;
transform: translate(-50%,-50%);
.btn{
margin-right: 8px;
margin-top: 12px;
}
}
}
.ps1{
display: flex;
justify-content: space-between;
.ps2{
width: 270px;
overflow: hidden;
text-overflow: ellipsis;
white-space: nowrap;
}
.ps3{
width: 150px;
display: flex;
justify-content: right;
>div{
margin-left: 12px;
&:hover{
color: #0CBC6D;
cursor: pointer;
}
>img{
float: right;
margin: 3px 0 0 4px
}
}
}
}
.popbot{
.wordprimary{
display: inline;
padding-right: 26px;
}
}
</style>
<template>
<div>
<el-card class="box-card noborder">
<div class="cardtitles">基本信息</div>
......@@ -171,6 +170,7 @@
width: 102px;
}
.popups .popform .popbot{padding-right: 47px;}
.img.img1{
margin-right: 8px;
background: url('../../../../../src/assets/images/project/add_2.png')no-repeat center center;
......
......@@ -135,15 +135,6 @@
.app-container{
padding: 0;
}
.miantitle{
color: #232323;
font-size: 12px;
margin: 12px 24px;
>span{
opacity: 0.4;
&:last-child{opacity:0.8}
}
}
.head{
.titles{
line-height: 31px;
......
<template>
<div class="content">
</div>
</template>
<script>
export default {
name: 'debtProject',
data() {
return {
}
},
created() {},
methods: {
}
}
</script>
<style lang="scss" scoped>
.content{
padding: 0px 16px;
background: #FFFFFF;
}
</style>
\ No newline at end of file
<template>
<div class="app-container">
<div class="content">
<div class="combined-title">
<div class="title-right">
<div class="tab">
<div style="position:relative" v-for="(itme,i) in personnelList"
:class="itme.status==true?'active':'' " :key='i' @click="personnelListbtn(i)">
<p>{{itme.value}}</p>
</div>
</div>
<p class="solid"></p>
</div>
</div>
</div>
<debtProject v-if="personnelHerf=='debtProject'" />
</div>
</template>
<script>
import debtProject from "./components/debtProject/index.vue";
export default {
name: 'radar',
components: { debtProject },
data() {
return {
// tablist
personnelList: [{
key: 'debtProject',
status: true,
value: '企业专项债项目',
},
{
key: 'Builder',
status: false,
value: '土地交易',
},
{
key: 'KeyPersonnel',
status: false,
value: '拟建项目',
},
{
key: 'KeyPersonnel',
status: false,
value: '招标计划',
},
{
key: 'KeyPersonnel',
status: false,
value: '标讯pro',
},
{
key: 'KeyPersonnel',
status: false,
value: '公招标讯',
},
{
key: 'KeyPersonnel',
status: false,
value: '开标记录',
},
],
personnelHerf:'debtProject'
}
},
created() {},
methods: {
personnelListbtn(index) {
for (var i = 0; i < this.personnelList.length; i++) {
this.personnelList[i].status = false;
}
this.personnelList[index].status = true;
},
}
}
</script>
<style lang="scss" scoped>
@import "~@/assets/styles/public.scss";
.app-container {
margin: 12px 24px;
padding: 0;
}
.content{
padding: 0px 16px;
background: #FFFFFF;
}
.app-container .combined-title {
display: flex;
padding-top: 16px;
align-items: center
}
.app-container .combined-title .title-icon {
display: inline-block;
width: 6px;
height: 26px;
background: #0081FF;
border-radius: 0px 0px 0px 0px;
opacity: 1;
margin-right: 18px;
}
.app-container .combined-title .title-right {
display: flex;
width: 1044px;
position: relative;
height: 40px;
}
.app-container .combined-title .title-right .title-text {
font-size: 16px;
font-weight: bold;
color: #333333;
line-height: 40px;
}
.app-container .combined-title .title-right .title-add {
color: #0081FF;
cursor: pointer;
position: absolute;
right: 0;
}
.app-container .combined-title .title-right .title-addyj {
top: 5px;
}
.app-container .combined-title .title-right .title-add .add-img {
position: relative;
top: -1px;
margin-right: 6px;
}
.app-container .combined-title .title-right .solid {
width: 100%;
height: 1px;
background-color: #EEEEEE;
position: absolute;
bottom: 0px;
left: 0;
z-index: 1;
}
.tab {
display: flex;
z-index: 2;
}
.tab_p_32 {
padding-right: 32px;
padding-left: 32px;
}
.tab div {
cursor: pointer;
color: #666666;
font-size: 14px;
text-align: center;
margin-right: 32px;
line-height: 40px;
}
.tab div p {
display: inline-block;
padding: 0px;
}
.tab div .logo {
color: #fff;
font-weight: 400;
font-size: 10px;
position: absolute;
top: -6px;
right: -24px;
display: inline-block;
line-height: 14px;
padding: 1px 2px;
text-align: center;
background: #3663DE;
border-radius: 2px 2px 2px 2px;
}
.tab div .triangle {
display: inline-block;
width: 0px;
height: 0px;
border-left: 3px solid transparent;
border-right: 3px solid transparent;
border-top: 4px solid #3663DE;
position: absolute;
top: 9.5px;
right: -3px;
}
.tab .active {
color: #0081FF;
}
.tab .active .triangle {
border-top: 4px solid #0081FF;
}
.tab .active .logo {
background: #0081FF;
}
.tab .active p {
border-bottom: 2px solid #0081FF;
font-weight: bold;
}
</style>
\ No newline at end of file
<template>
<div class="app-container">
监控列表
</div>
</template>
<script>
export default {
name: 'List',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<template>
<div class="app-container">
商机查询
</div>
</template>
<script>
export default {
name: 'Opportunity',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<template>
<div class="app-container">
监控动态
</div>
</template>
<script>
export default {
name: 'Trends',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<template>
<div class="app-container">
项目订阅
</div>
</template>
<script>
export default {
name: 'Subscription',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
<template>
<div class="app-container">
监控动态
</div>
</template>
<script>
export default {
name: 'Trends',
data() {
return {
}
},
created() {
},
methods: {
}
}
</script>
<style lang="scss" scoped>
</style>
package com.dsk.system.domain.vo;
import com.dsk.common.core.domain.entity.BusinessRelateCompany;
import lombok.Data;
import java.util.List;
/**
* @author lxl
* @Description:
......@@ -10,5 +13,90 @@ import lombok.Data;
@Data
public class BusinessBrowseVo {
/**
* 项目名称
*/
private String projectName;
/**
* 项目名称
*/
private Integer isPrivate;
/**
* 项目类型
*/
private String projectType;
/**
* 项目类别
*/
private String projectCategory;
/**
* 投资估算
*/
private Double investmentAmount;
/**
* 省
*/
private String provinceName;
/**
* 市
*/
private String cityName;
/**
* 区
*/
private String districtName;
/**
* 商务团队
*/
private String team;
/**
* 项目阶段
*/
private String projectStage;
/**
* 项目级别
*/
private String projectLevel;
/**
* 项目标签
*/
private List<String> labelList;
/**
* 关键企业
*/
private List<BusinessRelateCompany> relateCompany;
/**
* 联系人统计
*/
private Integer contactsCount;
/**
* 跟进记录统计
*/
private Integer followRecordCount;
/**
* 工作待办统计
*/
private Integer backlogCount;
/**
* 相关企业统计
*/
private Integer relateCompanyCount;
}
......@@ -21,12 +21,20 @@ public interface BusinessFollowRecordMapper
public BusinessFollowRecord selectBusinessFollowRecordById(Long id);
/**
* 查询项目跟进记录列表
* 分页查询项目跟进记录列表
*
* @param businessFollowRecord 项目跟进记录
* @return 项目跟进记录集合
*/
public List<BusinessFollowRecord> selectBusinessFollowRecordList(BusinessFollowRecord businessFollowRecord);
public List<BusinessFollowRecord> businessFollowRecordPaging(BusinessFollowRecord businessFollowRecord);
/**
* 根据项目id查询项目跟进记录
*
* @param businessId 项目id
* @return 项目跟进记录集合
*/
public List<BusinessFollowRecord> selectBusinessFollowRecordList(Integer businessId);
/**
* 新增项目跟进记录
......
......@@ -5,6 +5,7 @@ import com.dsk.common.core.domain.entity.BusinessInfo;
import com.dsk.system.domain.BusinessListDto;
import com.dsk.system.domain.customer.dto.CustomerBusinessSearchDto;
import com.dsk.system.domain.customer.vo.CustomerBusinessListVo;
import com.dsk.system.domain.vo.BusinessBrowseVo;
import com.dsk.system.domain.vo.BusinessListVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
......@@ -13,7 +14,7 @@ import java.util.List;
/**
* 项目详情Mapper接口
*
*
* @author lxl
* @date 2023-05-17
*/
......@@ -22,21 +23,29 @@ public interface BusinessInfoMapper extends BaseMapper<BusinessInfo>
{
/**
* 查询项目详情
*
*
* @param id 项目详情主键
* @return 项目详情
*/
public BusinessInfo selectBusinessInfoById(Long id);
public BusinessInfo selectBusinessInfoById(Integer id);
/**
* 查询项目建设内容
*
* @param id 项目详情主键
* @return
*/
BusinessInfo getConstruction(Integer id);
/**
* 查询所有项目名称(支持模糊查询)
* @return
*/
List<String> queryprojectName(BusinessListDto dto);
List<String> selectProjectName(BusinessListDto dto);
/**
* 查询项目详情列表
*
*
* @param dto 项目详情
* @return 项目详情集合
*/
......@@ -44,7 +53,7 @@ public interface BusinessInfoMapper extends BaseMapper<BusinessInfo>
/**
* 新增项目详情
*
*
* @param businessInfo 项目详情
* @return 结果
*/
......@@ -74,6 +83,15 @@ public interface BusinessInfoMapper extends BaseMapper<BusinessInfo>
*/
public int deleteBusinessInfoByIds(Long[] ids);
/**
* 根据项目统计
* @param business
* @return
*/
BusinessBrowseVo selectTotal(Integer business);
int selectCountByStatusAndCustomerId(@Param("status") Integer status,@Param("customerId") String customerId);
List<CustomerBusinessListVo> selectCustomerBusinessList(CustomerBusinessSearchDto dto);
......
......@@ -21,12 +21,20 @@ public interface IBusinessFollowRecordService
public BusinessFollowRecord selectBusinessFollowRecordById(Long id);
/**
* 查询项目跟进记录列表
* 根据项目id查询项目跟进记录
*
* @param businessId 项目跟进记录
* @return 项目跟进记录集合
*/
public List<BusinessFollowRecord> selectBusinessFollowRecordList(Integer businessId);
/**
* 分页查询项目跟进记录列表
*
* @param businessFollowRecord 项目跟进记录
* @return 项目跟进记录集合
*/
public List<BusinessFollowRecord> selectBusinessFollowRecordList(BusinessFollowRecord businessFollowRecord);
public List<BusinessFollowRecord> businessFollowRecordPaging(BusinessFollowRecord businessFollowRecord);
/**
* 新增项目跟进记录
......
......@@ -2,11 +2,11 @@ package com.dsk.system.service;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.entity.BusinessInfo;
import com.dsk.common.dtos.BusinessInfoDto;
import com.dsk.system.domain.BusinessAddDto;
import com.dsk.system.domain.BusinessListDto;
import com.dsk.system.domain.customer.dto.CustomerBusinessSearchDto;
import com.dsk.system.domain.customer.vo.CustomerBusinessListVo;
import com.dsk.system.domain.vo.BusinessBrowseVo;
import com.dsk.system.domain.vo.BusinessListVo;
import java.util.List;
......@@ -25,25 +25,40 @@ public interface IBusinessInfoService
* @param id 项目详情主键
* @return 项目详情
*/
public BusinessInfo selectBusinessInfoById(Long id);
public BusinessInfo selectBusinessInfoById(Integer id);
/**
* 查询项目详情列表
* 查询项目建设内容
*
* @param id 项目详情主键
* @return
*/
BusinessInfo getConstruction(Integer id);
/**
* 查询项目详情列表
*
* @param dto 项目详情
* @return 项目详情集合
*/
public List<BusinessListVo> selectBusinessInfoList(BusinessListDto dto);
/**
* 查询项目速览
* @param businessId
* @return
*/
BusinessBrowseVo browse(Integer businessId);
/**
* 查询所有项目名称(支持模糊查询)
* @return
*/
List<String> queryprojectName(BusinessListDto dto);
List<String> selectProjectName(BusinessListDto dto);
/**
* 新增项目详情
*
*
* @param dto 项目详情
* @return 结果
*/
......@@ -51,7 +66,7 @@ public interface IBusinessInfoService
/**
* 修改项目详情
*
*
* @param businessInfo 项目详情
* @return 结果
*/
......@@ -59,7 +74,7 @@ public interface IBusinessInfoService
/**
* 批量删除项目详情
*
*
* @param ids 需要删除的项目详情主键集合
* @return 结果
*/
......@@ -67,7 +82,7 @@ public interface IBusinessInfoService
/**
* 删除项目详情信息
*
*
* @param id 项目详情主键
* @return 结果
*/
......
......@@ -6,6 +6,7 @@ import com.dsk.system.mapper.BusinessBacklogMapper;
import com.dsk.system.service.IBusinessBacklogService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
......@@ -52,6 +53,7 @@ public class BusinessBacklogServiceImpl implements IBusinessBacklogService
* @return 结果
*/
@Override
@Transactional
public int insertBusinessBacklog(BusinessBacklog businessBacklog)
{
businessBacklog.setCreateTime(DateUtils.getNowDate());
......@@ -67,6 +69,7 @@ public class BusinessBacklogServiceImpl implements IBusinessBacklogService
* @return 结果
*/
@Override
@Transactional
public int updateBusinessBacklog(BusinessBacklog businessBacklog)
{
businessBacklog.setUpdateTime(DateUtils.getNowDate());
......
......@@ -3,11 +3,14 @@ package com.dsk.system.service.impl;
import java.util.List;
import com.dsk.common.core.domain.entity.BusinessContacts;
import com.dsk.common.exception.base.BaseException;
import com.dsk.common.utils.CheckUtils;
import com.dsk.common.utils.DateUtils;
import com.dsk.system.mapper.BusinessContactsMapper;
import com.dsk.system.service.IBusinessContactsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* 项目联系人Service业务层处理
......@@ -52,8 +55,10 @@ public class BusinessContactsServiceImpl implements IBusinessContactsService
* @return 结果
*/
@Override
@Transactional
public int insertBusinessContacts(BusinessContacts businessContacts)
{
if(!CheckUtils.isPhone(businessContacts.getPhone())) throw new BaseException("500","请输入正确的手机号码");
return businessContactsMapper.insertBusinessContacts(businessContacts);
}
......@@ -64,8 +69,10 @@ public class BusinessContactsServiceImpl implements IBusinessContactsService
* @return 结果
*/
@Override
@Transactional
public int updateBusinessContacts(BusinessContacts businessContacts)
{
if(!CheckUtils.isPhone(businessContacts.getPhone())) throw new BaseException("500","请输入正确的手机号码");
businessContacts.setUpdateTime(DateUtils.getNowDate());
return businessContactsMapper.updateBusinessContacts(businessContacts);
}
......
......@@ -8,6 +8,7 @@ import com.dsk.system.mapper.BusinessFollowRecordMapper;
import com.dsk.system.service.IBusinessFollowRecordService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* 项目跟进记录Service业务层处理
......@@ -33,16 +34,15 @@ public class BusinessFollowRecordServiceImpl implements IBusinessFollowRecordSer
return businessFollowRecordMapper.selectBusinessFollowRecordById(id);
}
/**
* 查询项目跟进记录列表
*
* @param businessFollowRecord 项目跟进记录
* @return 项目跟进记录
*/
@Override
public List<BusinessFollowRecord> selectBusinessFollowRecordList(BusinessFollowRecord businessFollowRecord)
public List<BusinessFollowRecord> selectBusinessFollowRecordList(Integer businessId)
{
return businessFollowRecordMapper.selectBusinessFollowRecordList(businessFollowRecord);
return businessFollowRecordMapper.selectBusinessFollowRecordList(businessId);
}
@Override
public List<BusinessFollowRecord> businessFollowRecordPaging(BusinessFollowRecord businessFollowRecord) {
return businessFollowRecordMapper.businessFollowRecordPaging(businessFollowRecord);
}
/**
......@@ -52,6 +52,7 @@ public class BusinessFollowRecordServiceImpl implements IBusinessFollowRecordSer
* @return 结果
*/
@Override
@Transactional
public int insertBusinessFollowRecord(BusinessFollowRecord businessFollowRecord)
{
return businessFollowRecordMapper.insertBusinessFollowRecord(businessFollowRecord);
......
......@@ -2,10 +2,12 @@ package com.dsk.system.service.impl;
import java.util.Arrays;
import java.util.List;
import java.util.stream.Collectors;
import cn.hutool.core.bean.BeanUtil;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.entity.BusinessInfo;
import com.dsk.common.core.domain.entity.BusinessLabel;
import com.dsk.common.core.domain.entity.BusinessRelateCompany;
import com.dsk.common.core.domain.entity.BusinessUser;
import com.dsk.common.dtos.BusinessInfoDto;
......@@ -15,8 +17,10 @@ import com.dsk.system.domain.BusinessAddDto;
import com.dsk.system.domain.BusinessListDto;
import com.dsk.system.domain.customer.dto.CustomerBusinessSearchDto;
import com.dsk.system.domain.customer.vo.CustomerBusinessListVo;
import com.dsk.system.domain.vo.BusinessBrowseVo;
import com.dsk.system.domain.vo.BusinessListVo;
import com.dsk.system.mapper.BusinessInfoMapper;
import com.dsk.system.mapper.BusinessLabelMapper;
import com.dsk.system.mapper.BusinessRelateCompanyMapper;
import com.dsk.system.mapper.BusinessUserMapper;
import com.dsk.system.service.IBusinessInfoService;
......@@ -40,6 +44,8 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
private BusinessUserMapper businessUserMapper;
@Resource
private BusinessRelateCompanyMapper businessRelateCompanyMapper;
@Resource
private BusinessLabelMapper businessLabelMapper;
/**
* 查询项目详情
......@@ -48,10 +54,15 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
* @return 项目详情
*/
@Override
public BusinessInfo selectBusinessInfoById(Long id) {
public BusinessInfo selectBusinessInfoById(Integer id) {
return businessInfoMapper.selectBusinessInfoById(id);
}
@Override
public BusinessInfo getConstruction(Integer id) {
return businessInfoMapper.getConstruction(id);
}
/**
* 查询项目详情列表
*
......@@ -64,8 +75,26 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
}
@Override
public List<String> queryprojectName(BusinessListDto dto) {
return businessInfoMapper.queryprojectName(dto);
public BusinessBrowseVo browse(Integer businessId) {
BusinessBrowseVo businessBrowseVo = new BusinessBrowseVo();
//查询项目基本信息
BusinessInfo businessInfo = businessInfoMapper.selectBusinessInfoById(businessId);
BeanUtil.copyProperties(businessInfo,businessBrowseVo);
//查询项目标签
businessBrowseVo.setLabelList(businessLabelMapper.selectBusinessLabelList(new BusinessLabel(businessId)).stream().map(p -> p.getLabel()).collect(Collectors.toList()));
//查询关键企业
businessBrowseVo.setRelateCompany(businessRelateCompanyMapper.selectBusinessRelateCompanyList(new BusinessRelateCompany(businessId)));
BusinessBrowseVo total = businessInfoMapper.selectTotal(businessId);
businessBrowseVo.setBacklogCount(total.getBacklogCount());
businessBrowseVo.setContactsCount(total.getContactsCount());
businessBrowseVo.setFollowRecordCount(total.getFollowRecordCount());
businessBrowseVo.setRelateCompanyCount(total.getRelateCompanyCount());
return businessBrowseVo;
}
@Override
public List<String> selectProjectName(BusinessListDto dto) {
return businessInfoMapper.selectProjectName(dto);
}
/**
......@@ -102,7 +131,9 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
* @return 结果
*/
@Override
public int updateBusinessInfo(BusinessInfo businessInfo) {
@Transactional
public int updateBusinessInfo(BusinessInfo businessInfo)
{
businessInfo.setUpdateTime(DateUtils.getNowDate());
return businessInfoMapper.updateBusinessInfo(businessInfo);
}
......@@ -114,6 +145,7 @@ public class BusinessInfoServiceImpl implements IBusinessInfoService {
* @return 结果
*/
@Override
@Transactional
public int deleteBusinessInfoByIds(Long[] ids) {
return businessInfoMapper.deleteBusinessInfoByIds(ids);
}
......
......@@ -9,6 +9,7 @@ import com.dsk.system.mapper.BusinessLabelMapper;
import com.dsk.system.service.IBusinessLabelService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
* 项目标签Service业务层处理
......@@ -53,6 +54,7 @@ public class BusinessLabelServiceImpl implements IBusinessLabelService
* @return 结果
*/
@Override
@Transactional
public int insertBusinessLabel(BusinessLabel businessLabel)
{
businessLabel.setCreateTime(DateUtils.getNowDate());
......@@ -91,6 +93,7 @@ public class BusinessLabelServiceImpl implements IBusinessLabelService
* @return 结果
*/
@Override
@Transactional
public int deleteBusinessLabelById(BusinessIdDto dto)
{
return businessLabelMapper.deleteBusinessLabelById(dto);
......
......@@ -4,12 +4,16 @@ import java.util.List;
import java.util.stream.Collectors;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.dsk.common.core.domain.AjaxResult;
import com.dsk.common.core.domain.entity.BusinessRelateCompany;
import com.dsk.common.exception.base.BaseException;
import com.dsk.common.utils.CheckUtils;
import com.dsk.common.utils.DateUtils;
import com.dsk.system.domain.BusinessIdDto;
import com.dsk.system.mapper.BusinessRelateCompanyMapper;
import com.dsk.system.service.IBusinessRelateCompanyService;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
......@@ -56,8 +60,10 @@ public class BusinessRelateCompanyServiceImpl implements IBusinessRelateCompanyS
* @return 结果
*/
@Override
@Transactional
public int insertBusinessRelateCompany(BusinessRelateCompany businessRelateCompany)
{
if(!CheckUtils.isPhone(businessRelateCompany.getPhone())) throw new BaseException("500","请输入正确的手机号码");
businessRelateCompany.setCreateTime(DateUtils.getNowDate());
return businessRelateCompanyMapper.insertBusinessRelateCompany(businessRelateCompany);
}
......@@ -69,8 +75,10 @@ public class BusinessRelateCompanyServiceImpl implements IBusinessRelateCompanyS
* @return 结果
*/
@Override
@Transactional
public int updateBusinessRelateCompany(BusinessRelateCompany businessRelateCompany)
{
if(!CheckUtils.isPhone(businessRelateCompany.getPhone())) throw new BaseException("500","请输入正确的手机号码");
businessRelateCompany.setUpdateTime(DateUtils.getNowDate());
return businessRelateCompanyMapper.updateBusinessRelateCompany(businessRelateCompany);
}
......
......@@ -43,6 +43,7 @@
<if test="accendant != null and accendant != ''">and accendant = #{accendant}</if>
<if test="creatTime != null ">and creat_time = #{creatTime}</if>
</where>
order by creat_time desc
</select>
<select id="selectBusinessContactsById" parameterType="Long" resultMap="BusinessContactsResult">
......
......@@ -33,10 +33,20 @@
from business_follow_record
</sql>
<select id="selectBusinessFollowRecordList" parameterType="com.dsk.common.core.domain.entity.BusinessFollowRecord">
<select id="selectBusinessFollowRecordList" resultType="com.dsk.common.core.domain.entity.BusinessFollowRecord">
select f.*,u.nick_name as nickName
from business_follow_record f
left join sys_user u on f.user_id = u.user_id
where f.business_id = #{businessId}
ORDER BY create_time DESC
</select>
<select id="selectBusinessFollowRecordById" parameterType="Long" resultMap="BusinessFollowRecordResult">
<include refid="selectBusinessFollowRecordVo"/>
where id = #{id}
</select>
<select id="businessFollowRecordPaging" resultType="com.dsk.common.core.domain.entity.BusinessFollowRecord">
<include refid="selectBusinessFollowRecordVo"></include>
<where>
<if test="businessId != null ">and f.business_id = #{businessId}</if>
<if test="userId != null ">and f.user_id = #{userId}</if>
......@@ -51,11 +61,6 @@
ORDER BY create_time DESC
</select>
<select id="selectBusinessFollowRecordById" parameterType="Long" resultMap="BusinessFollowRecordResult">
<include refid="selectBusinessFollowRecordVo"/>
where id = #{id}
</select>
<insert id="insertBusinessFollowRecord" parameterType="com.dsk.common.core.domain.entity.BusinessFollowRecord" useGeneratedKeys="true"
keyProperty="id">
insert into business_follow_record
......
......@@ -121,7 +121,7 @@
ORDER BY i.create_time DESC
</select>
<select id="queryprojectName" resultType="java.lang.String">
<select id="selectProjectName" resultType="java.lang.String">
SELECT *
FROM
(SELECT project_name as name FROM business_info) AS bu
......@@ -132,11 +132,26 @@
</where>
</select>
<select id="selectBusinessInfoById" parameterType="Long" resultMap="BusinessInfoResult">
<select id="selectBusinessInfoById" parameterType="integer" resultMap="BusinessInfoResult">
<include refid="selectBusinessInfoVo"/>
where id = #{id}
</select>
<select id="selectTotal" resultType="com.dsk.system.domain.vo.BusinessBrowseVo">
SELECT
count(DISTINCT c.id) contactsCount,
count(DISTINCT f.id) followRecordCount,
count(DISTINCT b.id) backlogCount,
count(DISTINCT r.id) relateCompanyCount
FROM
business_info i
LEFT JOIN business_contacts c on c.business_id = i.id
LEFT JOIN business_follow_record f on f.business_id = i.id
LEFT JOIN business_backlog b on b.business_id = i.id
LEFT JOIN business_relate_company r on r.business_id = i.id
WHERE i.id = #{business}
</select>
<insert id="insertBusinessInfo" parameterType="com.dsk.common.core.domain.entity.BusinessInfo" useGeneratedKeys="true" keyProperty="id">
insert into business_info
<trim prefix="(" suffix=")" suffixOverrides=",">
......@@ -255,4 +270,16 @@
<if test="status != null "> and bi.status = #{status}</if>
order by bi.create_time desc
</select>
<select id="getConstruction" resultType="com.dsk.common.core.domain.entity.BusinessInfo">
select
investment_amount,
amount_source,
plan_bid_time,
plan_start_time,
plan_complete_time,
build_property,
project_details
from business_info
where id = #{id}
</select>
</mapper>
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