Quellcode durchsuchen

项目变更-编辑项目,部门筛选组件bug修复

dev01 vor 2 Jahren
Ursprung
Commit
e248363c52

+ 22 - 10
js/component/common/cascaders/index.jsx

@@ -11,6 +11,7 @@ class Cascaders extends Component {
       visible: false,//弹窗开关
       authTree: [],//列表显示数据
       checkedList: [],//选中数据
+      isFous: true,
     };
     this.itemHandle = this.itemHandle.bind(this);
     this.onSelect = this.onSelect.bind(this);
@@ -176,7 +177,7 @@ class Cascaders extends Component {
 
   render() {
     const { Panel } = Collapse;
-    const { visible, authTree, checkedList } = this.state
+    const { visible, isFous, authTree, checkedList } = this.state
     const {
       placeholder = "选择部门",
       width = 200,
@@ -223,8 +224,14 @@ class Cascaders extends Component {
       </Panel>
     ));
     return (
-      <div className="cascaders"
-
+      <div
+        className="cascaders"
+        tabIndex={0}
+        onBlur={(e) => {
+          isFous && this.setState({
+            visible: false
+          })
+        }}
       >
         <div
           className="cinput"
@@ -241,13 +248,18 @@ class Cascaders extends Component {
             {checkedList.length > 0 ? `已选择${checkedList.length}项` : placeholder}
           </div>
         </div>
-        <div data-reactroot
-          tabIndex={0}
-          // onBlur={(e) => {
-          //   this.setState({
-          //     visible: false
-          //   })
-          // }}
+        <div
+          data-reactroot
+          onMouseLeave={() => {
+            this.setState({
+              isFous: true
+            })
+          }}
+          onMouseEnter={() => {
+            this.setState({
+              isFous: false
+            })
+          }}
         >
           {
             visible &&

+ 17 - 4
js/component/common/projectOperation/index.jsx

@@ -43,6 +43,7 @@ class ProjectOperation extends Component {
             contractTerm: [],//合同期
             addyear: undefined,//
             isGive: undefined,//是否赠送
+            cPeriod: false, // 合同期是否可编辑
         }
         this.onSubmit = this.onSubmit.bind(this);
         this.httpChange = this.httpChange.bind(this);
@@ -106,8 +107,10 @@ class ProjectOperation extends Component {
             serviceLife: !dataInfor.serviceLife ? [] : JSON.parse(dataInfor.serviceLife), // 会员服务年限
             contractTerm: !dataInfor.contractTerm ? [] : JSON.parse(dataInfor.contractTerm), // 合同期
             serviceYear: dataInfor.serviceYear,//本次派单
-            isEdit: true, // 不可编辑
+            // isEdit: true, // 不可编辑
+            isEdit: llist.length <= 1 ? false : true, // 同一会员项目有且只有一条时可编辑   其他情况不可编辑
             histYear: llist, // 本次已派单
+            cPeriod: llist.length <= 1 ? false : !dataInfor.contractTerm ? false : true, //合同期
         });
     }
 
@@ -247,6 +250,7 @@ class ProjectOperation extends Component {
     }
 
     onChange() {
+        const { type = "", dataInfor } = this.props
         if (isNaN(parseFloat(this.state.commodityPrice))) {
             message.warning("请输入正确的金额!");
             return false;
@@ -339,11 +343,19 @@ class ProjectOperation extends Component {
             infor.serviceYear = this.state.serviceYear //本次派单年份
             infor.contractTerm = JSON.stringify(this.state.contractTerm)//合同期
         }
+        // 新开单与签单项目变更 -- 编辑项目
+        if (type == "biangeng") {
+            infor.id = dataInfor.id
+            infor.type = dataInfor.tid ? 2 : 1
+            infor.tid = dataInfor.tid
+        }
         $.ajax({
             method: "POST",
             dataType: "json",
             crossDomain: false,
-            url: globalConfig.context + "/api/admin/newOrder/updateOrderTask",
+            url: globalConfig.context + type == ""
+                ? "/api/admin/newOrder/updateOrderTask"
+                : "/api/admin/orderChange/updateChangeTask",
             data: infor,
         }).done(
             function (data) {
@@ -428,7 +440,6 @@ class ProjectOperation extends Component {
                 displayFees: "none",
             });
         }
-        // console.log(value.indexOf("贯标"), 'value.indexOf("贯标")')
         //0通用 1专利 2软著 3审计 4双软 5高新 6商标
         this.setState({
             commodityName: value,
@@ -459,6 +470,7 @@ class ProjectOperation extends Component {
                         contractTerm: !newData[i].contractTerm ? [] : JSON.parse(newData[i].contractTerm), // 合同期
                         taskComment: newData[i].taskComment, // 项目说明
                         isEdit: true, // 不可编辑
+                        cPeriod: !newData[i].contractTerm ? false : true, //合同期编辑
                     })
                     return
                 } else {
@@ -470,6 +482,7 @@ class ProjectOperation extends Component {
                         contractTerm: [],
                         taskComment: undefined,
                         isEdit: false, // 可编辑
+                        cPeriod: false,
                     })
                 }
             }
@@ -890,7 +903,7 @@ class ProjectOperation extends Component {
                                                 mode="multiple"
                                                 style={{ width: '200px' }}
                                                 placeholder="请选择合同期"
-                                                disabled={isEdit}
+                                                disabled={this.state.cPeriod}
                                                 value={this.state.contractTerm}
                                                 onChange={e => {
                                                     this.setState({

+ 6 - 4
js/component/common/projectOperation/vip.jsx

@@ -92,6 +92,7 @@ class ProjectOperationVip extends Component {
       contractTerm: [],//合同期
       addyear: undefined,//
       isGive: undefined,//是否赠送
+      cPeriod: false, // 合同期是否可编辑
     }
     this.onSubmit = this.onSubmit.bind(this);
     this.httpChange = this.httpChange.bind(this);
@@ -106,7 +107,6 @@ class ProjectOperationVip extends Component {
 
   setValue() {
     const { dataInfor, newData } = this.props;
-    console.log("------", newData)
     if (!!newData && newData.length > 0) {
       let list = []
       for (var i = 0; i < newData.length; i++) {
@@ -117,7 +117,6 @@ class ProjectOperationVip extends Component {
           })
         }
       }
-      console.log("list==", list)
       this.setState({
         customerArr: list
       })
@@ -319,7 +318,9 @@ class ProjectOperationVip extends Component {
             serviceLife: !newData[j].serviceLife ? [] : JSON.parse(newData[j].serviceLife), // 会员服务年限
             contractTerm: !newData[j].contractTerm ? [] : JSON.parse(newData[j].contractTerm), // 合同期
             taskComment: newData[j].taskComment, // 项目说明
-            isEdit: true, // 不可编辑
+            // isEdit: true, // 不可编辑
+            isEdit: true, // 同一会员项目有且只有一条时可编辑   其他情况不可编辑
+            cPeriod: !newData[j].contractTerm ? false : true, //合同期
           })
           return
         } else {
@@ -329,6 +330,7 @@ class ProjectOperationVip extends Component {
             contractTerm: [],
             taskComment: undefined,
             isEdit: false, // 可编辑
+            cPeriod: false,
           })
         }
       }
@@ -586,7 +588,7 @@ class ProjectOperationVip extends Component {
                       mode="multiple"
                       style={{ width: '200px' }}
                       placeholder="请选择合同期"
-                      disabled={isEdit}
+                      disabled={this.state.cPeriod}
                       value={this.state.contractTerm}
                       onChange={e => {
                         this.setState({

+ 37 - 10
js/component/manageCenter/order/orderNew/addService.jsx

@@ -1928,6 +1928,7 @@ const NewService = Form.create()(
         isEdit: false,//是否可编辑
         addyear: undefined,//
         isGive: 0,//是否赠送
+        cPeriod: false, // 合同期是否可编辑
       };
     },
     getpatentTypeList() {
@@ -3280,7 +3281,9 @@ const NewService = Form.create()(
               serviceLife: !newData[i].serviceLife ? [] : JSON.parse(newData[i].serviceLife), // 会员服务年限
               contractTerm: !newData[i].contractTerm ? [] : JSON.parse(newData[i].contractTerm), // 合同期
               taskComment: newData[i].taskComment, // 项目说明
-              isEdit: true, // 不可编辑
+              // isEdit: true, // 不可编辑
+              isEdit: true, // 同一会员项目有且只有一条时可编辑   其他情况不可编辑
+              cPeriod: !newData[i].contractTerm ? false : true, //合同期
             })
             return
           } else {
@@ -3292,6 +3295,7 @@ const NewService = Form.create()(
               contractTerm: [],
               taskComment: undefined,
               isEdit: false, // 可编辑
+              cPeriod: false,
             })
           }
         }
@@ -4271,12 +4275,18 @@ const NewService = Form.create()(
     editPro(record) {
       this.setState({
         editProVisible: true,
-        editSplitStatus: record.splitStatus,
-        editProMoney: record.commodityPrice,
-        editProCommodityQuantity: record.commodityQuantity,
-        editProTid: record.tid,
-        editProId: record.id,
+        dataInfor: record,
+        newData: this.state.proDataSource,
       });
+
+      // this.setState({
+      //   editProVisible: true,
+      //   editSplitStatus: record.splitStatus,
+      //   editProMoney: record.commodityPrice,
+      //   editProCommodityQuantity: record.commodityQuantity,
+      //   editProTid: record.tid,
+      //   editProId: record.id,
+      // });
     },
     submitEditCui(type) {
       if (isNaN(parseFloat(this.state.editCuiMoney))) {
@@ -5220,7 +5230,7 @@ const NewService = Form.create()(
             visible={this.state.visible}
             onOk={this.handleOk}
             onCancel={this.handleCancelclose}
-            width={!this.props.userDetaile ? "600px" : "900px"}
+            width={!this.props.userDetaile ? "600px" : "1200px"}
             title={!this.props.userDetaile ? "创建订单" : ""}
             footer=""
             className="admin-desc-content"
@@ -7938,7 +7948,7 @@ const NewService = Form.create()(
                           mode="multiple"
                           style={{ width: '200px' }}
                           placeholder="请选择合同期"
-                          disabled={isEdit}
+                          disabled={this.state.cPeriod}
                           value={this.state.contractTerm}
                           onChange={e => {
                             this.setState({
@@ -8241,7 +8251,24 @@ const NewService = Form.create()(
           ) : (
             <div />
           )}
-          <Modal
+          {
+            // 变更项目任务编辑
+            this.state.editProVisible &&
+            <ProjectOperation
+              type="biangeng"
+              readOnly={false}
+              visible={this.state.editProVisible}
+              dataInfor={this.state.dataInfor}
+              newData={this.state.newData}
+              onCancel={() => {
+                this.setState({
+                  editProVisible: false,
+                });
+                this.proList()
+              }}
+            />
+          }
+          {/* <Modal
             title="修改项目金额及数量"
             visible={this.state.editProVisible}
             onOk={this.submitEditPro}
@@ -8287,7 +8314,7 @@ const NewService = Form.create()(
                 />
               </FormItem>
             </div>
-          </Modal>
+          </Modal> */}
           <Modal
             maskClosable={false}
             title={

+ 35 - 18
js/component/manageCenter/order/orderNew/changeComponent/changeApply.js

@@ -704,6 +704,7 @@ class ChangeApply extends Component {
       isEdit: false,//是否可编辑
       addyear: undefined,//
       isGive: undefined,//是否赠送
+      cPeriod: false, // 合同期是否可编辑
     };
     this.departmentList = this.departmentList.bind(this);
     this.changeApply = this.changeApply.bind(this);
@@ -883,7 +884,9 @@ class ChangeApply extends Component {
             serviceLife: !newData[i].serviceLife ? [] : JSON.parse(newData[i].serviceLife), // 会员服务年限
             contractTerm: !newData[i].contractTerm ? [] : JSON.parse(newData[i].contractTerm), // 合同期
             taskComment: newData[i].taskComment, // 项目说明
-            isEdit: true, // 不可编辑
+            // isEdit: true, // 不可编辑
+            isEdit: true, // 同一会员项目有且只有一条时可编辑   其他情况不可编辑
+            cPeriod: !newData[i].contractTerm ? false : true, //合同期
           })
           return
         } else {
@@ -895,6 +898,7 @@ class ChangeApply extends Component {
             contractTerm: [],
             taskComment: undefined,
             isEdit: false, // 可编辑
+            cPeriod: false,
           })
         }
       }
@@ -1621,12 +1625,18 @@ class ChangeApply extends Component {
   editPro(record) {
     this.setState({
       editProVisible: true,
-      editSplitStatus: record.splitStatus,
-      editProMoney: record.commodityPrice,
-      editProCommodityQuantity: record.commodityQuantity,
-      editProTid: record.tid,
-      editProId: record.id
+      dataInfor: record,
+      newData: this.state.proDataSource,
     });
+
+    // this.setState({
+    //   editProVisible: true,
+    //   editSplitStatus: record.splitStatus,
+    //   editProMoney: record.commodityPrice,
+    //   editProCommodityQuantity: record.commodityQuantity,
+    //   editProTid: record.tid,
+    //   editProId: record.id
+    // });
   }
   submitEditCui(type) {
     if (isNaN(parseFloat(this.state.editCuiMoney))) {
@@ -2515,7 +2525,24 @@ class ChangeApply extends Component {
               发起变更申请
             </Button>
           </div>
-          <Modal
+          {
+            // 变更项目任务编辑
+            this.state.editProVisible &&
+            <ProjectOperation
+              type="biangeng"
+              readOnly={false}
+              visible={this.state.editProVisible}
+              dataInfor={this.state.dataInfor}
+              newData={this.state.newData}
+              onCancel={() => {
+                this.setState({
+                  editProVisible: false,
+                });
+                this.proList()
+              }}
+            />
+          }
+          {/* <Modal
             maskClosable={false}
             title="修改项目金额及数量"
             visible={this.state.editProVisible}
@@ -2561,7 +2588,7 @@ class ChangeApply extends Component {
                 />
               </FormItem>
             </div>
-          </Modal>
+          </Modal> */}
           <Modal
             maskClosable={false}
             title={isNaN(parseFloat(this.state.appropriationRatio)) ? "修改催款节点金额" : "修改催款节点比例"}
@@ -2596,16 +2623,6 @@ class ChangeApply extends Component {
               </FormItem>
             </div>
           </Modal>
-          {/* {
-            this.state.changeVisible &&
-            <ProjectOperation
-              readOnly={false}
-              orderNo={this.state.data.orderNo}
-              visible={this.state.changeVisible}
-              dataInfor={{}}
-              onCancel={this.nextCancel}
-            />
-          } */}
           {
             this.state.changeVisible &&
             <Modal

+ 2 - 2
js/component/manageCenter/order/orderNew/changeComponent/orderDetail.js

@@ -175,13 +175,13 @@ class OrderDetail extends Component {
             }
           }
         },
-
         {
           title: "金额(万元)",
           dataIndex: "commodityPrice",
           key: "commodityPrice",
           render: text => {
-            return this.props.processState === 2 ? "***" : text;
+            // return this.props.processState === 2 ? "***" : text;
+            return text == null ? "***" : text;
           }
         },
         {