czt
2025-11-26 37758b759bce63f0ed20d6c9c95b7ee9dda5224e
新增收储公司、库区页面,及相关逻辑调整
已修改12个文件
已添加10个文件
1989 ■■■■■ 文件已修改
fzzy-igdss-core/src/main/java/com/fzzy/igds/constant/Constant.java 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/DepotStore.java 98 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/Grain.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/Quantity.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/CompanyRepository.java 27 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/DeptRepository.java 36 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreCompanyService.java 85 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java 81 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/Bank.view.xml 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/Company.view.xml 557 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/CompanyPR.java 48 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/Dept.view.xml 463 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/DeptPR.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/DicArea.view.xml 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/com/fzzy/igds/DicPR.java 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-view/src/main/java/models/core.model.xml 94 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/system/SysDeptNewController.java 202 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/d7/common.css 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/system/dept/add.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/system/dept/dept.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/system/dept/edit.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-web/src/main/resources/templates/system/dept/tree.html 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
fzzy-igdss-core/src/main/java/com/fzzy/igds/constant/Constant.java
@@ -7,6 +7,12 @@
 */
public class Constant {
    /**
     * éƒ¨é—¨ç±»åž‹
     */
    public static String DEPT_TYPE_10 = "10";  //公司
    public static String DEPT_TYPE_20 = "20";  //库区
    //是,启用
    public static final String YN_Y = "Y";
    //否,禁用
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/DepotStore.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,98 @@
package com.fzzy.igds.domain;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import lombok.Data;
import lombok.EqualsAndHashCode;
import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.Id;
import javax.persistence.Table;
import java.io.Serializable;
import java.util.Date;
/**
 * @Description ç²®é£Ÿåº“存管理
 * @Author CZT
 * @Date 2025/11/26 11:10
 */
@Data
@Entity
@Table(name = "d_depot_store")
@TableName("d_depot_store")
@EqualsAndHashCode(callSuper = false)
public class DepotStore extends BizBaseEntity implements Serializable {
    /**
     *
     */
    private static final long serialVersionUID = 1L;
    public static String SORT_PROP = "updateDate";
    @Id
    @Column(name = "id", columnDefinition = "varchar(50) COMMENT '主键'")
    @TableField("id")
    private String id;
    @Column(name = "dept_id", columnDefinition = "varchar(40) COMMENT '所属库区'")
    @TableField("dept_id")
    private String deptId;
    @Column(name = "depot_id", columnDefinition = "varchar(40) COMMENT '所属仓库'")
    @TableField("depot_id")
    private String depotId;
    @Column(name = "food_type", columnDefinition = "varchar(3) COMMENT '粮食性质'")
    @TableField("food_type")
    private String foodType;
    @Column(name = "food_variety", columnDefinition = "varchar(7) COMMENT '粮食品种'")
    @TableField("food_variety")
    private String foodVariety;
    @Column(name = "food_level", columnDefinition = "varchar(2) COMMENT '粮食等级'")
    @TableField("food_level")
    private String foodLevel;
    @Column(name = "food_locationId", columnDefinition = "varchar(40) COMMENT '粮食产地'")
    @TableField("food_locationId")
    private String foodLocationId;
    @Column(name = "food_location", columnDefinition = "varchar(40) COMMENT '粮食产地'")
    @TableField("food_location")
    private String foodLocation;
    @Column(name = "food_year", columnDefinition = "varchar(4) COMMENT '粮食年份'")
    @TableField("food_year")
    private String foodYear;
    @Column(name = "depot_status", columnDefinition = "varchar(2) COMMENT '仓库状态(1=空仓,2=入库中,3=封仓,4=出库中,9=其他)'")
    @TableField("depot_status")
    private String depotStatus;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Column(name = "store_date", columnDefinition = "datetime COMMENT '入库时间'")
    @TableField("store_date")
    private Date storeDate;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Column(name = "full_date", columnDefinition = "datetime COMMENT '封仓日期'")
    @TableField("full_date")
    private Date fullDate;
    @JsonFormat(pattern = "yyyy-MM-dd", timezone = "GMT+8")
    @Column(name = "out_date", columnDefinition = "datetime COMMENT '出仓时间'")
    @TableField("out_date")
    private Date outDate;
    @Column(name = "storage_real", columnDefinition = "decimal(20,2) COMMENT '实际储量(单位:KG)'")
    @TableField("storage_real")
    private Double storageReal;
    @Column(name = "remark", columnDefinition = "varchar(40) COMMENT '备注'")
    @TableField("remark")
    private String remark;
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/Grain.java
@@ -102,7 +102,7 @@
    @TableField("remark")
    private String remark;
    @Column(name = "points", columnDefinition = "longtext(2000) COMMENT '采集点信息'")
    @Column(name = "points", columnDefinition = "varchar(2000) COMMENT '采集点信息'")
    @TableField("points")
    private String points;
fzzy-igdss-core/src/main/java/com/fzzy/igds/domain/Quantity.java
@@ -60,7 +60,7 @@
    @TableField("weight")
    private Double weight = 0.00;
    @Column(name = "points", columnDefinition = "longtext(2000) COMMENT '采集点信息'")
    @Column(name = "points", columnDefinition = "varchar(2000) COMMENT '采集点信息'")
    @TableField("points")
    private String points;
fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/CompanyRepository.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,27 @@
package com.fzzy.igds.repository;
import com.fzzy.igds.domain.Company;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * @Description
 * @Author CZT
 * @Date 2025/11/26 15:48
 */
@Service
public interface CompanyRepository extends JpaRepository<Company, String> {
    /**
     * æ ¹æ®companyId获取信息
     *
     * @param companyId
     * @return
     */
    @Query("from Company where companyId =:companyId order by id")
    List<Company> getAllData(@Param("companyId") String companyId);
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/repository/DeptRepository.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,36 @@
package com.fzzy.igds.repository;
import com.fzzy.igds.domain.Dept;
import org.springframework.data.jpa.repository.JpaRepository;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.query.Param;
import org.springframework.stereotype.Service;
import java.util.List;
/**
 * @Description
 * @Author CZT
 * @Date 2025/11/26 15:48
 */
@Service
public interface DeptRepository extends JpaRepository<Dept, String> {
    /**
     * æ ¹æ®id获取信息
     *
     * @param id
     * @return
     */
    @Query("from Dept where id =:id order by id")
    Dept getDataById(@Param("id") String id);
    /**
     * æ ¹æ®companyId获取信息
     *
     * @param companyId
     * @return
     */
    @Query("from Dept where companyId =:companyId order by id")
    List<Dept> getAllData(@Param("companyId") String companyId);
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreCompanyService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,85 @@
package com.fzzy.igds.service;
import com.fzzy.igds.domain.Company;
import com.fzzy.igds.repository.CompanyRepository;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.utils.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
 * @Description service层
 * @Author CZT
 * @Date 2025/11/26 15:48
 */
@Service
public class CoreCompanyService {
    @Resource
    private CompanyRepository companyRepository;
    /**
     * jpa查询公司信息
     * @param companyId
     * @return
     */
    public List<Company> getAllData(String companyId) {
        if (StringUtils.isEmpty(companyId)) {
            companyId = ContextUtil.getCompanyId();
        }
        return companyRepository.getAllData(companyId);
    }
    /**
     * jpa新增公司信息
     * @param sysDept
     * @return
     */
    public void saveOrUpdate(SysDept sysDept) {
        if (null == sysDept) {
            return;
        }
        Company company = new Company();
        company.setId(sysDept.getDeptId() + "");
        company.setDwmc(sysDept.getDeptName());
        company.setQylxr(sysDept.getLeader());
        company.setFrlxfs(sysDept.getPhone());
        company.setDzyx(sysDept.getEmail());
        company.setDwzt(sysDept.getStatus());
        company.setCompanyId(sysDept.getCompanyId());
        //创建信息
        company.setCreateBy(ContextUtil.getLoginUserName());
        company.setCreateTime(new Date());
        this.update(company);
    }
    /**
     * jpa更新公司信息
     * @param data
     */
    public void update(Company data) {
        if (StringUtils.isEmpty(data.getCompanyId())) {
            data.setCompanyId(ContextUtil.getCompanyId());
        }
        //更新信息
        data.setUpdateBy(ContextUtil.getLoginUserName());
        data.setUpdateTime(new Date());
        companyRepository.save(data);
    }
    /**
     * åˆ é™¤å…¬å¸ä¿¡æ¯
     * @param deptId
     * @return
     */
    public void delData(String deptId) {
        companyRepository.deleteById(deptId);
    }
}
fzzy-igdss-core/src/main/java/com/fzzy/igds/service/CoreDeptService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,81 @@
package com.fzzy.igds.service;
import com.fzzy.igds.domain.Dept;
import com.fzzy.igds.repository.DeptRepository;
import com.fzzy.igds.utils.ContextUtil;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.utils.StringUtils;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.Date;
import java.util.List;
/**
 * @Description service层
 * @Author CZT
 * @Date 2025/11/26 17:48
 */
@Service
public class CoreDeptService {
    @Resource
    private DeptRepository deptRepository;
    /**
     * jpa查询信息
     * @param companyId
     * @return
     */
    public List<Dept> getAllData(String companyId) {
        if (StringUtils.isEmpty(companyId)) {
            companyId = ContextUtil.getCompanyId();
        }
        return deptRepository.getAllData(companyId);
    }
    /**
     * jpa新增库区信息
     * @param sysDept
     * @return
     */
    public void saveOrUpdate(SysDept sysDept) {
        if (null == sysDept) {
            return;
        }
        Dept dept = new Dept();
        dept.setId(sysDept.getDeptId() + "");
        dept.setKqmc(sysDept.getDeptName());
        dept.setCompanyId(sysDept.getCompanyId());
        //创建信息
        dept.setCreateBy(ContextUtil.getLoginUserName());
        dept.setCreateTime(new Date());
        this.update(dept);
    }
    /**
     * jpa更新库区信息
     * @param data
     */
    public void update(Dept data) {
        if (StringUtils.isEmpty(data.getCompanyId())) {
            data.setCompanyId(ContextUtil.getCompanyId());
        }
        //更新信息
        data.setUpdateBy(ContextUtil.getLoginUserName());
        data.setUpdateTime(new Date());
        deptRepository.save(data);
    }
    /**
     * åˆ é™¤åº“区信息
     * @param deptId
     * @return
     */
    public void delData(String deptId) {
        deptRepository.deleteById(deptId);
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/igds/Bank.view.xml
@@ -4,13 +4,21 @@
  <Context/>
  <Model/>
  <View layout="padding:10">
    <ClientEvent name="onClick">&#xD;
/**&#xD;
* æŸ¥è¯¢&#xD;
*/&#xD;
query = function(){&#xD;
    view.get(&quot;#dsMain&quot;).flushAsync();&#xD;
}&#xD;</ClientEvent>
    <Property name="packages">font-awesome,css-common</Property>
    <DataSet id="dsMain">
      <Property name="loadMode">lazy</Property>
      <Property name="dataType">[dtBank]</Property>
      <Property name="dataProvider">bankPR#listAll</Property>
    </DataSet>
    <DataSet id="dsParam">
      <ClientEvent name="onReady">self.insert();</ClientEvent>
      <ClientEvent name="onReady">self.insert({});</ClientEvent>
      <Property name="dataType">dtBaseParam</Property>
    </DataSet>
    <Container>
@@ -28,6 +36,7 @@
        </AutoFormElement>
        <Button>
          <ClientEvent name="onClick">var param = view.get(&quot;#dsParam.data&quot;);&#xD;
console.log(&quot;param&quot;);&#xD;
view.get(&quot;#dsMian&quot;).set(&quot;parameter&quot;,param).flushAsync();&#xD;
</ClientEvent>
          <Property name="caption">搜索</Property>
@@ -73,7 +82,7 @@
            $alert(&quot;异常信息:&quot;+result.message);
        }else{
            $notify(&quot;执行成功&quot;);
            data.remove()
            query();&#xD;
        }
    })
}</ClientEvent>
@@ -87,22 +96,29 @@
        <ClientEvent name="onDataRowClick">self.set(&quot;selection&quot;, arg.data)</ClientEvent>
        <Property name="dataSet">dsMain</Property>
        <Property name="readOnly">true</Property>
        <RowNumColumn/>
        <RowSelectorColumn/>
        <RowNumColumn/>
        <DataColumn name="name">
          <Property name="property">name</Property>
          <Property name="width">400</Property>
        </DataColumn>
        <DataColumn name="status">
          <Property name="property">status</Property>
          <Property name="align">center</Property>
          <Property name="width">150</Property>
        </DataColumn>
        <DataColumn name="remark">
          <Property name="property">remark</Property>
        </DataColumn>
        <DataColumn name="updateBy">
          <Property name="property">updateBy</Property>
          <Property name="align">center</Property>
          <Property name="width">160</Property>
        </DataColumn>
        <DataColumn name="updateTime">
          <Property name="property">updateTime</Property>
          <Property name="align">center</Property>
          <Property name="width">200</Property>
        </DataColumn>
      </DataGrid>
    </Container>
fzzy-igdss-view/src/main/java/com/fzzy/igds/Company.view.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,557 @@
<?xml version="1.0" encoding="UTF-8"?>
<ViewConfig>
  <Arguments/>
  <Context/>
  <Model>
    <DataType name="dtMain">
      <Property name="creationType">com.fzzy.igds.domain.Company</Property>
      <PropertyDef name="id">
        <Property></Property>
        <Property name="label">公司编码</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="companyId">
        <Property></Property>
        <Property name="label">系统组织编码</Property>
      </PropertyDef>
      <PropertyDef name="dwdm">
        <Property></Property>
        <Property name="label">单位信用码</Property>
        <Property name="required">true</Property>
      </PropertyDef>
      <PropertyDef name="dwmc">
        <Property></Property>
        <Property name="label">单位名称</Property>
        <Property name="required">true</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="dwlx">
        <Property></Property>
        <Property name="label">单位类型</Property>
        <Property name="mapping">
          <Property name="keyProperty">key</Property>
          <Property name="valueProperty">value</Property>
          <Property name="mapValues">
            <Collection>
              <Entity>
                <Property name="key">1</Property>
                <Property name="value">1-粮食仓储企业</Property>
              </Entity>
              <Entity>
                <Property name="key">11</Property>
                <Property name="value">11-中央直属储备粮库</Property>
              </Entity>
              <Entity>
                <Property name="key">12</Property>
                <Property name="value">12-中谷粮油集团</Property>
              </Entity>
              <Entity>
                <Property name="key">13</Property>
                <Property name="value">13-省级储备粮库</Property>
              </Entity>
              <Entity>
                <Property name="key">14</Property>
                <Property name="value">14-地市级储备粮库</Property>
              </Entity>
              <Entity>
                <Property name="key">15</Property>
                <Property name="value">15-县级储备粮库</Property>
              </Entity>
              <Entity>
                <Property name="key">19</Property>
                <Property name="value">19-其他仓储企业</Property>
              </Entity>
              <Entity>
                <Property name="key">2</Property>
                <Property name="value">2-粮食购销企业</Property>
              </Entity>
              <Entity>
                <Property name="key">3</Property>
                <Property name="value">3-粮食加工企业</Property>
              </Entity>
              <Entity>
                <Property name="key">4</Property>
                <Property name="value">4-粮食设备制造企业</Property>
              </Entity>
              <Entity>
                <Property name="key">9</Property>
                <Property name="value">9-其他粮食企业</Property>
              </Entity>
            </Collection>
          </Property>
        </Property>
        <Property name="required">true</Property>
      </PropertyDef>
      <PropertyDef name="zcrq">
        <Property name="dataType">Date</Property>
        <Property name="label">注册日期</Property>
      </PropertyDef>
      <PropertyDef name="zczb">
        <Property name="dataType">Double</Property>
        <Property name="label">注册资本</Property>
        <Property name="displayFormat">#0.000 ä¸‡å…ƒ</Property>
      </PropertyDef>
      <PropertyDef name="zcze">
        <Property name="dataType">Double</Property>
        <Property name="label">资产总额</Property>
        <Property name="displayFormat">#0.000 ä¸‡å…ƒ</Property>
      </PropertyDef>
      <PropertyDef name="fddbr">
        <Property></Property>
        <Property name="label">法定代表人</Property>
        <Property name="required">true</Property>
      </PropertyDef>
      <PropertyDef name="frsfzh">
        <Property></Property>
        <Property name="label">法人身份证</Property>
      </PropertyDef>
      <PropertyDef name="frlxfs">
        <Property></Property>
        <Property name="label">法人电话</Property>
      </PropertyDef>
      <PropertyDef name="qylxr">
        <Property></Property>
        <Property name="label">企业联系人</Property>
      </PropertyDef>
      <PropertyDef name="bgdh">
        <Property></Property>
        <Property name="label">办公电话</Property>
      </PropertyDef>
      <PropertyDef name="zcdz">
        <Property></Property>
        <Property name="label">注册地址</Property>
      </PropertyDef>
      <PropertyDef name="dzyx">
        <Property></Property>
        <Property name="label">电子邮箱</Property>
      </PropertyDef>
      <PropertyDef name="qygfwzdz">
        <Property></Property>
        <Property name="label">官方网址</Property>
      </PropertyDef>
      <PropertyDef name="czhm">
        <Property></Property>
        <Property name="label">传真号码</Property>
      </PropertyDef>
      <PropertyDef name="yzbm">
        <Property></Property>
        <Property name="label">邮政编码</Property>
      </PropertyDef>
      <PropertyDef name="xzqhdm">
        <Property></Property>
        <Property name="label">区划代码</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="xzqhmc">
        <Property></Property>
        <Property name="label">区划名称</Property>
      </PropertyDef>
      <PropertyDef name="kqs">
        <Property name="dataType">Integer</Property>
        <Property name="label">库区数</Property>
        <Property name="displayFormat">#0 ä¸ª</Property>
      </PropertyDef>
      <PropertyDef name="jd">
        <Property name="dataType">Double</Property>
        <Property name="label">经度</Property>
      </PropertyDef>
      <PropertyDef name="wd">
        <Property name="dataType">Double</Property>
        <Property name="label">纬度</Property>
      </PropertyDef>
      <PropertyDef name="dwzt">
        <Property></Property>
        <Property name="label">单位状态</Property>
        <Property name="mapping">
          <Property name="keyProperty">key</Property>
          <Property name="valueProperty">value</Property>
          <Property name="mapValues">
            <Collection>
              <Entity>
                <Property name="key">1</Property>
                <Property name="value">1-正常</Property>
              </Entity>
              <Entity>
                <Property name="key">2</Property>
                <Property name="value">2-异常</Property>
              </Entity>
            </Collection>
          </Property>
        </Property>
      </PropertyDef>
      <PropertyDef name="remark">
        <Property></Property>
        <Property name="label">备注说明</Property>
      </PropertyDef>
      <PropertyDef name="createTime">
        <Property name="dataType">DateTime</Property>
        <Property name="label">创建时间</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="createBy">
        <Property></Property>
        <Property name="label">创建人</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="updateTime">
        <Property name="dataType">DateTime</Property>
        <Property name="label">更新时间</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="updateBy">
        <Property></Property>
        <Property name="label">更新人</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
    </DataType>
  </Model>
  <View layout="padding:10">
    <Property name="packages">font-awesome,css-common</Property>
    <DataSet id="dsMain">
      <Property name="dataProvider">companyPR#getData</Property>
      <Property name="dataType">[dtMain]</Property>
    </DataSet>
    <Container>
      <Property name="className">c-param</Property>
      <ToolBar>
        <ToolBarButton>
          <ClientEvent name="onClick">var select = view.get(&quot;#dgMain&quot;).get(&quot;selection&quot;);&#xD;
if(select){&#xD;
    view.get(&quot;#dialogMain&quot;).show();;&#xD;
}else{&#xD;
     $notify(&quot;请选择需要编辑的数据……&quot;);&#xD;
}</ClientEvent>
          <Property name="caption">修改</Property>
          <Property name="exClassName">btn2</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-pencil-square-o</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).flushAsync();&#xD;
          </ClientEvent>
          <Property name="caption">刷新</Property>
          <Property name="exClassName">btn-q2</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-refresh</Property>
        </ToolBarButton>
      </ToolBar>
      <DataGrid id="dgMain" layoutConstraint="padding:8">
        <ClientEvent name="onDataRowClick">view.get(&quot;#dgMain&quot;).set(&quot;selection&quot;,arg.data);</ClientEvent>
        <Property name="dataSet">dsMain</Property>
        <Property name="readOnly">true</Property>
        <Property name="selectionMode">singleRow</Property>
        <RowSelectorColumn/>
        <RowNumColumn/>
        <DataColumn name="id">
          <Property name="property">id</Property>
          <Property name="align">center</Property>
          <Property name="width">120</Property>
        </DataColumn>
        <DataColumn name="dwmc">
          <Property name="property">dwmc</Property>
        </DataColumn>
        <DataColumn name="dwdm">
          <Property name="property">dwdm</Property>
          <Property name="align">center</Property>
          <Property name="width">180</Property>
        </DataColumn>
        <DataColumn name="dwlx">
          <Property name="property">dwlx</Property>
          <Property name="align">center</Property>
          <Property name="width">180</Property>
        </DataColumn>
        <DataColumn name="zcze">
          <Property name="property">zcze</Property>
          <Property name="align">center</Property>
          <Property name="width">180</Property>
        </DataColumn>
        <DataColumn name="fddbr">
          <Property name="property">fddbr</Property>
          <Property name="align">center</Property>
          <Property name="width">120</Property>
        </DataColumn>
        <DataColumn name="kqs">
          <Property name="property">kqs</Property>
          <Property name="align">center</Property>
          <Property name="width">100</Property>
        </DataColumn>
        <DataColumn name="dwzt">
          <Property name="property">dwzt</Property>
          <Property name="align">center</Property>
          <Property name="width">100</Property>
        </DataColumn>
        <DataColumn name="updateBy">
          <Property name="property">updateBy</Property>
          <Property name="align">center</Property>
          <Property name="width">100</Property>
        </DataColumn>
        <DataColumn name="updateTime">
          <Property name="property">updateTime</Property>
          <Property name="align">center</Property>
          <Property name="width">160</Property>
        </DataColumn>
      </DataGrid>
    </Container>
    <Dialog id="dialogMain">
      <Property name="width">1200</Property>
      <Property name="caption">收储公司信息</Property>
      <Property name="closeable">false</Property>
      <Property name="iconClass">fa fa-tasks</Property>
      <Buttons>
        <Button id="btnOk">
          <ClientEvent name="onClick">view.get(&quot;#uaSave&quot;).execute(function(result){&#xD;
            if(result){&#xD;
            $alert(result);&#xD;
            }else{&#xD;
            $notify(&quot;保存成功!!&quot;);&#xD;
            view.get(&quot;#dialogMain&quot;).hide();&#xD;
            }&#xD;
            });</ClientEvent>
          <Property name="caption">保存</Property>
          <Property name="iconClass">fa fa-check-circle</Property>
          <Property name="exClassName">btn1</Property>
          <Property name="width">120</Property>
        </Button>
        <Button>
          <ClientEvent name="onClick">view.get(&quot;#dsMain.data:#&quot;).cancel();&#xD;
            self.get(&quot;parent&quot;).hide();</ClientEvent>
          <Property name="caption">取消</Property>
          <Property name="exClassName">btn3</Property>
          <Property name="iconClass">fa fa-times-circle</Property>
          <Property name="width">120</Property>
        </Button>
      </Buttons>
      <Children>
        <AutoForm>
          <Property name="dataSet">dsMain</Property>
          <Property name="cols">*,*,*</Property>
          <Property name="labelAlign">right</Property>
          <Property name="labelSeparator"> : </Property>
          <Property name="labelWidth">120</Property>
          <AutoFormElement layoutConstraint="colSpan:2">
            <Property name="name">dwmc</Property>
            <Property name="property">dwmc</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">id</Property>
            <Property name="property">id</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">dwdm</Property>
            <Property name="property">dwdm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">dwlx</Property>
            <Property name="property">dwlx</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">dwzt</Property>
            <Property name="property">dwzt</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">zcrq</Property>
            <Property name="property">zcrq</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">zczb</Property>
            <Property name="property">zczb</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">zcze</Property>
            <Property name="property">zcze</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">fddbr</Property>
            <Property name="property">fddbr</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">frsfzh</Property>
            <Property name="property">frsfzh</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">frlxfs</Property>
            <Property name="property">frlxfs</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">qylxr</Property>
            <Property name="property">qylxr</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">bgdh</Property>
            <Property name="property">bgdh</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">dzyx</Property>
            <Property name="property">dzyx</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement layoutConstraint="colSpan:2">
            <Property name="name">zcdz</Property>
            <Property name="property">zcdz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">yzbm</Property>
            <Property name="property">yzbm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement layoutConstraint="colSpan:2">
            <Property name="name">qygfwzdz</Property>
            <Property name="property">qygfwzdz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">czhm</Property>
            <Property name="property">czhm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">xzqhmc</Property>
            <Property name="property">xzqhmc</Property>
            <Property name="trigger">ddFoodOrigin</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">xzqhdm</Property>
            <Property name="property">xzqhdm</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">kqs</Property>
            <Property name="property">kqs</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jd</Property>
            <Property name="property">jd</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">createBy</Property>
            <Property name="property">createBy</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">createTime</Property>
            <Property name="property">createTime</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">wd</Property>
            <Property name="property">wd</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">updateBy</Property>
            <Property name="property">updateBy</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">updateTime</Property>
            <Property name="property">updateTime</Property>
            <Editor/>
          </AutoFormElement>
          <Link>
            <Property name="href">http://api.map.baidu.com/lbsapi/getpoint/</Property>
            <Property name="target">_blank</Property>
            <Property name="style">
              <Property name="padding-left">150px</Property>
            </Property>
            <Property name="text">帮助:点击坐标位置拾取</Property>
          </Link>
          <AutoFormElement layoutConstraint="colSpan:2">
            <Property name="name">remark</Property>
            <Property name="property">remark</Property>
            <Editor/>
          </AutoFormElement>
        </AutoForm>
      </Children>
      <Tools/>
    </Dialog>
    <UpdateAction id="uaSave">
      <Property name="dataResolver">companyPR#updateData</Property>
      <Property name="successMessage">数据保存完成!</Property>
      <UpdateItem>
        <Property name="dataSet">dsMain</Property>
        <Property name="dataPath">[#current]</Property>
        <Property name="validateData">false</Property>
      </UpdateItem>
    </UpdateAction>
    <CustomDropDown id="ddFoodOrigin">
      <Property name="minHeight">500</Property>
      <Property name="assignmentMap">xzqhmc=name,xzqhdm=code</Property>
      <Property name="minWidth">500</Property>
      <Container layout="regionPadding:5">
        <DataSet id="dsFoodOrigin">
          <Property name="dataProvider">dicAreaPR#pageList</Property>
          <Property name="dataType">[dtArea]</Property>
          <Property name="parameter"></Property>
          <Property name="pageSize">10</Property>
        </DataSet>
        <Container layout="hbox regionPadding:5">
          <TextEditor id="key2">
            <Property name="blankText"> -- åç§° --</Property>
            <Property name="width">200</Property>
          </TextEditor>
          <Button>
            <ClientEvent name="onClick">var key = view.get(&quot;#key2.value&quot;);&#xD;
view.get(&quot;#dsFoodOrigin&quot;).set(&quot;parameter&quot;,{key:key}).flushAsync();</ClientEvent>
            <Property name="caption">查询</Property>
            <Property name="exClassName">btn4</Property>
            <Property name="iconClass">fa fa-search</Property>
          </Button>
          <Button>
            <ClientEvent name="onClick">var data = view.get(&quot;#dsFoodOrigin.data:#&quot;);&#xD;
              if(data){&#xD;
              view.get(&quot;#ddFoodOrigin&quot;).close(data.toJSON());&#xD;
              }</ClientEvent>
            <Property name="iconClass">fa fa-check</Property>
            <Property name="exClassName">btn1</Property>
            <Property name="caption">确定</Property>
          </Button>
        </Container>
        <DataGrid>
          <ClientEvent name="onDataRowDoubleClick">var data = view.get(&quot;#dsFoodOrigin.data:#&quot;);&#xD;
            if(data){&#xD;
            view.get(&quot;#ddFoodOrigin&quot;).close(data.toJSON());&#xD;
            }</ClientEvent>
          <Property name="dataSet">dsFoodOrigin</Property>
          <Property name="readOnly">true</Property>
          <DataColumn name="code">
            <Property name="property">code</Property>
            <Property name="readOnly">true</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="name">
            <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = &quot;bold&quot;;&#xD;
              arg.processDefault = true;</ClientEvent>
            <Property name="property">name</Property>
            <Property name="readOnly">true</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="simple">
            <Property name="property">simple</Property>
            <Property name="readOnly">true</Property>
            <Property name="align">center</Property>
          </DataColumn>
        </DataGrid>
        <DataPilot layoutConstraint="bottom">
          <Property name="dataSet">dsFoodOrigin</Property>
        </DataPilot>
      </Container>
    </CustomDropDown>
  </View>
</ViewConfig>
fzzy-igdss-view/src/main/java/com/fzzy/igds/CompanyPR.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,48 @@
package com.fzzy.igds;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.annotation.DataResolver;
import com.fzzy.igds.domain.Company;
import com.fzzy.igds.service.CoreCompanyService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
/**
 * @Description æ”¶å‚¨å…¬å¸PR层
 * @Author CZT
 * @Date 2025/11/26 15:48
 */
@Component
public class CompanyPR {
    @Resource
    private CoreCompanyService coreCompanyService;
    /**
     * æŸ¥è¯¢è®¾å¤‡,将操作信息调整为空,默认包括分库参数
     *
     * companyPR#getData
     *
     * @return
     */
    @DataProvider
    public List<Company> getData() {
        return coreCompanyService.getAllData(null);
    }
    /**
     * companyPR#saveData
     */
    @DataResolver
    public void updateData(Company data) {
        Company company = new Company();
        BeanUtils.copyProperties(data, company);
        coreCompanyService.update(company);
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/igds/Dept.view.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,463 @@
<?xml version="1.0" encoding="UTF-8"?>
<ViewConfig>
  <Arguments/>
  <Context/>
  <Model>
    <DataType name="dtMain">
      <Property name="creationType">com.fzzy.igds.domain.Dept</Property>
      <PropertyDef name="id">
        <Property></Property>
        <Property name="label">库区编码</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="companyId">
        <Property></Property>
        <Property name="label">组织编码</Property>
      </PropertyDef>
      <PropertyDef name="kqmc">
        <Property></Property>
        <Property name="label">库区名称</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="kqdz">
        <Property></Property>
        <Property name="label">库区地址</Property>
      </PropertyDef>
      <PropertyDef name="xzqhdm">
        <Property></Property>
        <Property name="label">区划代码</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="xzqhmc">
        <Property></Property>
        <Property name="label">区划名称</Property>
      </PropertyDef>
      <PropertyDef name="kqcq">
        <Property></Property>
        <Property name="label">库区产权</Property>
        <Property name="mapping">
          <Property name="keyProperty">key</Property>
          <Property name="valueProperty">value</Property>
          <Property name="mapValues">
            <Collection>
              <Entity>
                <Property name="key">1</Property>
                <Property name="value">1-自有</Property>
              </Entity>
              <Entity>
                <Property name="key">2</Property>
                <Property name="value">2-租赁</Property>
              </Entity>
              <Entity>
                <Property name="key">3</Property>
                <Property name="value">3-共有</Property>
              </Entity>
              <Entity>
                <Property name="key">4</Property>
                <Property name="value">4-混合</Property>
              </Entity>
              <Entity>
                <Property name="key">9</Property>
                <Property name="value">9-其他</Property>
              </Entity>
            </Collection>
          </Property>
        </Property>
      </PropertyDef>
      <PropertyDef name="yxcr">
        <Property name="dataType">Double</Property>
        <Property name="label">有效仓容</Property>
        <Property name="displayFormat">#0.000 å¨</Property>
      </PropertyDef>
      <PropertyDef name="zdmj">
        <Property name="dataType">Double</Property>
        <Property name="label">占地面积</Property>
        <Property name="displayFormat">#0.000 å¹³æ–¹ç±³</Property>
      </PropertyDef>
      <PropertyDef name="cfs">
        <Property name="dataType">Integer</Property>
        <Property name="label">仓库数</Property>
        <Property name="displayFormat">#0 æ ‹</Property>
      </PropertyDef>
      <PropertyDef name="jd">
        <Property name="dataType">Double</Property>
        <Property name="label">经度</Property>
      </PropertyDef>
      <PropertyDef name="wd">
        <Property name="dataType">Double</Property>
        <Property name="label">纬度</Property>
      </PropertyDef>
      <PropertyDef name="remark">
        <Property></Property>
        <Property name="label">备注说明</Property>
      </PropertyDef>
      <PropertyDef name="createTime">
        <Property name="dataType">DateTime</Property>
        <Property name="label">创建时间</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="createBy">
        <Property></Property>
        <Property name="label">创建人</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="updateTime">
        <Property name="dataType">DateTime</Property>
        <Property name="label">更新时间</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="updateBy">
        <Property></Property>
        <Property name="label">更新人</Property>
        <Property name="readOnly">true</Property>
      </PropertyDef>
      <PropertyDef name="imgId">
        <Property></Property>
        <Property name="label">鸟瞰图id</Property>
      </PropertyDef>
      <PropertyDef name="imgName">
        <Property></Property>
        <Property name="label">鸟瞰图</Property>
      </PropertyDef>
    </DataType>
  </Model>
  <View layout="padding:10">
    <ClientEvent name="onClick">/**&#xD;
      /**&#xD;
      * é¢„览图片&#xD;
      */&#xD;
      showImg = function(){&#xD;
      var cur = view.get(&quot;#dsMain.data:#&quot;);&#xD;
      var imgName = cur.get(&quot;imgId&quot;);&#xD;
      if(!imgName){&#xD;
      $alert(&quot;没有上传视频信息,无法预览。&quot;);&#xD;
      return;&#xD;
      }&#xD;
      var id = cur.get(&quot;id&quot;);&#xD;
      &#xD;
      view.get(&quot;#iFrameImg&quot;).set(&quot;path&quot;, &quot;./basic/file/dept-img?id=&quot; + id);&#xD;
      view.get(&quot;#dialogImg&quot;).show();&#xD;
      &#xD;
      };</ClientEvent>
    <Property name="packages">font-awesome,css-common</Property>
    <DataSet id="dsMain">
      <Property name="dataProvider">deptPR#getData</Property>
      <Property name="dataType">[dtMain]</Property>
    </DataSet>
    <Container>
      <Property name="className">c-param</Property>
      <ToolBar>
        <ToolBarButton>
          <ClientEvent name="onClick">var select = view.get(&quot;#dgMain&quot;).get(&quot;selection&quot;);&#xD;
if(select){&#xD;
    view.get(&quot;#dialogMain&quot;).show();;&#xD;
}else{&#xD;
    $notify(&quot;请选择需要编辑的数据……&quot;);&#xD;
}</ClientEvent>
          <Property name="caption">修改</Property>
          <Property name="exClassName">btn2</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-pencil-square-o</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).flushAsync();&#xD;
          </ClientEvent>
          <Property name="caption">刷新</Property>
          <Property name="exClassName">btn-q2</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-refresh</Property>
        </ToolBarButton>
      </ToolBar>
      <DataGrid id="dgMain" layoutConstraint="padding:8">
        <ClientEvent name="onDataRowClick">view.get(&quot;#dgMain&quot;).set(&quot;selection&quot;,arg.data);</ClientEvent>
        <Property name="dataSet">dsMain</Property>
        <Property name="readOnly">true</Property>
        <Property name="selectionMode">singleRow</Property>
        <RowSelectorColumn/>
        <RowNumColumn/>
        <DataColumn name="id">
          <Property name="property">id</Property>
          <Property name="align">center</Property>
          <Property name="width">160</Property>
        </DataColumn>
        <DataColumn name="kqmc">
          <Property name="property">kqmc</Property>
          <Property name="align">center</Property>
        </DataColumn>
        <DataColumn name="kqcq">
          <Property name="property">kqcq</Property>
          <Property name="align">center</Property>
          <Property name="width">120</Property>
        </DataColumn>
        <DataColumn name="yxcr">
          <Property name="property">yxcr</Property>
          <Property name="align">center</Property>
          <Property name="width">180</Property>
        </DataColumn>
        <DataColumn name="zdmj">
          <Property name="property">zdmj</Property>
          <Property name="align">center</Property>
          <Property name="width">180</Property>
        </DataColumn>
        <DataColumn name="cfs">
          <Property name="property">cfs</Property>
          <Property name="align">center</Property>
          <Property name="width">100</Property>
        </DataColumn>
        <DataColumn name="updateBy">
          <Property name="property">updateBy</Property>
          <Property name="align">center</Property>
          <Property name="width">100</Property>
        </DataColumn>
        <DataColumn name="updateTime">
          <Property name="property">updateTime</Property>
          <Property name="align">center</Property>
          <Property name="width">160</Property>
        </DataColumn>
      </DataGrid>
    </Container>
    <Dialog id="dialogMain">
      <Property name="iconClass">fa fa-tasks</Property>
      <Property name="caption">库区信息</Property>
      <Property name="width">1200</Property>
      <Property name="closeable">false</Property>
      <Buttons>
        <Button id="btnOk">
          <ClientEvent name="onClick">view.get(&quot;#uaSave&quot;).execute(function(result){&#xD;
            if(result){&#xD;
            $alert(result);&#xD;
            }else{&#xD;
            $notify(&quot;保存成功!!&quot;);&#xD;
            view.get(&quot;#dialogMain&quot;).hide();&#xD;
            }&#xD;
            });</ClientEvent>
          <Property name="caption">确定</Property>
          <Property name="exClassName">btn1</Property>
          <Property name="iconClass">fa fa-check</Property>
        </Button>
        <Button>
          <ClientEvent name="onClick">view.get(&quot;#dsMain.data:#&quot;).cancel();&#xD;
            self.get(&quot;parent&quot;).hide();</ClientEvent>
          <Property name="caption">取消</Property>
          <Property name="exClassName">btn3</Property>
          <Property name="iconClass">fa fa-times</Property>
        </Button>
      </Buttons>
      <Children>
        <AutoForm>
          <Property name="dataSet">dsMain</Property>
          <Property name="cols">*,*,*</Property>
          <Property name="labelAlign">right</Property>
          <Property name="labelSeparator"> : </Property>
          <Property name="labelWidth">120</Property>
          <AutoFormElement layoutConstraint="colSpan:2">
            <Property name="name">kqmc</Property>
            <Property name="property">kqmc</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">id</Property>
            <Property name="property">id</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement layoutConstraint="colSpan:2">
            <Property name="name">kqdz</Property>
            <Property name="property">kqdz</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">kqcq</Property>
            <Property name="property">kqcq</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">yxcr</Property>
            <Property name="property">yxcr</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">zdmj</Property>
            <Property name="property">zdmj</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">cfs</Property>
            <Property name="property">cfs</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">xzqhmc</Property>
            <Property name="property">xzqhmc</Property>
            <Property name="trigger">ddFoodOrigin</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">xzqhdm</Property>
            <Property name="property">xzqhdm</Property>
            <Editor/>
          </AutoFormElement>
          <Label>
            <Property name="text"></Property>
          </Label>
          <AutoFormElement>
            <Property name="name">createBy</Property>
            <Property name="property">createBy</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">createTime</Property>
            <Property name="property">createTime</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">jd</Property>
            <Property name="property">jd</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">updateBy</Property>
            <Property name="property">updateBy</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">updateTime</Property>
            <Property name="property">updateTime</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">wd</Property>
            <Property name="property">wd</Property>
            <Editor/>
          </AutoFormElement>
          <AutoFormElement>
            <Property name="name">imgName</Property>
            <Property name="property">imgName</Property>
            <Property name="readOnly">true</Property>
            <Property name="editorType">Label</Property>
            <Editor>
              <TextEditor>
                <Property name="blankText"> -- ç³»ç»Ÿè‡ªåŠ¨ç”Ÿæˆ --</Property>
              </TextEditor>
            </Editor>
          </AutoFormElement>
          <Container>
            <Button layoutConstraint="left">
              <Property name="action">uploadFileImg</Property>
              <Property name="caption">鸟瞰图上传...</Property>
              <Property name="exClassName">btn2</Property>
              <Property name="iconClass">fa fa-cloud-upload</Property>
            </Button>
          </Container>
          <Link>
            <Property name="href">http://api.map.baidu.com/lbsapi/getpoint/</Property>
            <Property name="target">_blank</Property>
            <Property name="style">
              <Property name="padding-left">150px</Property>
            </Property>
            <Property name="text">帮助:点击坐标位置拾取</Property>
          </Link>
          <AutoFormElement layoutConstraint="colSpan:3">
            <Property name="name">remark</Property>
            <Property name="property">remark</Property>
            <Editor/>
          </AutoFormElement>
        </AutoForm>
      </Children>
      <Tools/>
    </Dialog>
    <Dialog id="dialogImg">
      <Property name="width">1000</Property>
      <Property name="height">640</Property>
      <Property name="iconClass">fa fa-tasks</Property>
      <Property name="caption">鸟瞰图预览</Property>
      <Buttons/>
      <Children>
        <IFrame id="iFrameImg">
          <Property name="width">100%</Property>
        </IFrame>
      </Children>
      <Tools/>
    </Dialog>
    <UpdateAction id="uaSave">
      <Property name="dataResolver">deptPR#updateData</Property>
      <Property name="successMessage">数据保存完成!</Property>
      <UpdateItem>
        <Property name="dataSet">dsMain</Property>
        <Property name="dataPath">[#current]</Property>
        <Property name="validateData">false</Property>
      </UpdateItem>
    </UpdateAction>
    <CustomDropDown id="ddFoodOrigin">
      <Property name="minHeight">500</Property>
      <Property name="assignmentMap">xzqhmc=name,xzqhdm=code</Property>
      <Property name="minWidth">500</Property>
      <Container layout="regionPadding:5">
        <DataSet id="dsFoodOrigin">
          <Property name="dataProvider">dicAreaPR#pageList</Property>
          <Property name="dataType">[dtArea]</Property>
          <Property name="parameter"></Property>
          <Property name="pageSize">10</Property>
        </DataSet>
        <Container layout="hbox regionPadding:5">
          <TextEditor id="key2">
            <Property name="blankText"> -- åç§° --</Property>
            <Property name="width">200</Property>
          </TextEditor>
          <Button>
            <ClientEvent name="onClick">var key = view.get(&quot;#key2.value&quot;);&#xD;
              view.get(&quot;#dsFoodOrigin&quot;).set(&quot;parameter&quot;,{key:key}).flushAsync();</ClientEvent>
            <Property name="caption">查询</Property>
            <Property name="exClassName">btn4</Property>
            <Property name="iconClass">fa fa-search</Property>
          </Button>
          <Button>
            <ClientEvent name="onClick">var data = view.get(&quot;#dsFoodOrigin.data:#&quot;);&#xD;
              if(data){&#xD;
              view.get(&quot;#ddFoodOrigin&quot;).close(data.toJSON());&#xD;
              }</ClientEvent>
            <Property name="iconClass">fa fa-check</Property>
            <Property name="exClassName">btn1</Property>
            <Property name="caption">确定</Property>
          </Button>
        </Container>
        <DataGrid>
          <ClientEvent name="onDataRowDoubleClick">var data = view.get(&quot;#dsFoodOrigin.data:#&quot;);&#xD;
            if(data){&#xD;
            view.get(&quot;#ddFoodOrigin&quot;).close(data.toJSON());&#xD;
            }</ClientEvent>
          <Property name="dataSet">dsFoodOrigin</Property>
          <Property name="readOnly">true</Property>
          <DataColumn name="code">
            <Property name="property">code</Property>
            <Property name="readOnly">true</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="name">
            <ClientEvent name="onRenderCell">arg.dom.style.fontWeight = &quot;bold&quot;;&#xD;
              arg.processDefault = true;</ClientEvent>
            <Property name="property">name</Property>
            <Property name="readOnly">true</Property>
            <Property name="align">center</Property>
          </DataColumn>
          <DataColumn name="simple">
            <Property name="property">simple</Property>
            <Property name="readOnly">true</Property>
            <Property name="align">center</Property>
          </DataColumn>
        </DataGrid>
        <DataPilot layoutConstraint="bottom">
          <Property name="dataSet">dsFoodOrigin</Property>
        </DataPilot>
      </Container>
    </CustomDropDown>
    <UploadAction id="uploadFileImg">
      <ClientEvent name="onFileUploaded">var imgId = arg.returnValue;&#xD;
        var data = view.get(&quot;#dsMain.data:#&quot;);&#xD;
        data.set(&quot;imgId&quot;,imgId);&#xD;
        data.set(&quot;imgName&quot;,arg.file.name);</ClientEvent>
      <Property name="fileResolver">fileUploadManage#imgFile</Property>
      <Property name="maxFileSize">50MB</Property>
      <Filters/>
    </UploadAction>
  </View>
</ViewConfig>
fzzy-igdss-view/src/main/java/com/fzzy/igds/DeptPR.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
package com.fzzy.igds;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.annotation.DataResolver;
import com.fzzy.igds.domain.Dept;
import com.fzzy.igds.service.CoreDeptService;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Component;
import javax.annotation.Resource;
import java.util.List;
/**
 * @Description åº“区信息
 * @Author CZT
 * @Date 2025/11/26 17:58
 */
@Component
public class DeptPR {
    @Resource
    private CoreDeptService coreDeptService;
    /**
     * æŸ¥è¯¢è®¾å¤‡,将操作信息调整为空,默认包括分库参数
     *
     * deptPR#getData
     *
     * @return
     */
    @DataProvider
    public List<Dept> getData() {
        return coreDeptService.getAllData(null);
    }
    /**
     * deptPR#saveData
     */
    @DataResolver
    public void updateData(Dept data) {
        Dept dept = new Dept();
        BeanUtils.copyProperties(data, dept);
        coreDeptService.update(dept);
    }
}
fzzy-igdss-view/src/main/java/com/fzzy/igds/DicArea.view.xml
@@ -2,92 +2,7 @@
<ViewConfig>
  <Arguments/>
  <Context/>
  <Model>
    <DataType name="dtMain">
      <Property name="creationType">com.fzzy.igds.domain.DicArea</Property>
      <PropertyDef name="code">
        <Property></Property>
        <Property name="label">区域编码</Property>
        <Property name="required">true</Property>
      </PropertyDef>
      <PropertyDef name="name">
        <Property></Property>
        <Property name="label">名称</Property>
        <Property name="required">true</Property>
      </PropertyDef>
      <PropertyDef name="parentCode">
        <Property></Property>
        <Property name="label">所属区域</Property>
        <Property name="mapping">
          <Property name="mapValues">${dorado.getDataProvider(&quot;dicAreaPR#getDicAreaByParentCode&quot;).getResult()}</Property>
          <Property name="keyProperty">code</Property>
          <Property name="valueProperty">name</Property>
        </Property>
      </PropertyDef>
      <PropertyDef name="parentName">
        <Property></Property>
        <Property name="label">上级区域</Property>
        <Property name="required">false</Property>
      </PropertyDef>
      <PropertyDef name="type">
        <Property></Property>
        <Property name="label">类型</Property>
        <Property name="required">true</Property>
        <Property name="mapping">
          <Property name="keyProperty">value</Property>
          <Property name="valueProperty">name</Property>
          <Property name="mapValues">
            <Collection>
              <Entity>
                <Property name="name">省</Property>
                <Property name="value">1</Property>
              </Entity>
              <Entity>
                <Property name="name">市</Property>
                <Property name="value">2</Property>
              </Entity>
              <Entity>
                <Property name="name">区县</Property>
                <Property name="value">3</Property>
              </Entity>
            </Collection>
          </Property>
        </Property>
      </PropertyDef>
      <PropertyDef name="simple">
        <Property></Property>
        <Property name="label">简拼</Property>
        <Property name="required">false</Property>
      </PropertyDef>
      <PropertyDef name="disabledTag">
        <Property></Property>
        <Property name="label">是否禁用</Property>
        <Property name="required">false</Property>
        <Property name="mapping">
          <Property name="mapValues">
            <Collection>
              <Entity>
                <Property name="name">禁用</Property>
                <Property name="value">Y</Property>
              </Entity>
              <Entity>
                <Property name="name">启用</Property>
                <Property name="value">N</Property>
              </Entity>
            </Collection>
          </Property>
          <Property name="keyProperty">value</Property>
          <Property name="valueProperty">name</Property>
        </Property>
      </PropertyDef>
      <PropertyDef name="remark">
        <Property></Property>
        <Property name="label">备注</Property>
        <Property name="required">false</Property>
      </PropertyDef>
    </DataType>
  </Model>
  <View layout="padding:5;regionPadding:5">
  <View layout="padding:10">
    <ClientEvent name="onReady">//查询&#xD;
query = function(){&#xD;
    view.get(&quot;#dsMain&quot;).flushAsync();&#xD;
@@ -96,64 +11,65 @@
query();</ClientEvent>
    <Property name="packages">font-awesome,css-common</Property>
    <DataSet id="dsMain">
      <Property name="dataType">[dtMain]</Property>
      <Property name="dataType">[dtArea]</Property>
      <Property name="dataProvider">dicAreaPR#pageList</Property>
      <Property name="loadMode">manual</Property>
      <Property name="pageSize">20</Property>
    </DataSet>
    <Container layout="regionPadding:10" layoutConstraint="top">
      <Property name="exClassName">bg-color</Property>
      <Property name="contentOverflow">hidden</Property>
      <Property name="height">55</Property>
      <Label layoutConstraint="left">
        <Property name="text">菜单栏:</Property>
      </Label>
      <Button layoutConstraint="left">
        <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).insert();&#xD;
          view.get(&quot;#dialogMain&quot;).show();&#xD;
        </ClientEvent>
        <Property name="caption">新增</Property>
        <Property name="exClassName">btn1</Property>
        <Property name="iconClass">fa fa-plus</Property>
      </Button>
      <Button layoutConstraint="left">
        <ClientEvent name="onClick">&#xD;
          &#xD;
var select = view.get(&quot;#dataGridMain&quot;).get(&quot;selection&quot;);&#xD;
if(select){&#xD;
    view.get(&quot;#dialogMain&quot;).show();;&#xD;
}else{&#xD;
    $notify(&quot;请选择需要修改的数据……&quot;);&#xD;
}    </ClientEvent>
        <Property name="caption">编辑</Property>
        <Property name="exClassName">btn2</Property>
        <Property name="iconClass">fa fa-pencil</Property>
      </Button>
      <Button layoutConstraint="left">
        <ClientEvent name="onClick">   &#xD;
var select = view.get(&quot;#dataGridMain&quot;).get(&quot;selection&quot;);&#xD;
if(select){&#xD;
    view.get(&quot;#ajaxDel&quot;).set(&quot;parameter&quot;,select).execute(function(){&#xD;
        select.remove();&#xD;
    });&#xD;
}else{&#xD;
    $notify(&quot;请选择需要删除的数据……&quot;);&#xD;
}</ClientEvent>
        <Property name="caption">删除</Property>
        <Property name="exClassName">btn3</Property>
        <Property name="iconClass">fa fa-minus</Property>
      </Button>
    </Container>
    <Container layoutConstraint="center">
      <Property name="exClassName">bg-color</Property>
      <DataGrid id="dataGridMain" layoutConstraint="center">
        <ClientEvent name="onDataRowDoubleClick">var data = view.get(&quot;#dsMain.data:#&quot;);&#xD;
          if(data){&#xD;
          view.get(&quot;#dialogMain&quot;).show();&#xD;
          }</ClientEvent>
    <Container>
      <Property name="className">c-param</Property>
      <ToolBar>
        <ToolBarButton>
          <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).insert();&#xD;
            view.get(&quot;#dialogMain&quot;).show();&#xD;
          </ClientEvent>
          <Property name="caption">新增</Property>
          <Property name="exClassName">btn1</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-plus</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">&#xD;
            &#xD;
            var select = view.get(&quot;#dataGridMain&quot;).get(&quot;selection&quot;);&#xD;
            if(select){&#xD;
            view.get(&quot;#dialogMain&quot;).show();;&#xD;
            }else{&#xD;
            $notify(&quot;请选择需要修改的数据……&quot;);&#xD;
            }    </ClientEvent>
          <Property name="caption">修改</Property>
          <Property name="exClassName">btn2</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-pencil-square-o</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">   &#xD;
            var select = view.get(&quot;#dataGridMain&quot;).get(&quot;selection&quot;);&#xD;
            if(select){&#xD;
            view.get(&quot;#ajaxDel&quot;).set(&quot;parameter&quot;,select).execute(function(){&#xD;
            select.remove();&#xD;
            });&#xD;
            }else{&#xD;
            $notify(&quot;请选择需要删除的数据……&quot;);&#xD;
            }</ClientEvent>
          <Property name="caption">删除</Property>
          <Property name="exClassName">btn3</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-times</Property>
        </ToolBarButton>
        <ToolBarButton>
          <ClientEvent name="onClick">view.get(&quot;#dsMain&quot;).flushAsync();&#xD;
          </ClientEvent>
          <Property name="caption">刷新</Property>
          <Property name="exClassName">btn-q2</Property>
          <Property name="width">100</Property>
          <Property name="iconClass">fa fa-refresh</Property>
        </ToolBarButton>
      </ToolBar>
      <DataGrid id="dataGridMain" layoutConstraint="padding:8" selectionMode="singleRow">
        <ClientEvent name="onDataRowClick">self.set(&quot;selection&quot;, arg.data)</ClientEvent>
        <Property name="dataSet">dsMain</Property>
        <Property name="readOnly">true</Property>
        <Property name="selectionMode">singleRow</Property>
        <RowSelectorColumn/>
        <RowNumColumn/>
        <DataColumn>
@@ -194,7 +110,7 @@
      </DataGrid>
    </Container>
    <Container layoutConstraint="bottom">
      <Property name="exClassName">bg-color</Property>
      <Property name="className">c-bottom</Property>
      <DataPilot layoutConstraint="right">
        <Property name="dataSet">dsMain</Property>
        <Property name="itemCodes">pageSize,pages</Property>
@@ -220,13 +136,17 @@
            self.get(&quot;parent&quot;).hide();&#xD;
            });</ClientEvent>
          <Property name="caption">确定</Property>
          <Property name="iconClass">fa fa-check</Property>
          <Property name="iconClass">fa fa-check-circle</Property>
          <Property name="exClassName">btn1</Property>
          <Property name="width">120</Property>
        </Button>
        <Button>
          <ClientEvent name="onClick">view.get(&quot;#dsMain.data:#&quot;).cancel();&#xD;
            self.get(&quot;parent&quot;).hide();</ClientEvent>
          <Property name="caption">取消</Property>
          <Property name="iconClass">fa fa-times</Property>
          <Property name="exClassName">btn3</Property>
          <Property name="iconClass">fa fa-times-circle</Property>
          <Property name="width">120</Property>
        </Button>
      </Buttons>
      <Children>
fzzy-igdss-view/src/main/java/com/fzzy/igds/DicPR.java
@@ -87,7 +87,7 @@
    }
    /**
     * ${dorado.getDataProvider("dicTriggerPR#triggerYN").getResult()}
     * ${dorado.getDataProvider("dicPR#triggerYN").getResult()}
     *
     * @return
     */
fzzy-igdss-view/src/main/java/models/core.model.xml
@@ -11,7 +11,12 @@
    </PropertyDef>
    <PropertyDef name="status">
      <Property/>
      <Property name="label">系统状态</Property>
      <Property name="label">是否启用</Property>
      <Property name="mapping">
        <Property name="mapValues">${dorado.getDataProvider(&quot;dicPR#triggerYN&quot;).getResult(&quot;DEVICE_STATUS&quot;)}</Property>
        <Property name="keyProperty">dictValue</Property>
        <Property name="valueProperty">dictLabel</Property>
      </Property>
    </PropertyDef>
    <PropertyDef name="remark">
      <Property/>
@@ -26,7 +31,7 @@
      <Property name="label">创建人</Property>
    </PropertyDef>
    <PropertyDef name="createTime">
      <Property name="dataType">Date</Property>
      <Property name="dataType">DateTime</Property>
      <Property name="label">创建时间</Property>
    </PropertyDef>
    <PropertyDef name="updateBy">
@@ -34,7 +39,7 @@
      <Property name="label">更新人</Property>
    </PropertyDef>
    <PropertyDef name="updateTime">
      <Property name="dataType">Date</Property>
      <Property name="dataType">DateTime</Property>
      <Property name="label">更新时间</Property>
    </PropertyDef>
  </DataType>
@@ -60,4 +65,87 @@
      <Property name="label">截止时间</Property>
    </PropertyDef>
  </DataType>
  <DataType name="dtArea">
    <Property name="creationType">com.fzzy.igds.domain.DicArea</Property>
    <PropertyDef name="code">
      <Property></Property>
      <Property name="label">区域编码</Property>
      <Property name="required">true</Property>
    </PropertyDef>
    <PropertyDef name="name">
      <Property></Property>
      <Property name="label">名称</Property>
      <Property name="required">true</Property>
    </PropertyDef>
    <PropertyDef name="parentCode">
      <Property></Property>
      <Property name="label">所属区域</Property>
      <Property name="mapping">
        <Property name="mapValues">${dorado.getDataProvider(&quot;dicAreaPR#getDicAreaByParentCode&quot;).getResult()}</Property>
        <Property name="keyProperty">code</Property>
        <Property name="valueProperty">name</Property>
      </Property>
    </PropertyDef>
    <PropertyDef name="parentName">
      <Property></Property>
      <Property name="label">上级区域</Property>
      <Property name="required">false</Property>
    </PropertyDef>
    <PropertyDef name="type">
      <Property></Property>
      <Property name="label">类型</Property>
      <Property name="required">true</Property>
      <Property name="mapping">
        <Property name="keyProperty">value</Property>
        <Property name="valueProperty">name</Property>
        <Property name="mapValues">
          <Collection>
            <Entity>
              <Property name="name">省</Property>
              <Property name="value">1</Property>
            </Entity>
            <Entity>
              <Property name="name">市</Property>
              <Property name="value">2</Property>
            </Entity>
            <Entity>
              <Property name="name">区县</Property>
              <Property name="value">3</Property>
            </Entity>
          </Collection>
        </Property>
      </Property>
    </PropertyDef>
    <PropertyDef name="simple">
      <Property></Property>
      <Property name="label">简拼</Property>
      <Property name="required">false</Property>
    </PropertyDef>
    <PropertyDef name="disabledTag">
      <Property></Property>
      <Property name="label">是否禁用</Property>
      <Property name="required">false</Property>
      <Property name="mapping">
        <Property name="mapValues">
          <Collection>
            <Entity>
              <Property name="name">禁用</Property>
              <Property name="value">Y</Property>
            </Entity>
            <Entity>
              <Property name="name">启用</Property>
              <Property name="value">N</Property>
            </Entity>
          </Collection>
        </Property>
        <Property name="keyProperty">value</Property>
        <Property name="valueProperty">name</Property>
      </Property>
    </PropertyDef>
    <PropertyDef name="remark">
      <Property></Property>
      <Property name="label">备注</Property>
      <Property name="required">false</Property>
    </PropertyDef>
  </DataType>
</Model>
fzzy-igdss-web/src/main/java/com/fzzy/sys/controller/system/SysDeptNewController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,202 @@
package com.fzzy.sys.controller.system;
import com.fzzy.igds.constant.Constant;
import com.fzzy.igds.service.CoreCompanyService;
import com.fzzy.igds.service.CoreDeptService;
import com.ruoyi.common.annotation.Log;
import com.ruoyi.common.constant.UserConstants;
import com.ruoyi.common.core.controller.BaseController;
import com.ruoyi.common.core.domain.AjaxResult;
import com.ruoyi.common.core.domain.Ztree;
import com.ruoyi.common.core.domain.entity.SysDept;
import com.ruoyi.common.enums.BusinessType;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.system.service.ISysDeptService;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.ModelMap;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
 * éƒ¨é—¨ä¿¡æ¯
 *
 * @author ruoyi
 */
@Controller
@RequestMapping("/system/dept-new")
public class SysDeptNewController extends BaseController {
    private String prefix = "system/dept";
    @Autowired
    private ISysDeptService deptService;
    @Autowired
    private CoreCompanyService coreCompanyService;
    @Autowired
    private CoreDeptService coreDeptService;
    @RequiresPermissions("system:dept:view")
    @GetMapping()
    public String dept() {
        return prefix + "/dept";
    }
    @RequiresPermissions("system:dept:list")
    @PostMapping("/list")
    @ResponseBody
    public List<SysDept> list(SysDept dept) {
        List<SysDept> deptList = deptService.selectDeptList(dept);
        return deptList;
    }
    /**
     * æ–°å¢žéƒ¨é—¨
     */
    @GetMapping("/add/{parentId}")
    public String add(@PathVariable("parentId") Long parentId, ModelMap mmap) {
        if (!getSysUser().isAdmin()) {
            parentId = getSysUser().getDeptId();
        }
        SysDept dept = deptService.selectDeptById(parentId);
        if(dept == null){
            parentId = Long.valueOf(getSysUser().getCompanyId());
            dept = deptService.selectDeptById(parentId);
        }
        mmap.put("dept", dept);
        return prefix + "/add";
    }
    /**
     * æ–°å¢žä¿å­˜éƒ¨é—¨
     */
    @Log(title = "部门管理", businessType = BusinessType.INSERT)
    @RequiresPermissions("system:dept:add")
    @PostMapping("/add")
    @ResponseBody
    public AjaxResult addSave(@Validated SysDept dept) {
        if (!deptService.checkDeptNameUnique(dept)) {
            return error("新增部门'" + dept.getDeptName() + "'失败,部门名称已存在");
        }
        dept.setCreateBy(getLoginName());
        int i = deptService.insertDept(dept);
        if(i > 0){
            if (Constant.DEPT_TYPE_10.equals(dept.getType())) {
                //新增公司信息
                coreCompanyService.saveOrUpdate(dept);
            }
            if (Constant.DEPT_TYPE_20.equals(dept.getType())) {
                //新增库区信息
                coreDeptService.saveOrUpdate(dept);
            }
        }
        return toAjax(i);
    }
    /**
     * ä¿®æ”¹éƒ¨é—¨
     */
    @RequiresPermissions("system:dept:edit")
    @GetMapping("/edit/{deptId}")
    public String edit(@PathVariable("deptId") Long deptId, ModelMap mmap) {
        deptService.checkDeptDataScope(deptId);
        SysDept dept = deptService.selectDeptById(deptId);
        if (StringUtils.isNotNull(dept) && 100L == deptId) {
            dept.setParentName("无");
        }
        mmap.put("dept", dept);
        return prefix + "/edit";
    }
    /**
     * ä¿®æ”¹ä¿å­˜éƒ¨é—¨
     */
    @Log(title = "部门管理", businessType = BusinessType.UPDATE)
    @RequiresPermissions("system:dept:edit")
    @PostMapping("/edit")
    @ResponseBody
    public AjaxResult editSave(@Validated SysDept dept) {
        Long deptId = dept.getDeptId();
        deptService.checkDeptDataScope(deptId);
        if (!deptService.checkDeptNameUnique(dept)) {
            return error("修改部门'" + dept.getDeptName() + "'失败,部门名称已存在");
        } else if (dept.getParentId().equals(deptId)) {
            return error("修改部门'" + dept.getDeptName() + "'失败,上级部门不能是自己");
        } else if (StringUtils.equals(UserConstants.DEPT_DISABLE, dept.getStatus()) && deptService.selectNormalChildrenDeptById(deptId) > 0) {
            return AjaxResult.error("该部门包含未停用的子部门!");
        }
        dept.setUpdateBy(getLoginName());
        int i = deptService.updateDept(dept);
        if(i > 0){
            if (Constant.DEPT_TYPE_10.equals(dept.getType())) {
                //新增公司信息
                coreCompanyService.saveOrUpdate(dept);
            }
            if (Constant.DEPT_TYPE_20.equals(dept.getType())) {
                //新增库区信息
                coreDeptService.saveOrUpdate(dept);
            }
        }
        return toAjax(i);
    }
    /**
     * åˆ é™¤
     */
    @Log(title = "部门管理", businessType = BusinessType.DELETE)
    @RequiresPermissions("system:dept:remove")
    @GetMapping("/remove/{deptId}")
    @ResponseBody
    public AjaxResult remove(@PathVariable("deptId") Long deptId) {
        if (deptService.selectDeptCount(deptId) > 0) {
            return AjaxResult.warn("存在下级部门,不允许删除");
        }
        if (deptService.checkDeptExistUser(deptId)) {
            return AjaxResult.warn("部门存在用户,不允许删除");
        }
        deptService.checkDeptDataScope(deptId);
        int i = deptService.deleteDeptById(deptId);
        if(i > 0){
            coreCompanyService.delData(deptId + "");
            coreDeptService.delData(deptId + "");
        }
        return toAjax(i);
    }
    /**
     * æ ¡éªŒéƒ¨é—¨åç§°
     */
    @PostMapping("/checkDeptNameUnique")
    @ResponseBody
    public boolean checkDeptNameUnique(SysDept dept) {
        return deptService.checkDeptNameUnique(dept);
    }
    /**
     * é€‰æ‹©éƒ¨é—¨æ ‘
     *
     * @param deptId    éƒ¨é—¨ID
     * @param excludeId æŽ’除ID
     */
    @GetMapping(value = {"/selectDeptTree/{deptId}", "/selectDeptTree/{deptId}/{excludeId}"})
    public String selectDeptTree(@PathVariable("deptId") Long deptId,
                                 @PathVariable(value = "excludeId", required = false) Long excludeId, ModelMap mmap) {
        mmap.put("dept", deptService.selectDeptById(deptId));
        mmap.put("excludeId", excludeId);
        return prefix + "/tree";
    }
    /**
     * åŠ è½½éƒ¨é—¨åˆ—è¡¨æ ‘ï¼ˆæŽ’é™¤ä¸‹çº§ï¼‰
     */
    @GetMapping("/treeData/{excludeId}")
    @ResponseBody
    public List<Ztree> treeDataExcludeChild(@PathVariable(value = "excludeId", required = false) Long excludeId) {
        SysDept dept = new SysDept();
        dept.setExcludeId(excludeId);
        List<Ztree> ztrees = deptService.selectDeptTreeExcludeChild(dept);
        return ztrees;
    }
}
fzzy-igdss-web/src/main/resources/d7/common.css
@@ -19,7 +19,6 @@
    border-radius: 6px;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, .2);
    padding-top: 5px;
    padding-bottom: 13px;
    min-height: 1px;
}
@@ -31,6 +30,14 @@
   /* padding-bottom: 13px;*/
}
.c-bottom {
    border-radius: 6px;
    box-shadow: 1px 1px 3px rgba(0, 0, 0, .2);
    padding-top: 5px;
    padding-bottom: 5px;
    margin-top: 10px;
}
.d-toolbar {
    border-width: 0 !important;
    margin-top: 10px;
fzzy-igdss-web/src/main/resources/templates/system/dept/add.html
@@ -68,7 +68,7 @@
    </div>
    <th:block th:include="include :: footer" />
    <script type="text/javascript">
        var prefix = ctx + "system/dept";
        var prefix = ctx + "system/dept-new";
        
        $("#form-dept-add").validate({
            onkeyup: false,
fzzy-igdss-web/src/main/resources/templates/system/dept/dept.html
@@ -54,7 +54,7 @@
    var removeFlag = [[${@permission.hasPermi('system:dept:remove')}]];
    var datas = [[${@dict.getType('sys_normal_disable')}]];
    var types = [[${@dict.getType('sys_dept_type')}]];
    var prefix = ctx + "system/dept"
    var prefix = ctx + "system/dept-new"
    $(function () {
        var options = {
fzzy-igdss-web/src/main/resources/templates/system/dept/edit.html
@@ -69,7 +69,7 @@
    </div>
    <th:block th:include="include :: footer" />
    <script type="text/javascript">
        var prefix = ctx + "system/dept";
        var prefix = ctx + "system/dept-new";
        
        $("#form-dept-edit").validate({
            onkeyup: false,
fzzy-igdss-web/src/main/resources/templates/system/dept/tree.html
@@ -28,7 +28,7 @@
    <th:block th:include="include :: footer" />
    <th:block th:include="include :: ztree-js" />
    <script th:inline="javascript">
        var prefix = ctx + "system/dept"
        var prefix = ctx + "system/dept-new"
        var deptId = [[${deptId}]];
        var excludeId = [[${excludeId}]];
        $(function() {