Kaynağa Gözat

临时计划

sunhh 2 yıl önce
ebeveyn
işleme
4e1c0e625e

+ 97 - 0
purchase-admin/src/main/java/com/ozs/web/controller/plan/ProvisionalPlanController.java

@@ -0,0 +1,97 @@
+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.ozs.common.annotation.Log;
+import com.ozs.common.constant.ModularConstans;
+import com.ozs.common.core.controller.BaseController;
+import com.ozs.common.core.domain.AjaxResult;
+import com.ozs.common.core.domain.model.LoginUser;
+import com.ozs.common.enums.BusinessType;
+import com.ozs.common.utils.StringUtils;
+import com.ozs.framework.web.service.TokenService;
+import com.ozs.plan.doman.ProvisionalPlan;
+import com.ozs.plan.doman.vo.requestVo.ProvisionalPlanVo;
+import com.ozs.plan.service.ProvisionalPlanService;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.util.ObjectUtils;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import javax.servlet.http.HttpServletRequest;
+import java.util.Date;
+
+/**
+ * 临时计划
+ *
+ * @author sunhh
+ */
+@Api(tags = "临时计划")
+@RestController
+@RequestMapping("/plan/provisionalPlan")
+public class ProvisionalPlanController extends BaseController {
+
+    @Autowired
+    private ProvisionalPlanService provisionalPlanService;
+
+    @Autowired
+    private TokenService tokenService;
+
+    @ApiOperation(value = "新增临时计划")
+    @PostMapping("/insertProvisionalPlan")
+    @PreAuthorize("@ss.hasPermi('base:provisionalPlan:insertProvisionalPlan')")
+    @Log(title = ModularConstans.policy, businessType = BusinessType.INSERT)
+    public AjaxResult insertProvisionalPlan(@RequestBody ProvisionalPlan provisionalPlan, HttpServletRequest request) {
+        //获取采购单位
+        LoginUser loginUser = tokenService.getLoginUser(request);
+        provisionalPlan.setPurchaseDeptId(loginUser.getDeptId());
+        provisionalPlan.setCreated(String.valueOf(loginUser.getUserId()));
+        provisionalPlan.setCreateTime(new Date());
+        // planType计划类型(0:季度计划,1:临时计划)
+        provisionalPlan.setPlanType("1");
+        return toAjax(provisionalPlanService.save(provisionalPlan));
+    }
+
+    @ApiOperation(value = "删除临时计划", notes = "必传 plan_year_id")
+    @PostMapping("/deleteProvisionalPlan")
+    public AjaxResult deleteProvisionalPlan(@RequestBody ProvisionalPlan provisionalPlan) {
+        if (StringUtils.isNull(provisionalPlan) || StringUtils.isNull(provisionalPlan.getPlanYearId())) {
+            return error("专家库id不能为空");
+        }
+        return toAjax(provisionalPlanService.removeById(provisionalPlan.getPlanYearId()));
+    }
+
+    @ApiOperation(value = "修改临时计划", notes = "必传 plan_year_id 及修改数据")
+    @PostMapping("/updateProvisionalPlan")
+    public AjaxResult updateProvisionalPlan(@RequestBody ProvisionalPlan provisionalPlan) {
+        if (StringUtils.isNull(provisionalPlan) || StringUtils.isNull(provisionalPlan.getPlanYearId())) {
+            return error("专家库id和修改数据不能为空");
+        }
+        return toAjax(provisionalPlanService.updateById(provisionalPlan));
+    }
+
+    @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());
+        }
+        IPage<ProvisionalPlan> page = provisionalPlanService.page(new Page<ProvisionalPlan>(provisionalPlanVo.getPageNum(), provisionalPlanVo.getPageSize()), lw);
+        return success(page);
+    }
+}

+ 1 - 1
purchase-system/src/main/java/com/ozs/base/domain/BaseSupplier.java

@@ -11,7 +11,7 @@ import javax.validation.constraints.NotBlank;
  */
 @Data
 public class BaseSupplier {
-    private int id;
+    private Integer id;
     // 供应商名称
     @NotBlank(message = "供应商名称不能为空")
     private String supplierName;

+ 0 - 3
purchase-system/src/main/java/com/ozs/base/domain/vo/BaseExpertVo.java

@@ -1,11 +1,8 @@
 package com.ozs.base.domain.vo;
 
 import com.ozs.common.vo.PageVo;
-import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
-import lombok.AllArgsConstructor;
 import lombok.Data;
-import lombok.NoArgsConstructor;
 
 @Data
 public class BaseExpertVo extends PageVo {

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

@@ -0,0 +1,110 @@
+package com.ozs.plan.doman;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ozs.common.vo.PageVo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+@TableName("plan_practical")
+public class ProvisionalPlan {
+
+    @ApiModelProperty(value = "主键ID")
+    @TableField("plan_year_id")
+    private Long planYearId;
+
+    @NotNull(message = "采购单位不能为空")
+    @ApiModelProperty(value = "采购单位(登录账号的单位)")
+    @TableField("purchase_dept_id")
+    private Long purchaseDeptId;
+
+    @NotNull(message = "项目名称不能为空")
+    @ApiModelProperty(value = "项目名称")
+    @TableField("project_name")
+    private String projectName;
+
+    @ApiModelProperty(value = "项目类型(0:装备类;1:物资类;2:服务类;3:工程类)")
+    @TableField("project_type")
+    private String projectType;
+
+    @ApiModelProperty(value = "需求概况")
+    @TableField("demand_overview")
+    private String demandOverview;
+
+    @ApiModelProperty(value = "概算金额(万元(保留小数点后两位)")
+    @TableField("evaluation")
+    private BigDecimal evaluation;
+
+    @ApiModelProperty(value = "是否为超限额计划(0:未超额,1:超额)")
+    @TableField("is_excess")
+    private String isExcess;
+
+    @ApiModelProperty(value = "采购服务站")
+    @TableField("purchase_services")
+    private String purchaseServices;
+
+    @ApiModelProperty(value = "采购方式  (0:公开招标, 1:单一来源,2:邀请招标,3:竞争式谈判,4:询价)")
+    @TableField("purchase_mode")
+    private String purchaseMode;
+
+    @ApiModelProperty(value = "计划提报需求时间--->需求单位成功提报采购需求的日期(具体到月)")
+    @TableField("plan_demand_sub_time")
+    private Date planDemandSubTime;
+
+    @ApiModelProperty(value = "计划完成采购时间--->公示中标结果的日期,即填制中标信息的日期(具体到月)")
+    @TableField("plan_purchase_finish_time")
+    private Date planPurchaseFinishTime;
+
+    @ApiModelProperty(value = "计划交付时间--->供应商完成并交付后,使用单位收到标的日期,即填制建设文档的日期")
+    @TableField("plan_deliver_time")
+    private Date planDeliverTime;
+
+    @ApiModelProperty(value = "项目属性(0:应急应战项目, 1:重大规划任务项目, 2:规划任务项目, 3:一般项目)")
+    @TableField("project_attr")
+    private String projectAttr;
+
+    @ApiModelProperty(value = "计划调整情况及理由--->如计划需要变更,在填写申请修改时需填写调整情况及理由,审核单位审核通过后显示该信息")
+    @TableField("adjust_reason")
+    private String adjustReason;
+
+    @ApiModelProperty(value = "备注")
+    @TableField("remarks")
+    private String remarks;
+
+    @ApiModelProperty(value = "项目状态(0:计划待提交,1:计划待审核,2:计划已退回,3:计划已审核)")
+    @TableField("project_status")
+    private String projectStatus;
+
+    @ApiModelProperty(value = "退回原因")
+    @TableField("refuse_reason")
+    private String refuseReason;
+
+    @ApiModelProperty(value = "0:正常,1:已删除")
+    @TableField("del_flay")
+    private String delFlay;
+
+    @ApiModelProperty(value = "计划类型(0:季度计划,1:临时计划)")
+    @TableField("plan_type")
+    private String planType;
+
+    @ApiModelProperty(value = "创建者")
+    @TableField("created")
+    private String created;
+
+    @ApiModelProperty(value = "创建时间")
+    @TableField("create_time")
+    private Date createTime;
+
+    @ApiModelProperty(value = "修改者")
+    @TableField("updated")
+    private String updated;
+
+    @ApiModelProperty(value = "修改时间")
+    @TableField("update_time")
+    private String updateTime;
+}

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

@@ -0,0 +1,84 @@
+package com.ozs.plan.doman.vo.requestVo;
+
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.ozs.common.vo.PageVo;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import javax.validation.constraints.NotNull;
+import java.math.BigDecimal;
+import java.util.Date;
+
+@Data
+public class ProvisionalPlanVo extends PageVo {
+    @ApiModelProperty(value = "主键ID")
+    private Long planYearId;
+
+    @NotNull(message = "采购单位不能为空")
+    @ApiModelProperty(value = "采购单位(登录账号的单位)")
+    private Long purchaseDeptId;
+
+    @NotNull(message = "项目名称不能为空")
+    @ApiModelProperty(value = "项目名称")
+    private String projectName;
+
+    @ApiModelProperty(value = "项目类型(0:装备类;1:物资类;2:服务类;3:工程类)")
+    private String projectType;
+
+    @ApiModelProperty(value = "需求概况")
+    private String demandOverview;
+
+    @ApiModelProperty(value = "概算金额(万元(保留小数点后两位)")
+    private BigDecimal evaluation;
+
+    @ApiModelProperty(value = "是否为超限额计划(0:未超额,1:超额)")
+    private String isExcess;
+
+    @ApiModelProperty(value = "采购服务站")
+    private String purchaseServices;
+
+    @ApiModelProperty(value = "采购方式  (0:公开招标, 1:单一来源,2:邀请招标,3:竞争式谈判,4:询价)")
+    private String purchaseMode;
+
+    @ApiModelProperty(value = "计划提报需求时间--->需求单位成功提报采购需求的日期(具体到月)")
+    private Date planDemandSubTime;
+
+    @ApiModelProperty(value = "计划完成采购时间--->公示中标结果的日期,即填制中标信息的日期(具体到月)")
+    private Date planPurchaseFinishTime;
+
+    @ApiModelProperty(value = "计划交付时间--->供应商完成并交付后,使用单位收到标的日期,即填制建设文档的日期")
+    private Date planDeliverTime;
+
+    @ApiModelProperty(value = "项目属性(0:应急应战项目, 1:重大规划任务项目, 2:规划任务项目, 3:一般项目)")
+    private String projectAttr;
+
+    @ApiModelProperty(value = "计划调整情况及理由--->如计划需要变更,在填写申请修改时需填写调整情况及理由,审核单位审核通过后显示该信息")
+    private String adjustReason;
+
+    @ApiModelProperty(value = "备注")
+    private String remarks;
+
+    @ApiModelProperty(value = "项目状态(0:计划待提交,1:计划待审核,2:计划已退回,3:计划已审核)")
+    private String projectStatus;
+
+    @ApiModelProperty(value = "退回原因")
+    private String refuseReason;
+
+    @ApiModelProperty(value = "0:正常,1:已删除")
+    private String delFlay;
+
+    @ApiModelProperty(value = "计划类型(0:季度计划,1:临时计划)")
+    private String planType;
+
+    @ApiModelProperty(value = "创建者")
+    private String created;
+
+    @ApiModelProperty(value = "创建时间")
+    private Date createTime;
+
+    @ApiModelProperty(value = "修改者")
+    private String updated;
+
+    @ApiModelProperty(value = "修改时间")
+    private String updateTime;
+}

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

@@ -0,0 +1,10 @@
+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 org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ProvisionalPlanMapper extends BaseMapper<ProvisionalPlan> {
+}

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

@@ -0,0 +1,8 @@
+package com.ozs.plan.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ozs.base.domain.BaseExpert;
+import com.ozs.plan.doman.ProvisionalPlan;
+
+public interface ProvisionalPlanService extends IService<ProvisionalPlan> {
+}

+ 11 - 0
purchase-system/src/main/java/com/ozs/plan/service/impl/ProvisionalPlanServiceImpl.java

@@ -0,0 +1,11 @@
+package com.ozs.plan.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ozs.plan.doman.ProvisionalPlan;
+import com.ozs.plan.mapper.ProvisionalPlanMapper;
+import com.ozs.plan.service.ProvisionalPlanService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ProvisionalPlanServiceImpl extends ServiceImpl<ProvisionalPlanMapper, ProvisionalPlan> implements ProvisionalPlanService {
+}

+ 30 - 0
purchase-system/src/main/resources/mapper/plan/ProvisionalPlan.xml

@@ -0,0 +1,30 @@
+<?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">
+<mapper namespace="com.ozs.plan.mapper.ProvisionalPlanMapper">
+	<resultMap type="com.ozs.plan.doman.PlanYears" id="PlanYearsResult">
+		<id 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="projectAtt"/>
+		<result property="adjust_reason" column="adjustReason"/>
+		<result property="remarks" column="remarks"/>
+		<result property="project_status" column="projectStatus"/>
+		<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"/>
+	</resultMap>
+</mapper>