Преглед на файлове

张丁 预约作业票修改等逻辑

zhangding преди 3 години
родител
ревизия
2ae89bbdc6

+ 30 - 1
master/src/main/java/com/ruoyi/project/invoice/controller/TInvoiceBookingworkticketController.java

@@ -1,6 +1,16 @@
 package com.ruoyi.project.invoice.controller;
 
+import java.util.ArrayList;
 import java.util.List;
+
+import com.ruoyi.common.utils.ServletUtils;
+import com.ruoyi.common.utils.spring.SpringUtils;
+import com.ruoyi.framework.security.LoginUser;
+import com.ruoyi.framework.security.service.TokenService;
+import com.ruoyi.project.invoice.domain.TInvoiceContractor;
+import com.ruoyi.project.invoice.domain.TInvoiceWorkcontent;
+import com.ruoyi.project.invoice.service.ITInvoiceContractorService;
+import com.ruoyi.project.invoice.service.ITInvoiceWorkcontentService;
 import org.springframework.security.access.prepost.PreAuthorize;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.GetMapping;
@@ -33,6 +43,11 @@ public class TInvoiceBookingworkticketController extends BaseController
     @Autowired
     private ITInvoiceBookingworkticketService tInvoiceBookingworkticketService;
 
+    @Autowired
+    private ITInvoiceContractorService tInvoiceContractorService;
+
+    @Autowired
+    private ITInvoiceWorkcontentService tInvoiceWorkcontentService;
     /**
      * 查询预约作业票台账列表
      */
@@ -41,8 +56,16 @@ public class TInvoiceBookingworkticketController extends BaseController
     public TableDataInfo list(TInvoiceBookingworkticket tInvoiceBookingworkticket)
     {
         startPage();
+        List<TInvoiceBookingworkticket>  newList =new ArrayList<>();
         List<TInvoiceBookingworkticket> list = tInvoiceBookingworkticketService.selectTInvoiceBookingworkticketList(tInvoiceBookingworkticket);
-        return getDataTable(list);
+        for(int i=0;i<list.size();i++){
+            //遍历每一条主表  找到所有的子表
+            TInvoiceBookingworkticket t= list.get(i);
+           List<TInvoiceWorkcontent>  l= tInvoiceWorkcontentService.selectTInvoiceWorkcontentBybookingticketId(t.getId());
+            t.settInvoiceWorkcontentList(l);
+            newList.add(t);
+        }
+        return getDataTable(newList);
     }
 
     /**
@@ -76,6 +99,12 @@ public class TInvoiceBookingworkticketController extends BaseController
     @PostMapping
     public AjaxResult add(@RequestBody TInvoiceBookingworkticket tInvoiceBookingworkticket)
     {
+       //先查当前登录的用户关联的承包商信息
+        LoginUser loginUser = SpringUtils.getBean(TokenService.class).getLoginUser(ServletUtils.getRequest());
+     TInvoiceContractor t= tInvoiceContractorService.selectTInvoiceContractorByName(loginUser.getUsername());
+        tInvoiceBookingworkticket.setCreaterCode(getUserId());
+        tInvoiceBookingworkticket.setContact(t.getContact());
+        tInvoiceBookingworkticket.setPhonenumber(t.getPhonenumber());
         tInvoiceBookingworkticketService.insertTInvoiceBookingworkticket(tInvoiceBookingworkticket);
         return AjaxResult.success(tInvoiceBookingworkticket.getId());
     }

+ 14 - 0
master/src/main/java/com/ruoyi/project/invoice/domain/TInvoiceBookingworkticket.java

@@ -1,6 +1,9 @@
 package com.ruoyi.project.invoice.domain;
 
 import java.util.Date;
+import java.util.List;
+
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.fasterxml.jackson.annotation.JsonFormat;
 import com.ruoyi.framework.aspectj.lang.annotation.Excel;
 import com.ruoyi.framework.web.domain.BaseEntity;
@@ -91,6 +94,9 @@ public class TInvoiceBookingworkticket extends BaseEntity
     @Excel(name = "用户单位")
     private Long userUnit;
 
+    @TableField(exist = false)
+    private List<TInvoiceWorkcontent> tInvoiceWorkcontentList;
+
     public void setId(Long id)
     {
         this.id = id;
@@ -278,4 +284,12 @@ public class TInvoiceBookingworkticket extends BaseEntity
                 .append("userUnit", getUserUnit())
             .toString();
     }
+
+    public List<TInvoiceWorkcontent> gettInvoiceWorkcontentList() {
+        return tInvoiceWorkcontentList;
+    }
+
+    public void settInvoiceWorkcontentList(List<TInvoiceWorkcontent> tInvoiceWorkcontentList) {
+        this.tInvoiceWorkcontentList = tInvoiceWorkcontentList;
+    }
 }

+ 2 - 0
master/src/main/java/com/ruoyi/project/invoice/mapper/TInvoiceContractorMapper.java

@@ -61,4 +61,6 @@ public interface TInvoiceContractorMapper
      * @return 结果
      */
     public int deleteTInvoiceContractorByIds(Long[] ids);
+
+    public TInvoiceContractor selectTInvoiceContractorByName(String userId);
 }

+ 3 - 0
master/src/main/java/com/ruoyi/project/invoice/service/ITInvoiceContractorService.java

@@ -59,4 +59,7 @@ public interface ITInvoiceContractorService
      * @return 结果
      */
     public int deleteTInvoiceContractorById(Long id);
+
+
+     public  TInvoiceContractor selectTInvoiceContractorByName(String userId);
 }

+ 2 - 0
master/src/main/java/com/ruoyi/project/invoice/service/impl/TInvoiceBookingworkticketServiceImpl.java

@@ -1,6 +1,7 @@
 package com.ruoyi.project.invoice.service.impl;
 
 import java.util.List;
+import com.ruoyi.framework.aspectj.lang.annotation.DataScope;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 import com.ruoyi.project.invoice.mapper.TInvoiceBookingworkticketMapper;
@@ -38,6 +39,7 @@ public class TInvoiceBookingworkticketServiceImpl implements ITInvoiceBookingwor
      * @return 预约作业票台账
      */
     @Override
+    @DataScope(deptAlias = "s", userAlias = "d")
     public List<TInvoiceBookingworkticket> selectTInvoiceBookingworkticketList(TInvoiceBookingworkticket tInvoiceBookingworkticket)
     {
         return tInvoiceBookingworkticketMapper.selectTInvoiceBookingworkticketList(tInvoiceBookingworkticket);

+ 5 - 0
master/src/main/java/com/ruoyi/project/invoice/service/impl/TInvoiceContractorServiceImpl.java

@@ -91,4 +91,9 @@ public class TInvoiceContractorServiceImpl implements ITInvoiceContractorService
     {
         return tInvoiceContractorMapper.deleteTInvoiceContractorById(id);
     }
+
+    @Override
+    public TInvoiceContractor selectTInvoiceContractorByName(String userId) {
+      return  tInvoiceContractorMapper.selectTInvoiceContractorByName(userId);
+    }
 }

+ 5 - 0
master/src/main/resources/mybatis/invoice/TInvoiceContractorMapper.xml

@@ -52,6 +52,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
         where id = #{id}
     </select>
 
+    <select id="selectTInvoiceContractorByName" parameterType="String" resultMap="TInvoiceContractorResult">
+        <include refid="selectTInvoiceContractorVo"/>
+        where username = #{username}
+    </select>
+
     <insert id="insertTInvoiceContractor" parameterType="TInvoiceContractor">
         <selectKey keyProperty="id" resultType="long" order="BEFORE">
             SELECT seq_t_invoice_contractor.NEXTVAL as id FROM DUAL

+ 9 - 2
ui/src/views/invoice/bookingworkticket/index.vue

@@ -581,11 +581,12 @@ export default {
         this.loading = true;
       //查到登陆用户的角色和名称 
           var name = this.$store.state.user.name;
+          var roles =this.$store.state.user.roles
           this.bookingworkticketList=[]
           //先判断用户是否是承包商
         //  debugger
         for(var i=0;i<this.workUnitOptions.length;i++ ) {
-               if(name==this.workUnitOptions[i].dictLabel){
+               if(name==this.workUnitOptions[i].remark){
                this.username =this.workUnitOptions[i].dictValue;
                }
         }
@@ -703,8 +704,14 @@ export default {
     handleAdd() {
       this.reset();
       this.resetForm1();
-      this.open = true;
+        var roles =this.$store.state.user.roles
+      if(roles=="cbs"){
+   this.open = true;
       this.title = "添加预约作业票台账";
+      }else{
+           this.msgSuccess("承包商用户才可申请预约作业票");
+      }
+   
     },
     /** 修改按钮操作 */
     handleUpdate(row) {