fix(sip): 修复项目信息和订单信息中 BG 和行业数据源问题

- 更新项目信息和订单信息页面中 BG 和行业选择框的样式
- 移除只读属性,允许用户选择 BG 和行业
- 更新 SQL 查询,使用项目信息表中的 BG 和行业字段
- 修复订单信息中更新项目 BG 和行业的问题
master
chenhao 2025-07-03 17:17:23 +08:00
parent 4a44e1391d
commit 99c496e9a8
8 changed files with 72 additions and 51 deletions

View File

@ -95,9 +95,9 @@
label {
margin-bottom: 0 !important;
}
[name="bgProperty"], #industryTypeBox select {
pointer-events: none;
}
/*[name="bgProperty"], #industryTypeBox select {*/
/* pointer-events: none;*/
/*}*/
</style>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
@ -118,7 +118,7 @@
<td class="shortTd">BG</td>
<td class="inputTd">
<select name="bgProperty" class="form-control" th:with="type=${@dict.getType('bg_type')}"
onchange="changeBg()" readonly >
onchange="changeBg()" >
<option value="">请选择BG</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}"
th:value="${dict.dictValue}"></option>
@ -449,9 +449,9 @@
$('[name="customerName"]').val(rows[0].customerName);
$('[name="customerUserName"]').val(rows[0].contactPerson);
$('[name="customerPhone"]').val(rows[0].contactPhone);
$('[name="bgProperty"]').val(rows[0].bgProperty);
changeBg()
$('[name="industryType"]').val(rows[0].industryType);
// $('[name="bgProperty"]').val(rows[0].bgProperty);
// changeBg()
// $('[name="industryType"]').val(rows[0].industryType);
$.modal.close(index);
}
@ -581,7 +581,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" readonly class="form-control" required>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>
@ -593,7 +593,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" class="form-control" readonly required>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>

View File

@ -103,9 +103,9 @@
.white-bg{
padding: 0px 50px;
}
[name="bgProperty"], #industryTypeBox select {
pointer-events: none;
}
/*[name="bgProperty"], #industryTypeBox select {*/
/* pointer-events: none;*/
/*}*/
</style>
<body class="white-bg">
<div class="wrapper wrapper-content animated fadeInRight ibox-content">
@ -133,7 +133,7 @@
<td class="inputTd">
<select name="bgProperty" th:field="*{bgProperty}" class="form-control"
th:with="type=${@dict.getType('bg_type')}"
onchange="changeBg()" readonly >
onchange="changeBg()" >
<option value="">请选择BG</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}"
th:value="${dict.dictValue}"></option>
@ -141,7 +141,7 @@
</td>
<td class="shortTd">行业</td>
<td id="industryTypeBox" class="inputTd">
<select name="industryType" readonly th:field="*{industryType}" class="form-control"
<select name="industryType" th:field="*{industryType}" class="form-control"
>
<option value="">请先选择BG</option>
</select>
@ -513,9 +513,9 @@
$('[name="customerName"]').val(rows[0].customerName);
$('[name="customerUserName"]').val(rows[0].contactPerson);
$('[name="customerPhone"]').val(rows[0].contactPhone);
$('[name="bgProperty"]').val(rows[0].bgProperty);
changeBg()
$('[name="industryType"]').val(rows[0].industryType);
// $('[name="bgProperty"]').val(rows[0].bgProperty);
// changeBg()
// $('[name="industryType"]').val(rows[0].industryType);
$.modal.close(index);
}
@ -657,7 +657,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" class="form-control" readonly required>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>
@ -669,7 +669,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" class="form-control" readonly required>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>

View File

@ -79,9 +79,9 @@
position: relative;
}
[name="bgProperty"], #industryTypeBox select {
pointer-events: none;
}
/*[name="bgProperty"], #industryTypeBox select {*/
/* pointer-events: none;*/
/*}*/
#projectNameBox {
margin-left: 20px;
@ -137,19 +137,19 @@
<input name="customerCode" class="form-control" type="hidden"></td>
</tr>
<tr>
<td>BG<span class="is-required">*</span></td>
<td>BG</td>
<td>
<select name="bgProperty" class="form-control" th:with="type=${@dict.getType('bg_type')}"
readonly required>
onchange="changeBg()">
<option value="">请选择BG</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}"
th:value="${dict.dictValue}"></option>
</select>
</td>
<td>行业<span class="is-required">*</span></td>
<td>行业</td>
<td id="industryTypeBox">
<select name="industryType" class="form-control"
required readonly>
>
<option value="">请先选择BG</option>
</select>
</td>
@ -665,7 +665,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" class="form-control" readonly required>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>
@ -677,7 +677,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" class="form-control" required readonly>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>

View File

@ -73,9 +73,9 @@
position: relative;
}
[name="bgProperty"], #industryTypeBox select {
pointer-events: none;
}
/*[name="bgProperty"], #industryTypeBox select {*/
/* pointer-events: none;*/
/*}*/
#projectNameBox {
margin-left: 20px;
@ -138,8 +138,8 @@
<tr>
<td>BG</td>
<td>
<select name="bgProperty" class="form-control" th:field="*{bgProperty}" readonly
th:with="type=${@dict.getType('bg_type')}"
<select name="bgProperty" class="form-control" th:field="*{bgProperty}"
th:with="type=${@dict.getType('bg_type')}" onchange="changeBg()"
>
<option value="">请选择BG</option>
<option th:each="dict : ${type}" th:text="${dict.dictLabel}"
@ -148,7 +148,7 @@
</td>
<td>行业</td>
<td id="industryTypeBox">
<select name="industryType" class="form-control" readonly
<select name="industryType" class="form-control"
>
<option value="">请先选择BG</option>
</select>
@ -701,7 +701,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" readonly class="form-control" required>
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>
@ -713,7 +713,7 @@
str += `<option value="${ele.dictValue}">${ele.dictLabel}</option> `
})
$('#industryTypeBox').html(`
<select name="industryType" readonly class="form-control" required >
<select name="industryType" class="form-control" >
<option value="">请选择行业</option>
${str}
</select>

View File

@ -7,6 +7,9 @@
.select-list li p, .select-list li label:not(.radio-box){
width: 95px;
}
.bootstrap-table table {
table-layout: fixed;
}
</style>
<body class="gray-bg">
<div class="container-div">
@ -68,12 +71,13 @@
<i class="fa fa-download"></i> 导出
</a>
</div>
<div class="col-sm-12 select-table table-striped">
<div class="col-sm-12 select-table table-striped table-responsive" >
<table id="bootstrap-table"></table>
</div>
</div>
</div>
<th:block th:include="include :: footer"/>
<th:block th:include="include :: bootstrap-table-fixed-columns-js" />
<th:block th:include="include :: jquery-cxselect-js"/>
<script th:inline="javascript">
@ -89,6 +93,9 @@
removeUrl: prefix + "/remove",
exportUrl: prefix + "/export",
modalName: "客户信息",
minWidth: 100,
fixedColumns:true,
fixedRightNumber:1,
columns: [{
checkbox: true
},
@ -98,42 +105,52 @@
visible: false
},
{
width:100,
field: 'customerCode',
title: '客户编码'
},
{
width:200,
field: 'customerName',
title: '最终客户名称'
},
{
width:100,
field: 'customerPostcode',
title: '客户邮编'
},
{
width:100,
field: 'province',
title: '所在省'
},
{
width:100,
field: 'city',
title: '所在市'
},
{
width:200,
field: 'address',
title: '详细地址'
},
{
width:100,
field: 'contactPerson',
title: '联系人'
},
{
width:100,
field: 'contactPhone',
title: '联系电话'
},
{
width:100,
field: 'contactEmail',
title: '联系邮件'
},
{
width:100,
field: 'bgProperty',
title: '所属行业',
formatter: (value, row) => {
@ -141,6 +158,7 @@
}
},
{
width:100,
field: 'industryType',
title: '所属行业',
formatter: (value, row) => {
@ -153,10 +171,12 @@
}
},
{
width:100,
field: 'remark',
title: '备注'
},
{
width:100,
field: 'createAt',
title: '创建时间'
},
@ -169,6 +189,7 @@
// title: '删除时间'
// },
{
width:150,
title: '操作',
align: 'center',
formatter: function (value, row, index) {

View File

@ -216,13 +216,13 @@ public class ProjectOrderInfoServiceImpl implements IProjectOrderInfoService {
// projectOrderInfo.setOrderCode(orderNumber);
// }
//更新BG属性
// ProjectInfo projectInfo = new ProjectInfo();
// projectInfo.setId(projectOrderInfo.getProjectId());
// projectInfo.setBgProperty(projectOrderInfo.getBgProperty());
// projectInfo.setIndustryType(projectOrderInfo.getIndustryType());
// projectInfo.setUpdateBy(ShiroUtils.getUserId().toString());
// projectInfo.setUpdateTime(DateUtils.getNowDate());
// projectInfoMapper.updateProjectInfo(projectInfo);
ProjectInfo projectInfo = new ProjectInfo();
projectInfo.setId(projectOrderInfo.getProjectId());
projectInfo.setBgProperty(projectOrderInfo.getBgProperty());
projectInfo.setIndustryType(projectOrderInfo.getIndustryType());
projectInfo.setUpdateBy(ShiroUtils.getUserId().toString());
projectInfo.setUpdateTime(DateUtils.getNowDate());
projectInfoMapper.updateProjectInfo(projectInfo);
//不更新订单编号
projectOrderInfo.setOrderCode(null);

View File

@ -43,10 +43,10 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
select t1.id,
t1.project_code,
t1.project_name,
t5.bg_property,
t1.bg_property,
t1.customer_code,
t1.customer_name,
t5.industry_type,
t1.industry_type,
t1.agent_code,
t1.project_stage,
t1.project_grasp_degree,
@ -76,7 +76,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
left join agent_info t2 on t1.agent_code = t2.agent_code
left join sys_user t3 on t1.hz_support_user=t3.user_id
left join (select max(work_time) work_time,project_id from project_work_progress group by project_id) t4 ON t1.id=t4.project_id
left join customer_info t5 on t1.customer_code=t5.customer_code
</sql>
@ -90,8 +90,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
<if test="agentCode != null and agentCode != ''"> and t1.agent_code = #{agentCode}</if>
<if test="agentName != null and agentName != ''"> and t2.agent_name like concat('%', #{agentName}, '%')</if>
<if test="customerName != null and customerName != ''"> and t1.customer_name like concat('%', #{customerName}, '%')</if>
<if test="industryType != null and industryType != ''"> and t5.industry_type = #{industryType}</if>
<if test="bgProperty != null and bgProperty != ''"> and t5.bg_property = #{bgProperty}</if>
<if test="industryType != null and industryType != ''"> and t1.industry_type = #{industryType}</if>
<if test="bgProperty != null and bgProperty != ''"> and t1.bg_property = #{bgProperty}</if>
<if test="projectStage != null and projectStage != ''"> and t1.project_stage = #{projectStage}</if>
<if test="projectGraspDegree != null and projectGraspDegree != ''"> and t1.project_grasp_degree = #{projectGraspDegree}</if>

View File

@ -47,14 +47,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
t1.notifier_email, t1.notifier_phone, t1.duty, t1.duty_email, t1.duty_phone, t1.order_channel, t1.partner_code, t1.supplier,
t1.remark, t1.order_status, t1.create_by, t1.create_time, t1.update_by, t1.update_time,t1.partner_user_name,t1.partner_email
,t1.partner_phone,t1.version_code
,t2.project_code,t2.project_name,t2.province,t2.customer_name,t2.customer_code,t6.industry_type,t6.bg_property,t2.agent_code,t2.estimated_order_time
,t2.project_code,t2.project_name,t2.province,t2.customer_name,t2.customer_code,t2.industry_type,t2.bg_property,t2.agent_code,t2.estimated_order_time
,t2.customer_phone,t2.customer_user_name,t2.agent_code,t2.customer_code
,t3.partner_name,t3.level
,t4.agent_name
,t5.user_name as duty_name
from project_order_info t1
left join project_info t2 on t1.project_id = t2.id
left join customer_info t6 on t2.customer_code=t6.customer_code
left join partner_info t3 on t1.partner_code=t3.partner_code
left join agent_info t4 on t2.agent_code=t4.agent_code
left join sys_user t5 on t1.duty=t5.user_id