ソースを参照

承包合同数据更新

lamphua 1年前
コミット
bf933caaaa

+ 39
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcContract.java ファイルの表示

@@ -22,6 +22,10 @@ public class CmcContract extends BaseEntity
22 22
     /** 合同id(ht2024w002) */
23 23
     private String contractId;
24 24
 
25
+    /** 合同名称 */
26
+    @Excel(name = "合同名称")
27
+    private String contractName;
28
+
25 29
     /** 合同编码 */
26 30
     @Excel(name = "合同编码")
27 31
     private String contractCode;
@@ -37,6 +41,13 @@ public class CmcContract extends BaseEntity
37 41
     private String tenderName;
38 42
     private CmcTender tender;
39 43
 
44
+    /** 甲方单位 */
45
+    private String partyAId;
46
+
47
+    @Excel(name = "甲方单位")
48
+    private String partyAName;
49
+    private CmcPartyA partyA;
50
+
40 51
     /** 合同金额 */
41 52
     @Excel(name = "合同金额")
42 53
     private BigDecimal amount;
@@ -103,6 +114,15 @@ public class CmcContract extends BaseEntity
103 114
     {
104 115
         return contractId;
105 116
     }
117
+    public void setContractName(String contractName)
118
+    {
119
+        this.contractName = contractName;
120
+    }
121
+
122
+    public String getContractName()
123
+    {
124
+        return contractName;
125
+    }
106 126
     public void setContractCode(String contractCode)
107 127
     {
108 128
         this.contractCode = contractCode;
@@ -140,6 +160,25 @@ public class CmcContract extends BaseEntity
140 160
     {
141 161
         return tender;
142 162
     }
163
+    public void setPartyAId(String partyAId)
164
+    {
165
+        this.partyAId = partyAId;
166
+    }
167
+
168
+    public String getPartyAId()
169
+    {
170
+        return partyAId;
171
+    }
172
+    public void setPartyA(CmcPartyA partyA)
173
+    {
174
+        this.partyA = partyA;
175
+        this.partyAName = partyA.getPartyAName();
176
+    }
177
+
178
+    public CmcPartyA getPartyA()
179
+    {
180
+        return partyA;
181
+    }
143 182
     public void setAmount(BigDecimal amount)
144 183
     {
145 184
         this.amount = amount;

+ 13
- 0
oa-back/ruoyi-system/src/main/java/com/ruoyi/oa/domain/CmcProject.java ファイルの表示

@@ -157,6 +157,10 @@ public class CmcProject extends BaseEntity
157 157
     @Excel(name = "项目任务书")
158 158
     private String taskDocument;
159 159
 
160
+    /** 项目提交要求 */
161
+    @Excel(name = "项目提交要求")
162
+    private String projectRequest;
163
+
160 164
     public void setProjectId(String projectId)
161 165
     {
162 166
         this.projectId = projectId;
@@ -490,6 +494,15 @@ public class CmcProject extends BaseEntity
490 494
     {
491 495
         return participates;
492 496
     }
497
+    public void setProjectRequest(String projectRequest)
498
+    {
499
+        this.projectRequest = projectRequest;
500
+    }
501
+
502
+    public String getProjectRequest()
503
+    {
504
+        return projectRequest;
505
+    }
493 506
 
494 507
     @Override
495 508
     public String toString() {

+ 17
- 1
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcContractMapper.xml ファイルの表示

@@ -6,9 +6,11 @@
6 6
 
7 7
     <resultMap type="CmcContract" id="CmcContractResult">
8 8
         <result property="contractId"    column="contract_id"    />
9
+        <result property="contractName"    column="contract_name"    />
9 10
         <result property="contractCode"    column="contract_code"    />
10 11
         <result property="contractNumber"    column="contract_number"    />
11 12
         <result property="tenderId"    column="tender_id"    />
13
+        <result property="partyAId"    column="party_a_id"    />
12 14
         <result property="amount"    column="amount"    />
13 15
         <result property="deposit"    column="deposit"    />
14 16
         <result property="contractDocument"    column="contract_document"    />
@@ -25,6 +27,7 @@
25 27
         <association property="draftUser"    javaType="SysUser"         resultMap="DraftUserResult" />
26 28
         <association property="managerUser"    javaType="SysUser"         resultMap="ManagerUserResult" />
27 29
         <association property="tender"    javaType="CmcTender"         resultMap="CmcTenderResult" />
30
+        <association property="partyA"    javaType="CmcPartyA"         resultMap="CmcPartyAResult" />
28 31
     </resultMap>
29 32
 
30 33
     <resultMap type="CmcTender" id="CmcTenderResult">
@@ -48,20 +51,27 @@
48 51
         <result property="nickName"    column="manager_nick_name"    />
49 52
     </resultMap>
50 53
 
54
+    <resultMap type="CmcPartyA" id="CmcPartyAResult">
55
+        <result property="partyAId"    column="party_a_id"    />
56
+        <result property="partyAName"    column="party_a_name"    />
57
+    </resultMap>
58
+
51 59
     <sql id="selectCmcContractVo">
52
-        select c.contract_id, c.contract_code, c.contract_number, c.tender_id, t.project_name as project_name, t.party_a_id as party_a_id, t.a_person as a_person,
60
+        select c.contract_id, c.contract_code, c.contract_name, c.contract_number, c.tender_id, c.party_a_id, pa.party_a_name, t.project_name as project_name, t.party_a_id as party_a_id, t.a_person as a_person,
53 61
                t.a_phone as a_phone, t.agent as agent, t.agent_person as agent_person, t.agent_phone as agent_phone, c.amount, c.deposit, c.contract_document,
54 62
                c.drafter, u.nick_name as draft_nick_name, c.draft_time, c.remark, c.sign_date, c.sign_remark, c.sign_scan, c.comment_type, c.manager_comment, c.manager_user_id, u1.nick_name as manager_nick_name,
55 63
                c.manager_time from cmc_contract as c
56 64
         left join sys_user as u on u.user_id = c.drafter
57 65
         left join sys_user as u1 on u1.user_id = c.manager_user_id
58 66
         left join cmc_tender as t on t.tender_id = c.tender_id
67
+        left join cmc_party_a as pa on pa.party_a_id = c.party_a_id
59 68
     </sql>
60 69
 
61 70
     <select id="selectCmcContractList" parameterType="CmcContract" resultMap="CmcContractResult">
62 71
         <include refid="selectCmcContractVo"/>
63 72
         <where>
64 73
             <if test="contractId != null  and contractId != ''"> and c.contract_id like concat('%', #{contractId}, '%')</if>
74
+            <if test="contractName!= null  and contractName != ''"> and c.contract_name like concat('%', #{contractName}, '%')</if>
65 75
             <if test="contractCode!= null  and contractCode != ''"> and c.contract_code like concat('%', #{contractCode}, '%')</if>
66 76
             <if test="tenderId != null  and tenderId != ''"> and c.tender_id = #{tenderId}</if>
67 77
             <if test="contractNumber != null  and contractNumber != ''"> and c.contract_number = #{contractNumber}</if>
@@ -87,8 +97,10 @@
87 97
         insert into cmc_contract
88 98
         <trim prefix="(" suffix=")" suffixOverrides=",">
89 99
             <if test="contractId != null">contract_id,</if>
100
+            <if test="contractName != null">contract_name,</if>
90 101
             <if test="contractCode != null">contract_code,</if>
91 102
             <if test="tenderId != null">tender_id,</if>
103
+            <if test="partyAId != null">party_a_id,</if>
92 104
             <if test="contractNumber != null">contract_number,</if>
93 105
             <if test="amount != null">amount,</if>
94 106
             <if test="deposit != null">deposit,</if>
@@ -106,8 +118,10 @@
106 118
         </trim>
107 119
         <trim prefix="values (" suffix=")" suffixOverrides=",">
108 120
             <if test="contractId != null">#{contractId},</if>
121
+            <if test="contractName != null">#{contractName},</if>
109 122
             <if test="contractCode != null">#{contractCode},</if>
110 123
             <if test="tenderId != null">#{tenderId},</if>
124
+            <if test="partyAId != null">#{partyAId},</if>
111 125
             <if test="contractNumber != null">#{contractNumber},</if>
112 126
             <if test="amount != null">#{amount},</if>
113 127
             <if test="deposit != null">#{deposit},</if>
@@ -129,7 +143,9 @@
129 143
         update cmc_contract
130 144
         <trim prefix="SET" suffixOverrides=",">
131 145
             <if test="contractCode != null">contract_code = #{contractCode},</if>
146
+            <if test="contractName != null">contract_name = #{contractName},</if>
132 147
             <if test="tenderId != null">tender_id = #{tenderId},</if>
148
+            <if test="partyAId != null">party_a_id = #{partyAId},</if>
133 149
             <if test="contractNumber != null">contract_number = #{contractNumber},</if>
134 150
             <if test="amount != null">amount = #{amount},</if>
135 151
             <if test="deposit != null">deposit = #{deposit},</if>

+ 6
- 1
oa-back/ruoyi-system/src/main/resources/mapper/oa/CmcProjectMapper.xml ファイルの表示

@@ -37,6 +37,7 @@
37 37
         <result property="devices"    column="devices"    />
38 38
         <result property="participates"    column="participates"    />
39 39
         <result property="taskDocument"    column="task_document"    />
40
+        <result property="projectRequest"    column="project_request"    />
40 41
         <association property="projectLeaderUser"    javaType="SysUser"         resultMap="ProjectLeaderResult" />
41 42
         <association property="projectRegistrantUser"    javaType="SysUser"         resultMap="ProjectRegistrantResult" />
42 43
         <association property="technicalDirectorUser"    javaType="SysUser"         resultMap="TechnicalDirectorResult" />
@@ -66,7 +67,8 @@
66 67
     <sql id="selectCmcProjectVo">
67 68
         select p.project_id, p.project_number, p.project_name, p.project_leader, u.nick_name as leader_nick_name, p.is_finished, p.project_source, p.party_a_id, pa.party_a_name, p.contact_person, p.telephone,
68 69
                p.project_type, p.project_level, p.project_registrant, u1.nick_name as registrant_nick_name, p.undertaking_dept, p.project_planner, p.site_leader, p.organize_document, p.organize_time,
69
-               p.register_time, p.plan_time, p.entry_time, p.exit_time, p.remark, c.technical_director, u2.nick_name as director_nick_name, c.quality_inspector, p.project_kml, p.project_cp, p.kml_lng, p.kml_lat, p.cars, p.drivers, p.devices, p.participates, p.task_document from cmc_project as p
70
+               p.register_time, p.plan_time, p.entry_time, p.exit_time, p.remark, c.technical_director, u2.nick_name as director_nick_name, c.quality_inspector, p.project_kml, p.project_cp, p.kml_lng, p.kml_lat,
71
+               p.cars, p.drivers, p.devices, p.participates, p.task_document, p.project_request from cmc_project as p
70 72
         left join sys_user as u on u.user_id = p.project_leader
71 73
         left join sys_user as u1 on u1.user_id = p.project_registrant
72 74
         left join cmc_technical as c on c.project_id = p.project_id
@@ -142,6 +144,7 @@
142 144
             <if test="devices != null">devices,</if>
143 145
             <if test="participates != null">participates,</if>
144 146
             <if test="taskDocument != null">task_document,</if>
147
+            <if test="projectRequest != null">project_request,</if>
145 148
         </trim>
146 149
         <trim prefix="values (" suffix=")" suffixOverrides=",">
147 150
             <if test="projectId != null">#{projectId},</if>
@@ -175,6 +178,7 @@
175 178
             <if test="devices != null">#{devices},</if>
176 179
             <if test="participates != null">#{participates},</if>
177 180
             <if test="taskDocument != null">#{taskDocument},</if>
181
+            <if test="projectRequest != null">#{projectRequest},</if>
178 182
         </trim>
179 183
     </insert>
180 184
 
@@ -211,6 +215,7 @@
211 215
             <if test="devices != null">devices = #{devices},</if>
212 216
             <if test="participates != null">participates = #{participates},</if>
213 217
             <if test="taskDocument != null">task_document = #{taskDocument},</if>
218
+            <if test="projectRequest != null">project_request = #{projectRequest},</if>
214 219
         </trim>
215 220
         where project_id = #{projectId}
216 221
     </update>

+ 5041
- 4604
oa-back/sql/sql.sql
ファイル差分が大きすぎるため省略します
ファイルの表示


+ 40
- 19
oa-ui/src/views/flowable/form/business/contractForm.vue ファイルの表示

@@ -1,8 +1,8 @@
1 1
 <!--
2 2
  * @Author: ysh
3 3
  * @Date: 2024-05-10 15:31:57
4
- * @LastEditors: Please set LastEditors
5
- * @LastEditTime: 2024-06-14 19:07:59
4
+ * @LastEditors: wrh
5
+ * @LastEditTime: 2024-06-18 11:15:07
6 6
 -->
7 7
 <template>
8 8
   <div class="app-container">
@@ -14,22 +14,30 @@
14 14
           <el-row :gutter="20">
15 15
             <el-col :span="12" :xs="24">
16 16
               <el-form-item label="投标项目名称:" prop="tenderId">
17
-                <el-button type="primary" size="mini" @click="tbOpen = true"
18
-                  v-if="taskName == '合同拟稿'">选择投标项目</el-button>
19
-                <el-descriptions border v-if="isSelect" style="margin-top: 10px;" :column="2" direction="vertical">
20
-                  <el-descriptions-item label="投标项目名称" label-class-name="my-label" :span="2">{{ chooseTender.projectName
21
-                    }}</el-descriptions-item>
17
+                <el-button type="primary" size="mini" @click="tbOpen = true" v-if="taskName == '合同拟稿'">选择投标项目</el-button>
18
+                <el-descriptions border v-if="isSelect" style="margin-top: 10px;" :column="3" direction="vertical">
19
+                  <el-descriptions-item label="投标项目名称" label-class-name="my-label" :span="3">{{ chooseTender.projectName
20
+                  }}</el-descriptions-item>
22 21
                   <el-descriptions-item label="项目来源" label-class-name="my-label">{{ getProjectSource(chooseTender)
23
-                    }}</el-descriptions-item>
24
-                  <el-descriptions-item label="招标业主" label-class-name="my-label">{{ chooseTender.partyA ?
25
-      chooseTender.partyA.partyAName : ''
26
-                    }}</el-descriptions-item>
22
+                  }}</el-descriptions-item>
27 23
                   <el-descriptions-item label="联系人" label-class-name="my-label">{{ chooseTender.aPerson
28
-                    }}</el-descriptions-item>
24
+                  }}</el-descriptions-item>
29 25
                   <el-descriptions-item label="联系电话" label-class-name="my-label">{{ chooseTender.aPhone
30
-                    }}</el-descriptions-item>
26
+                  }}</el-descriptions-item>
31 27
                 </el-descriptions>
32 28
               </el-form-item>
29
+              <el-form-item label="合同名称" prop="contractName">
30
+                <el-input type="textarea" :rows="3" style="width: 100%;" v-model="form.contractName" placeholder="请输入合同名称"
31
+                  :disabled="taskName != '合同拟稿'"></el-input>
32
+              </el-form-item>
33
+              <el-form-item label="甲方单位" prop="partyAId">
34
+                <el-select allow-create v-model="form.partyAId" filterable placeholder="请选择" style="width: 100%;"
35
+                  clearable>
36
+                  <el-option v-for="item in partyAList" :key="item.value" :label="item.partyAName" :value="item.partyAId"
37
+                    :disabled="taskName != '合同拟稿'">
38
+                  </el-option>
39
+                </el-select>
40
+              </el-form-item>
33 41
               <el-form-item label="合同编码" prop="contractCode">
34 42
                 <el-input style="width: 100%;" v-model="form.contractCode" placeholder="请输入合同编码"
35 43
                   :disabled="taskName != '合同拟稿'"></el-input>
@@ -39,8 +47,7 @@
39 47
                   :disabled="taskName != '合同拟稿'"></el-input>
40 48
               </el-form-item>
41 49
               <el-form-item label="合同金额" prop="amount">
42
-                <el-input style="width:100%;" v-model="form.amount" placeholder="请输入合同金额"
43
-                  :disabled="taskName != '合同拟稿'">
50
+                <el-input style="width:100%;" v-model="form.amount" placeholder="请输入合同金额" :disabled="taskName != '合同拟稿'">
44 51
                   <template slot="append">元</template>
45 52
                 </el-input>
46 53
               </el-form-item>
@@ -161,8 +168,8 @@
161 168
                     clearable :disabled="taskName != '合同拟稿'"></el-input-number>
162 169
                 </td>
163 170
                 <td>
164
-                  <el-date-picker style="width: 140px" v-model="payment.paymentTime" value-format="yyyy-MM-dd"
165
-                    type="date" placeholder="选择日期" :disabled="taskName != '合同拟稿'">
171
+                  <el-date-picker style="width: 140px" v-model="payment.paymentTime" value-format="yyyy-MM-dd" type="date"
172
+                    placeholder="选择日期" :disabled="taskName != '合同拟稿'">
166 173
                   </el-date-picker>
167 174
                 </td>
168 175
                 <td>
@@ -364,8 +371,8 @@
364 371
           </el-row>
365 372
           <el-divider></el-divider>
366 373
           <el-form-item label="签订日期" prop="signDate">
367
-            <el-date-picker clearable v-model="form.signDate" type="date" value-format="yyyy-MM-dd"
368
-              placeholder="请选择签订日期" :disabled="taskName != '合同签订'">
374
+            <el-date-picker clearable v-model="form.signDate" type="date" value-format="yyyy-MM-dd" placeholder="请选择签订日期"
375
+              :disabled="taskName != '合同签订'">
369 376
             </el-date-picker>
370 377
           </el-form-item>
371 378
           <el-form-item label="签订备注" prop="signRemark">
@@ -445,6 +452,7 @@ import flow from '@/views/flowable/task/todo/detail/flow'
445 452
 import { flowXmlAndNode } from "@/api/flowable/definition";
446 453
 import ChooseProject from '../components/chooseProject.vue';
447 454
 import ChooseTender from '../components/chooseTender.vue';
455
+import { listPartyA } from "@/api/oa/partyA/partyA";
448 456
 import FileItem from './fileItem.vue';
449 457
 import { mapGetters } from "vuex";
450 458
 export default {
@@ -522,6 +530,7 @@ export default {
522 530
       meetingOpen: false,
523 531
       commentOpen: false,
524 532
       chooseProjectList: [],
533
+      partyAList: [],
525 534
       projectList: [],
526 535
       deptList: [],
527 536
       userList: [],
@@ -594,6 +603,7 @@ export default {
594 603
       this.managerTime = parseTime(new Date(), '{y}-{m}-{d}')
595 604
     }
596 605
     this.getProjectList();
606
+    this.getPartyAList();
597 607
     this.getDeptList();
598 608
     this.getTenderList();
599 609
     this.getUserList();
@@ -747,6 +757,16 @@ export default {
747 757
         }
748 758
       })
749 759
     },
760
+    // 查询业主单位列表
761
+    getPartyAList() {
762
+      this.loading = true
763
+      listPartyA({
764
+        pageNum: 1,
765
+        pageSize: 99999999
766
+      }).then(response => {
767
+        this.partyAList = response.rows;
768
+      })
769
+    },
750 770
     // 查询项目列表
751 771
     getProjectList() {
752 772
       this.loading = true
@@ -1129,6 +1149,7 @@ export default {
1129 1149
       this.form.tenderId = val.tenderId
1130 1150
       this.chooseTender = val
1131 1151
       this.isSelect = true
1152
+      this.form.partyAId = val.partyAId
1132 1153
     },
1133 1154
     calculatePaymentAmount(payment) {
1134 1155
       let amount = (payment.paymentPercentage / 100) * this.form.amount

+ 1
- 1
oa-ui/src/views/oa/staff/salary.vue ファイルの表示

@@ -165,7 +165,7 @@ export default {
165 165
         for (let salary of response.rows) {
166 166
           data.push([Number(salary.postLevel) + 1, Number(salary.salaryLevel) + 1, salary.salary]);
167 167
         }
168
-        var salarys = ['', '一档', '二档', '三档', '四档', '五档', '六档', '七档', '八档'];
168
+        var salarys = ['', '一级', '二级', '三级', '四级', '五级', '六级', '七级', '八级'];
169 169
         var posts = ['', '一岗', '二岗', '三岗', '四岗', '五岗', '六岗', '七岗', '八岗'];
170 170
         this.option = {
171 171
           tooltip: {},

読み込み中…
キャンセル
保存