Ver código fonte

设备费用表

lamphua 1 ano atrás
pai
commit
79c8c242ed

+ 97
- 0
oa-back/ruoyi-admin/src/main/java/com/ruoyi/web/controller/oa/CmcDeviceExpenseController.java Ver arquivo

@@ -0,0 +1,97 @@
1
+package com.ruoyi.web.controller.oa;
2
+
3
+import java.util.List;
4
+import javax.servlet.http.HttpServletResponse;
5
+import org.springframework.beans.factory.annotation.Autowired;
6
+import org.springframework.web.bind.annotation.GetMapping;
7
+import org.springframework.web.bind.annotation.PostMapping;
8
+import org.springframework.web.bind.annotation.PutMapping;
9
+import org.springframework.web.bind.annotation.DeleteMapping;
10
+import org.springframework.web.bind.annotation.PathVariable;
11
+import org.springframework.web.bind.annotation.RequestBody;
12
+import org.springframework.web.bind.annotation.RequestMapping;
13
+import org.springframework.web.bind.annotation.RestController;
14
+import com.ruoyi.common.annotation.Log;
15
+import com.ruoyi.common.core.controller.BaseController;
16
+import com.ruoyi.common.core.domain.AjaxResult;
17
+import com.ruoyi.common.enums.BusinessType;
18
+import com.ruoyi.oa.domain.CmcDeviceExpense;
19
+import com.ruoyi.oa.service.ICmcDeviceExpenseService;
20
+import com.ruoyi.common.utils.poi.ExcelUtil;
21
+import com.ruoyi.common.core.page.TableDataInfo;
22
+
23
+/**
24
+ * cmc仪器费用Controller
25
+ * 
26
+ * @author cmc
27
+ * @date 2024-05-20
28
+ */
29
+@RestController
30
+@RequestMapping("/oa/deviceExpense")
31
+public class CmcDeviceExpenseController extends BaseController
32
+{
33
+    @Autowired
34
+    private ICmcDeviceExpenseService cmcDeviceExpenseService;
35
+
36
+    /**
37
+     * 查询cmc仪器费用列表
38
+     */
39
+    @GetMapping("/list")
40
+    public TableDataInfo list(CmcDeviceExpense cmcDeviceExpense)
41
+    {
42
+        startPage();
43
+        List<CmcDeviceExpense> list = cmcDeviceExpenseService.selectCmcDeviceExpenseList(cmcDeviceExpense);
44
+        return getDataTable(list);
45
+    }
46
+
47
+    /**
48
+     * 导出cmc仪器费用列表
49
+     */
50
+    @Log(title = "cmc仪器费用", businessType = BusinessType.EXPORT)
51
+    @PostMapping("/export")
52
+    public void export(HttpServletResponse response, CmcDeviceExpense cmcDeviceExpense)
53
+    {
54
+        List<CmcDeviceExpense> list = cmcDeviceExpenseService.selectCmcDeviceExpenseList(cmcDeviceExpense);
55
+        ExcelUtil<CmcDeviceExpense> util = new ExcelUtil<CmcDeviceExpense>(CmcDeviceExpense.class);
56
+        util.exportExcel(response, list, "cmc仪器费用数据");
57
+    }
58
+
59
+    /**
60
+     * 获取cmc仪器费用详细信息
61
+     */
62
+    @GetMapping(value = "/{deviceExpenseId}")
63
+    public AjaxResult getInfo(@PathVariable("deviceExpenseId") String deviceExpenseId)
64
+    {
65
+        return success(cmcDeviceExpenseService.selectCmcDeviceExpenseByDeviceExpenseId(deviceExpenseId));
66
+    }
67
+
68
+    /**
69
+     * 新增cmc仪器费用
70
+     */
71
+    @Log(title = "cmc仪器费用", businessType = BusinessType.INSERT)
72
+    @PostMapping
73
+    public AjaxResult add(@RequestBody CmcDeviceExpense cmcDeviceExpense)
74
+    {
75
+        return toAjax(cmcDeviceExpenseService.insertCmcDeviceExpense(cmcDeviceExpense));
76
+    }
77
+
78
+    /**
79
+     * 修改cmc仪器费用
80
+     */
81
+    @Log(title = "cmc仪器费用", businessType = BusinessType.UPDATE)
82
+    @PutMapping
83
+    public AjaxResult edit(@RequestBody CmcDeviceExpense cmcDeviceExpense)
84
+    {
85
+        return toAjax(cmcDeviceExpenseService.updateCmcDeviceExpense(cmcDeviceExpense));
86
+    }
87
+
88
+    /**
89
+     * 删除cmc仪器费用
90
+     */
91
+    @Log(title = "cmc仪器费用", businessType = BusinessType.DELETE)
92
+	@DeleteMapping("/{deviceExpenseIds}")
93
+    public AjaxResult remove(@PathVariable String[] deviceExpenseIds)
94
+    {
95
+        return toAjax(cmcDeviceExpenseService.deleteCmcDeviceExpenseByDeviceExpenseIds(deviceExpenseIds));
96
+    }
97
+}

+ 98
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcDeviceExpense.java Ver arquivo

@@ -0,0 +1,98 @@
1
+package com.ruoyi.oa.domain;
2
+
3
+import java.math.BigDecimal;
4
+import java.util.Date;
5
+import com.fasterxml.jackson.annotation.JsonFormat;
6
+import org.apache.commons.lang3.builder.ToStringBuilder;
7
+import org.apache.commons.lang3.builder.ToStringStyle;
8
+import com.ruoyi.common.annotation.Excel;
9
+import com.ruoyi.common.core.domain.BaseEntity;
10
+
11
+/**
12
+ * cmc仪器费用对象 cmc_device_expense
13
+ * 
14
+ * @author cmc
15
+ * @date 2024-05-20
16
+ */
17
+public class CmcDeviceExpense extends BaseEntity
18
+{
19
+    private static final long serialVersionUID = 1L;
20
+
21
+    /** 仪器费用id */
22
+    private String deviceExpenseId;
23
+
24
+    /** 仪器id */
25
+    @Excel(name = "仪器id")
26
+    private Long deviceId;
27
+
28
+    /** 费用类型(0检定费、1维修保养费) */
29
+    @Excel(name = "费用类型", readConverterExp = "0=检定费、1维修保养费")
30
+    private String expenseType;
31
+
32
+    /** 费用金额 */
33
+    @Excel(name = "费用金额")
34
+    private BigDecimal expense;
35
+
36
+    /** 发生日期 */
37
+    @JsonFormat(pattern = "yyyy-MM-dd")
38
+    @Excel(name = "发生日期", width = 30, dateFormat = "yyyy-MM-dd")
39
+    private Date occurDate;
40
+
41
+    public void setDeviceExpenseId(String deviceExpenseId) 
42
+    {
43
+        this.deviceExpenseId = deviceExpenseId;
44
+    }
45
+
46
+    public String getDeviceExpenseId() 
47
+    {
48
+        return deviceExpenseId;
49
+    }
50
+    public void setDeviceId(Long deviceId) 
51
+    {
52
+        this.deviceId = deviceId;
53
+    }
54
+
55
+    public Long getDeviceId() 
56
+    {
57
+        return deviceId;
58
+    }
59
+    public void setExpenseType(String expenseType) 
60
+    {
61
+        this.expenseType = expenseType;
62
+    }
63
+
64
+    public String getExpenseType() 
65
+    {
66
+        return expenseType;
67
+    }
68
+    public void setExpense(BigDecimal expense) 
69
+    {
70
+        this.expense = expense;
71
+    }
72
+
73
+    public BigDecimal getExpense() 
74
+    {
75
+        return expense;
76
+    }
77
+    public void setOccurDate(Date occurDate) 
78
+    {
79
+        this.occurDate = occurDate;
80
+    }
81
+
82
+    public Date getOccurDate() 
83
+    {
84
+        return occurDate;
85
+    }
86
+
87
+    @Override
88
+    public String toString() {
89
+        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
90
+            .append("deviceExpenseId", getDeviceExpenseId())
91
+            .append("deviceId", getDeviceId())
92
+            .append("expenseType", getExpenseType())
93
+            .append("expense", getExpense())
94
+            .append("occurDate", getOccurDate())
95
+            .append("remark", getRemark())
96
+            .toString();
97
+    }
98
+}

+ 61
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/mapper/CmcDeviceExpenseMapper.java Ver arquivo

@@ -0,0 +1,61 @@
1
+package com.ruoyi.oa.mapper;
2
+
3
+import java.util.List;
4
+import com.ruoyi.oa.domain.CmcDeviceExpense;
5
+
6
+/**
7
+ * cmc仪器费用Mapper接口
8
+ * 
9
+ * @author cmc
10
+ * @date 2024-05-20
11
+ */
12
+public interface CmcDeviceExpenseMapper 
13
+{
14
+    /**
15
+     * 查询cmc仪器费用
16
+     * 
17
+     * @param deviceExpenseId cmc仪器费用主键
18
+     * @return cmc仪器费用
19
+     */
20
+    public CmcDeviceExpense selectCmcDeviceExpenseByDeviceExpenseId(String deviceExpenseId);
21
+
22
+    /**
23
+     * 查询cmc仪器费用列表
24
+     * 
25
+     * @param cmcDeviceExpense cmc仪器费用
26
+     * @return cmc仪器费用集合
27
+     */
28
+    public List<CmcDeviceExpense> selectCmcDeviceExpenseList(CmcDeviceExpense cmcDeviceExpense);
29
+
30
+    /**
31
+     * 新增cmc仪器费用
32
+     * 
33
+     * @param cmcDeviceExpense cmc仪器费用
34
+     * @return 结果
35
+     */
36
+    public int insertCmcDeviceExpense(CmcDeviceExpense cmcDeviceExpense);
37
+
38
+    /**
39
+     * 修改cmc仪器费用
40
+     * 
41
+     * @param cmcDeviceExpense cmc仪器费用
42
+     * @return 结果
43
+     */
44
+    public int updateCmcDeviceExpense(CmcDeviceExpense cmcDeviceExpense);
45
+
46
+    /**
47
+     * 删除cmc仪器费用
48
+     * 
49
+     * @param deviceExpenseId cmc仪器费用主键
50
+     * @return 结果
51
+     */
52
+    public int deleteCmcDeviceExpenseByDeviceExpenseId(String deviceExpenseId);
53
+
54
+    /**
55
+     * 批量删除cmc仪器费用
56
+     * 
57
+     * @param deviceExpenseIds 需要删除的数据主键集合
58
+     * @return 结果
59
+     */
60
+    public int deleteCmcDeviceExpenseByDeviceExpenseIds(String[] deviceExpenseIds);
61
+}

+ 61
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/ICmcDeviceExpenseService.java Ver arquivo

@@ -0,0 +1,61 @@
1
+package com.ruoyi.oa.service;
2
+
3
+import java.util.List;
4
+import com.ruoyi.oa.domain.CmcDeviceExpense;
5
+
6
+/**
7
+ * cmc仪器费用Service接口
8
+ * 
9
+ * @author cmc
10
+ * @date 2024-05-20
11
+ */
12
+public interface ICmcDeviceExpenseService 
13
+{
14
+    /**
15
+     * 查询cmc仪器费用
16
+     * 
17
+     * @param deviceExpenseId cmc仪器费用主键
18
+     * @return cmc仪器费用
19
+     */
20
+    public CmcDeviceExpense selectCmcDeviceExpenseByDeviceExpenseId(String deviceExpenseId);
21
+
22
+    /**
23
+     * 查询cmc仪器费用列表
24
+     * 
25
+     * @param cmcDeviceExpense cmc仪器费用
26
+     * @return cmc仪器费用集合
27
+     */
28
+    public List<CmcDeviceExpense> selectCmcDeviceExpenseList(CmcDeviceExpense cmcDeviceExpense);
29
+
30
+    /**
31
+     * 新增cmc仪器费用
32
+     * 
33
+     * @param cmcDeviceExpense cmc仪器费用
34
+     * @return 结果
35
+     */
36
+    public int insertCmcDeviceExpense(CmcDeviceExpense cmcDeviceExpense);
37
+
38
+    /**
39
+     * 修改cmc仪器费用
40
+     * 
41
+     * @param cmcDeviceExpense cmc仪器费用
42
+     * @return 结果
43
+     */
44
+    public int updateCmcDeviceExpense(CmcDeviceExpense cmcDeviceExpense);
45
+
46
+    /**
47
+     * 批量删除cmc仪器费用
48
+     * 
49
+     * @param deviceExpenseIds 需要删除的cmc仪器费用主键集合
50
+     * @return 结果
51
+     */
52
+    public int deleteCmcDeviceExpenseByDeviceExpenseIds(String[] deviceExpenseIds);
53
+
54
+    /**
55
+     * 删除cmc仪器费用信息
56
+     * 
57
+     * @param deviceExpenseId cmc仪器费用主键
58
+     * @return 结果
59
+     */
60
+    public int deleteCmcDeviceExpenseByDeviceExpenseId(String deviceExpenseId);
61
+}

+ 93
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/service/impl/CmcDeviceExpenseServiceImpl.java Ver arquivo

@@ -0,0 +1,93 @@
1
+package com.ruoyi.oa.service.impl;
2
+
3
+import java.util.List;
4
+import org.springframework.beans.factory.annotation.Autowired;
5
+import org.springframework.stereotype.Service;
6
+import com.ruoyi.oa.mapper.CmcDeviceExpenseMapper;
7
+import com.ruoyi.oa.domain.CmcDeviceExpense;
8
+import com.ruoyi.oa.service.ICmcDeviceExpenseService;
9
+
10
+/**
11
+ * cmc仪器费用Service业务层处理
12
+ * 
13
+ * @author cmc
14
+ * @date 2024-05-20
15
+ */
16
+@Service
17
+public class CmcDeviceExpenseServiceImpl implements ICmcDeviceExpenseService 
18
+{
19
+    @Autowired
20
+    private CmcDeviceExpenseMapper cmcDeviceExpenseMapper;
21
+
22
+    /**
23
+     * 查询cmc仪器费用
24
+     * 
25
+     * @param deviceExpenseId cmc仪器费用主键
26
+     * @return cmc仪器费用
27
+     */
28
+    @Override
29
+    public CmcDeviceExpense selectCmcDeviceExpenseByDeviceExpenseId(String deviceExpenseId)
30
+    {
31
+        return cmcDeviceExpenseMapper.selectCmcDeviceExpenseByDeviceExpenseId(deviceExpenseId);
32
+    }
33
+
34
+    /**
35
+     * 查询cmc仪器费用列表
36
+     * 
37
+     * @param cmcDeviceExpense cmc仪器费用
38
+     * @return cmc仪器费用
39
+     */
40
+    @Override
41
+    public List<CmcDeviceExpense> selectCmcDeviceExpenseList(CmcDeviceExpense cmcDeviceExpense)
42
+    {
43
+        return cmcDeviceExpenseMapper.selectCmcDeviceExpenseList(cmcDeviceExpense);
44
+    }
45
+
46
+    /**
47
+     * 新增cmc仪器费用
48
+     * 
49
+     * @param cmcDeviceExpense cmc仪器费用
50
+     * @return 结果
51
+     */
52
+    @Override
53
+    public int insertCmcDeviceExpense(CmcDeviceExpense cmcDeviceExpense)
54
+    {
55
+        return cmcDeviceExpenseMapper.insertCmcDeviceExpense(cmcDeviceExpense);
56
+    }
57
+
58
+    /**
59
+     * 修改cmc仪器费用
60
+     * 
61
+     * @param cmcDeviceExpense cmc仪器费用
62
+     * @return 结果
63
+     */
64
+    @Override
65
+    public int updateCmcDeviceExpense(CmcDeviceExpense cmcDeviceExpense)
66
+    {
67
+        return cmcDeviceExpenseMapper.updateCmcDeviceExpense(cmcDeviceExpense);
68
+    }
69
+
70
+    /**
71
+     * 批量删除cmc仪器费用
72
+     * 
73
+     * @param deviceExpenseIds 需要删除的cmc仪器费用主键
74
+     * @return 结果
75
+     */
76
+    @Override
77
+    public int deleteCmcDeviceExpenseByDeviceExpenseIds(String[] deviceExpenseIds)
78
+    {
79
+        return cmcDeviceExpenseMapper.deleteCmcDeviceExpenseByDeviceExpenseIds(deviceExpenseIds);
80
+    }
81
+
82
+    /**
83
+     * 删除cmc仪器费用信息
84
+     * 
85
+     * @param deviceExpenseId cmc仪器费用主键
86
+     * @return 结果
87
+     */
88
+    @Override
89
+    public int deleteCmcDeviceExpenseByDeviceExpenseId(String deviceExpenseId)
90
+    {
91
+        return cmcDeviceExpenseMapper.deleteCmcDeviceExpenseByDeviceExpenseId(deviceExpenseId);
92
+    }
93
+}

+ 5
- 1
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcCarExpenseMapper.xml Ver arquivo

@@ -10,10 +10,11 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
10 10
         <result property="expenseType"    column="expense_type"    />
11 11
         <result property="expense"    column="expense"    />
12 12
         <result property="occurDate"    column="occur_date"    />
13
+        <result property="remark"    column="remark"    />
13 14
     </resultMap>
14 15
 
15 16
     <sql id="selectCmcCarExpenseVo">
16
-        select car_expense_id, car_id, expense_type, expense, occur_date from cmc_car_expense
17
+        select car_expense_id, car_id, expense_type, expense, occur_date, remark from cmc_car_expense
17 18
     </sql>
18 19
 
19 20
     <select id="selectCmcCarExpenseList" parameterType="CmcCarExpense" resultMap="CmcCarExpenseResult">
@@ -39,6 +40,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
39 40
             <if test="expenseType != null">expense_type,</if>
40 41
             <if test="expense != null">expense,</if>
41 42
             <if test="occurDate != null">occur_date,</if>
43
+            <if test="remark != null">remark,</if>
42 44
          </trim>
43 45
         <trim prefix="values (" suffix=")" suffixOverrides=",">
44 46
             <if test="carExpenseId != null">#{carExpenseId},</if>
@@ -46,6 +48,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
46 48
             <if test="expenseType != null">#{expenseType},</if>
47 49
             <if test="expense != null">#{expense},</if>
48 50
             <if test="occurDate != null">#{occurDate},</if>
51
+            <if test="remark != null">#{remark},</if>
49 52
          </trim>
50 53
     </insert>
51 54
 
@@ -56,6 +59,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
56 59
             <if test="expenseType != null">expense_type = #{expenseType},</if>
57 60
             <if test="expense != null">expense = #{expense},</if>
58 61
             <if test="occurDate != null">occur_date = #{occurDate},</if>
62
+            <if test="remark != null">remark = #{remark},</if>
59 63
         </trim>
60 64
         where car_expense_id = #{carExpenseId}
61 65
     </update>

+ 77
- 0
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcDeviceExpenseMapper.xml Ver arquivo

@@ -0,0 +1,77 @@
1
+<?xml version="1.0" encoding="UTF-8" ?>
2
+<!DOCTYPE mapper
3
+PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
4
+"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
5
+<mapper namespace="com.ruoyi.oa.mapper.CmcDeviceExpenseMapper">
6
+    
7
+    <resultMap type="CmcDeviceExpense" id="CmcDeviceExpenseResult">
8
+        <result property="deviceExpenseId"    column="device_expense_id"    />
9
+        <result property="deviceId"    column="device_id"    />
10
+        <result property="expenseType"    column="expense_type"    />
11
+        <result property="expense"    column="expense"    />
12
+        <result property="occurDate"    column="occur_date"    />
13
+        <result property="remark"    column="remark"    />
14
+    </resultMap>
15
+
16
+    <sql id="selectCmcDeviceExpenseVo">
17
+        select device_expense_id, device_id, expense_type, expense, occur_date, remark from cmc_device_expense
18
+    </sql>
19
+
20
+    <select id="selectCmcDeviceExpenseList" parameterType="CmcDeviceExpense" resultMap="CmcDeviceExpenseResult">
21
+        <include refid="selectCmcDeviceExpenseVo"/>
22
+        <where>  
23
+            <if test="deviceId != null "> and device_id = #{deviceId}</if>
24
+            <if test="expenseType != null  and expenseType != ''"> and expense_type = #{expenseType}</if>
25
+            <if test="expense != null "> and expense = #{expense}</if>
26
+            <if test="occurDate != null "> and occur_date = #{occurDate}</if>
27
+        </where>
28
+    </select>
29
+    
30
+    <select id="selectCmcDeviceExpenseByDeviceExpenseId" parameterType="String" resultMap="CmcDeviceExpenseResult">
31
+        <include refid="selectCmcDeviceExpenseVo"/>
32
+        where device_expense_id = #{deviceExpenseId}
33
+    </select>
34
+        
35
+    <insert id="insertCmcDeviceExpense" parameterType="CmcDeviceExpense">
36
+        insert into cmc_device_expense
37
+        <trim prefix="(" suffix=")" suffixOverrides=",">
38
+            <if test="deviceExpenseId != null">device_expense_id,</if>
39
+            <if test="deviceId != null">device_id,</if>
40
+            <if test="expenseType != null">expense_type,</if>
41
+            <if test="expense != null">expense,</if>
42
+            <if test="occurDate != null">occur_date,</if>
43
+            <if test="remark != null">remark,</if>
44
+         </trim>
45
+        <trim prefix="values (" suffix=")" suffixOverrides=",">
46
+            <if test="deviceExpenseId != null">#{deviceExpenseId},</if>
47
+            <if test="deviceId != null">#{deviceId},</if>
48
+            <if test="expenseType != null">#{expenseType},</if>
49
+            <if test="expense != null">#{expense},</if>
50
+            <if test="occurDate != null">#{occurDate},</if>
51
+            <if test="remark != null">#{remark},</if>
52
+         </trim>
53
+    </insert>
54
+
55
+    <update id="updateCmcDeviceExpense" parameterType="CmcDeviceExpense">
56
+        update cmc_device_expense
57
+        <trim prefix="SET" suffixOverrides=",">
58
+            <if test="deviceId != null">device_id = #{deviceId},</if>
59
+            <if test="expenseType != null">expense_type = #{expenseType},</if>
60
+            <if test="expense != null">expense = #{expense},</if>
61
+            <if test="occurDate != null">occur_date = #{occurDate},</if>
62
+            <if test="remark != null">remark = #{remark},</if>
63
+        </trim>
64
+        where device_expense_id = #{deviceExpenseId}
65
+    </update>
66
+
67
+    <delete id="deleteCmcDeviceExpenseByDeviceExpenseId" parameterType="String">
68
+        delete from cmc_device_expense where device_expense_id = #{deviceExpenseId}
69
+    </delete>
70
+
71
+    <delete id="deleteCmcDeviceExpenseByDeviceExpenseIds" parameterType="String">
72
+        delete from cmc_device_expense where device_expense_id in 
73
+        <foreach item="deviceExpenseId" collection="array" open="(" separator="," close=")">
74
+            #{deviceExpenseId}
75
+        </foreach>
76
+    </delete>
77
+</mapper>

+ 37
- 18
oa-back/sql/sql.sql Ver arquivo

@@ -5506,6 +5506,7 @@ create table `cmc_car_expense`  (
5506 5506
   `expense_type`	char(1) 		default null 	comment '费用类型(0保险费、1维修保养费、3轮胎费)',
5507 5507
   `expense`			decimal(10, 2) 	default null 	comment '费用金额',
5508 5508
   `occur_date`		date			default null 	comment '发生日期',
5509
+  `remark`			varchar(255)	default null 	comment '备注',
5509 5510
   primary key (`car_expense_id`)
5510 5511
 ) engine = innodb comment = 'cmc车辆费用表';
5511 5512
 
@@ -10020,29 +10021,47 @@ create table `cmc_price_remark`  (
10020 10021
 -- ----------------------------
10021 10022
 -- 初始化-单价备注表数据
10022 10023
 -- ----------------------------
10023
-INSERT INTO `cmc_price_remark` VALUES (1, '外业', '⑴根据项目简单程度,结算标准可按一般地类标准降低 5%~20%结算;\\n ⑵高原困难系数等其他增加系数按一般地类作起算标准;\\n ⑶国内项目(含西藏)测区平均高程 2000m~2499m、2500m~2999m、3000m~3499m、3500m~3999m、4000m~4499m、4500m 以上,分别增加高原困难系数 5%、10%、15%、20%、25%、40%;特别困难地区、井下作业等项目,按实际困难程度增加困难系数;\\n ⑷东南亚地区国外项目增加 50%,非洲、西亚等地区国外项目增加 70%,项目委托费用在工作开展前提交预算申请,经审批后执行。');
10024
-INSERT INTO `cmc_price_remark` VALUES (2, '外业-GNSS、控制网测量', '⑴GNSS 按要求增加一倍观测时间,增加 30%;\\n ⑵施工控制网、监测网按 60%(土建单独结算);\\n ⑶三角网观测执行此标准,边角网观测增加 60%;\\n ⑷利用 RTK 测量,埋石标志按 70%、刻石标志按 50%计算;\\n ⑸利用已有控制点按 60%计算;\\n ⑹此标准包含一般项目控制点位选埋、观测计算等工作。');
10025
-INSERT INTO `cmc_price_remark` VALUES (3, '外业-导线测量', '⑴代替四等三角高程增加 30%;\\n ⑵代替三等三角高程(单程双测)增加 60%;\\n ⑶电磁波测距、已知边检测按此标准;\\n ⑷双支导线按 70%。');
10026
-INSERT INTO `cmc_price_remark` VALUES (4, '外业-地形图测绘', '⑴地形地类图根据地类、权属复杂程度增加 15%~20%;\\n ⑵无人机、航片、卫片、机载激光等航测外业分别按 40%、40%、20%、20%计算,其中像控点测量、调绘、补测、检查点测量分别占比为 10%、40%、40%、10%,不生产 DLG 项目的像控点测量按 5%计算;\\n ⑶1:500、1:1000 地形图采用激光点云结合立体像对或实景三维模型采集地物成图,按不同方式成图面积结算;\\n ⑷机动船配合 RTK、无人测量船等测绘水下地形图按此标准;\\n ⑸带状地形图图面宽度不足 20cm 时,增加 15%带状系数;\\n ⑹河道宽度大于图上 5cm 时,扣除河道面积;\\n ⑺光伏、风电等新能源项目按 50%;\\n ⑻本结算标准包含地形图数字化编辑工作。');
10027
-INSERT INTO `cmc_price_remark` VALUES (5, '外业-断面测量', '断面测量\\n ⑴河道纵断面、同时水面线按 60%;\\n ⑵河道横断面长度不足 200m,按 200m;\\n ⑶河道纵断面长度不足 1000m,按 1000m;\\n ⑷河道纵断面实测河道平面图增加 30%;\\n ⑸库区泥沙淤积断面基点土建费用,项目开展前提交预算申请,经审批后纳入结算;\\n ⑹断面基点不埋石,按断面基点测量的 50%;\\n ⑺公路断面按 10%;\\n ⑻内业量测断面以工作开展前核准的内业工天结算。\\n 界桩测设\\n ⑴临时界桩测设、电子界桩按 20%;\\n ⑵水库定线界桩按 70%;\\n ⑶界桩预制、运输、埋设费用在项目开展前提交预算申请,经审批后纳入结算;\\n ⑷钻孔放测、独立重要点位放测按此标准计算。');
10028
-INSERT INTO `cmc_price_remark` VALUES (6, '外业-高程测量', '水准测量\\n ⑴按水准路线长度计算;\\n ⑵三角高程测量执行按相应等级水准测量的 70%;\\n ⑶爬山水准、洞内水准增加 60%~100%。\\n 跨河水准测量\\n ⑴跨河距离小于 500m,按一般地类;\\n ⑵跨河距离大于等于 500m,按困难地类;\\n 跨河距离大于 1000m,按困难地类增加 50%。');
10029
-INSERT INTO `cmc_price_remark` VALUES (7, '外业-公路测量', '⑴公路中桩、角桩测设按此标准,公路断面按横断面测量标\\n 准 10%计算;\\n ⑵公路参考点按 20%计算;\\n ⑶不配合设计专业的公路测量按此标准 50%计算。');
10030
-INSERT INTO `cmc_price_remark` VALUES (8, '外业-航飞', '⑴费用包含工作期间食宿费,不扣减汽车台班费;\\n ⑵部门承担航飞任务与本部门其他外业工作结合开展,不报销住宿费,不扣减汽车台班费;\\n ⑶不执行测区高原困难系数;\\n ⑷测区地形高差 600m~799m 或测区平均高程 2000m~2999m,增加 20%;测区地形高差 800m~1000m 或测区平均高程 3000m~3999m,增加 30%;测区地形高差 1000m 以上或测区平均高程 4000m 以上,增加 50%;不再增加其他困难系数。');
10031
-INSERT INTO `cmc_price_remark` VALUES (9, '外业-激光数据采集', '⑴费用包含工作期间食宿费,不扣减汽车台班费;\\n ⑵部门承担航飞任务与本部门其他外业工作结合开展,不报销住宿费,不扣减汽车台班费;\\n ⑶不执行测区高原困难系数;\\n ⑷测区地形高差 600m~799m 或测区平均高程 2000m~2999m,增加 20%;测区地形高差 800m~1000m 或测区平均高程 3000m~3999m,增加 30%;测区地形高差 1000m 以上或测区平均高程 4000m 以上,增加 50%;不再增加其他困难系数。');
10032
-INSERT INTO `cmc_price_remark` VALUES (10, '外业-其他', '配合测量\\n ⑴费用包含工作期间食宿费,不扣减汽车台班费。\\n 进出场\\n ⑴使用汽车(含租用车辆)台班超过 5 天(不含进出场)的项目,按 180 元/辆.天减扣台班使用费;\\n ⑵省内(不含成都市)、省外项目进出场分别按 300 元/人天、330 元/人天纳入结算费用,不再报销差旅费;\\n ⑶项目进出场乘坐公共交通,交通费用按票据纳入结算。');
10033
-INSERT INTO `cmc_price_remark` VALUES (11, '外业-施控网土建', '⑴已施工建设工地为一般地类;\\n ⑵监测基准网点增加 20%;\\n ⑶监测点墩标按 70%;\\n ⑷困难测区土建费用,土建开展前提交预算申请,经审批后\\n 纳入结算。');
10034
-INSERT INTO `cmc_price_remark` VALUES (12, '内业', '⑴根据项目简单程度,结算标准可按一般地类标准降低 5%~20%结算;\\n ⑵内业单个项目(不含坐标转换)按标准结算不足 600 元时,按 600 元结算;\\n ⑶经审批按内业工天结算时,按 210 元/人天计算。');
10024
+INSERT INTO `cmc_price_remark` VALUES (1, '外业', '⑴根据项目简单程度,结算标准可按一般地类标准降低 5%~20%结算;<br/> ⑵高原困难系数等其他增加系数按一般地类作起算标准;<br/> ⑶国内项目(含西藏)测区平均高程 2000m~2499m、2500m~2999m、3000m~3499m、3500m~3999m、4000m~4499m、4500m 以上,分别增加高原困难系数 5%、10%、15%、20%、25%、40%;特别困难地区、井下作业等项目,按实际困难程度增加困难系数;<br/> ⑷东南亚地区国外项目增加 50%,非洲、西亚等地区国外项目增加 70%,项目委托费用在工作开展前提交预算申请,经审批后执行。');
10025
+INSERT INTO `cmc_price_remark` VALUES (2, '外业-GNSS、控制网测量', '⑴GNSS 按要求增加一倍观测时间,增加 30%;<br/> ⑵施工控制网、监测网按 60%(土建单独结算);<br/> ⑶三角网观测执行此标准,边角网观测增加 60%;<br/> ⑷利用 RTK 测量,埋石标志按 70%、刻石标志按 50%计算;<br/> ⑸利用已有控制点按 60%计算;<br/> ⑹此标准包含一般项目控制点位选埋、观测计算等工作。');
10026
+INSERT INTO `cmc_price_remark` VALUES (3, '外业-导线测量', '⑴代替四等三角高程增加 30%;<br/> ⑵代替三等三角高程(单程双测)增加 60%;<br/> ⑶电磁波测距、已知边检测按此标准;<br/> ⑷双支导线按 70%。');
10027
+INSERT INTO `cmc_price_remark` VALUES (4, '外业-地形图测绘', '⑴地形地类图根据地类、权属复杂程度增加 15%~20%;<br/> ⑵无人机、航片、卫片、机载激光等航测外业分别按 40%、40%、20%、20%计算,其中像控点测量、调绘、补测、检查点测量分别占比为 10%、40%、40%、10%,不生产 DLG 项目的像控点测量按 5%计算;<br/> ⑶1:500、1:1000 地形图采用激光点云结合立体像对或实景三维模型采集地物成图,按不同方式成图面积结算;<br/> ⑷机动船配合 RTK、无人测量船等测绘水下地形图按此标准;<br/> ⑸带状地形图图面宽度不足 20cm 时,增加 15%带状系数;<br/> ⑹河道宽度大于图上 5cm 时,扣除河道面积;<br/> ⑺光伏、风电等新能源项目按 50%;<br/> ⑻本结算标准包含地形图数字化编辑工作。');
10028
+INSERT INTO `cmc_price_remark` VALUES (5, '外业-断面测量', '断面测量<br/> ⑴河道纵断面、同时水面线按 60%;<br/> ⑵河道横断面长度不足 200m,按 200m;<br/> ⑶河道纵断面长度不足 1000m,按 1000m;<br/> ⑷河道纵断面实测河道平面图增加 30%;<br/> ⑸库区泥沙淤积断面基点土建费用,项目开展前提交预算申请,经审批后纳入结算;<br/> ⑹断面基点不埋石,按断面基点测量的 50%;<br/> ⑺公路断面按 10%;<br/> ⑻内业量测断面以工作开展前核准的内业工天结算。<br/> 界桩测设<br/> ⑴临时界桩测设、电子界桩按 20%;<br/> ⑵水库定线界桩按 70%;<br/> ⑶界桩预制、运输、埋设费用在项目开展前提交预算申请,经审批后纳入结算;<br/> ⑷钻孔放测、独立重要点位放测按此标准计算。');
10029
+INSERT INTO `cmc_price_remark` VALUES (6, '外业-高程测量', '水准测量<br/> ⑴按水准路线长度计算;<br/> ⑵三角高程测量执行按相应等级水准测量的 70%;<br/> ⑶爬山水准、洞内水准增加 60%~100%。<br/> 跨河水准测量<br/> ⑴跨河距离小于 500m,按一般地类;<br/> ⑵跨河距离大于等于 500m,按困难地类;<br/> 跨河距离大于 1000m,按困难地类增加 50%。');
10030
+INSERT INTO `cmc_price_remark` VALUES (7, '外业-公路测量', '⑴公路中桩、角桩测设按此标准,公路断面按横断面测量标<br/> 准 10%计算;<br/> ⑵公路参考点按 20%计算;<br/> ⑶不配合设计专业的公路测量按此标准 50%计算。');
10031
+INSERT INTO `cmc_price_remark` VALUES (8, '外业-航飞', '⑴费用包含工作期间食宿费,不扣减汽车台班费;<br/> ⑵部门承担航飞任务与本部门其他外业工作结合开展,不报销住宿费,不扣减汽车台班费;<br/> ⑶不执行测区高原困难系数;<br/> ⑷测区地形高差 600m~799m 或测区平均高程 2000m~2999m,增加 20%;测区地形高差 800m~1000m 或测区平均高程 3000m~3999m,增加 30%;测区地形高差 1000m 以上或测区平均高程 4000m 以上,增加 50%;不再增加其他困难系数。');
10032
+INSERT INTO `cmc_price_remark` VALUES (9, '外业-激光数据采集', '⑴费用包含工作期间食宿费,不扣减汽车台班费;<br/> ⑵部门承担航飞任务与本部门其他外业工作结合开展,不报销住宿费,不扣减汽车台班费;<br/> ⑶不执行测区高原困难系数;<br/> ⑷测区地形高差 600m~799m 或测区平均高程 2000m~2999m,增加 20%;测区地形高差 800m~1000m 或测区平均高程 3000m~3999m,增加 30%;测区地形高差 1000m 以上或测区平均高程 4000m 以上,增加 50%;不再增加其他困难系数。');
10033
+INSERT INTO `cmc_price_remark` VALUES (10, '外业-其他', '配合测量<br/> ⑴费用包含工作期间食宿费,不扣减汽车台班费。<br/> 进出场<br/> ⑴使用汽车(含租用车辆)台班超过 5 天(不含进出场)的项目,按 180 元/辆.天减扣台班使用费;<br/> ⑵省内(不含成都市)、省外项目进出场分别按 300 元/人天、330 元/人天纳入结算费用,不再报销差旅费;<br/> ⑶项目进出场乘坐公共交通,交通费用按票据纳入结算。');
10034
+INSERT INTO `cmc_price_remark` VALUES (11, '外业-施控网土建', '⑴已施工建设工地为一般地类;<br/> ⑵监测基准网点增加 20%;<br/> ⑶监测点墩标按 70%;<br/> ⑷困难测区土建费用,土建开展前提交预算申请,经审批后<br/> 纳入结算。');
10035
+INSERT INTO `cmc_price_remark` VALUES (12, '内业', '⑴根据项目简单程度,结算标准可按一般地类标准降低 5%~20%结算;<br/> ⑵内业单个项目(不含坐标转换)按标准结算不足 600 元时,按 600 元结算;<br/> ⑶经审批按内业工天结算时,按 210 元/人天计算。');
10035 10036
 INSERT INTO `cmc_price_remark` VALUES (13, '内业-DEM、地形面', '⑴利用分类后的点云数据制作 DEM 按 40%。');
10036 10037
 INSERT INTO `cmc_price_remark` VALUES (14, '内业-DOM', '⑴不匀色、裁切、分幅按 60%。');
10037 10038
 INSERT INTO `cmc_price_remark` VALUES (15, '内业-比例尺缩放', '⑴地形图缩放按缩放后的比例尺,比例尺放大按 70%、比例尺缩小按 120%。');
10038
-INSERT INTO `cmc_price_remark` VALUES (16, '内业-编图', '⑴适用于对地形图编制有特殊要求或数字化专题项目;\\n ⑵地形地类图增加 15%;\\n ⑶外业实测电子图数字化按 60%;\\n ⑷收集正式地形图分幅裁切整理按 30%。');
10039
-INSERT INTO `cmc_price_remark` VALUES (17, '内业-点云分类', '⑴机载激光数据预处理按一般地类标准的 25%;\\n ⑵车载、手持激光数据预处理按一般地类标准的 35%。');
10040
-INSERT INTO `cmc_price_remark` VALUES (18, '内业-航测', '⑴航片、卫片、无人机航测成图执行此标准;\\n ⑵粗编应满足甲方及归档要求,特殊项目精编增加 17%;\\n ⑶地形地类图增加 15%;\\n ⑷空三加密及影像匀色按 5%;\\n ⑸光伏、风电等新能源项目按 50%。');
10041
-INSERT INTO `cmc_price_remark` VALUES (19, '内业-激光数据预处理', '⑴机载激光数据预处理按一般地类标准的 25%;\\n ⑵车载、手持激光数据预处理按一般地类标准的 35%。');
10042
-INSERT INTO `cmc_price_remark` VALUES (20, '内业-激光制图', '⑴利用预处理后的激光数据测制地形图按此标准计算,包括点云分类、地物采集、地形图编绘等全流程;\\n ⑵地形地类图增加部分参照航测成图;\\n ⑶光伏、风电等新能源项目按 50%。');
10043
-INSERT INTO `cmc_price_remark` VALUES (21, '内业-三维模型', '⑴根据内业复杂程度,按 1~2 倍计算(参考航测空三的 1~2 倍);\\n ⑵修模工作按 100m*100m 网格计算实际修模工作量,根据网格复杂程度按 20~50 元/格计算。');
10039
+INSERT INTO `cmc_price_remark` VALUES (16, '内业-编图', '⑴适用于对地形图编制有特殊要求或数字化专题项目;<br/> ⑵地形地类图增加 15%;<br/> ⑶外业实测电子图数字化按 60%;<br/> ⑷收集正式地形图分幅裁切整理按 30%。');
10040
+INSERT INTO `cmc_price_remark` VALUES (17, '内业-点云分类', '⑴机载激光数据预处理按一般地类标准的 25%;<br/> ⑵车载、手持激光数据预处理按一般地类标准的 35%。');
10041
+INSERT INTO `cmc_price_remark` VALUES (18, '内业-航测', '⑴航片、卫片、无人机航测成图执行此标准;<br/> ⑵粗编应满足甲方及归档要求,特殊项目精编增加 17%;<br/> ⑶地形地类图增加 15%;<br/> ⑷空三加密及影像匀色按 5%;<br/> ⑸光伏、风电等新能源项目按 50%。');
10042
+INSERT INTO `cmc_price_remark` VALUES (19, '内业-激光数据预处理', '⑴机载激光数据预处理按一般地类标准的 25%;<br/> ⑵车载、手持激光数据预处理按一般地类标准的 35%。');
10043
+INSERT INTO `cmc_price_remark` VALUES (20, '内业-激光制图', '⑴利用预处理后的激光数据测制地形图按此标准计算,包括点云分类、地物采集、地形图编绘等全流程;<br/> ⑵地形地类图增加部分参照航测成图;<br/> ⑶光伏、风电等新能源项目按 50%。');
10044
+INSERT INTO `cmc_price_remark` VALUES (21, '内业-三维模型', '⑴根据内业复杂程度,按 1~2 倍计算(参考航测空三的 1~2 倍);<br/> ⑵修模工作按 100m*100m 网格计算实际修模工作量,根据网格复杂程度按 20~50 元/格计算。');
10044 10045
 INSERT INTO `cmc_price_remark` VALUES (22, '内业-坐标转换', '⑴坐标转换、电子沙盘制作,按工作前核准的内业工天结算。');
10045 10046
 
10047
+-- ----------------------------
10048
+-- 62、cmc仪器费用表
10049
+-- ----------------------------
10050
+drop table if exists `cmc_device_expense`;
10051
+create table `cmc_device_expense`  (
10052
+  `device_expense_id`	char(19)		not null 		comment '仪器费用id',
10053
+  `device_id` 			int 			default null 	comment '仪器id',
10054
+  `expense_type`		char(1) 		default null 	comment '费用类型(0检定费、1维修保养费)',
10055
+  `expense`				decimal(10, 2) 	default null 	comment '费用金额',
10056
+  `occur_date`			date			default null 	comment '发生日期',
10057
+  `remark`				varchar(255)	default null 	comment '备注',
10058
+  primary key (`device_expense_id`)
10059
+) engine = innodb comment = 'cmc仪器费用表';
10060
+
10061
+-- ----------------------------
10062
+-- 初始化-仪器费用表数据
10063
+-- ----------------------------
10064
+
10046 10065
 SET NAMES utf8mb4;
10047 10066
 SET FOREIGN_KEY_CHECKS = 0;
10048 10067
 

+ 44
- 0
oa-ui/src/api/oa/device/deviceExpense.js Ver arquivo

@@ -0,0 +1,44 @@
1
+import request from '@/utils/request'
2
+
3
+// 查询cmc仪器费用列表
4
+export function listDeviceExpense(query) {
5
+  return request({
6
+    url: '/oa/deviceExpense/list',
7
+    method: 'get',
8
+    params: query
9
+  })
10
+}
11
+
12
+// 查询cmc仪器费用详细
13
+export function getDeviceExpense(deviceExpenseId) {
14
+  return request({
15
+    url: '/oa/deviceExpense/' + deviceExpenseId,
16
+    method: 'get'
17
+  })
18
+}
19
+
20
+// 新增cmc仪器费用
21
+export function addDeviceExpense(data) {
22
+  return request({
23
+    url: '/oa/deviceExpense',
24
+    method: 'post',
25
+    data: data
26
+  })
27
+}
28
+
29
+// 修改cmc仪器费用
30
+export function updateDeviceExpense(data) {
31
+  return request({
32
+    url: '/oa/deviceExpense',
33
+    method: 'put',
34
+    data: data
35
+  })
36
+}
37
+
38
+// 删除cmc仪器费用
39
+export function delDeviceExpense(deviceExpenseId) {
40
+  return request({
41
+    url: '/oa/deviceExpense/' + deviceExpenseId,
42
+    method: 'delete'
43
+  })
44
+}

+ 6
- 1
oa-ui/src/views/oa/car/expense.vue Ver arquivo

@@ -122,6 +122,7 @@
122 122
             {{ scope.row.occurDate }}
123 123
           </template>
124 124
         </el-table-column>
125
+        <el-table-column width="55" align="center" label="备注" prop="remark" />
125 126
         <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
126 127
           <template slot-scope="scope">
127 128
             <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
@@ -152,6 +153,9 @@
152 153
             placeholder="请选择发生日期">
153 154
           </el-date-picker>
154 155
         </el-form-item>
156
+        <el-form-item label="备注说明" prop="remark">
157
+          <el-input type="textarea" v-model="form.remark" placeholder="请输入备注说明" style="width:220px" />
158
+        </el-form-item>
155 159
       </el-form>
156 160
       <div slot="footer" class="dialog-footer">
157 161
         <el-button type="primary" @click="submitForm">确 定</el-button>
@@ -281,7 +285,8 @@ export default {
281 285
         carId: null,
282 286
         expenseType: null,
283 287
         expense: null,
284
-        occurDate: null
288
+        occurDate: null,
289
+        remark: null,
285 290
       };
286 291
       this.resetForm("expenseForm");
287 292
     },

+ 290
- 0
oa-ui/src/views/oa/device/expense.vue Ver arquivo

@@ -0,0 +1,290 @@
1
+<template>
2
+  <div class="app-container">
3
+    <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
4
+      <el-form-item label="仪器id" prop="deviceId">
5
+        <el-input
6
+          v-model="queryParams.deviceId"
7
+          placeholder="请输入仪器id"
8
+          clearable
9
+          @keyup.enter.native="handleQuery"
10
+        />
11
+      </el-form-item>
12
+      <el-form-item label="费用金额" prop="expense">
13
+        <el-input
14
+          v-model="queryParams.expense"
15
+          placeholder="请输入费用金额"
16
+          clearable
17
+          @keyup.enter.native="handleQuery"
18
+        />
19
+      </el-form-item>
20
+      <el-form-item label="发生日期" prop="occurDate">
21
+        <el-date-picker clearable
22
+          v-model="queryParams.occurDate"
23
+          type="date"
24
+          value-format="yyyy-MM-dd"
25
+          placeholder="请选择发生日期">
26
+        </el-date-picker>
27
+      </el-form-item>
28
+      <el-form-item>
29
+        <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
30
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
31
+      </el-form-item>
32
+    </el-form>
33
+
34
+    <el-row :gutter="10" class="mb8">
35
+      <el-col :span="1.5">
36
+        <el-button
37
+          type="primary"
38
+          plain
39
+          icon="el-icon-plus"
40
+          size="mini"
41
+          @click="handleAdd"
42
+          v-hasPermi="['oa:deviceExpense:add']"
43
+        >新增</el-button>
44
+      </el-col>
45
+      <el-col :span="1.5">
46
+        <el-button
47
+          type="success"
48
+          plain
49
+          icon="el-icon-edit"
50
+          size="mini"
51
+          :disabled="single"
52
+          @click="handleUpdate"
53
+          v-hasPermi="['oa:deviceExpense:edit']"
54
+        >修改</el-button>
55
+      </el-col>
56
+      <el-col :span="1.5">
57
+        <el-button
58
+          type="danger"
59
+          plain
60
+          icon="el-icon-delete"
61
+          size="mini"
62
+          :disabled="multiple"
63
+          @click="handleDelete"
64
+          v-hasPermi="['oa:deviceExpense:remove']"
65
+        >删除</el-button>
66
+      </el-col>
67
+      <el-col :span="1.5">
68
+        <el-button
69
+          type="warning"
70
+          plain
71
+          icon="el-icon-download"
72
+          size="mini"
73
+          @click="handleExport"
74
+          v-hasPermi="['oa:deviceExpense:export']"
75
+        >导出</el-button>
76
+      </el-col>
77
+      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
78
+    </el-row>
79
+
80
+    <el-table v-loading="loading" :data="deviceExpenseList" @selection-change="handleSelectionChange">
81
+      <el-table-column type="selection" width="55" align="center" />
82
+      <el-table-column label="仪器费用id" align="center" prop="deviceExpenseId" />
83
+      <el-table-column label="仪器id" align="center" prop="deviceId" />
84
+      <el-table-column label="费用类型" align="center" prop="expenseType" />
85
+      <el-table-column label="费用金额" align="center" prop="expense" />
86
+      <el-table-column label="发生日期" align="center" prop="occurDate" width="180">
87
+        <template slot-scope="scope">
88
+          <span>{{ parseTime(scope.row.occurDate, '{y}-{m}-{d}') }}</span>
89
+        </template>
90
+      </el-table-column>
91
+      <el-table-column label="备注" align="center" prop="remark" />
92
+      <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
93
+        <template slot-scope="scope">
94
+          <el-button
95
+            size="mini"
96
+            type="text"
97
+            icon="el-icon-edit"
98
+            @click="handleUpdate(scope.row)"
99
+            v-hasPermi="['oa:deviceExpense:edit']"
100
+          >修改</el-button>
101
+          <el-button
102
+            size="mini"
103
+            type="text"
104
+            icon="el-icon-delete"
105
+            @click="handleDelete(scope.row)"
106
+            v-hasPermi="['oa:deviceExpense:remove']"
107
+          >删除</el-button>
108
+        </template>
109
+      </el-table-column>
110
+    </el-table>
111
+    
112
+    <pagination
113
+      v-show="total>0"
114
+      :total="total"
115
+      :page.sync="queryParams.pageNum"
116
+      :limit.sync="queryParams.pageSize"
117
+      @pagination="getList"
118
+    />
119
+
120
+    <!-- 添加或修改cmc仪器费用对话框 -->
121
+    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
122
+      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
123
+        <el-form-item label="仪器id" prop="deviceId">
124
+          <el-input v-model="form.deviceId" placeholder="请输入仪器id" />
125
+        </el-form-item>
126
+        <el-form-item label="费用金额" prop="expense">
127
+          <el-input v-model="form.expense" placeholder="请输入费用金额" />
128
+        </el-form-item>
129
+        <el-form-item label="发生日期" prop="occurDate">
130
+          <el-date-picker clearable
131
+            v-model="form.occurDate"
132
+            type="date"
133
+            value-format="yyyy-MM-dd"
134
+            placeholder="请选择发生日期">
135
+          </el-date-picker>
136
+        </el-form-item>
137
+        <el-form-item label="备注" prop="remark">
138
+          <el-input v-model="form.remark" placeholder="请输入备注" />
139
+        </el-form-item>
140
+      </el-form>
141
+      <div slot="footer" class="dialog-footer">
142
+        <el-button type="primary" @click="submitForm">确 定</el-button>
143
+        <el-button @click="cancel">取 消</el-button>
144
+      </div>
145
+    </el-dialog>
146
+  </div>
147
+</template>
148
+
149
+<script>
150
+import { listDeviceExpense, getDeviceExpense, delDeviceExpense, addDeviceExpense, updateDeviceExpense } from "@/api/oa/device/deviceExpense";
151
+
152
+export default {
153
+  name: "DeviceExpense",
154
+  data() {
155
+    return {
156
+      // 遮罩层
157
+      loading: true,
158
+      // 选中数组
159
+      ids: [],
160
+      // 非单个禁用
161
+      single: true,
162
+      // 非多个禁用
163
+      multiple: true,
164
+      // 显示搜索条件
165
+      showSearch: true,
166
+      // 总条数
167
+      total: 0,
168
+      // cmc仪器费用表格数据
169
+      deviceExpenseList: [],
170
+      // 弹出层标题
171
+      title: "",
172
+      // 是否显示弹出层
173
+      open: false,
174
+      // 查询参数
175
+      queryParams: {
176
+        pageNum: 1,
177
+        pageSize: 10,
178
+        deviceId: null,
179
+        expenseType: null,
180
+        expense: null,
181
+        occurDate: null,
182
+      },
183
+      // 表单参数
184
+      form: {},
185
+      // 表单校验
186
+      rules: {
187
+      }
188
+    };
189
+  },
190
+  created() {
191
+    this.getList();
192
+  },
193
+  methods: {
194
+    /** 查询cmc仪器费用列表 */
195
+    getList() {
196
+      this.loading = true;
197
+      listDeviceExpense(this.queryParams).then(response => {
198
+        this.deviceExpenseList = response.rows;
199
+        this.total = response.total;
200
+        this.loading = false;
201
+      });
202
+    },
203
+    // 取消按钮
204
+    cancel() {
205
+      this.open = false;
206
+      this.reset();
207
+    },
208
+    // 表单重置
209
+    reset() {
210
+      this.form = {
211
+        deviceExpenseId: null,
212
+        deviceId: null,
213
+        expenseType: null,
214
+        expense: null,
215
+        occurDate: null,
216
+        remark: null
217
+      };
218
+      this.resetForm("form");
219
+    },
220
+    /** 搜索按钮操作 */
221
+    handleQuery() {
222
+      this.queryParams.pageNum = 1;
223
+      this.getList();
224
+    },
225
+    /** 重置按钮操作 */
226
+    resetQuery() {
227
+      this.resetForm("queryForm");
228
+      this.handleQuery();
229
+    },
230
+    // 多选框选中数据
231
+    handleSelectionChange(selection) {
232
+      this.ids = selection.map(item => item.deviceExpenseId)
233
+      this.single = selection.length!==1
234
+      this.multiple = !selection.length
235
+    },
236
+    /** 新增按钮操作 */
237
+    handleAdd() {
238
+      this.reset();
239
+      this.open = true;
240
+      this.title = "添加cmc仪器费用";
241
+    },
242
+    /** 修改按钮操作 */
243
+    handleUpdate(row) {
244
+      this.reset();
245
+      const deviceExpenseId = row.deviceExpenseId || this.ids
246
+      getDeviceExpense(deviceExpenseId).then(response => {
247
+        this.form = response.data;
248
+        this.open = true;
249
+        this.title = "修改cmc仪器费用";
250
+      });
251
+    },
252
+    /** 提交按钮 */
253
+    submitForm() {
254
+      this.$refs["form"].validate(valid => {
255
+        if (valid) {
256
+          if (this.form.deviceExpenseId != null) {
257
+            updateDeviceExpense(this.form).then(response => {
258
+              this.$modal.msgSuccess("修改成功");
259
+              this.open = false;
260
+              this.getList();
261
+            });
262
+          } else {
263
+            addDeviceExpense(this.form).then(response => {
264
+              this.$modal.msgSuccess("新增成功");
265
+              this.open = false;
266
+              this.getList();
267
+            });
268
+          }
269
+        }
270
+      });
271
+    },
272
+    /** 删除按钮操作 */
273
+    handleDelete(row) {
274
+      const deviceExpenseIds = row.deviceExpenseId || this.ids;
275
+      this.$modal.confirm('是否确认删除cmc仪器费用编号为"' + deviceExpenseIds + '"的数据项?').then(function() {
276
+        return delDeviceExpense(deviceExpenseIds);
277
+      }).then(() => {
278
+        this.getList();
279
+        this.$modal.msgSuccess("删除成功");
280
+      }).catch(() => {});
281
+    },
282
+    /** 导出按钮操作 */
283
+    handleExport() {
284
+      this.download('oa/deviceExpense/export', {
285
+        ...this.queryParams
286
+      }, `deviceExpense_${new Date().getTime()}.xlsx`)
287
+    }
288
+  }
289
+};
290
+</script>

Carregando…
Cancelar
Salvar