Administrator пре 4 година
родитељ
комит
eac1ea5eb1
19 измењених фајлова са 221 додато и 38 уклоњено
  1. 13 3
      ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java
  2. 13 0
      ruoyi-system/src/main/java/com/ruoyi/system/domain/project/BmProjectStatus.java
  3. 2 0
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmCompanyShareholderMapper.java
  4. 2 0
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmConstructionEqMapper.java
  5. 2 0
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmConstructionPayMapper.java
  6. 2 0
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmConstructionRateMapper.java
  7. 4 1
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmProjectInvestorMapper.java
  8. 2 0
      ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmProjectPersionMapper.java
  9. 123 25
      ruoyi-system/src/main/java/com/ruoyi/system/service/impl/project/BmProjectServiceImpl.java
  10. 5 0
      ruoyi-system/src/main/resources/mapper/system/project/BmCompanyShareholderMapper.xml
  11. 21 2
      ruoyi-system/src/main/resources/mapper/system/project/BmConstructionEqMapper.xml
  12. 1 1
      ruoyi-system/src/main/resources/mapper/system/project/BmConstructionPayInfoMapper.xml
  13. 8 2
      ruoyi-system/src/main/resources/mapper/system/project/BmConstructionPayMapper.xml
  14. 8 1
      ruoyi-system/src/main/resources/mapper/system/project/BmConstructionRateMapper.xml
  15. 1 1
      ruoyi-system/src/main/resources/mapper/system/project/BmProjectInfoMapper.xml
  16. 7 0
      ruoyi-system/src/main/resources/mapper/system/project/BmProjectInvestorMapper.xml
  17. 1 1
      ruoyi-system/src/main/resources/mapper/system/project/BmProjectOrderinfoMapper.xml
  18. 5 0
      ruoyi-system/src/main/resources/mapper/system/project/BmProjectPersionMapper.xml
  19. 1 1
      ruoyi-system/src/main/resources/mapper/system/project/BmProjectProductMapper.xml

+ 13 - 3
ruoyi-common/src/main/java/com/ruoyi/common/constant/Constants.java

@@ -128,16 +128,26 @@ public class Constants
     public static final String RESOURCE_PREFIX = "/profile";
 
     /**
-     * 提交审核
+     * 提交审核/同时是判断是否等于1的标志
      */
     public static final Long EXAMINE_COMMIT = 1L;
 
     /**
-     * 审核驳回
+     * 审核驳回/同时是判断是否等于2的标志
      */
     public static final Long EXAMINE_BACK = 2L;
     /**
-     * 审核通过
+     * 审核通过/同时是判断是否等于3的标志
      */
     public static final Long EXAMINE_PASS = 3L;
+
+    /**
+     * 判断是否等于5的标志
+     */
+    public static final Long EXAMINE_FIVE = 5L;
+    /**
+     * 判断是否等于7的标志
+     */
+    public static final Long EXAMINE_SEVEN = 7L;
+
 }

+ 13 - 0
ruoyi-system/src/main/java/com/ruoyi/system/domain/project/BmProjectStatus.java

@@ -17,6 +17,11 @@ public class BmProjectStatus {
     /** 项目id* */
     private Long bmProjectId;
 
+    /**
+     * 建议
+     */
+    private String remark;
+
     public Long getCode() {
         return code;
     }
@@ -32,4 +37,12 @@ public class BmProjectStatus {
     public void setBmProjectId(Long bmProjectId) {
         this.bmProjectId = bmProjectId;
     }
+
+    public String getRemark() {
+        return remark;
+    }
+
+    public void setRemark(String remark) {
+        this.remark = remark;
+    }
 }

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmCompanyShareholderMapper.java

@@ -20,6 +20,8 @@ public interface BmCompanyShareholderMapper
      */
     public BmCompanyShareholder selectBmCompanyShareholderById(Long id);
 
+    public BmCompanyShareholder selectBmCompanyShareholderByProjectId(Long projectId);
+
     /**
      * 查询注册企业股东构成列表
      * 

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmConstructionEqMapper.java

@@ -24,6 +24,8 @@ public interface BmConstructionEqMapper
      */
     public BmConstructionEq selectBmConstructionEqById(Long id);
 
+    public BmConstructionEq selectBmConstructionEqByProjectId(Long projectId);
+
     /**
      * 查询项目设备安装
 (最少一条记录)列表

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmConstructionPayMapper.java

@@ -27,6 +27,8 @@ public interface BmConstructionPayMapper
      */
     public BmConstructionPay selectBmConstructionPayById(Long id);
 
+    public BmConstructionPay selectBmConstructionPayByProjectId(Long project);
+
     /**
      * 查询项目到资
 (最少一条记录、合计、回写项目单)列表

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmConstructionRateMapper.java

@@ -20,6 +20,8 @@ public interface BmConstructionRateMapper
      */
     public BmConstructionRate selectBmConstructionRateById(Long id);
 
+    public BmConstructionRate selectBmConstructionRateByProjectId(Long projectId);
+
     /**
      * 查询项目施工进度列表
      * 

+ 4 - 1
ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmProjectInvestorMapper.java

@@ -19,7 +19,10 @@ public interface BmProjectInvestorMapper
      * @param bmProjectId 项目投资方-企业ID
      * @return 项目投资方-企业
      */
-    public BmProjectInvestor selectBmProjectInvestorById(Long bmProjectId);
+    public BmProjectInvestor selectBmProjectInvestorById(Long id);
+
+
+    public BmProjectInvestor selectBmProjectInvestorByProjectId(Long bmProjectId);
 
     /**
      * 查询项目投资方-企业列表

+ 2 - 0
ruoyi-system/src/main/java/com/ruoyi/system/mapper/project/BmProjectPersionMapper.java

@@ -20,6 +20,8 @@ public interface BmProjectPersionMapper
      */
     public BmProjectPersion selectBmProjectPersionById(Long id);
 
+    public BmProjectPersion selectBmProjectPersionByProjectId(Long id);
+
     /**
      * 查询项目投资方-自然人列表
      * 

+ 123 - 25
ruoyi-system/src/main/java/com/ruoyi/system/service/impl/project/BmProjectServiceImpl.java

@@ -11,11 +11,10 @@ import com.ruoyi.common.core.domain.model.LoginUser;
 import com.ruoyi.common.utils.DateUtils;
 import com.ruoyi.common.utils.SecurityUtils;
 import com.ruoyi.common.utils.StringUtils;
-import com.ruoyi.system.domain.project.BmProject;
-import com.ruoyi.system.domain.project.BmProjectStatus;
+import com.ruoyi.system.domain.project.*;
 import com.ruoyi.system.domain.vo.BmDeptPlanVo;
 import com.ruoyi.system.mapper.SysDictDataMapper;
-import com.ruoyi.system.mapper.project.BmProjectMapper;
+import com.ruoyi.system.mapper.project.*;
 import com.ruoyi.system.service.project.IBmProjectService;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
@@ -37,6 +36,40 @@ public class BmProjectServiceImpl implements IBmProjectService {
     @Autowired
     private SysDictDataMapper dictDataMapper;
 
+    @Autowired
+    private BmProjectInfoMapper bmProjectInfoMapper;
+
+    @Autowired
+    private BmProjectPersionMapper bmProjectPersionMapper;
+
+    @Autowired
+    private BmProjectInvestorMapper bmProjectInvestorMapper;
+
+    @Autowired
+    private BmCompanyShareholderMapper bmCompanyShareholderMapper;
+
+    @Autowired
+    private BmProjectOrderinfoMapper bmProjectOrderinfoMapper;
+
+    @Autowired
+    private BmProjectConstructionMapper bmProjectConstructionMapper;
+
+    @Autowired
+    private BmConstructionRateMapper bmConstructionRateMapper;
+
+    @Autowired
+    private BmConstructionEqMapper bmConstructionEqMapper;
+
+    @Autowired
+    private BmConstructionPayMapper bmConstructionPayMapper;
+
+    @Autowired
+    private BmConstructionPayInfoMapper bmConstructionPayInfoMapper;
+
+    @Autowired
+    private BmProjectProductMapper bmProjectProductMapper;
+
+
     /**
      * 查询项目(添加线索)
      *
@@ -140,16 +173,67 @@ public class BmProjectServiceImpl implements IBmProjectService {
             if (projectStatus.equals(EXAMINE_COMMIT) && code.equals(EXAMINE_BACK)) {
                 return AjaxResult.error("无法继续驳回");
             }
-           if((projectStatus & 1) == 0 && code.equals(EXAMINE_COMMIT) ){
-               //是偶数并且还是提交审核
-               return AjaxResult.error("正在等待审核");
-           }else if ((projectStatus & 1) == 1 && code.equals(EXAMINE_BACK)){
-               //是奇数并且还是驳回审核或者审核通过
-               return AjaxResult.error("当前已审核通过");
-           }else if ((projectStatus & 1) == 1 && code.equals(EXAMINE_PASS)){
-               //是奇数并且还是驳回审核或者审核通过
-               return AjaxResult.error("当前已审核通过");
-           }
+            if ((projectStatus & 1) == 0 && code.equals(EXAMINE_COMMIT)) {
+                //是偶数并且还是提交审核
+                return AjaxResult.error("正在等待审核");
+            } else if ((projectStatus & 1) == 1 && code.equals(EXAMINE_BACK)) {
+                //是奇数并且还是驳回审核
+                return AjaxResult.error("当前已审核通过");
+            } else if ((projectStatus & 1) == 1 && code.equals(EXAMINE_PASS)) {
+                //是奇数并且还是审核通过
+                return AjaxResult.error("当前已审核通过");
+            }
+
+            //如果是提交审核判断相应信息是否填写
+            if (code.equals(EXAMINE_COMMIT)) {
+                if (projectStatus.equals(EXAMINE_COMMIT)) {
+                    //当前是新增线索,然后提交线索,需要判断是否有对应的bm_project_info中id和bm_project_persion中id或者bm_project_investor中id
+                    BmProjectInfo bmProjectInfo = bmProjectInfoMapper.selectBmProjectInfoById(projectId);
+                    if (bmProjectInfo != null) {
+                        BmProjectInvestor bmProjectInvestor = bmProjectInvestorMapper.selectBmProjectInvestorByProjectId(projectId);
+                        BmProjectPersion bmProjectPersion = bmProjectPersionMapper.selectBmProjectPersionByProjectId(projectId);
+                        if (bmProjectInvestor == null && bmProjectPersion == null) {
+                            return AjaxResult.error("信息不全,请补全后重新提交");
+                        }
+                    } else {
+                        return AjaxResult.error("信息不全,请补全后重新提交");
+                    }
+                }
+                if (projectStatus.equals(EXAMINE_PASS)) {
+                    //提交签约审核申请,判断bm_company_shareholder和bm_project_orderinfo
+                    BmProjectOrderinfo bmProjectOrderinfo = bmProjectOrderinfoMapper.selectBmProjectOrderinfoById(projectId);
+                    if (bmProjectOrderinfo != null) {
+                        BmCompanyShareholder bmCompanyShareholder = bmCompanyShareholderMapper.selectBmCompanyShareholderByProjectId(projectId);
+                        if (bmCompanyShareholder == null) {
+                            return AjaxResult.error("信息不全,请补全后重新提交");
+                        }
+                    } else {
+                        return AjaxResult.error("信息不全,请补全后重新提交");
+                    }
+                }
+
+                if (projectStatus.equals(EXAMINE_FIVE)) {
+                    //提交在建信息审核申请
+                    //判断bm_project_construction/bm_construction_rate/bm_construction_eq/bm_construction_pay/bm_construction_payinfo
+                    BmProjectConstruction bmProjectConstruction = bmProjectConstructionMapper.selectBmProjectConstructionById(projectId);
+                    BmConstructionRate bmConstructionRate = bmConstructionRateMapper.selectBmConstructionRateById(projectId);
+                    BmConstructionEq bmConstructionEq = bmConstructionEqMapper.selectBmConstructionEqByProjectId(projectId);
+                    BmConstructionPay bmConstructionPay = bmConstructionPayMapper.selectBmConstructionPayByProjectId(projectId);
+                    BmConstructionPayInfo bmConstructionPayInfo = bmConstructionPayInfoMapper.selectBmConstructionPayInfoById(projectId);
+                    if (bmProjectConstruction == null || bmConstructionRate == null || bmConstructionEq == null || bmConstructionPay == null || bmConstructionPayInfo == null) {
+                        return AjaxResult.error("信息不全,请补全后重新提交");
+                    }
+                }
+
+                if (projectStatus.equals(EXAMINE_SEVEN)){
+                    //提交投产审核判断bm_project_product
+                    BmProjectProduct bmProjectProduct = bmProjectProductMapper.selectBmProjectProductById(projectId);
+                    if (bmProjectProduct == null){
+                        return AjaxResult.error("信息不全,请补全后重新提交");
+                    }
+                }
+            }
+
             //查询项目状态最多有多少个
             List<SysDictData> dictDataList = dictDataMapper.selectDictDataByType("project_status");
 
@@ -164,11 +248,21 @@ public class BmProjectServiceImpl implements IBmProjectService {
             BmProject bmProjectNew = new BmProject();
             bmProjectNew.setId(projectId);
             bmProjectNew.setProjectStatus(projectStatus);
-            if (dictDataList.size() > 0){
+            if (dictDataList.size() > 0) {
                 for (SysDictData sysDictData : dictDataList) {
-                    if (sysDictData.getDictValue().equals(projectStatus.toString())){
+                    if (sysDictData.getDictValue().equals(projectStatus.toString())) {
                         StringBuilder sb = new StringBuilder(DateUtils.getTime());
-                        sb.append("<br>").append("[").append(sysDictData.getDictLabel()).append("]");
+                        sb.append("<br>").append("[");
+                        if (code.equals(EXAMINE_BACK)){
+                            //如果是驳回,保存驳回建议
+                            String remark = bmProjectStatus.getRemark();
+                            if (StringUtils.isNotBlank(remark)){
+                                sb.append(remark);
+                            }
+                        }else {
+                            sb.append(sysDictData.getDictLabel());
+                        }
+                        sb.append("]");
                         bmProjectNew.setRemark(sb.toString());
                         break;
                     }
@@ -182,6 +276,7 @@ public class BmProjectServiceImpl implements IBmProjectService {
 
     /**
      * 首页查询待审核列表
+     *
      * @param bmProject
      * @return
      */
@@ -193,6 +288,7 @@ public class BmProjectServiceImpl implements IBmProjectService {
 
     /**
      * 统计分析公共查询列表
+     *
      * @param ids
      * @return
      */
@@ -204,48 +300,50 @@ public class BmProjectServiceImpl implements IBmProjectService {
 
     /**
      * 统计分析-在谈线索-柱状图
+     *
      * @param year
      * @return
      */
     @Override
     public Map<String, Object> selectProjectEharts(String year) {
         List<BmDeptPlanVo> bmDeptPlanVos = bmProjectMapper.selectProjectEharts(year);
-        Map<String, Object> map  = new HashMap<>(2);
+        Map<String, Object> map = new HashMap<>(2);
         List<String> deptName = new ArrayList<>();
         List<Integer> successMission = new ArrayList<>();
-        if (bmDeptPlanVos.size() > 0){
+        if (bmDeptPlanVos.size() > 0) {
             for (BmDeptPlanVo bmDeptPlanVo : bmDeptPlanVos) {
                 deptName.add(bmDeptPlanVo.getDeptName());
                 successMission.add(bmDeptPlanVo.getSuccessMission());
             }
         }
-        map.put("x",deptName);
-        map.put("y",successMission);
+        map.put("x", deptName);
+        map.put("y", successMission);
         return map;
     }
 
     /**
      * 统计分析-签约项目-柱状图
+     *
      * @param year
      * @return
      */
     @Override
     public Map<String, Object> selectProjectContractEharts(String year) {
         List<BmDeptPlanVo> bmDeptPlanVos = bmProjectMapper.selectProjectContractEharts(year);
-        Map<String, Object> map  = new HashMap<>(3);
+        Map<String, Object> map = new HashMap<>(3);
         List<String> deptName = new ArrayList<>();
         List<Integer> successMission = new ArrayList<>();
         List<BigDecimal> totAmt = new ArrayList<>();
-        if (bmDeptPlanVos.size() > 0){
+        if (bmDeptPlanVos.size() > 0) {
             for (BmDeptPlanVo bmDeptPlanVo : bmDeptPlanVos) {
                 deptName.add(bmDeptPlanVo.getDeptName());
                 successMission.add(bmDeptPlanVo.getSuccessMission());
                 totAmt.add(bmDeptPlanVo.getTotAmt());
             }
         }
-        map.put("x",deptName);
-        map.put("y1",successMission);
-        map.put("y2",totAmt);
+        map.put("x", deptName);
+        map.put("y1", successMission);
+        map.put("y2", totAmt);
         return map;
     }
 }

+ 5 - 0
ruoyi-system/src/main/resources/mapper/system/project/BmCompanyShareholderMapper.xml

@@ -42,6 +42,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectBmCompanyShareholderVo"/>
         where id = #{id}
     </select>
+
+    <select id="selectBmCompanyShareholderByProjectId" parameterType="Long" resultMap="BmCompanyShareholderResult">
+        <include refid="selectBmCompanyShareholderVo"/>
+        where bm_project_id = #{id} limit 1
+    </select>
         
     <insert id="insertBmCompanyShareholder" parameterType="BmCompanyShareholder" useGeneratedKeys="true" keyProperty="id">
         insert into bm_company_shareholder

+ 21 - 2
ruoyi-system/src/main/resources/mapper/system/project/BmConstructionEqMapper.xml

@@ -44,7 +44,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </where>
         order by e.create_time DESC
     </select>
-    
+
+
     <select id="selectBmConstructionEqById" parameterType="Long" resultMap="BmConstructionEqResult">
         SELECT
         e.id,
@@ -60,7 +61,25 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         FROM
         bm_construction_eq e
         LEFT JOIN sys_dict_data d on e.eq_type = d.dict_value and d.dict_type = 'project_schedule'
-        where e.bm_project_id = #{id}
+        where e.id = #{id}
+    </select>
+
+    <select id="selectBmConstructionEqByProjectId" parameterType="Long" resultMap="BmConstructionEqResult">
+        SELECT
+        e.id,
+        e.bm_project_id,
+        e.create_by,
+        e.create_time,
+        e.update_by,
+        e.update_time,
+        e.is_del,
+        e.eq_type,
+        e.photo,
+        d.dict_label as eqTypeName
+        FROM
+        bm_construction_eq e
+        LEFT JOIN sys_dict_data d on e.eq_type = d.dict_value and d.dict_type = 'project_schedule'
+        where e.bm_project_id = #{projectId} limit 1
     </select>
         
     <insert id="insertBmConstructionEq" parameterType="BmConstructionEq" useGeneratedKeys="true" keyProperty="id">

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/project/BmConstructionPayInfoMapper.xml

@@ -34,7 +34,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     
     <select id="selectBmConstructionPayInfoById" parameterType="Long" resultMap="BmConstructionPayInfoResult">
         <include refid="selectBmConstructionPayInfoVo"/>
-        where bm_project_id = #{id}
+        where bm_project_id = #{id} limit 1
     </select>
         
     <insert id="insertBmConstructionPayInfo" parameterType="BmConstructionPayInfo" useGeneratedKeys="true" keyProperty="id">

+ 8 - 2
ruoyi-system/src/main/resources/mapper/system/project/BmConstructionPayMapper.xml

@@ -34,12 +34,18 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         </where>
         order by p.create_time DESC
     </select>
-    
+
     <select id="selectBmConstructionPayById" parameterType="Long" resultMap="BmConstructionPayResult">
         select p.id, p.bm_project_id, p.create_by, p.create_time, p.update_by, p.update_time, p.is_del, p.pay_for_type, p.pay_for_money,  p.photo, d.dict_label as payForTypeName
         from bm_construction_pay p
         left join sys_dict_data d on p.pay_for_type = d.dict_value and d.dict_type = 'project_pay'
-        where p.bm_project_id = #{id}
+        where p.id = #{id}
+    </select>
+    <select id="selectBmConstructionPayByProjectId" parameterType="Long" resultMap="BmConstructionPayResult">
+        select p.id, p.bm_project_id, p.create_by, p.create_time, p.update_by, p.update_time, p.is_del, p.pay_for_type, p.pay_for_money,  p.photo, d.dict_label as payForTypeName
+        from bm_construction_pay p
+        left join sys_dict_data d on p.pay_for_type = d.dict_value and d.dict_type = 'project_pay'
+        where p.bm_project_id = #{project}
     </select>
         
     <insert id="insertBmConstructionPay" parameterType="BmConstructionPay">

+ 8 - 1
ruoyi-system/src/main/resources/mapper/system/project/BmConstructionRateMapper.xml

@@ -38,7 +38,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         select r.id, r.bm_project_id, r.create_by, r.create_time, r.update_by, r.update_time, r.is_del, r.rate_type, r.photo, d.dict_label as rateTypeName
         from bm_construction_rate r
         left join sys_dict_data d on r.rate_type = d.dict_value and d.dict_type = 'project_rate'
-        where id = #{id}
+        where r.id = #{id}
+    </select>
+
+    <select id="selectBmConstructionRateByProjectId" parameterType="Long" resultMap="BmConstructionRateResult">
+        select r.id, r.bm_project_id, r.create_by, r.create_time, r.update_by, r.update_time, r.is_del, r.rate_type, r.photo, d.dict_label as rateTypeName
+        from bm_construction_rate r
+        left join sys_dict_data d on r.rate_type = d.dict_value and d.dict_type = 'project_rate'
+        where r.bm_project_id = #{projectId} limit 1
     </select>
         
     <insert id="insertBmConstructionRate" parameterType="BmConstructionRate" useGeneratedKeys="true" keyProperty="id">

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/project/BmProjectInfoMapper.xml

@@ -131,7 +131,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
 	bm_project_info i
 	LEFT JOIN bm_project_referral r ON i.bm_project_id = r.bm_project_id
 	AND i.is_del = '0'
-        where i.bm_project_id = #{id}
+        where i.bm_project_id = #{id} limit 1
     </select>
         
     <insert id="insertBmProjectInfo" parameterType="BmProjectInfo" useGeneratedKeys="true" keyProperty="id">

+ 7 - 0
ruoyi-system/src/main/resources/mapper/system/project/BmProjectInvestorMapper.xml

@@ -42,6 +42,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectBmProjectInvestorVo"/>
         where id = #{id}
     </select>
+
+    <select id="selectBmProjectInvestorByProjectId" parameterType="Long" resultMap="BmProjectInvestorResult">
+        <include refid="selectBmProjectInvestorVo"/>
+        where bm_project_id = #{id} limit 1
+    </select>
+
+
         
     <insert id="insertBmProjectInvestor" parameterType="BmProjectInvestor" useGeneratedKeys="true" keyProperty="id">
         insert into bm_project_investor

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/project/BmProjectOrderinfoMapper.xml

@@ -127,7 +127,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     
     <select id="selectBmProjectOrderinfoById" parameterType="Long" resultMap="BmProjectOrderinfoResult">
         <include refid="selectBmProjectOrderinfoVo"/>
-        where bm_project_id = #{id}
+        where bm_project_id = #{id} limit 1
     </select>
         
     <insert id="insertBmProjectOrderinfo" parameterType="BmProjectOrderinfo" useGeneratedKeys="true" keyProperty="id">

+ 5 - 0
ruoyi-system/src/main/resources/mapper/system/project/BmProjectPersionMapper.xml

@@ -40,6 +40,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         <include refid="selectBmProjectPersionVo"/>
         where id = #{id}
     </select>
+
+    <select id="selectBmProjectPersionByProjectId" parameterType="Long" resultMap="BmProjectPersionResult">
+        <include refid="selectBmProjectPersionVo"/>
+        where bm_project_id = #{id} limit 1
+    </select>
         
     <insert id="insertBmProjectPersion" parameterType="BmProjectPersion" useGeneratedKeys="true" keyProperty="id">
         insert into bm_project_persion

+ 1 - 1
ruoyi-system/src/main/resources/mapper/system/project/BmProjectProductMapper.xml

@@ -42,7 +42,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
     
     <select id="selectBmProjectProductById" parameterType="Long" resultMap="BmProjectProductResult">
         <include refid="selectBmProjectProductVo"/>
-        where bm_project_id = #{id}
+        where bm_project_id = #{id} limit 1
     </select>
         
     <insert id="insertBmProjectProduct" parameterType="BmProjectProduct" useGeneratedKeys="true" keyProperty="id">