Sfoglia il codice sorgente

临时计划 审批模块

sunhh 2 anni fa
parent
commit
890090b363

+ 57 - 21
purchase-admin/src/main/java/com/ozs/web/controller/plan/ProvisionalPlanController.java

@@ -3,6 +3,7 @@ package com.ozs.web.controller.plan;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.github.pagehelper.PageInfo;
 import com.ozs.common.annotation.Log;
 import com.ozs.common.constant.ModularConstans;
 import com.ozs.common.core.controller.BaseController;
@@ -65,20 +66,24 @@ public class ProvisionalPlanController extends BaseController {
         return toAjax(provisionalPlanService.save(provisionalPlan));
     }
 
-    @ApiOperation(value = "删除临时计划", notes = "必传 plan_year_id")
+    @ApiOperation(value = "删除临时计划", notes = "必传 plan_practical_id")
     @PostMapping("/deleteProvisionalPlan")
+    @PreAuthorize("@ss.hasPermi('base:provisionalPlan:deleteProvisionalPlan')")
+    @Log(title = ModularConstans.policy, businessType = BusinessType.DELETE)
     public AjaxResult deleteProvisionalPlan(@RequestBody ProvisionalPlan provisionalPlan) {
-        if (StringUtils.isNull(provisionalPlan) || StringUtils.isNull(provisionalPlan.getPlanYearId())) {
-            return error("专家库id不能为空");
+        if (StringUtils.isNull(provisionalPlan) || StringUtils.isNull(provisionalPlan.getPlanPracticalId())) {
+            return error("临时计划id不能为空");
         }
-        return toAjax(provisionalPlanService.deleteProvisionalPlanById(provisionalPlan.getPlanYearId()));
+        return toAjax(provisionalPlanService.deleteProvisionalPlanById(provisionalPlan.getPlanPracticalId()));
     }
 
     @ApiOperation(value = "修改临时计划", notes = "必传 plan_year_id 及修改数据")
     @PostMapping("/updateProvisionalPlan")
+    @PreAuthorize("@ss.hasPermi('base:provisionalPlan:updateProvisionalPlan')")
+    @Log(title = ModularConstans.policy, businessType = BusinessType.UPDATE)
     public AjaxResult updateProvisionalPlan(@RequestBody ProvisionalPlan provisionalPlan) {
-        if (StringUtils.isNull(provisionalPlan) || StringUtils.isNull(provisionalPlan.getPlanYearId())) {
-            return error("专家库id和修改数据不能为空");
+        if (StringUtils.isNull(provisionalPlan) || StringUtils.isNull(provisionalPlan.getPlanPracticalId())) {
+            return error("临时计划id和修改数据不能为空");
         }
         return toAjax(provisionalPlanService.updateProvisionalPlanById(provisionalPlan));
     }
@@ -86,27 +91,46 @@ public class ProvisionalPlanController extends BaseController {
     @ApiOperation(value = "查询临时计划")
     @PostMapping("/selectProvisionalPlan")
     public AjaxResult selectProvisionalPlan(@RequestBody ProvisionalPlanVo provisionalPlanVo) {
-        LambdaQueryWrapper<ProvisionalPlan> lw = new LambdaQueryWrapper<ProvisionalPlan>();
-        // planType计划类型(0:季度计划,1:临时计划)
-        lw.eq(ProvisionalPlan::getPlanType, "1");
-        if (!StringUtils.isBlank(provisionalPlanVo.getProjectName())) {
-            lw.like(ProvisionalPlan::getProjectName, provisionalPlanVo.getProjectName());
-        }
-        if (!StringUtils.isBlank(provisionalPlanVo.getPurchaseServices())) {
-            lw.eq(ProvisionalPlan::getPurchaseServices, provisionalPlanVo.getPurchaseServices());
-        }
-        if (!ObjectUtils.isEmpty(provisionalPlanVo.getProjectStatus())) {
-            lw.eq(ProvisionalPlan::getProjectStatus, provisionalPlanVo.getProjectStatus());
+//        LambdaQueryWrapper<ProvisionalPlan> lw = new LambdaQueryWrapper<ProvisionalPlan>();
+//        // planType计划类型(0:季度计划,1:临时计划)
+//        lw.eq(ProvisionalPlan::getPlanType, "1");
+//        if (!StringUtils.isBlank(provisionalPlanVo.getProjectName())) {
+//            lw.like(ProvisionalPlan::getProjectName, provisionalPlanVo.getProjectName());
+//        }
+//        if (!StringUtils.isBlank(provisionalPlanVo.getPurchaseServices())) {
+//            lw.eq(ProvisionalPlan::getPurchaseServices, provisionalPlanVo.getPurchaseServices());
+//        }
+//        if (!ObjectUtils.isEmpty(provisionalPlanVo.getProjectStatus())) {
+//            lw.eq(ProvisionalPlan::getProjectStatus, provisionalPlanVo.getProjectStatus());
+//        }
+//        if (!ObjectUtils.isEmpty(provisionalPlanVo.getStartTime()) || !ObjectUtils.isEmpty(provisionalPlanVo.getEndTime())) {
+//            lw.between(ProvisionalPlan::getPlanDemandSubTime, provisionalPlanVo.getStartTime(), provisionalPlanVo.getEndTime());
+//        }
+//        IPage<ProvisionalPlan> page = provisionalPlanService.page(new Page<ProvisionalPlan>(provisionalPlanVo.getPageNum(), provisionalPlanVo.getPageSize()), lw);
+//        return success(page);
+        if (StringUtils.isNull(provisionalPlanVo)
+                || StringUtils.isNull(provisionalPlanVo.getPageNum())
+                || StringUtils.isNull(provisionalPlanVo.getPageSize())) {
+            throw new ServiceException("查询条件及分页不能为空!");
         }
-        if (!ObjectUtils.isEmpty(provisionalPlanVo.getStartTime()) || !ObjectUtils.isEmpty(provisionalPlanVo.getEndTime())) {
-            lw.between(ProvisionalPlan::getPlanDemandSubTime, provisionalPlanVo.getStartTime(), provisionalPlanVo.getEndTime());
-        }
-        IPage<ProvisionalPlan> page = provisionalPlanService.page(new Page<ProvisionalPlan>(provisionalPlanVo.getPageNum(), provisionalPlanVo.getPageSize()), lw);
+        PageInfo<ProvisionalPlan> page = provisionalPlanService.selectProvisionalPlan(provisionalPlanVo);
         return success(page);
     }
 
+    @ApiOperation(value = "查询临时计划详情")
+    @PostMapping("/selectById")
+    public AjaxResult selectById(@RequestBody ProvisionalPlanVo provisionalPlanVo) {
+        if (StringUtils.isNull(provisionalPlanVo) || StringUtils.isNull(provisionalPlanVo.getPlanPracticalId())) {
+            throw new ServiceException("id不能为空!");
+        }
+        ProvisionalPlan provisionalPlan = provisionalPlanService.seletById(provisionalPlanVo.getPlanPracticalId());
+        return success(provisionalPlan);
+    }
+
     @ApiOperation(value = "导入年临时计划")
     @PostMapping("/importProvisionalPlan")
+    @PreAuthorize("@ss.hasPermi('base:provisionalPlan:importProvisionalPlan')")
+    @Log(title = ModularConstans.policy, businessType = BusinessType.INSERT)
     public AjaxResult importProvisionalPlan(MultipartFile file, boolean updateSupport) throws Exception {
         ExcelUtil<ProvisionalPlan> util = new ExcelUtil<>(ProvisionalPlan.class);
         List<ProvisionalPlan> provisionalPlans = util.importExcel(file.getInputStream());
@@ -126,4 +150,16 @@ public class ProvisionalPlanController extends BaseController {
         ExcelUtil<ProvisionalPlan> util = new ExcelUtil<>(ProvisionalPlan.class);
         util.exportExcel(response, list, "临时计划数据");
     }
+
+    @ApiOperation(value = "提交临时计划")
+    @PostMapping("/commitProvisionalPlan")
+    @PreAuthorize("@ss.hasPermi('base:provisionalPlan:commitProvisionalPlan')")
+    @Log(title = ModularConstans.policy, businessType = BusinessType.UPDATE)
+    public AjaxResult commitProvisionalPlan(@RequestBody ProvisionalPlanVo provisionalPlanVo) {
+        if (StringUtils.isNull(provisionalPlanVo) || StringUtils.isNull(provisionalPlanVo.getPlanPracticalId())) {
+            return error("提交的临时计划ID不能为空!");
+        }
+        return toAjax(provisionalPlanService.commitProvisionalPlan(provisionalPlanVo));
+    }
+
 }

+ 4 - 0
purchase-system/src/main/java/com/ozs/plan/doman/ProvisionalPlan.java

@@ -16,6 +16,10 @@ import java.util.Date;
 public class ProvisionalPlan {
 
     @ApiModelProperty(value = "主键ID")
+    @TableField("plan_practical_id")
+    private Integer planPracticalId;
+
+    @ApiModelProperty(value = "年度计划ID")
     @TableField("plan_year_id")
     private Integer planYearId;
 

+ 3 - 0
purchase-system/src/main/java/com/ozs/plan/doman/vo/requestVo/ProvisionalPlanVo.java

@@ -17,6 +17,9 @@ public class ProvisionalPlanVo extends PageVo {
     private Date endTime;
 
     @ApiModelProperty(value = "主键ID")
+    private Integer planPracticalId;
+
+    @ApiModelProperty(value = "年度计划ID")
     private Long planYearId;
 
     @NotNull(message = "采购单位不能为空")

+ 7 - 0
purchase-system/src/main/java/com/ozs/plan/mapper/ProvisionalPlanMapper.java

@@ -3,6 +3,7 @@ package com.ozs.plan.mapper;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
 import com.ozs.base.domain.BaseExpert;
 import com.ozs.plan.doman.ProvisionalPlan;
+import com.ozs.plan.doman.vo.requestVo.ProvisionalPlanVo;
 import org.apache.ibatis.annotations.Mapper;
 import org.apache.ibatis.annotations.Param;
 
@@ -15,4 +16,10 @@ public interface ProvisionalPlanMapper extends BaseMapper<ProvisionalPlan> {
     int updateProvisionalPlanById(ProvisionalPlan provisionalPlan);
 
     List<ProvisionalPlan> selectProjectName(String projectName);
+
+    int commitProvisionalPlan(Integer planPracticalId);
+
+    ProvisionalPlan seletById(Integer planPracticalId);
+
+    List<ProvisionalPlan> selectProvisionalPlan(ProvisionalPlanVo provisionalPlanVo);
 }

+ 9 - 0
purchase-system/src/main/java/com/ozs/plan/service/ProvisionalPlanService.java

@@ -1,6 +1,9 @@
 package com.ozs.plan.service;
 
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.service.IService;
+import com.github.pagehelper.PageInfo;
+import com.ozs.common.core.domain.AjaxResult;
 import com.ozs.common.core.domain.model.LoginUser;
 import com.ozs.plan.doman.PlanYears;
 import com.ozs.plan.doman.ProvisionalPlan;
@@ -16,4 +19,10 @@ public interface ProvisionalPlanService extends IService<ProvisionalPlan> {
     String importProvisionalPlan(List<ProvisionalPlan> provisionalPlans, boolean updateSupport, LoginUser loginUser);
 
     List<ProvisionalPlan> selectProvisionalPlanExport(ProvisionalPlanVo provisionalPlanVo);
+
+    int commitProvisionalPlan(ProvisionalPlanVo provisionalPlanVo);
+
+    ProvisionalPlan seletById(Integer planPracticalId);
+
+    PageInfo<ProvisionalPlan> selectProvisionalPlan(ProvisionalPlanVo provisionalPlanVo);
 }

+ 78 - 2
purchase-system/src/main/java/com/ozs/plan/service/impl/ProvisionalPlanServiceImpl.java

@@ -1,8 +1,11 @@
 package com.ozs.plan.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.github.pagehelper.PageHelper;
+import com.github.pagehelper.PageInfo;
 import com.ozs.common.core.domain.entity.SysDept;
 import com.ozs.common.core.domain.entity.SysDictData;
 import com.ozs.common.core.domain.model.LoginUser;
@@ -155,6 +158,26 @@ public class ProvisionalPlanServiceImpl extends ServiceImpl<ProvisionalPlanMappe
         return provisionalPlanList;
     }
 
+    @Override
+    public int commitProvisionalPlan(ProvisionalPlanVo provisionalPlanVo) {
+        return provisionalPlanMapper.commitProvisionalPlan(provisionalPlanVo.getPlanPracticalId());
+    }
+
+    @Override
+    public ProvisionalPlan seletById(Integer planPracticalId) {
+        ProvisionalPlan provisionalPlan = changeToProvisionalPlan(provisionalPlanMapper.seletById(planPracticalId));
+        return provisionalPlan;
+    }
+
+    @Override
+    public PageInfo<ProvisionalPlan> selectProvisionalPlan(ProvisionalPlanVo provisionalPlanVo) {
+        List<ProvisionalPlan> provisionalPlanList = provisionalPlanMapper.selectProvisionalPlan(provisionalPlanVo);
+        provisionalPlanList = changeTo(provisionalPlanList);
+        PageHelper.startPage(provisionalPlanVo.getPageNum().intValue(), provisionalPlanVo.getPageSize().intValue());
+        PageInfo<ProvisionalPlan> pageInfo = new PageInfo<>(provisionalPlanList);
+        return pageInfo;
+    }
+
     //判断是否为超额计划
     public String isExcessOrNo(String projectType, BigDecimal evaluation) {
         BigDecimal threshold = new BigDecimal(0);
@@ -181,6 +204,59 @@ public class ProvisionalPlanServiceImpl extends ServiceImpl<ProvisionalPlanMappe
         }
     }
 
+    // 字典项负值
+    public ProvisionalPlan changeToProvisionalPlan(ProvisionalPlan provisionalPlan) {
+        HashMap<String, HashMap<String, String>> planEnums = dictTypeService.getAboutEnums();
+        HashMap<String, String> projectTypesMap = planEnums.get("projectTypes");
+        HashMap<String, String> planPurchaseModesMap = planEnums.get("planPurchaseModes");
+        HashMap<String, String> projectAttributes = planEnums.get("projectAttributes");
+        HashMap<String, String> purchaseServices = planEnums.get("purchaseServices");
+        if (provisionalPlan.getPurchaseDeptId() != null) {
+            SysDeptResponseVo sysDeptResponseVo = (SysDeptResponseVo) deptService.selectDeptById(provisionalPlan.getPurchaseDeptId()).get("sysDept");
+            provisionalPlan.setPurchaseDeptName(sysDeptResponseVo.getDeptName());
+        }
+        for (Map.Entry<String, String> entry : projectTypesMap.entrySet()) {
+            if (provisionalPlan.getProjectType() != null && provisionalPlan.getProjectType().equals(entry.getValue())) {
+                provisionalPlan.setProjectTypeStr(entry.getKey());
+                break;
+            }
+        }
+        for (Map.Entry<String, String> entry : planPurchaseModesMap.entrySet()) {
+            if (provisionalPlan.getPurchaseMode() != null && provisionalPlan.getPurchaseMode().equals(entry.getValue())) {
+                provisionalPlan.setPurchaseModeStr(entry.getKey());
+                break;
+            }
+        }
+        //项目属性是拼接的
+        if (provisionalPlan.getProjectAttr().length() > 1) {
+            StringBuilder builder = new StringBuilder();
+            String[] split = provisionalPlan.getProjectAttr().split(",");
+            for (String s : split) {
+                for (Map.Entry<String, String> entry : projectAttributes.entrySet()) {
+                    if (s.equals(entry.getValue())) {
+                        builder.append(entry.getKey() + ",");
+                        break;
+                    }
+                }
+            }
+            provisionalPlan.setProjectAttrStr(builder.toString());
+        } else {
+            for (Map.Entry<String, String> entry : projectAttributes.entrySet()) {
+                if (provisionalPlan.getProjectAttr() != null && provisionalPlan.getProjectAttr().equals(entry.getValue())) {
+                    provisionalPlan.setProjectAttrStr(entry.getKey());
+                    break;
+                }
+            }
+        }
+        for (Map.Entry<String, String> entry : purchaseServices.entrySet()) {
+            if (provisionalPlan.getPurchaseServices() != null && provisionalPlan.getPurchaseServices().equals(entry.getValue())) {
+                provisionalPlan.setPurchaseServicesStr(entry.getKey());
+                break;
+            }
+        }
+        return provisionalPlan;
+    }
+
     //字段赋值对应的名称
     public List<ProvisionalPlan> changeTo(List<ProvisionalPlan> provisionalPlans) {
         HashMap<String, HashMap<String, String>> planEnums = dictTypeService.getAboutEnums();
@@ -209,11 +285,11 @@ public class ProvisionalPlanServiceImpl extends ServiceImpl<ProvisionalPlanMappe
             //项目属性是拼接的
             if (provisionalPlan.getProjectAttr().length() > 1) {
                 StringBuilder builder = new StringBuilder();
-                String[] split = provisionalPlan.getProjectAttr().split("");
+                String[] split = provisionalPlan.getProjectAttr().split(",");
                 for (String s : split) {
                     for (Map.Entry<String, String> entry : projectAttributes.entrySet()) {
                         if (s.equals(entry.getValue())) {
-                            builder.append(entry.getKey() + "");
+                            builder.append(entry.getKey() + ",");
                             break;
                         }
                     }

+ 174 - 168
purchase-system/src/main/resources/mapper/plan/PlanQuarterMapper.xml

@@ -1,187 +1,193 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
-		PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-		"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ozs.plan.mapper.PlanQuarterMapper">
 
-	<resultMap type="com.ozs.plan.doman.PlanQuarter" id="PlanQuarterResult">
-		<id property="plan_practical_id" column="planPracticalId"/>
-		<result property="plan_year_id" column="planYearId"/>
-		<result property="purchase_dept_id" column="purchaseDeptId"/>
-		<result property="project_name" column="projectName"/>
-		<result property="project_type" column="projectType"/>
-		<result property="demand_overview" column="demandOverview"/>
-		<result property="evaluation" column="evaluation"/>
-		<result property="is_excess" column="isExcess"/>
-		<result property="purchase_services" column="purchaseServices"/>
-		<result property="purchase_mode" column="purchaseMode"/>
-		<result property="plan_demand_sub_time" column="planDemandSubTime"/>
-		<result property="plan_purchase_finish_time" column="planPurchaseFinishTime"/>
-		<result property="plan_deliver_time" column="planDeliverTime"/>
-		<result property="project_attr" column="projectAttr"/>
-		<result property="adjust_reason" column="adjustReason"/>
-		<result property="remarks" column="remarks"/>
-		<result property="project_status" column="projectStatus"/>
-		<result property="send_letter" column="sendLetter"/>
-		<result property="created" column="created"/>
-		<result property="create_time" column="createTime"/>
-		<result property="updated" column="updated"/>
-		<result property="update_time" column="updateTime"/>
-		<result property="refuse_reason" column="refuseReason"/>
-		<result property="del_flay" column="delFlay"/>
-		<result property="plan_type" column="planType"/>
-	</resultMap>
+    <resultMap type="com.ozs.plan.doman.PlanQuarter" id="PlanQuarterResult">
+        <id property="plan_practical_id" column="planPracticalId"/>
+        <result property="plan_year_id" column="planYearId"/>
+        <result property="purchase_dept_id" column="purchaseDeptId"/>
+        <result property="project_name" column="projectName"/>
+        <result property="project_type" column="projectType"/>
+        <result property="demand_overview" column="demandOverview"/>
+        <result property="evaluation" column="evaluation"/>
+        <result property="is_excess" column="isExcess"/>
+        <result property="purchase_services" column="purchaseServices"/>
+        <result property="purchase_mode" column="purchaseMode"/>
+        <result property="plan_demand_sub_time" column="planDemandSubTime"/>
+        <result property="plan_purchase_finish_time" column="planPurchaseFinishTime"/>
+        <result property="plan_deliver_time" column="planDeliverTime"/>
+        <result property="project_attr" column="projectAttr"/>
+        <result property="adjust_reason" column="adjustReason"/>
+        <result property="remarks" column="remarks"/>
+        <result property="project_status" column="projectStatus"/>
+        <result property="send_letter" column="sendLetter"/>
+        <result property="created" column="created"/>
+        <result property="create_time" column="createTime"/>
+        <result property="updated" column="updated"/>
+        <result property="update_time" column="updateTime"/>
+        <result property="refuse_reason" column="refuseReason"/>
+        <result property="del_flay" column="delFlay"/>
+        <result property="plan_type" column="planType"/>
+    </resultMap>
 
-	<update id="updateInfoById" parameterType="com.ozs.plan.doman.PlanQuarter">
-		update plan_practical
-		set project_name=#{projectName},
-			project_type=#{projectType},
-			demand_overview=#{demandOverview},
-			evaluation=#{evaluation},
-			is_excess=#{isExcess},
-			purchase_services=#{purchaseServices},
-			purchase_mode=#{purchaseMode},
-			plan_demand_sub_time=#{planDemandSubTime},
-			plan_purchase_finish_time=#{planPurchaseFinishTime},
-			plan_deliver_time=#{planDeliverTime},
-			project_attr=#{projectAttr},
-			adjust_reason=#{adjustReason},
-			remarks=#{remarks},
-			updated=#{updated},
-			update_time=#{updateTime}
-		where plan_practical_id = #{planPracticalId}
-	</update>
+    <update id="updateInfoById" parameterType="com.ozs.plan.doman.PlanQuarter">
+        update plan_practical
+        set project_name=#{projectName},
+            project_type=#{projectType},
+            demand_overview=#{demandOverview},
+            evaluation=#{evaluation},
+            is_excess=#{isExcess},
+            purchase_services=#{purchaseServices},
+            purchase_mode=#{purchaseMode},
+            plan_demand_sub_time=#{planDemandSubTime},
+            plan_purchase_finish_time=#{planPurchaseFinishTime},
+            plan_deliver_time=#{planDeliverTime},
+            project_attr=#{projectAttr},
+            adjust_reason=#{adjustReason},
+            remarks=#{remarks},
+            updated=#{updated},
+            update_time=#{updateTime}
+        where plan_practical_id = #{planPracticalId}
+    </update>
 
-	<select id="selectPlanQuarterList" parameterType="com.ozs.plan.doman.PlanQuarter" resultMap="PlanQuarterResult">
-		select * from plan_practical
-		<where>
-			<if test="projectName != null and projectName != ''">
-				AND project_name like concat('%', #{projectName}, '%')
-			</if>
-			<if test="purchaseServices != null and purchaseServices != ''">
-				AND purchase_services = #{purchaseServices}
-			</if>
-			<if test="isExcess != null and isExcess != ''">
-				AND is_excess = #{isExcess}
-			</if>
-			<if test="projectStatus != null and projectStatus != ''">
-				AND project_status = #{projectStatus}
-			</if>
-			<if test="beginTime != null  "><!-- 开始时间检索 -->
-				and date_format(plan_demand_sub_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
-			</if>
-			<if test="endTime != null  "><!-- 结束时间检索 -->
-				and date_format(plan_demand_sub_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
-			</if>
-			and plan_type=0
-			and del_flay=0
-		</where>
-		order by plan_demand_sub_time desc
-	</select>
+    <select id="selectPlanQuarterList" parameterType="com.ozs.plan.doman.PlanQuarter" resultMap="PlanQuarterResult">
+        select * from plan_practical
+        <where>
+            <if test="projectName != null and projectName != ''">
+                AND project_name like concat('%', #{projectName}, '%')
+            </if>
+            <if test="purchaseServices != null and purchaseServices != ''">
+                AND purchase_services = #{purchaseServices}
+            </if>
+            <if test="isExcess != null and isExcess != ''">
+                AND is_excess = #{isExcess}
+            </if>
+            <if test="projectStatus != null and projectStatus != ''">
+                AND project_status = #{projectStatus}
+            </if>
+            <if test="beginTime != null  "><!-- 开始时间检索 -->
+                and date_format(plan_demand_sub_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
+            </if>
+            <if test="endTime != null  "><!-- 结束时间检索 -->
+                and date_format(plan_demand_sub_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+            </if>
+            and plan_type=0
+            and del_flay=0
+        </where>
+        order by plan_demand_sub_time desc
+    </select>
 
-	<select id="selectPlanQuarterExamineList" parameterType="com.ozs.plan.doman.PlanQuarter"
-			resultMap="PlanQuarterResult">
-		select * from plan_practical
-		<where>
-			<if test="projectName != null and projectName != ''">
-				AND project_name like concat('%', #{projectName}, '%')
-			</if>
-			<if test="purchaseServices != null and purchaseServices != ''">
-				AND purchase_services = #{purchaseServices}
-			</if>
-			<if test="isExcess != null and isExcess != ''">
-				AND is_excess = #{isExcess}
-			</if>
-			<if test="projectStatus == null or projectStatus ==''">
-				AND project_status in (1,3)
-			</if>
-			<if test="projectStatus != null and projectStatus != ''">
-				AND project_status = #{projectStatus}
-			</if>
-			<if test="beginTime != null "><!-- 开始时间检索 -->
-				and date_format(plan_demand_sub_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
-			</if>
-			<if test="endTime != null "><!-- 结束时间检索 -->
-				and date_format(plan_demand_sub_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
-			</if>
-			and plan_type=0
-			and del_flay=0
-		</where>
-		order by plan_demand_sub_time desc
-	</select>
+    <select id="selectPlanQuarterExamineList" parameterType="com.ozs.plan.doman.PlanQuarter"
+            resultMap="PlanQuarterResult">
+        select * from plan_practical
+        <where>
+            <if test="projectName != null and projectName != ''">
+                AND project_name like concat('%', #{projectName}, '%')
+            </if>
+            <if test="purchaseServices != null and purchaseServices != ''">
+                AND purchase_services = #{purchaseServices}
+            </if>
+            <if test="isExcess != null and isExcess != ''">
+                AND is_excess = #{isExcess}
+            </if>
+            <if test="projectStatus == null or projectStatus ==''">
+                AND project_status in (1,3)
+            </if>
+            <if test="projectStatus != null and projectStatus != ''">
+                AND project_status = #{projectStatus}
+            </if>
+            <if test="beginTime != null "><!-- 开始时间检索 -->
+                and date_format(plan_demand_sub_time,'%y%m%d') &gt;= date_format(#{beginTime},'%y%m%d')
+            </if>
+            <if test="endTime != null "><!-- 结束时间检索 -->
+                and date_format(plan_demand_sub_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+            </if>
+            and plan_type=0
+            and del_flay=0
+        </where>
+        order by plan_demand_sub_time desc
+    </select>
 
-	<select id="countProjectName" resultType="java.lang.Integer" parameterType="java.lang.String">
-		select count(plan_practical.plan_practical_id)
-		from plan_practical
-		where project_name = #{projectName}
-		  and plan_type = 0
-		  and del_flay = 0
-	</select>
+    <select id="countProjectName" resultType="java.lang.Integer" parameterType="java.lang.String">
+        select count(plan_practical.plan_practical_id)
+        from plan_practical
+        where project_name = #{projectName}
+          and plan_type = 0
+          and del_flay = 0
+    </select>
 
-	<select id="getById" resultType="com.ozs.plan.doman.PlanQuarter" parameterType="java.lang.Long">
-		select *
-		from plan_practical
-		where plan_practical_id = #{planPracticalId}
-		  and del_flay = 0
-	</select>
+    <select id="getById" resultType="com.ozs.plan.doman.PlanQuarter" parameterType="java.lang.Long">
+        select *
+        from plan_practical
+        where plan_practical_id = #{planPracticalId}
+          and del_flay = 0
+    </select>
 
-	<select id="countProjectNameOther" resultType="java.lang.Integer" parameterType="java.lang.String">
-		select count(plan_practical.plan_practical_id)
-		from plan_practical
-		where project_name = #{projectName}
-		  and plan_practical_id != #{planPracticalId}
-		  and plan_type = 0
-		  and del_flay = 0
-	</select>
+    <select id="countProjectNameOther" resultType="java.lang.Integer" parameterType="java.lang.String">
+        select count(plan_practical.plan_practical_id)
+        from plan_practical
+        where project_name = #{projectName}
+          and plan_practical_id != #{planPracticalId}
+          and plan_type = 0
+          and del_flay = 0
+    </select>
 
-	<!--	创建计划信息-->
-	<insert id="insertPlanQuarter" parameterType="com.ozs.plan.doman.PlanQuarter" useGeneratedKeys="true"
-			keyProperty="planYearId">
-		insert into plan_practical (purchase_dept_id, project_name, project_type, demand_overview, evaluation,
-									is_excess,
-									purchase_services, purchase_mode, plan_demand_sub_time, plan_purchase_finish_time,
-									plan_deliver_time, project_attr, adjust_reason, remarks, project_status,
-									created, create_time, del_flay, plan_type, send_letter)
-		values (#{purchaseDeptId}, #{projectName}, #{projectType}, #{demandOverview}, #{evaluation}, #{isExcess},
-				#{purchaseServices}, #{purchaseMode}, #{planDemandSubTime}, #{planPurchaseFinishTime},
-				#{planDeliverTime},
-				#{projectAttr}, #{adjustReason}, #{remarks}, #{projectStatus}, #{created}, #{createTime}, 0, 0, 0)
-	</insert>
+    <!--	创建计划信息-->
+    <insert id="insertPlanQuarter" parameterType="com.ozs.plan.doman.PlanQuarter" useGeneratedKeys="true"
+            keyProperty="planYearId">
+        insert into plan_practical (purchase_dept_id, project_name, project_type, demand_overview, evaluation,
+                                    is_excess,
+                                    purchase_services, purchase_mode, plan_demand_sub_time, plan_purchase_finish_time,
+                                    plan_deliver_time, project_attr, adjust_reason, remarks, project_status,
+                                    created, create_time, del_flay, plan_type, send_letter)
+        values (#{purchaseDeptId}, #{projectName}, #{projectType}, #{demandOverview}, #{evaluation}, #{isExcess},
+                #{purchaseServices}, #{purchaseMode}, #{planDemandSubTime}, #{planPurchaseFinishTime},
+                #{planDeliverTime},
+                #{projectAttr}, #{adjustReason}, #{remarks}, #{projectStatus}, #{created}, #{createTime}, 0, 0, 0)
+    </insert>
 
-	<!--	计划删除-->
-	<update id="deletePlanQuarterByIds" parameterType="java.lang.Long">
-		update plan_practical set del_flay=1 where plan_practical_id in
-		<foreach collection="array" item="item" open="(" separator="," close=")">
-			#{item}
-		</foreach>
-	</update>
+    <!--	计划删除-->
+    <update id="deletePlanQuarterByIds" parameterType="java.lang.Long">
+        update plan_practical set del_flay=1 where plan_practical_id in
+        <foreach collection="array" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </update>
 
-	<update id="deletePlanQuarterById" parameterType="java.lang.Long">
-		update plan_practical
-		set del_flay=1
-		where plan_practical_id = #{planPracticalId}
-	</update>
+    <update id="deletePlanQuarterById" parameterType="java.lang.Long">
+        update plan_practical
+        set del_flay=1
+        where plan_practical_id = #{planPracticalId}
+    </update>
 
-	<!--	计划提交-->
-	<update id="commit" parameterType="java.lang.Long">
-		update plan_practical
-		set project_status=1
-		where plan_practical_id = #{planPracticalId}
-	</update>
+    <!--	计划提交-->
+    <update id="commit" parameterType="java.lang.Long">
+        update plan_practical
+        set project_status=1
+        where plan_practical_id = #{planPracticalId}
+    </update>
 
-	<!--	计划审核-->
-	<update id="review" parameterType="com.ozs.plan.doman.PlanQuarter">
-		update plan_practical
-		set refuse_reason=#{refuseReason},
-			project_status=#{projectStatus}
-		where plan_practical_id = #{planPracticalId}
-	</update>
+    <!--	计划审核-->
+    <update id="review" parameterType="com.ozs.plan.doman.PlanQuarter">
+        update plan_practical
+        <set>
+            <if test="refuseReason != null and refuseReason != ''">
+                refuse_reason=#{refuseReason},
+            </if>
+            <if test="projectStatus != null and projectStatus != ''">
+                project_status=#{projectStatus}
+            </if>
+        </set>
+        where plan_practical_id = #{planPracticalId}
+    </update>
 
-	<update id="sendLetter" parameterType="java.lang.Long">
-		update plan_practical
-		set send_letter= 1
-		where plan_practical_id = #{planPracticalId}
-	</update>
+    <update id="sendLetter" parameterType="java.lang.Long">
+        update plan_practical
+        set send_letter= 1
+        where plan_practical_id = #{planPracticalId}
+    </update>
 
 
 </mapper>

+ 145 - 100
purchase-system/src/main/resources/mapper/plan/ProvisionalPlanMapper.xml

@@ -1,107 +1,152 @@
 <?xml version="1.0" encoding="UTF-8" ?>
 <!DOCTYPE mapper
-		PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
-		"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+        PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+        "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
 <mapper namespace="com.ozs.plan.mapper.ProvisionalPlanMapper">
-	<resultMap type="com.ozs.plan.doman.ProvisionalPlan" id="ProvisionalPlanResult">
-		<id property="plan_year_id" column="planYearId"/>
-		<result property="plan_year_id" column="planYearId"/>
-		<result property="purchase_dept_id" column="purchaseDeptId"/>
-		<result property="project_name" column="projectName"/>
-		<result property="project_type" column="projectType"/>
-		<result property="demand_overview" column="demandOverview"/>
-		<result property="evaluation" column="evaluation"/>
-		<result property="is_excess" column="isExcess"/>
-		<result property="purchase_services" column="purchaseServices"/>
-		<result property="purchase_mode" column="purchaseMode"/>
-		<result property="plan_demand_sub_time" column="planDemandSubTime"/>
-		<result property="plan_purchase_finish_time" column="planPurchaseFinishTime"/>
-		<result property="plan_deliver_time" column="planDeliverTime"/>
-		<result property="project_attr" column="projectAttr"/>
-		<result property="adjust_reason" column="adjustReason"/>
-		<result property="remarks" column="remarks"/>
-		<result property="project_status" column="projectStatus"/>
-		<result property="refuse_reason" column="refuseReason"/>
-		<result property="del_flay" column="delFlay"/>
-		<result property="plan_type" column="planType"/>
-		<result property="created" column="created"/>
-		<result property="create_time" column="createTime"/>
-		<result property="updated" column="updated"/>
-		<result property="update_time" column="updateTime"/>
-	</resultMap>
+    <resultMap type="com.ozs.plan.doman.ProvisionalPlan" id="ProvisionalPlanResult">
+        <id property="plan_practical_id" column="planPracticalId"/>
+        <id property="plan_year_id" column="planYearId"/>
+        <result property="plan_year_id" column="planYearId"/>
+        <result property="purchase_dept_id" column="purchaseDeptId"/>
+        <result property="project_name" column="projectName"/>
+        <result property="project_type" column="projectType"/>
+        <result property="demand_overview" column="demandOverview"/>
+        <result property="evaluation" column="evaluation"/>
+        <result property="is_excess" column="isExcess"/>
+        <result property="purchase_services" column="purchaseServices"/>
+        <result property="purchase_mode" column="purchaseMode"/>
+        <result property="plan_demand_sub_time" column="planDemandSubTime"/>
+        <result property="plan_purchase_finish_time" column="planPurchaseFinishTime"/>
+        <result property="plan_deliver_time" column="planDeliverTime"/>
+        <result property="project_attr" column="projectAttr"/>
+        <result property="adjust_reason" column="adjustReason"/>
+        <result property="remarks" column="remarks"/>
+        <result property="project_status" column="projectStatus"/>
+        <result property="refuse_reason" column="refuseReason"/>
+        <result property="del_flay" column="delFlay"/>
+        <result property="plan_type" column="planType"/>
+        <result property="created" column="created"/>
+        <result property="create_time" column="createTime"/>
+        <result property="updated" column="updated"/>
+        <result property="update_time" column="updateTime"/>
+    </resultMap>
 
-	<delete id="deleteProvisionalPlanById" parameterType="java.lang.Integer">
-		delete from plan_practical where plan_year_id = #{planYearId}
-	</delete>
+    <delete id="deleteProvisionalPlanById" parameterType="java.lang.Integer">
+        delete
+        from plan_practical
+        where planPracticalId = #{plan_practical_id}
+    </delete>
 
-	<update id="updateProvisionalPlanById" parameterType="com.ozs.plan.doman.ProvisionalPlan">
-		update plan_practical
-		<set>
-			<if test="purchaseDeptId != null and purchaseDeptId != ''">
-				purchase_dept_id = #{purchaseDeptId},
-			</if>
-			<if test="projectName != null and projectName != ''">
-				project_name = #{projectName},
-			</if>
-			<if test="projectType != null and projectType != ''">
-				project_type = #{projectType},
-			</if>
-			<if test="demandOverview != null and demandOverview != ''">
-				demand_overview = #{demandOverview},
-			</if>
-			<if test="evaluation != null and evaluation != ''">
-				evaluation = #{evaluation},
-			</if>
-			<if test="isExcess != null and isExcess != '' ">
-				is_excess = #{isExcess},
-			</if>
-			<if test="purchaseServices != null and purchaseServices != '' ">
-				purchase_services = #{purchaseServices},
-			</if>
-			<if test="purchaseMode != null and purchaseMode != '' ">
-				purchase_mode = #{purchaseMode},
-			</if>
-			<if test="planDemandSubTime != null and planDemandSubTime != '' ">
-				plan_demand_sub_time = #{planDemandSubTime},
-			</if>
-			<if test="planPurchaseFinishTime != null and planPurchaseFinishTime != '' ">
-				plan_purchase_finish_time = #{planPurchaseFinishTime},
-			</if>
-			<if test="planDeliverTime != null and planDeliverTime != '' ">
-				plan_deliver_time = #{planDeliverTime},
-			</if>
-			<if test="projectAttr != null and projectAttr != '' ">
-				project_attr = #{projectAttr},
-			</if>
-			<if test="adjustReason != null and adjustReason != '' ">
-				adjust_reason = #{adjustReason},
-			</if>
-			<if test="remarks != null and remarks != '' ">
-				remarks = #{remarks},
-			</if>
-			<if test="projectStatus != null and projectStatus != '' ">
-				project_status = #{projectStatus},
-			</if>
-			<if test="refuseReason != null and refuseReason != '' ">
-				refuse_reason = #{refuseReason},
-			</if>
-			<if test="delFlay != null and delFlay != '' ">
-				del_flay = #{delFlay},
-			</if>
-			<if test="planType != null and planType != '' ">
-				plan_type = #{planType},
-			</if>
-			<if test="updated != null and updated != '' ">
-				updated = #{updated},
-			</if>
-			<if test="updateTime != null and updateTime != '' ">
-				update_time = #{updateTime},
-			</if>
-		</set>
-		where plan_year_id = #{planYearId}
-	</update>
+    <update id="updateProvisionalPlanById" parameterType="com.ozs.plan.doman.ProvisionalPlan">
+        update plan_practical
+        <set>
+            <if test="purchaseDeptId != null and purchaseDeptId != ''">
+                purchase_dept_id = #{purchaseDeptId},
+            </if>
+            <if test="projectName != null and projectName != ''">
+                project_name = #{projectName},
+            </if>
+            <if test="projectType != null and projectType != ''">
+                project_type = #{projectType},
+            </if>
+            <if test="demandOverview != null and demandOverview != ''">
+                demand_overview = #{demandOverview},
+            </if>
+            <if test="evaluation != null and evaluation != ''">
+                evaluation = #{evaluation},
+            </if>
+            <if test="isExcess != null and isExcess != '' ">
+                is_excess = #{isExcess},
+            </if>
+            <if test="purchaseServices != null and purchaseServices != '' ">
+                purchase_services = #{purchaseServices},
+            </if>
+            <if test="purchaseMode != null and purchaseMode != '' ">
+                purchase_mode = #{purchaseMode},
+            </if>
+            <if test="planDemandSubTime != null and planDemandSubTime != '' ">
+                plan_demand_sub_time = #{planDemandSubTime},
+            </if>
+            <if test="planPurchaseFinishTime != null and planPurchaseFinishTime != '' ">
+                plan_purchase_finish_time = #{planPurchaseFinishTime},
+            </if>
+            <if test="planDeliverTime != null and planDeliverTime != '' ">
+                plan_deliver_time = #{planDeliverTime},
+            </if>
+            <if test="projectAttr != null and projectAttr != '' ">
+                project_attr = #{projectAttr},
+            </if>
+            <if test="adjustReason != null and adjustReason != '' ">
+                adjust_reason = #{adjustReason},
+            </if>
+            <if test="remarks != null and remarks != '' ">
+                remarks = #{remarks},
+            </if>
+            <if test="projectStatus != null and projectStatus != '' ">
+                project_status = #{projectStatus},
+            </if>
+            <if test="refuseReason != null and refuseReason != '' ">
+                refuse_reason = #{refuseReason},
+            </if>
+            <if test="delFlay != null and delFlay != '' ">
+                del_flay = #{delFlay},
+            </if>
+            <if test="planType != null and planType != '' ">
+                plan_type = #{planType},
+            </if>
+            <if test="updated != null and updated != '' ">
+                updated = #{updated},
+            </if>
+            <if test="updateTime != null and updateTime != '' ">
+                update_time = #{updateTime}
+            </if>
+        </set>
+        where planPracticalId = #{plan_practical_id}
+    </update>
 
-	<select id="selectProjectName" resultType="com.ozs.plan.doman.ProvisionalPlan" parameterType="java.lang.String">
-		select * from plan_practical where project_name = #{projectName} and del_flay = 0 and plan_type = "1"
-	</select>
+    <select id="selectProjectName" resultType="com.ozs.plan.doman.ProvisionalPlan" parameterType="java.lang.String">
+        select *
+        from plan_practical
+        where project_name = #{projectName}
+          and del_flay = 0
+          and plan_type = "1"
+    </select>
+
+    <update id="commitProvisionalPlan" parameterType="java.lang.Integer">
+        update plan_practical
+        set project_status = 1
+        where plan_type = 1
+          and plan_practical_id = #{plan_practical_id}
+    </update>
+
+    <select id="seletById" resultType="com.ozs.plan.doman.ProvisionalPlan" parameterType="java.lang.Integer">
+        select *
+        from plan_practical
+        where plan_type = 1
+          and plan_practical_id = #{plan_practical_id}
+    </select>
+
+    <select id="selectProvisionalPlan" resultType="com.ozs.plan.doman.ProvisionalPlan"
+            parameterType="com.ozs.plan.doman.vo.requestVo.ProvisionalPlanVo">
+        select * from plan_practical
+        <where>
+            <if test="projectName != null and projectName != ''">
+                and project_name like concat('%', #{projectName}, '%')
+            </if>
+            <if test="purchaseServices != null and purchaseServices != ''">
+                and purchase_services = #{purchaseServices}
+            </if>
+            <if test="projectStatus != null and projectStatus != ''">
+                and project_status = #{projectStatus}
+            </if>
+            <if test="startTime != null  "><!-- 开始时间检索 -->
+                and date_format(plan_demand_sub_time,'%y%m%d') &gt;= date_format(#{startTime},'%y%m%d')
+            </if>
+            <if test="endTime != null  "><!-- 结束时间检索 -->
+                and date_format(plan_demand_sub_time,'%y%m%d') &lt;= date_format(#{endTime},'%y%m%d')
+            </if>
+            and plan_type = 1
+        </where>
+        order by create_time desc
+    </select>
 </mapper>