فهرست منبع

Merge remote-tracking branch 'origin/develop' into develop

‘linchangsheng’ 7 ماه پیش
والد
کامیت
4d989c3409

+ 2 - 1
mall-server-api/src/main/java/com/gree/mall/manager/commonmapper/CommonMapper.java

@@ -157,10 +157,11 @@ public interface CommonMapper {
      * 辅材师傅库存列表
      * @param page
      * @param zfireParamBean
+     * @param workers
      * @return
      */
     @InterceptorIgnore(tenantLine = "1", blockAttack = "1", illegalSql = "1")
-    public IPage<WorkerStockVO> workerStockList(IPage page, @Param("ex") ZfireParamBean zfireParamBean);
+    public IPage<WorkerStockVO> workerStockList(IPage page, @Param("ex") ZfireParamBean zfireParamBean, @Param("workers") List<String> workers);
 
     /**
      * 辅材师傅库存明细

+ 13 - 3
mall-server-api/src/main/java/com/gree/mall/manager/logic/material/stock/WorkerStockLogic.java

@@ -53,6 +53,7 @@ public class WorkerStockLogic {
     private final WebsitGoodsService websitGoodsService;
     private final WorkerStockBakService workerStockBakService;
     private final WorkerStockAccBakService workerStockAccBakService;
+    private final WebsitUserService websitUserService;
 
     /**
      * 师傅辅材库存列表
@@ -63,8 +64,16 @@ public class WorkerStockLogic {
     public IPage<WorkerStockVO> workerStockList(ZfireParamBean zfireParamBean) {
         final AdminUserCom adminUser = commonLogic.getAdminUser();
         FieldUtils.materialParam(zfireParamBean, WorkerStockVO.class, adminUser);
-
-        IPage<WorkerStockVO> page = commonMapper.workerStockList(new Page(zfireParamBean.getPageNum(), zfireParamBean.getPageSize()), zfireParamBean);
+        List<String> workers = null;
+        if (CollectionUtil.isNotEmpty(zfireParamBean.getAdminWebsitIds())) {
+            List<WebsitUser> workerList = websitUserService.lambdaQuery()
+                    .eq(StringUtils.isNotBlank(adminUser.getCompanyWechatId()), WebsitUser::getCompanyWechatId, adminUser.getCompanyWechatId())
+                    .in(WebsitUser::getWebsitId, zfireParamBean.getAdminWebsitIds())
+                    .groupBy(WebsitUser::getWorkerNumber)
+                    .list();
+            workers = workerList.stream().map(WebsitUser::getWorkerNumber).collect(Collectors.toList());
+        }
+        IPage<WorkerStockVO> page = commonMapper.workerStockList(new Page(zfireParamBean.getPageNum(), zfireParamBean.getPageSize()), zfireParamBean, workers);
         return page;
     }
 
@@ -75,8 +84,9 @@ public class WorkerStockLogic {
      * @return
      */
     public IPage<WorkerStockAccVO> workerStockAccList(ZfireParamBean zfireParamBean) {
+        final AdminUserCom adminUser = commonLogic.getAdminUser();
         zfireParamBean.setCompanyWechatId(commonLogic.getAdminUser().getCompanyWechatId());
-        FieldUtils.supplyParam(zfireParamBean, WorkerStockAccVO.class);
+        FieldUtils.supplyParam(zfireParamBean, WorkerStockAccVO.class, adminUser);
         IPage<WorkerStockAccVO> page = commonMapper.workerStockAccList(new Page(zfireParamBean.getPageNum(), zfireParamBean.getPageSize()), zfireParamBean);
         return page;
     }

+ 8 - 0
mall-server-api/src/main/resources/mapper/CommonMapper.xml

@@ -222,6 +222,14 @@
         left join user e on e.worker_number = a.worker_id
           ${ex.query}
           and a.goods_type='M'
+            <if test="workers != null and workers.size > 0">
+                AND (
+                a.worker_id IN
+                <foreach item="item" index="index" collection="ex.adminWebsitIds" open="(" separator="," close=")">
+                    #{item}
+                </foreach>
+                )
+            </if>
         order by a.id desc
     </select>