Commit f87ffce298b95bfc65e6d805f0790c7e429a97d0

Authored by 肖超群
1 parent 497c5c82

1 优化界面

2.新增仓库、货主、库区
Showing 38 changed files with 1842 additions and 210 deletions
jeecg-boot-master/ant-design-vue-jeecg/.env.development
1 1 NODE_ENV=development
2   -VUE_APP_API_BASE_URL=http://localhost:8080/jeecg-boot
  2 +VUE_APP_API_BASE_URL=http://localhost:8080/wms
3 3 VUE_APP_CAS_BASE_URL=http://cas.example.org:8443/cas
4 4 VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview
5 5  
... ...
jeecg-boot-master/ant-design-vue-jeecg/.env.production
1 1 NODE_ENV=production
2   -VUE_APP_API_BASE_URL=http://localhost:8080/jeecg-boot
  2 +VUE_APP_API_BASE_URL=http://localhost:8080/wms
3 3 VUE_APP_CAS_BASE_URL=http://localhost:8888/cas
4 4 VUE_APP_ONLINE_BASE_URL=http://fileview.jeecg.com/onlinePreview
5 5 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/components/page/GlobalFooter.vue
1 1 <template>
2   - <div class="footer">
3   - <div class="links">
4   - <a href="http://www.jeecg.com" target="_blank">JEECG 首页</a>
5   - <a href="https://github.com/zhangdaiscott/jeecg-boot" target="_blank">
6   - <a-icon type="github"/>
7   - </a>
8   - <a href="https://ant.design/">Ant Design</a>
9   - <a href="https://vuecomponent.github.io/ant-design-vue/docs/vue/introduce-cn/">Vue Antd</a>
10   - </div>
11   - <div class="copyright">
12   - Copyright
13   - <a-icon type="copyright"/>
14   - 2019 <span>JEECG开源社区 出品</span>
15   - </div>
16   - </div>
  2 +<!-- <div class="footer">-->
  3 +<!-- <div class="links">-->
  4 +<!-- <a href="http://www.jeecg.com" target="_blank">JEECG 首页</a>-->
  5 +<!-- <a href="https://github.com/zhangdaiscott/jeecg-boot" target="_blank">-->
  6 +<!-- <a-icon type="github"/>-->
  7 +<!-- </a>-->
  8 +<!-- <a href="https://ant.design/">Ant Design</a>-->
  9 +<!-- <a href="https://vuecomponent.github.io/ant-design-vue/docs/vue/introduce-cn/">Vue Antd</a>-->
  10 +<!-- </div>-->
  11 +<!-- <div class="copyright">-->
  12 +<!-- Copyright-->
  13 +<!-- <a-icon type="copyright"/>-->
  14 +<!-- 2019 <span>JEECG开源社区 出品</span>-->
  15 +<!-- </div>-->
  16 +<!-- </div>-->
17 17 </template>
18 18  
19 19 <script>
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/components/page/GlobalLayout.vue
... ... @@ -134,11 +134,11 @@
134 134 //--update-begin----author:scott---date:20190320------for:根据后台菜单配置,判断是否路由菜单字段,动态选择是否生成路由(为了支持参数URL菜单)------
135 135 //this.menus = this.mainRouters.find((item) => item.path === '/').children;
136 136 this.menus = this.permissionMenuList
137   -
  137 +
138 138 //--update-begin----author:liusq---date:20210223------for:关于测边菜单遮挡内容问题详细说明 #2255
139 139 this.collapsed=!this.sidebarOpened;
140 140 //--update-begin----author:liusq---date:20210223------for:关于测边菜单遮挡内容问题详细说明 #2255
141   -
  141 +
142 142 // 根据后台配置菜单,重新排序加载路由信息
143 143 //console.log('----加载菜单逻辑----')
144 144 //console.log(this.mainRouters)
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/utils/request.js
... ... @@ -17,7 +17,7 @@ let apiBaseUrl = window._CONFIG[&#39;domianURL&#39;] || &quot;/jeecg-boot&quot;;
17 17 const service = axios.create({
18 18 //baseURL: '/jeecg-boot',
19 19 baseURL: apiBaseUrl, // api base_url
20   - timeout: 9000 // 请求超时时间
  20 + timeout: 10 * 1000 // 请求超时时间
21 21 })
22 22  
23 23 const err = (error) => {
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/CompanyList.vue 0 → 100644
  1 +<template>
  2 + <a-card :bordered="false">
  3 + <!-- 查询区域 -->
  4 + <div class="table-page-search-wrapper">
  5 + <a-form layout="inline" @keyup.enter.native="searchQuery">
  6 + <a-row :gutter="24">
  7 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  8 + <a-form-item label="货主编码">
  9 + <a-input placeholder="请输入货主编码" v-model="queryParam.code"></a-input>
  10 + </a-form-item>
  11 + </a-col>
  12 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  13 + <a-form-item label="货主名称">
  14 + <a-input placeholder="请输入货主名称" v-model="queryParam.name"></a-input>
  15 + </a-form-item>
  16 + </a-col>
  17 + <template v-if="toggleSearchStatus">
  18 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  19 + <a-form-item label="仓库编码">
  20 + <a-input placeholder="请输入仓库编码" v-model="queryParam.warehousecode"></a-input>
  21 + </a-form-item>
  22 + </a-col>
  23 + </template>
  24 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  25 + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
  26 + <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
  27 + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
  28 + <a @click="handleToggleSearch" style="margin-left: 8px">
  29 + {{ toggleSearchStatus ? '收起' : '展开' }}
  30 + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
  31 + </a>
  32 + </span>
  33 + </a-col>
  34 + </a-row>
  35 + </a-form>
  36 + </div>
  37 + <!-- 查询区域-END -->
  38 +
  39 + <!-- 操作按钮区域 -->
  40 + <div class="table-operator">
  41 + <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
  42 + <a-button type="primary" icon="download" @click="handleExportXls('货主')">导出</a-button>
  43 + <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
  44 + <a-button type="primary" icon="import">导入</a-button>
  45 + </a-upload>
  46 + <!-- 高级查询区域 -->
  47 + <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>
  48 + <a-dropdown v-if="selectedRowKeys.length > 0">
  49 + <a-menu slot="overlay">
  50 + <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
  51 + </a-menu>
  52 + <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
  53 + </a-dropdown>
  54 + </div>
  55 +
  56 + <!-- table区域-begin -->
  57 + <div>
  58 + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
  59 + <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
  60 + <a style="margin-left: 24px" @click="onClearSelected">清空</a>
  61 + </div>
  62 +
  63 + <a-table
  64 + ref="table"
  65 + size="middle"
  66 + :scroll="{x:true}"
  67 + bordered
  68 + rowKey="id"
  69 + :columns="columns"
  70 + :dataSource="dataSource"
  71 + :pagination="ipagination"
  72 + :loading="loading"
  73 + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
  74 + class="j-table-force-nowrap"
  75 + @change="handleTableChange">
  76 +
  77 + <template slot="htmlSlot" slot-scope="text">
  78 + <div v-html="text"></div>
  79 + </template>
  80 + <template slot="imgSlot" slot-scope="text">
  81 + <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
  82 + <img v-else :src="getImgView(text)" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
  83 + </template>
  84 + <template slot="fileSlot" slot-scope="text">
  85 + <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
  86 + <a-button
  87 + v-else
  88 + :ghost="true"
  89 + type="primary"
  90 + icon="download"
  91 + size="small"
  92 + @click="downloadFile(text)">
  93 + 下载
  94 + </a-button>
  95 + </template>
  96 +
  97 + <span slot="action" slot-scope="text, record">
  98 + <a @click="handleEdit(record)">编辑</a>
  99 +
  100 + <a-divider type="vertical" />
  101 + <a-dropdown>
  102 + <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
  103 + <a-menu slot="overlay">
  104 + <a-menu-item>
  105 + <a @click="handleDetail(record)">详情</a>
  106 + </a-menu-item>
  107 + <a-menu-item>
  108 + <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
  109 + <a>删除</a>
  110 + </a-popconfirm>
  111 + </a-menu-item>
  112 + </a-menu>
  113 + </a-dropdown>
  114 + </span>
  115 +
  116 + </a-table>
  117 + </div>
  118 +
  119 + <company-modal ref="modalForm" @ok="modalFormOk"></company-modal>
  120 + </a-card>
  121 +</template>
  122 +
  123 +<script>
  124 +
  125 + import '@/assets/less/TableExpand.less'
  126 + import { mixinDevice } from '@/utils/mixin'
  127 + import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  128 + import CompanyModal from './modules/CompanyModal'
  129 +
  130 + export default {
  131 + name: 'CompanyList',
  132 + mixins:[JeecgListMixin, mixinDevice],
  133 + components: {
  134 + CompanyModal
  135 + },
  136 + data () {
  137 + return {
  138 + description: '货主管理页面',
  139 + // 表头
  140 + columns: [
  141 + {
  142 + title: '#',
  143 + dataIndex: '',
  144 + key:'rowIndex',
  145 + width:60,
  146 + align:"center",
  147 + customRender:function (t,r,index) {
  148 + return parseInt(index)+1;
  149 + }
  150 + },
  151 + {
  152 + title:'货主编码',
  153 + align:"center",
  154 + dataIndex: 'code'
  155 + },
  156 + {
  157 + title:'货主名称',
  158 + align:"center",
  159 + dataIndex: 'name'
  160 + },
  161 + {
  162 + title:'仓库编码',
  163 + align:"center",
  164 + dataIndex: 'warehousecode'
  165 + },
  166 + {
  167 + title:'地址',
  168 + align:"center",
  169 + dataIndex: 'address'
  170 + },
  171 + {
  172 + title:'区县',
  173 + align:"center",
  174 + dataIndex: 'district'
  175 + },
  176 + {
  177 + title:'城市',
  178 + align:"center",
  179 + dataIndex: 'city'
  180 + },
  181 + {
  182 + title:'省份',
  183 + align:"center",
  184 + dataIndex: 'province'
  185 + },
  186 + {
  187 + title:'国家',
  188 + align:"center",
  189 + dataIndex: 'country'
  190 + },
  191 + {
  192 + title:'邮编',
  193 + align:"center",
  194 + dataIndex: 'postalcode'
  195 + },
  196 + {
  197 + title:'联系人',
  198 + align:"center",
  199 + dataIndex: 'attentionto'
  200 + },
  201 + {
  202 + title:'联系电话',
  203 + align:"center",
  204 + dataIndex: 'phonenum'
  205 + },
  206 + {
  207 + title: '操作',
  208 + dataIndex: 'action',
  209 + align:"center",
  210 + fixed:"right",
  211 + width:147,
  212 + scopedSlots: { customRender: 'action' }
  213 + }
  214 + ],
  215 + url: {
  216 + list: "/config/company/list",
  217 + delete: "/config/company/delete",
  218 + deleteBatch: "/config/company/deleteBatch",
  219 + exportXlsUrl: "/config/company/exportXls",
  220 + importExcelUrl: "config/company/importExcel",
  221 +
  222 + },
  223 + dictOptions:{},
  224 + superFieldList:[],
  225 + }
  226 + },
  227 + created() {
  228 + this.getSuperFieldList();
  229 + },
  230 + computed: {
  231 + importExcelUrl: function(){
  232 + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
  233 + },
  234 + },
  235 + methods: {
  236 + initDictConfig(){
  237 + },
  238 + getSuperFieldList(){
  239 + let fieldList=[];
  240 + fieldList.push({type:'string',value:'code',text:'货主编码',dictCode:''})
  241 + fieldList.push({type:'string',value:'name',text:'货主名称',dictCode:''})
  242 + fieldList.push({type:'string',value:'warehousecode',text:'仓库编码',dictCode:''})
  243 + fieldList.push({type:'string',value:'address',text:'地址',dictCode:''})
  244 + fieldList.push({type:'string',value:'district',text:'区县',dictCode:''})
  245 + fieldList.push({type:'string',value:'city',text:'城市',dictCode:''})
  246 + fieldList.push({type:'string',value:'province',text:'省份',dictCode:''})
  247 + fieldList.push({type:'string',value:'country',text:'国家',dictCode:''})
  248 + fieldList.push({type:'string',value:'postalcode',text:'邮编',dictCode:''})
  249 + fieldList.push({type:'string',value:'attentionto',text:'联系人',dictCode:''})
  250 + fieldList.push({type:'string',value:'phonenum',text:'联系电话',dictCode:''})
  251 + this.superFieldList = fieldList
  252 + }
  253 + }
  254 + }
  255 +</script>
  256 +<style scoped>
  257 + @import '~@assets/less/common.less';
  258 +</style>
0 259 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/WarehouseList.vue
... ... @@ -4,6 +4,33 @@
4 4 <div class="table-page-search-wrapper">
5 5 <a-form layout="inline" @keyup.enter.native="searchQuery">
6 6 <a-row :gutter="24">
  7 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  8 + <a-form-item label="仓库编码">
  9 + <a-input placeholder="请输入仓库编码" v-model="queryParam.code"></a-input>
  10 + </a-form-item>
  11 + </a-col>
  12 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  13 + <a-form-item label="名称">
  14 + <a-input placeholder="请输入名称" v-model="queryParam.name"></a-input>
  15 + </a-form-item>
  16 + </a-col>
  17 + <template v-if="toggleSearchStatus">
  18 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  19 + <a-form-item label="可用状态">
  20 + <j-dict-select-tag placeholder="请选择可用状态" v-model="queryParam.enable" dictCode="enable_status"/>
  21 + </a-form-item>
  22 + </a-col>
  23 + </template>
  24 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  25 + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
  26 + <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
  27 + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
  28 + <a @click="handleToggleSearch" style="margin-left: 8px">
  29 + {{ toggleSearchStatus ? '收起' : '展开' }}
  30 + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
  31 + </a>
  32 + </span>
  33 + </a-col>
7 34 </a-row>
8 35 </a-form>
9 36 </div>
... ... @@ -99,6 +126,7 @@
99 126 import { mixinDevice } from '@/utils/mixin'
100 127 import { JeecgListMixin } from '@/mixins/JeecgListMixin'
101 128 import WarehouseModal from './modules/WarehouseModal'
  129 + import {filterMultiDictText} from '@/components/dict/JDictSelectUtil'
102 130  
103 131 export default {
104 132 name: 'WarehouseList',
... ... @@ -122,34 +150,24 @@
122 150 }
123 151 },
124 152 {
125   - title:'创建人',
126   - align:"center",
127   - dataIndex: 'createBy'
128   - },
129   - {
130   - title:'创建日期',
131   - align:"center",
132   - dataIndex: 'createTime'
133   - },
134   - {
135   - title:'更新人',
  153 + title:'仓库编码',
136 154 align:"center",
137   - dataIndex: 'updateBy'
  155 + dataIndex: 'code'
138 156 },
139 157 {
140   - title:'更新日期',
  158 + title:'名称',
141 159 align:"center",
142   - dataIndex: 'updateTime'
  160 + dataIndex: 'name'
143 161 },
144 162 {
145   - title:'仓库编码',
  163 + title:'地址',
146 164 align:"center",
147   - dataIndex: 'code'
  165 + dataIndex: 'address'
148 166 },
149 167 {
150   - title:'地址',
  168 + title:'区/县',
151 169 align:"center",
152   - dataIndex: 'address'
  170 + dataIndex: 'district'
153 171 },
154 172 {
155 173 title:'城市',
... ... @@ -162,21 +180,11 @@
162 180 dataIndex: 'state'
163 181 },
164 182 {
165   - title:'区/县',
166   - align:"center",
167   - dataIndex: 'district'
168   - },
169   - {
170 183 title:'国家',
171 184 align:"center",
172 185 dataIndex: 'country'
173 186 },
174 187 {
175   - title:'邮编',
176   - align:"center",
177   - dataIndex: 'postalcode'
178   - },
179   - {
180 188 title:'联系人',
181 189 align:"center",
182 190 dataIndex: 'attentionto'
... ... @@ -187,39 +195,29 @@
187 195 dataIndex: 'phonenum'
188 196 },
189 197 {
190   - title:'传真号',
191   - align:"center",
192   - dataIndex: 'faxnum'
193   - },
194   - {
195   - title:'名称',
196   - align:"center",
197   - dataIndex: 'name'
198   - },
199   - {
200 198 title:'可用状态',
201 199 align:"center",
202   - dataIndex: 'enable'
  200 + dataIndex: 'enable_dictText'
203 201 },
204 202 {
205   - title:'删除标记',
  203 + title:'创建人',
206 204 align:"center",
207   - dataIndex: 'deleted'
  205 + dataIndex: 'createBy'
208 206 },
209 207 {
210   - title:'自定义字段1',
  208 + title:'创建日期',
211 209 align:"center",
212   - dataIndex: 'userdef1'
  210 + dataIndex: 'createTime'
213 211 },
214 212 {
215   - title:'自定义字段2',
  213 + title:'更新人',
216 214 align:"center",
217   - dataIndex: 'userdef2'
  215 + dataIndex: 'updateBy'
218 216 },
219 217 {
220   - title:'自定义字段3',
  218 + title:'更新时间',
221 219 align:"center",
222   - dataIndex: 'userdef3'
  220 + dataIndex: 'updateTime'
223 221 },
224 222 {
225 223 title: '操作',
... ... @@ -255,26 +253,20 @@
255 253 },
256 254 getSuperFieldList(){
257 255 let fieldList=[];
258   - fieldList.push({type:'string',value:'createBy',text:'创建人',dictCode:''})
259   - fieldList.push({type:'datetime',value:'createTime',text:'创建日期'})
260   - fieldList.push({type:'string',value:'updateBy',text:'更新人',dictCode:''})
261   - fieldList.push({type:'datetime',value:'updateTime',text:'更新日期'})
262 256 fieldList.push({type:'string',value:'code',text:'仓库编码',dictCode:''})
  257 + fieldList.push({type:'string',value:'name',text:'名称',dictCode:''})
263 258 fieldList.push({type:'string',value:'address',text:'地址',dictCode:''})
  259 + fieldList.push({type:'string',value:'district',text:'区/县',dictCode:''})
264 260 fieldList.push({type:'string',value:'city',text:'城市',dictCode:''})
265 261 fieldList.push({type:'string',value:'state',text:'省份',dictCode:''})
266   - fieldList.push({type:'string',value:'district',text:'区/县',dictCode:''})
267 262 fieldList.push({type:'string',value:'country',text:'国家',dictCode:''})
268   - fieldList.push({type:'string',value:'postalcode',text:'邮编',dictCode:''})
269 263 fieldList.push({type:'string',value:'attentionto',text:'联系人',dictCode:''})
270 264 fieldList.push({type:'string',value:'phonenum',text:'联系电话',dictCode:''})
271   - fieldList.push({type:'string',value:'faxnum',text:'传真号',dictCode:''})
272   - fieldList.push({type:'string',value:'name',text:'名称',dictCode:''})
273   - fieldList.push({type:'int',value:'enable',text:'可用状态',dictCode:''})
274   - fieldList.push({type:'int',value:'deleted',text:'删除标记',dictCode:''})
275   - fieldList.push({type:'string',value:'userdef1',text:'自定义字段1',dictCode:''})
276   - fieldList.push({type:'string',value:'userdef2',text:'自定义字段2',dictCode:''})
277   - fieldList.push({type:'string',value:'userdef3',text:'自定义字段3',dictCode:''})
  265 + fieldList.push({type:'int',value:'enable',text:'可用状态',dictCode:'enable_status'})
  266 + fieldList.push({type:'string',value:'createBy',text:'创建人',dictCode:''})
  267 + fieldList.push({type:'datetime',value:'createTime',text:'创建日期'})
  268 + fieldList.push({type:'string',value:'updateBy',text:'更新人',dictCode:''})
  269 + fieldList.push({type:'datetime',value:'updateTime',text:'更新时间'})
278 270 this.superFieldList = fieldList
279 271 }
280 272 }
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/ZoneList.vue 0 → 100644
  1 +<template>
  2 + <a-card :bordered="false">
  3 + <!-- 查询区域 -->
  4 + <div class="table-page-search-wrapper">
  5 + <a-form layout="inline" @keyup.enter.native="searchQuery">
  6 + <a-row :gutter="24">
  7 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  8 + <a-form-item label="编码">
  9 + <a-input placeholder="请输入编码" v-model="queryParam.code"></a-input>
  10 + </a-form-item>
  11 + </a-col>
  12 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  13 + <a-form-item label="名称">
  14 + <a-input placeholder="请输入名称" v-model="queryParam.name"></a-input>
  15 + </a-form-item>
  16 + </a-col>
  17 + <a-col :xl="6" :lg="7" :md="8" :sm="24">
  18 + <span style="float: left;overflow: hidden;" class="table-page-search-submitButtons">
  19 + <a-button type="primary" @click="searchQuery" icon="search">查询</a-button>
  20 + <a-button type="primary" @click="searchReset" icon="reload" style="margin-left: 8px">重置</a-button>
  21 + <a @click="handleToggleSearch" style="margin-left: 8px">
  22 + {{ toggleSearchStatus ? '收起' : '展开' }}
  23 + <a-icon :type="toggleSearchStatus ? 'up' : 'down'"/>
  24 + </a>
  25 + </span>
  26 + </a-col>
  27 + </a-row>
  28 + </a-form>
  29 + </div>
  30 + <!-- 查询区域-END -->
  31 +
  32 + <!-- 操作按钮区域 -->
  33 + <div class="table-operator">
  34 + <a-button @click="handleAdd" type="primary" icon="plus">新增</a-button>
  35 + <a-button type="primary" icon="download" @click="handleExportXls('库区管理')">导出</a-button>
  36 + <a-upload name="file" :showUploadList="false" :multiple="false" :headers="tokenHeader" :action="importExcelUrl" @change="handleImportExcel">
  37 + <a-button type="primary" icon="import">导入</a-button>
  38 + </a-upload>
  39 + <!-- 高级查询区域 -->
  40 + <j-super-query :fieldList="superFieldList" ref="superQueryModal" @handleSuperQuery="handleSuperQuery"></j-super-query>
  41 + <a-dropdown v-if="selectedRowKeys.length > 0">
  42 + <a-menu slot="overlay">
  43 + <a-menu-item key="1" @click="batchDel"><a-icon type="delete"/>删除</a-menu-item>
  44 + </a-menu>
  45 + <a-button style="margin-left: 8px"> 批量操作 <a-icon type="down" /></a-button>
  46 + </a-dropdown>
  47 + </div>
  48 +
  49 + <!-- table区域-begin -->
  50 + <div>
  51 + <div class="ant-alert ant-alert-info" style="margin-bottom: 16px;">
  52 + <i class="anticon anticon-info-circle ant-alert-icon"></i> 已选择 <a style="font-weight: 600">{{ selectedRowKeys.length }}</a>项
  53 + <a style="margin-left: 24px" @click="onClearSelected">清空</a>
  54 + </div>
  55 +
  56 + <a-table
  57 + ref="table"
  58 + size="middle"
  59 + :scroll="{x:true}"
  60 + bordered
  61 + rowKey="id"
  62 + :columns="columns"
  63 + :dataSource="dataSource"
  64 + :pagination="ipagination"
  65 + :loading="loading"
  66 + :rowSelection="{selectedRowKeys: selectedRowKeys, onChange: onSelectChange}"
  67 + class="j-table-force-nowrap"
  68 + @change="handleTableChange">
  69 +
  70 + <template slot="htmlSlot" slot-scope="text">
  71 + <div v-html="text"></div>
  72 + </template>
  73 + <template slot="imgSlot" slot-scope="text">
  74 + <span v-if="!text" style="font-size: 12px;font-style: italic;">无图片</span>
  75 + <img v-else :src="getImgView(text)" height="25px" alt="" style="max-width:80px;font-size: 12px;font-style: italic;"/>
  76 + </template>
  77 + <template slot="fileSlot" slot-scope="text">
  78 + <span v-if="!text" style="font-size: 12px;font-style: italic;">无文件</span>
  79 + <a-button
  80 + v-else
  81 + :ghost="true"
  82 + type="primary"
  83 + icon="download"
  84 + size="small"
  85 + @click="downloadFile(text)">
  86 + 下载
  87 + </a-button>
  88 + </template>
  89 +
  90 + <span slot="action" slot-scope="text, record">
  91 + <a @click="handleEdit(record)">编辑</a>
  92 +
  93 + <a-divider type="vertical" />
  94 + <a-dropdown>
  95 + <a class="ant-dropdown-link">更多 <a-icon type="down" /></a>
  96 + <a-menu slot="overlay">
  97 + <a-menu-item>
  98 + <a @click="handleDetail(record)">详情</a>
  99 + </a-menu-item>
  100 + <a-menu-item>
  101 + <a-popconfirm title="确定删除吗?" @confirm="() => handleDelete(record.id)">
  102 + <a>删除</a>
  103 + </a-popconfirm>
  104 + </a-menu-item>
  105 + </a-menu>
  106 + </a-dropdown>
  107 + </span>
  108 +
  109 + </a-table>
  110 + </div>
  111 +
  112 + <zone-modal ref="modalForm" @ok="modalFormOk"></zone-modal>
  113 + </a-card>
  114 +</template>
  115 +
  116 +<script>
  117 +
  118 + import '@/assets/less/TableExpand.less'
  119 + import { mixinDevice } from '@/utils/mixin'
  120 + import { JeecgListMixin } from '@/mixins/JeecgListMixin'
  121 + import ZoneModal from './modules/ZoneModal'
  122 +
  123 + export default {
  124 + name: 'ZoneList',
  125 + mixins:[JeecgListMixin, mixinDevice],
  126 + components: {
  127 + ZoneModal
  128 + },
  129 + data () {
  130 + return {
  131 + description: '库区管理管理页面',
  132 + // 表头
  133 + columns: [
  134 + {
  135 + title: '#',
  136 + dataIndex: '',
  137 + key:'rowIndex',
  138 + width:60,
  139 + align:"center",
  140 + customRender:function (t,r,index) {
  141 + return parseInt(index)+1;
  142 + }
  143 + },
  144 + {
  145 + title:'编码',
  146 + align:"center",
  147 + dataIndex: 'code'
  148 + },
  149 + {
  150 + title:'名称',
  151 + align:"center",
  152 + dataIndex: 'name'
  153 + },
  154 + {
  155 + title:'仓库编码',
  156 + align:"center",
  157 + dataIndex: 'warehousecode'
  158 + },
  159 + {
  160 + title:'货主编码',
  161 + align:"center",
  162 + dataIndex: 'companycode'
  163 + },
  164 + {
  165 + title:'创建人',
  166 + align:"center",
  167 + dataIndex: 'createBy'
  168 + },
  169 + {
  170 + title:'创建日期',
  171 + align:"center",
  172 + dataIndex: 'createTime'
  173 + },
  174 + {
  175 + title:'更新人',
  176 + align:"center",
  177 + dataIndex: 'updateBy'
  178 + },
  179 + {
  180 + title:'更新日期',
  181 + align:"center",
  182 + dataIndex: 'updateTime'
  183 + },
  184 + {
  185 + title: '操作',
  186 + dataIndex: 'action',
  187 + align:"center",
  188 + fixed:"right",
  189 + width:147,
  190 + scopedSlots: { customRender: 'action' }
  191 + }
  192 + ],
  193 + url: {
  194 + list: "/config/zone/list",
  195 + delete: "/config/zone/delete",
  196 + deleteBatch: "/config/zone/deleteBatch",
  197 + exportXlsUrl: "/config/zone/exportXls",
  198 + importExcelUrl: "config/zone/importExcel",
  199 +
  200 + },
  201 + dictOptions:{},
  202 + superFieldList:[],
  203 + }
  204 + },
  205 + created() {
  206 + this.getSuperFieldList();
  207 + },
  208 + computed: {
  209 + importExcelUrl: function(){
  210 + return `${window._CONFIG['domianURL']}/${this.url.importExcelUrl}`;
  211 + },
  212 + },
  213 + methods: {
  214 + initDictConfig(){
  215 + },
  216 + getSuperFieldList(){
  217 + let fieldList=[];
  218 + fieldList.push({type:'string',value:'code',text:'编码',dictCode:''})
  219 + fieldList.push({type:'string',value:'name',text:'名称',dictCode:''})
  220 + fieldList.push({type:'string',value:'warehousecode',text:'仓库编码',dictCode:''})
  221 + fieldList.push({type:'string',value:'companycode',text:'货主编码',dictCode:''})
  222 + fieldList.push({type:'string',value:'createBy',text:'创建人',dictCode:''})
  223 + fieldList.push({type:'datetime',value:'createTime',text:'创建日期'})
  224 + fieldList.push({type:'string',value:'updateBy',text:'更新人',dictCode:''})
  225 + fieldList.push({type:'datetime',value:'updateTime',text:'更新日期'})
  226 + this.superFieldList = fieldList
  227 + }
  228 + }
  229 + }
  230 +</script>
  231 +<style scoped>
  232 + @import '~@assets/less/common.less';
  233 +</style>
0 234 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/CompanyForm.vue 0 → 100644
  1 +<template>
  2 + <a-spin :spinning="confirmLoading">
  3 + <j-form-container :disabled="formDisabled">
  4 + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
  5 + <a-row>
  6 + <a-col :span="24">
  7 + <a-form-model-item label="货主编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code">
  8 + <a-input v-model="model.code" placeholder="请输入货主编码" ></a-input>
  9 + </a-form-model-item>
  10 + </a-col>
  11 + <a-col :span="24">
  12 + <a-form-model-item label="货主名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="name">
  13 + <a-input v-model="model.name" placeholder="请输入货主名称" ></a-input>
  14 + </a-form-model-item>
  15 + </a-col>
  16 + <a-col :span="24">
  17 + <a-form-model-item label="仓库编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="warehousecode">
  18 + <a-input v-model="model.warehousecode" placeholder="请输入仓库编码" ></a-input>
  19 + </a-form-model-item>
  20 + </a-col>
  21 + <a-col :span="24">
  22 + <a-form-model-item label="地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="address">
  23 + <a-input v-model="model.address" placeholder="请输入地址" ></a-input>
  24 + </a-form-model-item>
  25 + </a-col>
  26 + <a-col :span="24">
  27 + <a-form-model-item label="区县" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="district">
  28 + <a-input v-model="model.district" placeholder="请输入区县" ></a-input>
  29 + </a-form-model-item>
  30 + </a-col>
  31 + <a-col :span="24">
  32 + <a-form-model-item label="城市" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="city">
  33 + <a-input v-model="model.city" placeholder="请输入城市" ></a-input>
  34 + </a-form-model-item>
  35 + </a-col>
  36 + <a-col :span="24">
  37 + <a-form-model-item label="省份" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="province">
  38 + <a-input v-model="model.province" placeholder="请输入省份" ></a-input>
  39 + </a-form-model-item>
  40 + </a-col>
  41 + <a-col :span="24">
  42 + <a-form-model-item label="国家" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="country">
  43 + <a-input v-model="model.country" placeholder="请输入国家" ></a-input>
  44 + </a-form-model-item>
  45 + </a-col>
  46 + <a-col :span="24">
  47 + <a-form-model-item label="邮编" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="postalcode">
  48 + <a-input v-model="model.postalcode" placeholder="请输入邮编" ></a-input>
  49 + </a-form-model-item>
  50 + </a-col>
  51 + <a-col :span="24">
  52 + <a-form-model-item label="联系人" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="attentionto">
  53 + <a-input v-model="model.attentionto" placeholder="请输入联系人" ></a-input>
  54 + </a-form-model-item>
  55 + </a-col>
  56 + <a-col :span="24">
  57 + <a-form-model-item label="联系电话" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="phonenum">
  58 + <a-input v-model="model.phonenum" placeholder="请输入联系电话" ></a-input>
  59 + </a-form-model-item>
  60 + </a-col>
  61 + </a-row>
  62 + </a-form-model>
  63 + </j-form-container>
  64 + </a-spin>
  65 +</template>
  66 +
  67 +<script>
  68 +
  69 + import { httpAction, getAction } from '@/api/manage'
  70 + import { validateDuplicateValue } from '@/utils/util'
  71 +
  72 + export default {
  73 + name: 'CompanyForm',
  74 + components: {
  75 + },
  76 + props: {
  77 + //表单禁用
  78 + disabled: {
  79 + type: Boolean,
  80 + default: false,
  81 + required: false
  82 + }
  83 + },
  84 + data () {
  85 + return {
  86 + model:{
  87 + },
  88 + labelCol: {
  89 + xs: { span: 24 },
  90 + sm: { span: 5 },
  91 + },
  92 + wrapperCol: {
  93 + xs: { span: 24 },
  94 + sm: { span: 16 },
  95 + },
  96 + confirmLoading: false,
  97 + validatorRules: {
  98 + code: [
  99 + { required: true, message: '请输入货主编码!'},
  100 + ],
  101 + name: [
  102 + { required: true, message: '请输入货主名称!'},
  103 + ],
  104 + warehousecode: [
  105 + { required: true, message: '请输入仓库编码!'},
  106 + ],
  107 + },
  108 + url: {
  109 + add: "/config/company/add",
  110 + edit: "/config/company/edit",
  111 + queryById: "/config/company/queryById"
  112 + }
  113 + }
  114 + },
  115 + computed: {
  116 + formDisabled(){
  117 + return this.disabled
  118 + },
  119 + },
  120 + created () {
  121 + //备份model原始值
  122 + this.modelDefault = JSON.parse(JSON.stringify(this.model));
  123 + },
  124 + methods: {
  125 + add () {
  126 + this.edit(this.modelDefault);
  127 + },
  128 + edit (record) {
  129 + this.model = Object.assign({}, record);
  130 + this.visible = true;
  131 + },
  132 + submitForm () {
  133 + const that = this;
  134 + // 触发表单验证
  135 + this.$refs.form.validate(valid => {
  136 + if (valid) {
  137 + that.confirmLoading = true;
  138 + let httpurl = '';
  139 + let method = '';
  140 + if(!this.model.id){
  141 + httpurl+=this.url.add;
  142 + method = 'post';
  143 + }else{
  144 + httpurl+=this.url.edit;
  145 + method = 'put';
  146 + }
  147 + httpAction(httpurl,this.model,method).then((res)=>{
  148 + if(res.success){
  149 + that.$message.success(res.message);
  150 + that.$emit('ok');
  151 + }else{
  152 + that.$message.warning(res.message);
  153 + }
  154 + }).finally(() => {
  155 + that.confirmLoading = false;
  156 + })
  157 + }
  158 +
  159 + })
  160 + },
  161 + }
  162 + }
  163 +</script>
0 164 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/CompanyModal.Style#Drawer.vue 0 → 100644
  1 +<template>
  2 + <a-drawer
  3 + :title="title"
  4 + :width="width"
  5 + placement="right"
  6 + :closable="false"
  7 + @close="close"
  8 + destroyOnClose
  9 + :visible="visible">
  10 + <company-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" normal></company-form>
  11 + <div class="drawer-footer">
  12 + <a-button @click="handleCancel" style="margin-bottom: 0;">关闭</a-button>
  13 + <a-button v-if="!disableSubmit" @click="handleOk" type="primary" style="margin-bottom: 0;">提交</a-button>
  14 + </div>
  15 + </a-drawer>
  16 +</template>
  17 +
  18 +<script>
  19 +
  20 + import CompanyForm from './CompanyForm'
  21 +
  22 + export default {
  23 + name: 'CompanyModal',
  24 + components: {
  25 + CompanyForm
  26 + },
  27 + data () {
  28 + return {
  29 + title:"操作",
  30 + width:800,
  31 + visible: false,
  32 + disableSubmit: false
  33 + }
  34 + },
  35 + methods: {
  36 + add () {
  37 + this.visible=true
  38 + this.$nextTick(()=>{
  39 + this.$refs.realForm.add();
  40 + })
  41 + },
  42 + edit (record) {
  43 + this.visible=true
  44 + this.$nextTick(()=>{
  45 + this.$refs.realForm.edit(record);
  46 + });
  47 + },
  48 + close () {
  49 + this.$emit('close');
  50 + this.visible = false;
  51 + },
  52 + submitCallback(){
  53 + this.$emit('ok');
  54 + this.visible = false;
  55 + },
  56 + handleOk () {
  57 + this.$refs.realForm.submitForm();
  58 + },
  59 + handleCancel () {
  60 + this.close()
  61 + }
  62 + }
  63 + }
  64 +</script>
  65 +
  66 +<style lang="less" scoped>
  67 +/** Button按钮间距 */
  68 + .ant-btn {
  69 + margin-left: 30px;
  70 + margin-bottom: 30px;
  71 + float: right;
  72 + }
  73 + .drawer-footer{
  74 + position: absolute;
  75 + bottom: -8px;
  76 + width: 100%;
  77 + border-top: 1px solid #e8e8e8;
  78 + padding: 10px 16px;
  79 + text-align: right;
  80 + left: 0;
  81 + background: #fff;
  82 + border-radius: 0 0 2px 2px;
  83 + }
  84 +</style>
0 85 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/CompanyModal.vue 0 → 100644
  1 +<template>
  2 + <j-modal
  3 + :title="title"
  4 + :width="width"
  5 + :visible="visible"
  6 + switchFullscreen
  7 + @ok="handleOk"
  8 + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
  9 + @cancel="handleCancel"
  10 + cancelText="关闭">
  11 + <company-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></company-form>
  12 + </j-modal>
  13 +</template>
  14 +
  15 +<script>
  16 +
  17 + import CompanyForm from './CompanyForm'
  18 + export default {
  19 + name: 'CompanyModal',
  20 + components: {
  21 + CompanyForm
  22 + },
  23 + data () {
  24 + return {
  25 + title:'',
  26 + width:800,
  27 + visible: false,
  28 + disableSubmit: false
  29 + }
  30 + },
  31 + methods: {
  32 + add () {
  33 + this.visible=true
  34 + this.$nextTick(()=>{
  35 + this.$refs.realForm.add();
  36 + })
  37 + },
  38 + edit (record) {
  39 + this.visible=true
  40 + this.$nextTick(()=>{
  41 + this.$refs.realForm.edit(record);
  42 + })
  43 + },
  44 + close () {
  45 + this.$emit('close');
  46 + this.visible = false;
  47 + },
  48 + handleOk () {
  49 + this.$refs.realForm.submitForm();
  50 + },
  51 + submitCallback(){
  52 + this.$emit('ok');
  53 + this.visible = false;
  54 + },
  55 + handleCancel () {
  56 + this.close()
  57 + }
  58 + }
  59 + }
  60 +</script>
0 61 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/WarehouseForm.vue
... ... @@ -4,33 +4,23 @@
4 4 <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
5 5 <a-row>
6 6 <a-col :span="24">
7   - <a-form-model-item label="创建人" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="createBy">
8   - <a-input v-model="model.createBy" placeholder="请输入创建人" ></a-input>
9   - </a-form-model-item>
10   - </a-col>
11   - <a-col :span="24">
12   - <a-form-model-item label="创建日期" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="createTime">
13   - <j-date placeholder="请选择创建日期" v-model="model.createTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
14   - </a-form-model-item>
15   - </a-col>
16   - <a-col :span="24">
17   - <a-form-model-item label="更新人" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="updateBy">
18   - <a-input v-model="model.updateBy" placeholder="请输入更新人" ></a-input>
  7 + <a-form-model-item label="仓库编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code">
  8 + <a-input v-model="model.code" placeholder="请输入仓库编码" ></a-input>
19 9 </a-form-model-item>
20 10 </a-col>
21 11 <a-col :span="24">
22   - <a-form-model-item label="更新日期" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="updateTime">
23   - <j-date placeholder="请选择更新日期" v-model="model.updateTime" :show-time="true" date-format="YYYY-MM-DD HH:mm:ss" style="width: 100%" />
  12 + <a-form-model-item label="名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="name">
  13 + <a-input v-model="model.name" placeholder="请输入名称" ></a-input>
24 14 </a-form-model-item>
25 15 </a-col>
26 16 <a-col :span="24">
27   - <a-form-model-item label="仓库编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code">
28   - <a-input v-model="model.code" placeholder="请输入仓库编码" ></a-input>
  17 + <a-form-model-item label="地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="address">
  18 + <a-input v-model="model.address" placeholder="请输入地址" ></a-input>
29 19 </a-form-model-item>
30 20 </a-col>
31 21 <a-col :span="24">
32   - <a-form-model-item label="地址" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="address">
33   - <a-input v-model="model.address" placeholder="请输入地址" ></a-input>
  22 + <a-form-model-item label="区/县" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="district">
  23 + <a-input v-model="model.district" placeholder="请输入区/县" ></a-input>
34 24 </a-form-model-item>
35 25 </a-col>
36 26 <a-col :span="24">
... ... @@ -44,21 +34,11 @@
44 34 </a-form-model-item>
45 35 </a-col>
46 36 <a-col :span="24">
47   - <a-form-model-item label="区/县" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="district">
48   - <a-input v-model="model.district" placeholder="请输入区/县" ></a-input>
49   - </a-form-model-item>
50   - </a-col>
51   - <a-col :span="24">
52 37 <a-form-model-item label="国家" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="country">
53 38 <a-input v-model="model.country" placeholder="请输入国家" ></a-input>
54 39 </a-form-model-item>
55 40 </a-col>
56 41 <a-col :span="24">
57   - <a-form-model-item label="邮编" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="postalcode">
58   - <a-input v-model="model.postalcode" placeholder="请输入邮编" ></a-input>
59   - </a-form-model-item>
60   - </a-col>
61   - <a-col :span="24">
62 42 <a-form-model-item label="联系人" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="attentionto">
63 43 <a-input v-model="model.attentionto" placeholder="请输入联系人" ></a-input>
64 44 </a-form-model-item>
... ... @@ -69,38 +49,8 @@
69 49 </a-form-model-item>
70 50 </a-col>
71 51 <a-col :span="24">
72   - <a-form-model-item label="传真号" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="faxnum">
73   - <a-input v-model="model.faxnum" placeholder="请输入传真号" ></a-input>
74   - </a-form-model-item>
75   - </a-col>
76   - <a-col :span="24">
77   - <a-form-model-item label="名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="name">
78   - <a-input v-model="model.name" placeholder="请输入名称" ></a-input>
79   - </a-form-model-item>
80   - </a-col>
81   - <a-col :span="24">
82 52 <a-form-model-item label="可用状态" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="enable">
83   - <a-input-number v-model="model.enable" placeholder="请输入可用状态" style="width: 100%" />
84   - </a-form-model-item>
85   - </a-col>
86   - <a-col :span="24">
87   - <a-form-model-item label="删除标记" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="deleted">
88   - <a-input-number v-model="model.deleted" placeholder="请输入删除标记" style="width: 100%" />
89   - </a-form-model-item>
90   - </a-col>
91   - <a-col :span="24">
92   - <a-form-model-item label="自定义字段1" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="userdef1">
93   - <a-input v-model="model.userdef1" placeholder="请输入自定义字段1" ></a-input>
94   - </a-form-model-item>
95   - </a-col>
96   - <a-col :span="24">
97   - <a-form-model-item label="自定义字段2" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="userdef2">
98   - <a-input v-model="model.userdef2" placeholder="请输入自定义字段2" ></a-input>
99   - </a-form-model-item>
100   - </a-col>
101   - <a-col :span="24">
102   - <a-form-model-item label="自定义字段3" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="userdef3">
103   - <a-input v-model="model.userdef3" placeholder="请输入自定义字段3" ></a-input>
  53 + <j-dict-select-tag type="list" v-model="model.enable" dictCode="enable_status" placeholder="请选择可用状态" />
104 54 </a-form-model-item>
105 55 </a-col>
106 56 </a-row>
... ... @@ -143,6 +93,12 @@
143 93 code: [
144 94 { required: true, message: '请输入仓库编码!'},
145 95 ],
  96 + name: [
  97 + { required: true, message: '请输入名称!'},
  98 + ],
  99 + enable: [
  100 + { required: true, message: '请输入可用状态!'},
  101 + ],
146 102 },
147 103 url: {
148 104 add: "/config/warehouse/add",
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ZoneForm.vue 0 → 100644
  1 +<template>
  2 + <a-spin :spinning="confirmLoading">
  3 + <j-form-container :disabled="formDisabled">
  4 + <a-form-model ref="form" :model="model" :rules="validatorRules" slot="detail">
  5 + <a-row>
  6 + <a-col :span="24">
  7 + <a-form-model-item label="编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="code">
  8 + <a-input v-model="model.code" placeholder="请输入编码" ></a-input>
  9 + </a-form-model-item>
  10 + </a-col>
  11 + <a-col :span="24">
  12 + <a-form-model-item label="名称" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="name">
  13 + <a-input v-model="model.name" placeholder="请输入名称" ></a-input>
  14 + </a-form-model-item>
  15 + </a-col>
  16 + <a-col :span="24">
  17 + <a-form-model-item label="仓库编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="warehousecode">
  18 + <a-input v-model="model.warehousecode" placeholder="请输入仓库编码" ></a-input>
  19 + </a-form-model-item>
  20 + </a-col>
  21 + <a-col :span="24">
  22 + <a-form-model-item label="货主编码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="companycode">
  23 + <a-input v-model="model.companycode" placeholder="请输入货主编码" ></a-input>
  24 + </a-form-model-item>
  25 + </a-col>
  26 + </a-row>
  27 + </a-form-model>
  28 + </j-form-container>
  29 + </a-spin>
  30 +</template>
  31 +
  32 +<script>
  33 +
  34 + import { httpAction, getAction } from '@/api/manage'
  35 + import { validateDuplicateValue } from '@/utils/util'
  36 +
  37 + export default {
  38 + name: 'ZoneForm',
  39 + components: {
  40 + },
  41 + props: {
  42 + //表单禁用
  43 + disabled: {
  44 + type: Boolean,
  45 + default: false,
  46 + required: false
  47 + }
  48 + },
  49 + data () {
  50 + return {
  51 + model:{
  52 + },
  53 + labelCol: {
  54 + xs: { span: 24 },
  55 + sm: { span: 5 },
  56 + },
  57 + wrapperCol: {
  58 + xs: { span: 24 },
  59 + sm: { span: 16 },
  60 + },
  61 + confirmLoading: false,
  62 + validatorRules: {
  63 + code: [
  64 + { required: true, message: '请输入编码!'},
  65 + ],
  66 + name: [
  67 + { required: true, message: '请输入名称!'},
  68 + ],
  69 + },
  70 + url: {
  71 + add: "/config/zone/add",
  72 + edit: "/config/zone/edit",
  73 + queryById: "/config/zone/queryById"
  74 + }
  75 + }
  76 + },
  77 + computed: {
  78 + formDisabled(){
  79 + return this.disabled
  80 + },
  81 + },
  82 + created () {
  83 + //备份model原始值
  84 + this.modelDefault = JSON.parse(JSON.stringify(this.model));
  85 + },
  86 + methods: {
  87 + add () {
  88 + this.edit(this.modelDefault);
  89 + },
  90 + edit (record) {
  91 + this.model = Object.assign({}, record);
  92 + this.visible = true;
  93 + },
  94 + submitForm () {
  95 + const that = this;
  96 + // 触发表单验证
  97 + this.$refs.form.validate(valid => {
  98 + if (valid) {
  99 + that.confirmLoading = true;
  100 + let httpurl = '';
  101 + let method = '';
  102 + if(!this.model.id){
  103 + httpurl+=this.url.add;
  104 + method = 'post';
  105 + }else{
  106 + httpurl+=this.url.edit;
  107 + method = 'put';
  108 + }
  109 + httpAction(httpurl,this.model,method).then((res)=>{
  110 + if(res.success){
  111 + that.$message.success(res.message);
  112 + that.$emit('ok');
  113 + }else{
  114 + that.$message.warning(res.message);
  115 + }
  116 + }).finally(() => {
  117 + that.confirmLoading = false;
  118 + })
  119 + }
  120 +
  121 + })
  122 + },
  123 + }
  124 + }
  125 +</script>
0 126 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ZoneModal.Style#Drawer.vue 0 → 100644
  1 +<template>
  2 + <a-drawer
  3 + :title="title"
  4 + :width="width"
  5 + placement="right"
  6 + :closable="false"
  7 + @close="close"
  8 + destroyOnClose
  9 + :visible="visible">
  10 + <zone-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit" normal></zone-form>
  11 + <div class="drawer-footer">
  12 + <a-button @click="handleCancel" style="margin-bottom: 0;">关闭</a-button>
  13 + <a-button v-if="!disableSubmit" @click="handleOk" type="primary" style="margin-bottom: 0;">提交</a-button>
  14 + </div>
  15 + </a-drawer>
  16 +</template>
  17 +
  18 +<script>
  19 +
  20 + import ZoneForm from './ZoneForm'
  21 +
  22 + export default {
  23 + name: 'ZoneModal',
  24 + components: {
  25 + ZoneForm
  26 + },
  27 + data () {
  28 + return {
  29 + title:"操作",
  30 + width:800,
  31 + visible: false,
  32 + disableSubmit: false
  33 + }
  34 + },
  35 + methods: {
  36 + add () {
  37 + this.visible=true
  38 + this.$nextTick(()=>{
  39 + this.$refs.realForm.add();
  40 + })
  41 + },
  42 + edit (record) {
  43 + this.visible=true
  44 + this.$nextTick(()=>{
  45 + this.$refs.realForm.edit(record);
  46 + });
  47 + },
  48 + close () {
  49 + this.$emit('close');
  50 + this.visible = false;
  51 + },
  52 + submitCallback(){
  53 + this.$emit('ok');
  54 + this.visible = false;
  55 + },
  56 + handleOk () {
  57 + this.$refs.realForm.submitForm();
  58 + },
  59 + handleCancel () {
  60 + this.close()
  61 + }
  62 + }
  63 + }
  64 +</script>
  65 +
  66 +<style lang="less" scoped>
  67 +/** Button按钮间距 */
  68 + .ant-btn {
  69 + margin-left: 30px;
  70 + margin-bottom: 30px;
  71 + float: right;
  72 + }
  73 + .drawer-footer{
  74 + position: absolute;
  75 + bottom: -8px;
  76 + width: 100%;
  77 + border-top: 1px solid #e8e8e8;
  78 + padding: 10px 16px;
  79 + text-align: right;
  80 + left: 0;
  81 + background: #fff;
  82 + border-radius: 0 0 2px 2px;
  83 + }
  84 +</style>
0 85 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/config/modules/ZoneModal.vue 0 → 100644
  1 +<template>
  2 + <j-modal
  3 + :title="title"
  4 + :width="width"
  5 + :visible="visible"
  6 + switchFullscreen
  7 + @ok="handleOk"
  8 + :okButtonProps="{ class:{'jee-hidden': disableSubmit} }"
  9 + @cancel="handleCancel"
  10 + cancelText="关闭">
  11 + <zone-form ref="realForm" @ok="submitCallback" :disabled="disableSubmit"></zone-form>
  12 + </j-modal>
  13 +</template>
  14 +
  15 +<script>
  16 +
  17 + import ZoneForm from './ZoneForm'
  18 + export default {
  19 + name: 'ZoneModal',
  20 + components: {
  21 + ZoneForm
  22 + },
  23 + data () {
  24 + return {
  25 + title:'',
  26 + width:800,
  27 + visible: false,
  28 + disableSubmit: false
  29 + }
  30 + },
  31 + methods: {
  32 + add () {
  33 + this.visible=true
  34 + this.$nextTick(()=>{
  35 + this.$refs.realForm.add();
  36 + })
  37 + },
  38 + edit (record) {
  39 + this.visible=true
  40 + this.$nextTick(()=>{
  41 + this.$refs.realForm.edit(record);
  42 + })
  43 + },
  44 + close () {
  45 + this.$emit('close');
  46 + this.visible = false;
  47 + },
  48 + handleOk () {
  49 + this.$refs.realForm.submitForm();
  50 + },
  51 + submitCallback(){
  52 + this.$emit('ok');
  53 + this.visible = false;
  54 + },
  55 + handleCancel () {
  56 + this.close()
  57 + }
  58 + }
  59 + }
  60 +</script>
0 61 \ No newline at end of file
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/modules/PasswordModal.vue
... ... @@ -41,11 +41,7 @@
41 41 confirmDirty: false,
42 42 validatorRules:{
43 43 password:{
44   - rules: [{
45   - required: true,
46   - pattern:/^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,}$/,
47   - message: '密码由8位数字、大小写字母和特殊符号组成!'
48   - }, {
  44 + rules: [ {
49 45 validator: this.validateToNextPassword,
50 46 }],
51 47 },
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/system/modules/UserModal.vue
... ... @@ -47,7 +47,7 @@
47 47 <a-form-model-item label="手机号码" :labelCol="labelCol" :wrapperCol="wrapperCol" prop="phone">
48 48 <a-input placeholder="请输入手机号码" v-model="model.phone" />
49 49 </a-form-model-item>
50   -
  50 +
51 51 <a-form-model-item label="职务" :labelCol="labelCol" :wrapperCol="wrapperCol">
52 52 <j-select-position placeholder="请选择职务" :multiple="false" v-model="model.post"/>
53 53 </a-form-model-item>
... ... @@ -163,7 +163,7 @@
163 163 validatorRules:{
164 164 username:[{required: true, message: '请输入用户账号!'},
165 165 {validator: this.validateUsername,}],
166   - password: [{required: true,pattern:/^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,./]).{8,}$/,message: '密码由8位数字、大小写字母和特殊符号组成!'},
  166 + password: [
167 167 {validator: this.validateToNextPassword,trigger: 'change'}],
168 168 confirmpassword: [{required: true, message: '请重新输入登录密码!',},
169 169 { validator: this.compareToFirstPassword,}],
... ...
jeecg-boot-master/ant-design-vue-jeecg/src/views/user/alteration/Step3.vue
... ... @@ -41,7 +41,7 @@
41 41 accountName: this.userList.username,
42 42 validatorRules: {
43 43 password: [{
44   - required: true, pattern: /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,.\/]).{8,}$/, message: '密码由8位数字、大小写字母和特殊符号组成!!'
  44 + required: false, pattern: /^(?=.*[a-zA-Z])(?=.*\d)(?=.*[~!@#$%^&*()_+`\-={}:";'<>?,.\/]).{8,}$/, message: '密码由8位数字、大小写字母和特殊符号组成!!'
45 45 }],
46 46 confirmPassword: [
47 47 { required: true, message: '密码不能为空!'},
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-base/jeecg-boot-base-core/src/main/java/org/jeecg/common/constant/CommonConstant.java
... ... @@ -26,7 +26,7 @@ public interface CommonConstant {
26 26 * 系统日志类型: 登录
27 27 */
28 28 public static final int LOG_TYPE_1 = 1;
29   -
  29 +
30 30 /**
31 31 * 系统日志类型: 操作
32 32 */
... ... @@ -36,38 +36,38 @@ public interface CommonConstant {
36 36 * 操作日志类型: 查询
37 37 */
38 38 public static final int OPERATE_TYPE_1 = 1;
39   -
  39 +
40 40 /**
41 41 * 操作日志类型: 添加
42 42 */
43 43 public static final int OPERATE_TYPE_2 = 2;
44   -
  44 +
45 45 /**
46 46 * 操作日志类型: 更新
47 47 */
48 48 public static final int OPERATE_TYPE_3 = 3;
49   -
  49 +
50 50 /**
51 51 * 操作日志类型: 删除
52 52 */
53 53 public static final int OPERATE_TYPE_4 = 4;
54   -
  54 +
55 55 /**
56 56 * 操作日志类型: 倒入
57 57 */
58 58 public static final int OPERATE_TYPE_5 = 5;
59   -
  59 +
60 60 /**
61 61 * 操作日志类型: 导出
62 62 */
63 63 public static final int OPERATE_TYPE_6 = 6;
64   -
65   -
  64 +
  65 +
66 66 /** {@code 500 Server Error} (HTTP/1.0 - RFC 1945) */
67 67 public static final Integer SC_INTERNAL_SERVER_ERROR_500 = 500;
68 68 /** {@code 200 OK} (HTTP/1.0 - RFC 1945) */
69 69 public static final Integer SC_OK_200 = 200;
70   -
  70 +
71 71 /**访问权限认证未通过 510*/
72 72 public static final Integer SC_JEECG_NO_AUTHZ=510;
73 73  
... ... @@ -76,7 +76,7 @@ public interface CommonConstant {
76 76 /** 登录用户Token令牌缓存KEY前缀 */
77 77 public static final String PREFIX_USER_TOKEN = "prefix_user_token_";
78 78 /** Token缓存时间:3600秒即一小时 */
79   - public static final int TOKEN_EXPIRE_TIME = 3600;
  79 + public static final int TOKEN_EXPIRE_TIME = -1;
80 80  
81 81 /** 登录二维码 */
82 82 public static final String LOGIN_QRCODE_PRE = "QRCODELOGIN:";
... ... @@ -90,7 +90,7 @@ public interface CommonConstant {
90 90 */
91 91 public static final Integer MENU_TYPE_0 = 0;
92 92 /**
93   - * 1:子菜单
  93 + * 1:子菜单
94 94 */
95 95 public static final Integer MENU_TYPE_1 = 1;
96 96 /**
... ... @@ -101,34 +101,34 @@ public interface CommonConstant {
101 101 /**通告对象类型(USER:指定用户,ALL:全体用户)*/
102 102 public static final String MSG_TYPE_UESR = "USER";
103 103 public static final String MSG_TYPE_ALL = "ALL";
104   -
  104 +
105 105 /**发布状态(0未发布,1已发布,2已撤销)*/
106 106 public static final String NO_SEND = "0";
107 107 public static final String HAS_SEND = "1";
108 108 public static final String HAS_CANCLE = "2";
109   -
  109 +
110 110 /**阅读状态(0未读,1已读)*/
111 111 public static final String HAS_READ_FLAG = "1";
112 112 public static final String NO_READ_FLAG = "0";
113   -
  113 +
114 114 /**优先级(L低,M中,H高)*/
115 115 public static final String PRIORITY_L = "L";
116 116 public static final String PRIORITY_M = "M";
117 117 public static final String PRIORITY_H = "H";
118   -
  118 +
119 119 /**
120 120 * 短信模板方式 0 .登录模板、1.注册模板、2.忘记密码模板
121 121 */
122 122 public static final String SMS_TPL_TYPE_0 = "0";
123 123 public static final String SMS_TPL_TYPE_1 = "1";
124 124 public static final String SMS_TPL_TYPE_2 = "2";
125   -
  125 +
126 126 /**
127 127 * 状态(0无效1有效)
128 128 */
129 129 public static final String STATUS_0 = "0";
130 130 public static final String STATUS_1 = "1";
131   -
  131 +
132 132 /**
133 133 * 同步工作流引擎1同步0不同步
134 134 */
... ... @@ -140,7 +140,7 @@ public interface CommonConstant {
140 140 */
141 141 public static final String MSG_CATEGORY_1 = "1";
142 142 public static final String MSG_CATEGORY_2 = "2";
143   -
  143 +
144 144 /**
145 145 * 是否配置菜单的数据权限 1是0否
146 146 */
... ... @@ -152,7 +152,7 @@ public interface CommonConstant {
152 152 */
153 153 public static final Integer USER_UNFREEZE = 1;
154 154 public static final Integer USER_FREEZE = 2;
155   -
  155 +
156 156 /**字典翻译文本后缀*/
157 157 public static final String DICT_TEXT_SUFFIX = "_dictText";
158 158  
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/company/controller/CompanyController.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.company.controller;
  2 +
  3 +import java.util.Arrays;
  4 +import java.util.List;
  5 +import java.util.Map;
  6 +import java.util.stream.Collectors;
  7 +import java.io.IOException;
  8 +import java.io.UnsupportedEncodingException;
  9 +import java.net.URLDecoder;
  10 +import javax.servlet.http.HttpServletRequest;
  11 +import javax.servlet.http.HttpServletResponse;
  12 +import org.jeecg.common.api.vo.Result;
  13 +import org.jeecg.common.system.query.QueryGenerator;
  14 +import org.jeecg.common.util.oConvertUtils;
  15 +
  16 +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  17 +import com.baomidou.mybatisplus.core.metadata.IPage;
  18 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  19 +import lombok.extern.slf4j.Slf4j;
  20 +
  21 +import org.jeecg.modules.wms.config.company.entity.Company;
  22 +import org.jeecg.modules.wms.config.company.service.ICompanyService;
  23 +import org.jeecgframework.poi.excel.ExcelImportUtil;
  24 +import org.jeecgframework.poi.excel.def.NormalExcelConstants;
  25 +import org.jeecgframework.poi.excel.entity.ExportParams;
  26 +import org.jeecgframework.poi.excel.entity.ImportParams;
  27 +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
  28 +import org.jeecg.common.system.base.controller.JeecgController;
  29 +import org.springframework.beans.factory.annotation.Autowired;
  30 +import org.springframework.web.bind.annotation.*;
  31 +import org.springframework.web.multipart.MultipartFile;
  32 +import org.springframework.web.multipart.MultipartHttpServletRequest;
  33 +import org.springframework.web.servlet.ModelAndView;
  34 +import com.alibaba.fastjson.JSON;
  35 +import io.swagger.annotations.Api;
  36 +import io.swagger.annotations.ApiOperation;
  37 +import org.jeecg.common.aspect.annotation.AutoLog;
  38 +
  39 + /**
  40 + * @Description: 货主
  41 + * @Author: jeecg-boot
  42 + * @Date: 2022-10-13
  43 + * @Version: V1.0
  44 + */
  45 +@Api(tags="货主")
  46 +@RestController
  47 +@RequestMapping("/config/company")
  48 +@Slf4j
  49 +public class CompanyController extends JeecgController<Company, ICompanyService> {
  50 + @Autowired
  51 + private ICompanyService companyService;
  52 +
  53 + /**
  54 + * 分页列表查询
  55 + *
  56 + * @param company
  57 + * @param pageNo
  58 + * @param pageSize
  59 + * @param req
  60 + * @return
  61 + */
  62 + //@AutoLog(value = "货主-分页列表查询")
  63 + @ApiOperation(value="货主-分页列表查询", notes="货主-分页列表查询")
  64 + @GetMapping(value = "/list")
  65 + public Result<IPage<Company>> queryPageList(Company company,
  66 + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
  67 + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
  68 + HttpServletRequest req) {
  69 + QueryWrapper<Company> queryWrapper = QueryGenerator.initQueryWrapper(company, req.getParameterMap());
  70 + Page<Company> page = new Page<Company>(pageNo, pageSize);
  71 + IPage<Company> pageList = companyService.page(page, queryWrapper);
  72 + return Result.OK(pageList);
  73 + }
  74 +
  75 + /**
  76 + * 添加
  77 + *
  78 + * @param company
  79 + * @return
  80 + */
  81 + @AutoLog(value = "货主-添加")
  82 + @ApiOperation(value="货主-添加", notes="货主-添加")
  83 + @PostMapping(value = "/add")
  84 + public Result<String> add(@RequestBody Company company) {
  85 + companyService.save(company);
  86 + return Result.OK("添加成功!");
  87 + }
  88 +
  89 + /**
  90 + * 编辑
  91 + *
  92 + * @param company
  93 + * @return
  94 + */
  95 + @AutoLog(value = "货主-编辑")
  96 + @ApiOperation(value="货主-编辑", notes="货主-编辑")
  97 + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
  98 + public Result<String> edit(@RequestBody Company company) {
  99 + companyService.updateById(company);
  100 + return Result.OK("编辑成功!");
  101 + }
  102 +
  103 + /**
  104 + * 通过id删除
  105 + *
  106 + * @param id
  107 + * @return
  108 + */
  109 + @AutoLog(value = "货主-通过id删除")
  110 + @ApiOperation(value="货主-通过id删除", notes="货主-通过id删除")
  111 + @DeleteMapping(value = "/delete")
  112 + public Result<String> delete(@RequestParam(name="id",required=true) String id) {
  113 + companyService.removeById(id);
  114 + return Result.OK("删除成功!");
  115 + }
  116 +
  117 + /**
  118 + * 批量删除
  119 + *
  120 + * @param ids
  121 + * @return
  122 + */
  123 + @AutoLog(value = "货主-批量删除")
  124 + @ApiOperation(value="货主-批量删除", notes="货主-批量删除")
  125 + @DeleteMapping(value = "/deleteBatch")
  126 + public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
  127 + this.companyService.removeByIds(Arrays.asList(ids.split(",")));
  128 + return Result.OK("批量删除成功!");
  129 + }
  130 +
  131 + /**
  132 + * 通过id查询
  133 + *
  134 + * @param id
  135 + * @return
  136 + */
  137 + //@AutoLog(value = "货主-通过id查询")
  138 + @ApiOperation(value="货主-通过id查询", notes="货主-通过id查询")
  139 + @GetMapping(value = "/queryById")
  140 + public Result<Company> queryById(@RequestParam(name="id",required=true) String id) {
  141 + Company company = companyService.getById(id);
  142 + if(company==null) {
  143 + return Result.error("未找到对应数据");
  144 + }
  145 + return Result.OK(company);
  146 + }
  147 +
  148 + /**
  149 + * 导出excel
  150 + *
  151 + * @param request
  152 + * @param company
  153 + */
  154 + @RequestMapping(value = "/exportXls")
  155 + public ModelAndView exportXls(HttpServletRequest request, Company company) {
  156 + return super.exportXls(request, company, Company.class, "货主");
  157 + }
  158 +
  159 + /**
  160 + * 通过excel导入数据
  161 + *
  162 + * @param request
  163 + * @param response
  164 + * @return
  165 + */
  166 + @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
  167 + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
  168 + return super.importExcel(request, response, Company.class);
  169 + }
  170 +
  171 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/company/entity/Company.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.company.entity;
  2 +
  3 +import java.io.Serializable;
  4 +import java.io.UnsupportedEncodingException;
  5 +import java.util.Date;
  6 +import java.math.BigDecimal;
  7 +import com.baomidou.mybatisplus.annotation.IdType;
  8 +import com.baomidou.mybatisplus.annotation.TableId;
  9 +import com.baomidou.mybatisplus.annotation.TableName;
  10 +import lombok.Data;
  11 +import com.fasterxml.jackson.annotation.JsonFormat;
  12 +import org.springframework.format.annotation.DateTimeFormat;
  13 +import org.jeecgframework.poi.excel.annotation.Excel;
  14 +import org.jeecg.common.aspect.annotation.Dict;
  15 +import io.swagger.annotations.ApiModel;
  16 +import io.swagger.annotations.ApiModelProperty;
  17 +import lombok.EqualsAndHashCode;
  18 +import lombok.experimental.Accessors;
  19 +
  20 +/**
  21 + * @Description: 货主
  22 + * @Author: jeecg-boot
  23 + * @Date: 2022-10-13
  24 + * @Version: V1.0
  25 + */
  26 +@Data
  27 +@TableName("company")
  28 +@Accessors(chain = true)
  29 +@EqualsAndHashCode(callSuper = false)
  30 +@ApiModel(value="company对象", description="货主")
  31 +public class Company implements Serializable {
  32 + private static final long serialVersionUID = 1L;
  33 +
  34 + /**主键*/
  35 + @TableId(type = IdType.ASSIGN_ID)
  36 + @ApiModelProperty(value = "主键")
  37 + private String id;
  38 + /**货主编码*/
  39 + @Excel(name = "货主编码", width = 15)
  40 + @ApiModelProperty(value = "货主编码")
  41 + private String code;
  42 + /**货主名称*/
  43 + @Excel(name = "货主名称", width = 15)
  44 + @ApiModelProperty(value = "货主名称")
  45 + private String name;
  46 + /**仓库代码*/
  47 + @Excel(name = "仓库代码", width = 15)
  48 + @ApiModelProperty(value = "仓库代码")
  49 + private String warehousecode;
  50 + /**地址*/
  51 + @Excel(name = "地址", width = 15)
  52 + @ApiModelProperty(value = "地址")
  53 + private String address;
  54 + /**区县*/
  55 + @Excel(name = "区县", width = 15)
  56 + @ApiModelProperty(value = "区县")
  57 + private String district;
  58 + /**城市*/
  59 + @Excel(name = "城市", width = 15)
  60 + @ApiModelProperty(value = "城市")
  61 + private String city;
  62 + /**省份*/
  63 + @Excel(name = "省份", width = 15)
  64 + @ApiModelProperty(value = "省份")
  65 + private String province;
  66 + /**国家*/
  67 + @Excel(name = "国家", width = 15)
  68 + @ApiModelProperty(value = "国家")
  69 + private String country;
  70 + /**邮编*/
  71 + @Excel(name = "邮编", width = 15)
  72 + @ApiModelProperty(value = "邮编")
  73 + private String postalcode;
  74 + /**联系人*/
  75 + @Excel(name = "联系人", width = 15)
  76 + @ApiModelProperty(value = "联系人")
  77 + private String attentionto;
  78 + /**联系电话*/
  79 + @Excel(name = "联系电话", width = 15)
  80 + @ApiModelProperty(value = "联系电话")
  81 + private String phonenum;
  82 + /**创建人*/
  83 + @ApiModelProperty(value = "创建人")
  84 + private String createBy;
  85 + /**创建日期*/
  86 + @ApiModelProperty(value = "创建日期")
  87 + private Date createTime;
  88 + /**更新人*/
  89 + @ApiModelProperty(value = "更新人")
  90 + private String updateBy;
  91 + /**更新日期*/
  92 + @ApiModelProperty(value = "更新日期")
  93 + private Date updateTime;
  94 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/company/mapper/CompanyMapper.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.company.mapper;
  2 +
  3 +import java.util.List;
  4 +
  5 +import org.apache.ibatis.annotations.Param;
  6 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  7 +import org.jeecg.modules.wms.config.company.entity.Company;
  8 +
  9 +/**
  10 + * @Description: 货主
  11 + * @Author: jeecg-boot
  12 + * @Date: 2022-10-13
  13 + * @Version: V1.0
  14 + */
  15 +public interface CompanyMapper extends BaseMapper<Company> {
  16 +
  17 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/config/warehouse/mapper/xml/WarehouseMapper.xml renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/company/mapper/xml/CompanyMapper.xml
1 1 <?xml version="1.0" encoding="UTF-8"?>
2 2 <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
3   -<mapper namespace="org.jeecg.modules.system.config.warehouse.mapper.WarehouseMapper">
  3 +<mapper namespace="org.jeecg.modules.wms.config.company.mapper.CompanyMapper">
4 4  
5 5 </mapper>
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/company/service/ICompanyService.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.company.service;
  2 +
  3 +import com.baomidou.mybatisplus.extension.service.IService;
  4 +import org.jeecg.modules.wms.config.company.entity.Company;
  5 +
  6 +/**
  7 + * @Description: 货主
  8 + * @Author: jeecg-boot
  9 + * @Date: 2022-10-13
  10 + * @Version: V1.0
  11 + */
  12 +public interface ICompanyService extends IService<Company> {
  13 +
  14 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/company/service/impl/CompanyServiceImpl.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.company.service.impl;
  2 +
  3 +import org.jeecg.modules.wms.config.company.entity.Company;
  4 +import org.jeecg.modules.wms.config.company.mapper.CompanyMapper;
  5 +import org.jeecg.modules.wms.config.company.service.ICompanyService;
  6 +import org.springframework.stereotype.Service;
  7 +
  8 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  9 +
  10 +/**
  11 + * @Description: 货主
  12 + * @Author: jeecg-boot
  13 + * @Date: 2022-10-13
  14 + * @Version: V1.0
  15 + */
  16 +@Service
  17 +public class CompanyServiceImpl extends ServiceImpl<CompanyMapper, Company> implements ICompanyService {
  18 +
  19 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/config/warehouse/controller/WarehouseController.java renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/warehouse/controller/WarehouseController.java
1   -package org.jeecg.modules.system.config.warehouse.controller;
  1 +package org.jeecg.modules.wms.config.warehouse.controller;
2 2  
3 3 import java.util.Arrays;
4 4 import java.util.List;
... ... @@ -18,8 +18,8 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
18 18 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
19 19 import lombok.extern.slf4j.Slf4j;
20 20  
21   -import org.jeecg.modules.system.config.warehouse.entity.Warehouse;
22   -import org.jeecg.modules.system.config.warehouse.service.IWarehouseService;
  21 +import org.jeecg.modules.wms.config.warehouse.entity.Warehouse;
  22 +import org.jeecg.modules.wms.config.warehouse.service.IWarehouseService;
23 23 import org.jeecgframework.poi.excel.ExcelImportUtil;
24 24 import org.jeecgframework.poi.excel.def.NormalExcelConstants;
25 25 import org.jeecgframework.poi.excel.entity.ExportParams;
... ... @@ -39,7 +39,7 @@ import org.jeecg.common.aspect.annotation.AutoLog;
39 39 /**
40 40 * @Description: 仓库
41 41 * @Author: jeecg-boot
42   - * @Date: 2022-10-12
  42 + * @Date: 2022-10-13
43 43 * @Version: V1.0
44 44 */
45 45 @Api(tags="仓库")
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/config/warehouse/entity/Warehouse.java renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/warehouse/entity/Warehouse.java
1   -package org.jeecg.modules.system.config.warehouse.entity;
  1 +package org.jeecg.modules.wms.config.warehouse.entity;
2 2  
3 3 import java.io.Serializable;
4 4 import java.io.UnsupportedEncodingException;
... ... @@ -20,7 +20,7 @@ import lombok.experimental.Accessors;
20 20 /**
21 21 * @Description: 仓库
22 22 * @Author: jeecg-boot
23   - * @Date: 2022-10-12
  23 + * @Date: 2022-10-13
24 24 * @Version: V1.0
25 25 */
26 26 @Data
... ... @@ -35,26 +35,22 @@ public class Warehouse implements Serializable {
35 35 @TableId(type = IdType.ASSIGN_ID)
36 36 @ApiModelProperty(value = "主键")
37 37 private String id;
38   - /**创建人*/
39   - @ApiModelProperty(value = "创建人")
40   - private String createBy;
41   - /**创建日期*/
42   - @ApiModelProperty(value = "创建日期")
43   - private Date createTime;
44   - /**更新人*/
45   - @ApiModelProperty(value = "更新人")
46   - private String updateBy;
47   - /**更新日期*/
48   - @ApiModelProperty(value = "更新日期")
49   - private Date updateTime;
50 38 /**仓库编码*/
51 39 @Excel(name = "仓库编码", width = 15)
52 40 @ApiModelProperty(value = "仓库编码")
53 41 private String code;
  42 + /**名称*/
  43 + @Excel(name = "名称", width = 15)
  44 + @ApiModelProperty(value = "名称")
  45 + private String name;
54 46 /**地址*/
55 47 @Excel(name = "地址", width = 15)
56 48 @ApiModelProperty(value = "地址")
57 49 private String address;
  50 + /**区/县*/
  51 + @Excel(name = "区/县", width = 15)
  52 + @ApiModelProperty(value = "区/县")
  53 + private String district;
58 54 /**城市*/
59 55 @Excel(name = "城市", width = 15)
60 56 @ApiModelProperty(value = "城市")
... ... @@ -63,10 +59,6 @@ public class Warehouse implements Serializable {
63 59 @Excel(name = "省份", width = 15)
64 60 @ApiModelProperty(value = "省份")
65 61 private String state;
66   - /**区/县*/
67   - @Excel(name = "区/县", width = 15)
68   - @ApiModelProperty(value = "区/县")
69   - private String district;
70 62 /**国家*/
71 63 @Excel(name = "国家", width = 15)
72 64 @ApiModelProperty(value = "国家")
... ... @@ -87,18 +79,23 @@ public class Warehouse implements Serializable {
87 79 @Excel(name = "传真号", width = 15)
88 80 @ApiModelProperty(value = "传真号")
89 81 private String faxnum;
90   - /**名称*/
91   - @Excel(name = "名称", width = 15)
92   - @ApiModelProperty(value = "名称")
93   - private String name;
94 82 /**可用状态*/
95   - @Excel(name = "可用状态", width = 15)
  83 + @Excel(name = "可用状态", width = 15, dicCode = "enable_status")
  84 + @Dict(dicCode = "enable_status")
96 85 @ApiModelProperty(value = "可用状态")
97 86 private Integer enable;
98   - /**删除标记*/
99   - @Excel(name = "删除标记", width = 15)
100   - @ApiModelProperty(value = "删除标记")
101   - private Integer deleted;
  87 + /**创建人*/
  88 + @ApiModelProperty(value = "创建人")
  89 + private String createBy;
  90 + /**创建日期*/
  91 + @ApiModelProperty(value = "创建日期")
  92 + private Date createTime;
  93 + /**更新人*/
  94 + @ApiModelProperty(value = "更新人")
  95 + private String updateBy;
  96 + /**更新时间*/
  97 + @ApiModelProperty(value = "更新时间")
  98 + private Date updateTime;
102 99 /**自定义字段1*/
103 100 @Excel(name = "自定义字段1", width = 15)
104 101 @ApiModelProperty(value = "自定义字段1")
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/config/warehouse/mapper/WarehouseMapper.java renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/warehouse/mapper/WarehouseMapper.java
1   -package org.jeecg.modules.system.config.warehouse.mapper;
  1 +package org.jeecg.modules.wms.config.warehouse.mapper;
2 2  
3 3 import java.util.List;
4 4  
5 5 import org.apache.ibatis.annotations.Param;
6 6 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
7   -import org.jeecg.modules.system.config.warehouse.entity.Warehouse;
  7 +import org.jeecg.modules.wms.config.warehouse.entity.Warehouse;
8 8  
9 9 /**
10 10 * @Description: 仓库
11 11 * @Author: jeecg-boot
12   - * @Date: 2022-10-12
  12 + * @Date: 2022-10-13
13 13 * @Version: V1.0
14 14 */
15 15 public interface WarehouseMapper extends BaseMapper<Warehouse> {
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/warehouse/mapper/xml/WarehouseMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="org.jeecg.modules.wms.config.warehouse.mapper.WarehouseMapper">
  4 +
  5 +</mapper>
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/config/warehouse/service/IWarehouseService.java renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/warehouse/service/IWarehouseService.java
1   -package org.jeecg.modules.system.config.warehouse.service;
  1 +package org.jeecg.modules.wms.config.warehouse.service;
2 2  
3 3 import com.baomidou.mybatisplus.extension.service.IService;
4   -import org.jeecg.modules.system.config.warehouse.entity.Warehouse;
  4 +import org.jeecg.modules.wms.config.warehouse.entity.Warehouse;
5 5  
6 6 /**
7 7 * @Description: 仓库
8 8 * @Author: jeecg-boot
9   - * @Date: 2022-10-12
  9 + * @Date: 2022-10-13
10 10 * @Version: V1.0
11 11 */
12 12 public interface IWarehouseService extends IService<Warehouse> {
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/system/config/warehouse/service/impl/WarehouseServiceImpl.java renamed to jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/warehouse/service/impl/WarehouseServiceImpl.java
1   -package org.jeecg.modules.system.config.warehouse.service.impl;
  1 +package org.jeecg.modules.wms.config.warehouse.service.impl;
2 2  
3   -import org.jeecg.modules.system.config.warehouse.entity.Warehouse;
4   -import org.jeecg.modules.system.config.warehouse.mapper.WarehouseMapper;
5   -import org.jeecg.modules.system.config.warehouse.service.IWarehouseService;
  3 +import org.jeecg.modules.wms.config.warehouse.entity.Warehouse;
  4 +import org.jeecg.modules.wms.config.warehouse.mapper.WarehouseMapper;
  5 +import org.jeecg.modules.wms.config.warehouse.service.IWarehouseService;
6 6 import org.springframework.stereotype.Service;
7 7  
8 8 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
... ... @@ -10,7 +10,7 @@ import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
10 10 /**
11 11 * @Description: 仓库
12 12 * @Author: jeecg-boot
13   - * @Date: 2022-10-12
  13 + * @Date: 2022-10-13
14 14 * @Version: V1.0
15 15 */
16 16 @Service
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/zone/controller/ZoneController.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.zone.controller;
  2 +
  3 +import java.util.Arrays;
  4 +import java.util.List;
  5 +import java.util.Map;
  6 +import java.util.stream.Collectors;
  7 +import java.io.IOException;
  8 +import java.io.UnsupportedEncodingException;
  9 +import java.net.URLDecoder;
  10 +import javax.servlet.http.HttpServletRequest;
  11 +import javax.servlet.http.HttpServletResponse;
  12 +import org.jeecg.common.api.vo.Result;
  13 +import org.jeecg.common.system.query.QueryGenerator;
  14 +import org.jeecg.common.util.oConvertUtils;
  15 +
  16 +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
  17 +import com.baomidou.mybatisplus.core.metadata.IPage;
  18 +import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
  19 +import lombok.extern.slf4j.Slf4j;
  20 +
  21 +import org.jeecg.modules.wms.config.zone.entity.Zone;
  22 +import org.jeecg.modules.wms.config.zone.service.IZoneService;
  23 +import org.jeecgframework.poi.excel.ExcelImportUtil;
  24 +import org.jeecgframework.poi.excel.def.NormalExcelConstants;
  25 +import org.jeecgframework.poi.excel.entity.ExportParams;
  26 +import org.jeecgframework.poi.excel.entity.ImportParams;
  27 +import org.jeecgframework.poi.excel.view.JeecgEntityExcelView;
  28 +import org.jeecg.common.system.base.controller.JeecgController;
  29 +import org.springframework.beans.factory.annotation.Autowired;
  30 +import org.springframework.web.bind.annotation.*;
  31 +import org.springframework.web.multipart.MultipartFile;
  32 +import org.springframework.web.multipart.MultipartHttpServletRequest;
  33 +import org.springframework.web.servlet.ModelAndView;
  34 +import com.alibaba.fastjson.JSON;
  35 +import io.swagger.annotations.Api;
  36 +import io.swagger.annotations.ApiOperation;
  37 +import org.jeecg.common.aspect.annotation.AutoLog;
  38 +
  39 + /**
  40 + * @Description: 库区管理
  41 + * @Author: jeecg-boot
  42 + * @Date: 2022-10-13
  43 + * @Version: V1.0
  44 + */
  45 +@Api(tags="库区管理")
  46 +@RestController
  47 +@RequestMapping("/config/zone")
  48 +@Slf4j
  49 +public class ZoneController extends JeecgController<Zone, IZoneService> {
  50 + @Autowired
  51 + private IZoneService zoneService;
  52 +
  53 + /**
  54 + * 分页列表查询
  55 + *
  56 + * @param zone
  57 + * @param pageNo
  58 + * @param pageSize
  59 + * @param req
  60 + * @return
  61 + */
  62 + //@AutoLog(value = "库区管理-分页列表查询")
  63 + @ApiOperation(value="库区管理-分页列表查询", notes="库区管理-分页列表查询")
  64 + @GetMapping(value = "/list")
  65 + public Result<IPage<Zone>> queryPageList(Zone zone,
  66 + @RequestParam(name="pageNo", defaultValue="1") Integer pageNo,
  67 + @RequestParam(name="pageSize", defaultValue="10") Integer pageSize,
  68 + HttpServletRequest req) {
  69 + QueryWrapper<Zone> queryWrapper = QueryGenerator.initQueryWrapper(zone, req.getParameterMap());
  70 + Page<Zone> page = new Page<Zone>(pageNo, pageSize);
  71 + IPage<Zone> pageList = zoneService.page(page, queryWrapper);
  72 + return Result.OK(pageList);
  73 + }
  74 +
  75 + /**
  76 + * 添加
  77 + *
  78 + * @param zone
  79 + * @return
  80 + */
  81 + @AutoLog(value = "库区管理-添加")
  82 + @ApiOperation(value="库区管理-添加", notes="库区管理-添加")
  83 + @PostMapping(value = "/add")
  84 + public Result<String> add(@RequestBody Zone zone) {
  85 + zoneService.save(zone);
  86 + return Result.OK("添加成功!");
  87 + }
  88 +
  89 + /**
  90 + * 编辑
  91 + *
  92 + * @param zone
  93 + * @return
  94 + */
  95 + @AutoLog(value = "库区管理-编辑")
  96 + @ApiOperation(value="库区管理-编辑", notes="库区管理-编辑")
  97 + @RequestMapping(value = "/edit", method = {RequestMethod.PUT,RequestMethod.POST})
  98 + public Result<String> edit(@RequestBody Zone zone) {
  99 + zoneService.updateById(zone);
  100 + return Result.OK("编辑成功!");
  101 + }
  102 +
  103 + /**
  104 + * 通过id删除
  105 + *
  106 + * @param id
  107 + * @return
  108 + */
  109 + @AutoLog(value = "库区管理-通过id删除")
  110 + @ApiOperation(value="库区管理-通过id删除", notes="库区管理-通过id删除")
  111 + @DeleteMapping(value = "/delete")
  112 + public Result<String> delete(@RequestParam(name="id",required=true) String id) {
  113 + zoneService.removeById(id);
  114 + return Result.OK("删除成功!");
  115 + }
  116 +
  117 + /**
  118 + * 批量删除
  119 + *
  120 + * @param ids
  121 + * @return
  122 + */
  123 + @AutoLog(value = "库区管理-批量删除")
  124 + @ApiOperation(value="库区管理-批量删除", notes="库区管理-批量删除")
  125 + @DeleteMapping(value = "/deleteBatch")
  126 + public Result<String> deleteBatch(@RequestParam(name="ids",required=true) String ids) {
  127 + this.zoneService.removeByIds(Arrays.asList(ids.split(",")));
  128 + return Result.OK("批量删除成功!");
  129 + }
  130 +
  131 + /**
  132 + * 通过id查询
  133 + *
  134 + * @param id
  135 + * @return
  136 + */
  137 + //@AutoLog(value = "库区管理-通过id查询")
  138 + @ApiOperation(value="库区管理-通过id查询", notes="库区管理-通过id查询")
  139 + @GetMapping(value = "/queryById")
  140 + public Result<Zone> queryById(@RequestParam(name="id",required=true) String id) {
  141 + Zone zone = zoneService.getById(id);
  142 + if(zone==null) {
  143 + return Result.error("未找到对应数据");
  144 + }
  145 + return Result.OK(zone);
  146 + }
  147 +
  148 + /**
  149 + * 导出excel
  150 + *
  151 + * @param request
  152 + * @param zone
  153 + */
  154 + @RequestMapping(value = "/exportXls")
  155 + public ModelAndView exportXls(HttpServletRequest request, Zone zone) {
  156 + return super.exportXls(request, zone, Zone.class, "库区管理");
  157 + }
  158 +
  159 + /**
  160 + * 通过excel导入数据
  161 + *
  162 + * @param request
  163 + * @param response
  164 + * @return
  165 + */
  166 + @RequestMapping(value = "/importExcel", method = RequestMethod.POST)
  167 + public Result<?> importExcel(HttpServletRequest request, HttpServletResponse response) {
  168 + return super.importExcel(request, response, Zone.class);
  169 + }
  170 +
  171 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/zone/entity/Zone.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.zone.entity;
  2 +
  3 +import java.io.Serializable;
  4 +import java.io.UnsupportedEncodingException;
  5 +import java.util.Date;
  6 +import java.math.BigDecimal;
  7 +import com.baomidou.mybatisplus.annotation.IdType;
  8 +import com.baomidou.mybatisplus.annotation.TableId;
  9 +import com.baomidou.mybatisplus.annotation.TableName;
  10 +import lombok.Data;
  11 +import com.fasterxml.jackson.annotation.JsonFormat;
  12 +import org.springframework.format.annotation.DateTimeFormat;
  13 +import org.jeecgframework.poi.excel.annotation.Excel;
  14 +import org.jeecg.common.aspect.annotation.Dict;
  15 +import io.swagger.annotations.ApiModel;
  16 +import io.swagger.annotations.ApiModelProperty;
  17 +import lombok.EqualsAndHashCode;
  18 +import lombok.experimental.Accessors;
  19 +
  20 +/**
  21 + * @Description: 库区管理
  22 + * @Author: jeecg-boot
  23 + * @Date: 2022-10-13
  24 + * @Version: V1.0
  25 + */
  26 +@Data
  27 +@TableName("zone")
  28 +@Accessors(chain = true)
  29 +@EqualsAndHashCode(callSuper = false)
  30 +@ApiModel(value="zone对象", description="库区管理")
  31 +public class Zone implements Serializable {
  32 + private static final long serialVersionUID = 1L;
  33 +
  34 + /**主键*/
  35 + @TableId(type = IdType.ASSIGN_ID)
  36 + @ApiModelProperty(value = "主键")
  37 + private String id;
  38 + /**编码*/
  39 + @Excel(name = "编码", width = 15)
  40 + @ApiModelProperty(value = "编码")
  41 + private String code;
  42 + /**名称*/
  43 + @Excel(name = "名称", width = 15)
  44 + @ApiModelProperty(value = "名称")
  45 + private String name;
  46 + /**仓库编码*/
  47 + @Excel(name = "仓库编码", width = 15)
  48 + @ApiModelProperty(value = "仓库编码")
  49 + private String warehousecode;
  50 + /**货主编码*/
  51 + @Excel(name = "货主编码", width = 15)
  52 + @ApiModelProperty(value = "货主编码")
  53 + private String companycode;
  54 + /**创建人*/
  55 + @ApiModelProperty(value = "创建人")
  56 + private String createBy;
  57 + /**创建日期*/
  58 + @ApiModelProperty(value = "创建日期")
  59 + private Date createTime;
  60 + /**更新人*/
  61 + @ApiModelProperty(value = "更新人")
  62 + private String updateBy;
  63 + /**更新日期*/
  64 + @ApiModelProperty(value = "更新日期")
  65 + private Date updateTime;
  66 + /**自定义字段1*/
  67 + @Excel(name = "自定义字段1", width = 15)
  68 + @ApiModelProperty(value = "自定义字段1")
  69 + private String userdef1;
  70 + /**自定义字段2*/
  71 + @Excel(name = "自定义字段2", width = 15)
  72 + @ApiModelProperty(value = "自定义字段2")
  73 + private String userdef2;
  74 + /**自定义字段3*/
  75 + @Excel(name = "自定义字段3", width = 15)
  76 + @ApiModelProperty(value = "自定义字段3")
  77 + private String userdef3;
  78 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/zone/mapper/ZoneMapper.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.zone.mapper;
  2 +
  3 +import java.util.List;
  4 +
  5 +import org.apache.ibatis.annotations.Param;
  6 +import com.baomidou.mybatisplus.core.mapper.BaseMapper;
  7 +import org.jeecg.modules.wms.config.zone.entity.Zone;
  8 +
  9 +/**
  10 + * @Description: 库区管理
  11 + * @Author: jeecg-boot
  12 + * @Date: 2022-10-13
  13 + * @Version: V1.0
  14 + */
  15 +public interface ZoneMapper extends BaseMapper<Zone> {
  16 +
  17 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/zone/mapper/xml/ZoneMapper.xml 0 → 100644
  1 +<?xml version="1.0" encoding="UTF-8"?>
  2 +<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
  3 +<mapper namespace="org.jeecg.modules.wms.config.zone.mapper.ZoneMapper">
  4 +
  5 +</mapper>
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/zone/service/IZoneService.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.zone.service;
  2 +
  3 +import com.baomidou.mybatisplus.extension.service.IService;
  4 +import org.jeecg.modules.wms.config.zone.entity.Zone;
  5 +
  6 +/**
  7 + * @Description: 库区管理
  8 + * @Author: jeecg-boot
  9 + * @Date: 2022-10-13
  10 + * @Version: V1.0
  11 + */
  12 +public interface IZoneService extends IService<Zone> {
  13 +
  14 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/wms/config/zone/service/impl/ZoneServiceImpl.java 0 → 100644
  1 +package org.jeecg.modules.wms.config.zone.service.impl;
  2 +
  3 +import org.jeecg.modules.wms.config.zone.entity.Zone;
  4 +import org.jeecg.modules.wms.config.zone.mapper.ZoneMapper;
  5 +import org.jeecg.modules.wms.config.zone.service.IZoneService;
  6 +import org.springframework.stereotype.Service;
  7 +
  8 +import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
  9 +
  10 +/**
  11 + * @Description: 库区管理
  12 + * @Author: jeecg-boot
  13 + * @Date: 2022-10-13
  14 + * @Version: V1.0
  15 + */
  16 +@Service
  17 +public class ZoneServiceImpl extends ServiceImpl<ZoneMapper, Zone> implements IZoneService {
  18 +
  19 +}
... ...
jeecg-boot-master/jeecg-boot/jeecg-boot-module-system/src/main/resources/application-dev.yml
... ... @@ -7,7 +7,7 @@ server:
7 7 include-stacktrace: ALWAYS
8 8 include-message: ALWAYS
9 9 servlet:
10   - context-path: /jeecg-boot
  10 + context-path: /wms
11 11 compression:
12 12 enabled: true
13 13 min-response-size: 1024
... ...