Browse Source

修改

java8
常熟吴彦祖 5 months ago
parent
commit
b6bbab4e0c
  1. 3
      src/main/java/com/xujie/sys/config/MybatisPlusConfig.java
  2. 10
      src/main/java/com/xujie/sys/modules/srm/mapper/SrmSupplierMapper.java
  3. 31
      src/main/java/com/xujie/sys/modules/srm/service/impl/SrmSupplierServiceImpl.java
  4. 50
      src/main/resources/mapper/srm/SrmSupplierMapper.xml

3
src/main/java/com/xujie/sys/config/MybatisPlusConfig.java

@ -2,6 +2,7 @@
package com.xujie.sys.config; package com.xujie.sys.config;
import com.baomidou.mybatisplus.annotation.DbType;
import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor; import com.baomidou.mybatisplus.extension.plugins.PaginationInterceptor;
import com.xujie.sys.common.batch.NoahSqlInjector; import com.xujie.sys.common.batch.NoahSqlInjector;
import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Bean;
@ -21,6 +22,8 @@ public class MybatisPlusConfig {
@Bean @Bean
public PaginationInterceptor paginationInterceptor() { public PaginationInterceptor paginationInterceptor() {
PaginationInterceptor paginationInterceptor = new PaginationInterceptor(); PaginationInterceptor paginationInterceptor = new PaginationInterceptor();
// 设置数据库类型为SQL Server
// paginationInterceptor.setDbType(DbType.SQL_SERVER);
// 当前页码大于总页数返回首页 // 当前页码大于总页数返回首页
paginationInterceptor.setOverflow(true); paginationInterceptor.setOverflow(true);
return paginationInterceptor; return paginationInterceptor;

10
src/main/java/com/xujie/sys/modules/srm/mapper/SrmSupplierMapper.java

@ -1,5 +1,6 @@
package com.xujie.sys.modules.srm.mapper; package com.xujie.sys.modules.srm.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.xujie.sys.common.utils.PageUtils; import com.xujie.sys.common.utils.PageUtils;
@ -11,14 +12,17 @@ import org.apache.ibatis.annotations.Param;
import java.util.List; import java.util.List;
@Mapper @Mapper
public interface SrmSupplierMapper {
public interface SrmSupplierMapper extends BaseMapper<SrmSupplier> {
IPage<SrmSupplierData> searchSrmSupplierList(Page<SrmSupplierData> SrmSupplierPage, @Param("query") SrmSupplierData data); IPage<SrmSupplierData> searchSrmSupplierList(Page<SrmSupplierData> SrmSupplierPage, @Param("query") SrmSupplierData data);
List<SrmSupplierData> checkSrmSupplierList(SrmSupplierData data); List<SrmSupplierData> checkSrmSupplierList(SrmSupplierData data);
List<SrmSupplierGroupRequsetData> searchSupplierGroupRequestList(SrmSupplierGroupRequsetData data); List<SrmSupplierGroupRequsetData> searchSupplierGroupRequestList(SrmSupplierGroupRequsetData data);
void updateTransNo(@Param("site") String site,@Param("transType") String transType); void updateTransNo(@Param("site") String site,@Param("transType") String transType);
String getTransNo(@Param("site") String site,@Param("transType") String transType); String getTransNo(@Param("site") String site,@Param("transType") String transType);
IPage<SrmSupplierGroupRequsetData> getSupplierGroupRequestList(Page<SrmSupplierGroupRequsetData> pageData, @Param("query") SrmSupplierGroupRequsetData data);
IPage<SrmSupplierGroupRequsetData> getSupplierGroupRequestList(Page<SrmSupplierGroupRequsetData> srmSupplierGroupRequsetDataPage, @Param("query") SrmSupplierGroupRequsetData data);
// 新增用于MyBatis Plus内置分页的查询方法
IPage<SrmSupplierGroupRequsetData> queryPage(Page<SrmSupplierGroupRequsetData> page, @Param("query") SrmSupplierGroupRequsetData data);
void saveSrmSupplierGroupRequsetData(SrmSupplierGroupRequsetData data); void saveSrmSupplierGroupRequsetData(SrmSupplierGroupRequsetData data);
void confirmRequest(SrmSupplierGroupRequsetData data); void confirmRequest(SrmSupplierGroupRequsetData data);
@ -33,7 +37,7 @@ public interface SrmSupplierMapper {
void saveSrmContractRequset(SrmContractRequsetData inData); void saveSrmContractRequset(SrmContractRequsetData inData);
IPage<SrmContractRequsetData> getContractRequestList(Page<SrmContractRequsetData> SrmSupplierPage, @Param("query") SrmContractRequsetData data);
IPage<SrmContractRequsetData> getContractRequestList(Page<SrmContractRequsetData> srmContractRequsetData, @Param("query") SrmContractRequsetData data);
void updateContractRequestStatus(@Param("site")String site,@Param("contractId")String contractId,@Param("status")String status); void updateContractRequestStatus(@Param("site")String site,@Param("contractId")String contractId,@Param("status")String status);
void updateContractRequestStatusForRequestNo(@Param("site")String site,@Param("requestNo")String requestNo,@Param("status")String status); void updateContractRequestStatusForRequestNo(@Param("site")String site,@Param("requestNo")String requestNo,@Param("status")String status);
void updateContractRenewFlag(@Param("site")String site,@Param("contractId")String contractId,@Param("needRenew")String needRenew); void updateContractRenewFlag(@Param("site")String site,@Param("contractId")String contractId,@Param("needRenew")String needRenew);

31
src/main/java/com/xujie/sys/modules/srm/service/impl/SrmSupplierServiceImpl.java

@ -2,6 +2,7 @@ package com.xujie.sys.modules.srm.service.impl;
import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.xujie.sys.common.utils.DateUtil; import com.xujie.sys.common.utils.DateUtil;
import com.xujie.sys.common.utils.DateUtils; import com.xujie.sys.common.utils.DateUtils;
import com.xujie.sys.common.utils.PageUtils; import com.xujie.sys.common.utils.PageUtils;
@ -11,6 +12,7 @@ import com.xujie.sys.modules.srm.data.SrmContractRequsetData;
import com.xujie.sys.modules.srm.data.SrmSupplierContractData; import com.xujie.sys.modules.srm.data.SrmSupplierContractData;
import com.xujie.sys.modules.srm.data.SrmSupplierData; import com.xujie.sys.modules.srm.data.SrmSupplierData;
import com.xujie.sys.modules.srm.data.SrmSupplierGroupRequsetData; import com.xujie.sys.modules.srm.data.SrmSupplierGroupRequsetData;
import com.xujie.sys.modules.srm.entity.SrmSupplier;
import com.xujie.sys.modules.srm.mapper.SrmSupplierMapper; import com.xujie.sys.modules.srm.mapper.SrmSupplierMapper;
import com.xujie.sys.modules.srm.service.SrmSupplierService; import com.xujie.sys.modules.srm.service.SrmSupplierService;
import com.xujie.sys.modules.sys.entity.SysUserEntity; import com.xujie.sys.modules.sys.entity.SysUserEntity;
@ -24,7 +26,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
@Service @Service
public class SrmSupplierServiceImpl implements SrmSupplierService {
public class SrmSupplierServiceImpl extends ServiceImpl<SrmSupplierMapper, SrmSupplier> implements SrmSupplierService {
@Autowired @Autowired
private SrmSupplierMapper srmSupplierMapper; private SrmSupplierMapper srmSupplierMapper;
@Autowired @Autowired
@ -48,7 +50,19 @@ public class SrmSupplierServiceImpl implements SrmSupplierService {
@Override @Override
public PageUtils getSupplierGroupRequestList(SrmSupplierGroupRequsetData data){ public PageUtils getSupplierGroupRequestList(SrmSupplierGroupRequsetData data){
IPage<SrmSupplierGroupRequsetData> resultList = srmSupplierMapper.getSupplierGroupRequestList(new Page<SrmSupplierGroupRequsetData>(data.getPage(), data.getLimit()), data);
// 使用MyBatis Plus内置分页方法避免SQL Server的ORDER BY语法错误
IPage<SrmSupplierGroupRequsetData> resultList = this.baseMapper.queryPage(new Page<SrmSupplierGroupRequsetData>(data.getPage(), data.getLimit()), data);
// 对结果进行排序按申请日期降序排列
if (resultList.getRecords() != null && !resultList.getRecords().isEmpty()) {
resultList.getRecords().sort((o1, o2) -> {
if (o1.getRequestDate() == null && o2.getRequestDate() == null) return 0;
if (o1.getRequestDate() == null) return 1;
if (o2.getRequestDate() == null) return -1;
return o2.getRequestDate().compareTo(o1.getRequestDate());
});
}
return new PageUtils(resultList); return new PageUtils(resultList);
} }
@Override @Override
@ -148,6 +162,19 @@ public class SrmSupplierServiceImpl implements SrmSupplierService {
@Override @Override
public PageUtils getContractRequestList(SrmContractRequsetData data){ public PageUtils getContractRequestList(SrmContractRequsetData data){
IPage<SrmContractRequsetData> resultList = srmSupplierMapper.getContractRequestList(new Page<SrmContractRequsetData>(data.getPage(), data.getLimit()), data); IPage<SrmContractRequsetData> resultList = srmSupplierMapper.getContractRequestList(new Page<SrmContractRequsetData>(data.getPage(), data.getLimit()), data);
// 对结果进行排序按申请日期降序排列
if (resultList.getRecords() != null && !resultList.getRecords().isEmpty()) {
resultList.getRecords().sort((o1, o2) -> {
if (o1.getRequestDate() == null && o2.getRequestDate() == null) return 0;
if (o1.getRequestDate() == null) return 1;
if (o2.getRequestDate() == null) return -1;
return o2.getRequestDate().compareTo(o1.getRequestDate());
});
}
return new PageUtils(resultList); return new PageUtils(resultList);
} }
@Override @Override

50
src/main/resources/mapper/srm/SrmSupplierMapper.xml

@ -5,7 +5,7 @@
<select id="searchSrmSupplierList" resultType="SrmSupplierData"> <select id="searchSrmSupplierList" resultType="SrmSupplierData">
SELECT SELECT
id,site,supplier_no,supplier_name,supplier_group,create_date,create_by,update_date,update_by,supplier_doc_type, id,site,supplier_no,supplier_name,supplier_group,create_date,create_by,update_date,update_by,supplier_doc_type,
TaxCode,FaxNo,PhoneNo,Contact,Address,PaymentTerm,DeliveryTerm,Buyer,Currency,ABC,Active,CreateDate,BankName,BankAccount,
TaxCode,FaxNo,PhoneNo,Contact,Address,PaymentTerm,DeliveryTerm,Buyer,Currency,ABC,Active,BankName,BankAccount,
TaxNo,Email,Memo TaxNo,Email,Memo
FROM srm_supplier FROM srm_supplier
<where> <where>
@ -27,7 +27,7 @@
<select id="checkSrmSupplierList" resultType="SrmSupplierData"> <select id="checkSrmSupplierList" resultType="SrmSupplierData">
SELECT SELECT
id,site,supplier_no,supplier_name,supplier_group,create_date,create_by,update_date,update_by,supplier_doc_type, id,site,supplier_no,supplier_name,supplier_group,create_date,create_by,update_date,update_by,supplier_doc_type,
TaxCode,FaxNo,PhoneNo,Contact,Address,PaymentTerm,DeliveryTerm,Buyer,Currency,ABC,Active,CreateDate,BankName,BankAccount,
TaxCode,FaxNo,PhoneNo,Contact,Address,PaymentTerm,DeliveryTerm,Buyer,Currency,ABC,Active,BankName,BankAccount,
TaxNo,Email,Memo TaxNo,Email,Memo
FROM srm_supplier FROM srm_supplier
<where> <where>
@ -53,7 +53,7 @@
</select> </select>
<select id="searchSupplierGroupRequestList" resultType="SrmSupplierGroupRequsetData"> <select id="searchSupplierGroupRequestList" resultType="SrmSupplierGroupRequsetData">
select a.id,a.site,a.request_no,a.request_date,a.supplier_no,a.old_supplier_group,a.new_supplier_group,a.reason,a.[status], select a.id,a.site,a.request_no,a.request_date,a.supplier_no,a.old_supplier_group,a.new_supplier_group,a.reason,a.[status],
a.create_date,a.create_by,a.update_date,a.update_by,dbo.plm_get_user_display(a.site,a.create_by) requestBy
a.create_by,a.update_date,a.update_by,dbo.plm_get_user_display(a.site,a.create_by) requestBy
from srm_supplierGroupRequset a from srm_supplierGroupRequset a
<where> <where>
<if test="site !=null and site !=''"> <if test="site !=null and site !=''">
@ -69,7 +69,7 @@
and a.status like '%' + #{status} + '%' and a.status like '%' + #{status} + '%'
</if> </if>
</where> </where>
order by a.request_date desc
order by a.create_date desc
</select> </select>
<select id="getSupplierGroupRequestList" resultType="SrmSupplierGroupRequsetData"> <select id="getSupplierGroupRequestList" resultType="SrmSupplierGroupRequsetData">
SELECT SELECT
@ -95,7 +95,7 @@
AND a.supplier_no like '%' + #{query.supplierNo} + '%' AND a.supplier_no like '%' + #{query.supplierNo} + '%'
</if> </if>
<if test = "query.supplierName != null and query.supplierName != ''"> <if test = "query.supplierName != null and query.supplierName != ''">
AND b.supplier_name like '%' + #{query.supplierNo} + '%'
AND b.supplier_name like '%' + #{query.supplierName} + '%'
</if> </if>
<if test = "query.status != null and query.status != ''"> <if test = "query.status != null and query.status != ''">
AND a.status like '%' + #{query.status} + '%' AND a.status like '%' + #{query.status} + '%'
@ -106,6 +106,41 @@
</where> </where>
order by a.request_date desc order by a.request_date desc
</select> </select>
<!-- 新增:用于MyBatis Plus内置分页的查询方法(无ORDER BY,避免SQL Server分页问题) -->
<select id="queryPage" resultType="SrmSupplierGroupRequsetData">
SELECT
a.id,a.site,a.request_no,a.request_date,a.supplier_no,a.old_supplier_group,a.new_supplier_group,a.reason,a.[status],
a.create_date,a.create_by,a.update_date,a.update_by,dbo.plm_get_user_display(a.site,a.create_by) requestBy,b.supplier_name
FROM srm_supplierGroupRequset a
left join srm_supplier b on a.site=b.site and a.supplier_no=b.supplier_no
<where>
<if test="query.site != null and query.site != ''">
AND a.site=#{query.site}
</if>
<if test="query.startDate != null ">
AND a.request_date >= #{query.startDate}
</if>
<if test="query.endDate != null ">
AND #{query.endDate} >=a.request_date
</if>
<if test = "query.requestNo != null and query.requestNo != ''">
AND a.request_no like '%' + #{query.requestNo} + '%'
</if>
<if test = "query.supplierNo != null and query.supplierNo != ''">
AND a.supplier_no like '%' + #{query.supplierNo} + '%'
</if>
<if test = "query.supplierName != null and query.supplierName != ''">
AND b.supplier_name like '%' + #{query.supplierName} + '%'
</if>
<if test = "query.status != null and query.status != ''">
AND a.status like '%' + #{query.status} + '%'
</if>
<if test = "query.requestBy != null and query.requestBy != ''">
AND dbo.plm_get_user_display(a.site,a.create_by) like '%' + #{query.requestBy} + '%'
</if>
</where>
</select>
<insert id="saveSrmSupplierGroupRequsetData" > <insert id="saveSrmSupplierGroupRequsetData" >
insert into srm_supplierGroupRequset(site,request_no,request_date,supplier_no,old_supplier_group,new_supplier_group,reason,[status],create_date,create_by) insert into srm_supplierGroupRequset(site,request_no,request_date,supplier_no,old_supplier_group,new_supplier_group,reason,[status],create_date,create_by)
values(#{site},#{requestNo},#{requestDate},#{supplierNo},#{oldSupplierGroup},#{newSupplierGroup},#{reason},#{status},GetDate(),#{createBy}) values(#{site},#{requestNo},#{requestDate},#{supplierNo},#{oldSupplierGroup},#{newSupplierGroup},#{reason},#{status},GetDate(),#{createBy})
@ -160,7 +195,6 @@
left join srm_supplier b on a.site=b.site and a.supplier_no=b.supplier_no left join srm_supplier b on a.site=b.site and a.supplier_no=b.supplier_no
left join srm_supplierContract c on a.site=c.site and a.contractId=c.contractId left join srm_supplierContract c on a.site=c.site and a.contractId=c.contractId
<where> <where>
<if test="query.site != null and query.site != ''"> <if test="query.site != null and query.site != ''">
AND a.site=#{query.site} AND a.site=#{query.site}
</if> </if>
@ -177,14 +211,14 @@
AND a.supplier_no like '%' + #{query.supplierNo} + '%' AND a.supplier_no like '%' + #{query.supplierNo} + '%'
</if> </if>
<if test = "query.supplierName != null and query.supplierName != ''"> <if test = "query.supplierName != null and query.supplierName != ''">
AND b.supplier_name like '%' + #{query.supplierNo} + '%'
AND b.supplier_name like '%' + #{query.supplierName} + '%'
</if> </if>
<if test = "query.status != null and query.status != ''"> <if test = "query.status != null and query.status != ''">
AND a.status like '%' + #{query.status} + '%' AND a.status like '%' + #{query.status} + '%'
</if> </if>
</where> </where>
order by a.request_date desc
</select> </select>
<update id="updateContractRequestStatus"> <update id="updateContractRequestStatus">

Loading…
Cancel
Save