jinlin
2023-11-22 d363e8168a9d821a87ff75406aec9a87ed19722a
Changes
7个文件已修改
6个文件已添加
549 ■■■■ 已修改文件
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/controller/ItemCirculatOrderController.java 45 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/controller/ItemCirculatOrderTechnicalController.java 96 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/dao/ItemCirculatOrderTechnicalDao.java 23 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/dto/ItemCirculatOrderDto.java 32 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrderTechnical.java 54 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java 106 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderTechnicalService.java 49 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/resources/mapper/itemCirculatOrder/ItemCirculatOrderDao.xml 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/resources/mapper/itemCirculatOrder/ItemCirculatOrderTechnicalDao.xml 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue 111 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/itemCirculatOrder/ItemCirculatOrder.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
web/src/views/modules/project/Environ.vue 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/controller/ItemCirculatOrderController.java
@@ -12,8 +12,13 @@
import com.zt.common.validator.group.AddGroup;
import com.zt.common.validator.group.DefaultGroup;
import com.zt.common.validator.group.UpdateGroup;
import com.zt.life.modules.itemCirculatOrder.dto.ItemCirculatOrderDto;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrder;
import com.zt.life.modules.itemCirculatOrder.service.ItemCirculatOrderService;
import com.zt.life.modules.project.dto.SoftwareTestOrderDto;
import com.zt.life.sys.dto.OssDto;
import com.zt.life.sys.service.SysOssConfigService;
import com.zt.modules.coderule.service.SysCodeRuleService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
@@ -23,7 +28,9 @@
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
@@ -39,6 +46,12 @@
    @Autowired
    private ItemCirculatOrderService itemCirculatOrderService;
    @Autowired
    private SysCodeRuleService sysCodeRuleService;
    @Autowired
    private SysOssConfigService sysOssConfigService;
    @GetMapping("page")
    @ApiOperation("分页")
    @ApiImplicitParams({
@@ -52,37 +65,45 @@
        return PageResult.ok(itemCirculatOrderService.page(queryFilter));
    }
    @GetMapping("{id}")
    @GetMapping("getDto")
    @ApiOperation("信息")
    public Result<ItemCirculatOrder> get(@PathVariable("id") Long id){
        ItemCirculatOrder data = itemCirculatOrderService.get(id);
    public Result<ItemCirculatOrderDto> getDto(Long projectId, Long circulatOrderid) {
        ItemCirculatOrderDto data = itemCirculatOrderService.getDto(projectId, circulatOrderid);
        if (circulatOrderid!=null) {
            OssDto ossDto = sysOssConfigService.getOssByBusiType(circulatOrderid, "circulat_order");
            if (ossDto != null) {
                data.setFiles(ossDto);
            }
        }
        return Result.ok(data);
    }
    @PostMapping
    @ApiOperation("新增")
    @LogOperation("新增")
    public Result insert(@RequestBody ItemCirculatOrder itemCirculatOrder){
    public Result insert(@RequestBody ItemCirculatOrderDto itemCirculatOrderDto){
        //效验数据
        ValidatorUtils.validateEntity(itemCirculatOrder, AddGroup.class, DefaultGroup.class);
        itemCirculatOrderService.insert(itemCirculatOrder);
        ValidatorUtils.validateEntity(itemCirculatOrderDto.getCirculatOrder(), AddGroup.class, DefaultGroup.class);
        Map<String, String> map = new HashMap<>();
        map.put("funCode", "item_circulat_order");
        map.put("projectId",itemCirculatOrderDto.getProjectId().toString());
        itemCirculatOrderDto.getCirculatOrder().setCode(sysCodeRuleService.getNewCode(map));
        Boolean result = itemCirculatOrderService.save(itemCirculatOrderDto);
        return Result.ok();
    }
    @PutMapping
    @ApiOperation("修改")
    @LogOperation("修改")
    public Result update(@RequestBody ItemCirculatOrder itemCirculatOrder){
    public Result update(@RequestBody ItemCirculatOrderDto itemCirculatOrderDto){
        //效验数据
        ValidatorUtils.validateEntity(itemCirculatOrder, UpdateGroup.class, DefaultGroup.class);
        itemCirculatOrderService.update(itemCirculatOrder);
        ValidatorUtils.validateEntity(itemCirculatOrderDto.getCirculatOrder(), UpdateGroup.class, DefaultGroup.class);
        Boolean result = itemCirculatOrderService.save(itemCirculatOrderDto);
        return Result.ok();
    }
    @DeleteMapping
    @DeleteMapping("deleteCirculat")
    @ApiOperation("删除")
    @LogOperation("删除")
    public Result delete(@RequestBody Long[] ids){
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/controller/ItemCirculatOrderTechnicalController.java
New file
@@ -0,0 +1,96 @@
package com.zt.life.modules.itemCirculatOrder.controller;
import com.zt.common.annotation.LogOperation;
import com.zt.common.constant.Constant;
import com.zt.common.annotation.QueryParam;
import com.zt.common.db.query.QueryFilter;
import com.zt.common.servlet.Result;
import com.zt.common.servlet.PageResult;
import com.zt.common.validator.AssertUtils;
import com.zt.common.validator.ValidatorUtils;
import com.zt.common.validator.group.AddGroup;
import com.zt.common.validator.group.DefaultGroup;
import com.zt.common.validator.group.UpdateGroup;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical;
import com.zt.life.modules.itemCirculatOrder.service.ItemCirculatOrderTechnicalService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
 * item_circulat_order_technical
 *
 * @author zt generator
 * @since 1.0.0 2023-11-22
 */
@RestController
@RequestMapping("/itemCirculatOrder/ItemCirculatOrderTechnical/")
@Api(tags="item_circulat_order_technical")
public class ItemCirculatOrderTechnicalController {
    @Autowired
    private ItemCirculatOrderTechnicalService itemCirculatOrderTechnicalService;
    @GetMapping("page")
    @ApiOperation("分页")
    @ApiImplicitParams({
        @ApiImplicitParam(name = Constant.Q.PAGE, value = Constant.QV.PAGE, required = true, dataType = Constant.QT.INT),
        @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT),
        @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING),
        @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING),
    })
    public PageResult<ItemCirculatOrderTechnical> page(@ApiIgnore @QueryParam QueryFilter queryFilter){
        return PageResult.ok(itemCirculatOrderTechnicalService.page(queryFilter));
    }
    @GetMapping("{id}")
    @ApiOperation("信息")
    public Result<ItemCirculatOrderTechnical> get(@PathVariable("id") Long id){
        ItemCirculatOrderTechnical data = itemCirculatOrderTechnicalService.get(id);
        return Result.ok(data);
    }
    @PostMapping
    @ApiOperation("新增")
    @LogOperation("新增")
    public Result insert(@RequestBody ItemCirculatOrderTechnical itemCirculatOrderTechnical){
        //效验数据
        ValidatorUtils.validateEntity(itemCirculatOrderTechnical, AddGroup.class, DefaultGroup.class);
        itemCirculatOrderTechnicalService.insert(itemCirculatOrderTechnical);
        return Result.ok();
    }
    @PutMapping
    @ApiOperation("修改")
    @LogOperation("修改")
    public Result update(@RequestBody ItemCirculatOrderTechnical itemCirculatOrderTechnical){
        //效验数据
        ValidatorUtils.validateEntity(itemCirculatOrderTechnical, UpdateGroup.class, DefaultGroup.class);
        itemCirculatOrderTechnicalService.update(itemCirculatOrderTechnical);
        return Result.ok();
    }
    @DeleteMapping
    @ApiOperation("删除")
    @LogOperation("删除")
    public Result delete(@RequestBody Long[] ids){
        //效验数据
        AssertUtils.isArrayEmpty(ids, "id");
        itemCirculatOrderTechnicalService.delete(ids);
        return Result.ok();
    }
}
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/dao/ItemCirculatOrderTechnicalDao.java
New file
@@ -0,0 +1,23 @@
package com.zt.life.modules.itemCirculatOrder.dao;
import com.zt.common.dao.BaseDao;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical;
import org.apache.ibatis.annotations.Mapper;
import java.util.List;
import java.util.Map;
/**
 * item_circulat_order_technical
 *
 * @author zt generator
 * @since 1.0.0 2023-11-22
 */
@Mapper
public interface ItemCirculatOrderTechnicalDao extends BaseDao<ItemCirculatOrderTechnical> {
    List<ItemCirculatOrderTechnical> getList(Map<String, Object> params);
}
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/dto/ItemCirculatOrderDto.java
New file
@@ -0,0 +1,32 @@
package com.zt.life.modules.itemCirculatOrder.dto;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrder;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical;
import com.zt.life.modules.project.model.*;
import com.zt.life.modules.sysBaseInfo.model.TestAgencyInfo;
import com.zt.life.sys.dto.OssDto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class ItemCirculatOrderDto {
    private Long id;
    private Long projectId;
    private Long circulatOrderid;
    @ApiModelProperty(value = "测试项目基本信息")
    private Project project;
    @ApiModelProperty(value = "物品流转单")
    private ItemCirculatOrder circulatOrder;
    @ApiModelProperty(value = "测试机构信息")
    private TestAgencyInfo TestAgencyInfo;
    @ApiModelProperty(value = "附件")
    private OssDto files;
    @ApiModelProperty(value = "技术资料")
    private List<ItemCirculatOrderTechnical> technicalList = new ArrayList<>();
}
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/model/ItemCirculatOrderTechnical.java
New file
@@ -0,0 +1,54 @@
package com.zt.life.modules.itemCirculatOrder.model;
import com.baomidou.mybatisplus.annotation.TableName;
import com.zt.common.entity.BusiEntity;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
/**
 * item_circulat_order_technical
 *
 * @author zt generator
 * @since 1.0.0 2023-11-22
 */
@Data
@EqualsAndHashCode(callSuper=false)
@TableName("item_circulat_order_technical")
public class ItemCirculatOrderTechnical extends BusiEntity {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "物品流转单ID")
    private Long circulatOrderId;
    @ApiModelProperty(value = "序号")
    private Integer no;
    @ApiModelProperty(value = "技术资料名称")
    private String infoName;
    @ApiModelProperty(value = "标识")
    private String identify;
    @ApiModelProperty(value = "版本")
    private String version;
    @ApiModelProperty(value = "密级")
    private String secretClass;
    @ApiModelProperty(value = "介质")
    private String medium;
    @ApiModelProperty(value = "数量")
    private String amount;
    @ApiModelProperty(value = "备注")
    private String remark;
    @ApiModelProperty(value = "文件")
    private String file;
}
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderService.java
@@ -1,12 +1,35 @@
package com.zt.life.modules.itemCirculatOrder.service;
import com.zt.common.service.BaseService;
import com.zt.core.sys.dto.DictDto;
import com.zt.core.sys.dto.DictItemDto;
import com.zt.core.sys.dto.DictLeafDto;
import com.zt.life.export.dto.WordFile;
import com.zt.life.modules.itemCirculatOrder.dao.ItemCirculatOrderDao;
import com.zt.life.modules.itemCirculatOrder.dto.ItemCirculatOrderDto;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrder;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical;
import com.zt.life.modules.project.dto.SoftwareTestOrderDto;
import com.zt.life.modules.project.model.*;
import com.zt.life.modules.project.service.ProjectService;
import com.zt.life.modules.project.service.SoftwareTestOrderService;
import com.zt.life.modules.sysBaseInfo.service.TestAgencyInfoService;
import com.zt.life.sys.service.SysOssConfigService;
import com.zt.modules.coderule.service.SysCodeRuleService;
import com.zt.modules.oss.service.SysOssService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.zt.common.db.query.QueryFilter;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.FileNotFoundException;
import java.io.UnsupportedEncodingException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
@@ -17,7 +40,26 @@
 */
@Service
public class ItemCirculatOrderService  extends BaseService<ItemCirculatOrderDao, ItemCirculatOrder> {
    @Autowired
    private SysOssConfigService sysOssConfigService;
    @Autowired
    private SysOssService sysOssService;
    @Autowired
    private TestAgencyInfoService testAgencyInfoService;
    @Autowired
    private SysCodeRuleService sysCodeRuleService;
    @Autowired
    private ProjectService projectService;
    @Autowired
    private ItemCirculatOrderTechnicalService technicalService;
    @Autowired
    private SoftwareTestOrderService softwareTestOrderService;
    /**
     * 分页查询
     *
@@ -37,4 +79,68 @@
        super.deleteLogic(ids);
    }
    public Boolean save(ItemCirculatOrderDto itemCirculatOrderDto) {
        Long circulatOrderid = itemCirculatOrderDto.getCirculatOrder().getId();
        if (circulatOrderid != null)
            baseDao.updateById(itemCirculatOrderDto.getCirculatOrder());
        else {
            Map<String, String> map = new HashMap<>();
            map.put("funCode", "item_circulat_order");
            map.put("projectId",itemCirculatOrderDto.getProjectId().toString());
            itemCirculatOrderDto.getCirculatOrder().setProjectId(itemCirculatOrderDto.getProjectId());
            itemCirculatOrderDto.getCirculatOrder().setCode(sysCodeRuleService.getNewCode(map));
            baseDao.insert(itemCirculatOrderDto.getCirculatOrder());
            circulatOrderid = itemCirculatOrderDto.getCirculatOrder().getId();
        }
        for (ItemCirculatOrderTechnical circulatOrderTechnical : itemCirculatOrderDto.getTechnicalList()) {
            circulatOrderTechnical.setCirculatOrderId(circulatOrderid);
            if (circulatOrderTechnical.getId() != null) {
                technicalService.update(circulatOrderTechnical);
            } else {
                circulatOrderTechnical.setCirculatOrderId(circulatOrderid);
                technicalService.insert(circulatOrderTechnical);
            }
        }
        if (itemCirculatOrderDto.getTestAgencyInfo().getId() == 10000) {
            itemCirculatOrderDto.getTestAgencyInfo().setId(circulatOrderid);
            testAgencyInfoService.insert(itemCirculatOrderDto.getTestAgencyInfo());
        } else {
            testAgencyInfoService.update(itemCirculatOrderDto.getTestAgencyInfo());
        }
        sysOssConfigService.updateOss(itemCirculatOrderDto.getId(), itemCirculatOrderDto.getFiles());// 保存附件
        return true;
    }
    public ItemCirculatOrderDto getDto(Long projectId, Long circulatOrderid) {
        ItemCirculatOrderDto data = new ItemCirculatOrderDto();
        if (circulatOrderid != null) {
            data.setId(circulatOrderid);
            ItemCirculatOrder itemCirculatOrder = this.get(circulatOrderid);
            data.setCirculatOrder(itemCirculatOrder);
            projectId = itemCirculatOrder.getProjectId();
            data.setTestAgencyInfo(testAgencyInfoService.get(circulatOrderid));
            List<ItemCirculatOrderTechnical> technicalList = technicalService.getList(circulatOrderid);
            data.setTechnicalList(technicalList);
        } else {
            ItemCirculatOrder itemCirculatOrder =new ItemCirculatOrder();
            data.setCirculatOrder(itemCirculatOrder);
        }
        if (projectId != null) {
            data.setProjectId(projectId);
            data.setProject(projectService.get(projectId));
        }
        if (data.getTestAgencyInfo() == null)
            data.setTestAgencyInfo(testAgencyInfoService.get(10000L));
        return data;
    }
}
modules/mainPart/src/main/java/com/zt/life/modules/itemCirculatOrder/service/ItemCirculatOrderTechnicalService.java
New file
@@ -0,0 +1,49 @@
package com.zt.life.modules.itemCirculatOrder.service;
import com.zt.common.service.BaseService;
import com.zt.life.modules.itemCirculatOrder.dao.ItemCirculatOrderTechnicalDao;
import com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical;
import com.zt.life.modules.project.model.SoftwareTestOrderMeasured;
import org.springframework.stereotype.Service;
import com.zt.common.db.query.QueryFilter;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
 * item_circulat_order_technical
 *
 * @author zt generator
 * @since 1.0.0 2023-11-22
 */
@Service
public class ItemCirculatOrderTechnicalService  extends BaseService<ItemCirculatOrderTechnicalDao, ItemCirculatOrderTechnical> {
    /**
     * 分页查询
     *
     * @param queryFilter
     * @return
     */
    public List<ItemCirculatOrderTechnical> page(QueryFilter queryFilter) {
        return baseDao.getList(queryFilter.getQueryParams());
    }
    /**
     * 删除
     *
     * @param ids
     */
    public void delete(Long[] ids) {
        super.deleteLogic(ids);
    }
    public List<ItemCirculatOrderTechnical> getList(Long circulatOrderid) {
        Map<String, Object> params = new HashMap<>();
        params.put("circulatOrderid",circulatOrderid);
        return baseDao.getList(params);
    }
}
modules/mainPart/src/main/java/com/zt/life/modules/project/controller/EnvironController.java
@@ -67,7 +67,8 @@
            @ApiImplicitParam(name = Constant.Q.LIMIT, value = Constant.QV.LIMIT, required = true, dataType = Constant.QT.INT),
            @ApiImplicitParam(name = Constant.Q.ORDER_FIELD, value = Constant.QV.ORDER_FIELD, dataType = Constant.QT.STRING),
            @ApiImplicitParam(name = Constant.Q.ORDER, value = Constant.QV.ORDER, dataType = Constant.QT.STRING),
            @ApiImplicitParam(name = "code", value = "编号", dataType = Constant.QT.STRING, format = "CODE^LK")})
            @ApiImplicitParam(name = "code", value = "编号", dataType = Constant.QT.STRING, format = "CODE^LK"),
            @ApiImplicitParam(name = "softwareName", value = "软件名称", dataType = Constant.QT.STRING, format = "software_name^EQ"),})
    public PageResult<Environ> page(@ApiIgnore @QueryParam QueryFilter queryFilter) {
        return PageResult.ok(environService.page(queryFilter));
modules/mainPart/src/main/resources/mapper/itemCirculatOrder/ItemCirculatOrderDao.xml
@@ -4,10 +4,11 @@
<mapper namespace="com.zt.life.modules.itemCirculatOrder.dao.ItemCirculatOrderDao">
    <select id="getList" resultType="com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrder">
        select a.*
        select a.*, p.*
        from item_circulat_order a
        INNER JOIN  project p ON p.id = a.project_id
        <where>
            a.is_delete = 0
            a.is_delete = 0 and p.is_delete = 0
            <if test="whereSql!=null">
                and ${whereSql}
            </if>
modules/mainPart/src/main/resources/mapper/itemCirculatOrder/ItemCirculatOrderTechnicalDao.xml
New file
@@ -0,0 +1,20 @@
<?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.zt.life.modules.itemCirculatOrder.dao.ItemCirculatOrderTechnicalDao">
    <select id="getList" resultType="com.zt.life.modules.itemCirculatOrder.model.ItemCirculatOrderTechnical">
        select a.*
        from item_circulat_order_technical a
        <where>
            a.is_delete = 0
            <if test="circulatOrderid!=null">
                and circulat_order_id = ${circulatOrderid}
            </if>
        </where>
        <if test="orderBySql!=null">
            ORDER BY ${orderBySql}
        </if>
    </select>
</mapper>
web/src/views/modules/itemCirculatOrder/ItemCirculatOrder-AddOrUpdate.vue
@@ -3,7 +3,7 @@
    <el-form :model="dataForm" :inline="true" ref="dataForm" style="padding-top: 0" :disabled="dataForm.disabled" label-width="120px" class="circulationFormAuto">
      <div class="">
        <el-form-item label-width="60px" label="编号:" style="width:100%;margin-bottom: -5px">
          <span>{{dataForm.environ.code}}</span>
          <span>{{dataForm.circulatOrder.code}}</span>
        </el-form-item>
      </div>
      <div style="border: 1px solid rgba(0,0,0,.2);width: 99%" >
@@ -12,16 +12,16 @@
            <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="专业实验室"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom" label="任务编号" style="width: 32%">
            <el-input v-model="dataForm.testAgencyInfo.site" placeholder="任务编号"></el-input>
            <el-input v-model="dataForm.project.softwareIdentity" placeholder="任务编号"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom" label="物品名称" style="width: 32%">
            <el-input v-model="dataForm.project.softwareName" placeholder="物品名称"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom3" label="型号" style="width: 32%">
            <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="型号"></el-input>
            <zt-dict v-model="dataForm.project.softwareType" dict="is_embed_software" :radio="true"></zt-dict>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom3" label="物品编号" style="width: 32%">
            <el-input v-model="dataForm.testAgencyInfo.site" placeholder="物品编号"></el-input>
            <el-input v-model="dataForm.project.softwareIdentity" placeholder="物品编号"></el-input>
          </el-form-item>
          <el-form-item class="marginTopAndMarginBottom3" label="数 量" style="width: 32%">
            <el-input v-model="dataForm.project.softwareName" placeholder="数量"></el-input>
@@ -38,24 +38,39 @@
                    <span v-html="indexFormat(scope.$index)"></span>
                  </template>
                </el-table-column>
                <el-table-column prop="name" min-width="300" label="软件项名称">
                <el-table-column prop="infoName" min-width="300" label="技术资料名称">
                  <template v-slot="{ row }">
                    <el-input v-model="row.itemName" placeholder="软件项名称/版本"></el-input>
                    <el-input v-model="row.infoName" placeholder="技术资料名称"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="versions" align="center" width="180" label="版本">
                <el-table-column prop="identify" align="center" width="180" label="标识">
                  <template v-slot="{ row }">
                    <el-input v-model="row.identify" placeholder="标识"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="version" align="center" width="180" label="版本">
                  <template v-slot="{ row }">
                    <el-input v-model="row.version" placeholder="版本"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="purposes" align="center" width="180" label="用途">
                <el-table-column prop="secretClass" label="密级" width="180"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.purposes" placeholder="用途"></el-input>
                    <el-input v-model="row.secretClass" placeholder="密级"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="unit" label="提供单位" width="180"  align="center">
                <el-table-column prop="medium" label="介质" width="180"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.provideUnit" placeholder="提供单位"></el-input>
                    <el-input v-model="row.medium" placeholder="介质"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="amount" label="数量" width="180"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.amount" placeholder="数量"></el-input>
                  </template>
                </el-table-column>
                <el-table-column prop="remark" label="备注" width="180"  align="center">
                  <template v-slot="{ row }">
                    <el-input v-model="row.remark" placeholder="备注"></el-input>
                  </template>
                </el-table-column>
              </el-table>
@@ -73,54 +88,54 @@
          <div style="width: calc(100% - 120px);">
            <div  class="el-border-left">
              <el-form-item label="物品是否需要返还" label-width="150px" style="width:100%;padding-left:5%;margin-bottom:0">
                <zt-dict v-model="dataForm.softwareTestOrder.otherRequire" :radio="true"
                <zt-dict v-model="dataForm.circulatOrder.itemRequire" :radio="true"
                         dict="is_or_not"></zt-dict>
              </el-form-item>
              <el-form-item label="物品的其他要求:" label-width="150px" style="width:100%;padding-left:5%;margin-bottom:0">
                <el-input v-model="dataForm.softwareTestOrder.requireOther"></el-input>
                <el-input v-model="dataForm.circulatOrder.itemOther"></el-input>
              </el-form-item>
            </div>
          </div>
        </div>
          <div class="circulationContentWidth">
            <el-form-item class="marginTopAndMarginBottom" label="物品接收人" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="物品接收人"></el-input>
              <el-input v-model="dataForm.circulatOrder.itemAccept" placeholder="物品接收人"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom" label="时间" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.site" placeholder="时间"></el-input>
              <el-input v-model="dataForm.circulatOrder.acceptDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.project.softwareName" placeholder="情况说明"></el-input>
              <el-input v-model="dataForm.circulatOrder.acceptSituation" placeholder="情况说明"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom3" label="校准检测人" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="校准检测人"></el-input>
              <el-input v-model="dataForm.circulatOrder.calibratDetect" placeholder="校准检测人"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom3" label="时间" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.site" placeholder="时间"></el-input>
              <el-input v-model="dataForm.circulatOrder.detectDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom3" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.project.softwareName" placeholder="情况说明"></el-input>
              <el-input v-model="dataForm.circulatOrder.detectSituation" placeholder="情况说明"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="物品入库人" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="物品入库人"></el-input>
              <el-input v-model="dataForm.circulatOrder.warehouse" placeholder="物品入库人"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="时间" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.site" placeholder="时间"></el-input>
              <el-input v-model="dataForm.circulatOrder.warehouseDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.project.softwareName" placeholder="情况说明"></el-input>
              <el-input v-model="dataForm.circulatOrder.warehouseSituation" placeholder="情况说明"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="物品发放人" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="物品发放人"></el-input>
              <el-input v-model="dataForm.circulatOrder.itemIssue" placeholder="物品发放人"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="时间" style="width: 32%">
              <el-input v-model="dataForm.testAgencyInfo.site" placeholder="时间"></el-input>
              <el-input v-model="dataForm.circulatOrder.issueDate" placeholder="时间"></el-input>
            </el-form-item>
            <el-form-item class="marginTopAndMarginBottom2" label="情况说明" style="width: 32%">
              <el-input v-model="dataForm.project.softwareName" placeholder="情况说明"></el-input>
              <el-input v-model="dataForm.circulatOrder.issueSituation" placeholder="情况说明"></el-input>
            </el-form-item>
            <el-form-item  class="marginTopAndMarginBottom2 lastChild" label="备注" style="width: 100%">
              <el-input v-model="dataForm.testAgencyInfo.agencyName" placeholder="备注"></el-input>
              <el-input v-model="dataForm.circulatOrder.remark" placeholder="备注"></el-input>
            </el-form-item>
          </div>
      </div>
@@ -134,20 +149,23 @@
      return {
        dataForm: {
          id: '',
          url:'',
          environ:{
          circulatOrder:{
            code: '1',
            hardSoftwareRes: '',
            testEnvirontDiagram: '',
            establishStaff:'',
            establishDate:'',
            environAnalysis: '',
            environEstablish: '',
            environConfirmat: '',
            confirmatStaff: '',
            confirmatDate: '',
            isVirusScan: '',
            virusDatabaseVersion: '',
            itemAccept: '',
            itemRequire: '',
            itemOther:'',
            acceptSituation:'',
            acceptDate: '',
            calibratDetect: '',
            detectDate: '',
            detectSituation: '',
            warehouse: '',
            warehouseDate: '',
            warehouseSituation: '',
            itemIssue: '',
            issueDate: '',
            issueSituation: '',
            remark: '',
          },
          project: {
            softwareIdentity: '',
@@ -155,14 +173,8 @@
          },
          testAgencyInfo: {
            agencyName:'',
            site:'',
          },
          softwareTestOrder:{
            requireOther:'',
          },
          softwareResourcesList:[],
          hardwareResourcesList:[],
          environAnalysisList:[]
          technicalList:[]
        }
      }
    },
@@ -176,11 +188,16 @@
      },
      // 获取信息
      async getInfo() {
        let res = await this.$http.get(`/itemCirculatOrder/ItemCirculatOrder/${this.dataForm.id}`)
        let params = {
          circulatOrderid: this.dataForm.id,
          projectId: this.dataForm.projectId
        }
        let res = await this.$http.get(`/itemCirculatOrder/ItemCirculatOrder/getDto`,{params: params})
        this.dataForm = {
          ...this.dataForm,
          ...res.data
        }
        console.log(this.dataForm,"this.dataForm")
      },
      // 表单提交
      async formSubmit() {
web/src/views/modules/itemCirculatOrder/ItemCirculatOrder.vue
@@ -1,7 +1,7 @@
<template>
  <el-card shadow="never" class="aui-card--fill">
    <div class="mod-itemCirculatOrder-itemCirculatOrder}">
      <zt-table-wraper query-url="/itemCirculatOrder/ItemCirculatOrder/page" delete-url="/itemCirculatOrder/ItemCirculatOrder" v-slot="{ table }">
      <zt-table-wraper query-url="/itemCirculatOrder/ItemCirculatOrder/page" delete-url="/itemCirculatOrder/ItemCirculatOrder/deleteCirculat" v-slot="{ table }">
        <el-form :inline="true" :model="dataForm" @keyup.enter.native="table.query()">
          <el-form-item>
            <el-input v-model="dataForm.code" placeholder="请输入物品流转单编号" clearable></el-input>
web/src/views/modules/project/Environ.vue
@@ -7,6 +7,9 @@
            <el-input v-model="dataForm.code" placeholder="请输入编号" clearable></el-input>
          </el-form-item>
          <el-form-item>
            <el-input v-model="dataForm.softwareName" placeholder="请输入软件名称" clearable></el-input>
          </el-form-item>
          <el-form-item>
            <zt-button type="query" @click="table.query()"/>
            <zt-button type="primary" class="el-icon-edit" perm="project:add" @click="add()">新增</zt-button>
            <!--<zt-button type="add" perm="project:add" @click="table.editHandle()"/>-->