diff --git a/ant-design-vue-jeecg/src/views/product/pdaccessories/ProductAccessoriesList.vue b/ant-design-vue-jeecg/src/views/product/pdaccessories/ProductAccessoriesList.vue index 80d3b134..17a12e2c 100644 --- a/ant-design-vue-jeecg/src/views/product/pdaccessories/ProductAccessoriesList.vue +++ b/ant-design-vue-jeecg/src/views/product/pdaccessories/ProductAccessoriesList.vue @@ -5,6 +5,11 @@
+ + + + + @@ -120,6 +125,7 @@ return { description: '产品辅料表管理页面', accessoriesId:'', + nums:'', biaoTi: '', // 表头 columns: [ @@ -141,10 +147,20 @@ { title:'产品编号', align:"center", + dataIndex: 'productCode' + }, + { + title:'产品名称', + align:"center", dataIndex: 'productId_dictText' }, { - title:'辅料', + title:'辅料编号', + align:"center", + dataIndex: 'nums' + }, + { + title:'辅料名称', align:"center", dataIndex: 'accessoriesId_dictText' }, @@ -262,10 +278,12 @@ //param.id=this.id; param.productId = this.$route.query.id; param.accessoriesId=this.accessoriesId; + param.nums=this.nums; return filterObj(param); }, searchReset() { this.accessoriesId = '' + this.nums = '' this.loadData(1); }, handleDetail(id){ diff --git a/ant-design-vue-jeecg/src/views/product/pdfabric/ProductFabricList.vue b/ant-design-vue-jeecg/src/views/product/pdfabric/ProductFabricList.vue index a485c5fc..ca848817 100644 --- a/ant-design-vue-jeecg/src/views/product/pdfabric/ProductFabricList.vue +++ b/ant-design-vue-jeecg/src/views/product/pdfabric/ProductFabricList.vue @@ -5,11 +5,17 @@
+ + + + + + 查询 @@ -119,6 +125,7 @@ return { description: '产品面料表管理页面', fabricId:'', + fabricNumber:'', biaoTi: '', // 表头 columns: [ @@ -135,10 +142,20 @@ { title:'产品编号', align:"center", + dataIndex: 'productCode' + }, + { + title:'产品名称', + align:"center", dataIndex: 'productId_dictText' }, { - title:'面料', + title:'面料编号', + align:"center", + dataIndex: 'fabricNumber' + }, + { + title:'面料名称', align:"center", dataIndex: 'fabricId_dictText' }, @@ -256,10 +273,12 @@ //param.id=this.id; param.productId = this.$route.query.id; param.fabricId=this.fabricId; + param.fabricNumber=this.fabricNumber; return filterObj(param); }, searchReset() { this.fabricId = '' + this.fabricNumber='' this.loadData(1); }, handleDetail(id,name){ diff --git a/ant-design-vue-jeecg/src/views/product/productProcess/ZyProductProcessList.vue b/ant-design-vue-jeecg/src/views/product/productProcess/ZyProductProcessList.vue index 7fba391a..903dff23 100644 --- a/ant-design-vue-jeecg/src/views/product/productProcess/ZyProductProcessList.vue +++ b/ant-design-vue-jeecg/src/views/product/productProcess/ZyProductProcessList.vue @@ -5,6 +5,11 @@
+ + + + + @@ -30,13 +35,13 @@ - - - - 删除 - - 批量操作 - + + + + + + +
@@ -120,6 +125,7 @@ return { description: '产品工序管理页面', processId:'', + processCode:'', biaoTi:'', // 表头 columns: [ @@ -136,8 +142,18 @@ { title:'产品编号', align:"center", + dataIndex: 'productCode' + }, + { + title:'产品名称', + align:"center", dataIndex: 'productId_dictText' }, + { + title:'工序编号', + align:"center", + dataIndex: 'processCode' + }, { title:'工序名称', align:"center", @@ -265,10 +281,12 @@ //param.id=this.id; param.productId = this.$route.query.id; param.processId=this.processId; + param.processCode=this.processCode; return filterObj(param); }, searchReset() { this.processId = '' + this.processCode = '' this.loadData(1); }, fanhui(){ diff --git a/ant-design-vue-jeecg/src/views/productplan/ProductplanManage.vue b/ant-design-vue-jeecg/src/views/productplan/ProductplanManage.vue index 34c84d1d..3e66ef30 100644 --- a/ant-design-vue-jeecg/src/views/productplan/ProductplanManage.vue +++ b/ant-design-vue-jeecg/src/views/productplan/ProductplanManage.vue @@ -48,10 +48,13 @@ > @@ -200,6 +203,8 @@ export default { list: "/org.jeecg.modules.productplan/zyPlanProcess/getProcessDatalist", getPlanInfo: "/org.jeecg.modules.productplan/zyPlanProcess/getPlanInfo", syncProductProcess: "/org.jeecg.modules.productplan/zyPlanProcess/syncProductProcess", + autoFilling: "/org.jeecg.modules.productplan/zyPlanProcess/autoFilling", + createMaterialBill: "/org.jeecg.modules.productplan/zyPlanProcess/createMaterialBill", stationToolslist: "/stationTool/list2", stationMachinelist: "/stationMachine/list2", addProcessBatch: "/org.jeecg.modules.productplan/zyPlanProcess/addProcessBatch", @@ -293,9 +298,6 @@ export default { path: '/productplan/ZyProductPlanList', }); }, - autoFilling() { - alert("请稍等,正在开发中。。。") - }, //读取工序 syncProductProcess() { @@ -312,6 +314,48 @@ export default { }) }, + //自动排位 + /** + * 根据工序id,查询工序设备表zy_process_machine,用工序设备表数据与工位设备进行匹配(工位设备包含工序设备即是匹配成功,则自动填充工位、设备字段数据,匹配不上则不自动填充,由用户自己录入) + */ + autoFilling() { + this.loading = true; + getAction(this.url.autoFilling, {"planId": this.planId}).then((res) => { + if (res.success) { + this.$message.success("操作成功"); + this.loadData(); + } else { + this.$message.warning(res.message) + } + }).finally(() => { + this.loading = false + }) + }, + + //生成物料单 + /** + * 根据该生产计划的工序面料、工序辅料按类统计各种面料、辅料的用量汇总到计划面料、计划辅料表 + */ + createMaterialBill() { + this.loading = true; + getAction(this.url.createMaterialBill, {"planId": this.planId}).then((res) => { + if (res.success) { + this.$message.success("操作成功"); + this.loadData(); + } else { + this.$message.warning(res.message) + } + }).finally(() => { + this.loading = false + }) + }, + + //查看物料单 + viewMaterialBill(props) { + // alert("deatil row id:"+props.row.id); + this.$refs.zyPlanProcessDataDetail.showModal(props.row.id) + }, + //加载传递参数 loadParameter() { // debugger; diff --git a/ant-design-vue-jeecg/src/views/productplan/modules/ZyProductPlanForm.vue b/ant-design-vue-jeecg/src/views/productplan/modules/ZyProductPlanForm.vue index 418bcb36..2d78b0f3 100644 --- a/ant-design-vue-jeecg/src/views/productplan/modules/ZyProductPlanForm.vue +++ b/ant-design-vue-jeecg/src/views/productplan/modules/ZyProductPlanForm.vue @@ -126,7 +126,7 @@ export default { workTime: '', status: 0, auditTimr: '', - speedUp: 0, + speedUp: 1, auditBy: 'admin', }, labelCol: { diff --git a/ant-design-vue-jeecg/src/views/zyWorkProduct/ZyProductList.vue b/ant-design-vue-jeecg/src/views/zyWorkProduct/ZyProductList.vue index 1c853513..8a3ad848 100644 --- a/ant-design-vue-jeecg/src/views/zyWorkProduct/ZyProductList.vue +++ b/ant-design-vue-jeecg/src/views/zyWorkProduct/ZyProductList.vue @@ -118,16 +118,16 @@ - 工序 + 工序 模块 - 面料 + 面料 - 辅料 + 辅料 设备 @@ -358,11 +358,11 @@ jumpProcesses(record) { this.$router.push({ - path: '/src/views/product/productProcess/ZyProductProcessList', - // query: { // 路由携带参数 - // 'pid': record.id, - // 'tname': record.name, - // } + path: '/product/productProcess/ZyProductProcessList', + query: { // 路由携带参数 + 'productName': record.productName, + 'id': record.id, + } }); }, //跳转-模块 @@ -380,22 +380,22 @@ jumpFabrics(record) { this.$router.push({ - path: '/src/views/product/pdfabric/ProductFabricList', - // query: { // 路由携带参数 - // 'pid': record.id, - // 'tname': record.name, - // } + path: '/product/pdfabric/ProductFabricList', + query: { // 路由携带参数 + 'productName': record.productName, + 'id': record.id, + } }); }, //跳转-辅料 jumpAccessories(record) { this.$router.push({ - path: '/src/views/duct/pdaccessories/ProductAccessoriesList', - // query: { // 路由携带参数 - // 'pid': record.id, - // 'tname': record.name, - // } + path: '/product/pdaccessories/ProductAccessoriesList', + query: { // 路由携带参数 + 'productName': record.productName, + 'id': record.id, + } }); }, //跳转-设备 diff --git a/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/controller/ZyClothsTypeController.java b/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/controller/ZyClothsTypeController.java index 51f937fc..4c67e11e 100644 --- a/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/controller/ZyClothsTypeController.java +++ b/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/controller/ZyClothsTypeController.java @@ -227,9 +227,10 @@ public class ZyClothsTypeController extends JeecgController { /**根据部门id拿到部门名称*/ String getEnterprisenameById(String enterpriseId); + /**根据部门id拿到部门名称*/ + @Select("select depart_name_abbr from sys_depart where id = #{id} ") + String getEnterpriseNum(String enterpriseId); + /**根据部门名称拿到部门id*/ String getEnterpriseName(String enterpriseName); diff --git a/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/IZyClothsTypeService.java b/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/IZyClothsTypeService.java index 95894871..46b61cbd 100644 --- a/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/IZyClothsTypeService.java +++ b/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/IZyClothsTypeService.java @@ -19,6 +19,8 @@ public interface IZyClothsTypeService extends IService { /**根据企业名称拿到企业编号*/ String getEnterpriseNums(String enterpriseName); + /**根据企业名称拿到企业编号*/ + String getEnterpriseNumsTwo(String enterpriseName); Long orderNumber(); diff --git a/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/impl/ZyClothsTypeServiceImpl.java b/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/impl/ZyClothsTypeServiceImpl.java index 761132ed..9ee3d13b 100644 --- a/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/impl/ZyClothsTypeServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-process/src/main/java/org/jeecg/modules/demo/base/service/impl/ZyClothsTypeServiceImpl.java @@ -38,9 +38,10 @@ public class ZyClothsTypeServiceImpl extends ServiceImpl listString = zyClothsTypeMapper.selectNumsList(); diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/controller/ProductAccessoriesController.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/controller/ProductAccessoriesController.java index 4904828b..a714aa3f 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/controller/ProductAccessoriesController.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/controller/ProductAccessoriesController.java @@ -68,15 +68,15 @@ public class ProductAccessoriesController extends JeecgController queryWrapper = QueryGenerator.initQueryWrapper(productAccessories, req.getParameterMap()); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("product_id",productAccessories.getProductId()); - if(productAccessories.getAccessoriesId()!=null&&!productAccessories.getAccessoriesId().equals("")){ - String s="%"+productAccessories.getAccessoriesId()+"%"; - List fabric = productAccessoriesService.findAll(s); - queryWrapper.in("accessories_id",fabric); - } +// QueryWrapper queryWrapper=new QueryWrapper(); +// queryWrapper.eq("product_id",productAccessories.getProductId()); +// if(productAccessories.getAccessoriesId()!=null&&!productAccessories.getAccessoriesId().equals("")){ +// String s="%"+productAccessories.getAccessoriesId()+"%"; +// List fabric = productAccessoriesService.findAll(s); +// queryWrapper.in("accessories_id",fabric); +// } Page page = new Page(pageNo, pageSize); - IPage pageList = productAccessoriesService.page(page, queryWrapper); + IPage pageList = productAccessoriesService.page1(page, productAccessories); return Result.OK(pageList); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/entity/ProductAccessories.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/entity/ProductAccessories.java index 583ca4bc..0a8bfd61 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/entity/ProductAccessories.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/entity/ProductAccessories.java @@ -48,7 +48,7 @@ public class ProductAccessories implements Serializable { /**产品id*/ @Excel(name = "产品id", width = 15) @ApiModelProperty(value = "产品id") - @Dict(dictTable = "zy_product",dicText = "product_code",dicCode = "id") + @Dict(dictTable = "zy_product",dicText = "product_name",dicCode = "id") private String productId; /**辅料id*/ @Excel(name = "辅料id", width = 15) @@ -68,4 +68,6 @@ public class ProductAccessories implements Serializable { @Excel(name = "差额", width = 15) @ApiModelProperty(value = "差额") private Double difference; + private String nums; + private String productCode; } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/mapper/ProductAccessoriesMapper.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/mapper/ProductAccessoriesMapper.java index fba9f874..2ac630bd 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/mapper/ProductAccessoriesMapper.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/mapper/ProductAccessoriesMapper.java @@ -4,6 +4,8 @@ package org.jeecg.modules.product.pdaccessories.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Param; @@ -24,4 +26,6 @@ public interface ProductAccessoriesMapper extends BaseMapper @Delete("delete from product_accessories where product_id=#{pd} and accessories_id=#{access}") void deleteAccessories(@Param("pd") String productId, @Param("access") String listAccessory); + @Select("") + IPage page1(Page page, @Param("productId") String productId, @Param("id") String accessoriesId, @Param("number") String nums); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/IProductAccessoriesService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/IProductAccessoriesService.java index 1d63d862..914750a5 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/IProductAccessoriesService.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/IProductAccessoriesService.java @@ -1,6 +1,8 @@ package org.jeecg.modules.product.pdaccessories.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.product.pdaccessories.entity.ProductAccessories; @@ -17,4 +19,6 @@ public interface IProductAccessoriesService extends IService List findAll(String s); void deleteAccessories(String productId, String listAccessory); + + IPage page1(Page page, ProductAccessories productAccessories); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/impl/ProductAccessoriesServiceImpl.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/impl/ProductAccessoriesServiceImpl.java index 0310a358..96c626e8 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/impl/ProductAccessoriesServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdaccessories/service/impl/ProductAccessoriesServiceImpl.java @@ -1,6 +1,8 @@ package org.jeecg.modules.product.pdaccessories.service.impl; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.modules.product.pdaccessories.entity.ProductAccessories; import org.jeecg.modules.product.pdaccessories.mapper.ProductAccessoriesMapper; import org.jeecg.modules.product.pdaccessories.service.IProductAccessoriesService; @@ -31,4 +33,17 @@ public class ProductAccessoriesServiceImpl extends ServiceImpl page1(Page page, ProductAccessories productAccessories) { + if(productAccessories.getNums()!=null){ + String s="%"+productAccessories.getNums()+"%"; + productAccessories.setNums(s); + } + if(productAccessories.getAccessoriesId()!=null){ + String s="%"+productAccessories.getAccessoriesId()+"%"; + productAccessories.setAccessoriesId(s); + } + return productAccessoriesMapper.page1(page,productAccessories.getProductId(),productAccessories.getAccessoriesId(),productAccessories.getNums()); + } } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/controller/ProductFabricController.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/controller/ProductFabricController.java index e1b164cf..c80964b6 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/controller/ProductFabricController.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/controller/ProductFabricController.java @@ -70,15 +70,15 @@ public class ProductFabricController extends JeecgController queryWrapper = QueryGenerator.initQueryWrapper(productFabric, req.getParameterMap()); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.eq("product_id",productFabric.getProductId()); - if(productFabric.getFabricId()!=null&&!productFabric.getFabricId().equals("")){ - String s="%"+productFabric.getFabricId()+"%"; - List fabric = productFabricService.findAll(s); - queryWrapper.in("fabric_id",fabric); - } +// QueryWrapper queryWrapper=new QueryWrapper(); +// queryWrapper.eq("product_id",productFabric.getProductId()); +// if(productFabric.getFabricId()!=null&&!productFabric.getFabricId().equals("")){ +// String s="%"+productFabric.getFabricId()+"%"; +// List fabric = productFabricService.findAll(s); +// queryWrapper.in("fabric_id",fabric); +// } Page page = new Page(pageNo, pageSize); - IPage pageList = productFabricService.page(page, queryWrapper); + IPage pageList = productFabricService.page1(page, productFabric); return Result.OK(pageList); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/entity/ProductFabric.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/entity/ProductFabric.java index b55eff14..1b432d9a 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/entity/ProductFabric.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/entity/ProductFabric.java @@ -48,7 +48,7 @@ public class ProductFabric implements Serializable { /**产品id*/ @Excel(name = "产品id", width = 15) @ApiModelProperty(value = "产品id") - @Dict(dictTable = "zy_product",dicText = "product_code",dicCode = "id") + @Dict(dictTable = "zy_product",dicText = "product_name",dicCode = "id") private String productId; /**面料id*/ @Excel(name = "面料id", width = 15) @@ -68,4 +68,6 @@ public class ProductFabric implements Serializable { @Excel(name = "差额", width = 15) @ApiModelProperty(value = "差额") private Double difference; + private String fabricNumber; + private String productCode; } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/mapper/ProductFabricMapper.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/mapper/ProductFabricMapper.java index ac597696..b3945e26 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/mapper/ProductFabricMapper.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/mapper/ProductFabricMapper.java @@ -4,6 +4,8 @@ package org.jeecg.modules.product.pdfabric.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Delete; import org.apache.ibatis.annotations.Param; @@ -24,4 +26,7 @@ public interface ProductFabricMapper extends BaseMapper { @Delete("delete from product_fabric where product_id=#{productId} and fabric_id=#{s1}") void deleteFabric(@Param("productId") String productId, @Param("s1") String s1); + + @Select("") + IPage page1(Page page,@Param("productId") String productId, @Param("id") String fabricId, @Param("number") String fabricNumber); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/IProductFabricService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/IProductFabricService.java index e2db1039..3a957e09 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/IProductFabricService.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/IProductFabricService.java @@ -1,5 +1,7 @@ package org.jeecg.modules.product.pdfabric.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.product.pdfabric.entity.ProductFabric; @@ -16,4 +18,6 @@ public interface IProductFabricService extends IService { List findAll(String s); void deleteFabric(String productId, String s1); + + IPage page1(Page page, ProductFabric productFabric); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/impl/ProductFabricServiceImpl.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/impl/ProductFabricServiceImpl.java index 84a3ff88..73c46170 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/impl/ProductFabricServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/pdfabric/service/impl/ProductFabricServiceImpl.java @@ -1,6 +1,8 @@ package org.jeecg.modules.product.pdfabric.service.impl; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.modules.product.pdfabric.entity.ProductFabric; import org.jeecg.modules.product.pdfabric.mapper.ProductFabricMapper; import org.jeecg.modules.product.pdfabric.service.IProductFabricService; @@ -31,4 +33,17 @@ public class ProductFabricServiceImpl extends ServiceImpl page1(Page page, ProductFabric productFabric) { + if(productFabric.getFabricId()!=null){ + String s="%"+productFabric.getFabricId(); + productFabric.setFabricId(s); + } + if(productFabric.getFabricNumber()!=null){ + String s="%"+productFabric.getFabricNumber(); + productFabric.setFabricNumber(s); + } + return productFabricMapper.page1(page,productFabric.getProductId(),productFabric.getFabricId(),productFabric.getFabricNumber()); + } } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/controller/ZyProductProcessController.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/controller/ZyProductProcessController.java index 8d0f1c31..01537584 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/controller/ZyProductProcessController.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/controller/ZyProductProcessController.java @@ -82,17 +82,17 @@ public class ZyProductProcessController extends JeecgController queryWrapper = QueryGenerator.initQueryWrapper(zyProductProcess, req.getParameterMap()); - QueryWrapper queryWrapper=new QueryWrapper(); - queryWrapper.orderByDesc("number"); - queryWrapper.eq("product_id",zyProductProcess.getProductId()); - if(zyProductProcess.getProcessId()!=null&&!zyProductProcess.getProcessId().equals("")){ - String s="%"+zyProductProcess.getProcessId()+"%"; - List list=zyProductProcessService.find(s); - queryWrapper.in("process_id",list); - } +// QueryWrapper queryWrapper=new QueryWrapper(); +// queryWrapper.orderByDesc("number"); +// queryWrapper.eq("product_id",zyProductProcess.getProductId()); +// if(zyProductProcess.getProcessId()!=null&&!zyProductProcess.getProcessId().equals("")){ +// String s="%"+zyProductProcess.getProcessId()+"%"; +// List list=zyProductProcessService.find(s); +// queryWrapper.in("process_id",list); +// } Page page = new Page(pageNo, pageSize); - IPage pageList = zyProductProcessService.page(page, queryWrapper); + IPage pageList = zyProductProcessService.page1(page,zyProductProcess); return Result.OK(pageList); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/entity/ZyProductProcess.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/entity/ZyProductProcess.java index 9a3c84a0..bef04f79 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/entity/ZyProductProcess.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/entity/ZyProductProcess.java @@ -56,7 +56,7 @@ public class ZyProductProcess implements Serializable { /**产品id*/ @Excel(name = "产品id", width = 15) @ApiModelProperty(value = "产品id") - @Dict(dictTable = "zy_product",dicText = "product_code",dicCode = "id") + @Dict(dictTable = "zy_product",dicText = "product_name",dicCode = "id") private String productId; /**工序id*/ @Excel(name = "工序id", width = 15) @@ -68,4 +68,7 @@ public class ZyProductProcess implements Serializable { @Excel(name = "序号", width = 15) @ApiModelProperty(value = "序号") private Integer number; + + private String productCode; + private String processCode; } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/mapper/ZyProductProcessMapper.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/mapper/ZyProductProcessMapper.java index 9f38001c..1deb9c49 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/mapper/ZyProductProcessMapper.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/mapper/ZyProductProcessMapper.java @@ -2,6 +2,8 @@ package org.jeecg.modules.product.zyproductprocess.mapper; import java.util.List; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.apache.ibatis.annotations.Param; import com.baomidou.mybatisplus.core.mapper.BaseMapper; @@ -39,4 +41,7 @@ public interface ZyProductProcessMapper extends BaseMapper { //设备 @Select("select machine_id from zy_process_machine where process_id =#{processId}") List findAllMachine(String processId); + //按照number降序排列,通过产品id筛选,然后通过processId和processCode筛选 + @Select("") + IPage page1(Page page, @Param("productId") String productId, @Param("process") String processId, @Param("code") String processCode); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/IZyProductProcessService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/IZyProductProcessService.java index fe538ad6..42de9f93 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/IZyProductProcessService.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/IZyProductProcessService.java @@ -1,6 +1,8 @@ package org.jeecg.modules.product.zyproductprocess.service; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.product.zyproductprocess.entity.ZyProductProcess; @@ -29,4 +31,6 @@ public interface IZyProductProcessService extends IService { List findAllOperationtool(String processId); List findAllMachine(String processId); + + IPage page1(Page page, ZyProductProcess zyProductProcess); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/impl/ZyProductProcessServiceImpl.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/impl/ZyProductProcessServiceImpl.java index 4c0df1b4..e2044d35 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/impl/ZyProductProcessServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/product/zyproductprocess/service/impl/ZyProductProcessServiceImpl.java @@ -1,6 +1,8 @@ package org.jeecg.modules.product.zyproductprocess.service.impl; +import com.baomidou.mybatisplus.core.metadata.IPage; +import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import org.jeecg.modules.product.zyproductprocess.entity.ZyProductProcess; import org.jeecg.modules.product.zyproductprocess.mapper.ZyProductProcessMapper; import org.jeecg.modules.product.zyproductprocess.service.IZyProductProcessService; @@ -61,4 +63,18 @@ public class ZyProductProcessServiceImpl extends ServiceImpl findAllMachine(String processId) { return zyProductProcessMapper.findAllMachine(processId); } + + @Override + public IPage page1(Page page, ZyProductProcess zyProductProcess) { + + if(zyProductProcess.getProcessId()!=null){ + String s="%"+zyProductProcess.getProcessId()+"%"; + zyProductProcess.setProcessId(s); + } + if(zyProductProcess.getProcessCode()!=null){ + String s="%"+zyProductProcess.getProcessCode()+"%"; + zyProductProcess.setProcessCode(s); + } System.err.println(zyProductProcess); + return zyProductProcessMapper.page1(page,zyProductProcess.getProductId(),zyProductProcess.getProcessId(),zyProductProcess.getProcessCode()); + } } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/controller/ZyPlanProcessController.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/controller/ZyPlanProcessController.java index ff0c3aa8..967857d4 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/controller/ZyPlanProcessController.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/controller/ZyPlanProcessController.java @@ -80,41 +80,6 @@ public class ZyPlanProcessController extends JeecgController queryPageList2(ZyPlanProcess zyPlanProcess, -// @RequestParam(name = "pageNo", defaultValue = "1") Integer pageNo, -// @RequestParam(name = "pageSize", defaultValue = "10") Integer pageSize, -// HttpServletRequest req) { -// QueryWrapper queryWrapper = QueryGenerator.initQueryWrapper(zyPlanProcess, req.getParameterMap()); -// Page page = new Page(pageNo, pageSize); -// IPage pageList = zyPlanProcessService.page(page, queryWrapper); -// if (!ObjectUtils.isEmpty(pageList)) { -// String processIdList = ""; -// String stationIdList = ""; -// String machineIdList = ""; -// String toolsIdList = ""; -// String userIdList = ""; -// List records = pageList.getRecords(); -// for (ZyPlanProcess e : records) { -// processIdList += e.getProcessId(); -// stationIdList += e.getStationId(); -// machineIdList += e.getMachineIds(); -// toolsIdList += e.getToolsIds(); -// userIdList += e.getUserIds(); -// } -// for (ZyPlanProcess e : records) { -// e.setProcessId(processIdList); -// e.setStationId(stationIdList); -// e.setMachineIds(machineIdList); -// e.setToolsIds(toolsIdList); -// e.setUserIds(userIdList); -// } -// } -// return Result.OK(pageList); -// } - @ApiOperation(value = "生产计划工序-查询产品工序&计划", notes = "生产计划工序-查询产品工序&计划") @GetMapping(value = "/getProcessDatalist") public Result getProcessDatalist(ZyPlanProcess zyPlanProcess, @@ -124,7 +89,6 @@ public class ZyPlanProcessController extends JeecgController queryWrapper = QueryGenerator.initQueryWrapper(zyPlanProcess, req.getParameterMap()); // Page page = new Page(pageNo, pageSize); List processDatalist = zyPlanProcessService.getProcessDatalist(zyPlanProcess); - return Result.OK(processDatalist); } @@ -144,6 +108,36 @@ public class ZyPlanProcessController extends JeecgController autoFilling(ZyPlanProcess zyPlanProcess, + HttpServletRequest req) { + zyPlanProcessService.autoFilling(zyPlanProcess); + return Result.OK(); + } + + /** + * + * @param zyPlanProcess + * @param req + * @return + */ + @ApiOperation(value = "生成物料单", notes = "生成物料单") + @GetMapping(value = "/createMaterialBill") + public Result createMaterialBill(ZyPlanProcess zyPlanProcess, + HttpServletRequest req) { + zyPlanProcessService.createMaterialBill(zyPlanProcess); + return Result.OK(); + } + @ApiOperation(value = "计划班组管理-查询产品工序&班组", notes = "计划班组管理-查询产品工序&班组") @GetMapping(value = "/getTeamDatalist") public Result getTeamDatalist(ZyPlanProcess zyPlanProcess, @@ -196,10 +190,10 @@ public class ZyPlanProcessController extends JeecgController { } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/mapper/ZyPlanProcessFabricMapper.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/mapper/ZyPlanProcessFabricMapper.java index 1b11be2b..b42e529d 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/mapper/ZyPlanProcessFabricMapper.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/mapper/ZyPlanProcessFabricMapper.java @@ -2,6 +2,7 @@ package org.jeecg.modules.productplan.mapper; import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import org.apache.ibatis.annotations.Mapper; import org.jeecg.modules.productplan.entity.ZyPlanProcessFabric; /** @@ -10,6 +11,7 @@ import org.jeecg.modules.productplan.entity.ZyPlanProcessFabric; * @Date: 2023-01-09 * @Version: V1.0 */ +@Mapper public interface ZyPlanProcessFabricMapper extends BaseMapper { } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/IZyPlanProcessService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/IZyPlanProcessService.java index bc7b7814..80aea3a9 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/IZyPlanProcessService.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/IZyPlanProcessService.java @@ -22,4 +22,9 @@ public interface IZyPlanProcessService extends IService { Map getPlanInfo(ZyPlanProcess zyPlanProcess); List getTeamDatalist(ZyPlanProcess zyPlanProcess); + + void autoFilling(ZyPlanProcess zyPlanProcess); + + void createMaterialBill(ZyPlanProcess zyPlanProcess); + } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/impl/ZyPlanProcessServiceImpl.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/impl/ZyPlanProcessServiceImpl.java index b9fd87ad..1500aefe 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/impl/ZyPlanProcessServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/productplan/service/impl/ZyPlanProcessServiceImpl.java @@ -1,7 +1,9 @@ package org.jeecg.modules.productplan.service.impl; +import com.alibaba.fastjson.JSON; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.apache.commons.lang3.StringUtils; import org.jeecg.common.exception.JeecgBootException; @@ -15,28 +17,21 @@ import org.jeecg.modules.demo.ordergoods.entity.OrderGoods; import org.jeecg.modules.demo.ordergoods.service.IOrderGoodsService; import org.jeecg.modules.demo.pro.entity.ZyProcessAccessories; import org.jeecg.modules.demo.pro.entity.ZyProcessFabric; +import org.jeecg.modules.demo.pro.entity.ZyProcessMachine; import org.jeecg.modules.demo.pro.service.IZyProcessAccessoriesService; import org.jeecg.modules.demo.pro.service.IZyProcessFabricService; +import org.jeecg.modules.demo.pro.service.IZyProcessMachineService; import org.jeecg.modules.demo.zyorders.entity.ZyOrders; import org.jeecg.modules.demo.zyorders.service.IZyOrdersService; -import org.jeecg.modules.product.pdaccessories.entity.ProductAccessories; -import org.jeecg.modules.product.pdaccessories.service.IProductAccessoriesService; -import org.jeecg.modules.product.pdfabric.entity.ProductFabric; -import org.jeecg.modules.product.pdfabric.service.IProductFabricService; import org.jeecg.modules.product.zyproductprocess.entity.ZyProductProcess; import org.jeecg.modules.product.zyproductprocess.service.IZyProductProcessService; -import org.jeecg.modules.productplan.entity.ZyPlanProcess; -import org.jeecg.modules.productplan.entity.ZyPlanProcessAccessories; -import org.jeecg.modules.productplan.entity.ZyPlanProcessFabric; -import org.jeecg.modules.productplan.entity.ZyProductPlan; -import org.jeecg.modules.productplan.entity.vo.PaiWeiTuVo; +import org.jeecg.modules.productplan.entity.*; import org.jeecg.modules.productplan.entity.vo.ProcessDataVo; import org.jeecg.modules.productplan.enums.ProductPlanStatusEnum; +import org.jeecg.modules.productplan.mapper.ZyPlanProcessAccessoriesMapper; +import org.jeecg.modules.productplan.mapper.ZyPlanProcessFabricMapper; import org.jeecg.modules.productplan.mapper.ZyPlanProcessMapper; -import org.jeecg.modules.productplan.service.IZyPlanProcessAccessoriesService; -import org.jeecg.modules.productplan.service.IZyPlanProcessFabricService; -import org.jeecg.modules.productplan.service.IZyPlanProcessService; -import org.jeecg.modules.productplan.service.IZyProductPlanService; +import org.jeecg.modules.productplan.service.*; import org.jeecg.modules.system.entity.SysDepart; import org.jeecg.modules.system.entity.SysUser; import org.jeecg.modules.system.service.ISysDepartService; @@ -44,8 +39,10 @@ import org.jeecg.modules.system.service.ISysUserService; import org.jeecg.modules.team.entity.Groupx; import org.jeecg.modules.team.entity.GroupxMember; import org.jeecg.modules.team.entity.Station; +import org.jeecg.modules.team.entity.StationMachine; import org.jeecg.modules.team.service.IGroupxMemberService; import org.jeecg.modules.team.service.IGroupxService; +import org.jeecg.modules.team.service.IStationMachineService; import org.jeecg.modules.team.service.IStationService; import org.jeecg.modules.team.vo.GroupxMemeberVo; import org.jeecg.modules.team.vo.StationVo; @@ -60,6 +57,7 @@ import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import org.springframework.util.ObjectUtils; +import java.math.BigDecimal; import java.util.*; import java.util.stream.Collectors; @@ -115,6 +113,12 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl getProcessDatalist(ZyPlanProcess zyPlanProcess) { //生产计划id String planId = zyPlanProcess.getPlanId(); @@ -145,7 +161,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl planProcessList = this.list(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, planId)); + List planProcessList = this.list(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, planId).orderByAsc(ZyPlanProcess::getStationNum)); if (!ObjectUtils.isEmpty(planProcessList)) { List stationList = iStationService.list(new LambdaQueryWrapper().eq(Station::getDepartId, departId)); List stationVoList = new LinkedList<>(); @@ -159,7 +175,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl().eq(Groupx::getDepartId, departId).eq(Groupx::getId,zyProductPlan.getTeamId())); + Groupx groupx = iGroupxService.getOne(new LambdaQueryWrapper().eq(Groupx::getDepartId, departId).eq(Groupx::getId, zyProductPlan.getTeamId())); List groupMembers = iGroupxMemberService.list(new LambdaQueryWrapper().eq(GroupxMember::getGroupxId, groupx.getId())); List groupxMemeberVoList = new LinkedList<>(); @@ -184,6 +200,96 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl planProcessList = this.list(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId())); + //是否有计划工序 + if (ObjectUtils.isEmpty(planProcessList)) return; + + //生产计划车间工位列表 + List stationList = iStationService.list(new LambdaQueryWrapper().eq(Station::getDepartId, zyProductPlan.getWorkshopId())); + + /** + * 遍历计划工序: + * 用工序设备表数据与工位设备进行匹配 + * 依次用该生产计划的车间工位设备循环与工序设备比对【(工位设备包含工序设备即是匹配成功,则自动填充工位、设备字段数据,匹配不上则不自动填充,由用户自己录入)】 + * 根据工序,查询工序设备表zy_process_machine, + */ + Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).forEach(e -> { + List machineList = iZyProcessMachineService.list(new LambdaQueryWrapper().eq(ZyProcessMachine::getProcessId, e.getProcessId())); + this.diffMachine(e, stationList, machineList); + }); + } + + @Override + public void createMaterialBill(ZyPlanProcess zyPlanProcess) { + ZyProductPlan zyProductPlan = iZyProductPlanService.getById(zyPlanProcess.getPlanId()); + if (ObjectUtils.isEmpty(zyProductPlan)) { + throw new JeecgBootException("生产计划不存在!"); + } + List planProcessList = this.list(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId())); + if(ObjectUtils.isEmpty(planProcessList)) return; + + this.delBillData(zyPlanProcess); + List idList = planProcessList.stream().map(ZyPlanProcess::getId).collect(Collectors.toList()); + QueryWrapper qw = new QueryWrapper(); + qw.select("fabric_id", "sum(amount) as count"); + qw.in("plan_process_id", idList); + qw.groupBy("fabric_id"); + List> maplist = zyPlanProcessFabricMapper.selectMaps(qw); + List zyPlanFabricList = new LinkedList<>(); + for (Map mp : maplist) { + ZyPlanFabric zyPlanFabric = new ZyPlanFabric(); + zyPlanFabric.setPlanId(zyPlanProcess.getPlanId()); + zyPlanFabric.setFabricId(mp.get("fabric_id").toString()); + zyPlanFabric.setAmount(new BigDecimal(mp.get("count").toString())); + zyPlanFabricList.add(zyPlanFabric); + } + iZyPlanFabricService.saveBatch(zyPlanFabricList); + + QueryWrapper qw2 = new QueryWrapper(); + qw2.select("accessories_id", "sum(amount) as count"); + qw2.in("plan_process_id", idList); + qw2.groupBy("accessories_id"); + List> maplist2 = zyPlanProcessAccessoriesMapper.selectMaps(qw2); + List zyPlanAccessoriesList = new LinkedList<>(); + for (Map mp : maplist2) { + ZyPlanAccessories zyPlanAccessories = new ZyPlanAccessories(); + zyPlanAccessories.setPlanId(zyPlanProcess.getPlanId()); + zyPlanAccessories.setAccessoriesId(mp.get("accessories_id").toString()); + zyPlanAccessories.setAmount(new BigDecimal(mp.get("count").toString())); + zyPlanAccessoriesList.add(zyPlanAccessories); + } + iZyPlanAccessoriesService.saveBatch(zyPlanAccessoriesList); + + } + + void diffMachine(ZyPlanProcess zyPlanProcess, List stationList, List machineList) { + if (!ObjectUtils.isEmpty(machineList)) { + List machineList1 = machineList.stream().map(ZyProcessMachine::getMachineId).collect(Collectors.toList()); + Optional.ofNullable(stationList).orElse(new ArrayList<>()).forEach(e -> { + List stationMachineList = iStationMachineService.list(new LambdaQueryWrapper().eq(StationMachine::getStationId, e.getId())); + List machineList2 = Optional.ofNullable(stationMachineList).orElse(new ArrayList<>()).stream().map(StationMachine::getMachineId).collect(Collectors.toList()); + if (machineList2.containsAll(machineList1)) { + String collect = machineList1.stream().collect(Collectors.joining(",")); + zyPlanProcess.setMachineIds(collect); + zyPlanProcess.setMachineNames(iStationMachineService.convertByMachineIds(machineList1)); + zyPlanProcess.setStationId(e.getId()); + zyPlanProcess.setStationName(e.getStationName()); + zyPlanProcess.setStationNum(e.getStationNum()); + this.updateById(zyPlanProcess); + return; + } + }); + } + } + @Override @Transactional(readOnly = false, rollbackFor = Exception.class) public List syncProductBaseProcess(ZyPlanProcess zyPlanProcess) { @@ -267,17 +373,36 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl planProcessList = this.list(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId())); if (!ObjectUtils.isEmpty(planProcessList)) { - List collect = Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).stream().map(ZyPlanProcess::getProcessId).collect(Collectors.toList()); + List collect = Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).stream().map(ZyPlanProcess::getId).collect(Collectors.toList()); iZyPlanProcessFabricService.remove(new LambdaQueryWrapper().in(ZyPlanProcessFabric::getPlanProcessId, collect)); iZyPlanProcessAccessoriesService.remove(new LambdaQueryWrapper().in(ZyPlanProcessAccessories::getPlanProcessId, collect)); this.remove(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId())); } } + /** + * 删除物料单(生产计划面料&生产计划辅料)数据 + * + * @param zyPlanProcess + */ + @Transactional(readOnly = false, rollbackFor = Exception.class) + public void delBillData(ZyPlanProcess zyPlanProcess) { + List planProcessList = this.list(new LambdaQueryWrapper().eq(ZyPlanProcess::getPlanId, zyPlanProcess.getPlanId())); + if (!ObjectUtils.isEmpty(planProcessList)) { + iZyPlanFabricService.remove(new LambdaQueryWrapper().eq(ZyPlanFabric::getPlanId, zyPlanProcess.getPlanId())); + iZyPlanAccessoriesService.remove(new LambdaQueryWrapper().eq(ZyPlanAccessories::getPlanId, zyPlanProcess.getPlanId())); + } + } + void saveBatchAccessoriesByProcessIdList(List planProcessList) { Optional.ofNullable(planProcessList).orElse(new ArrayList<>()).forEach(e -> { List accessoriesList = this.iZyProcessAccessoriesService.list(new LambdaQueryWrapper() @@ -285,7 +410,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl list = new LinkedList<>(); Optional.ofNullable(accessoriesList).orElse(new ArrayList<>()).forEach(obj -> { ZyPlanProcessAccessories en = new ZyPlanProcessAccessories(); - en.setPlanProcessId(e.getProcessId()); + en.setPlanProcessId(e.getId()); en.setPlanId(e.getPlanId()); en.setAccessoriesId(obj.getAccessoriesId()); ZyAccessories zyAccessories = iZyAccessoriesService.getById(obj.getAccessoriesId()); @@ -297,7 +422,6 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl planProcessList) { - if (!org.springframework.util.StringUtils.isEmpty(planProcessList)) { planProcessList.forEach(e -> { List fabricList = this.iZyProcessFabricService.list(new LambdaQueryWrapper() @@ -306,7 +430,7 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl { ZyPlanProcessFabric en = new ZyPlanProcessFabric(); - en.setPlanProcessId(e.getProcessId()); + en.setPlanProcessId(e.getId()); en.setPlanId(e.getPlanId()); en.setFabricId(obj.getFabricId()); ZyFabric zyFabric = iZyFabricService.getById(obj.getFabricId()); @@ -317,19 +441,6 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl { -// Optional.ofNullable(fabricList).orElse(null).forEach(obj -> { -// ZyPlanProcessFabric en = new ZyPlanProcessFabric(); -// en.setPlanProcessId(e.getProcessId()); -// en.setPlanId(e.getPlanId()); -// en.setFabricId(obj.getFabricId()); -// ZyFabric zyFabric = iZyFabricService.getById(obj.getFabricId()); -// en.setFabricName(StringUtils.isNotBlank(zyFabric.getName()) ? zyFabric.getName() : ""); -// list.add(en); -// }); -// iZyPlanProcessFabricService.saveBatch(list); -// }); } @@ -443,4 +554,6 @@ public class ZyPlanProcessServiceImpl extends ServiceImpl { ZyDevice zyDevice = iZyDeviceService.getById(e.getMachineId()); - e.setCode(StringUtils.isNotBlank(zyDevice.getCode()) ? zyDevice.getCode() : ""); + if (!ObjectUtils.isEmpty(zyDevice)) { + e.setCode(StringUtils.isNotBlank(zyDevice.getCode()) ? zyDevice.getCode() : ""); + } + }); } return Result.OK(pageList); diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationMachineService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationMachineService.java index 64cabc24..7777515e 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationMachineService.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationMachineService.java @@ -14,6 +14,7 @@ import java.util.List; */ public interface IStationMachineService extends IService { - String convertByMachineId(String stationId); + String convertByStationId(String stationId); + String convertByMachineIds(List MachineIds); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationToolService.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationToolService.java index 2df93eac..73f61cb2 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationToolService.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/IStationToolService.java @@ -4,6 +4,8 @@ package org.jeecg.modules.team.service; import com.baomidou.mybatisplus.extension.service.IService; import org.jeecg.modules.team.entity.StationTool; +import java.util.List; + /** * @Description: 工序工具管理 * @Author: jeecg-boot @@ -13,4 +15,5 @@ import org.jeecg.modules.team.entity.StationTool; public interface IStationToolService extends IService { String convertByToolId(String stationId); + String convertByToolIds(List toolIdss); } diff --git a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/impl/StationMachineServiceImpl.java b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/impl/StationMachineServiceImpl.java index 7171e687..9deda8f6 100644 --- a/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/impl/StationMachineServiceImpl.java +++ b/jeecg-boot/jeecg-boot-module-system/src/main/java/org/jeecg/modules/team/service/impl/StationMachineServiceImpl.java @@ -28,7 +28,27 @@ public class StationMachineServiceImpl extends ServiceImpl machineIds) { +// List machineList = this.list(new LambdaQueryWrapper().in(StationMachine::getMachineId, machineIds)); + StringBuffer machineNames = new StringBuffer(); + String machineNamesStr = ""; + if (!ObjectUtils.isEmpty(machineIds)) { + machineIds.forEach(e -> { + ZyDevice zyDevice = iZyDeviceService.getById(e); + if (!ObjectUtils.isEmpty(zyDevice)) { + machineNames.append(zyDevice.getName()).append(","); + } + }); + if (StringUtils.isNotBlank(machineNames.toString())) { + machineNamesStr = machineNames.toString(); + machineNamesStr = machineNames.substring(0, machineNamesStr.length() - 1); + } + } + return machineNamesStr; + } + + @Override + public String convertByStationId(String stationId) { List machineList = this.list(new LambdaQueryWrapper().eq(StationMachine::getStationId, stationId)); StringBuffer machineNames = new StringBuffer(); String machineNamesStr = ""; @@ -39,9 +59,11 @@ public class StationMachineServiceImpl extends ServiceImpl toolList) { + StringBuffer toolNames = new StringBuffer(); + String toolNamesStr = ""; + if (!ObjectUtils.isEmpty(toolList)) { + toolList.forEach(e -> { + ZyTool zyTool = iZyToolService.getById(e); + if (!ObjectUtils.isEmpty(zyTool)) { + toolNames.append(zyTool.getName()).append(","); + } + }); + if (StringUtils.isNotBlank(toolNames.toString())) { + toolNamesStr = toolNames.toString(); + toolNamesStr = toolNamesStr.substring(0, toolNamesStr.length() - 1); + } } - toolNamesStr = toolNames.toString(); - toolNamesStr = toolNamesStr.substring(0, toolNamesStr.length() - 1); return toolNamesStr; } }