2 anni fa
parent
commit
df945aeaac

+ 52 - 0
platform-dao/src/main/java/com/platform/dao/dto/project/ProjectDTO.java

@@ -0,0 +1,52 @@
+package com.platform.dao.dto.project;
+
+import com.platform.common.bean.BaseDTO;
+import com.platform.dao.entity.upms.SysFile;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Id;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @Description 筹建管理DTO
+ * @Author xc
+ * @Date 2022-12-28 20:00:26
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+public class ProjectDTO extends BaseDTO implements Serializable {
+    private List<String> parentList;
+
+    private List<String> nameList;
+
+    private Integer type;
+
+    private Integer sort;
+
+    /**
+     *
+     */
+    @Id
+    private String id;
+    /**
+     * 部位编号
+     */
+    private String no;
+    /**
+     * 设备名称
+     */
+    private String name;
+    /**
+     * 部位类别
+     */
+    private String parentId;
+
+}

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/dto/store/OutStoreFormDTO.java

@@ -24,6 +24,8 @@ import java.util.List;
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = true)
 public class OutStoreFormDTO extends BaseDTO implements Serializable {
+    private String projectName;
+    private String projectId;
     private String repairFormId;//关联维修工单
 
     private String applyDept;// 申请部门编码和用友oa保持一致

+ 1 - 0
platform-dao/src/main/java/com/platform/dao/dto/store/SpareStoreDTO.java

@@ -24,6 +24,7 @@ import java.util.List;
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = true)
 public class SpareStoreDTO extends BaseDTO implements Serializable {
+    private Integer tokenType;
     /**
      * 设备名称或者型号,新号或者旧号,用于查询或者筛选
      */

+ 45 - 0
platform-dao/src/main/java/com/platform/dao/entity/project/Project.java

@@ -0,0 +1,45 @@
+package com.platform.dao.entity.project;
+
+import com.platform.common.bean.DataScope;
+import com.platform.dao.vo.sb.SbModelSpareBomVO;
+import lombok.Data;
+
+import javax.persistence.Id;
+import javax.persistence.Table;
+import javax.persistence.Transient;
+import java.io.Serializable;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @Description 部位信息实体类
+ * @Author liuyu
+ * @Date 2020-04-24 09:27:01
+ * @Version Copyright (c) 2019,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Table(name = "t_project")
+@Data
+public class Project implements Serializable {
+    private Integer sort;
+
+    private Integer type;
+    /**
+     *
+     */
+    @Id
+    private String id;
+    /**
+     * 部位编号
+     */
+    private String no;
+    /**
+     * 设备名称
+     */
+    private String name;
+    /**
+     * 部位类别
+     */
+    private String parentId;
+
+
+}

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/entity/store/OutStoreForm.java

@@ -22,6 +22,8 @@ import javax.persistence.Transient;
 @Accessors(chain = true)
 @Table(name = "t_out_store_form")
 public class OutStoreForm implements Serializable{
+    private String projectName;
+
     private String repairFormId;
 
     private String applyDept;// 申请部门编码和用友oa保持一致

+ 63 - 0
platform-dao/src/main/java/com/platform/dao/mapper/project/ProjectMapper.java

@@ -0,0 +1,63 @@
+package com.platform.dao.mapper.project;
+
+import com.platform.dao.config.MyMapper;
+import com.platform.dao.dto.project.ProjectDTO;
+
+import com.platform.dao.entity.project.Project;
+
+import com.platform.dao.vo.query.project.ProjectVO;
+import com.platform.dao.vo.report.SbInfoTypeReportVO2;
+
+import org.springframework.stereotype.Component;
+
+import java.util.List;
+
+
+/**
+ * @Description 设备类别 mapper
+ * @Author liuyu
+ * @Date 2020-04-21 16:53:51
+ * @Version Copyright (c) 2019,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Component
+public interface ProjectMapper extends MyMapper<Project> {
+    SbInfoTypeReportVO2 getSbNums(ProjectDTO dto);
+
+    List<String> getTypeIds(ProjectDTO dto);
+
+    List<SbInfoTypeReportVO2> getProjectNum(ProjectDTO dto);
+
+    /**
+     * 查询列表
+     *
+     * @param dto
+     * @return
+     */
+    List<Project> selectPageList(ProjectDTO dto);
+
+    /**
+     *
+     *
+     * @param dto
+     * @return
+     */
+    List<ProjectVO> selectVOList(ProjectDTO dto);
+
+    /**
+     * 根据主键查询
+     *
+     * @param id
+     * @return
+     */
+    ProjectVO selectById(Object id);
+
+    /**
+     * 查询名称
+     *
+     * @param id
+     * @return
+     */
+    String selectNameById(Object id);
+
+    List<ProjectVO> selectLongYanList(ProjectDTO dto);
+}

+ 14 - 0
platform-dao/src/main/java/com/platform/dao/util/TreeUtil.java

@@ -16,6 +16,7 @@ import com.platform.dao.entity.upms.SysDict;
 import com.platform.dao.entity.upms.SysMenu;
 import com.platform.dao.pojo.CommonTree;
 import com.platform.dao.pojo.TreeNode;
+import com.platform.dao.vo.query.project.ProjectVO;
 import com.platform.dao.vo.query.qykh.HotspotVO;
 import com.platform.dao.vo.query.qykh.InformationVO;
 import com.platform.dao.vo.query.qykh.PlanVO;
@@ -364,6 +365,19 @@ public class TreeUtil {
         });
         return TreeUtil.buildByLoop(trees, root);
     }
+    public List<CommonTree> buildProjectTree(List<ProjectVO> types, String root) {
+        List<CommonTree> trees = new LinkedList<>();
+        types.forEach(type -> {
+            CommonTree node = new CommonTree();
+            node.setId(type.getId());
+            node.setKey(type.getId());
+            node.setParentId(type.getParentId());
+            node.setTitle(type.getName());
+            node.setValue(type.getId());
+            trees.add(node);
+        });
+        return TreeUtil.buildByLoop(trees, root);
+    }
 
 
 

+ 49 - 0
platform-dao/src/main/java/com/platform/dao/vo/query/project/ProjectVO.java

@@ -0,0 +1,49 @@
+package com.platform.dao.vo.query.project;
+
+import com.platform.common.bean.BaseVO;
+import com.platform.dao.entity.upms.SysFile;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+
+import javax.persistence.Id;
+import java.io.Serializable;
+import java.math.BigDecimal;
+import java.time.LocalDate;
+import java.time.LocalDateTime;
+import java.util.List;
+
+/**
+ * @Description 筹建管理VO结果类
+ * @Author xc
+ * @Date 2022-12-28 20:00:26
+ * @Version Copyright (c) 2020,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = true)
+public class ProjectVO extends BaseVO implements Serializable {
+    private String parentName;
+    private Integer sort;
+    private List<ProjectVO> children;
+
+    private Integer type;
+    /**
+     *
+     */
+    @Id
+    private String id;
+    /**
+     * 部位编号
+     */
+    private String no;
+    /**
+     * 设备名称
+     */
+    private String name;
+    /**
+     * 部位类别
+     */
+    private String parentId;
+
+}

+ 2 - 0
platform-dao/src/main/java/com/platform/dao/vo/query/store/OutStoreFormVO.java

@@ -26,6 +26,8 @@ import java.util.List;
 @Accessors(chain = true)
 @EqualsAndHashCode(callSuper = true)
 public class OutStoreFormVO extends BaseVO implements Serializable {
+    private String projectName;
+    private String projectId;
     private String repairNo;
 
 

+ 125 - 0
platform-dao/src/main/resources/mapper/project/ProjectMapper.xml

@@ -0,0 +1,125 @@
+<?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.platform.dao.mapper.project.ProjectMapper">
+    <sql id="Base_Column_List">
+        t1.id,  t1.no, t1.name,  t1.parent_id,
+        pt.name as parentName,t1.type
+    </sql>
+
+    <select id="selectVOList" parameterType="com.platform.dao.dto.project.ProjectDTO"
+            resultType="com.platform.dao.vo.query.project.ProjectVO">
+        select
+        <include refid="Base_Column_List"/>
+        from t_project t1
+        left join t_project pt on t1.parent_id = pt.id
+        <where>
+            <if test="type!=null">
+                t1.type=#{type}
+            </if>
+            <if test="keyword != null and keyword != ''">
+                ( t1.name like concat('%',#{keyword},'%') or
+                t1.no like concat('%',#{keyword},'%'))
+            </if>
+            <if test="parentId != null and parentId != ''">
+                and ( t1.parent_id = #{parentId} or t1.id = #{parentId})
+            </if>
+
+            <if test="nameList!=null and nameList.size>0">
+                AND t1.name in
+                <foreach item="item" index="index" collection="nameList" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
+
+            <if test="parentList!=null and parentList.size>0">
+                AND t1.parent_id in
+                <foreach item="item" index="index" collection="parentList" open="(" close=")" separator=",">
+                    #{item}
+                </foreach>
+            </if>
+        </where>
+        order by t1.sort ASC
+    </select>
+
+<!--    <select id="getSbTypeNum" parameterType="com.platform.dao.dto.project.ProjectDTO"-->
+<!--            resultType="com.platform.dao.vo.report.SbInfoTypeReportVO2">-->
+<!--        select count(1) as totalNum,t1.parent_id as id,t2.name as typeName from t_sb_type t1 left join t_sb_type t2 on t1.parent_id = t2.id-->
+<!--        <where>-->
+<!--            <if test="parentList!=null and parentList.size>0">-->
+<!--                AND t1.parent_id in-->
+<!--                <foreach item="item" index="index" collection="parentList" open="(" close=")" separator=",">-->
+<!--                    #{item}-->
+<!--                </foreach>-->
+<!--            </if>-->
+<!--        </where>-->
+<!--        group by t1.parent_id-->
+<!--    </select>-->
+
+    <select id="selectById" parameterType="java.lang.Object"
+            resultType="com.platform.dao.vo.query.project.ProjectVO">
+        select
+        <include refid="Base_Column_List"/>
+        from t_project t1
+        left join t_project pt on t1.parent_id = pt.id
+        where t1.id=#{value}
+    </select>
+
+    <!--查询姓名-->
+    <select id="selectNameById" parameterType="java.lang.Object" resultType="java.lang.String">
+        select name
+        from t_sb_type
+        where id = #{value}
+    </select>
+
+    <select id="selectLongYanList" parameterType="com.platform.dao.dto.sb.SbTypeDTO"
+            resultType="com.platform.dao.vo.sb.SbTypeVO">
+        select * from t_sb_type
+        <where>
+            <choose>
+                <when test="parentId != null and parentId != ''">
+                    and parent_id = #{parentId}
+                </when>
+                <otherwise>
+                    and (parent_id is null or parent_id = '')
+                </otherwise>
+            </choose>
+        </where>
+    </select>
+
+    <select id="getTypeIds" resultType="java.lang.String"
+    parameterType="com.platform.dao.dto.sb.SbTypeDTO"
+    >
+        select id from t_sb_type
+        <where>
+        <if test="parentList!=null and parentList.size>0">
+            and parent_id in
+            <foreach collection="parentList" item="item" open="(" separator="," close=")">
+                #{item}
+            </foreach>
+        </if>
+        </where>
+    </select>
+
+    <select id="getSbNums" resultType="com.platform.dao.vo.report.SbInfoTypeReportVO2"
+    parameterType="com.platform.dao.dto.sb.SbTypeDTO">
+    select count(1) as totalNum,type2.name as typeName
+    from t_sb_type type inner join t_sb_info info on
+    type.id = info.type_id left join t_sb_type type2 on type.parent_id = type2.id
+    <where>
+    <if test="idList!=null and idList.size>0">
+        and type.id in
+        <foreach collection="idList" item="item" open="(" separator="," close=")">
+            #{item}
+        </foreach>
+    </if>
+
+    <if test="useType!=null">
+        and info.use_type=#{useType}
+    </if>
+    </where>
+
+    </select>
+
+
+
+</mapper>

+ 197 - 0
platform-rest/src/main/java/com/platform/rest/controller/project/ProjectController.java

@@ -0,0 +1,197 @@
+package com.platform.rest.controller.project;
+
+import com.platform.common.bean.AbstractPageResultBean;
+import com.platform.common.util.BeanConverterUtil;
+import com.platform.common.util.R;
+import com.platform.common.validation.group.AddGroup;
+import com.platform.common.validation.group.UpdateGroup;
+import com.platform.dao.dto.project.ProjectDTO;
+import com.platform.dao.dto.sb.SbTypeDTO;
+import com.platform.dao.entity.project.Project;
+import com.platform.dao.entity.sb.SbType;
+import com.platform.dao.util.ExcelUtil;
+import com.platform.dao.util.TreeUtil;
+import com.platform.dao.vo.export.sb.ExportSbTypeVO;
+import com.platform.dao.vo.query.project.ProjectVO;
+import com.platform.dao.vo.sb.SbTypeVO;
+import com.platform.rest.log.annotation.SysLog;
+import com.platform.service.project.ProjectService;
+import com.platform.service.sb.SbTypeService;
+import lombok.AllArgsConstructor;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.*;
+
+import javax.servlet.http.HttpServletResponse;
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description 设备类别 控制器
+ * @Author liuyu
+ * @Date 2020-04-21 16:53:51
+ * @Version Copyright (c) 2019,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@RestController
+@AllArgsConstructor
+@RequestMapping("/project")
+public class ProjectController {
+
+    private final ProjectService projectService;
+
+    private final SbTypeService sbTypeService;
+
+    /**
+     * 通过id查询单条记录
+     *
+     * @param id 主键
+     * @return R
+     */
+    @GetMapping("/{id}")
+    public R<Project> getById(@PathVariable("id") String id) {
+        return new R<>(projectService.getModelById(id));
+    }
+
+    /**
+     * 新增记录
+     *
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @SysLog("新增设备类别")
+    @PostMapping
+    @PreAuthorize("@pms.hasPermission('sb-types-add')")
+    public R save(@Validated({AddGroup.class}) @RequestBody ProjectDTO sbTypeDTO) {
+        return new R<>(projectService.saveModelByDTO(sbTypeDTO));
+    }
+
+    /**
+     * 修改记录
+     *
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @SysLog("修改设备类别")
+    @PutMapping("/{id}")
+    @PreAuthorize("@pms.hasPermission('sb-types-edit')")
+    public R update(@PathVariable("id") String id, @Validated({UpdateGroup.class}) @RequestBody ProjectDTO sbTypeDTO) {
+        projectService.modModelByDTO(sbTypeDTO);
+        return new R<>();
+    }
+
+    /**
+     * 通过id删除一条记录
+     *
+     * @param id 主键
+     * @return R
+     */
+    @SysLog("删除设备类别")
+    @DeleteMapping("/{id}")
+    @PreAuthorize("@pms.hasPermission('sb-types-del')")
+    public R removeById(@PathVariable String id) {
+        projectService.deleteByPrimaryKey(id);
+        return new R<>();
+    }
+
+    /**
+     * 批量记录
+     *
+     * @param ids 主键
+     * @return R
+     */
+    @SysLog("批量删除设备类别")
+    @DeleteMapping("")
+    @PreAuthorize("@pms.hasPermission('sb-types-del')")
+    public R removeIds(@RequestBody List<String> ids) {
+        projectService.batchDelete(ids);
+        return new R<>();
+    }
+
+    /**
+     * 获取分页
+     *
+     * @param pageNum   当前页码
+     * @param pageSize  每页条数
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @GetMapping("/page")
+    public R<AbstractPageResultBean<ProjectVO>> query(ProjectDTO sbTypeDTO, @RequestParam(defaultValue = "1") int pageNum, @RequestParam(defaultValue = "20") int pageSize) {
+        return new R<>(projectService.selectVOPage(sbTypeDTO, pageNum, pageSize));
+    }
+
+    /**
+     * 获取列表
+     *
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @GetMapping("")
+    public R query(ProjectDTO sbTypeDTO) {
+        return new R<>(projectService.selectVOList(sbTypeDTO));
+    }
+
+    /**
+     * 设备类别导出
+     *
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @GetMapping("/export")
+    @SysLog("设备类别导出")
+    @PreAuthorize("@pms.hasPermission('sb-types-export')")
+    public void export(HttpServletResponse response, ProjectDTO sbTypeDTO) {
+        List<ProjectVO> list = projectService.selectVOList(sbTypeDTO);
+        ExcelUtil.exportResponseDict(response, ExportSbTypeVO.class, BeanConverterUtil.copyListProperties(list, ExportSbTypeVO.class), "设备类别");
+    }
+
+    /**
+     * 获取设备tree
+     *
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @GetMapping("tree")
+    public R queryTree(ProjectDTO sbTypeDTO) {
+        return new R<>(TreeUtil.buildProjectTree(projectService.selectVOList(sbTypeDTO), ""));
+    }
+
+    /**
+     * 获取设备tables tree
+     *
+     * @param sbTypeDTO 设备类别DTO
+     * @return R
+     */
+    @GetMapping("tableTree")
+    public R queryTableTree(ProjectDTO sbTypeDTO) {
+
+        List<ProjectVO> typeList= projectService.selectVOList(sbTypeDTO);
+        List<ProjectVO> parentList = new ArrayList<ProjectVO>();
+        for(ProjectVO type: typeList){
+            if(type.getType() == 1){
+                ProjectVO parent = type;
+                List<ProjectVO> children = new ArrayList<ProjectVO>();
+                for(ProjectVO child: typeList){
+                    if(type.getId().equals(child.getParentId())){
+                        children.add(child);
+                    }
+                }
+                parent.setChildren(children);
+                parentList.add(parent);
+            }
+        }
+        return new R<>(parentList);
+    }
+
+//    /**
+//     * 获取列表
+//     *
+//     * @param sbTypeDTO 设备位置DTO
+//     * @return R
+//     */
+//    @GetMapping("/longYan")
+//    public R queryLongYan(ProjectDTO sbTypeDTO) {
+//        return new R<>(ProjectService.selectLongYanList(sbTypeDTO));
+//    }
+
+}

+ 41 - 0
platform-service/src/main/java/com/platform/service/project/ProjectService.java

@@ -0,0 +1,41 @@
+package com.platform.service.project;
+
+import com.platform.dao.bean.MyVOPage;
+import com.platform.dao.dto.project.ProjectDTO;
+import com.platform.dao.dto.sb.SbTypeDTO;
+import com.platform.dao.entity.project.Project;
+import com.platform.dao.entity.sb.SbType;
+import com.platform.dao.vo.query.project.ProjectVO;
+import com.platform.dao.vo.sb.SbTypeVO;
+import com.platform.service.base.IBaseService;
+
+import java.util.List;
+
+/**
+ * @Description 设备类别 service
+ * @Author liuyu
+ * @Date 2020-04-21 16:53:51
+ * @Version Copyright (c) 2019,北京乾元坤和科技有限公司 All rights reserved.
+ */
+public interface ProjectService extends IBaseService<Project, ProjectDTO> {
+    public List<ProjectVO> selectVOList(ProjectDTO model);
+    /**
+     * 分页查询
+     *
+     * @param dto      :
+     * @param pageNum  :
+     * @param pageSize :
+     * @return :
+     */
+    MyVOPage<ProjectVO> selectVOPage(ProjectDTO dto, int pageNum, int pageSize);
+    /**
+     * 批量删除
+     *
+     * @param ids :
+     * @return :
+     */
+    int batchDelete(List<String> ids);
+
+    List<ProjectVO> selectLongYanList(ProjectDTO dto);
+
+}

+ 84 - 0
platform-service/src/main/java/com/platform/service/project/impl/ProjectServiceImpl.java

@@ -0,0 +1,84 @@
+package com.platform.service.project.impl;
+
+import com.github.pagehelper.PageHelper;
+import com.platform.dao.bean.MyVOPage;
+import com.platform.dao.dto.project.ProjectDTO;
+import com.platform.dao.dto.sb.SbTypeDTO;
+import com.platform.dao.entity.project.Project;
+import com.platform.dao.entity.sb.SbType;
+import com.platform.dao.mapper.project.ProjectMapper;
+import com.platform.dao.mapper.sb.SbTypeMapper;
+import com.platform.dao.vo.query.project.ProjectVO;
+import com.platform.dao.vo.sb.SbTypeVO;
+import com.platform.service.base.impl.BaseServiceImpl;
+import com.platform.service.project.ProjectService;
+import com.platform.service.sb.SbTypeService;
+import com.platform.service.util.ExecuteSql;
+import lombok.AllArgsConstructor;
+import org.springframework.stereotype.Service;
+import tk.mybatis.mapper.weekend.Weekend;
+import tk.mybatis.mapper.weekend.WeekendCriteria;
+
+import java.util.ArrayList;
+import java.util.List;
+
+/**
+ * @Description 设备类别 service 实现类
+ * @Author liuyu
+ * @Date 2020-04-21 16:53:51
+ * @Version Copyright (c) 2019,北京乾元坤和科技有限公司 All rights reserved.
+ */
+@AllArgsConstructor
+@Service("ProjectService")
+public class ProjectServiceImpl extends BaseServiceImpl<ProjectMapper, Project, ProjectDTO> implements ProjectService {
+    @Override
+    public int batchDelete(List<String> ids) {
+        Weekend<Project> weekend = new Weekend<>(Project.class);
+        WeekendCriteria<Project, Object> weekendCriteria = weekend.weekendCriteria();
+        weekendCriteria.andIn(Project::getId, ids);
+        mapper.deleteByExample(weekend);
+        return 1;
+    }
+
+    @Override
+    public List<ProjectVO> selectLongYanList(ProjectDTO dto) {
+        return mapper.selectLongYanList(dto);
+    }
+
+    @Override
+    public MyVOPage<ProjectVO> selectVOPage(ProjectDTO model, int pageNum, int pageSize) {
+        PageHelper.startPage(pageNum, pageSize);
+        return new MyVOPage<>(mapper.selectVOList(model));
+    }
+
+//    @Override
+//    public ProjectVO getModelById(Object id) {
+//        ProjectVO Project = mapper.selectById(id);
+//        return Project;
+//    }
+
+    @Override
+    public List<ProjectVO> selectVOList(ProjectDTO model) {
+        List<ProjectVO> result = mapper.selectVOList(model);
+
+        return result;
+    }
+
+    /**
+     * 设置查询条件
+     */
+    private void setWeekendCriteria(Weekend<Project> weekend, ProjectDTO model) {
+        WeekendCriteria<Project, Object> weekendCriteria = weekend.weekendCriteria();
+        ExecuteSql.executeNotNull(model.getId(), () -> weekendCriteria.andNotEqualTo(Project::getId, model.getId()));
+    }
+
+    @Override
+    public Project saveModelByDTO(ProjectDTO model) {
+        //Weekend<Project> weekend = new Weekend<>(Project.class);
+        //weekend.weekendCriteria().andIsNotNull(Project::getId);
+        //Integer count = mapper.selectCountByExample(weekend);
+        //model.setNo(IdGeneratorUtils.getProjectNo(++count));
+        return super.saveModelByDTO(model);
+    }
+
+}

+ 6 - 0
platform-service/src/main/java/com/platform/service/store/impl/OutStoreFormServiceImpl.java

@@ -13,15 +13,18 @@ import com.platform.dao.bean.MyPage;
 import com.platform.dao.dto.store.OutStoreDetailDTO;
 import com.platform.dao.dto.store.OutStoreFormDTO;
 import com.platform.dao.dto.store.SparePickFormDTO;
+import com.platform.dao.entity.project.Project;
 import com.platform.dao.entity.repair.RepairApplicationForm;
 import com.platform.dao.entity.sb.SbOil;
 import com.platform.dao.entity.store.*;
 import com.platform.dao.enums.*;
+import com.platform.dao.mapper.project.ProjectMapper;
 import com.platform.dao.mapper.repair.RepairApplicationFormMapper;
 import com.platform.dao.mapper.sb.SbInfoMapper;
 import com.platform.dao.mapper.sb.SbPositionMapper;
 import com.platform.dao.mapper.store.*;
 import com.platform.dao.util.MessageTemplateUtil;
+import com.platform.dao.vo.query.project.ProjectVO;
 import com.platform.dao.vo.query.store.*;
 import com.platform.service.base.impl.BaseServiceImpl;
 import com.platform.service.event.WorkplaceBacklogEvent;
@@ -68,6 +71,7 @@ public class OutStoreFormServiceImpl extends BaseServiceImpl<OutStoreFormMapper,
     private SbPositionMapper sbPositionMapper;
     private SysUserRoleService sysUserService;
     private OutStoreDetailService outStoreDetailService;
+    private ProjectMapper projectMapper;
 
     @Override
     public List<OutStoreFormVO> selectbyRepairForm(String id) {
@@ -272,6 +276,7 @@ public class OutStoreFormServiceImpl extends BaseServiceImpl<OutStoreFormMapper,
      */
     @Override
     public OutStoreForm saveModelByDTOYY(OutStoreFormDTO model) {
+        ProjectVO project = projectMapper.selectById(model.getProjectId());
         UserInfo userInfo = SecurityUtils.getUserInfo();
         // selectCount会有分页参数,偶尔会出现bug,修复
         BigDecimal countNum = mapper.getOutStoreFormCount1(new OutStoreFormDTO());
@@ -300,6 +305,7 @@ public class OutStoreFormServiceImpl extends BaseServiceImpl<OutStoreFormMapper,
         model.setStoreId(detailList.get(0).getStoreId());
         model.setStoreName(detailList.get(0).getStoreName());
         model.setPickId(model.getPickId());
+        model.setProjectName(project.getParentName()+"->"+project.getName());
         OutStoreForm outStoreForm = super.saveModelByDTO(model);
         // 插
         for (OutStoreDetailDTO detail : detailList) {

+ 35 - 1
platform-service/src/main/java/com/platform/service/yongyou/impl/YongyouServiceImpl.java

@@ -79,6 +79,14 @@ public class YongyouServiceImpl implements YongyouService {
             return token;
         }
     }
+    private String geToken(Integer type) {
+//        String token = RedisUtils.getString(token_key);
+//        if (StringUtils.isBlank(token)) {
+            return geTokenForce(type);
+//        } else {
+//            return token;
+//        }
+    }
 
     /**
      * 强制重新获取token
@@ -107,6 +115,32 @@ public class YongyouServiceImpl implements YongyouService {
         RedisUtils.setString(cAcc_ID_key, login.getCAcc_ID(), 1800);
         return token;
     }
+    private String geTokenForce(Integer type) {
+        LoginHandler handler = new LoginHandler();
+        LoginRequest req = new LoginRequest();
+        req.setCSrv("192.168.16.249");
+        req.setPUserId("sb");
+        req.setPPassword("321.jkl");
+        if (type==1) {
+            req.setPAccId("005");
+        }else{
+            req.setPAccId("004");
+        }
+        req.setPDate(DateUtils.dateToString(LocalDate.now(), DateUtils.PATTERN_YMD));
+        req.setPSubId("DP");
+        handler.setRequest(req);
+        String responseStr = handler.handler();
+        LoginResponse response = JSONObject.parseObject(responseStr, LoginResponse.class);
+        if (!response.getResult()) {
+            throw new BusinessException(response.getMsg() + "," + response.getData().getMsg());
+        }
+        Login login = response.getData();
+        String token = login.getToken();
+        RedisUtils.setString(token_key, token, 1800);
+        RedisUtils.setString(Conn_key, login.getConn(), 1800);
+        RedisUtils.setString(cAcc_ID_key, login.getCAcc_ID(), 1800);
+        return token;
+    }
 
     private String getConn() {
         return RedisUtils.getString(Conn_key);
@@ -129,7 +163,7 @@ public class YongyouServiceImpl implements YongyouService {
         // 已生成情况,直接推送
         GetCurrentStockHandler handler = new GetCurrentStockHandler();
         GetCurrentStockRequest req = new GetCurrentStockRequest();
-        req.setToken(geToken());
+        req.setToken(geToken(record.getTokenType()));
         req.setConn(getConn());
         req.setCAcc_ID(getCAccId());
         req.setPageNum(pageNum);